[2026-10-18 00:00:05,427.427 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:00:05,558.558 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:00:05,584.584 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:00:05,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:00:05,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:00:05,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:00:07,700.700 INFO    ] ================================================
[2026-10-18 00:00:07,715.715 INFO    ] Launching Daemon at Sun Oct 18 00:00:07 IST 2026
[2026-10-18 00:00:07,727.727 INFO    ] ================================================
[2026-10-18 00:00:08,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:00:08
[2026-10-18 00:00:08,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:00:09,195.195 INFO    ] Initializing speech engine...
[2026-10-18 00:00:09,204.204 INFO    ] 2026-10-18 00:00:09
[2026-10-18 00:00:09,473.473 INFO    ] 2026-10-18 00:00:09
[2026-10-18 00:00:09,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:00:09,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:00:09,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:00:09,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:00:09,968.968 INFO    ] time= 18/10/2026 00:00:09
[2026-10-18 00:00:10,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:00:10,096.096 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:00:10,181.181 INFO    ] No existing commands found in stream
[2026-10-18 00:00:15,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:00:15,195.195 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-18 00:00:18,174.174 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:00:18,176.176 INFO    ] Checking for system updates...
[2026-10-18 00:00:18,213.213 INFO    ] 200
[2026-10-18 00:00:18,215.215 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:00:18,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:00:18,277.277 INFO    ] No update needed
[2026-10-18 00:00:18,280.280 INFO    ] Checking for camera pi updates...
[2026-10-18 00:00:18,314.314 INFO    ] 200
[2026-10-18 00:00:18,316.316 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:00:18,361.361 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:00:28,377.377 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:00:28,412.412 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:00:28,422.422 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:00:28,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:00:28,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:00:28,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:00:30,475.475 INFO    ] ================================================
[2026-10-18 00:00:30,490.490 INFO    ] Launching Daemon at Sun Oct 18 00:00:30 IST 2026
[2026-10-18 00:00:30,500.500 INFO    ] ================================================
[2026-10-18 00:00:31,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:00:31
[2026-10-18 00:00:31,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:00:32,002.002 INFO    ] Initializing speech engine...
[2026-10-18 00:00:32,009.009 INFO    ] 2026-10-18 00:00:32
[2026-10-18 00:00:32,282.282 INFO    ] 2026-10-18 00:00:32
[2026-10-18 00:00:32,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:00:32,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:00:32,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:00:32,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:00:32,834.834 INFO    ] time= 18/10/2026 00:00:32
[2026-10-18 00:00:32,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:00:32,870.870 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:00:33,058.058 INFO    ] No existing commands found in stream
[2026-10-18 00:00:38,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:00:38,089.089 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-18 00:00:41,748.748 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:00:41,751.751 INFO    ] Checking for system updates...
[2026-10-18 00:00:41,787.787 INFO    ] 200
[2026-10-18 00:00:41,789.789 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:00:41,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:00:41,853.853 INFO    ] No update needed
[2026-10-18 00:00:41,855.855 INFO    ] Checking for camera pi updates...
[2026-10-18 00:00:41,889.889 INFO    ] 200
[2026-10-18 00:00:41,897.897 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:00:41,938.938 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:00:51,955.955 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:00:51,994.994 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:00:52,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:00:52,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:00:52,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:00:52,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:00:54,061.061 INFO    ] ================================================
[2026-10-18 00:00:54,076.076 INFO    ] Launching Daemon at Sun Oct 18 00:00:54 IST 2026
[2026-10-18 00:00:54,086.086 INFO    ] ================================================
[2026-10-18 00:00:54,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:00:54
[2026-10-18 00:00:55,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:00:55,520.520 INFO    ] Initializing speech engine...
[2026-10-18 00:00:55,543.543 INFO    ] 2026-10-18 00:00:55
[2026-10-18 00:00:55,794.794 INFO    ] 2026-10-18 00:00:55
[2026-10-18 00:00:55,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:00:56,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:00:56,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:00:56,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:00:56,278.278 INFO    ] time= 18/10/2026 00:00:56
[2026-10-18 00:00:56,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:00:56,355.355 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:00:56,500.500 INFO    ] No existing commands found in stream
[2026-10-18 00:01:01,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:01:01,517.517 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-18 00:01:04,035.035 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:01:04,037.037 INFO    ] Checking for system updates...
[2026-10-18 00:01:04,080.080 INFO    ] 200
[2026-10-18 00:01:04,083.083 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:01:04,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:01:04,140.140 INFO    ] No update needed
[2026-10-18 00:01:04,143.143 INFO    ] Checking for camera pi updates...
[2026-10-18 00:01:04,179.179 INFO    ] 200
[2026-10-18 00:01:04,181.181 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:01:04,221.221 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:01:14,237.237 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:01:14,276.276 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:01:14,287.287 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:01:14,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:01:14,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:01:14,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:01:16,341.341 INFO    ] ================================================
[2026-10-18 00:01:16,356.356 INFO    ] Launching Daemon at Sun Oct 18 00:01:16 IST 2026
[2026-10-18 00:01:16,367.367 INFO    ] ================================================
[2026-10-18 00:01:16,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:01:16
[2026-10-18 00:01:17,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:01:17,786.786 INFO    ] Initializing speech engine...
[2026-10-18 00:01:17,803.803 INFO    ] 2026-10-18 00:01:17
[2026-10-18 00:01:18,078.078 INFO    ] 2026-10-18 00:01:18
[2026-10-18 00:01:18,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:01:18,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:01:18,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:01:18,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:01:18,586.586 INFO    ] time= 18/10/2026 00:01:18
[2026-10-18 00:01:18,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:01:18,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:01:18,799.799 INFO    ] No existing commands found in stream
[2026-10-18 00:01:23,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:01:23,829.829 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-18 00:01:25,884.884 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:01:25,887.887 INFO    ] Checking for system updates...
[2026-10-18 00:01:25,926.926 INFO    ] 200
[2026-10-18 00:01:25,928.928 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:01:25,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:01:25,988.988 INFO    ] No update needed
[2026-10-18 00:01:25,991.991 INFO    ] Checking for camera pi updates...
[2026-10-18 00:01:26,024.024 INFO    ] 200
[2026-10-18 00:01:26,026.026 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:01:26,071.071 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:01:36,086.086 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:01:36,120.120 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:01:36,130.130 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:01:36,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:01:36,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:01:36,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:01:38,182.182 INFO    ] ================================================
[2026-10-18 00:01:38,197.197 INFO    ] Launching Daemon at Sun Oct 18 00:01:38 IST 2026
[2026-10-18 00:01:38,208.208 INFO    ] ================================================
[2026-10-18 00:01:38,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:01:38
[2026-10-18 00:01:39,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:01:39,626.626 INFO    ] Initializing speech engine...
[2026-10-18 00:01:39,638.638 INFO    ] 2026-10-18 00:01:39
[2026-10-18 00:01:39,890.890 INFO    ] 2026-10-18 00:01:39
[2026-10-18 00:01:39,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:01:40,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:01:40,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:01:40,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:01:40,457.457 INFO    ] time= 18/10/2026 00:01:40
[2026-10-18 00:01:40,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:01:40,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:01:40,620.620 INFO    ] No existing commands found in stream
[2026-10-18 00:01:45,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:01:45,648.648 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-18 00:01:49,080.080 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:01:49,083.083 INFO    ] Checking for system updates...
[2026-10-18 00:01:49,119.119 INFO    ] 200
[2026-10-18 00:01:49,121.121 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:01:49,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:01:49,178.178 INFO    ] No update needed
[2026-10-18 00:01:49,180.180 INFO    ] Checking for camera pi updates...
[2026-10-18 00:01:49,213.213 INFO    ] 200
[2026-10-18 00:01:49,215.215 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:01:49,259.259 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:01:59,275.275 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:01:59,311.311 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:01:59,320.320 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:01:59,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:01:59,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:01:59,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:02:01,372.372 INFO    ] ================================================
[2026-10-18 00:02:01,387.387 INFO    ] Launching Daemon at Sun Oct 18 00:02:01 IST 2026
[2026-10-18 00:02:01,398.398 INFO    ] ================================================
[2026-10-18 00:02:02,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:02:02
[2026-10-18 00:02:02,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:02:03,097.097 INFO    ] Initializing speech engine...
[2026-10-18 00:02:03,104.104 INFO    ] 2026-10-18 00:02:03
[2026-10-18 00:02:03,397.397 INFO    ] 2026-10-18 00:02:03
[2026-10-18 00:02:03,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:02:03,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:02:03,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:02:03,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:02:04,015.015 INFO    ] time= 18/10/2026 00:02:03
[2026-10-18 00:02:04,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:02:04,086.086 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:02:04,227.227 INFO    ] No existing commands found in stream
[2026-10-18 00:02:09,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:02:09,260.260 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-18 00:02:10,977.977 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:02:10,979.979 INFO    ] Checking for system updates...
[2026-10-18 00:02:11,019.019 INFO    ] 200
[2026-10-18 00:02:11,021.021 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:02:11,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:02:11,076.076 INFO    ] No update needed
[2026-10-18 00:02:11,078.078 INFO    ] Checking for camera pi updates...
[2026-10-18 00:02:11,111.111 INFO    ] 200
[2026-10-18 00:02:11,114.114 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:02:11,159.159 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:02:21,175.175 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:02:21,213.213 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:02:21,223.223 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:02:21,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:02:21,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:02:21,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:02:23,281.281 INFO    ] ================================================
[2026-10-18 00:02:23,297.297 INFO    ] Launching Daemon at Sun Oct 18 00:02:23 IST 2026
[2026-10-18 00:02:23,309.309 INFO    ] ================================================
[2026-10-18 00:02:23,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:02:23
[2026-10-18 00:02:24,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:02:24,964.964 INFO    ] Initializing speech engine...
[2026-10-18 00:02:24,971.971 INFO    ] 2026-10-18 00:02:24
[2026-10-18 00:02:25,244.244 INFO    ] 2026-10-18 00:02:25
[2026-10-18 00:02:25,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:02:25,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:02:25,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:02:25,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:02:25,794.794 INFO    ] time= 18/10/2026 00:02:25
[2026-10-18 00:02:25,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:02:25,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:02:25,947.947 INFO    ] No existing commands found in stream
[2026-10-18 00:02:30,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:02:30,962.962 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-18 00:02:34,975.975 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:02:34,978.978 INFO    ] Checking for system updates...
[2026-10-18 00:02:35,021.021 INFO    ] 200
[2026-10-18 00:02:35,023.023 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:02:35,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:02:35,085.085 INFO    ] No update needed
[2026-10-18 00:02:35,087.087 INFO    ] Checking for camera pi updates...
[2026-10-18 00:02:35,121.121 INFO    ] 200
[2026-10-18 00:02:35,123.123 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:02:35,168.168 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:02:45,184.184 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:02:45,219.219 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:02:45,229.229 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:02:45,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:02:45,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:02:45,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:02:47,283.283 INFO    ] ================================================
[2026-10-18 00:02:47,298.298 INFO    ] Launching Daemon at Sun Oct 18 00:02:47 IST 2026
[2026-10-18 00:02:47,309.309 INFO    ] ================================================
[2026-10-18 00:02:47,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:02:47
[2026-10-18 00:02:48,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:02:48,726.726 INFO    ] Initializing speech engine...
[2026-10-18 00:02:48,739.739 INFO    ] 2026-10-18 00:02:48
[2026-10-18 00:02:48,986.986 INFO    ] 2026-10-18 00:02:48
[2026-10-18 00:02:49,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:02:49,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:02:49,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:02:49,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:02:49,485.485 INFO    ] time= 18/10/2026 00:02:49
[2026-10-18 00:02:49,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:02:49,548.548 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:02:49,673.673 INFO    ] No existing commands found in stream
[2026-10-18 00:02:54,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:02:54,703.703 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-18 00:02:55,663.663 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:02:55,666.666 INFO    ] Checking for system updates...
[2026-10-18 00:02:55,701.701 INFO    ] 200
[2026-10-18 00:02:55,704.704 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:02:55,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:02:55,759.759 INFO    ] No update needed
[2026-10-18 00:02:55,761.761 INFO    ] Checking for camera pi updates...
[2026-10-18 00:02:55,796.796 INFO    ] 200
[2026-10-18 00:02:55,798.798 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:02:55,840.840 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:03:05,856.856 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:03:05,890.890 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:03:05,900.900 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:03:05,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:03:05,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:03:05,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:03:07,953.953 INFO    ] ================================================
[2026-10-18 00:03:07,968.968 INFO    ] Launching Daemon at Sun Oct 18 00:03:07 IST 2026
[2026-10-18 00:03:07,979.979 INFO    ] ================================================
[2026-10-18 00:03:08,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:03:08
[2026-10-18 00:03:09,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:03:09,399.399 INFO    ] Initializing speech engine...
[2026-10-18 00:03:09,411.411 INFO    ] 2026-10-18 00:03:09
[2026-10-18 00:03:09,666.666 INFO    ] 2026-10-18 00:03:09
[2026-10-18 00:03:09,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:03:09,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:03:09,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:03:10,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:03:10,147.147 INFO    ] time= 18/10/2026 00:03:10
[2026-10-18 00:03:10,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:03:10,242.242 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:03:10,419.419 INFO    ] No existing commands found in stream
[2026-10-18 00:03:15,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:03:15,439.439 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-18 00:03:16,896.896 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:03:16,899.899 INFO    ] Checking for system updates...
[2026-10-18 00:03:16,934.934 INFO    ] 200
[2026-10-18 00:03:16,937.937 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:03:16,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:03:16,997.997 INFO    ] No update needed
[2026-10-18 00:03:16,999.999 INFO    ] Checking for camera pi updates...
[2026-10-18 00:03:17,035.035 INFO    ] 200
[2026-10-18 00:03:17,038.038 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:03:17,081.081 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:03:27,096.096 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:03:27,132.132 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:03:27,142.142 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:03:27,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:03:27,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:03:27,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:03:29,194.194 INFO    ] ================================================
[2026-10-18 00:03:29,209.209 INFO    ] Launching Daemon at Sun Oct 18 00:03:29 IST 2026
[2026-10-18 00:03:29,220.220 INFO    ] ================================================
[2026-10-18 00:03:29,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:03:29
[2026-10-18 00:03:30,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:03:30,621.621 INFO    ] Initializing speech engine...
[2026-10-18 00:03:30,644.644 INFO    ] 2026-10-18 00:03:30
[2026-10-18 00:03:30,898.898 INFO    ] 2026-10-18 00:03:30
[2026-10-18 00:03:30,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:03:31,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:03:31,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:03:31,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:03:31,384.384 INFO    ] time= 18/10/2026 00:03:31
[2026-10-18 00:03:31,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:03:31,486.486 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:03:31,637.637 INFO    ] No existing commands found in stream
[2026-10-18 00:03:36,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:03:36,661.661 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-18 00:03:38,772.772 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:03:38,774.774 INFO    ] Checking for system updates...
[2026-10-18 00:03:38,810.810 INFO    ] 200
[2026-10-18 00:03:38,812.812 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:03:38,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:03:38,874.874 INFO    ] No update needed
[2026-10-18 00:03:38,876.876 INFO    ] Checking for camera pi updates...
[2026-10-18 00:03:38,909.909 INFO    ] 200
[2026-10-18 00:03:38,912.912 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:03:38,952.952 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:03:48,968.968 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:03:49,003.003 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:03:49,013.013 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:03:49,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:03:49,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:03:49,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:03:51,066.066 INFO    ] ================================================
[2026-10-18 00:03:51,081.081 INFO    ] Launching Daemon at Sun Oct 18 00:03:51 IST 2026
[2026-10-18 00:03:51,092.092 INFO    ] ================================================
[2026-10-18 00:03:51,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:03:51
[2026-10-18 00:03:52,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:03:52,553.553 INFO    ] Initializing speech engine...
[2026-10-18 00:03:52,563.563 INFO    ] 2026-10-18 00:03:52
[2026-10-18 00:03:52,812.812 INFO    ] 2026-10-18 00:03:52
[2026-10-18 00:03:52,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:03:53,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:03:53,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:03:53,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:03:53,370.370 INFO    ] time= 18/10/2026 00:03:53
[2026-10-18 00:03:53,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:03:53,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:03:53,526.526 INFO    ] No existing commands found in stream
[2026-10-18 00:03:58,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:03:58,548.548 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-18 00:03:59,858.858 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:03:59,861.861 INFO    ] Checking for system updates...
[2026-10-18 00:03:59,898.898 INFO    ] 200
[2026-10-18 00:03:59,901.901 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:03:59,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:03:59,957.957 INFO    ] No update needed
[2026-10-18 00:03:59,960.960 INFO    ] Checking for camera pi updates...
[2026-10-18 00:03:59,996.996 INFO    ] 200
[2026-10-18 00:03:59,999.999 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:04:00,046.046 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:04:10,061.061 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:04:10,101.101 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:04:10,112.112 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:04:10,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:04:10,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:04:10,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:04:12,168.168 INFO    ] ================================================
[2026-10-18 00:04:12,183.183 INFO    ] Launching Daemon at Sun Oct 18 00:04:12 IST 2026
[2026-10-18 00:04:12,195.195 INFO    ] ================================================
[2026-10-18 00:04:12,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:04:12
[2026-10-18 00:04:13,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:04:13,654.654 INFO    ] Initializing speech engine...
[2026-10-18 00:04:13,662.662 INFO    ] 2026-10-18 00:04:13
[2026-10-18 00:04:13,923.923 INFO    ] 2026-10-18 00:04:13
[2026-10-18 00:04:13,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:04:14,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:04:14,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:04:14,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:04:14,468.468 INFO    ] time= 18/10/2026 00:04:14
[2026-10-18 00:04:14,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:04:14,494.494 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:04:14,623.623 INFO    ] No existing commands found in stream
[2026-10-18 00:04:19,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:04:19,648.648 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-18 00:04:22,133.133 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:04:22,136.136 INFO    ] Checking for system updates...
[2026-10-18 00:04:22,175.175 INFO    ] 200
[2026-10-18 00:04:22,178.178 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:04:22,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:04:22,238.238 INFO    ] No update needed
[2026-10-18 00:04:22,241.241 INFO    ] Checking for camera pi updates...
[2026-10-18 00:04:22,278.278 INFO    ] 200
[2026-10-18 00:04:22,280.280 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:04:22,325.325 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:04:32,340.340 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:04:32,379.379 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:04:32,390.390 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:04:32,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:04:32,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:04:32,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:04:34,448.448 INFO    ] ================================================
[2026-10-18 00:04:34,464.464 INFO    ] Launching Daemon at Sun Oct 18 00:04:34 IST 2026
[2026-10-18 00:04:34,476.476 INFO    ] ================================================
[2026-10-18 00:04:35,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:04:35
[2026-10-18 00:04:35,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:04:35,892.892 INFO    ] Initializing speech engine...
[2026-10-18 00:04:35,902.902 INFO    ] 2026-10-18 00:04:35
[2026-10-18 00:04:36,197.197 INFO    ] 2026-10-18 00:04:36
[2026-10-18 00:04:36,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:04:36,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:04:36,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:04:36,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:04:36,619.619 INFO    ] time= 18/10/2026 00:04:36
[2026-10-18 00:04:36,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:04:36,631.631 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:04:36,747.747 INFO    ] No existing commands found in stream
[2026-10-18 00:04:41,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:04:41,780.780 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-18 00:04:42,650.650 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:04:42,653.653 INFO    ] Checking for system updates...
[2026-10-18 00:04:42,694.694 INFO    ] 200
[2026-10-18 00:04:42,697.697 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:04:42,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:04:42,766.766 INFO    ] No update needed
[2026-10-18 00:04:42,769.769 INFO    ] Checking for camera pi updates...
[2026-10-18 00:04:42,804.804 INFO    ] 200
[2026-10-18 00:04:42,807.807 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:04:42,849.849 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:04:52,864.864 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:04:52,899.899 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:04:52,909.909 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:04:52,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:04:52,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:04:52,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:04:54,961.961 INFO    ] ================================================
[2026-10-18 00:04:54,978.978 INFO    ] Launching Daemon at Sun Oct 18 00:04:54 IST 2026
[2026-10-18 00:04:54,989.989 INFO    ] ================================================
[2026-10-18 00:04:55,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:04:55
[2026-10-18 00:04:56,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:04:56,624.624 INFO    ] Initializing speech engine...
[2026-10-18 00:04:56,630.630 INFO    ] 2026-10-18 00:04:56
[2026-10-18 00:04:56,952.952 INFO    ] 2026-10-18 00:04:56
[2026-10-18 00:04:57,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:04:57,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:04:57,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:04:57,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:04:57,460.460 INFO    ] time= 18/10/2026 00:04:57
[2026-10-18 00:04:57,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:04:57,510.510 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:04:57,640.640 INFO    ] No existing commands found in stream
[2026-10-18 00:05:02,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:05:02,676.676 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-18 00:05:06,944.944 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:05:06,948.948 INFO    ] Checking for system updates...
[2026-10-18 00:05:06,989.989 INFO    ] 200
[2026-10-18 00:05:06,991.991 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:05:07,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:05:07,045.045 INFO    ] No update needed
[2026-10-18 00:05:07,047.047 INFO    ] Checking for camera pi updates...
[2026-10-18 00:05:07,084.084 INFO    ] 200
[2026-10-18 00:05:07,086.086 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:05:07,131.131 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:05:17,146.146 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:05:17,180.180 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:05:17,190.190 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:05:17,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:05:17,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:05:17,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:05:19,242.242 INFO    ] ================================================
[2026-10-18 00:05:19,258.258 INFO    ] Launching Daemon at Sun Oct 18 00:05:19 IST 2026
[2026-10-18 00:05:19,269.269 INFO    ] ================================================
[2026-10-18 00:05:19,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:05:19
[2026-10-18 00:05:20,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:05:20,722.722 INFO    ] Initializing speech engine...
[2026-10-18 00:05:20,731.731 INFO    ] 2026-10-18 00:05:20
[2026-10-18 00:05:20,985.985 INFO    ] 2026-10-18 00:05:20
[2026-10-18 00:05:21,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:05:21,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:05:21,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:05:21,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:05:21,491.491 INFO    ] time= 18/10/2026 00:05:21
[2026-10-18 00:05:21,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:05:21,553.553 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:05:21,690.690 INFO    ] No existing commands found in stream
[2026-10-18 00:05:26,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:05:26,708.708 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-18 00:05:30,891.891 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:05:30,893.893 INFO    ] Checking for system updates...
[2026-10-18 00:05:30,932.932 INFO    ] 200
[2026-10-18 00:05:30,935.935 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:05:30,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:05:30,996.996 INFO    ] No update needed
[2026-10-18 00:05:30,998.998 INFO    ] Checking for camera pi updates...
[2026-10-18 00:05:31,033.033 INFO    ] 200
[2026-10-18 00:05:31,035.035 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:05:31,076.076 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:05:41,091.091 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:05:41,127.127 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:05:41,137.137 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:05:41,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:05:41,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:05:41,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:05:43,192.192 INFO    ] ================================================
[2026-10-18 00:05:43,208.208 INFO    ] Launching Daemon at Sun Oct 18 00:05:43 IST 2026
[2026-10-18 00:05:43,219.219 INFO    ] ================================================
[2026-10-18 00:05:43,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:05:43
[2026-10-18 00:05:44,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:05:44,682.682 INFO    ] Initializing speech engine...
[2026-10-18 00:05:44,690.690 INFO    ] 2026-10-18 00:05:44
[2026-10-18 00:05:44,950.950 INFO    ] 2026-10-18 00:05:44
[2026-10-18 00:05:45,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:05:45,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:05:45,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:05:45,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:05:45,495.495 INFO    ] time= 18/10/2026 00:05:45
[2026-10-18 00:05:45,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:05:45,520.520 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:05:45,661.661 INFO    ] No existing commands found in stream
[2026-10-18 00:05:50,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:05:50,701.701 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-18 00:05:54,615.615 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:05:54,618.618 INFO    ] Checking for system updates...
[2026-10-18 00:05:54,661.661 INFO    ] 200
[2026-10-18 00:05:54,664.664 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:05:54,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:05:54,722.722 INFO    ] No update needed
[2026-10-18 00:05:54,725.725 INFO    ] Checking for camera pi updates...
[2026-10-18 00:05:54,765.765 INFO    ] 200
[2026-10-18 00:05:54,768.768 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:05:54,815.815 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:06:04,832.832 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:06:04,871.871 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:06:04,882.882 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:06:04,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:06:04,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:06:04,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:06:06,939.939 INFO    ] ================================================
[2026-10-18 00:06:06,954.954 INFO    ] Launching Daemon at Sun Oct 18 00:06:06 IST 2026
[2026-10-18 00:06:06,965.965 INFO    ] ================================================
[2026-10-18 00:06:07,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:06:07
[2026-10-18 00:06:08,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:06:08,465.465 INFO    ] Initializing speech engine...
[2026-10-18 00:06:08,472.472 INFO    ] 2026-10-18 00:06:08
[2026-10-18 00:06:08,755.755 INFO    ] 2026-10-18 00:06:08
[2026-10-18 00:06:08,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:06:09,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:06:09,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:06:09,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:06:09,291.291 INFO    ] time= 18/10/2026 00:06:09
[2026-10-18 00:06:09,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:06:09,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:06:09,447.447 INFO    ] No existing commands found in stream
[2026-10-18 00:06:14,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:06:14,468.468 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-18 00:06:15,067.067 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:06:15,070.070 INFO    ] Checking for system updates...
[2026-10-18 00:06:15,111.111 INFO    ] 200
[2026-10-18 00:06:15,114.114 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:06:15,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:06:15,177.177 INFO    ] No update needed
[2026-10-18 00:06:15,180.180 INFO    ] Checking for camera pi updates...
[2026-10-18 00:06:15,218.218 INFO    ] 200
[2026-10-18 00:06:15,220.220 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:06:15,267.267 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:06:25,283.283 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:06:25,323.323 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:06:25,334.334 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:06:25,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:06:25,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:06:25,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:06:27,391.391 INFO    ] ================================================
[2026-10-18 00:06:27,407.407 INFO    ] Launching Daemon at Sun Oct 18 00:06:27 IST 2026
[2026-10-18 00:06:27,417.417 INFO    ] ================================================
[2026-10-18 00:06:28,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:06:28
[2026-10-18 00:06:28,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:06:29,041.041 INFO    ] Initializing speech engine...
[2026-10-18 00:06:29,053.053 INFO    ] 2026-10-18 00:06:29
[2026-10-18 00:06:29,340.340 INFO    ] 2026-10-18 00:06:29
[2026-10-18 00:06:29,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:06:29,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:06:29,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:06:29,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:06:29,882.882 INFO    ] time= 18/10/2026 00:06:29
[2026-10-18 00:06:29,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:06:29,907.907 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:06:30,052.052 INFO    ] No existing commands found in stream
[2026-10-18 00:06:35,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:06:35,087.087 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-18 00:06:37,929.929 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:06:37,932.932 INFO    ] Checking for system updates...
[2026-10-18 00:06:37,975.975 INFO    ] 200
[2026-10-18 00:06:37,978.978 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:06:38,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:06:38,040.040 INFO    ] No update needed
[2026-10-18 00:06:38,043.043 INFO    ] Checking for camera pi updates...
[2026-10-18 00:06:38,081.081 INFO    ] 200
[2026-10-18 00:06:38,084.084 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:06:38,128.128 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:06:48,141.141 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:06:48,181.181 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:06:48,192.192 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:06:48,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:06:48,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:06:48,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:06:50,247.247 INFO    ] ================================================
[2026-10-18 00:06:50,263.263 INFO    ] Launching Daemon at Sun Oct 18 00:06:50 IST 2026
[2026-10-18 00:06:50,274.274 INFO    ] ================================================
[2026-10-18 00:06:50,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:06:50
[2026-10-18 00:06:51,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:06:51,692.692 INFO    ] Initializing speech engine...
[2026-10-18 00:06:51,701.701 INFO    ] 2026-10-18 00:06:51
[2026-10-18 00:06:51,950.950 INFO    ] 2026-10-18 00:06:51
[2026-10-18 00:06:51,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:06:52,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:06:52,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:06:52,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:06:52,454.454 INFO    ] time= 18/10/2026 00:06:52
[2026-10-18 00:06:52,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:06:52,526.526 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:06:52,676.676 INFO    ] No existing commands found in stream
[2026-10-18 00:06:57,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:06:57,698.698 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-18 00:07:01,182.182 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:07:01,184.184 INFO    ] Checking for system updates...
[2026-10-18 00:07:01,226.226 INFO    ] 200
[2026-10-18 00:07:01,229.229 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:07:01,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:07:01,285.285 INFO    ] No update needed
[2026-10-18 00:07:01,287.287 INFO    ] Checking for camera pi updates...
[2026-10-18 00:07:01,334.334 INFO    ] 200
[2026-10-18 00:07:01,338.338 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:07:01,441.441 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:07:11,464.464 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:07:11,504.504 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:07:11,515.515 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:07:11,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:07:11,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:07:11,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:07:13,569.569 INFO    ] ================================================
[2026-10-18 00:07:13,584.584 INFO    ] Launching Daemon at Sun Oct 18 00:07:13 IST 2026
[2026-10-18 00:07:13,594.594 INFO    ] ================================================
[2026-10-18 00:07:14,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:07:14
[2026-10-18 00:07:14,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:07:15,033.033 INFO    ] Initializing speech engine...
[2026-10-18 00:07:15,042.042 INFO    ] 2026-10-18 00:07:15
[2026-10-18 00:07:15,337.337 INFO    ] 2026-10-18 00:07:15
[2026-10-18 00:07:15,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:07:15,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:07:15,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:07:15,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:07:15,855.855 INFO    ] time= 18/10/2026 00:07:15
[2026-10-18 00:07:15,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:07:15,959.959 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:07:16,125.125 INFO    ] No existing commands found in stream
[2026-10-18 00:07:21,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:07:21,153.153 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-18 00:07:22,811.811 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:07:22,813.813 INFO    ] Checking for system updates...
[2026-10-18 00:07:22,850.850 INFO    ] 200
[2026-10-18 00:07:22,852.852 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:07:22,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:07:22,913.913 INFO    ] No update needed
[2026-10-18 00:07:22,920.920 INFO    ] Checking for camera pi updates...
[2026-10-18 00:07:22,957.957 INFO    ] 200
[2026-10-18 00:07:22,959.959 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:07:23,003.003 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:07:33,017.017 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:07:33,052.052 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:07:33,062.062 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:07:33,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:07:33,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:07:33,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:07:35,114.114 INFO    ] ================================================
[2026-10-18 00:07:35,129.129 INFO    ] Launching Daemon at Sun Oct 18 00:07:35 IST 2026
[2026-10-18 00:07:35,140.140 INFO    ] ================================================
[2026-10-18 00:07:35,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:07:35
[2026-10-18 00:07:36,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:07:36,681.681 INFO    ] Initializing speech engine...
[2026-10-18 00:07:36,688.688 INFO    ] 2026-10-18 00:07:36
[2026-10-18 00:07:36,980.980 INFO    ] 2026-10-18 00:07:36
[2026-10-18 00:07:37,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:07:37,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:07:37,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:07:37,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:07:37,479.479 INFO    ] time= 18/10/2026 00:07:37
[2026-10-18 00:07:37,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:07:37,542.542 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:07:37,691.691 INFO    ] No existing commands found in stream
[2026-10-18 00:07:42,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:07:42,711.711 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-18 00:07:46,556.556 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:07:46,559.559 INFO    ] Checking for system updates...
[2026-10-18 00:07:46,595.595 INFO    ] 200
[2026-10-18 00:07:46,598.598 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:07:46,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:07:46,653.653 INFO    ] No update needed
[2026-10-18 00:07:46,656.656 INFO    ] Checking for camera pi updates...
[2026-10-18 00:07:46,690.690 INFO    ] 200
[2026-10-18 00:07:46,693.693 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:07:46,735.735 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:07:56,752.752 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:07:56,791.791 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:07:56,802.802 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:07:56,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:07:56,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:07:56,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:07:58,857.857 INFO    ] ================================================
[2026-10-18 00:07:58,872.872 INFO    ] Launching Daemon at Sun Oct 18 00:07:58 IST 2026
[2026-10-18 00:07:58,882.882 INFO    ] ================================================
[2026-10-18 00:07:59,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:07:59
[2026-10-18 00:08:00,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:08:00,313.313 INFO    ] Initializing speech engine...
[2026-10-18 00:08:00,319.319 INFO    ] 2026-10-18 00:08:00
[2026-10-18 00:08:00,565.565 INFO    ] 2026-10-18 00:08:00
[2026-10-18 00:08:00,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:08:00,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:08:00,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:08:01,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:08:01,118.118 INFO    ] time= 18/10/2026 00:08:01
[2026-10-18 00:08:01,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:08:01,144.144 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:08:01,282.282 INFO    ] No existing commands found in stream
[2026-10-18 00:08:06,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:08:06,327.327 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-18 00:08:10,086.086 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:08:10,089.089 INFO    ] Checking for system updates...
[2026-10-18 00:08:10,125.125 INFO    ] 200
[2026-10-18 00:08:10,128.128 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:08:10,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:08:10,189.189 INFO    ] No update needed
[2026-10-18 00:08:10,192.192 INFO    ] Checking for camera pi updates...
[2026-10-18 00:08:10,229.229 INFO    ] 200
[2026-10-18 00:08:10,232.232 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:08:10,275.275 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:08:20,292.292 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:08:20,331.331 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:08:20,342.342 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:08:20,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:08:20,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:08:20,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:08:22,399.399 INFO    ] ================================================
[2026-10-18 00:08:22,414.414 INFO    ] Launching Daemon at Sun Oct 18 00:08:22 IST 2026
[2026-10-18 00:08:22,424.424 INFO    ] ================================================
[2026-10-18 00:08:22,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:08:22
[2026-10-18 00:08:23,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:08:23,845.845 INFO    ] Initializing speech engine...
[2026-10-18 00:08:23,858.858 INFO    ] 2026-10-18 00:08:23
[2026-10-18 00:08:24,143.143 INFO    ] 2026-10-18 00:08:24
[2026-10-18 00:08:24,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:08:24,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:08:24,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:08:24,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:08:24,650.650 INFO    ] time= 18/10/2026 00:08:24
[2026-10-18 00:08:24,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:08:24,759.759 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:08:24,920.920 INFO    ] No existing commands found in stream
[2026-10-18 00:08:29,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:08:29,951.951 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-18 00:08:32,937.937 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:08:32,939.939 INFO    ] Checking for system updates...
[2026-10-18 00:08:32,974.974 INFO    ] 200
[2026-10-18 00:08:32,977.977 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:08:33,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:08:33,031.031 INFO    ] No update needed
[2026-10-18 00:08:33,034.034 INFO    ] Checking for camera pi updates...
[2026-10-18 00:08:33,067.067 INFO    ] 200
[2026-10-18 00:08:33,069.069 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:08:33,110.110 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:08:43,125.125 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:08:43,159.159 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:08:43,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:08:43,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:08:43,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:08:43,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:08:45,221.221 INFO    ] ================================================
[2026-10-18 00:08:45,237.237 INFO    ] Launching Daemon at Sun Oct 18 00:08:45 IST 2026
[2026-10-18 00:08:45,247.247 INFO    ] ================================================
[2026-10-18 00:08:45,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:08:45
[2026-10-18 00:08:46,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:08:46,677.677 INFO    ] Initializing speech engine...
[2026-10-18 00:08:46,686.686 INFO    ] 2026-10-18 00:08:46
[2026-10-18 00:08:46,932.932 INFO    ] 2026-10-18 00:08:46
[2026-10-18 00:08:46,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:08:47,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:08:47,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:08:47,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:08:47,398.398 INFO    ] time= 18/10/2026 00:08:47
[2026-10-18 00:08:47,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:08:47,496.496 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:08:47,638.638 INFO    ] No existing commands found in stream
[2026-10-18 00:08:52,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:08:52,666.666 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-18 00:08:56,773.773 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:08:56,776.776 INFO    ] Checking for system updates...
[2026-10-18 00:08:56,815.815 INFO    ] 200
[2026-10-18 00:08:56,818.818 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:08:56,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:08:56,878.878 INFO    ] No update needed
[2026-10-18 00:08:56,880.880 INFO    ] Checking for camera pi updates...
[2026-10-18 00:08:56,913.913 INFO    ] 200
[2026-10-18 00:08:56,916.916 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:08:56,956.956 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:09:06,971.971 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:09:07,006.006 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:09:07,015.015 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:09:07,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:09:07,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:09:07,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:09:09,068.068 INFO    ] ================================================
[2026-10-18 00:09:09,084.084 INFO    ] Launching Daemon at Sun Oct 18 00:09:09 IST 2026
[2026-10-18 00:09:09,095.095 INFO    ] ================================================
[2026-10-18 00:09:09,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:09:09
[2026-10-18 00:09:10,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:09:10,603.603 INFO    ] Initializing speech engine...
[2026-10-18 00:09:10,611.611 INFO    ] 2026-10-18 00:09:10
[2026-10-18 00:09:10,876.876 INFO    ] 2026-10-18 00:09:10
[2026-10-18 00:09:10,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:09:11,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:09:11,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:09:11,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:09:11,419.419 INFO    ] time= 18/10/2026 00:09:11
[2026-10-18 00:09:11,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:09:11,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:09:11,657.657 INFO    ] No existing commands found in stream
[2026-10-18 00:09:16,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:09:16,688.688 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-18 00:09:17,974.974 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:09:17,977.977 INFO    ] Checking for system updates...
[2026-10-18 00:09:18,014.014 INFO    ] 200
[2026-10-18 00:09:18,017.017 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:09:18,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:09:18,073.073 INFO    ] No update needed
[2026-10-18 00:09:18,076.076 INFO    ] Checking for camera pi updates...
[2026-10-18 00:09:18,111.111 INFO    ] 200
[2026-10-18 00:09:18,114.114 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:09:18,155.155 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:09:28,168.168 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:09:28,208.208 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:09:28,219.219 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:09:28,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:09:28,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:09:28,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:09:30,275.275 INFO    ] ================================================
[2026-10-18 00:09:30,290.290 INFO    ] Launching Daemon at Sun Oct 18 00:09:30 IST 2026
[2026-10-18 00:09:30,301.301 INFO    ] ================================================
[2026-10-18 00:09:30,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:09:30
[2026-10-18 00:09:31,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:09:31,920.920 INFO    ] Initializing speech engine...
[2026-10-18 00:09:31,925.925 INFO    ] 2026-10-18 00:09:31
[2026-10-18 00:09:32,196.196 INFO    ] 2026-10-18 00:09:32
[2026-10-18 00:09:32,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:09:32,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:09:32,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:09:32,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:09:32,773.773 INFO    ] time= 18/10/2026 00:09:32
[2026-10-18 00:09:32,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:09:32,818.818 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:09:32,941.941 INFO    ] No existing commands found in stream
[2026-10-18 00:09:37,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:09:37,971.971 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-18 00:09:40,433.433 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:09:40,436.436 INFO    ] Checking for system updates...
[2026-10-18 00:09:40,471.471 INFO    ] 200
[2026-10-18 00:09:40,473.473 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:09:40,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:09:40,528.528 INFO    ] No update needed
[2026-10-18 00:09:40,530.530 INFO    ] Checking for camera pi updates...
[2026-10-18 00:09:40,564.564 INFO    ] 200
[2026-10-18 00:09:40,567.567 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:09:40,608.608 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:09:50,623.623 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:09:50,658.658 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:09:50,668.668 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:09:50,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:09:50,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:09:50,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:09:52,722.722 INFO    ] ================================================
[2026-10-18 00:09:52,738.738 INFO    ] Launching Daemon at Sun Oct 18 00:09:52 IST 2026
[2026-10-18 00:09:52,748.748 INFO    ] ================================================
[2026-10-18 00:09:53,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:09:53
[2026-10-18 00:09:53,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:09:54,182.182 INFO    ] Initializing speech engine...
[2026-10-18 00:09:54,191.191 INFO    ] 2026-10-18 00:09:54
[2026-10-18 00:09:54,448.448 INFO    ] 2026-10-18 00:09:54
[2026-10-18 00:09:54,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:09:54,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:09:54,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:09:54,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:09:54,956.956 INFO    ] time= 18/10/2026 00:09:54
[2026-10-18 00:09:55,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:09:55,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:09:55,168.168 INFO    ] No existing commands found in stream
[2026-10-18 00:10:00,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:10:00,184.184 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-18 00:10:08,710.710 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:10:08,713.713 INFO    ] Checking for system updates...
[2026-10-18 00:10:08,748.748 INFO    ] 200
[2026-10-18 00:10:08,751.751 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:10:08,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:10:08,806.806 INFO    ] No update needed
[2026-10-18 00:10:08,808.808 INFO    ] Checking for camera pi updates...
[2026-10-18 00:10:08,846.846 INFO    ] 200
[2026-10-18 00:10:08,852.852 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:10:08,892.892 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:10:18,907.907 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:10:18,942.942 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:10:18,952.952 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:10:18,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:10:18,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:10:18,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:10:21,006.006 INFO    ] ================================================
[2026-10-18 00:10:21,021.021 INFO    ] Launching Daemon at Sun Oct 18 00:10:21 IST 2026
[2026-10-18 00:10:21,031.031 INFO    ] ================================================
[2026-10-18 00:10:21,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:10:21
[2026-10-18 00:10:22,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:10:22,643.643 INFO    ] Initializing speech engine...
[2026-10-18 00:10:22,652.652 INFO    ] 2026-10-18 00:10:22
[2026-10-18 00:10:22,932.932 INFO    ] 2026-10-18 00:10:22
[2026-10-18 00:10:23,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:10:23,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:10:23,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:10:23,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:10:23,462.462 INFO    ] time= 18/10/2026 00:10:23
[2026-10-18 00:10:23,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:10:23,509.509 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:10:23,641.641 INFO    ] No existing commands found in stream
[2026-10-18 00:10:28,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:10:28,675.675 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-18 00:10:32,442.442 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:10:32,445.445 INFO    ] Checking for system updates...
[2026-10-18 00:10:32,486.486 INFO    ] 200
[2026-10-18 00:10:32,489.489 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:10:32,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:10:32,555.555 INFO    ] No update needed
[2026-10-18 00:10:32,558.558 INFO    ] Checking for camera pi updates...
[2026-10-18 00:10:32,594.594 INFO    ] 200
[2026-10-18 00:10:32,597.597 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:10:32,640.640 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:10:42,658.658 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:10:42,693.693 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:10:42,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:10:42,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:10:42,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:10:42,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:10:44,754.754 INFO    ] ================================================
[2026-10-18 00:10:44,770.770 INFO    ] Launching Daemon at Sun Oct 18 00:10:44 IST 2026
[2026-10-18 00:10:44,781.781 INFO    ] ================================================
[2026-10-18 00:10:45,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:10:45
[2026-10-18 00:10:45,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:10:46,220.220 INFO    ] Initializing speech engine...
[2026-10-18 00:10:46,229.229 INFO    ] 2026-10-18 00:10:46
[2026-10-18 00:10:46,489.489 INFO    ] 2026-10-18 00:10:46
[2026-10-18 00:10:46,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:10:46,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:10:46,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:10:46,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:10:46,990.990 INFO    ] time= 18/10/2026 00:10:46
[2026-10-18 00:10:47,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:10:47,042.042 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:10:47,176.176 INFO    ] No existing commands found in stream
[2026-10-18 00:10:52,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:10:52,200.200 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-18 00:10:56,665.665 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:10:56,668.668 INFO    ] Checking for system updates...
[2026-10-18 00:10:56,703.703 INFO    ] 200
[2026-10-18 00:10:56,706.706 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:10:56,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:10:56,760.760 INFO    ] No update needed
[2026-10-18 00:10:56,762.762 INFO    ] Checking for camera pi updates...
[2026-10-18 00:10:56,799.799 INFO    ] 200
[2026-10-18 00:10:56,801.801 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:10:56,845.845 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:11:06,861.861 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:11:06,896.896 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:11:06,905.905 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:11:06,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:11:06,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:11:06,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:11:08,959.959 INFO    ] ================================================
[2026-10-18 00:11:08,975.975 INFO    ] Launching Daemon at Sun Oct 18 00:11:08 IST 2026
[2026-10-18 00:11:08,986.986 INFO    ] ================================================
[2026-10-18 00:11:09,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:11:09
[2026-10-18 00:11:10,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:11:10,589.589 INFO    ] Initializing speech engine...
[2026-10-18 00:11:10,597.597 INFO    ] 2026-10-18 00:11:10
[2026-10-18 00:11:10,884.884 INFO    ] 2026-10-18 00:11:10
[2026-10-18 00:11:10,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:11:11,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:11:11,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:11:11,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:11:11,435.435 INFO    ] time= 18/10/2026 00:11:11
[2026-10-18 00:11:11,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:11:11,483.483 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:11:11,602.602 INFO    ] No existing commands found in stream
[2026-10-18 00:11:16,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:11:16,631.631 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-18 00:11:20,900.900 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:11:20,903.903 INFO    ] Checking for system updates...
[2026-10-18 00:11:20,942.942 INFO    ] 200
[2026-10-18 00:11:20,945.945 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:11:21,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:11:21,003.003 INFO    ] No update needed
[2026-10-18 00:11:21,005.005 INFO    ] Checking for camera pi updates...
[2026-10-18 00:11:21,044.044 INFO    ] 200
[2026-10-18 00:11:21,047.047 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:11:21,088.088 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:11:31,104.104 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:11:31,143.143 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:11:31,154.154 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:11:31,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:11:31,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:11:31,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:11:33,212.212 INFO    ] ================================================
[2026-10-18 00:11:33,229.229 INFO    ] Launching Daemon at Sun Oct 18 00:11:33 IST 2026
[2026-10-18 00:11:33,241.241 INFO    ] ================================================
[2026-10-18 00:11:33,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:11:33
[2026-10-18 00:11:34,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:11:34,676.676 INFO    ] Initializing speech engine...
[2026-10-18 00:11:34,691.691 INFO    ] 2026-10-18 00:11:34
[2026-10-18 00:11:35,000.000 INFO    ] 2026-10-18 00:11:34
[2026-10-18 00:11:35,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:11:35,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:11:35,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:11:35,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:11:35,512.512 INFO    ] time= 18/10/2026 00:11:35
[2026-10-18 00:11:35,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:11:35,562.562 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:11:35,674.674 INFO    ] No existing commands found in stream
[2026-10-18 00:11:40,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:11:40,702.702 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-18 00:11:42,842.842 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:11:42,845.845 INFO    ] Checking for system updates...
[2026-10-18 00:11:42,882.882 INFO    ] 200
[2026-10-18 00:11:42,885.885 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:11:42,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:11:42,941.941 INFO    ] No update needed
[2026-10-18 00:11:42,943.943 INFO    ] Checking for camera pi updates...
[2026-10-18 00:11:42,977.977 INFO    ] 200
[2026-10-18 00:11:42,980.980 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:11:43,021.021 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:11:53,034.034 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:11:53,074.074 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:11:53,085.085 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:11:53,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:11:53,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:11:53,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:11:55,141.141 INFO    ] ================================================
[2026-10-18 00:11:55,156.156 INFO    ] Launching Daemon at Sun Oct 18 00:11:55 IST 2026
[2026-10-18 00:11:55,167.167 INFO    ] ================================================
[2026-10-18 00:11:55,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:11:55
[2026-10-18 00:11:56,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:11:56,591.591 INFO    ] Initializing speech engine...
[2026-10-18 00:11:56,609.609 INFO    ] 2026-10-18 00:11:56
[2026-10-18 00:11:56,859.859 INFO    ] 2026-10-18 00:11:56
[2026-10-18 00:11:56,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:11:57,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:11:57,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:11:57,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:11:57,421.421 INFO    ] time= 18/10/2026 00:11:57
[2026-10-18 00:11:57,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:11:57,444.444 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:11:57,600.600 INFO    ] No existing commands found in stream
[2026-10-18 00:12:02,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:12:02,632.632 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-18 00:12:03,723.723 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:12:03,725.725 INFO    ] Checking for system updates...
[2026-10-18 00:12:03,761.761 INFO    ] 200
[2026-10-18 00:12:03,763.763 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:12:03,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:12:03,831.831 INFO    ] No update needed
[2026-10-18 00:12:03,834.834 INFO    ] Checking for camera pi updates...
[2026-10-18 00:12:03,881.881 INFO    ] 200
[2026-10-18 00:12:03,884.884 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:12:03,932.932 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:12:13,948.948 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:12:13,982.982 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:12:13,992.992 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:12:13,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:12:13,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:12:14,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:12:16,044.044 INFO    ] ================================================
[2026-10-18 00:12:16,059.059 INFO    ] Launching Daemon at Sun Oct 18 00:12:16 IST 2026
[2026-10-18 00:12:16,070.070 INFO    ] ================================================
[2026-10-18 00:12:16,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:12:16
[2026-10-18 00:12:17,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:12:17,497.497 INFO    ] Initializing speech engine...
[2026-10-18 00:12:17,505.505 INFO    ] 2026-10-18 00:12:17
[2026-10-18 00:12:17,757.757 INFO    ] 2026-10-18 00:12:17
[2026-10-18 00:12:17,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:12:18,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:12:18,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:12:18,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:12:18,316.316 INFO    ] time= 18/10/2026 00:12:18
[2026-10-18 00:12:18,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:12:18,348.348 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:12:18,477.477 INFO    ] No existing commands found in stream
[2026-10-18 00:12:23,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:12:23,497.497 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-18 00:12:24,276.276 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:12:24,278.278 INFO    ] Checking for system updates...
[2026-10-18 00:12:24,315.315 INFO    ] 200
[2026-10-18 00:12:24,317.317 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:12:24,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:12:24,379.379 INFO    ] No update needed
[2026-10-18 00:12:24,381.381 INFO    ] Checking for camera pi updates...
[2026-10-18 00:12:24,414.414 INFO    ] 200
[2026-10-18 00:12:24,416.416 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:12:24,457.457 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:12:34,470.470 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:12:34,504.504 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:12:34,514.514 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:12:34,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:12:34,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:12:34,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:12:36,569.569 INFO    ] ================================================
[2026-10-18 00:12:36,584.584 INFO    ] Launching Daemon at Sun Oct 18 00:12:36 IST 2026
[2026-10-18 00:12:36,595.595 INFO    ] ================================================
[2026-10-18 00:12:37,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:12:37
[2026-10-18 00:12:37,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:12:38,017.017 INFO    ] Initializing speech engine...
[2026-10-18 00:12:38,026.026 INFO    ] 2026-10-18 00:12:38
[2026-10-18 00:12:38,270.270 INFO    ] 2026-10-18 00:12:38
[2026-10-18 00:12:38,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:12:38,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:12:38,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:12:38,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:12:38,824.824 INFO    ] time= 18/10/2026 00:12:38
[2026-10-18 00:12:38,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:12:38,847.847 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:12:38,991.991 INFO    ] No existing commands found in stream
[2026-10-18 00:12:44,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:12:44,031.031 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-18 00:12:45,627.627 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:12:45,630.630 INFO    ] Checking for system updates...
[2026-10-18 00:12:45,667.667 INFO    ] 200
[2026-10-18 00:12:45,670.670 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:12:45,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:12:45,726.726 INFO    ] No update needed
[2026-10-18 00:12:45,729.729 INFO    ] Checking for camera pi updates...
[2026-10-18 00:12:45,764.764 INFO    ] 200
[2026-10-18 00:12:45,767.767 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:12:45,810.810 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:12:55,825.825 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:12:55,865.865 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:12:55,877.877 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:12:55,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:12:55,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:12:55,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:12:57,934.934 INFO    ] ================================================
[2026-10-18 00:12:57,949.949 INFO    ] Launching Daemon at Sun Oct 18 00:12:57 IST 2026
[2026-10-18 00:12:57,961.961 INFO    ] ================================================
[2026-10-18 00:12:58,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:12:58
[2026-10-18 00:12:59,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:12:59,421.421 INFO    ] Initializing speech engine...
[2026-10-18 00:12:59,429.429 INFO    ] 2026-10-18 00:12:59
[2026-10-18 00:12:59,682.682 INFO    ] 2026-10-18 00:12:59
[2026-10-18 00:12:59,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:12:59,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:12:59,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:13:00,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:13:00,231.231 INFO    ] time= 18/10/2026 00:13:00
[2026-10-18 00:13:00,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:13:00,267.267 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:13:00,405.405 INFO    ] No existing commands found in stream
[2026-10-18 00:13:05,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:13:05,435.435 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-18 00:13:07,694.694 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:13:07,697.697 INFO    ] Checking for system updates...
[2026-10-18 00:13:07,733.733 INFO    ] 200
[2026-10-18 00:13:07,736.736 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:13:07,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:13:07,790.790 INFO    ] No update needed
[2026-10-18 00:13:07,793.793 INFO    ] Checking for camera pi updates...
[2026-10-18 00:13:07,826.826 INFO    ] 200
[2026-10-18 00:13:07,829.829 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:13:07,869.869 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:13:17,884.884 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:13:17,920.920 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:13:17,930.930 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:13:17,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:13:17,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:13:17,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:13:19,982.982 INFO    ] ================================================
[2026-10-18 00:13:20,998.998 INFO    ] Launching Daemon at Sun Oct 18 00:13:19 IST 2026
[2026-10-18 00:13:20,008.008 INFO    ] ================================================
[2026-10-18 00:13:20,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:13:20
[2026-10-18 00:13:21,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:13:21,569.569 INFO    ] Initializing speech engine...
[2026-10-18 00:13:21,579.579 INFO    ] 2026-10-18 00:13:21
[2026-10-18 00:13:21,843.843 INFO    ] 2026-10-18 00:13:21
[2026-10-18 00:13:21,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:13:22,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:13:22,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:13:22,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:13:22,391.391 INFO    ] time= 18/10/2026 00:13:22
[2026-10-18 00:13:22,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:13:22,414.414 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:13:22,543.543 INFO    ] No existing commands found in stream
[2026-10-18 00:13:27,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:13:27,559.559 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-18 00:13:28,338.338 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:13:28,340.340 INFO    ] Checking for system updates...
[2026-10-18 00:13:28,380.380 INFO    ] 200
[2026-10-18 00:13:28,383.383 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:13:28,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:13:28,444.444 INFO    ] No update needed
[2026-10-18 00:13:28,447.447 INFO    ] Checking for camera pi updates...
[2026-10-18 00:13:28,480.480 INFO    ] 200
[2026-10-18 00:13:28,483.483 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:13:28,524.524 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:13:38,538.538 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:13:38,573.573 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:13:38,583.583 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:13:38,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:13:38,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:13:38,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:13:40,635.635 INFO    ] ================================================
[2026-10-18 00:13:40,651.651 INFO    ] Launching Daemon at Sun Oct 18 00:13:40 IST 2026
[2026-10-18 00:13:40,662.662 INFO    ] ================================================
[2026-10-18 00:13:41,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:13:41
[2026-10-18 00:13:41,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:13:42,191.191 INFO    ] Initializing speech engine...
[2026-10-18 00:13:42,200.200 INFO    ] 2026-10-18 00:13:42
[2026-10-18 00:13:42,463.463 INFO    ] 2026-10-18 00:13:42
[2026-10-18 00:13:42,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:13:42,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:13:42,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:13:42,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:13:42,961.961 INFO    ] time= 18/10/2026 00:13:42
[2026-10-18 00:13:42,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:13:43,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:13:43,111.111 INFO    ] No existing commands found in stream
[2026-10-18 00:13:48,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:13:48,146.146 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-18 00:13:49,795.795 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:13:49,798.798 INFO    ] Checking for system updates...
[2026-10-18 00:13:49,835.835 INFO    ] 200
[2026-10-18 00:13:49,838.838 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:13:49,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:13:49,896.896 INFO    ] No update needed
[2026-10-18 00:13:49,899.899 INFO    ] Checking for camera pi updates...
[2026-10-18 00:13:49,933.933 INFO    ] 200
[2026-10-18 00:13:49,936.936 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:13:49,977.977 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:13:59,992.992 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:14:00,027.027 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:14:00,037.037 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:14:00,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:14:00,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:14:00,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:14:02,101.101 INFO    ] ================================================
[2026-10-18 00:14:02,123.123 INFO    ] Launching Daemon at Sun Oct 18 00:14:02 IST 2026
[2026-10-18 00:14:02,140.140 INFO    ] ================================================
[2026-10-18 00:14:02,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:14:02
[2026-10-18 00:14:03,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:14:03,674.674 INFO    ] Initializing speech engine...
[2026-10-18 00:14:03,683.683 INFO    ] 2026-10-18 00:14:03
[2026-10-18 00:14:03,933.933 INFO    ] 2026-10-18 00:14:03
[2026-10-18 00:14:03,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:14:04,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:14:04,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:14:04,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:14:04,496.496 INFO    ] time= 18/10/2026 00:14:04
[2026-10-18 00:14:04,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:14:04,524.524 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:14:04,652.652 INFO    ] No existing commands found in stream
[2026-10-18 00:14:09,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:14:09,668.668 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-18 00:14:11,380.380 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:14:11,382.382 INFO    ] Checking for system updates...
[2026-10-18 00:14:11,418.418 INFO    ] 200
[2026-10-18 00:14:11,420.420 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:14:11,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:14:11,479.479 INFO    ] No update needed
[2026-10-18 00:14:11,481.481 INFO    ] Checking for camera pi updates...
[2026-10-18 00:14:11,517.517 INFO    ] 200
[2026-10-18 00:14:11,520.520 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:14:11,560.560 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:14:21,571.571 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:14:21,606.606 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:14:21,616.616 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:14:21,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:14:21,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:14:21,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:14:23,668.668 INFO    ] ================================================
[2026-10-18 00:14:23,683.683 INFO    ] Launching Daemon at Sun Oct 18 00:14:23 IST 2026
[2026-10-18 00:14:23,693.693 INFO    ] ================================================
[2026-10-18 00:14:24,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:14:24
[2026-10-18 00:14:24,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:14:25,106.106 INFO    ] Initializing speech engine...
[2026-10-18 00:14:25,121.121 INFO    ] 2026-10-18 00:14:25
[2026-10-18 00:14:25,388.388 INFO    ] 2026-10-18 00:14:25
[2026-10-18 00:14:25,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:14:25,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:14:25,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:14:25,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:14:25,955.955 INFO    ] time= 18/10/2026 00:14:25
[2026-10-18 00:14:25,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:14:25,980.980 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:14:26,107.107 INFO    ] No existing commands found in stream
[2026-10-18 00:14:31,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:14:31,128.128 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-18 00:14:33,719.719 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:14:33,722.722 INFO    ] Checking for system updates...
[2026-10-18 00:14:33,757.757 INFO    ] 200
[2026-10-18 00:14:33,760.760 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:14:33,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:14:33,814.814 INFO    ] No update needed
[2026-10-18 00:14:33,817.817 INFO    ] Checking for camera pi updates...
[2026-10-18 00:14:33,854.854 INFO    ] 200
[2026-10-18 00:14:33,856.856 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:14:33,899.899 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:14:43,915.915 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:14:43,950.950 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:14:43,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:14:43,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:14:43,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:14:43,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:14:46,012.012 INFO    ] ================================================
[2026-10-18 00:14:46,027.027 INFO    ] Launching Daemon at Sun Oct 18 00:14:46 IST 2026
[2026-10-18 00:14:46,038.038 INFO    ] ================================================
[2026-10-18 00:14:46,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:14:46
[2026-10-18 00:14:47,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:14:47,618.618 INFO    ] Initializing speech engine...
[2026-10-18 00:14:47,630.630 INFO    ] 2026-10-18 00:14:47
[2026-10-18 00:14:47,942.942 INFO    ] 2026-10-18 00:14:47
[2026-10-18 00:14:48,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:14:48,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:14:48,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:14:48,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:14:48,461.461 INFO    ] time= 18/10/2026 00:14:48
[2026-10-18 00:14:48,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:14:48,497.497 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:14:48,634.634 INFO    ] No existing commands found in stream
[2026-10-18 00:14:53,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:14:53,668.668 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-18 00:14:57,583.583 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:14:57,586.586 INFO    ] Checking for system updates...
[2026-10-18 00:14:57,622.622 INFO    ] 200
[2026-10-18 00:14:57,625.625 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:14:57,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:14:57,680.680 INFO    ] No update needed
[2026-10-18 00:14:57,682.682 INFO    ] Checking for camera pi updates...
[2026-10-18 00:14:57,716.716 INFO    ] 200
[2026-10-18 00:14:57,719.719 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:14:57,761.761 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:15:07,777.777 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:15:07,816.816 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:15:07,826.826 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:15:07,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:15:07,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:15:07,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:15:09,880.880 INFO    ] ================================================
[2026-10-18 00:15:09,895.895 INFO    ] Launching Daemon at Sun Oct 18 00:15:09 IST 2026
[2026-10-18 00:15:09,906.906 INFO    ] ================================================
[2026-10-18 00:15:10,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:15:10
[2026-10-18 00:15:11,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:15:11,318.318 INFO    ] Initializing speech engine...
[2026-10-18 00:15:11,327.327 INFO    ] 2026-10-18 00:15:11
[2026-10-18 00:15:11,616.616 INFO    ] 2026-10-18 00:15:11
[2026-10-18 00:15:11,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:15:11,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:15:11,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:15:12,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:15:12,096.096 INFO    ] time= 18/10/2026 00:15:12
[2026-10-18 00:15:12,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:15:12,206.206 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:15:12,388.388 INFO    ] No existing commands found in stream
[2026-10-18 00:15:17,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:15:17,413.413 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-18 00:15:20,392.392 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:15:20,395.395 INFO    ] Checking for system updates...
[2026-10-18 00:15:20,433.433 INFO    ] 200
[2026-10-18 00:15:20,436.436 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:15:20,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:15:20,495.495 INFO    ] No update needed
[2026-10-18 00:15:20,497.497 INFO    ] Checking for camera pi updates...
[2026-10-18 00:15:20,533.533 INFO    ] 200
[2026-10-18 00:15:20,536.536 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:15:20,576.576 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:15:30,591.591 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:15:30,627.627 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:15:30,637.637 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:15:30,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:15:30,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:15:30,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:15:32,692.692 INFO    ] ================================================
[2026-10-18 00:15:32,707.707 INFO    ] Launching Daemon at Sun Oct 18 00:15:32 IST 2026
[2026-10-18 00:15:32,717.717 INFO    ] ================================================
[2026-10-18 00:15:33,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:15:33
[2026-10-18 00:15:34,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:15:34,302.302 INFO    ] Initializing speech engine...
[2026-10-18 00:15:34,310.310 INFO    ] 2026-10-18 00:15:34
[2026-10-18 00:15:34,579.579 INFO    ] 2026-10-18 00:15:34
[2026-10-18 00:15:34,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:15:34,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:15:34,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:15:35,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:15:35,128.128 INFO    ] time= 18/10/2026 00:15:35
[2026-10-18 00:15:35,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:15:35,177.177 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:15:35,337.337 INFO    ] No existing commands found in stream
[2026-10-18 00:15:40,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:15:40,366.366 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-18 00:15:41,422.422 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:15:41,425.425 INFO    ] Checking for system updates...
[2026-10-18 00:15:41,464.464 INFO    ] 200
[2026-10-18 00:15:41,467.467 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:15:41,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:15:41,522.522 INFO    ] No update needed
[2026-10-18 00:15:41,525.525 INFO    ] Checking for camera pi updates...
[2026-10-18 00:15:41,562.562 INFO    ] 200
[2026-10-18 00:15:41,565.565 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:15:41,611.611 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:15:51,628.628 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:15:51,670.670 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:15:51,681.681 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:15:51,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:15:51,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:15:51,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:15:53,736.736 INFO    ] ================================================
[2026-10-18 00:15:53,751.751 INFO    ] Launching Daemon at Sun Oct 18 00:15:53 IST 2026
[2026-10-18 00:15:53,761.761 INFO    ] ================================================
[2026-10-18 00:15:54,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:15:54
[2026-10-18 00:15:54,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:15:55,183.183 INFO    ] Initializing speech engine...
[2026-10-18 00:15:55,191.191 INFO    ] 2026-10-18 00:15:55
[2026-10-18 00:15:55,439.439 INFO    ] 2026-10-18 00:15:55
[2026-10-18 00:15:55,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:15:55,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:15:55,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:15:55,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:15:55,935.935 INFO    ] time= 18/10/2026 00:15:55
[2026-10-18 00:15:55,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:15:56,003.003 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:15:56,150.150 INFO    ] No existing commands found in stream
[2026-10-18 00:16:01,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:16:01,165.165 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-18 00:16:04,111.111 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:16:04,113.113 INFO    ] Checking for system updates...
[2026-10-18 00:16:04,149.149 INFO    ] 200
[2026-10-18 00:16:04,151.151 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:16:04,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:16:04,207.207 INFO    ] No update needed
[2026-10-18 00:16:04,210.210 INFO    ] Checking for camera pi updates...
[2026-10-18 00:16:04,244.244 INFO    ] 200
[2026-10-18 00:16:04,247.247 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:16:04,291.291 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:16:14,307.307 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:16:14,342.342 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:16:14,352.352 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:16:14,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:16:14,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:16:14,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:16:16,405.405 INFO    ] ================================================
[2026-10-18 00:16:16,420.420 INFO    ] Launching Daemon at Sun Oct 18 00:16:16 IST 2026
[2026-10-18 00:16:16,431.431 INFO    ] ================================================
[2026-10-18 00:16:17,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:16:17
[2026-10-18 00:16:17,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:16:17,891.891 INFO    ] Initializing speech engine...
[2026-10-18 00:16:17,897.897 INFO    ] 2026-10-18 00:16:17
[2026-10-18 00:16:18,159.159 INFO    ] 2026-10-18 00:16:18
[2026-10-18 00:16:18,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:16:18,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:16:18,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:16:18,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:16:18,701.701 INFO    ] time= 18/10/2026 00:16:18
[2026-10-18 00:16:18,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:16:18,726.726 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:16:18,857.857 INFO    ] No existing commands found in stream
[2026-10-18 00:16:23,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:16:23,878.878 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-18 00:16:24,507.507 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:16:24,509.509 INFO    ] Checking for system updates...
[2026-10-18 00:16:24,548.548 INFO    ] 200
[2026-10-18 00:16:24,551.551 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:16:24,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:16:24,610.610 INFO    ] No update needed
[2026-10-18 00:16:24,612.612 INFO    ] Checking for camera pi updates...
[2026-10-18 00:16:24,649.649 INFO    ] 200
[2026-10-18 00:16:24,651.651 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:16:24,692.692 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:16:34,706.706 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:16:34,741.741 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:16:34,751.751 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:16:34,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:16:34,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:16:34,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:16:36,808.808 INFO    ] ================================================
[2026-10-18 00:16:36,823.823 INFO    ] Launching Daemon at Sun Oct 18 00:16:36 IST 2026
[2026-10-18 00:16:36,834.834 INFO    ] ================================================
[2026-10-18 00:16:37,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:16:37
[2026-10-18 00:16:38,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:16:38,422.422 INFO    ] Initializing speech engine...
[2026-10-18 00:16:38,435.435 INFO    ] 2026-10-18 00:16:38
[2026-10-18 00:16:38,714.714 INFO    ] 2026-10-18 00:16:38
[2026-10-18 00:16:38,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:16:38,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:16:38,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:16:39,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:16:39,251.251 INFO    ] time= 18/10/2026 00:16:39
[2026-10-18 00:16:39,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:16:39,275.275 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:16:39,418.418 INFO    ] No existing commands found in stream
[2026-10-18 00:16:44,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:16:44,448.448 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-18 00:16:45,453.453 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:16:45,456.456 INFO    ] Checking for system updates...
[2026-10-18 00:16:45,493.493 INFO    ] 200
[2026-10-18 00:16:45,496.496 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:16:45,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:16:45,552.552 INFO    ] No update needed
[2026-10-18 00:16:45,555.555 INFO    ] Checking for camera pi updates...
[2026-10-18 00:16:45,589.589 INFO    ] 200
[2026-10-18 00:16:45,592.592 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:16:45,633.633 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:16:55,649.649 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:16:55,688.688 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:16:55,699.699 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:16:55,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:16:55,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:16:55,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:16:57,755.755 INFO    ] ================================================
[2026-10-18 00:16:57,772.772 INFO    ] Launching Daemon at Sun Oct 18 00:16:57 IST 2026
[2026-10-18 00:16:57,783.783 INFO    ] ================================================
[2026-10-18 00:16:58,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:16:58
[2026-10-18 00:16:59,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:16:59,433.433 INFO    ] Initializing speech engine...
[2026-10-18 00:16:59,442.442 INFO    ] 2026-10-18 00:16:59
[2026-10-18 00:16:59,734.734 INFO    ] 2026-10-18 00:16:59
[2026-10-18 00:16:59,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:16:59,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:16:59,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:17:00,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:17:00,144.144 INFO    ] time= 18/10/2026 00:17:00
[2026-10-18 00:17:00,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:17:00,194.194 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:17:00,324.324 INFO    ] No existing commands found in stream
[2026-10-18 00:17:05,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:17:05,352.352 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-18 00:17:07,161.161 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:17:07,163.163 INFO    ] Checking for system updates...
[2026-10-18 00:17:07,200.200 INFO    ] 200
[2026-10-18 00:17:07,203.203 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:17:07,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:17:07,258.258 INFO    ] No update needed
[2026-10-18 00:17:07,261.261 INFO    ] Checking for camera pi updates...
[2026-10-18 00:17:07,298.298 INFO    ] 200
[2026-10-18 00:17:07,301.301 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:17:07,346.346 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:17:17,363.363 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:17:17,398.398 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:17:17,408.408 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:17:17,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:17:17,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:17:17,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:17:19,460.460 INFO    ] ================================================
[2026-10-18 00:17:19,476.476 INFO    ] Launching Daemon at Sun Oct 18 00:17:19 IST 2026
[2026-10-18 00:17:19,493.493 INFO    ] ================================================
[2026-10-18 00:17:20,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:17:20
[2026-10-18 00:17:20,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:17:21,082.082 INFO    ] Initializing speech engine...
[2026-10-18 00:17:21,091.091 INFO    ] 2026-10-18 00:17:21
[2026-10-18 00:17:21,408.408 INFO    ] 2026-10-18 00:17:21
[2026-10-18 00:17:21,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:17:21,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:17:21,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:17:21,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:17:21,926.926 INFO    ] time= 18/10/2026 00:17:21
[2026-10-18 00:17:21,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:17:21,964.964 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:17:22,088.088 INFO    ] No existing commands found in stream
[2026-10-18 00:17:27,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:17:27,122.122 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-18 00:17:29,843.843 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:17:29,846.846 INFO    ] Checking for system updates...
[2026-10-18 00:17:29,886.886 INFO    ] 200
[2026-10-18 00:17:29,889.889 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:17:29,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:17:29,951.951 INFO    ] No update needed
[2026-10-18 00:17:29,953.953 INFO    ] Checking for camera pi updates...
[2026-10-18 00:17:29,988.988 INFO    ] 200
[2026-10-18 00:17:29,991.991 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:17:30,033.033 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:17:40,048.048 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:17:40,088.088 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:17:40,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:17:40,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:17:40,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:17:40,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:17:42,153.153 INFO    ] ================================================
[2026-10-18 00:17:42,168.168 INFO    ] Launching Daemon at Sun Oct 18 00:17:42 IST 2026
[2026-10-18 00:17:42,179.179 INFO    ] ================================================
[2026-10-18 00:17:42,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:17:42
[2026-10-18 00:17:43,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:17:43,631.631 INFO    ] Initializing speech engine...
[2026-10-18 00:17:43,640.640 INFO    ] 2026-10-18 00:17:43
[2026-10-18 00:17:43,889.889 INFO    ] 2026-10-18 00:17:43
[2026-10-18 00:17:43,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:17:44,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:17:44,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:17:44,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:17:44,442.442 INFO    ] time= 18/10/2026 00:17:44
[2026-10-18 00:17:44,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:17:44,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:17:44,616.616 INFO    ] No existing commands found in stream
[2026-10-18 00:17:49,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:17:49,649.649 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-18 00:17:50,889.889 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:17:50,892.892 INFO    ] Checking for system updates...
[2026-10-18 00:17:50,928.928 INFO    ] 200
[2026-10-18 00:17:50,930.930 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:17:50,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:17:50,990.990 INFO    ] No update needed
[2026-10-18 00:17:50,992.992 INFO    ] Checking for camera pi updates...
[2026-10-18 00:17:51,029.029 INFO    ] 200
[2026-10-18 00:17:51,032.032 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:17:51,076.076 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:18:01,092.092 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:18:01,131.131 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:18:01,142.142 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:18:01,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:18:01,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:18:01,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:18:03,198.198 INFO    ] ================================================
[2026-10-18 00:18:03,214.214 INFO    ] Launching Daemon at Sun Oct 18 00:18:03 IST 2026
[2026-10-18 00:18:03,226.226 INFO    ] ================================================
[2026-10-18 00:18:03,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:18:03
[2026-10-18 00:18:04,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:18:04,649.649 INFO    ] Initializing speech engine...
[2026-10-18 00:18:04,663.663 INFO    ] 2026-10-18 00:18:04
[2026-10-18 00:18:04,928.928 INFO    ] 2026-10-18 00:18:04
[2026-10-18 00:18:04,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:18:05,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:18:05,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:18:05,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:18:05,481.481 INFO    ] time= 18/10/2026 00:18:05
[2026-10-18 00:18:05,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:18:05,516.516 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:18:05,663.663 INFO    ] No existing commands found in stream
[2026-10-18 00:18:10,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:18:10,691.691 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-18 00:18:12,563.563 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:18:12,566.566 INFO    ] Checking for system updates...
[2026-10-18 00:18:12,602.602 INFO    ] 200
[2026-10-18 00:18:12,604.604 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:18:12,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:18:12,659.659 INFO    ] No update needed
[2026-10-18 00:18:12,661.661 INFO    ] Checking for camera pi updates...
[2026-10-18 00:18:12,695.695 INFO    ] 200
[2026-10-18 00:18:12,698.698 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:18:12,739.739 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:18:22,754.754 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:18:22,788.788 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:18:22,798.798 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:18:22,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:18:22,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:18:22,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:18:24,851.851 INFO    ] ================================================
[2026-10-18 00:18:24,866.866 INFO    ] Launching Daemon at Sun Oct 18 00:18:24 IST 2026
[2026-10-18 00:18:24,877.877 INFO    ] ================================================
[2026-10-18 00:18:25,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:18:25
[2026-10-18 00:18:26,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:18:26,436.436 INFO    ] Initializing speech engine...
[2026-10-18 00:18:26,441.441 INFO    ] 2026-10-18 00:18:26
[2026-10-18 00:18:26,723.723 INFO    ] 2026-10-18 00:18:26
[2026-10-18 00:18:26,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:18:26,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:18:26,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:18:27,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:18:27,197.197 INFO    ] time= 18/10/2026 00:18:27
[2026-10-18 00:18:27,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:18:27,261.261 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:18:27,401.401 INFO    ] No existing commands found in stream
[2026-10-18 00:18:32,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:18:32,421.421 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-18 00:18:37,539.539 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:18:37,542.542 INFO    ] Checking for system updates...
[2026-10-18 00:18:37,580.580 INFO    ] 200
[2026-10-18 00:18:37,583.583 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:18:37,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:18:37,638.638 INFO    ] No update needed
[2026-10-18 00:18:37,640.640 INFO    ] Checking for camera pi updates...
[2026-10-18 00:18:37,680.680 INFO    ] 200
[2026-10-18 00:18:37,683.683 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:18:37,723.723 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:18:47,739.739 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:18:47,777.777 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:18:47,788.788 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:18:47,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:18:47,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:18:47,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:18:49,843.843 INFO    ] ================================================
[2026-10-18 00:18:49,858.858 INFO    ] Launching Daemon at Sun Oct 18 00:18:49 IST 2026
[2026-10-18 00:18:49,869.869 INFO    ] ================================================
[2026-10-18 00:18:50,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:18:50
[2026-10-18 00:18:51,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:18:51,457.457 INFO    ] Initializing speech engine...
[2026-10-18 00:18:51,471.471 INFO    ] 2026-10-18 00:18:51
[2026-10-18 00:18:51,756.756 INFO    ] 2026-10-18 00:18:51
[2026-10-18 00:18:51,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:18:52,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:18:52,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:18:52,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:18:52,284.284 INFO    ] time= 18/10/2026 00:18:52
[2026-10-18 00:18:52,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:18:52,335.335 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:18:52,449.449 INFO    ] No existing commands found in stream
[2026-10-18 00:18:57,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:18:57,482.482 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-18 00:19:00,886.886 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:19:00,889.889 INFO    ] Checking for system updates...
[2026-10-18 00:19:00,927.927 INFO    ] 200
[2026-10-18 00:19:00,929.929 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:19:00,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:19:00,989.989 INFO    ] No update needed
[2026-10-18 00:19:00,992.992 INFO    ] Checking for camera pi updates...
[2026-10-18 00:19:01,031.031 INFO    ] 200
[2026-10-18 00:19:01,034.034 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:19:01,074.074 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:19:11,088.088 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:19:11,127.127 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:19:11,138.138 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:19:11,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:19:11,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:19:11,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:19:13,198.198 INFO    ] ================================================
[2026-10-18 00:19:13,213.213 INFO    ] Launching Daemon at Sun Oct 18 00:19:13 IST 2026
[2026-10-18 00:19:13,224.224 INFO    ] ================================================
[2026-10-18 00:19:13,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:19:13
[2026-10-18 00:19:14,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:19:14,649.649 INFO    ] Initializing speech engine...
[2026-10-18 00:19:14,653.653 INFO    ] 2026-10-18 00:19:14
[2026-10-18 00:19:14,905.905 INFO    ] 2026-10-18 00:19:14
[2026-10-18 00:19:14,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:19:15,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:19:15,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:19:15,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:19:15,441.441 INFO    ] time= 18/10/2026 00:19:15
[2026-10-18 00:19:15,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:19:15,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:19:15,607.607 INFO    ] No existing commands found in stream
[2026-10-18 00:19:20,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:19:20,624.624 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-18 00:19:25,026.026 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:19:25,028.028 INFO    ] Checking for system updates...
[2026-10-18 00:19:25,064.064 INFO    ] 200
[2026-10-18 00:19:25,067.067 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:19:25,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:19:25,123.123 INFO    ] No update needed
[2026-10-18 00:19:25,125.125 INFO    ] Checking for camera pi updates...
[2026-10-18 00:19:25,158.158 INFO    ] 200
[2026-10-18 00:19:25,160.160 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:19:25,201.201 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:19:35,213.213 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:19:35,247.247 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:19:35,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:19:35,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:19:35,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:19:35,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:19:37,309.309 INFO    ] ================================================
[2026-10-18 00:19:37,325.325 INFO    ] Launching Daemon at Sun Oct 18 00:19:37 IST 2026
[2026-10-18 00:19:37,335.335 INFO    ] ================================================
[2026-10-18 00:19:37,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:19:37
[2026-10-18 00:19:38,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:19:38,836.836 INFO    ] Initializing speech engine...
[2026-10-18 00:19:38,843.843 INFO    ] 2026-10-18 00:19:38
[2026-10-18 00:19:39,086.086 INFO    ] 2026-10-18 00:19:39
[2026-10-18 00:19:39,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:19:39,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:19:39,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:19:39,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:19:39,639.639 INFO    ] time= 18/10/2026 00:19:39
[2026-10-18 00:19:39,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:19:39,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:19:39,796.796 INFO    ] No existing commands found in stream
[2026-10-18 00:19:44,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:19:44,821.821 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-18 00:19:49,164.164 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:19:49,167.167 INFO    ] Checking for system updates...
[2026-10-18 00:19:49,206.206 INFO    ] 200
[2026-10-18 00:19:49,208.208 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:19:49,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:19:49,268.268 INFO    ] No update needed
[2026-10-18 00:19:49,270.270 INFO    ] Checking for camera pi updates...
[2026-10-18 00:19:49,306.306 INFO    ] 200
[2026-10-18 00:19:49,309.309 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:19:49,350.350 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:19:59,365.365 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:19:59,400.400 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:19:59,409.409 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:19:59,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:19:59,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:19:59,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:20:01,461.461 INFO    ] ================================================
[2026-10-18 00:20:01,476.476 INFO    ] Launching Daemon at Sun Oct 18 00:20:01 IST 2026
[2026-10-18 00:20:01,493.493 INFO    ] ================================================
[2026-10-18 00:20:02,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:20:02
[2026-10-18 00:20:03,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:20:03,735.735 INFO    ] Initializing speech engine...
[2026-10-18 00:20:03,751.751 INFO    ] 2026-10-18 00:20:03
[2026-10-18 00:20:04,041.041 INFO    ] 2026-10-18 00:20:04
[2026-10-18 00:20:04,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:20:04,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:20:04,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:20:04,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:20:04,609.609 INFO    ] time= 18/10/2026 00:20:04
[2026-10-18 00:20:04,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:20:04,635.635 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:20:04,765.765 INFO    ] No existing commands found in stream
[2026-10-18 00:20:09,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:20:09,790.790 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-18 00:20:11,918.918 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:20:11,920.920 INFO    ] Checking for system updates...
[2026-10-18 00:20:11,957.957 INFO    ] 200
[2026-10-18 00:20:11,960.960 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:20:12,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:20:12,028.028 INFO    ] No update needed
[2026-10-18 00:20:12,031.031 INFO    ] Checking for camera pi updates...
[2026-10-18 00:20:12,065.065 INFO    ] 200
[2026-10-18 00:20:12,068.068 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:20:12,108.108 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:20:22,123.123 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:20:22,159.159 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:20:22,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:20:22,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:20:22,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:20:22,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:20:24,222.222 INFO    ] ================================================
[2026-10-18 00:20:24,238.238 INFO    ] Launching Daemon at Sun Oct 18 00:20:24 IST 2026
[2026-10-18 00:20:24,249.249 INFO    ] ================================================
[2026-10-18 00:20:24,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:20:24
[2026-10-18 00:20:25,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:20:25,712.712 INFO    ] Initializing speech engine...
[2026-10-18 00:20:25,721.721 INFO    ] 2026-10-18 00:20:25
[2026-10-18 00:20:25,971.971 INFO    ] 2026-10-18 00:20:25
[2026-10-18 00:20:26,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:20:26,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:20:26,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:20:26,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:20:26,528.528 INFO    ] time= 18/10/2026 00:20:26
[2026-10-18 00:20:26,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:20:26,552.552 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:20:26,684.684 INFO    ] No existing commands found in stream
[2026-10-18 00:20:31,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:20:31,702.702 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-18 00:20:34,237.237 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:20:34,240.240 INFO    ] Checking for system updates...
[2026-10-18 00:20:34,276.276 INFO    ] 200
[2026-10-18 00:20:34,279.279 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:20:34,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:20:34,337.337 INFO    ] No update needed
[2026-10-18 00:20:34,339.339 INFO    ] Checking for camera pi updates...
[2026-10-18 00:20:34,377.377 INFO    ] 200
[2026-10-18 00:20:34,380.380 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:20:34,421.421 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:20:44,436.436 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:20:44,472.472 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:20:44,482.482 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:20:44,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:20:44,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:20:44,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:20:46,535.535 INFO    ] ================================================
[2026-10-18 00:20:46,551.551 INFO    ] Launching Daemon at Sun Oct 18 00:20:46 IST 2026
[2026-10-18 00:20:46,562.562 INFO    ] ================================================
[2026-10-18 00:20:47,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:20:47
[2026-10-18 00:20:47,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:20:48,032.032 INFO    ] Initializing speech engine...
[2026-10-18 00:20:48,048.048 INFO    ] 2026-10-18 00:20:48
[2026-10-18 00:20:48,319.319 INFO    ] 2026-10-18 00:20:48
[2026-10-18 00:20:48,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:20:48,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:20:48,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:20:48,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:20:48,886.886 INFO    ] time= 18/10/2026 00:20:48
[2026-10-18 00:20:48,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:20:48,956.956 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:20:49,088.088 INFO    ] No existing commands found in stream
[2026-10-18 00:20:54,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:20:54,109.109 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-18 00:20:57,233.233 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:20:57,236.236 INFO    ] Checking for system updates...
[2026-10-18 00:20:57,275.275 INFO    ] 200
[2026-10-18 00:20:57,278.278 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:20:57,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:20:57,338.338 INFO    ] No update needed
[2026-10-18 00:20:57,341.341 INFO    ] Checking for camera pi updates...
[2026-10-18 00:20:57,377.377 INFO    ] 200
[2026-10-18 00:20:57,380.380 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:20:57,420.420 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:21:07,436.436 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:21:07,472.472 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:21:07,481.481 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:21:07,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:21:07,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:21:07,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:21:09,534.534 INFO    ] ================================================
[2026-10-18 00:21:09,549.549 INFO    ] Launching Daemon at Sun Oct 18 00:21:09 IST 2026
[2026-10-18 00:21:09,560.560 INFO    ] ================================================
[2026-10-18 00:21:10,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:21:10
[2026-10-18 00:21:10,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:21:11,012.012 INFO    ] Initializing speech engine...
[2026-10-18 00:21:11,018.018 INFO    ] 2026-10-18 00:21:11
[2026-10-18 00:21:11,278.278 INFO    ] 2026-10-18 00:21:11
[2026-10-18 00:21:11,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:21:11,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:21:11,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:21:11,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:21:11,763.763 INFO    ] time= 18/10/2026 00:21:11
[2026-10-18 00:21:11,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:21:11,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:21:11,977.977 INFO    ] No existing commands found in stream
[2026-10-18 00:21:16,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:21:16,995.995 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-18 00:21:19,507.507 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:21:19,509.509 INFO    ] Checking for system updates...
[2026-10-18 00:21:19,545.545 INFO    ] 200
[2026-10-18 00:21:19,548.548 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:21:19,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:21:19,603.603 INFO    ] No update needed
[2026-10-18 00:21:19,605.605 INFO    ] Checking for camera pi updates...
[2026-10-18 00:21:19,641.641 INFO    ] 200
[2026-10-18 00:21:19,644.644 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:21:19,690.690 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:21:29,706.706 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:21:29,745.745 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:21:29,756.756 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:21:29,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:21:29,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:21:29,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:21:31,813.813 INFO    ] ================================================
[2026-10-18 00:21:31,834.834 INFO    ] Launching Daemon at Sun Oct 18 00:21:31 IST 2026
[2026-10-18 00:21:31,851.851 INFO    ] ================================================
[2026-10-18 00:21:32,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:21:32
[2026-10-18 00:21:33,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:21:33,378.378 INFO    ] Initializing speech engine...
[2026-10-18 00:21:33,386.386 INFO    ] 2026-10-18 00:21:33
[2026-10-18 00:21:33,649.649 INFO    ] 2026-10-18 00:21:33
[2026-10-18 00:21:33,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:21:33,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:21:33,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:21:34,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:21:34,147.147 INFO    ] time= 18/10/2026 00:21:34
[2026-10-18 00:21:34,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:21:34,218.218 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:21:34,358.358 INFO    ] No existing commands found in stream
[2026-10-18 00:21:39,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:21:39,377.377 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-18 00:21:41,696.696 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:21:41,698.698 INFO    ] Checking for system updates...
[2026-10-18 00:21:41,740.740 INFO    ] 200
[2026-10-18 00:21:41,743.743 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:21:41,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:21:41,797.797 INFO    ] No update needed
[2026-10-18 00:21:41,799.799 INFO    ] Checking for camera pi updates...
[2026-10-18 00:21:41,835.835 INFO    ] 200
[2026-10-18 00:21:41,838.838 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:21:41,881.881 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:21:51,894.894 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:21:51,929.929 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:21:51,938.938 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:21:51,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:21:51,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:21:51,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:21:53,991.991 INFO    ] ================================================
[2026-10-18 00:21:54,006.006 INFO    ] Launching Daemon at Sun Oct 18 00:21:54 IST 2026
[2026-10-18 00:21:54,017.017 INFO    ] ================================================
[2026-10-18 00:21:54,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:21:54
[2026-10-18 00:21:55,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:21:55,448.448 INFO    ] Initializing speech engine...
[2026-10-18 00:21:55,457.457 INFO    ] 2026-10-18 00:21:55
[2026-10-18 00:21:55,749.749 INFO    ] 2026-10-18 00:21:55
[2026-10-18 00:21:55,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:21:56,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:21:56,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:21:56,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:21:56,245.245 INFO    ] time= 18/10/2026 00:21:56
[2026-10-18 00:21:56,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:21:56,359.359 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:21:56,440.440 INFO    ] No existing commands found in stream
[2026-10-18 00:22:01,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:22:01,452.452 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-18 00:22:04,634.634 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:22:04,637.637 INFO    ] Checking for system updates...
[2026-10-18 00:22:04,673.673 INFO    ] 200
[2026-10-18 00:22:04,676.676 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 00:22:04,679.679 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-18 00:22:04,681.681 INFO    ] Checking for camera pi updates...
[2026-10-18 00:22:04,716.716 INFO    ] 200
[2026-10-18 00:22:04,719.719 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 00:22:04,722.722 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-18 00:22:04,724.724 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:22:04,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:22:04,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:22:04,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:22:06,777.777 INFO    ] ================================================
[2026-10-18 00:22:06,793.793 INFO    ] Launching Daemon at Sun Oct 18 00:22:06 IST 2026
[2026-10-18 00:22:06,803.803 INFO    ] ================================================
[2026-10-18 00:22:07,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:22:07
[2026-10-18 00:22:07,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:22:08,209.209 INFO    ] Initializing speech engine...
[2026-10-18 00:22:08,232.232 INFO    ] 2026-10-18 00:22:08
[2026-10-18 00:22:08,488.488 INFO    ] 2026-10-18 00:22:08
[2026-10-18 00:22:08,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:22:08,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:22:08,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:22:08,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:22:08,947.947 INFO    ] time= 18/10/2026 00:22:08
[2026-10-18 00:22:09,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:22:09,061.061 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:22:09,197.197 INFO    ] No existing commands found in stream
[2026-10-18 00:22:14,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:22:14,223.223 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-18 00:22:17,770.770 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:22:17,773.773 INFO    ] Checking for system updates...
[2026-10-18 00:22:17,810.810 INFO    ] 200
[2026-10-18 00:22:17,813.813 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:22:17,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:22:17,878.878 INFO    ] No update needed
[2026-10-18 00:22:17,881.881 INFO    ] Checking for camera pi updates...
[2026-10-18 00:22:17,916.916 INFO    ] 200
[2026-10-18 00:22:17,918.918 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:22:17,965.965 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:22:27,982.982 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:22:28,021.021 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:22:28,032.032 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:22:28,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:22:28,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:22:28,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:22:30,089.089 INFO    ] ================================================
[2026-10-18 00:22:30,104.104 INFO    ] Launching Daemon at Sun Oct 18 00:22:30 IST 2026
[2026-10-18 00:22:30,115.115 INFO    ] ================================================
[2026-10-18 00:22:30,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:22:30
[2026-10-18 00:22:31,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:22:31,564.564 INFO    ] Initializing speech engine...
[2026-10-18 00:22:31,580.580 INFO    ] 2026-10-18 00:22:31
[2026-10-18 00:22:31,893.893 INFO    ] 2026-10-18 00:22:31
[2026-10-18 00:22:31,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:22:32,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:22:32,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:22:32,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:22:32,316.316 INFO    ] time= 18/10/2026 00:22:32
[2026-10-18 00:22:32,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:22:32,349.349 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:22:32,465.465 INFO    ] No existing commands found in stream
[2026-10-18 00:22:37,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:22:37,503.503 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-18 00:22:40,170.170 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:22:40,173.173 INFO    ] Checking for system updates...
[2026-10-18 00:22:40,208.208 INFO    ] 200
[2026-10-18 00:22:40,210.210 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:22:40,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:22:40,278.278 INFO    ] No update needed
[2026-10-18 00:22:40,280.280 INFO    ] Checking for camera pi updates...
[2026-10-18 00:22:40,317.317 INFO    ] 200
[2026-10-18 00:22:40,319.319 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:22:40,360.360 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:22:50,375.375 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:22:50,409.409 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:22:50,419.419 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:22:50,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:22:50,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:22:50,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:22:52,471.471 INFO    ] ================================================
[2026-10-18 00:22:52,488.488 INFO    ] Launching Daemon at Sun Oct 18 00:22:52 IST 2026
[2026-10-18 00:22:52,499.499 INFO    ] ================================================
[2026-10-18 00:22:53,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:22:53
[2026-10-18 00:22:53,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:22:53,948.948 INFO    ] Initializing speech engine...
[2026-10-18 00:22:53,973.973 INFO    ] 2026-10-18 00:22:53
[2026-10-18 00:22:54,249.249 INFO    ] 2026-10-18 00:22:54
[2026-10-18 00:22:54,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:22:54,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:22:54,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:22:54,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:22:54,673.673 INFO    ] time= 18/10/2026 00:22:54
[2026-10-18 00:22:54,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:22:54,685.685 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:22:54,759.759 INFO    ] No existing commands found in stream
[2026-10-18 00:22:59,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:22:59,792.792 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-18 00:23:01,661.661 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:23:01,664.664 INFO    ] Checking for system updates...
[2026-10-18 00:23:01,711.711 INFO    ] 200
[2026-10-18 00:23:01,714.714 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:23:01,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:23:01,775.775 INFO    ] No update needed
[2026-10-18 00:23:01,778.778 INFO    ] Checking for camera pi updates...
[2026-10-18 00:23:01,815.815 INFO    ] 200
[2026-10-18 00:23:01,818.818 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:23:01,869.869 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:23:11,885.885 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:23:11,919.919 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:23:11,929.929 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:23:11,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:23:11,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:23:11,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:23:13,981.981 INFO    ] ================================================
[2026-10-18 00:23:14,997.997 INFO    ] Launching Daemon at Sun Oct 18 00:23:13 IST 2026
[2026-10-18 00:23:14,008.008 INFO    ] ================================================
[2026-10-18 00:23:14,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:23:14
[2026-10-18 00:23:15,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:23:15,444.444 INFO    ] Initializing speech engine...
[2026-10-18 00:23:15,456.456 INFO    ] 2026-10-18 00:23:15
[2026-10-18 00:23:15,725.725 INFO    ] 2026-10-18 00:23:15
[2026-10-18 00:23:15,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:23:16,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:23:16,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:23:16,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:23:16,256.256 INFO    ] time= 18/10/2026 00:23:16
[2026-10-18 00:23:16,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:23:16,291.291 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:23:16,416.416 INFO    ] No existing commands found in stream
[2026-10-18 00:23:21,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:23:21,448.448 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-18 00:23:24,669.669 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:23:24,671.671 INFO    ] Checking for system updates...
[2026-10-18 00:23:24,706.706 INFO    ] 200
[2026-10-18 00:23:24,709.709 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:23:24,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:23:24,764.764 INFO    ] No update needed
[2026-10-18 00:23:24,766.766 INFO    ] Checking for camera pi updates...
[2026-10-18 00:23:24,806.806 INFO    ] 200
[2026-10-18 00:23:24,809.809 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:23:24,849.849 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:23:34,863.863 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:23:34,898.898 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:23:34,907.907 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:23:34,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:23:34,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:23:34,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:23:36,960.960 INFO    ] ================================================
[2026-10-18 00:23:36,976.976 INFO    ] Launching Daemon at Sun Oct 18 00:23:36 IST 2026
[2026-10-18 00:23:36,987.987 INFO    ] ================================================
[2026-10-18 00:23:37,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:23:37
[2026-10-18 00:23:38,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:23:38,562.562 INFO    ] Initializing speech engine...
[2026-10-18 00:23:38,570.570 INFO    ] 2026-10-18 00:23:38
[2026-10-18 00:23:38,857.857 INFO    ] 2026-10-18 00:23:38
[2026-10-18 00:23:38,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:23:39,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:23:39,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:23:39,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:23:39,389.389 INFO    ] time= 18/10/2026 00:23:39
[2026-10-18 00:23:39,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:23:39,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:23:39,563.563 INFO    ] No existing commands found in stream
[2026-10-18 00:23:44,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:23:44,597.597 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-18 00:23:48,439.439 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:23:48,442.442 INFO    ] Checking for system updates...
[2026-10-18 00:23:48,478.478 INFO    ] 200
[2026-10-18 00:23:48,480.480 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:23:48,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:23:48,543.543 INFO    ] No update needed
[2026-10-18 00:23:48,545.545 INFO    ] Checking for camera pi updates...
[2026-10-18 00:23:48,578.578 INFO    ] 200
[2026-10-18 00:23:48,580.580 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:23:48,623.623 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:23:58,638.638 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:23:58,673.673 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:23:58,682.682 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:23:58,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:23:58,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:23:58,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:24:00,735.735 INFO    ] ================================================
[2026-10-18 00:24:00,751.751 INFO    ] Launching Daemon at Sun Oct 18 00:24:00 IST 2026
[2026-10-18 00:24:00,762.762 INFO    ] ================================================
[2026-10-18 00:24:01,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:24:01
[2026-10-18 00:24:02,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:24:02,512.512 INFO    ] Initializing speech engine...
[2026-10-18 00:24:02,526.526 INFO    ] 2026-10-18 00:24:02
[2026-10-18 00:24:02,819.819 INFO    ] 2026-10-18 00:24:02
[2026-10-18 00:24:02,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:24:03,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:24:03,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:24:03,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:24:03,354.354 INFO    ] time= 18/10/2026 00:24:03
[2026-10-18 00:24:03,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:24:03,447.447 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:24:03,583.583 INFO    ] No existing commands found in stream
[2026-10-18 00:24:08,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:24:08,616.616 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-18 00:24:10,181.181 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:24:10,184.184 INFO    ] Checking for system updates...
[2026-10-18 00:24:10,222.222 INFO    ] 200
[2026-10-18 00:24:10,225.225 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:24:10,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:24:10,283.283 INFO    ] No update needed
[2026-10-18 00:24:10,286.286 INFO    ] Checking for camera pi updates...
[2026-10-18 00:24:10,319.319 INFO    ] 200
[2026-10-18 00:24:10,321.321 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:24:10,364.364 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:24:20,378.378 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:24:20,413.413 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:24:20,422.422 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:24:20,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:24:20,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:24:20,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:24:22,476.476 INFO    ] ================================================
[2026-10-18 00:24:22,494.494 INFO    ] Launching Daemon at Sun Oct 18 00:24:22 IST 2026
[2026-10-18 00:24:22,521.521 INFO    ] ================================================
[2026-10-18 00:24:23,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:24:23
[2026-10-18 00:24:23,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:24:24,071.071 INFO    ] Initializing speech engine...
[2026-10-18 00:24:24,080.080 INFO    ] 2026-10-18 00:24:24
[2026-10-18 00:24:24,349.349 INFO    ] 2026-10-18 00:24:24
[2026-10-18 00:24:24,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:24:24,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:24:24,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:24:24,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:24:24,909.909 INFO    ] time= 18/10/2026 00:24:24
[2026-10-18 00:24:24,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:24:24,949.949 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:24:25,070.070 INFO    ] No existing commands found in stream
[2026-10-18 00:24:30,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:24:30,099.099 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-18 00:24:32,799.799 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:24:32,802.802 INFO    ] Checking for system updates...
[2026-10-18 00:24:32,837.837 INFO    ] 200
[2026-10-18 00:24:32,840.840 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:24:32,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:24:32,898.898 INFO    ] No update needed
[2026-10-18 00:24:32,901.901 INFO    ] Checking for camera pi updates...
[2026-10-18 00:24:32,934.934 INFO    ] 200
[2026-10-18 00:24:32,936.936 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:24:32,979.979 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:24:42,995.995 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:24:43,030.030 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:24:43,040.040 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:24:43,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:24:43,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:24:43,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:24:45,092.092 INFO    ] ================================================
[2026-10-18 00:24:45,108.108 INFO    ] Launching Daemon at Sun Oct 18 00:24:45 IST 2026
[2026-10-18 00:24:45,119.119 INFO    ] ================================================
[2026-10-18 00:24:45,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:24:45
[2026-10-18 00:24:46,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:24:46,607.607 INFO    ] Initializing speech engine...
[2026-10-18 00:24:46,614.614 INFO    ] 2026-10-18 00:24:46
[2026-10-18 00:24:46,872.872 INFO    ] 2026-10-18 00:24:46
[2026-10-18 00:24:46,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:24:47,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:24:47,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:24:47,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:24:47,407.407 INFO    ] time= 18/10/2026 00:24:47
[2026-10-18 00:24:47,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:24:47,485.485 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:24:47,629.629 INFO    ] No existing commands found in stream
[2026-10-18 00:24:52,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:24:52,657.657 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-18 00:24:55,937.937 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:24:55,940.940 INFO    ] Checking for system updates...
[2026-10-18 00:24:55,978.978 INFO    ] 200
[2026-10-18 00:24:55,980.980 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:24:56,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:24:56,035.035 INFO    ] No update needed
[2026-10-18 00:24:56,038.038 INFO    ] Checking for camera pi updates...
[2026-10-18 00:24:56,074.074 INFO    ] 200
[2026-10-18 00:24:56,076.076 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:24:56,116.116 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:25:06,130.130 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:25:06,165.165 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:25:06,174.174 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:25:06,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:25:06,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:25:06,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:25:08,231.231 INFO    ] ================================================
[2026-10-18 00:25:08,247.247 INFO    ] Launching Daemon at Sun Oct 18 00:25:08 IST 2026
[2026-10-18 00:25:08,258.258 INFO    ] ================================================
[2026-10-18 00:25:08,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:25:08
[2026-10-18 00:25:09,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:25:09,818.818 INFO    ] Initializing speech engine...
[2026-10-18 00:25:09,824.824 INFO    ] 2026-10-18 00:25:09
[2026-10-18 00:25:10,087.087 INFO    ] 2026-10-18 00:25:10
[2026-10-18 00:25:10,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:25:10,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:25:10,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:25:10,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:25:10,644.644 INFO    ] time= 18/10/2026 00:25:10
[2026-10-18 00:25:10,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:25:10,668.668 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:25:10,800.800 INFO    ] No existing commands found in stream
[2026-10-18 00:25:15,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:25:15,818.818 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-18 00:25:17,817.817 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:25:17,819.819 INFO    ] Checking for system updates...
[2026-10-18 00:25:17,855.855 INFO    ] 200
[2026-10-18 00:25:17,858.858 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:25:17,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:25:17,913.913 INFO    ] No update needed
[2026-10-18 00:25:17,915.915 INFO    ] Checking for camera pi updates...
[2026-10-18 00:25:17,949.949 INFO    ] 200
[2026-10-18 00:25:17,952.952 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:25:17,996.996 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:25:28,011.011 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:25:28,046.046 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:25:28,055.055 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:25:28,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:25:28,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:25:28,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:25:30,108.108 INFO    ] ================================================
[2026-10-18 00:25:30,124.124 INFO    ] Launching Daemon at Sun Oct 18 00:25:30 IST 2026
[2026-10-18 00:25:30,135.135 INFO    ] ================================================
[2026-10-18 00:25:30,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:25:30
[2026-10-18 00:25:31,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:25:31,581.581 INFO    ] Initializing speech engine...
[2026-10-18 00:25:31,596.596 INFO    ] 2026-10-18 00:25:31
[2026-10-18 00:25:31,861.861 INFO    ] 2026-10-18 00:25:31
[2026-10-18 00:25:31,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:25:32,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:25:32,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:25:32,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:25:32,429.429 INFO    ] time= 18/10/2026 00:25:32
[2026-10-18 00:25:32,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:25:32,489.489 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:25:32,648.648 INFO    ] No existing commands found in stream
[2026-10-18 00:25:37,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:25:37,682.682 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-18 00:25:39,866.866 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:25:39,869.869 INFO    ] Checking for system updates...
[2026-10-18 00:25:39,910.910 INFO    ] 200
[2026-10-18 00:25:39,913.913 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:25:39,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:25:39,972.972 INFO    ] No update needed
[2026-10-18 00:25:39,975.975 INFO    ] Checking for camera pi updates...
[2026-10-18 00:25:40,009.009 INFO    ] 200
[2026-10-18 00:25:40,011.011 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:25:40,059.059 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:25:50,074.074 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:25:50,109.109 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:25:50,118.118 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:25:50,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:25:50,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:25:50,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:25:52,172.172 INFO    ] ================================================
[2026-10-18 00:25:52,187.187 INFO    ] Launching Daemon at Sun Oct 18 00:25:52 IST 2026
[2026-10-18 00:25:52,199.199 INFO    ] ================================================
[2026-10-18 00:25:52,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:25:52
[2026-10-18 00:25:53,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:25:53,784.784 INFO    ] Initializing speech engine...
[2026-10-18 00:25:53,793.793 INFO    ] 2026-10-18 00:25:53
[2026-10-18 00:25:54,063.063 INFO    ] 2026-10-18 00:25:54
[2026-10-18 00:25:54,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:25:54,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:25:54,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:25:54,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:25:54,622.622 INFO    ] time= 18/10/2026 00:25:54
[2026-10-18 00:25:54,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:25:54,650.650 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:25:54,784.784 INFO    ] No existing commands found in stream
[2026-10-18 00:25:59,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:25:59,816.816 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-18 00:26:02,685.685 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:26:02,689.689 INFO    ] Checking for system updates...
[2026-10-18 00:26:02,737.737 INFO    ] 200
[2026-10-18 00:26:02,739.739 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:26:02,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:26:02,815.815 INFO    ] No update needed
[2026-10-18 00:26:02,818.818 INFO    ] Checking for camera pi updates...
[2026-10-18 00:26:02,859.859 INFO    ] 200
[2026-10-18 00:26:02,862.862 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:26:02,910.910 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:26:12,924.924 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:26:12,960.960 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:26:12,970.970 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:26:12,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:26:12,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:26:12,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:26:15,022.022 INFO    ] ================================================
[2026-10-18 00:26:15,036.036 INFO    ] Launching Daemon at Sun Oct 18 00:26:15 IST 2026
[2026-10-18 00:26:15,047.047 INFO    ] ================================================
[2026-10-18 00:26:15,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:26:15
[2026-10-18 00:26:16,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:26:16,596.596 INFO    ] Initializing speech engine...
[2026-10-18 00:26:16,605.605 INFO    ] 2026-10-18 00:26:16
[2026-10-18 00:26:16,884.884 INFO    ] 2026-10-18 00:26:16
[2026-10-18 00:26:16,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:26:17,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:26:17,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:26:17,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:26:17,433.433 INFO    ] time= 18/10/2026 00:26:17
[2026-10-18 00:26:17,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:26:17,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:26:17,595.595 INFO    ] No existing commands found in stream
[2026-10-18 00:26:22,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:26:22,629.629 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-18 00:26:23,868.868 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:26:23,870.870 INFO    ] Checking for system updates...
[2026-10-18 00:26:23,907.907 INFO    ] 200
[2026-10-18 00:26:23,910.910 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:26:23,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:26:23,969.969 INFO    ] No update needed
[2026-10-18 00:26:23,971.971 INFO    ] Checking for camera pi updates...
[2026-10-18 00:26:24,004.004 INFO    ] 200
[2026-10-18 00:26:24,008.008 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:26:24,049.049 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:26:34,064.064 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:26:34,099.099 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:26:34,109.109 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:26:34,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:26:34,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:26:34,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:26:36,161.161 INFO    ] ================================================
[2026-10-18 00:26:36,177.177 INFO    ] Launching Daemon at Sun Oct 18 00:26:36 IST 2026
[2026-10-18 00:26:36,188.188 INFO    ] ================================================
[2026-10-18 00:26:36,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:26:36
[2026-10-18 00:26:37,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:26:37,811.811 INFO    ] Initializing speech engine...
[2026-10-18 00:26:37,819.819 INFO    ] 2026-10-18 00:26:37
[2026-10-18 00:26:38,086.086 INFO    ] 2026-10-18 00:26:38
[2026-10-18 00:26:38,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:26:38,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:26:38,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:26:38,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:26:38,634.634 INFO    ] time= 18/10/2026 00:26:38
[2026-10-18 00:26:38,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:26:38,668.668 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:26:38,811.811 INFO    ] No existing commands found in stream
[2026-10-18 00:26:43,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:26:43,953.953 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-18 00:26:45,680.680 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:26:45,682.682 INFO    ] Checking for system updates...
[2026-10-18 00:26:45,721.721 INFO    ] 200
[2026-10-18 00:26:45,723.723 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:26:45,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:26:45,787.787 INFO    ] No update needed
[2026-10-18 00:26:45,790.790 INFO    ] Checking for camera pi updates...
[2026-10-18 00:26:45,827.827 INFO    ] 200
[2026-10-18 00:26:45,830.830 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:26:45,883.883 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:26:55,897.897 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:26:55,932.932 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:26:55,942.942 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:26:55,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:26:55,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:26:55,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:26:57,994.994 INFO    ] ================================================
[2026-10-18 00:26:58,009.009 INFO    ] Launching Daemon at Sun Oct 18 00:26:58 IST 2026
[2026-10-18 00:26:58,020.020 INFO    ] ================================================
[2026-10-18 00:26:58,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:26:58
[2026-10-18 00:26:59,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:26:59,453.453 INFO    ] Initializing speech engine...
[2026-10-18 00:26:59,459.459 INFO    ] 2026-10-18 00:26:59
[2026-10-18 00:26:59,704.704 INFO    ] 2026-10-18 00:26:59
[2026-10-18 00:26:59,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:26:59,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:26:59,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:27:00,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:27:00,259.259 INFO    ] time= 18/10/2026 00:27:00
[2026-10-18 00:27:00,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:27:00,281.281 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:27:00,408.408 INFO    ] No existing commands found in stream
[2026-10-18 00:27:05,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:27:05,428.428 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-18 00:27:07,531.531 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:27:07,534.534 INFO    ] Checking for system updates...
[2026-10-18 00:27:07,569.569 INFO    ] 200
[2026-10-18 00:27:07,571.571 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:27:07,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:27:07,630.630 INFO    ] No update needed
[2026-10-18 00:27:07,632.632 INFO    ] Checking for camera pi updates...
[2026-10-18 00:27:07,666.666 INFO    ] 200
[2026-10-18 00:27:07,668.668 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:27:07,715.715 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:27:17,731.731 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:27:17,766.766 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:27:17,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:27:17,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:27:17,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:27:17,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:27:19,828.828 INFO    ] ================================================
[2026-10-18 00:27:19,844.844 INFO    ] Launching Daemon at Sun Oct 18 00:27:19 IST 2026
[2026-10-18 00:27:19,854.854 INFO    ] ================================================
[2026-10-18 00:27:20,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:27:20
[2026-10-18 00:27:21,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:27:21,278.278 INFO    ] Initializing speech engine...
[2026-10-18 00:27:21,286.286 INFO    ] 2026-10-18 00:27:21
[2026-10-18 00:27:21,544.544 INFO    ] 2026-10-18 00:27:21
[2026-10-18 00:27:21,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:27:21,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:27:21,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:27:21,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:27:22,023.023 INFO    ] time= 18/10/2026 00:27:21
[2026-10-18 00:27:22,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:27:22,096.096 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:27:22,245.245 INFO    ] No existing commands found in stream
[2026-10-18 00:27:27,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:27:27,270.270 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-18 00:27:31,440.440 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:27:31,443.443 INFO    ] Checking for system updates...
[2026-10-18 00:27:31,482.482 INFO    ] 200
[2026-10-18 00:27:31,484.484 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:27:31,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:27:31,544.544 INFO    ] No update needed
[2026-10-18 00:27:31,547.547 INFO    ] Checking for camera pi updates...
[2026-10-18 00:27:31,583.583 INFO    ] 200
[2026-10-18 00:27:31,586.586 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:27:31,634.634 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:27:41,648.648 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:27:41,683.683 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:27:41,693.693 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:27:41,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:27:41,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:27:41,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:27:43,746.746 INFO    ] ================================================
[2026-10-18 00:27:43,761.761 INFO    ] Launching Daemon at Sun Oct 18 00:27:43 IST 2026
[2026-10-18 00:27:43,772.772 INFO    ] ================================================
[2026-10-18 00:27:44,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:27:44
[2026-10-18 00:27:44,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:27:45,228.228 INFO    ] Initializing speech engine...
[2026-10-18 00:27:45,237.237 INFO    ] 2026-10-18 00:27:45
[2026-10-18 00:27:45,495.495 INFO    ] 2026-10-18 00:27:45
[2026-10-18 00:27:45,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:27:45,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:27:45,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:27:46,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:27:46,043.043 INFO    ] time= 18/10/2026 00:27:46
[2026-10-18 00:27:46,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:27:46,079.079 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:27:46,265.265 INFO    ] No existing commands found in stream
[2026-10-18 00:27:51,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:27:51,305.305 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-18 00:27:54,555.555 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:27:54,558.558 INFO    ] Checking for system updates...
[2026-10-18 00:27:54,594.594 INFO    ] 200
[2026-10-18 00:27:54,597.597 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:27:54,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:27:54,658.658 INFO    ] No update needed
[2026-10-18 00:27:54,661.661 INFO    ] Checking for camera pi updates...
[2026-10-18 00:27:54,695.695 INFO    ] 200
[2026-10-18 00:27:54,698.698 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:27:54,741.741 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:28:04,757.757 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:28:04,796.796 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:28:04,807.807 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:28:04,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:28:04,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:28:04,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:28:06,862.862 INFO    ] ================================================
[2026-10-18 00:28:06,878.878 INFO    ] Launching Daemon at Sun Oct 18 00:28:06 IST 2026
[2026-10-18 00:28:06,888.888 INFO    ] ================================================
[2026-10-18 00:28:07,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:28:07
[2026-10-18 00:28:08,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:28:08,467.467 INFO    ] Initializing speech engine...
[2026-10-18 00:28:08,476.476 INFO    ] 2026-10-18 00:28:08
[2026-10-18 00:28:08,759.759 INFO    ] 2026-10-18 00:28:08
[2026-10-18 00:28:08,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:28:09,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:28:09,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:28:09,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:28:09,308.308 INFO    ] time= 18/10/2026 00:28:09
[2026-10-18 00:28:09,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:28:09,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:28:09,501.501 INFO    ] No existing commands found in stream
[2026-10-18 00:28:14,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:28:14,531.531 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-18 00:28:18,098.098 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:28:18,101.101 INFO    ] Checking for system updates...
[2026-10-18 00:28:18,138.138 INFO    ] 200
[2026-10-18 00:28:18,141.141 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:28:18,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:28:18,195.195 INFO    ] No update needed
[2026-10-18 00:28:18,197.197 INFO    ] Checking for camera pi updates...
[2026-10-18 00:28:18,235.235 INFO    ] 200
[2026-10-18 00:28:18,237.237 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:28:18,281.281 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:28:28,297.297 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:28:28,332.332 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:28:28,342.342 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:28:28,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:28:28,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:28:28,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:28:30,395.395 INFO    ] ================================================
[2026-10-18 00:28:30,410.410 INFO    ] Launching Daemon at Sun Oct 18 00:28:30 IST 2026
[2026-10-18 00:28:30,421.421 INFO    ] ================================================
[2026-10-18 00:28:30,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:28:30
[2026-10-18 00:28:31,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:28:31,882.882 INFO    ] Initializing speech engine...
[2026-10-18 00:28:31,889.889 INFO    ] 2026-10-18 00:28:31
[2026-10-18 00:28:32,165.165 INFO    ] 2026-10-18 00:28:32
[2026-10-18 00:28:32,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:28:32,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:28:32,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:28:32,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:28:32,749.749 INFO    ] time= 18/10/2026 00:28:32
[2026-10-18 00:28:32,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:28:32,829.829 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:28:32,970.970 INFO    ] No existing commands found in stream
[2026-10-18 00:28:38,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:28:38,003.003 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-18 00:28:40,888.888 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:28:40,891.891 INFO    ] Checking for system updates...
[2026-10-18 00:28:40,926.926 INFO    ] 200
[2026-10-18 00:28:40,929.929 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:28:40,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:28:40,983.983 INFO    ] No update needed
[2026-10-18 00:28:40,985.985 INFO    ] Checking for camera pi updates...
[2026-10-18 00:28:41,018.018 INFO    ] 200
[2026-10-18 00:28:41,021.021 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:28:41,061.061 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:28:51,076.076 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:28:51,110.110 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:28:51,120.120 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:28:51,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:28:51,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:28:51,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:28:53,174.174 INFO    ] ================================================
[2026-10-18 00:28:53,189.189 INFO    ] Launching Daemon at Sun Oct 18 00:28:53 IST 2026
[2026-10-18 00:28:53,200.200 INFO    ] ================================================
[2026-10-18 00:28:53,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:28:53
[2026-10-18 00:28:54,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:28:54,670.670 INFO    ] Initializing speech engine...
[2026-10-18 00:28:54,678.678 INFO    ] 2026-10-18 00:28:54
[2026-10-18 00:28:54,935.935 INFO    ] 2026-10-18 00:28:54
[2026-10-18 00:28:54,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:28:55,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:28:55,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:28:55,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:28:55,464.464 INFO    ] time= 18/10/2026 00:28:55
[2026-10-18 00:28:55,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:28:55,502.502 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:28:55,641.641 INFO    ] No existing commands found in stream
[2026-10-18 00:29:00,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:29:00,660.660 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-18 00:29:03,549.549 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:29:03,552.552 INFO    ] Checking for system updates...
[2026-10-18 00:29:03,588.588 INFO    ] 200
[2026-10-18 00:29:03,590.590 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:29:03,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:29:03,646.646 INFO    ] No update needed
[2026-10-18 00:29:03,649.649 INFO    ] Checking for camera pi updates...
[2026-10-18 00:29:03,683.683 INFO    ] 200
[2026-10-18 00:29:03,686.686 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:29:03,731.731 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:29:13,753.753 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:29:13,792.792 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:29:13,803.803 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:29:13,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:29:13,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:29:13,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:29:15,858.858 INFO    ] ================================================
[2026-10-18 00:29:15,873.873 INFO    ] Launching Daemon at Sun Oct 18 00:29:15 IST 2026
[2026-10-18 00:29:15,885.885 INFO    ] ================================================
[2026-10-18 00:29:16,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:29:16
[2026-10-18 00:29:17,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:29:17,306.306 INFO    ] Initializing speech engine...
[2026-10-18 00:29:17,315.315 INFO    ] 2026-10-18 00:29:17
[2026-10-18 00:29:17,564.564 INFO    ] 2026-10-18 00:29:17
[2026-10-18 00:29:17,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:29:17,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:29:17,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:29:18,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:29:18,036.036 INFO    ] time= 18/10/2026 00:29:18
[2026-10-18 00:29:18,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:29:18,142.142 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:29:18,261.261 INFO    ] No existing commands found in stream
[2026-10-18 00:29:23,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:29:23,291.291 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-18 00:29:28,692.692 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:29:28,695.695 INFO    ] Checking for system updates...
[2026-10-18 00:29:28,734.734 INFO    ] 200
[2026-10-18 00:29:28,736.736 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:29:28,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:29:28,792.792 INFO    ] No update needed
[2026-10-18 00:29:28,794.794 INFO    ] Checking for camera pi updates...
[2026-10-18 00:29:28,828.828 INFO    ] 200
[2026-10-18 00:29:28,831.831 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:29:28,871.871 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:29:38,887.887 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:29:38,921.921 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:29:38,930.930 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:29:38,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:29:38,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:29:38,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:29:40,983.983 INFO    ] ================================================
[2026-10-18 00:29:41,999.999 INFO    ] Launching Daemon at Sun Oct 18 00:29:40 IST 2026
[2026-10-18 00:29:41,011.011 INFO    ] ================================================
[2026-10-18 00:29:41,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:29:41
[2026-10-18 00:29:42,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:29:42,609.609 INFO    ] Initializing speech engine...
[2026-10-18 00:29:42,622.622 INFO    ] 2026-10-18 00:29:42
[2026-10-18 00:29:42,930.930 INFO    ] 2026-10-18 00:29:42
[2026-10-18 00:29:43,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:29:43,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:29:43,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:29:43,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:29:43,416.416 INFO    ] time= 18/10/2026 00:29:43
[2026-10-18 00:29:43,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:29:43,455.455 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:29:43,590.590 INFO    ] No existing commands found in stream
[2026-10-18 00:29:48,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:29:48,611.611 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-18 00:29:49,986.986 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:29:49,989.989 INFO    ] Checking for system updates...
[2026-10-18 00:29:50,025.025 INFO    ] 200
[2026-10-18 00:29:50,028.028 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:29:50,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:29:50,085.085 INFO    ] No update needed
[2026-10-18 00:29:50,088.088 INFO    ] Checking for camera pi updates...
[2026-10-18 00:29:50,123.123 INFO    ] 200
[2026-10-18 00:29:50,126.126 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:29:50,168.168 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:30:00,184.184 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:30:00,223.223 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:30:00,234.234 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:30:00,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:30:00,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:30:00,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:30:02,301.301 INFO    ] ================================================
[2026-10-18 00:30:02,328.328 INFO    ] Launching Daemon at Sun Oct 18 00:30:02 IST 2026
[2026-10-18 00:30:02,345.345 INFO    ] ================================================
[2026-10-18 00:30:03,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:30:03
[2026-10-18 00:30:03,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:30:03,967.967 INFO    ] Initializing speech engine...
[2026-10-18 00:30:03,970.970 INFO    ] 2026-10-18 00:30:03
[2026-10-18 00:30:04,293.293 INFO    ] 2026-10-18 00:30:04
[2026-10-18 00:30:04,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:30:04,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:30:04,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:30:04,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:30:04,726.726 INFO    ] time= 18/10/2026 00:30:04
[2026-10-18 00:30:04,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:30:04,739.739 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:30:04,867.867 INFO    ] No existing commands found in stream
[2026-10-18 00:30:09,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:30:09,910.910 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-18 00:30:12,114.114 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:30:12,118.118 INFO    ] Checking for system updates...
[2026-10-18 00:30:12,153.153 INFO    ] 200
[2026-10-18 00:30:12,155.155 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:30:12,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:30:12,218.218 INFO    ] No update needed
[2026-10-18 00:30:12,220.220 INFO    ] Checking for camera pi updates...
[2026-10-18 00:30:12,258.258 INFO    ] 200
[2026-10-18 00:30:12,261.261 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:30:12,301.301 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:30:22,317.317 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:30:22,351.351 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:30:22,361.361 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:30:22,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:30:22,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:30:22,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:30:24,414.414 INFO    ] ================================================
[2026-10-18 00:30:24,429.429 INFO    ] Launching Daemon at Sun Oct 18 00:30:24 IST 2026
[2026-10-18 00:30:24,441.441 INFO    ] ================================================
[2026-10-18 00:30:25,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:30:25
[2026-10-18 00:30:25,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:30:25,904.904 INFO    ] Initializing speech engine...
[2026-10-18 00:30:25,913.913 INFO    ] 2026-10-18 00:30:25
[2026-10-18 00:30:26,172.172 INFO    ] 2026-10-18 00:30:26
[2026-10-18 00:30:26,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:30:26,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:30:26,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:30:26,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:30:26,704.704 INFO    ] time= 18/10/2026 00:30:26
[2026-10-18 00:30:26,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:30:26,739.739 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:30:26,875.875 INFO    ] No existing commands found in stream
[2026-10-18 00:30:31,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:30:31,900.900 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-18 00:30:35,170.170 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:30:35,172.172 INFO    ] Checking for system updates...
[2026-10-18 00:30:35,209.209 INFO    ] 200
[2026-10-18 00:30:35,212.212 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:30:35,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:30:35,268.268 INFO    ] No update needed
[2026-10-18 00:30:35,271.271 INFO    ] Checking for camera pi updates...
[2026-10-18 00:30:35,305.305 INFO    ] 200
[2026-10-18 00:30:35,308.308 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:30:35,349.349 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:30:45,364.364 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:30:45,400.400 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:30:45,410.410 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:30:45,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:30:45,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:30:45,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:30:47,463.463 INFO    ] ================================================
[2026-10-18 00:30:47,479.479 INFO    ] Launching Daemon at Sun Oct 18 00:30:47 IST 2026
[2026-10-18 00:30:47,490.490 INFO    ] ================================================
[2026-10-18 00:30:48,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:30:48
[2026-10-18 00:30:48,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:30:48,912.912 INFO    ] Initializing speech engine...
[2026-10-18 00:30:48,921.921 INFO    ] 2026-10-18 00:30:48
[2026-10-18 00:30:49,167.167 INFO    ] 2026-10-18 00:30:49
[2026-10-18 00:30:49,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:30:49,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:30:49,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:30:49,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:30:49,718.718 INFO    ] time= 18/10/2026 00:30:49
[2026-10-18 00:30:49,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:30:49,744.744 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:30:49,876.876 INFO    ] No existing commands found in stream
[2026-10-18 00:30:54,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:30:54,891.891 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-18 00:30:58,990.990 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:30:58,993.993 INFO    ] Checking for system updates...
[2026-10-18 00:30:59,029.029 INFO    ] 200
[2026-10-18 00:30:59,031.031 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:30:59,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:30:59,093.093 INFO    ] No update needed
[2026-10-18 00:30:59,095.095 INFO    ] Checking for camera pi updates...
[2026-10-18 00:30:59,132.132 INFO    ] 200
[2026-10-18 00:30:59,135.135 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:30:59,176.176 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:31:09,191.191 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:31:09,226.226 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:31:09,235.235 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:31:09,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:31:09,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:31:09,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:31:11,289.289 INFO    ] ================================================
[2026-10-18 00:31:11,304.304 INFO    ] Launching Daemon at Sun Oct 18 00:31:11 IST 2026
[2026-10-18 00:31:11,314.314 INFO    ] ================================================
[2026-10-18 00:31:11,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:31:11
[2026-10-18 00:31:12,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:31:12,765.765 INFO    ] Initializing speech engine...
[2026-10-18 00:31:12,775.775 INFO    ] 2026-10-18 00:31:12
[2026-10-18 00:31:13,049.049 INFO    ] 2026-10-18 00:31:13
[2026-10-18 00:31:13,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:31:13,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:31:13,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:31:13,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:31:13,588.588 INFO    ] time= 18/10/2026 00:31:13
[2026-10-18 00:31:13,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:31:13,612.612 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:31:13,745.745 INFO    ] No existing commands found in stream
[2026-10-18 00:31:18,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:31:18,771.771 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-18 00:31:22,528.528 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:31:22,531.531 INFO    ] Checking for system updates...
[2026-10-18 00:31:22,566.566 INFO    ] 200
[2026-10-18 00:31:22,569.569 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:31:22,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:31:22,626.626 INFO    ] No update needed
[2026-10-18 00:31:22,628.628 INFO    ] Checking for camera pi updates...
[2026-10-18 00:31:22,666.666 INFO    ] 200
[2026-10-18 00:31:22,669.669 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:31:22,715.715 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:31:32,728.728 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:31:32,764.764 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:31:32,774.774 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:31:32,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:31:32,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:31:32,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:31:34,829.829 INFO    ] ================================================
[2026-10-18 00:31:34,844.844 INFO    ] Launching Daemon at Sun Oct 18 00:31:34 IST 2026
[2026-10-18 00:31:34,855.855 INFO    ] ================================================
[2026-10-18 00:31:35,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:31:35
[2026-10-18 00:31:36,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:31:36,340.340 INFO    ] Initializing speech engine...
[2026-10-18 00:31:36,346.346 INFO    ] 2026-10-18 00:31:36
[2026-10-18 00:31:36,611.611 INFO    ] 2026-10-18 00:31:36
[2026-10-18 00:31:36,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:31:36,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:31:36,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:31:37,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:31:37,130.130 INFO    ] time= 18/10/2026 00:31:37
[2026-10-18 00:31:37,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:31:37,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:31:37,328.328 INFO    ] No existing commands found in stream
[2026-10-18 00:31:42,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:31:42,362.362 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-18 00:31:44,810.810 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:31:44,812.812 INFO    ] Checking for system updates...
[2026-10-18 00:31:44,849.849 INFO    ] 200
[2026-10-18 00:31:44,852.852 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:31:44,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:31:44,917.917 INFO    ] No update needed
[2026-10-18 00:31:44,920.920 INFO    ] Checking for camera pi updates...
[2026-10-18 00:31:44,955.955 INFO    ] 200
[2026-10-18 00:31:44,958.958 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:31:45,005.005 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:31:55,022.022 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:31:55,063.063 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:31:55,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:31:55,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:31:55,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:31:55,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:31:57,131.131 INFO    ] ================================================
[2026-10-18 00:31:57,147.147 INFO    ] Launching Daemon at Sun Oct 18 00:31:57 IST 2026
[2026-10-18 00:31:57,158.158 INFO    ] ================================================
[2026-10-18 00:31:57,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:31:57
[2026-10-18 00:31:58,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:31:58,621.621 INFO    ] Initializing speech engine...
[2026-10-18 00:31:58,630.630 INFO    ] 2026-10-18 00:31:58
[2026-10-18 00:31:58,879.879 INFO    ] 2026-10-18 00:31:58
[2026-10-18 00:31:58,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:31:59,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:31:59,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:31:59,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:31:59,434.434 INFO    ] time= 18/10/2026 00:31:59
[2026-10-18 00:31:59,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:31:59,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:31:59,590.590 INFO    ] No existing commands found in stream
[2026-10-18 00:32:04,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:32:04,608.608 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-18 00:32:07,128.128 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:32:07,130.130 INFO    ] Checking for system updates...
[2026-10-18 00:32:07,170.170 INFO    ] 200
[2026-10-18 00:32:07,172.172 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:32:07,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:32:07,226.226 INFO    ] No update needed
[2026-10-18 00:32:07,229.229 INFO    ] Checking for camera pi updates...
[2026-10-18 00:32:07,263.263 INFO    ] 200
[2026-10-18 00:32:07,266.266 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:32:07,311.311 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:32:17,325.325 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:32:17,360.360 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:32:17,369.369 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:32:17,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:32:17,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:32:17,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:32:19,421.421 INFO    ] ================================================
[2026-10-18 00:32:19,437.437 INFO    ] Launching Daemon at Sun Oct 18 00:32:19 IST 2026
[2026-10-18 00:32:19,448.448 INFO    ] ================================================
[2026-10-18 00:32:20,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:32:20
[2026-10-18 00:32:20,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:32:20,955.955 INFO    ] Initializing speech engine...
[2026-10-18 00:32:20,968.968 INFO    ] 2026-10-18 00:32:20
[2026-10-18 00:32:21,217.217 INFO    ] 2026-10-18 00:32:21
[2026-10-18 00:32:21,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:32:21,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:32:21,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:32:21,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:32:21,726.726 INFO    ] time= 18/10/2026 00:32:21
[2026-10-18 00:32:21,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:32:21,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:32:21,910.910 INFO    ] No existing commands found in stream
[2026-10-18 00:32:26,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:32:26,940.940 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-18 00:32:29,514.514 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:32:29,517.517 INFO    ] Checking for system updates...
[2026-10-18 00:32:29,557.557 INFO    ] 200
[2026-10-18 00:32:29,559.559 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:32:29,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:32:29,623.623 INFO    ] No update needed
[2026-10-18 00:32:29,626.626 INFO    ] Checking for camera pi updates...
[2026-10-18 00:32:29,664.664 INFO    ] 200
[2026-10-18 00:32:29,667.667 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:32:29,722.722 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:32:39,737.737 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:32:39,776.776 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:32:39,787.787 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:32:39,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:32:39,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:32:39,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:32:41,844.844 INFO    ] ================================================
[2026-10-18 00:32:41,859.859 INFO    ] Launching Daemon at Sun Oct 18 00:32:41 IST 2026
[2026-10-18 00:32:41,871.871 INFO    ] ================================================
[2026-10-18 00:32:42,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:32:42
[2026-10-18 00:32:43,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:32:43,512.512 INFO    ] Initializing speech engine...
[2026-10-18 00:32:43,523.523 INFO    ] 2026-10-18 00:32:43
[2026-10-18 00:32:43,800.800 INFO    ] 2026-10-18 00:32:43
[2026-10-18 00:32:43,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:32:44,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:32:44,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:32:44,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:32:44,337.337 INFO    ] time= 18/10/2026 00:32:44
[2026-10-18 00:32:44,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:32:44,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:32:44,498.498 INFO    ] No existing commands found in stream
[2026-10-18 00:32:49,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:32:49,531.531 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-18 00:32:51,081.081 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:32:51,084.084 INFO    ] Checking for system updates...
[2026-10-18 00:32:51,123.123 INFO    ] 200
[2026-10-18 00:32:51,126.126 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:32:51,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:32:51,328.328 INFO    ] No update needed
[2026-10-18 00:32:51,330.330 INFO    ] Checking for camera pi updates...
[2026-10-18 00:32:51,369.369 INFO    ] 200
[2026-10-18 00:32:51,372.372 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:32:51,415.415 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:33:01,431.431 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:33:01,471.471 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:33:01,482.482 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:33:01,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:33:01,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:33:01,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:33:03,544.544 INFO    ] ================================================
[2026-10-18 00:33:03,562.562 INFO    ] Launching Daemon at Sun Oct 18 00:33:03 IST 2026
[2026-10-18 00:33:03,573.573 INFO    ] ================================================
[2026-10-18 00:33:04,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:33:04
[2026-10-18 00:33:04,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:33:05,018.018 INFO    ] Initializing speech engine...
[2026-10-18 00:33:05,024.024 INFO    ] 2026-10-18 00:33:05
[2026-10-18 00:33:05,322.322 INFO    ] 2026-10-18 00:33:05
[2026-10-18 00:33:05,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:33:05,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:33:05,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:33:05,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:33:05,741.741 INFO    ] time= 18/10/2026 00:33:05
[2026-10-18 00:33:05,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:33:05,752.752 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:33:05,863.863 INFO    ] No existing commands found in stream
[2026-10-18 00:33:10,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:33:10,896.896 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-18 00:33:11,781.781 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:33:11,783.783 INFO    ] Checking for system updates...
[2026-10-18 00:33:11,824.824 INFO    ] 200
[2026-10-18 00:33:11,827.827 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:33:11,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:33:11,887.887 INFO    ] No update needed
[2026-10-18 00:33:11,890.890 INFO    ] Checking for camera pi updates...
[2026-10-18 00:33:11,923.923 INFO    ] 200
[2026-10-18 00:33:11,926.926 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:33:11,966.966 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:33:21,981.981 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:33:22,016.016 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:33:22,025.025 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:33:22,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:33:22,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:33:22,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:33:24,078.078 INFO    ] ================================================
[2026-10-18 00:33:24,093.093 INFO    ] Launching Daemon at Sun Oct 18 00:33:24 IST 2026
[2026-10-18 00:33:24,105.105 INFO    ] ================================================
[2026-10-18 00:33:24,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:33:24
[2026-10-18 00:33:25,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:33:25,525.525 INFO    ] Initializing speech engine...
[2026-10-18 00:33:25,535.535 INFO    ] 2026-10-18 00:33:25
[2026-10-18 00:33:25,790.790 INFO    ] 2026-10-18 00:33:25
[2026-10-18 00:33:25,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:33:26,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:33:26,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:33:26,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:33:26,334.334 INFO    ] time= 18/10/2026 00:33:26
[2026-10-18 00:33:26,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:33:26,358.358 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:33:26,488.488 INFO    ] No existing commands found in stream
[2026-10-18 00:33:31,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:33:31,505.505 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-18 00:33:32,751.751 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:33:32,754.754 INFO    ] Checking for system updates...
[2026-10-18 00:33:32,797.797 INFO    ] 200
[2026-10-18 00:33:32,800.800 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:33:32,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:33:32,859.859 INFO    ] No update needed
[2026-10-18 00:33:32,862.862 INFO    ] Checking for camera pi updates...
[2026-10-18 00:33:32,902.902 INFO    ] 200
[2026-10-18 00:33:32,905.905 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:33:32,949.949 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:33:42,965.965 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:33:42,999.999 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:33:43,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:33:43,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:33:43,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:33:43,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:33:45,063.063 INFO    ] ================================================
[2026-10-18 00:33:45,079.079 INFO    ] Launching Daemon at Sun Oct 18 00:33:45 IST 2026
[2026-10-18 00:33:45,091.091 INFO    ] ================================================
[2026-10-18 00:33:45,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:33:45
[2026-10-18 00:33:46,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:33:46,500.500 INFO    ] Initializing speech engine...
[2026-10-18 00:33:46,508.508 INFO    ] 2026-10-18 00:33:46
[2026-10-18 00:33:46,807.807 INFO    ] 2026-10-18 00:33:46
[2026-10-18 00:33:46,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:33:47,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:33:47,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:33:47,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:33:47,321.321 INFO    ] time= 18/10/2026 00:33:47
[2026-10-18 00:33:47,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:33:47,398.398 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:33:47,528.528 INFO    ] No existing commands found in stream
[2026-10-18 00:33:52,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:33:52,552.552 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-18 00:33:56,610.610 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:33:56,613.613 INFO    ] Checking for system updates...
[2026-10-18 00:33:56,649.649 INFO    ] 200
[2026-10-18 00:33:56,652.652 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:33:56,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:33:56,708.708 INFO    ] No update needed
[2026-10-18 00:33:56,711.711 INFO    ] Checking for camera pi updates...
[2026-10-18 00:33:56,748.748 INFO    ] 200
[2026-10-18 00:33:56,751.751 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:33:56,792.792 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:34:06,807.807 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:34:06,841.841 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:34:06,851.851 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:34:06,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:34:06,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:34:06,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:34:08,906.906 INFO    ] ================================================
[2026-10-18 00:34:08,921.921 INFO    ] Launching Daemon at Sun Oct 18 00:34:08 IST 2026
[2026-10-18 00:34:08,933.933 INFO    ] ================================================
[2026-10-18 00:34:09,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:34:09
[2026-10-18 00:34:10,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:34:10,561.561 INFO    ] Initializing speech engine...
[2026-10-18 00:34:10,572.572 INFO    ] 2026-10-18 00:34:10
[2026-10-18 00:34:10,878.878 INFO    ] 2026-10-18 00:34:10
[2026-10-18 00:34:10,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:34:11,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:34:11,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:34:11,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:34:11,397.397 INFO    ] time= 18/10/2026 00:34:11
[2026-10-18 00:34:11,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:34:11,435.435 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:34:11,572.572 INFO    ] No existing commands found in stream
[2026-10-18 00:34:16,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:34:16,606.606 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-18 00:34:21,085.085 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:34:21,088.088 INFO    ] Checking for system updates...
[2026-10-18 00:34:21,128.128 INFO    ] 200
[2026-10-18 00:34:21,131.131 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:34:21,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:34:21,189.189 INFO    ] No update needed
[2026-10-18 00:34:21,191.191 INFO    ] Checking for camera pi updates...
[2026-10-18 00:34:21,226.226 INFO    ] 200
[2026-10-18 00:34:21,229.229 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:34:21,270.270 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:34:31,286.286 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:34:31,326.326 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:34:31,338.338 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:34:31,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:34:31,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:34:31,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:34:33,394.394 INFO    ] ================================================
[2026-10-18 00:34:33,410.410 INFO    ] Launching Daemon at Sun Oct 18 00:34:33 IST 2026
[2026-10-18 00:34:33,421.421 INFO    ] ================================================
[2026-10-18 00:34:34,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:34:34
[2026-10-18 00:34:34,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:34:35,046.046 INFO    ] Initializing speech engine...
[2026-10-18 00:34:35,060.060 INFO    ] 2026-10-18 00:34:35
[2026-10-18 00:34:35,367.367 INFO    ] 2026-10-18 00:34:35
[2026-10-18 00:34:35,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:34:35,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:34:35,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:34:35,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:34:35,876.876 INFO    ] time= 18/10/2026 00:34:35
[2026-10-18 00:34:35,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:34:35,924.924 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:34:36,002.002 INFO    ] No existing commands found in stream
[2026-10-18 00:34:41,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:34:41,016.016 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-18 00:34:45,242.242 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:34:45,244.244 INFO    ] Checking for system updates...
[2026-10-18 00:34:45,280.280 INFO    ] 200
[2026-10-18 00:34:45,282.282 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:34:45,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:34:45,337.337 INFO    ] No update needed
[2026-10-18 00:34:45,340.340 INFO    ] Checking for camera pi updates...
[2026-10-18 00:34:45,374.374 INFO    ] 200
[2026-10-18 00:34:45,376.376 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:34:45,416.416 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:34:55,432.432 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:34:55,466.466 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:34:55,476.476 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:34:55,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:34:55,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:34:55,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:34:57,528.528 INFO    ] ================================================
[2026-10-18 00:34:57,544.544 INFO    ] Launching Daemon at Sun Oct 18 00:34:57 IST 2026
[2026-10-18 00:34:57,556.556 INFO    ] ================================================
[2026-10-18 00:34:58,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:34:58
[2026-10-18 00:34:58,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:34:59,237.237 INFO    ] Initializing speech engine...
[2026-10-18 00:34:59,247.247 INFO    ] 2026-10-18 00:34:59
[2026-10-18 00:34:59,565.565 INFO    ] 2026-10-18 00:34:59
[2026-10-18 00:34:59,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:34:59,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:34:59,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:35:00,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:35:00,053.053 INFO    ] time= 18/10/2026 00:35:00
[2026-10-18 00:35:00,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:35:00,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:35:00,230.230 INFO    ] No existing commands found in stream
[2026-10-18 00:35:05,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:35:05,254.254 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-18 00:35:09,362.362 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:35:09,365.365 INFO    ] Checking for system updates...
[2026-10-18 00:35:09,401.401 INFO    ] 200
[2026-10-18 00:35:09,404.404 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:35:09,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:35:09,460.460 INFO    ] No update needed
[2026-10-18 00:35:09,463.463 INFO    ] Checking for camera pi updates...
[2026-10-18 00:35:09,498.498 INFO    ] 200
[2026-10-18 00:35:09,500.500 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:35:09,542.542 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:35:19,558.558 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:35:19,597.597 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:35:19,608.608 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:35:19,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:35:19,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:35:19,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:35:21,663.663 INFO    ] ================================================
[2026-10-18 00:35:21,678.678 INFO    ] Launching Daemon at Sun Oct 18 00:35:21 IST 2026
[2026-10-18 00:35:21,690.690 INFO    ] ================================================
[2026-10-18 00:35:22,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:35:22
[2026-10-18 00:35:22,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:35:23,109.109 INFO    ] Initializing speech engine...
[2026-10-18 00:35:23,119.119 INFO    ] 2026-10-18 00:35:23
[2026-10-18 00:35:23,365.365 INFO    ] 2026-10-18 00:35:23
[2026-10-18 00:35:23,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:35:23,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:35:23,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:35:23,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:35:23,918.918 INFO    ] time= 18/10/2026 00:35:23
[2026-10-18 00:35:23,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:35:23,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:35:24,065.065 INFO    ] No existing commands found in stream
[2026-10-18 00:35:29,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:35:29,087.087 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-18 00:35:31,463.463 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:35:31,466.466 INFO    ] Checking for system updates...
[2026-10-18 00:35:31,502.502 INFO    ] 200
[2026-10-18 00:35:31,504.504 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:35:31,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:35:31,559.559 INFO    ] No update needed
[2026-10-18 00:35:31,562.562 INFO    ] Checking for camera pi updates...
[2026-10-18 00:35:31,595.595 INFO    ] 200
[2026-10-18 00:35:31,598.598 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:35:31,641.641 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:35:41,654.654 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:35:41,689.689 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:35:41,699.699 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:35:41,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:35:41,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:35:41,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:35:43,751.751 INFO    ] ================================================
[2026-10-18 00:35:43,767.767 INFO    ] Launching Daemon at Sun Oct 18 00:35:43 IST 2026
[2026-10-18 00:35:43,778.778 INFO    ] ================================================
[2026-10-18 00:35:44,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:35:44
[2026-10-18 00:35:45,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:35:45,358.358 INFO    ] Initializing speech engine...
[2026-10-18 00:35:45,366.366 INFO    ] 2026-10-18 00:35:45
[2026-10-18 00:35:45,626.626 INFO    ] 2026-10-18 00:35:45
[2026-10-18 00:35:45,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:35:45,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:35:45,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:35:46,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:35:46,107.107 INFO    ] time= 18/10/2026 00:35:46
[2026-10-18 00:35:46,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:35:46,181.181 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:35:46,325.325 INFO    ] No existing commands found in stream
[2026-10-18 00:35:51,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:35:51,341.341 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-18 00:35:53,143.143 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:35:53,145.145 INFO    ] Checking for system updates...
[2026-10-18 00:35:53,181.181 INFO    ] 200
[2026-10-18 00:35:53,183.183 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:35:53,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:35:53,238.238 INFO    ] No update needed
[2026-10-18 00:35:53,241.241 INFO    ] Checking for camera pi updates...
[2026-10-18 00:35:53,275.275 INFO    ] 200
[2026-10-18 00:35:53,277.277 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:35:53,317.317 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:36:03,330.330 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:36:03,365.365 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:36:03,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:36:03,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:36:03,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:36:03,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:36:05,433.433 INFO    ] ================================================
[2026-10-18 00:36:05,447.447 INFO    ] Launching Daemon at Sun Oct 18 00:36:05 IST 2026
[2026-10-18 00:36:05,458.458 INFO    ] ================================================
[2026-10-18 00:36:06,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:36:06
[2026-10-18 00:36:06,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:36:06,873.873 INFO    ] Initializing speech engine...
[2026-10-18 00:36:06,881.881 INFO    ] 2026-10-18 00:36:06
[2026-10-18 00:36:07,171.171 INFO    ] 2026-10-18 00:36:07
[2026-10-18 00:36:07,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:36:07,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:36:07,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:36:07,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:36:07,594.594 INFO    ] time= 18/10/2026 00:36:07
[2026-10-18 00:36:07,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:36:07,672.672 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:36:07,812.812 INFO    ] No existing commands found in stream
[2026-10-18 00:36:12,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:36:12,826.826 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-18 00:36:15,076.076 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:36:15,079.079 INFO    ] Checking for system updates...
[2026-10-18 00:36:15,115.115 INFO    ] 200
[2026-10-18 00:36:15,118.118 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:36:15,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:36:15,178.178 INFO    ] No update needed
[2026-10-18 00:36:15,181.181 INFO    ] Checking for camera pi updates...
[2026-10-18 00:36:15,213.213 INFO    ] 200
[2026-10-18 00:36:15,216.216 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:36:15,256.256 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:36:25,270.270 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:36:25,305.305 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:36:25,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:36:25,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:36:25,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:36:25,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:36:27,367.367 INFO    ] ================================================
[2026-10-18 00:36:27,382.382 INFO    ] Launching Daemon at Sun Oct 18 00:36:27 IST 2026
[2026-10-18 00:36:27,392.392 INFO    ] ================================================
[2026-10-18 00:36:27,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:36:27
[2026-10-18 00:36:28,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:36:28,851.851 INFO    ] Initializing speech engine...
[2026-10-18 00:36:28,864.864 INFO    ] 2026-10-18 00:36:28
[2026-10-18 00:36:29,120.120 INFO    ] 2026-10-18 00:36:29
[2026-10-18 00:36:29,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:36:29,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:36:29,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:36:29,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:36:29,664.664 INFO    ] time= 18/10/2026 00:36:29
[2026-10-18 00:36:29,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:36:29,688.688 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:36:29,819.819 INFO    ] No existing commands found in stream
[2026-10-18 00:36:34,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:36:34,850.850 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-18 00:36:38,122.122 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:36:38,125.125 INFO    ] Checking for system updates...
[2026-10-18 00:36:38,162.162 INFO    ] 200
[2026-10-18 00:36:38,164.164 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:36:38,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:36:38,219.219 INFO    ] No update needed
[2026-10-18 00:36:38,221.221 INFO    ] Checking for camera pi updates...
[2026-10-18 00:36:38,256.256 INFO    ] 200
[2026-10-18 00:36:38,258.258 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:36:38,299.299 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:36:48,313.313 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:36:48,349.349 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:36:48,359.359 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:36:48,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:36:48,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:36:48,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:36:50,413.413 INFO    ] ================================================
[2026-10-18 00:36:50,428.428 INFO    ] Launching Daemon at Sun Oct 18 00:36:50 IST 2026
[2026-10-18 00:36:50,439.439 INFO    ] ================================================
[2026-10-18 00:36:51,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:36:51
[2026-10-18 00:36:51,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:36:51,904.904 INFO    ] Initializing speech engine...
[2026-10-18 00:36:51,918.918 INFO    ] 2026-10-18 00:36:51
[2026-10-18 00:36:52,193.193 INFO    ] 2026-10-18 00:36:52
[2026-10-18 00:36:52,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:36:52,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:36:52,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:36:52,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:36:52,717.717 INFO    ] time= 18/10/2026 00:36:52
[2026-10-18 00:36:52,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:36:52,780.780 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:36:52,922.922 INFO    ] No existing commands found in stream
[2026-10-18 00:36:57,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:36:57,940.940 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-18 00:37:01,036.036 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:37:01,038.038 INFO    ] Checking for system updates...
[2026-10-18 00:37:01,074.074 INFO    ] 200
[2026-10-18 00:37:01,076.076 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:37:01,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:37:01,137.137 INFO    ] No update needed
[2026-10-18 00:37:01,139.139 INFO    ] Checking for camera pi updates...
[2026-10-18 00:37:01,173.173 INFO    ] 200
[2026-10-18 00:37:01,176.176 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:37:01,235.235 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:37:11,254.254 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:37:11,289.289 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:37:11,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:37:11,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:37:11,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:37:11,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:37:13,351.351 INFO    ] ================================================
[2026-10-18 00:37:13,366.366 INFO    ] Launching Daemon at Sun Oct 18 00:37:13 IST 2026
[2026-10-18 00:37:13,376.376 INFO    ] ================================================
[2026-10-18 00:37:13,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:37:13
[2026-10-18 00:37:14,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:37:14,795.795 INFO    ] Initializing speech engine...
[2026-10-18 00:37:14,811.811 INFO    ] 2026-10-18 00:37:14
[2026-10-18 00:37:15,079.079 INFO    ] 2026-10-18 00:37:15
[2026-10-18 00:37:15,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:37:15,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:37:15,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:37:15,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:37:15,607.607 INFO    ] time= 18/10/2026 00:37:15
[2026-10-18 00:37:15,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:37:15,634.634 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:37:15,761.761 INFO    ] No existing commands found in stream
[2026-10-18 00:37:20,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:37:20,779.779 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-18 00:37:22,902.902 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:37:22,905.905 INFO    ] Checking for system updates...
[2026-10-18 00:37:22,940.940 INFO    ] 200
[2026-10-18 00:37:22,943.943 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:37:22,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:37:22,996.996 INFO    ] No update needed
[2026-10-18 00:37:22,999.999 INFO    ] Checking for camera pi updates...
[2026-10-18 00:37:23,032.032 INFO    ] 200
[2026-10-18 00:37:23,034.034 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:37:23,080.080 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:37:33,092.092 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:37:33,127.127 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:37:33,137.137 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:37:33,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:37:33,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:37:33,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:37:35,189.189 INFO    ] ================================================
[2026-10-18 00:37:35,204.204 INFO    ] Launching Daemon at Sun Oct 18 00:37:35 IST 2026
[2026-10-18 00:37:35,215.215 INFO    ] ================================================
[2026-10-18 00:37:35,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:37:35
[2026-10-18 00:37:36,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:37:36,656.656 INFO    ] Initializing speech engine...
[2026-10-18 00:37:36,680.680 INFO    ] 2026-10-18 00:37:36
[2026-10-18 00:37:36,949.949 INFO    ] 2026-10-18 00:37:36
[2026-10-18 00:37:36,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:37:37,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:37:37,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:37:37,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:37:37,504.504 INFO    ] time= 18/10/2026 00:37:37
[2026-10-18 00:37:37,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:37:37,528.528 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:37:37,657.657 INFO    ] No existing commands found in stream
[2026-10-18 00:37:42,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:37:42,675.675 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-18 00:37:45,933.933 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:37:45,937.937 INFO    ] Checking for system updates...
[2026-10-18 00:37:45,973.973 INFO    ] 200
[2026-10-18 00:37:45,976.976 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:37:46,029.029 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:37:46,031.031 INFO    ] No update needed
[2026-10-18 00:37:46,034.034 INFO    ] Checking for camera pi updates...
[2026-10-18 00:37:46,072.072 INFO    ] 200
[2026-10-18 00:37:46,075.075 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:37:46,117.117 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:37:56,133.133 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:37:56,173.173 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:37:56,184.184 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:37:56,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:37:56,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:37:56,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:37:58,239.239 INFO    ] ================================================
[2026-10-18 00:37:58,254.254 INFO    ] Launching Daemon at Sun Oct 18 00:37:58 IST 2026
[2026-10-18 00:37:58,265.265 INFO    ] ================================================
[2026-10-18 00:37:58,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:37:58
[2026-10-18 00:37:59,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:37:59,684.684 INFO    ] Initializing speech engine...
[2026-10-18 00:37:59,705.705 INFO    ] 2026-10-18 00:37:59
[2026-10-18 00:37:59,968.968 INFO    ] 2026-10-18 00:37:59
[2026-10-18 00:38:00,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:38:00,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:38:00,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:38:00,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:38:00,455.455 INFO    ] time= 18/10/2026 00:38:00
[2026-10-18 00:38:00,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:38:00,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:38:00,664.664 INFO    ] No existing commands found in stream
[2026-10-18 00:38:05,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:38:05,680.680 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-18 00:38:08,638.638 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:38:08,640.640 INFO    ] Checking for system updates...
[2026-10-18 00:38:08,676.676 INFO    ] 200
[2026-10-18 00:38:08,678.678 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:38:08,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:38:08,737.737 INFO    ] No update needed
[2026-10-18 00:38:08,740.740 INFO    ] Checking for camera pi updates...
[2026-10-18 00:38:08,773.773 INFO    ] 200
[2026-10-18 00:38:08,775.775 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:38:08,817.817 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:38:18,829.829 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:38:18,865.865 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:38:18,874.874 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:38:18,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:38:18,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:38:18,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:38:20,927.927 INFO    ] ================================================
[2026-10-18 00:38:20,942.942 INFO    ] Launching Daemon at Sun Oct 18 00:38:20 IST 2026
[2026-10-18 00:38:20,959.959 INFO    ] ================================================
[2026-10-18 00:38:21,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:38:21
[2026-10-18 00:38:22,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:38:22,424.424 INFO    ] Initializing speech engine...
[2026-10-18 00:38:22,433.433 INFO    ] 2026-10-18 00:38:22
[2026-10-18 00:38:22,683.683 INFO    ] 2026-10-18 00:38:22
[2026-10-18 00:38:22,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:38:22,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:38:22,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:38:23,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:38:23,239.239 INFO    ] time= 18/10/2026 00:38:23
[2026-10-18 00:38:23,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:38:23,263.263 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:38:23,416.416 INFO    ] No existing commands found in stream
[2026-10-18 00:38:28,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:38:28,450.450 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-18 00:38:32,796.796 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:38:32,799.799 INFO    ] Checking for system updates...
[2026-10-18 00:38:32,835.835 INFO    ] 200
[2026-10-18 00:38:32,838.838 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:38:32,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:38:32,893.893 INFO    ] No update needed
[2026-10-18 00:38:32,896.896 INFO    ] Checking for camera pi updates...
[2026-10-18 00:38:32,932.932 INFO    ] 200
[2026-10-18 00:38:32,934.934 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:38:32,974.974 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:38:42,988.988 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:38:43,024.024 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:38:43,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:38:43,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:38:43,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:38:43,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:38:45,087.087 INFO    ] ================================================
[2026-10-18 00:38:45,102.102 INFO    ] Launching Daemon at Sun Oct 18 00:38:45 IST 2026
[2026-10-18 00:38:45,112.112 INFO    ] ================================================
[2026-10-18 00:38:45,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:38:45
[2026-10-18 00:38:46,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:38:46,698.698 INFO    ] Initializing speech engine...
[2026-10-18 00:38:46,704.704 INFO    ] 2026-10-18 00:38:46
[2026-10-18 00:38:46,988.988 INFO    ] 2026-10-18 00:38:46
[2026-10-18 00:38:47,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:38:47,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:38:47,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:38:47,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:38:47,525.525 INFO    ] time= 18/10/2026 00:38:47
[2026-10-18 00:38:47,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:38:47,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:38:47,703.703 INFO    ] No existing commands found in stream
[2026-10-18 00:38:52,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:38:52,742.742 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-18 00:38:55,758.758 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:38:55,760.760 INFO    ] Checking for system updates...
[2026-10-18 00:38:55,800.800 INFO    ] 200
[2026-10-18 00:38:55,803.803 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:38:55,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:38:55,868.868 INFO    ] No update needed
[2026-10-18 00:38:55,872.872 INFO    ] Checking for camera pi updates...
[2026-10-18 00:38:55,906.906 INFO    ] 200
[2026-10-18 00:38:55,909.909 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:38:55,950.950 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:39:05,966.966 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:39:06,005.005 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:39:06,016.016 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:39:06,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:39:06,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:39:06,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:39:08,070.070 INFO    ] ================================================
[2026-10-18 00:39:08,085.085 INFO    ] Launching Daemon at Sun Oct 18 00:39:08 IST 2026
[2026-10-18 00:39:08,096.096 INFO    ] ================================================
[2026-10-18 00:39:08,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:39:08
[2026-10-18 00:39:09,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:39:09,520.520 INFO    ] Initializing speech engine...
[2026-10-18 00:39:09,529.529 INFO    ] 2026-10-18 00:39:09
[2026-10-18 00:39:09,800.800 INFO    ] 2026-10-18 00:39:09
[2026-10-18 00:39:09,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:39:10,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:39:10,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:39:10,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:39:10,355.355 INFO    ] time= 18/10/2026 00:39:10
[2026-10-18 00:39:10,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:39:10,379.379 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:39:10,514.514 INFO    ] No existing commands found in stream
[2026-10-18 00:39:15,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:39:15,548.548 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-18 00:39:19,742.742 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:39:19,745.745 INFO    ] Checking for system updates...
[2026-10-18 00:39:19,781.781 INFO    ] 200
[2026-10-18 00:39:19,783.783 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:39:19,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:39:19,846.846 INFO    ] No update needed
[2026-10-18 00:39:19,849.849 INFO    ] Checking for camera pi updates...
[2026-10-18 00:39:19,884.884 INFO    ] 200
[2026-10-18 00:39:19,890.890 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:39:19,931.931 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:39:29,945.945 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:39:29,980.980 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:39:29,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:39:29,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:39:29,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:39:30,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:39:32,043.043 INFO    ] ================================================
[2026-10-18 00:39:32,060.060 INFO    ] Launching Daemon at Sun Oct 18 00:39:32 IST 2026
[2026-10-18 00:39:32,071.071 INFO    ] ================================================
[2026-10-18 00:39:32,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:39:32
[2026-10-18 00:39:33,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:39:33,527.527 INFO    ] Initializing speech engine...
[2026-10-18 00:39:33,545.545 INFO    ] 2026-10-18 00:39:33
[2026-10-18 00:39:33,795.795 INFO    ] 2026-10-18 00:39:33
[2026-10-18 00:39:33,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:39:34,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:39:34,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:39:34,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:39:34,280.280 INFO    ] time= 18/10/2026 00:39:34
[2026-10-18 00:39:34,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:39:34,369.369 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:39:34,504.504 INFO    ] No existing commands found in stream
[2026-10-18 00:39:39,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:39:39,532.532 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-18 00:39:43,281.281 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:39:43,284.284 INFO    ] Checking for system updates...
[2026-10-18 00:39:43,322.322 INFO    ] 200
[2026-10-18 00:39:43,324.324 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:39:43,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:39:43,383.383 INFO    ] No update needed
[2026-10-18 00:39:43,385.385 INFO    ] Checking for camera pi updates...
[2026-10-18 00:39:43,419.419 INFO    ] 200
[2026-10-18 00:39:43,422.422 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:39:43,462.462 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:39:53,477.477 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:39:53,511.511 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:39:53,521.521 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:39:53,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:39:53,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:39:53,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:39:55,574.574 INFO    ] ================================================
[2026-10-18 00:39:55,590.590 INFO    ] Launching Daemon at Sun Oct 18 00:39:55 IST 2026
[2026-10-18 00:39:55,601.601 INFO    ] ================================================
[2026-10-18 00:39:56,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:39:56
[2026-10-18 00:39:56,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:39:57,070.070 INFO    ] Initializing speech engine...
[2026-10-18 00:39:57,080.080 INFO    ] 2026-10-18 00:39:57
[2026-10-18 00:39:57,347.347 INFO    ] 2026-10-18 00:39:57
[2026-10-18 00:39:57,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:39:57,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:39:57,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:39:57,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:39:57,925.925 INFO    ] time= 18/10/2026 00:39:57
[2026-10-18 00:39:57,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:39:57,950.950 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:39:58,081.081 INFO    ] No existing commands found in stream
[2026-10-18 00:40:03,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:40:03,100.100 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-18 00:40:08,047.047 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:40:08,049.049 INFO    ] Checking for system updates...
[2026-10-18 00:40:08,088.088 INFO    ] 200
[2026-10-18 00:40:08,091.091 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:40:08,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:40:08,145.145 INFO    ] No update needed
[2026-10-18 00:40:08,147.147 INFO    ] Checking for camera pi updates...
[2026-10-18 00:40:08,184.184 INFO    ] 200
[2026-10-18 00:40:08,187.187 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:40:08,231.231 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:40:18,246.246 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:40:18,281.281 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:40:18,291.291 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:40:18,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:40:18,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:40:18,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:40:20,344.344 INFO    ] ================================================
[2026-10-18 00:40:20,360.360 INFO    ] Launching Daemon at Sun Oct 18 00:40:20 IST 2026
[2026-10-18 00:40:20,371.371 INFO    ] ================================================
[2026-10-18 00:40:21,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:40:21
[2026-10-18 00:40:21,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:40:21,954.954 INFO    ] Initializing speech engine...
[2026-10-18 00:40:21,962.962 INFO    ] 2026-10-18 00:40:21
[2026-10-18 00:40:22,242.242 INFO    ] 2026-10-18 00:40:22
[2026-10-18 00:40:22,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:40:22,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:40:22,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:40:22,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:40:22,779.779 INFO    ] time= 18/10/2026 00:40:22
[2026-10-18 00:40:22,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:40:22,827.827 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:40:22,962.962 INFO    ] No existing commands found in stream
[2026-10-18 00:40:27,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:40:27,996.996 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-18 00:40:29,751.751 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:40:29,755.755 INFO    ] Checking for system updates...
[2026-10-18 00:40:29,794.794 INFO    ] 200
[2026-10-18 00:40:29,797.797 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:40:29,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:40:29,853.853 INFO    ] No update needed
[2026-10-18 00:40:29,856.856 INFO    ] Checking for camera pi updates...
[2026-10-18 00:40:29,890.890 INFO    ] 200
[2026-10-18 00:40:29,893.893 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:40:29,935.935 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:40:39,952.952 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73dae150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:40:39,991.991 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:40:40,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:40:40,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:40:40,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:40:40,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:40:42,057.057 INFO    ] ================================================
[2026-10-18 00:40:42,072.072 INFO    ] Launching Daemon at Sun Oct 18 00:40:42 IST 2026
[2026-10-18 00:40:42,084.084 INFO    ] ================================================
[2026-10-18 00:40:42,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:40:42
[2026-10-18 00:40:43,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:40:43,527.527 INFO    ] Initializing speech engine...
[2026-10-18 00:40:43,536.536 INFO    ] 2026-10-18 00:40:43
[2026-10-18 00:40:43,827.827 INFO    ] 2026-10-18 00:40:43
[2026-10-18 00:40:43,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:40:44,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:40:44,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:40:44,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:40:44,337.337 INFO    ] time= 18/10/2026 00:40:44
[2026-10-18 00:40:44,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:40:44,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:40:44,582.582 INFO    ] No existing commands found in stream
[2026-10-18 00:40:49,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:40:49,608.608 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-18 00:40:50,698.698 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:40:50,701.701 INFO    ] Checking for system updates...
[2026-10-18 00:40:50,739.739 INFO    ] 200
[2026-10-18 00:40:50,742.742 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:40:50,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:40:50,802.802 INFO    ] No update needed
[2026-10-18 00:40:50,804.804 INFO    ] Checking for camera pi updates...
[2026-10-18 00:40:50,839.839 INFO    ] 200
[2026-10-18 00:40:50,841.841 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:40:50,883.883 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:41:00,898.898 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:41:00,934.934 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:41:00,944.944 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:41:00,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:41:00,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:41:00,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:41:03,001.001 INFO    ] ================================================
[2026-10-18 00:41:03,020.020 INFO    ] Launching Daemon at Sun Oct 18 00:41:03 IST 2026
[2026-10-18 00:41:03,033.033 INFO    ] ================================================
[2026-10-18 00:41:03,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:41:03
[2026-10-18 00:41:04,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:41:04,494.494 INFO    ] Initializing speech engine...
[2026-10-18 00:41:04,500.500 INFO    ] 2026-10-18 00:41:04
[2026-10-18 00:41:04,771.771 INFO    ] 2026-10-18 00:41:04
[2026-10-18 00:41:04,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:41:04,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:41:04,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:41:05,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:41:05,153.153 INFO    ] time= 18/10/2026 00:41:05
[2026-10-18 00:41:05,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:41:05,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:41:05,242.242 INFO    ] No existing commands found in stream
[2026-10-18 00:41:10,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:41:10,260.260 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-18 00:41:11,903.903 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:41:11,906.906 INFO    ] Checking for system updates...
[2026-10-18 00:41:11,942.942 INFO    ] 200
[2026-10-18 00:41:11,945.945 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:41:11,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:41:11,999.999 INFO    ] No update needed
[2026-10-18 00:41:12,001.001 INFO    ] Checking for camera pi updates...
[2026-10-18 00:41:12,038.038 INFO    ] 200
[2026-10-18 00:41:12,040.040 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:41:12,080.080 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:41:22,095.095 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:41:22,130.130 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:41:22,140.140 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:41:22,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:41:22,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:41:22,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:41:24,199.199 INFO    ] ================================================
[2026-10-18 00:41:24,215.215 INFO    ] Launching Daemon at Sun Oct 18 00:41:24 IST 2026
[2026-10-18 00:41:24,226.226 INFO    ] ================================================
[2026-10-18 00:41:24,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:41:24
[2026-10-18 00:41:25,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:41:25,687.687 INFO    ] Initializing speech engine...
[2026-10-18 00:41:25,702.702 INFO    ] 2026-10-18 00:41:25
[2026-10-18 00:41:25,971.971 INFO    ] 2026-10-18 00:41:25
[2026-10-18 00:41:26,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:41:26,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:41:26,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:41:26,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:41:26,467.467 INFO    ] time= 18/10/2026 00:41:26
[2026-10-18 00:41:26,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:41:26,571.571 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:41:26,740.740 INFO    ] No existing commands found in stream
[2026-10-18 00:41:31,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:41:31,771.771 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-18 00:41:34,791.791 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:41:34,794.794 INFO    ] Checking for system updates...
[2026-10-18 00:41:34,832.832 INFO    ] 200
[2026-10-18 00:41:34,835.835 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:41:34,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:41:34,895.895 INFO    ] No update needed
[2026-10-18 00:41:34,898.898 INFO    ] Checking for camera pi updates...
[2026-10-18 00:41:34,931.931 INFO    ] 200
[2026-10-18 00:41:34,934.934 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:41:34,974.974 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:41:44,989.989 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:41:45,023.023 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:41:45,033.033 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:41:45,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:41:45,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:41:45,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:41:47,085.085 INFO    ] ================================================
[2026-10-18 00:41:47,102.102 INFO    ] Launching Daemon at Sun Oct 18 00:41:47 IST 2026
[2026-10-18 00:41:47,113.113 INFO    ] ================================================
[2026-10-18 00:41:47,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:41:47
[2026-10-18 00:41:48,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:41:48,549.549 INFO    ] Initializing speech engine...
[2026-10-18 00:41:48,574.574 INFO    ] 2026-10-18 00:41:48
[2026-10-18 00:41:48,844.844 INFO    ] 2026-10-18 00:41:48
[2026-10-18 00:41:48,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:41:49,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:41:49,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:41:49,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:41:49,259.259 INFO    ] time= 18/10/2026 00:41:49
[2026-10-18 00:41:49,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:41:49,297.297 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:41:49,459.459 INFO    ] No existing commands found in stream
[2026-10-18 00:41:54,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:41:54,489.489 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-18 00:41:55,962.962 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:41:55,964.964 INFO    ] Checking for system updates...
[2026-10-18 00:41:56,003.003 INFO    ] 200
[2026-10-18 00:41:56,006.006 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:41:56,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:41:56,065.065 INFO    ] No update needed
[2026-10-18 00:41:56,068.068 INFO    ] Checking for camera pi updates...
[2026-10-18 00:41:56,101.101 INFO    ] 200
[2026-10-18 00:41:56,104.104 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:41:56,143.143 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:42:06,159.159 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:42:06,193.193 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:42:06,203.203 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:42:06,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:42:06,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:42:06,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:42:08,256.256 INFO    ] ================================================
[2026-10-18 00:42:08,271.271 INFO    ] Launching Daemon at Sun Oct 18 00:42:08 IST 2026
[2026-10-18 00:42:08,282.282 INFO    ] ================================================
[2026-10-18 00:42:08,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:42:08
[2026-10-18 00:42:09,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:42:09,688.688 INFO    ] Initializing speech engine...
[2026-10-18 00:42:09,696.696 INFO    ] 2026-10-18 00:42:09
[2026-10-18 00:42:09,971.971 INFO    ] 2026-10-18 00:42:09
[2026-10-18 00:42:10,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:42:10,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:42:10,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:42:10,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:42:10,540.540 INFO    ] time= 18/10/2026 00:42:10
[2026-10-18 00:42:10,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:42:10,564.564 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:42:10,710.710 INFO    ] No existing commands found in stream
[2026-10-18 00:42:15,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:42:15,744.744 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-18 00:42:18,516.516 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:42:18,518.518 INFO    ] Checking for system updates...
[2026-10-18 00:42:18,554.554 INFO    ] 200
[2026-10-18 00:42:18,557.557 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:42:18,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:42:18,612.612 INFO    ] No update needed
[2026-10-18 00:42:18,614.614 INFO    ] Checking for camera pi updates...
[2026-10-18 00:42:18,654.654 INFO    ] 200
[2026-10-18 00:42:18,656.656 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:42:18,697.697 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:42:28,713.713 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:42:28,752.752 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:42:28,763.763 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:42:28,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:42:28,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:42:28,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:42:30,817.817 INFO    ] ================================================
[2026-10-18 00:42:30,833.833 INFO    ] Launching Daemon at Sun Oct 18 00:42:30 IST 2026
[2026-10-18 00:42:30,844.844 INFO    ] ================================================
[2026-10-18 00:42:31,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:42:31
[2026-10-18 00:42:32,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:42:32,351.351 INFO    ] Initializing speech engine...
[2026-10-18 00:42:32,359.359 INFO    ] 2026-10-18 00:42:32
[2026-10-18 00:42:32,640.640 INFO    ] 2026-10-18 00:42:32
[2026-10-18 00:42:32,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:42:32,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:42:32,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:42:33,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:42:33,247.247 INFO    ] time= 18/10/2026 00:42:33
[2026-10-18 00:42:33,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:42:33,320.320 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:42:33,458.458 INFO    ] No existing commands found in stream
[2026-10-18 00:42:38,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:42:38,484.484 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-18 00:42:41,278.278 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:42:41,281.281 INFO    ] Checking for system updates...
[2026-10-18 00:42:41,318.318 INFO    ] 200
[2026-10-18 00:42:41,321.321 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:42:41,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:42:41,378.378 INFO    ] No update needed
[2026-10-18 00:42:41,380.380 INFO    ] Checking for camera pi updates...
[2026-10-18 00:42:41,417.417 INFO    ] 200
[2026-10-18 00:42:41,420.420 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:42:41,464.464 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:42:51,480.480 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:42:51,519.519 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:42:51,530.530 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:42:51,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:42:51,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:42:51,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:42:53,584.584 INFO    ] ================================================
[2026-10-18 00:42:53,600.600 INFO    ] Launching Daemon at Sun Oct 18 00:42:53 IST 2026
[2026-10-18 00:42:53,611.611 INFO    ] ================================================
[2026-10-18 00:42:54,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:42:54
[2026-10-18 00:42:54,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:42:55,037.037 INFO    ] Initializing speech engine...
[2026-10-18 00:42:55,046.046 INFO    ] 2026-10-18 00:42:55
[2026-10-18 00:42:55,292.292 INFO    ] 2026-10-18 00:42:55
[2026-10-18 00:42:55,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:42:55,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:42:55,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:42:55,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:42:55,844.844 INFO    ] time= 18/10/2026 00:42:55
[2026-10-18 00:42:55,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:42:55,867.867 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:42:55,998.998 INFO    ] No existing commands found in stream
[2026-10-18 00:43:01,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:43:01,016.016 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-18 00:43:04,776.776 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:43:04,779.779 INFO    ] Checking for system updates...
[2026-10-18 00:43:04,814.814 INFO    ] 200
[2026-10-18 00:43:04,818.818 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:43:04,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:43:04,873.873 INFO    ] No update needed
[2026-10-18 00:43:04,875.875 INFO    ] Checking for camera pi updates...
[2026-10-18 00:43:04,909.909 INFO    ] 200
[2026-10-18 00:43:04,911.911 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:43:04,950.950 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:43:14,965.965 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:43:15,000.000 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:43:15,010.010 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:43:15,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:43:15,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:43:15,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:43:17,064.064 INFO    ] ================================================
[2026-10-18 00:43:17,080.080 INFO    ] Launching Daemon at Sun Oct 18 00:43:17 IST 2026
[2026-10-18 00:43:17,091.091 INFO    ] ================================================
[2026-10-18 00:43:17,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:43:17
[2026-10-18 00:43:18,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:43:18,715.715 INFO    ] Initializing speech engine...
[2026-10-18 00:43:18,729.729 INFO    ] 2026-10-18 00:43:18
[2026-10-18 00:43:19,043.043 INFO    ] 2026-10-18 00:43:19
[2026-10-18 00:43:19,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:43:19,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:43:19,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:43:19,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:43:19,565.565 INFO    ] time= 18/10/2026 00:43:19
[2026-10-18 00:43:19,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:43:19,613.613 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:43:19,725.725 INFO    ] No existing commands found in stream
[2026-10-18 00:43:24,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:43:24,753.753 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-18 00:43:28,511.511 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:43:28,514.514 INFO    ] Checking for system updates...
[2026-10-18 00:43:28,555.555 INFO    ] 200
[2026-10-18 00:43:28,628.628 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:43:28,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:43:28,690.690 INFO    ] No update needed
[2026-10-18 00:43:28,692.692 INFO    ] Checking for camera pi updates...
[2026-10-18 00:43:28,728.728 INFO    ] 200
[2026-10-18 00:43:28,731.731 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:43:28,772.772 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:43:38,788.788 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:43:38,828.828 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:43:38,839.839 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:43:38,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:43:38,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:43:38,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:43:40,894.894 INFO    ] ================================================
[2026-10-18 00:43:40,909.909 INFO    ] Launching Daemon at Sun Oct 18 00:43:40 IST 2026
[2026-10-18 00:43:40,920.920 INFO    ] ================================================
[2026-10-18 00:43:41,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:43:41
[2026-10-18 00:43:42,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:43:42,379.379 INFO    ] Initializing speech engine...
[2026-10-18 00:43:42,387.387 INFO    ] 2026-10-18 00:43:42
[2026-10-18 00:43:42,634.634 INFO    ] 2026-10-18 00:43:42
[2026-10-18 00:43:42,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:43:42,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:43:42,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:43:43,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:43:43,189.189 INFO    ] time= 18/10/2026 00:43:43
[2026-10-18 00:43:43,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:43:43,213.213 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:43:43,345.345 INFO    ] No existing commands found in stream
[2026-10-18 00:43:48,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:43:48,364.364 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-18 00:43:49,529.529 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:43:49,532.532 INFO    ] Checking for system updates...
[2026-10-18 00:43:49,568.568 INFO    ] 200
[2026-10-18 00:43:49,570.570 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:43:49,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:43:49,624.624 INFO    ] No update needed
[2026-10-18 00:43:49,627.627 INFO    ] Checking for camera pi updates...
[2026-10-18 00:43:49,661.661 INFO    ] 200
[2026-10-18 00:43:49,663.663 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:43:49,704.704 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:43:59,719.719 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:43:59,753.753 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:43:59,763.763 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:43:59,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:43:59,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:43:59,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:44:01,825.825 INFO    ] ================================================
[2026-10-18 00:44:01,864.864 INFO    ] Launching Daemon at Sun Oct 18 00:44:01 IST 2026
[2026-10-18 00:44:01,883.883 INFO    ] ================================================
[2026-10-18 00:44:02,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:44:02
[2026-10-18 00:44:03,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:44:03,743.743 INFO    ] Initializing speech engine...
[2026-10-18 00:44:03,752.752 INFO    ] 2026-10-18 00:44:03
[2026-10-18 00:44:04,037.037 INFO    ] 2026-10-18 00:44:04
[2026-10-18 00:44:04,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:44:04,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:44:04,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:44:04,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:44:04,543.543 INFO    ] time= 18/10/2026 00:44:04
[2026-10-18 00:44:04,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:44:04,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:44:04,706.706 INFO    ] No existing commands found in stream
[2026-10-18 00:44:09,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:44:09,736.736 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-18 00:44:11,976.976 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:44:11,978.978 INFO    ] Checking for system updates...
[2026-10-18 00:44:12,014.014 INFO    ] 200
[2026-10-18 00:44:12,017.017 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:44:12,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:44:12,072.072 INFO    ] No update needed
[2026-10-18 00:44:12,075.075 INFO    ] Checking for camera pi updates...
[2026-10-18 00:44:12,108.108 INFO    ] 200
[2026-10-18 00:44:12,110.110 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:44:12,151.151 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:44:22,163.163 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:44:22,204.204 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:44:22,214.214 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:44:22,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:44:22,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:44:22,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:44:24,266.266 INFO    ] ================================================
[2026-10-18 00:44:24,282.282 INFO    ] Launching Daemon at Sun Oct 18 00:44:24 IST 2026
[2026-10-18 00:44:24,294.294 INFO    ] ================================================
[2026-10-18 00:44:24,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:44:24
[2026-10-18 00:44:25,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:44:25,743.743 INFO    ] Initializing speech engine...
[2026-10-18 00:44:25,769.769 INFO    ] 2026-10-18 00:44:25
[2026-10-18 00:44:26,042.042 INFO    ] 2026-10-18 00:44:26
[2026-10-18 00:44:26,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:44:26,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:44:26,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:44:26,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:44:26,590.590 INFO    ] time= 18/10/2026 00:44:26
[2026-10-18 00:44:26,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:44:26,678.678 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:44:26,804.804 INFO    ] No existing commands found in stream
[2026-10-18 00:44:31,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:44:31,822.822 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-18 00:44:35,190.190 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:44:35,193.193 INFO    ] Checking for system updates...
[2026-10-18 00:44:35,229.229 INFO    ] 200
[2026-10-18 00:44:35,232.232 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:44:35,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:44:35,290.290 INFO    ] No update needed
[2026-10-18 00:44:35,292.292 INFO    ] Checking for camera pi updates...
[2026-10-18 00:44:35,326.326 INFO    ] 200
[2026-10-18 00:44:35,328.328 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:44:35,369.369 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:44:45,384.384 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:44:45,420.420 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:44:45,429.429 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:44:45,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:44:45,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:44:45,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:44:47,483.483 INFO    ] ================================================
[2026-10-18 00:44:47,499.499 INFO    ] Launching Daemon at Sun Oct 18 00:44:47 IST 2026
[2026-10-18 00:44:47,511.511 INFO    ] ================================================
[2026-10-18 00:44:48,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:44:48
[2026-10-18 00:44:48,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:44:49,041.041 INFO    ] Initializing speech engine...
[2026-10-18 00:44:49,049.049 INFO    ] 2026-10-18 00:44:49
[2026-10-18 00:44:49,311.311 INFO    ] 2026-10-18 00:44:49
[2026-10-18 00:44:49,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:44:49,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:44:49,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:44:49,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:44:49,867.867 INFO    ] time= 18/10/2026 00:44:49
[2026-10-18 00:44:49,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:44:49,907.907 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:44:50,053.053 INFO    ] No existing commands found in stream
[2026-10-18 00:44:55,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:44:55,086.086 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-18 00:44:56,555.555 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:44:56,558.558 INFO    ] Checking for system updates...
[2026-10-18 00:44:56,594.594 INFO    ] 200
[2026-10-18 00:44:56,596.596 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:44:56,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:44:56,651.651 INFO    ] No update needed
[2026-10-18 00:44:56,654.654 INFO    ] Checking for camera pi updates...
[2026-10-18 00:44:56,694.694 INFO    ] 200
[2026-10-18 00:44:56,696.696 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:44:56,737.737 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:45:06,756.756 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:45:06,790.790 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:45:06,800.800 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:45:06,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:45:06,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:45:06,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:45:08,852.852 INFO    ] ================================================
[2026-10-18 00:45:08,868.868 INFO    ] Launching Daemon at Sun Oct 18 00:45:08 IST 2026
[2026-10-18 00:45:08,879.879 INFO    ] ================================================
[2026-10-18 00:45:09,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:45:09
[2026-10-18 00:45:10,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:45:10,459.459 INFO    ] Initializing speech engine...
[2026-10-18 00:45:10,473.473 INFO    ] 2026-10-18 00:45:10
[2026-10-18 00:45:10,751.751 INFO    ] 2026-10-18 00:45:10
[2026-10-18 00:45:10,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:45:11,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:45:11,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:45:11,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:45:11,291.291 INFO    ] time= 18/10/2026 00:45:11
[2026-10-18 00:45:11,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:45:11,321.321 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:45:11,479.479 INFO    ] No existing commands found in stream
[2026-10-18 00:45:16,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:45:16,513.513 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-18 00:45:19,337.337 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:45:19,340.340 INFO    ] Checking for system updates...
[2026-10-18 00:45:19,377.377 INFO    ] 200
[2026-10-18 00:45:19,380.380 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:45:19,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:45:19,435.435 INFO    ] No update needed
[2026-10-18 00:45:19,438.438 INFO    ] Checking for camera pi updates...
[2026-10-18 00:45:19,472.472 INFO    ] 200
[2026-10-18 00:45:19,475.475 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:45:19,517.517 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:45:29,533.533 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:45:29,574.574 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:45:29,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:45:29,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:45:29,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:45:29,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:45:31,641.641 INFO    ] ================================================
[2026-10-18 00:45:31,657.657 INFO    ] Launching Daemon at Sun Oct 18 00:45:31 IST 2026
[2026-10-18 00:45:31,668.668 INFO    ] ================================================
[2026-10-18 00:45:32,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:45:32
[2026-10-18 00:45:33,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:45:33,368.368 INFO    ] Initializing speech engine...
[2026-10-18 00:45:33,382.382 INFO    ] 2026-10-18 00:45:33
[2026-10-18 00:45:33,666.666 INFO    ] 2026-10-18 00:45:33
[2026-10-18 00:45:33,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:45:33,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:45:33,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:45:34,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:45:34,198.198 INFO    ] time= 18/10/2026 00:45:34
[2026-10-18 00:45:34,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:45:34,227.227 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:45:34,351.351 INFO    ] No existing commands found in stream
[2026-10-18 00:45:39,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:45:39,371.371 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-18 00:45:43,469.469 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:45:43,472.472 INFO    ] Checking for system updates...
[2026-10-18 00:45:43,508.508 INFO    ] 200
[2026-10-18 00:45:43,510.510 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:45:43,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:45:43,564.564 INFO    ] No update needed
[2026-10-18 00:45:43,567.567 INFO    ] Checking for camera pi updates...
[2026-10-18 00:45:43,601.601 INFO    ] 200
[2026-10-18 00:45:43,603.603 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:45:43,643.643 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:45:53,659.659 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:45:53,698.698 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:45:53,709.709 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:45:53,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:45:53,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:45:53,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:45:55,765.765 INFO    ] ================================================
[2026-10-18 00:45:55,780.780 INFO    ] Launching Daemon at Sun Oct 18 00:45:55 IST 2026
[2026-10-18 00:45:55,791.791 INFO    ] ================================================
[2026-10-18 00:45:56,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:45:56
[2026-10-18 00:45:56,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:45:57,231.231 INFO    ] Initializing speech engine...
[2026-10-18 00:45:57,240.240 INFO    ] 2026-10-18 00:45:57
[2026-10-18 00:45:57,533.533 INFO    ] 2026-10-18 00:45:57
[2026-10-18 00:45:57,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:45:57,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:45:57,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:45:58,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:45:58,153.153 INFO    ] time= 18/10/2026 00:45:58
[2026-10-18 00:45:58,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:45:58,186.186 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:45:58,327.327 INFO    ] No existing commands found in stream
[2026-10-18 00:46:03,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:46:03,349.349 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-18 00:46:06,633.633 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:46:06,636.636 INFO    ] Checking for system updates...
[2026-10-18 00:46:06,672.672 INFO    ] 200
[2026-10-18 00:46:06,674.674 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:46:06,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:46:06,730.730 INFO    ] No update needed
[2026-10-18 00:46:06,732.732 INFO    ] Checking for camera pi updates...
[2026-10-18 00:46:06,766.766 INFO    ] 200
[2026-10-18 00:46:06,769.769 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:46:06,809.809 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:46:16,825.825 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:46:16,863.863 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:46:16,873.873 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:46:16,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:46:16,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:46:16,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:46:18,928.928 INFO    ] ================================================
[2026-10-18 00:46:18,943.943 INFO    ] Launching Daemon at Sun Oct 18 00:46:18 IST 2026
[2026-10-18 00:46:18,953.953 INFO    ] ================================================
[2026-10-18 00:46:19,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:46:19
[2026-10-18 00:46:20,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:46:20,419.419 INFO    ] Initializing speech engine...
[2026-10-18 00:46:20,429.429 INFO    ] 2026-10-18 00:46:20
[2026-10-18 00:46:20,691.691 INFO    ] 2026-10-18 00:46:20
[2026-10-18 00:46:20,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:46:20,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:46:21,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:46:21,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:46:21,198.198 INFO    ] time= 18/10/2026 00:46:21
[2026-10-18 00:46:21,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:46:21,306.306 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:46:21,451.451 INFO    ] No existing commands found in stream
[2026-10-18 00:46:26,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:46:26,479.479 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-18 00:46:29,090.090 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:46:29,093.093 INFO    ] Checking for system updates...
[2026-10-18 00:46:29,128.128 INFO    ] 200
[2026-10-18 00:46:29,131.131 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:46:29,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:46:29,186.186 INFO    ] No update needed
[2026-10-18 00:46:29,188.188 INFO    ] Checking for camera pi updates...
[2026-10-18 00:46:29,222.222 INFO    ] 200
[2026-10-18 00:46:29,224.224 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:46:29,264.264 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:46:39,279.279 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:46:39,313.313 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:46:39,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:46:39,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:46:39,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:46:39,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:46:41,381.381 INFO    ] ================================================
[2026-10-18 00:46:41,397.397 INFO    ] Launching Daemon at Sun Oct 18 00:46:41 IST 2026
[2026-10-18 00:46:41,408.408 INFO    ] ================================================
[2026-10-18 00:46:41,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:46:41
[2026-10-18 00:46:42,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:46:42,868.868 INFO    ] Initializing speech engine...
[2026-10-18 00:46:42,877.877 INFO    ] 2026-10-18 00:46:42
[2026-10-18 00:46:43,168.168 INFO    ] 2026-10-18 00:46:43
[2026-10-18 00:46:43,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:46:43,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:46:43,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:46:43,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:46:43,719.719 INFO    ] time= 18/10/2026 00:46:43
[2026-10-18 00:46:43,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:46:43,772.772 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:46:43,914.914 INFO    ] No existing commands found in stream
[2026-10-18 00:46:48,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:46:48,953.953 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-18 00:46:49,805.805 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:46:49,808.808 INFO    ] Checking for system updates...
[2026-10-18 00:46:49,845.845 INFO    ] 200
[2026-10-18 00:46:49,848.848 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:46:49,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:46:49,911.911 INFO    ] No update needed
[2026-10-18 00:46:49,914.914 INFO    ] Checking for camera pi updates...
[2026-10-18 00:46:49,948.948 INFO    ] 200
[2026-10-18 00:46:49,951.951 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:46:49,992.992 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:47:00,007.007 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:47:00,046.046 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:47:00,057.057 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:47:00,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:47:00,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:47:00,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:47:02,120.120 INFO    ] ================================================
[2026-10-18 00:47:02,141.141 INFO    ] Launching Daemon at Sun Oct 18 00:47:02 IST 2026
[2026-10-18 00:47:02,157.157 INFO    ] ================================================
[2026-10-18 00:47:02,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:47:02
[2026-10-18 00:47:03,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:47:03,749.749 INFO    ] Initializing speech engine...
[2026-10-18 00:47:03,755.755 INFO    ] 2026-10-18 00:47:03
[2026-10-18 00:47:03,999.999 INFO    ] 2026-10-18 00:47:03
[2026-10-18 00:47:04,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:47:04,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:47:04,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:47:04,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:47:04,556.556 INFO    ] time= 18/10/2026 00:47:04
[2026-10-18 00:47:04,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:47:04,579.579 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:47:04,715.715 INFO    ] No existing commands found in stream
[2026-10-18 00:47:09,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:47:09,745.745 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-18 00:47:13,645.645 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:47:13,648.648 INFO    ] Checking for system updates...
[2026-10-18 00:47:13,683.683 INFO    ] 200
[2026-10-18 00:47:13,686.686 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:47:13,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:47:13,740.740 INFO    ] No update needed
[2026-10-18 00:47:13,742.742 INFO    ] Checking for camera pi updates...
[2026-10-18 00:47:13,779.779 INFO    ] 200
[2026-10-18 00:47:13,781.781 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:47:13,826.826 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:47:23,841.841 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:47:23,876.876 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:47:23,886.886 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:47:23,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:47:23,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:47:23,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:47:25,939.939 INFO    ] ================================================
[2026-10-18 00:47:25,955.955 INFO    ] Launching Daemon at Sun Oct 18 00:47:25 IST 2026
[2026-10-18 00:47:25,966.966 INFO    ] ================================================
[2026-10-18 00:47:26,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:47:26
[2026-10-18 00:47:27,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:47:27,403.403 INFO    ] Initializing speech engine...
[2026-10-18 00:47:27,412.412 INFO    ] 2026-10-18 00:47:27
[2026-10-18 00:47:27,657.657 INFO    ] 2026-10-18 00:47:27
[2026-10-18 00:47:27,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:47:27,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:47:27,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:47:28,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:47:28,201.201 INFO    ] time= 18/10/2026 00:47:28
[2026-10-18 00:47:28,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:47:28,235.235 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:47:28,390.390 INFO    ] No existing commands found in stream
[2026-10-18 00:47:33,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:47:33,423.423 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-18 00:47:34,282.282 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:47:34,285.285 INFO    ] Checking for system updates...
[2026-10-18 00:47:34,321.321 INFO    ] 200
[2026-10-18 00:47:34,323.323 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:47:34,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:47:34,378.378 INFO    ] No update needed
[2026-10-18 00:47:34,380.380 INFO    ] Checking for camera pi updates...
[2026-10-18 00:47:34,414.414 INFO    ] 200
[2026-10-18 00:47:34,417.417 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:47:34,456.456 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:47:44,471.471 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:47:44,506.506 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:47:44,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:47:44,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:47:44,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:47:44,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:47:46,569.569 INFO    ] ================================================
[2026-10-18 00:47:46,585.585 INFO    ] Launching Daemon at Sun Oct 18 00:47:46 IST 2026
[2026-10-18 00:47:46,596.596 INFO    ] ================================================
[2026-10-18 00:47:47,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:47:47
[2026-10-18 00:47:47,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:47:48,155.155 INFO    ] Initializing speech engine...
[2026-10-18 00:47:48,163.163 INFO    ] 2026-10-18 00:47:48
[2026-10-18 00:47:48,434.434 INFO    ] 2026-10-18 00:47:48
[2026-10-18 00:47:48,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:47:48,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:47:48,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:47:48,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:47:48,954.954 INFO    ] time= 18/10/2026 00:47:48
[2026-10-18 00:47:49,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:47:49,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:47:49,165.165 INFO    ] No existing commands found in stream
[2026-10-18 00:47:54,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:47:54,182.182 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-18 00:47:55,263.263 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:47:55,266.266 INFO    ] Checking for system updates...
[2026-10-18 00:47:55,302.302 INFO    ] 200
[2026-10-18 00:47:55,305.305 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:47:55,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:47:55,360.360 INFO    ] No update needed
[2026-10-18 00:47:55,362.362 INFO    ] Checking for camera pi updates...
[2026-10-18 00:47:55,396.396 INFO    ] 200
[2026-10-18 00:47:55,398.398 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:47:55,438.438 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:48:05,454.454 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:48:05,490.490 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:48:05,500.500 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:48:05,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:48:05,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:48:05,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:48:07,553.553 INFO    ] ================================================
[2026-10-18 00:48:07,569.569 INFO    ] Launching Daemon at Sun Oct 18 00:48:07 IST 2026
[2026-10-18 00:48:07,581.581 INFO    ] ================================================
[2026-10-18 00:48:08,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:48:08
[2026-10-18 00:48:08,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:48:09,025.025 INFO    ] Initializing speech engine...
[2026-10-18 00:48:09,051.051 INFO    ] 2026-10-18 00:48:09
[2026-10-18 00:48:09,322.322 INFO    ] 2026-10-18 00:48:09
[2026-10-18 00:48:09,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:48:09,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:48:09,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:48:09,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:48:09,813.813 INFO    ] time= 18/10/2026 00:48:09
[2026-10-18 00:48:09,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:48:09,932.932 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:48:10,089.089 INFO    ] No existing commands found in stream
[2026-10-18 00:48:15,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:48:15,119.119 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-18 00:48:18,395.395 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:48:18,398.398 INFO    ] Checking for system updates...
[2026-10-18 00:48:18,437.437 INFO    ] 200
[2026-10-18 00:48:18,439.439 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:48:18,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:48:18,499.499 INFO    ] No update needed
[2026-10-18 00:48:18,502.502 INFO    ] Checking for camera pi updates...
[2026-10-18 00:48:18,539.539 INFO    ] 200
[2026-10-18 00:48:18,541.541 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:48:18,585.585 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:48:28,600.600 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:48:28,636.636 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:48:28,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:48:28,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:48:28,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:48:28,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:48:30,700.700 INFO    ] ================================================
[2026-10-18 00:48:30,716.716 INFO    ] Launching Daemon at Sun Oct 18 00:48:30 IST 2026
[2026-10-18 00:48:30,728.728 INFO    ] ================================================
[2026-10-18 00:48:31,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:48:31
[2026-10-18 00:48:32,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:48:32,437.437 INFO    ] Initializing speech engine...
[2026-10-18 00:48:32,448.448 INFO    ] 2026-10-18 00:48:32
[2026-10-18 00:48:32,725.725 INFO    ] 2026-10-18 00:48:32
[2026-10-18 00:48:32,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:48:33,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:48:33,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:48:33,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:48:33,294.294 INFO    ] time= 18/10/2026 00:48:33
[2026-10-18 00:48:33,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:48:33,322.322 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:48:33,455.455 INFO    ] No existing commands found in stream
[2026-10-18 00:48:38,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:48:38,483.483 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-18 00:48:40,132.132 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:48:40,135.135 INFO    ] Checking for system updates...
[2026-10-18 00:48:40,172.172 INFO    ] 200
[2026-10-18 00:48:40,175.175 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:48:40,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:48:40,233.233 INFO    ] No update needed
[2026-10-18 00:48:40,235.235 INFO    ] Checking for camera pi updates...
[2026-10-18 00:48:40,273.273 INFO    ] 200
[2026-10-18 00:48:40,276.276 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:48:40,317.317 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:48:50,334.334 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:48:50,374.374 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:48:50,385.385 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:48:50,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:48:50,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:48:50,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:48:52,442.442 INFO    ] ================================================
[2026-10-18 00:48:52,457.457 INFO    ] Launching Daemon at Sun Oct 18 00:48:52 IST 2026
[2026-10-18 00:48:52,469.469 INFO    ] ================================================
[2026-10-18 00:48:53,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:48:53
[2026-10-18 00:48:53,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:48:53,928.928 INFO    ] Initializing speech engine...
[2026-10-18 00:48:53,941.941 INFO    ] 2026-10-18 00:48:53
[2026-10-18 00:48:54,208.208 INFO    ] 2026-10-18 00:48:54
[2026-10-18 00:48:54,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:48:54,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:48:54,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:48:54,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:48:54,751.751 INFO    ] time= 18/10/2026 00:48:54
[2026-10-18 00:48:54,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:48:54,786.786 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:48:54,907.907 INFO    ] No existing commands found in stream
[2026-10-18 00:48:59,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:48:59,940.940 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-18 00:49:00,454.454 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:49:00,458.458 INFO    ] Checking for system updates...
[2026-10-18 00:49:00,498.498 INFO    ] 200
[2026-10-18 00:49:00,500.500 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:49:00,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:49:00,560.560 INFO    ] No update needed
[2026-10-18 00:49:00,563.563 INFO    ] Checking for camera pi updates...
[2026-10-18 00:49:00,597.597 INFO    ] 200
[2026-10-18 00:49:00,600.600 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:49:00,641.641 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:49:10,656.656 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:49:10,695.695 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:49:10,707.707 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:49:10,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:49:10,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:49:10,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:49:12,763.763 INFO    ] ================================================
[2026-10-18 00:49:12,780.780 INFO    ] Launching Daemon at Sun Oct 18 00:49:12 IST 2026
[2026-10-18 00:49:12,791.791 INFO    ] ================================================
[2026-10-18 00:49:13,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:49:13
[2026-10-18 00:49:13,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:49:14,202.202 INFO    ] Initializing speech engine...
[2026-10-18 00:49:14,218.218 INFO    ] 2026-10-18 00:49:14
[2026-10-18 00:49:14,500.500 INFO    ] 2026-10-18 00:49:14
[2026-10-18 00:49:14,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:49:14,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:49:14,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:49:14,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:49:14,989.989 INFO    ] time= 18/10/2026 00:49:14
[2026-10-18 00:49:15,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:49:15,088.088 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:49:15,265.265 INFO    ] No existing commands found in stream
[2026-10-18 00:49:20,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:49:20,290.290 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-18 00:49:24,353.353 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:49:24,356.356 INFO    ] Checking for system updates...
[2026-10-18 00:49:24,395.395 INFO    ] 200
[2026-10-18 00:49:24,397.397 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:49:24,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:49:24,457.457 INFO    ] No update needed
[2026-10-18 00:49:24,460.460 INFO    ] Checking for camera pi updates...
[2026-10-18 00:49:24,497.497 INFO    ] 200
[2026-10-18 00:49:24,499.499 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:49:24,543.543 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:49:34,557.557 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:49:34,591.591 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:49:34,601.601 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:49:34,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:49:34,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:49:34,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:49:36,654.654 INFO    ] ================================================
[2026-10-18 00:49:36,669.669 INFO    ] Launching Daemon at Sun Oct 18 00:49:36 IST 2026
[2026-10-18 00:49:36,680.680 INFO    ] ================================================
[2026-10-18 00:49:37,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:49:37
[2026-10-18 00:49:37,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:49:38,137.137 INFO    ] Initializing speech engine...
[2026-10-18 00:49:38,150.150 INFO    ] 2026-10-18 00:49:38
[2026-10-18 00:49:38,413.413 INFO    ] 2026-10-18 00:49:38
[2026-10-18 00:49:38,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:49:38,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:49:38,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:49:38,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:49:38,961.961 INFO    ] time= 18/10/2026 00:49:38
[2026-10-18 00:49:38,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:49:38,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:49:39,114.114 INFO    ] No existing commands found in stream
[2026-10-18 00:49:44,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:49:44,136.136 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-18 00:49:45,011.011 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:49:45,013.013 INFO    ] Checking for system updates...
[2026-10-18 00:49:45,049.049 INFO    ] 200
[2026-10-18 00:49:45,052.052 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:49:45,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:49:45,108.108 INFO    ] No update needed
[2026-10-18 00:49:45,110.110 INFO    ] Checking for camera pi updates...
[2026-10-18 00:49:45,144.144 INFO    ] 200
[2026-10-18 00:49:45,147.147 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:49:45,188.188 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:49:55,203.203 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:49:55,239.239 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:49:55,249.249 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:49:55,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:49:55,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:49:55,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:49:57,303.303 INFO    ] ================================================
[2026-10-18 00:49:57,319.319 INFO    ] Launching Daemon at Sun Oct 18 00:49:57 IST 2026
[2026-10-18 00:49:57,330.330 INFO    ] ================================================
[2026-10-18 00:49:57,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:49:57
[2026-10-18 00:49:58,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:49:58,790.790 INFO    ] Initializing speech engine...
[2026-10-18 00:49:58,799.799 INFO    ] 2026-10-18 00:49:58
[2026-10-18 00:49:59,049.049 INFO    ] 2026-10-18 00:49:59
[2026-10-18 00:49:59,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:49:59,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:49:59,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:49:59,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:49:59,566.566 INFO    ] time= 18/10/2026 00:49:59
[2026-10-18 00:49:59,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:49:59,627.627 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:49:59,774.774 INFO    ] No existing commands found in stream
[2026-10-18 00:50:04,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:50:04,792.792 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-18 00:50:07,911.911 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:50:07,914.914 INFO    ] Checking for system updates...
[2026-10-18 00:50:07,950.950 INFO    ] 200
[2026-10-18 00:50:07,953.953 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:50:08,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:50:08,018.018 INFO    ] No update needed
[2026-10-18 00:50:08,021.021 INFO    ] Checking for camera pi updates...
[2026-10-18 00:50:08,057.057 INFO    ] 200
[2026-10-18 00:50:08,060.060 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:50:08,107.107 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:50:18,124.124 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:50:18,165.165 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:50:18,177.177 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:50:18,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:50:18,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:50:18,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:50:20,235.235 INFO    ] ================================================
[2026-10-18 00:50:20,252.252 INFO    ] Launching Daemon at Sun Oct 18 00:50:20 IST 2026
[2026-10-18 00:50:20,264.264 INFO    ] ================================================
[2026-10-18 00:50:20,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:50:20
[2026-10-18 00:50:21,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:50:21,675.675 INFO    ] Initializing speech engine...
[2026-10-18 00:50:21,687.687 INFO    ] 2026-10-18 00:50:21
[2026-10-18 00:50:21,954.954 INFO    ] 2026-10-18 00:50:21
[2026-10-18 00:50:21,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:50:22,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:50:22,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:50:22,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:50:22,331.331 INFO    ] time= 18/10/2026 00:50:22
[2026-10-18 00:50:22,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:50:22,379.379 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:50:22,525.525 INFO    ] No existing commands found in stream
[2026-10-18 00:50:27,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:50:27,547.547 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-18 00:50:29,407.407 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:50:29,410.410 INFO    ] Checking for system updates...
[2026-10-18 00:50:29,453.453 INFO    ] 200
[2026-10-18 00:50:29,455.455 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:50:29,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:50:29,514.514 INFO    ] No update needed
[2026-10-18 00:50:29,517.517 INFO    ] Checking for camera pi updates...
[2026-10-18 00:50:29,558.558 INFO    ] 200
[2026-10-18 00:50:29,561.561 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:50:29,608.608 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:50:39,623.623 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:50:39,657.657 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:50:39,667.667 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:50:39,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:50:39,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:50:39,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:50:41,720.720 INFO    ] ================================================
[2026-10-18 00:50:41,735.735 INFO    ] Launching Daemon at Sun Oct 18 00:50:41 IST 2026
[2026-10-18 00:50:41,746.746 INFO    ] ================================================
[2026-10-18 00:50:42,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:50:42
[2026-10-18 00:50:43,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:50:43,414.414 INFO    ] Initializing speech engine...
[2026-10-18 00:50:43,422.422 INFO    ] 2026-10-18 00:50:43
[2026-10-18 00:50:43,711.711 INFO    ] 2026-10-18 00:50:43
[2026-10-18 00:50:43,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:50:44,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:50:44,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:50:44,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:50:44,250.250 INFO    ] time= 18/10/2026 00:50:44
[2026-10-18 00:50:44,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:50:44,302.302 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:50:44,431.431 INFO    ] No existing commands found in stream
[2026-10-18 00:50:49,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:50:49,465.465 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-18 00:50:50,182.182 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:50:50,185.185 INFO    ] Checking for system updates...
[2026-10-18 00:50:50,222.222 INFO    ] 200
[2026-10-18 00:50:50,225.225 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:50:50,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:50:50,289.289 INFO    ] No update needed
[2026-10-18 00:50:50,292.292 INFO    ] Checking for camera pi updates...
[2026-10-18 00:50:50,332.332 INFO    ] 200
[2026-10-18 00:50:50,335.335 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:50:50,376.376 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:51:00,393.393 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:51:00,434.434 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:51:00,446.446 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:51:00,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:51:00,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:51:00,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:51:02,517.517 INFO    ] ================================================
[2026-10-18 00:51:02,539.539 INFO    ] Launching Daemon at Sun Oct 18 00:51:02 IST 2026
[2026-10-18 00:51:02,554.554 INFO    ] ================================================
[2026-10-18 00:51:03,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:51:03
[2026-10-18 00:51:03,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:51:04,089.089 INFO    ] Initializing speech engine...
[2026-10-18 00:51:04,098.098 INFO    ] 2026-10-18 00:51:04
[2026-10-18 00:51:04,348.348 INFO    ] 2026-10-18 00:51:04
[2026-10-18 00:51:04,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:51:04,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:51:04,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:51:04,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:51:04,851.851 INFO    ] time= 18/10/2026 00:51:04
[2026-10-18 00:51:04,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:51:04,919.919 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:51:05,050.050 INFO    ] No existing commands found in stream
[2026-10-18 00:51:10,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:51:10,078.078 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-18 00:51:11,981.981 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:51:11,984.984 INFO    ] Checking for system updates...
[2026-10-18 00:51:12,020.020 INFO    ] 200
[2026-10-18 00:51:12,023.023 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:51:12,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:51:12,077.077 INFO    ] No update needed
[2026-10-18 00:51:12,080.080 INFO    ] Checking for camera pi updates...
[2026-10-18 00:51:12,113.113 INFO    ] 200
[2026-10-18 00:51:12,116.116 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:51:12,156.156 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:51:22,171.171 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:51:22,207.207 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:51:22,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:51:22,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:51:22,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:51:22,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:51:24,270.270 INFO    ] ================================================
[2026-10-18 00:51:24,285.285 INFO    ] Launching Daemon at Sun Oct 18 00:51:24 IST 2026
[2026-10-18 00:51:24,296.296 INFO    ] ================================================
[2026-10-18 00:51:24,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:51:24
[2026-10-18 00:51:25,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:51:25,886.886 INFO    ] Initializing speech engine...
[2026-10-18 00:51:25,896.896 INFO    ] 2026-10-18 00:51:25
[2026-10-18 00:51:26,204.204 INFO    ] 2026-10-18 00:51:26
[2026-10-18 00:51:26,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:51:26,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:51:26,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:51:26,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:51:26,727.727 INFO    ] time= 18/10/2026 00:51:26
[2026-10-18 00:51:26,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:51:26,765.765 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:51:26,896.896 INFO    ] No existing commands found in stream
[2026-10-18 00:51:31,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:51:31,931.931 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-18 00:51:36,196.196 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:51:36,199.199 INFO    ] Checking for system updates...
[2026-10-18 00:51:36,240.240 INFO    ] 200
[2026-10-18 00:51:36,242.242 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:51:36,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:51:36,297.297 INFO    ] No update needed
[2026-10-18 00:51:36,299.299 INFO    ] Checking for camera pi updates...
[2026-10-18 00:51:36,333.333 INFO    ] 200
[2026-10-18 00:51:36,335.335 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:51:36,376.376 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:51:46,389.389 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:51:46,424.424 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:51:46,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:51:46,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:51:46,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:51:46,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:51:48,486.486 INFO    ] ================================================
[2026-10-18 00:51:48,501.501 INFO    ] Launching Daemon at Sun Oct 18 00:51:48 IST 2026
[2026-10-18 00:51:48,512.512 INFO    ] ================================================
[2026-10-18 00:51:49,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:51:49
[2026-10-18 00:51:49,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:51:50,032.032 INFO    ] Initializing speech engine...
[2026-10-18 00:51:50,052.052 INFO    ] 2026-10-18 00:51:50
[2026-10-18 00:51:50,303.303 INFO    ] 2026-10-18 00:51:50
[2026-10-18 00:51:50,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:51:50,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:51:50,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:51:50,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:51:50,851.851 INFO    ] time= 18/10/2026 00:51:50
[2026-10-18 00:51:50,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:51:50,895.895 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:51:51,034.034 INFO    ] No existing commands found in stream
[2026-10-18 00:51:56,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:51:56,052.052 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-18 00:51:59,222.222 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:51:59,226.226 INFO    ] Checking for system updates...
[2026-10-18 00:51:59,264.264 INFO    ] 200
[2026-10-18 00:51:59,267.267 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:51:59,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:51:59,323.323 INFO    ] No update needed
[2026-10-18 00:51:59,326.326 INFO    ] Checking for camera pi updates...
[2026-10-18 00:51:59,360.360 INFO    ] 200
[2026-10-18 00:51:59,362.362 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:51:59,403.403 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:52:09,417.417 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:52:09,452.452 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:52:09,462.462 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:52:09,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:52:09,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:52:09,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:52:11,515.515 INFO    ] ================================================
[2026-10-18 00:52:11,530.530 INFO    ] Launching Daemon at Sun Oct 18 00:52:11 IST 2026
[2026-10-18 00:52:11,541.541 INFO    ] ================================================
[2026-10-18 00:52:12,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:52:12
[2026-10-18 00:52:12,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:52:12,963.963 INFO    ] Initializing speech engine...
[2026-10-18 00:52:12,972.972 INFO    ] 2026-10-18 00:52:12
[2026-10-18 00:52:13,220.220 INFO    ] 2026-10-18 00:52:13
[2026-10-18 00:52:13,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:52:13,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:52:13,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:52:13,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:52:13,702.702 INFO    ] time= 18/10/2026 00:52:13
[2026-10-18 00:52:13,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:52:13,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:52:13,928.928 INFO    ] No existing commands found in stream
[2026-10-18 00:52:18,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:52:18,956.956 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-18 00:52:19,469.469 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:52:19,472.472 INFO    ] Checking for system updates...
[2026-10-18 00:52:19,508.508 INFO    ] 200
[2026-10-18 00:52:19,510.510 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:52:19,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:52:19,567.567 INFO    ] No update needed
[2026-10-18 00:52:19,570.570 INFO    ] Checking for camera pi updates...
[2026-10-18 00:52:19,603.603 INFO    ] 200
[2026-10-18 00:52:19,605.605 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:52:19,645.645 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:52:29,661.661 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:52:29,701.701 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:52:29,713.713 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:52:29,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:52:29,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:52:29,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:52:31,771.771 INFO    ] ================================================
[2026-10-18 00:52:31,794.794 INFO    ] Launching Daemon at Sun Oct 18 00:52:31 IST 2026
[2026-10-18 00:52:31,806.806 INFO    ] ================================================
[2026-10-18 00:52:32,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:52:32
[2026-10-18 00:52:33,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:52:33,465.465 INFO    ] Initializing speech engine...
[2026-10-18 00:52:33,471.471 INFO    ] 2026-10-18 00:52:33
[2026-10-18 00:52:33,743.743 INFO    ] 2026-10-18 00:52:33
[2026-10-18 00:52:33,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:52:34,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:52:34,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:52:34,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:52:34,306.306 INFO    ] time= 18/10/2026 00:52:34
[2026-10-18 00:52:34,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:52:34,335.335 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:52:34,445.445 INFO    ] No existing commands found in stream
[2026-10-18 00:52:39,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:52:39,477.477 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-18 00:52:42,738.738 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:52:42,742.742 INFO    ] Checking for system updates...
[2026-10-18 00:52:42,779.779 INFO    ] 200
[2026-10-18 00:52:42,782.782 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:52:42,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:52:42,840.840 INFO    ] No update needed
[2026-10-18 00:52:42,842.842 INFO    ] Checking for camera pi updates...
[2026-10-18 00:52:42,883.883 INFO    ] 200
[2026-10-18 00:52:42,886.886 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:52:42,927.927 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:52:52,942.942 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:52:52,977.977 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:52:52,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:52:52,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:52:52,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:52:52,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:52:55,038.038 INFO    ] ================================================
[2026-10-18 00:52:55,053.053 INFO    ] Launching Daemon at Sun Oct 18 00:52:55 IST 2026
[2026-10-18 00:52:55,064.064 INFO    ] ================================================
[2026-10-18 00:52:55,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:52:55
[2026-10-18 00:52:56,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:52:56,668.668 INFO    ] Initializing speech engine...
[2026-10-18 00:52:56,675.675 INFO    ] 2026-10-18 00:52:56
[2026-10-18 00:52:56,947.947 INFO    ] 2026-10-18 00:52:56
[2026-10-18 00:52:57,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:52:57,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:52:57,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:52:57,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:52:57,454.454 INFO    ] time= 18/10/2026 00:52:57
[2026-10-18 00:52:57,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:52:57,519.519 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:52:57,669.669 INFO    ] No existing commands found in stream
[2026-10-18 00:53:02,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:53:02,682.682 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-18 00:53:06,382.382 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:53:06,385.385 INFO    ] Checking for system updates...
[2026-10-18 00:53:06,422.422 INFO    ] 200
[2026-10-18 00:53:06,425.425 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:53:06,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:53:06,487.487 INFO    ] No update needed
[2026-10-18 00:53:06,490.490 INFO    ] Checking for camera pi updates...
[2026-10-18 00:53:06,525.525 INFO    ] 200
[2026-10-18 00:53:06,527.527 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:53:06,569.569 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:53:16,585.585 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:53:16,625.625 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:53:16,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:53:16,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:53:16,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:53:16,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:53:18,690.690 INFO    ] ================================================
[2026-10-18 00:53:18,709.709 INFO    ] Launching Daemon at Sun Oct 18 00:53:18 IST 2026
[2026-10-18 00:53:18,720.720 INFO    ] ================================================
[2026-10-18 00:53:19,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:53:19
[2026-10-18 00:53:20,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:53:20,297.297 INFO    ] Initializing speech engine...
[2026-10-18 00:53:20,306.306 INFO    ] 2026-10-18 00:53:20
[2026-10-18 00:53:20,586.586 INFO    ] 2026-10-18 00:53:20
[2026-10-18 00:53:20,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:53:20,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:53:20,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:53:21,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:53:21,134.134 INFO    ] time= 18/10/2026 00:53:21
[2026-10-18 00:53:21,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:53:21,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:53:21,303.303 INFO    ] No existing commands found in stream
[2026-10-18 00:53:26,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:53:26,336.336 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-18 00:53:28,834.834 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:53:28,837.837 INFO    ] Checking for system updates...
[2026-10-18 00:53:28,873.873 INFO    ] 200
[2026-10-18 00:53:28,876.876 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:53:28,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:53:28,931.931 INFO    ] No update needed
[2026-10-18 00:53:28,933.933 INFO    ] Checking for camera pi updates...
[2026-10-18 00:53:28,970.970 INFO    ] 200
[2026-10-18 00:53:28,972.972 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:53:29,013.013 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:53:39,028.028 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:53:39,066.066 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:53:39,077.077 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:53:39,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:53:39,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:53:39,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:53:41,130.130 INFO    ] ================================================
[2026-10-18 00:53:41,146.146 INFO    ] Launching Daemon at Sun Oct 18 00:53:41 IST 2026
[2026-10-18 00:53:41,157.157 INFO    ] ================================================
[2026-10-18 00:53:41,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:53:41
[2026-10-18 00:53:42,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:53:42,606.606 INFO    ] Initializing speech engine...
[2026-10-18 00:53:42,615.615 INFO    ] 2026-10-18 00:53:42
[2026-10-18 00:53:42,872.872 INFO    ] 2026-10-18 00:53:42
[2026-10-18 00:53:42,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:53:43,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:53:43,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:53:43,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:53:43,281.281 INFO    ] time= 18/10/2026 00:53:43
[2026-10-18 00:53:43,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:53:43,352.352 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:53:43,490.490 INFO    ] No existing commands found in stream
[2026-10-18 00:53:48,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:53:48,504.504 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-18 00:53:52,869.869 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:53:52,871.871 INFO    ] Checking for system updates...
[2026-10-18 00:53:52,910.910 INFO    ] 200
[2026-10-18 00:53:52,913.913 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:53:52,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:53:52,972.972 INFO    ] No update needed
[2026-10-18 00:53:52,975.975 INFO    ] Checking for camera pi updates...
[2026-10-18 00:53:53,009.009 INFO    ] 200
[2026-10-18 00:53:53,011.011 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:53:53,052.052 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:54:03,065.065 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:54:03,105.105 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:54:03,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:54:03,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:54:03,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:54:03,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:54:05,174.174 INFO    ] ================================================
[2026-10-18 00:54:05,189.189 INFO    ] Launching Daemon at Sun Oct 18 00:54:05 IST 2026
[2026-10-18 00:54:05,199.199 INFO    ] ================================================
[2026-10-18 00:54:05,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:54:05
[2026-10-18 00:54:06,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:54:06,715.715 INFO    ] Initializing speech engine...
[2026-10-18 00:54:06,728.728 INFO    ] 2026-10-18 00:54:06
[2026-10-18 00:54:07,005.005 INFO    ] 2026-10-18 00:54:06
[2026-10-18 00:54:07,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:54:07,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:54:07,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:54:07,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:54:07,552.552 INFO    ] time= 18/10/2026 00:54:07
[2026-10-18 00:54:07,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:54:07,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:54:07,735.735 INFO    ] No existing commands found in stream
[2026-10-18 00:54:12,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:54:12,763.763 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-18 00:54:14,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:54:15,002.002 INFO    ] Checking for system updates...
[2026-10-18 00:54:15,039.039 INFO    ] 200
[2026-10-18 00:54:15,041.041 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:54:15,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:54:15,095.095 INFO    ] No update needed
[2026-10-18 00:54:15,098.098 INFO    ] Checking for camera pi updates...
[2026-10-18 00:54:15,135.135 INFO    ] 200
[2026-10-18 00:54:15,138.138 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:54:15,178.178 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:54:25,193.193 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:54:25,227.227 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:54:25,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:54:25,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:54:25,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:54:25,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:54:27,289.289 INFO    ] ================================================
[2026-10-18 00:54:27,304.304 INFO    ] Launching Daemon at Sun Oct 18 00:54:27 IST 2026
[2026-10-18 00:54:27,315.315 INFO    ] ================================================
[2026-10-18 00:54:27,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:54:27
[2026-10-18 00:54:28,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:54:28,824.824 INFO    ] Initializing speech engine...
[2026-10-18 00:54:28,851.851 INFO    ] 2026-10-18 00:54:28
[2026-10-18 00:54:29,116.116 INFO    ] 2026-10-18 00:54:29
[2026-10-18 00:54:29,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:54:29,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:54:29,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:54:29,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:54:29,627.627 INFO    ] time= 18/10/2026 00:54:29
[2026-10-18 00:54:29,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:54:29,729.729 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:54:29,864.864 INFO    ] No existing commands found in stream
[2026-10-18 00:54:34,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:54:34,892.892 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-18 00:54:38,313.313 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:54:38,316.316 INFO    ] Checking for system updates...
[2026-10-18 00:54:38,353.353 INFO    ] 200
[2026-10-18 00:54:38,355.355 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:54:38,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:54:38,416.416 INFO    ] No update needed
[2026-10-18 00:54:38,419.419 INFO    ] Checking for camera pi updates...
[2026-10-18 00:54:38,453.453 INFO    ] 200
[2026-10-18 00:54:38,456.456 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:54:38,496.496 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:54:48,511.511 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:54:48,547.547 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:54:48,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:54:48,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:54:48,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:54:48,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:54:50,611.611 INFO    ] ================================================
[2026-10-18 00:54:50,626.626 INFO    ] Launching Daemon at Sun Oct 18 00:54:50 IST 2026
[2026-10-18 00:54:50,637.637 INFO    ] ================================================
[2026-10-18 00:54:51,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:54:51
[2026-10-18 00:54:51,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:54:52,093.093 INFO    ] Initializing speech engine...
[2026-10-18 00:54:52,100.100 INFO    ] 2026-10-18 00:54:52
[2026-10-18 00:54:52,374.374 INFO    ] 2026-10-18 00:54:52
[2026-10-18 00:54:52,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:54:52,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:54:52,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:54:52,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:54:52,907.907 INFO    ] time= 18/10/2026 00:54:52
[2026-10-18 00:54:52,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:54:52,953.953 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:54:53,060.060 INFO    ] No existing commands found in stream
[2026-10-18 00:54:58,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:54:58,092.092 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-18 00:55:00,228.228 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:55:00,231.231 INFO    ] Checking for system updates...
[2026-10-18 00:55:00,267.267 INFO    ] 200
[2026-10-18 00:55:00,270.270 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:55:00,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:55:00,324.324 INFO    ] No update needed
[2026-10-18 00:55:00,326.326 INFO    ] Checking for camera pi updates...
[2026-10-18 00:55:00,360.360 INFO    ] 200
[2026-10-18 00:55:00,362.362 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:55:00,402.402 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:55:10,418.418 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:55:10,454.454 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:55:10,464.464 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:55:10,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:55:10,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:55:10,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:55:12,517.517 INFO    ] ================================================
[2026-10-18 00:55:12,532.532 INFO    ] Launching Daemon at Sun Oct 18 00:55:12 IST 2026
[2026-10-18 00:55:12,543.543 INFO    ] ================================================
[2026-10-18 00:55:13,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:55:13
[2026-10-18 00:55:13,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:55:14,126.126 INFO    ] Initializing speech engine...
[2026-10-18 00:55:14,139.139 INFO    ] 2026-10-18 00:55:14
[2026-10-18 00:55:14,417.417 INFO    ] 2026-10-18 00:55:14
[2026-10-18 00:55:14,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:55:14,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:55:14,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:55:14,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:55:14,958.958 INFO    ] time= 18/10/2026 00:55:14
[2026-10-18 00:55:14,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:55:14,983.983 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:55:15,111.111 INFO    ] No existing commands found in stream
[2026-10-18 00:55:20,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:55:20,131.131 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-18 00:55:22,130.130 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 00:55:22,133.133 INFO    ] Checking for system updates...
[2026-10-18 00:55:22,168.168 INFO    ] 200
[2026-10-18 00:55:22,170.170 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:55:22,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:55:22,227.227 INFO    ] No update needed
[2026-10-18 00:55:22,230.230 INFO    ] Checking for camera pi updates...
[2026-10-18 00:55:22,268.268 INFO    ] 200
[2026-10-18 00:55:22,270.270 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:55:22,310.310 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:55:32,325.325 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:55:32,363.363 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:55:32,373.373 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:55:32,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:55:32,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:55:32,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:55:34,428.428 INFO    ] ================================================
[2026-10-18 00:55:34,443.443 INFO    ] Launching Daemon at Sun Oct 18 00:55:34 IST 2026
[2026-10-18 00:55:34,454.454 INFO    ] ================================================
[2026-10-18 00:55:35,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:55:35
[2026-10-18 00:55:35,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:55:35,881.881 INFO    ] Initializing speech engine...
[2026-10-18 00:55:35,890.890 INFO    ] 2026-10-18 00:55:35
[2026-10-18 00:55:36,140.140 INFO    ] 2026-10-18 00:55:36
[2026-10-18 00:55:36,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:55:36,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:55:36,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:55:36,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:55:36,703.703 INFO    ] time= 18/10/2026 00:55:36
[2026-10-18 00:55:36,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:55:36,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:55:36,880.880 INFO    ] No existing commands found in stream
[2026-10-18 00:55:41,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:55:41,915.915 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-18 00:55:43,303.303 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:55:43,305.305 INFO    ] Checking for system updates...
[2026-10-18 00:55:43,341.341 INFO    ] 200
[2026-10-18 00:55:43,343.343 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:55:43,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:55:43,402.402 INFO    ] No update needed
[2026-10-18 00:55:43,404.404 INFO    ] Checking for camera pi updates...
[2026-10-18 00:55:43,437.437 INFO    ] 200
[2026-10-18 00:55:43,440.440 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:55:43,483.483 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:55:53,498.498 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:55:53,533.533 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:55:53,543.543 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:55:53,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:55:53,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:55:53,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:55:55,596.596 INFO    ] ================================================
[2026-10-18 00:55:55,612.612 INFO    ] Launching Daemon at Sun Oct 18 00:55:55 IST 2026
[2026-10-18 00:55:55,624.624 INFO    ] ================================================
[2026-10-18 00:55:56,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:55:56
[2026-10-18 00:55:56,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:55:57,047.047 INFO    ] Initializing speech engine...
[2026-10-18 00:55:57,056.056 INFO    ] 2026-10-18 00:55:57
[2026-10-18 00:55:57,308.308 INFO    ] 2026-10-18 00:55:57
[2026-10-18 00:55:57,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:55:57,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:55:57,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:55:57,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:55:57,865.865 INFO    ] time= 18/10/2026 00:55:57
[2026-10-18 00:55:57,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:55:57,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:55:58,034.034 INFO    ] No existing commands found in stream
[2026-10-18 00:56:03,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:56:03,059.059 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-18 00:56:06,904.904 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:56:06,907.907 INFO    ] Checking for system updates...
[2026-10-18 00:56:06,942.942 INFO    ] 200
[2026-10-18 00:56:06,945.945 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:56:07,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:56:07,020.020 INFO    ] No update needed
[2026-10-18 00:56:07,022.022 INFO    ] Checking for camera pi updates...
[2026-10-18 00:56:07,059.059 INFO    ] 200
[2026-10-18 00:56:07,062.062 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:56:07,112.112 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:56:17,127.127 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:56:17,161.161 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:56:17,171.171 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:56:17,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:56:17,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:56:17,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:56:19,224.224 INFO    ] ================================================
[2026-10-18 00:56:19,240.240 INFO    ] Launching Daemon at Sun Oct 18 00:56:19 IST 2026
[2026-10-18 00:56:19,252.252 INFO    ] ================================================
[2026-10-18 00:56:19,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:56:19
[2026-10-18 00:56:20,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:56:20,662.662 INFO    ] Initializing speech engine...
[2026-10-18 00:56:20,677.677 INFO    ] 2026-10-18 00:56:20
[2026-10-18 00:56:20,952.952 INFO    ] 2026-10-18 00:56:20
[2026-10-18 00:56:20,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:56:21,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:56:21,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:56:21,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:56:21,459.459 INFO    ] time= 18/10/2026 00:56:21
[2026-10-18 00:56:21,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:56:21,552.552 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:56:21,705.705 INFO    ] No existing commands found in stream
[2026-10-18 00:56:26,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:56:26,738.738 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-18 00:56:27,819.819 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:56:27,823.823 INFO    ] Checking for system updates...
[2026-10-18 00:56:27,867.867 INFO    ] 200
[2026-10-18 00:56:27,871.871 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:56:27,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:56:27,933.933 INFO    ] No update needed
[2026-10-18 00:56:27,936.936 INFO    ] Checking for camera pi updates...
[2026-10-18 00:56:27,971.971 INFO    ] 200
[2026-10-18 00:56:27,974.974 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:56:28,021.021 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:56:38,035.035 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:56:38,069.069 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:56:38,079.079 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:56:38,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:56:38,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:56:38,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:56:40,131.131 INFO    ] ================================================
[2026-10-18 00:56:40,147.147 INFO    ] Launching Daemon at Sun Oct 18 00:56:40 IST 2026
[2026-10-18 00:56:40,159.159 INFO    ] ================================================
[2026-10-18 00:56:40,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:56:40
[2026-10-18 00:56:41,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:56:41,708.708 INFO    ] Initializing speech engine...
[2026-10-18 00:56:41,717.717 INFO    ] 2026-10-18 00:56:41
[2026-10-18 00:56:41,982.982 INFO    ] 2026-10-18 00:56:41
[2026-10-18 00:56:42,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:56:42,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:56:42,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:56:42,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:56:42,543.543 INFO    ] time= 18/10/2026 00:56:42
[2026-10-18 00:56:42,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:56:42,570.570 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:56:42,701.701 INFO    ] No existing commands found in stream
[2026-10-18 00:56:47,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:56:47,717.717 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-18 00:56:50,710.710 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 00:56:50,713.713 INFO    ] Checking for system updates...
[2026-10-18 00:56:50,749.749 INFO    ] 200
[2026-10-18 00:56:50,751.751 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:56:50,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:56:50,809.809 INFO    ] No update needed
[2026-10-18 00:56:50,812.812 INFO    ] Checking for camera pi updates...
[2026-10-18 00:56:50,845.845 INFO    ] 200
[2026-10-18 00:56:50,847.847 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:56:50,887.887 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:57:00,902.902 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:57:00,937.937 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:57:00,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:57:00,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:57:00,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:57:00,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:57:03,001.001 INFO    ] ================================================
[2026-10-18 00:57:03,020.020 INFO    ] Launching Daemon at Sun Oct 18 00:57:03 IST 2026
[2026-10-18 00:57:03,033.033 INFO    ] ================================================
[2026-10-18 00:57:03,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:57:03
[2026-10-18 00:57:04,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:57:04,479.479 INFO    ] Initializing speech engine...
[2026-10-18 00:57:04,484.484 INFO    ] 2026-10-18 00:57:04
[2026-10-18 00:57:04,773.773 INFO    ] 2026-10-18 00:57:04
[2026-10-18 00:57:04,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:57:05,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:57:05,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:57:05,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:57:05,254.254 INFO    ] time= 18/10/2026 00:57:05
[2026-10-18 00:57:05,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:57:05,363.363 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:57:05,524.524 INFO    ] No existing commands found in stream
[2026-10-18 00:57:10,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:57:10,549.549 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-18 00:57:11,686.686 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:57:11,688.688 INFO    ] Checking for system updates...
[2026-10-18 00:57:11,724.724 INFO    ] 200
[2026-10-18 00:57:11,727.727 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:57:11,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:57:11,781.781 INFO    ] No update needed
[2026-10-18 00:57:11,783.783 INFO    ] Checking for camera pi updates...
[2026-10-18 00:57:11,819.819 INFO    ] 200
[2026-10-18 00:57:11,822.822 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:57:11,862.862 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:57:21,877.877 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:57:21,911.911 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:57:21,921.921 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:57:21,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:57:21,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:57:21,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:57:23,973.973 INFO    ] ================================================
[2026-10-18 00:57:23,989.989 INFO    ] Launching Daemon at Sun Oct 18 00:57:23 IST 2026
[2026-10-18 00:57:24,000.000 INFO    ] ================================================
[2026-10-18 00:57:24,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:57:24
[2026-10-18 00:57:25,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:57:25,453.453 INFO    ] Initializing speech engine...
[2026-10-18 00:57:25,462.462 INFO    ] 2026-10-18 00:57:25
[2026-10-18 00:57:25,726.726 INFO    ] 2026-10-18 00:57:25
[2026-10-18 00:57:25,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:57:26,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:57:26,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:57:26,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:57:26,268.268 INFO    ] time= 18/10/2026 00:57:26
[2026-10-18 00:57:26,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:57:26,294.294 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:57:26,423.423 INFO    ] No existing commands found in stream
[2026-10-18 00:57:31,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:57:31,445.445 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-18 00:57:35,822.822 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 00:57:35,825.825 INFO    ] Checking for system updates...
[2026-10-18 00:57:35,861.861 INFO    ] 200
[2026-10-18 00:57:35,864.864 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:57:35,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:57:35,921.921 INFO    ] No update needed
[2026-10-18 00:57:35,923.923 INFO    ] Checking for camera pi updates...
[2026-10-18 00:57:35,957.957 INFO    ] 200
[2026-10-18 00:57:35,959.959 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:57:35,999.999 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:57:46,015.015 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:57:46,051.051 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:57:46,060.060 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:57:46,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:57:46,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:57:46,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:57:48,114.114 INFO    ] ================================================
[2026-10-18 00:57:48,130.130 INFO    ] Launching Daemon at Sun Oct 18 00:57:48 IST 2026
[2026-10-18 00:57:48,143.143 INFO    ] ================================================
[2026-10-18 00:57:48,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:57:48
[2026-10-18 00:57:49,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:57:49,594.594 INFO    ] Initializing speech engine...
[2026-10-18 00:57:49,604.604 INFO    ] 2026-10-18 00:57:49
[2026-10-18 00:57:49,865.865 INFO    ] 2026-10-18 00:57:49
[2026-10-18 00:57:49,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:57:50,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:57:50,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:57:50,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:57:50,344.344 INFO    ] time= 18/10/2026 00:57:50
[2026-10-18 00:57:50,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:57:50,415.415 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:57:50,565.565 INFO    ] No existing commands found in stream
[2026-10-18 00:57:55,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:57:55,587.587 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-18 00:57:57,061.061 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:57:57,064.064 INFO    ] Checking for system updates...
[2026-10-18 00:57:57,103.103 INFO    ] 200
[2026-10-18 00:57:57,106.106 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:57:57,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:57:57,167.167 INFO    ] No update needed
[2026-10-18 00:57:57,169.169 INFO    ] Checking for camera pi updates...
[2026-10-18 00:57:57,203.203 INFO    ] 200
[2026-10-18 00:57:57,205.205 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:57:57,245.245 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:58:07,261.261 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:58:07,296.296 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:58:07,305.305 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:58:07,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:58:07,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:58:07,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:58:09,358.358 INFO    ] ================================================
[2026-10-18 00:58:09,374.374 INFO    ] Launching Daemon at Sun Oct 18 00:58:09 IST 2026
[2026-10-18 00:58:09,384.384 INFO    ] ================================================
[2026-10-18 00:58:09,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:58:09
[2026-10-18 00:58:10,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:58:10,804.804 INFO    ] Initializing speech engine...
[2026-10-18 00:58:10,813.813 INFO    ] 2026-10-18 00:58:10
[2026-10-18 00:58:11,063.063 INFO    ] 2026-10-18 00:58:11
[2026-10-18 00:58:11,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:58:11,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:58:11,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:58:11,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:58:11,774.774 INFO    ] time= 18/10/2026 00:58:11
[2026-10-18 00:58:11,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:58:11,867.867 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:58:11,990.990 INFO    ] No existing commands found in stream
[2026-10-18 00:58:17,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:58:17,018.018 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-18 00:58:20,549.549 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:58:20,552.552 INFO    ] Checking for system updates...
[2026-10-18 00:58:20,590.590 INFO    ] 200
[2026-10-18 00:58:20,593.593 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:58:20,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:58:20,649.649 INFO    ] No update needed
[2026-10-18 00:58:20,652.652 INFO    ] Checking for camera pi updates...
[2026-10-18 00:58:20,685.685 INFO    ] 200
[2026-10-18 00:58:20,688.688 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:58:20,728.728 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:58:30,743.743 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:58:30,779.779 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:58:30,789.789 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:58:30,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:58:30,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:58:30,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:58:32,844.844 INFO    ] ================================================
[2026-10-18 00:58:32,861.861 INFO    ] Launching Daemon at Sun Oct 18 00:58:32 IST 2026
[2026-10-18 00:58:32,872.872 INFO    ] ================================================
[2026-10-18 00:58:33,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:58:33
[2026-10-18 00:58:34,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:58:34,298.298 INFO    ] Initializing speech engine...
[2026-10-18 00:58:34,303.303 INFO    ] 2026-10-18 00:58:34
[2026-10-18 00:58:34,551.551 INFO    ] 2026-10-18 00:58:34
[2026-10-18 00:58:34,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:58:34,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:58:34,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:58:34,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:58:35,025.025 INFO    ] time= 18/10/2026 00:58:34
[2026-10-18 00:58:35,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:58:35,124.124 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:58:35,279.279 INFO    ] No existing commands found in stream
[2026-10-18 00:58:40,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:58:40,299.299 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-18 00:58:42,428.428 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 00:58:42,431.431 INFO    ] Checking for system updates...
[2026-10-18 00:58:42,469.469 INFO    ] 200
[2026-10-18 00:58:42,471.471 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:58:42,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:58:42,526.526 INFO    ] No update needed
[2026-10-18 00:58:42,529.529 INFO    ] Checking for camera pi updates...
[2026-10-18 00:58:42,565.565 INFO    ] 200
[2026-10-18 00:58:42,568.568 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:58:42,612.612 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:58:52,628.628 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:58:52,668.668 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:58:52,678.678 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:58:52,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:58:52,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:58:52,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:58:54,730.730 INFO    ] ================================================
[2026-10-18 00:58:54,746.746 INFO    ] Launching Daemon at Sun Oct 18 00:58:54 IST 2026
[2026-10-18 00:58:54,757.757 INFO    ] ================================================
[2026-10-18 00:58:55,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:58:55
[2026-10-18 00:58:55,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:58:56,244.244 INFO    ] Initializing speech engine...
[2026-10-18 00:58:56,250.250 INFO    ] 2026-10-18 00:58:56
[2026-10-18 00:58:56,525.525 INFO    ] 2026-10-18 00:58:56
[2026-10-18 00:58:56,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:58:56,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:58:56,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:58:57,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:58:57,092.092 INFO    ] time= 18/10/2026 00:58:57
[2026-10-18 00:58:57,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:58:57,117.117 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:58:57,251.251 INFO    ] No existing commands found in stream
[2026-10-18 00:59:02,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:59:02,270.270 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-18 00:59:06,031.031 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 00:59:06,033.033 INFO    ] Checking for system updates...
[2026-10-18 00:59:06,072.072 INFO    ] 200
[2026-10-18 00:59:06,075.075 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:59:06,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 00:59:06,136.136 INFO    ] No update needed
[2026-10-18 00:59:06,138.138 INFO    ] Checking for camera pi updates...
[2026-10-18 00:59:06,172.172 INFO    ] 200
[2026-10-18 00:59:06,175.175 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:59:06,215.215 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:59:16,228.228 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:59:16,264.264 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:59:16,273.273 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:59:16,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:59:16,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:59:16,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:59:18,327.327 INFO    ] ================================================
[2026-10-18 00:59:18,343.343 INFO    ] Launching Daemon at Sun Oct 18 00:59:18 IST 2026
[2026-10-18 00:59:18,354.354 INFO    ] ================================================
[2026-10-18 00:59:18,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:59:18
[2026-10-18 00:59:19,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:59:19,811.811 INFO    ] Initializing speech engine...
[2026-10-18 00:59:19,818.818 INFO    ] 2026-10-18 00:59:19
[2026-10-18 00:59:20,078.078 INFO    ] 2026-10-18 00:59:20
[2026-10-18 00:59:20,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:59:20,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:59:20,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:59:20,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:59:20,572.572 INFO    ] time= 18/10/2026 00:59:20
[2026-10-18 00:59:20,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:59:20,630.630 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:59:20,777.777 INFO    ] No existing commands found in stream
[2026-10-18 00:59:25,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:59:25,799.799 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-18 00:59:28,650.650 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:59:28,653.653 INFO    ] Checking for system updates...
[2026-10-18 00:59:28,693.693 INFO    ] 200
[2026-10-18 00:59:28,695.695 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:59:28,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:59:28,750.750 INFO    ] No update needed
[2026-10-18 00:59:28,752.752 INFO    ] Checking for camera pi updates...
[2026-10-18 00:59:28,786.786 INFO    ] 200
[2026-10-18 00:59:28,789.789 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:59:28,829.829 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 00:59:38,844.844 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 00:59:38,880.880 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 00:59:38,890.890 INFO    ] Script finished. Safe exiting...
[2026-10-18 00:59:38,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 00:59:38,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 00:59:38,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 00:59:40,943.943 INFO    ] ================================================
[2026-10-18 00:59:40,958.958 INFO    ] Launching Daemon at Sun Oct 18 00:59:40 IST 2026
[2026-10-18 00:59:40,969.969 INFO    ] ================================================
[2026-10-18 00:59:41,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 00:59:41
[2026-10-18 00:59:42,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 00:59:42,392.392 INFO    ] Initializing speech engine...
[2026-10-18 00:59:42,401.401 INFO    ] 2026-10-18 00:59:42
[2026-10-18 00:59:42,647.647 INFO    ] 2026-10-18 00:59:42
[2026-10-18 00:59:42,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 00:59:42,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 00:59:42,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 00:59:43,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 00:59:43,200.200 INFO    ] time= 18/10/2026 00:59:43
[2026-10-18 00:59:43,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 00:59:43,225.225 INFO    ] Checking for existing commands in stream...
[2026-10-18 00:59:43,357.357 INFO    ] No existing commands found in stream
[2026-10-18 00:59:48,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 00:59:48,382.382 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-18 00:59:52,854.854 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 00:59:52,858.858 INFO    ] Checking for system updates...
[2026-10-18 00:59:52,900.900 INFO    ] 200
[2026-10-18 00:59:52,903.903 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:59:52,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 00:59:52,973.973 INFO    ] No update needed
[2026-10-18 00:59:52,976.976 INFO    ] Checking for camera pi updates...
[2026-10-18 00:59:53,013.013 INFO    ] 200
[2026-10-18 00:59:53,016.016 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 00:59:53,061.061 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:00:03,077.077 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:00:03,239.239 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:00:03,271.271 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:00:03,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:00:03,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:00:03,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:00:05,429.429 INFO    ] ================================================
[2026-10-18 01:00:05,468.468 INFO    ] Launching Daemon at Sun Oct 18 01:00:05 IST 2026
[2026-10-18 01:00:05,508.508 INFO    ] ================================================
[2026-10-18 01:00:06,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:00:06
[2026-10-18 01:00:06,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:00:07,192.192 INFO    ] Initializing speech engine...
[2026-10-18 01:00:07,202.202 INFO    ] 2026-10-18 01:00:07
[2026-10-18 01:00:07,463.463 INFO    ] 2026-10-18 01:00:07
[2026-10-18 01:00:07,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:00:07,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:00:07,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:00:07,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:00:08,004.004 INFO    ] time= 18/10/2026 01:00:07
[2026-10-18 01:00:08,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:00:08,030.030 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:00:08,160.160 INFO    ] No existing commands found in stream
[2026-10-18 01:00:13,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:00:13,175.175 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-18 01:00:16,718.718 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:00:16,721.721 INFO    ] Checking for system updates...
[2026-10-18 01:00:16,757.757 INFO    ] 200
[2026-10-18 01:00:16,759.759 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:00:16,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:00:16,813.813 INFO    ] No update needed
[2026-10-18 01:00:16,816.816 INFO    ] Checking for camera pi updates...
[2026-10-18 01:00:16,853.853 INFO    ] 200
[2026-10-18 01:00:16,856.856 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:00:16,896.896 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:00:26,911.911 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:00:26,947.947 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:00:26,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:00:26,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:00:26,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:00:26,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:00:29,010.010 INFO    ] ================================================
[2026-10-18 01:00:29,026.026 INFO    ] Launching Daemon at Sun Oct 18 01:00:29 IST 2026
[2026-10-18 01:00:29,038.038 INFO    ] ================================================
[2026-10-18 01:00:29,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:00:29
[2026-10-18 01:00:30,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:00:30,457.457 INFO    ] Initializing speech engine...
[2026-10-18 01:00:30,466.466 INFO    ] 2026-10-18 01:00:30
[2026-10-18 01:00:30,724.724 INFO    ] 2026-10-18 01:00:30
[2026-10-18 01:00:30,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:00:31,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:00:31,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:00:31,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:00:31,220.220 INFO    ] time= 18/10/2026 01:00:31
[2026-10-18 01:00:31,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:00:31,289.289 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:00:31,438.438 INFO    ] No existing commands found in stream
[2026-10-18 01:00:36,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:00:36,456.456 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-18 01:00:39,445.445 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:00:40,550.550 INFO    ] Checking for system updates...
[2026-10-18 01:00:40,592.592 INFO    ] 200
[2026-10-18 01:00:40,595.595 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:00:40,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:00:40,649.649 INFO    ] No update needed
[2026-10-18 01:00:40,652.652 INFO    ] Checking for camera pi updates...
[2026-10-18 01:00:40,686.686 INFO    ] 200
[2026-10-18 01:00:40,688.688 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:00:40,734.734 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:00:50,748.748 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:00:50,783.783 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:00:50,792.792 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:00:50,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:00:50,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:00:50,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:00:52,847.847 INFO    ] ================================================
[2026-10-18 01:00:52,863.863 INFO    ] Launching Daemon at Sun Oct 18 01:00:52 IST 2026
[2026-10-18 01:00:52,875.875 INFO    ] ================================================
[2026-10-18 01:00:53,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:00:53
[2026-10-18 01:00:54,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:00:54,525.525 INFO    ] Initializing speech engine...
[2026-10-18 01:00:54,536.536 INFO    ] 2026-10-18 01:00:54
[2026-10-18 01:00:54,853.853 INFO    ] 2026-10-18 01:00:54
[2026-10-18 01:00:54,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:00:55,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:00:55,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:00:55,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:00:55,408.408 INFO    ] time= 18/10/2026 01:00:55
[2026-10-18 01:00:55,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:00:55,479.479 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:00:55,614.614 INFO    ] No existing commands found in stream
[2026-10-18 01:01:00,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:01:00,765.765 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-18 01:01:03,533.533 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:01:03,536.536 INFO    ] Checking for system updates...
[2026-10-18 01:01:03,571.571 INFO    ] 200
[2026-10-18 01:01:03,574.574 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:01:03,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:01:03,628.628 INFO    ] No update needed
[2026-10-18 01:01:03,631.631 INFO    ] Checking for camera pi updates...
[2026-10-18 01:01:03,669.669 INFO    ] 200
[2026-10-18 01:01:03,671.671 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:01:03,717.717 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:01:13,733.733 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:01:13,767.767 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:01:13,777.777 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:01:13,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:01:13,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:01:13,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:01:15,829.829 INFO    ] ================================================
[2026-10-18 01:01:15,845.845 INFO    ] Launching Daemon at Sun Oct 18 01:01:15 IST 2026
[2026-10-18 01:01:15,856.856 INFO    ] ================================================
[2026-10-18 01:01:16,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:01:16
[2026-10-18 01:01:17,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:01:17,489.489 INFO    ] Initializing speech engine...
[2026-10-18 01:01:17,501.501 INFO    ] 2026-10-18 01:01:17
[2026-10-18 01:01:17,810.810 INFO    ] 2026-10-18 01:01:17
[2026-10-18 01:01:17,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:01:18,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:01:18,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:01:18,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:01:18,329.329 INFO    ] time= 18/10/2026 01:01:18
[2026-10-18 01:01:18,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:01:18,367.367 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:01:18,497.497 INFO    ] No existing commands found in stream
[2026-10-18 01:01:23,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:01:23,531.531 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-18 01:01:27,286.286 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:01:27,289.289 INFO    ] Checking for system updates...
[2026-10-18 01:01:27,327.327 INFO    ] 200
[2026-10-18 01:01:27,329.329 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:01:27,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:01:27,385.385 INFO    ] No update needed
[2026-10-18 01:01:27,388.388 INFO    ] Checking for camera pi updates...
[2026-10-18 01:01:27,422.422 INFO    ] 200
[2026-10-18 01:01:27,425.425 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:01:27,467.467 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:01:37,483.483 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:01:37,518.518 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:01:37,528.528 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:01:37,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:01:37,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:01:37,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:01:39,581.581 INFO    ] ================================================
[2026-10-18 01:01:39,597.597 INFO    ] Launching Daemon at Sun Oct 18 01:01:39 IST 2026
[2026-10-18 01:01:39,608.608 INFO    ] ================================================
[2026-10-18 01:01:40,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:01:40
[2026-10-18 01:01:40,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:01:41,239.239 INFO    ] Initializing speech engine...
[2026-10-18 01:01:41,250.250 INFO    ] 2026-10-18 01:01:41
[2026-10-18 01:01:41,518.518 INFO    ] 2026-10-18 01:01:41
[2026-10-18 01:01:41,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:01:41,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:01:41,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:01:42,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:01:42,096.096 INFO    ] time= 18/10/2026 01:01:42
[2026-10-18 01:01:42,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:01:42,122.122 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:01:42,250.250 INFO    ] No existing commands found in stream
[2026-10-18 01:01:47,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:01:47,271.271 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-18 01:01:50,272.272 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:01:50,275.275 INFO    ] Checking for system updates...
[2026-10-18 01:01:50,310.310 INFO    ] 200
[2026-10-18 01:01:50,313.313 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:01:50,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:01:50,367.367 INFO    ] No update needed
[2026-10-18 01:01:50,370.370 INFO    ] Checking for camera pi updates...
[2026-10-18 01:01:50,403.403 INFO    ] 200
[2026-10-18 01:01:50,406.406 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:01:50,451.451 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:02:00,465.465 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:02:00,500.500 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:02:00,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:02:00,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:02:00,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:02:00,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:02:02,571.571 INFO    ] ================================================
[2026-10-18 01:02:02,598.598 INFO    ] Launching Daemon at Sun Oct 18 01:02:02 IST 2026
[2026-10-18 01:02:02,614.614 INFO    ] ================================================
[2026-10-18 01:02:03,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:02:03
[2026-10-18 01:02:04,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:02:04,361.361 INFO    ] Initializing speech engine...
[2026-10-18 01:02:04,369.369 INFO    ] 2026-10-18 01:02:04
[2026-10-18 01:02:04,693.693 INFO    ] 2026-10-18 01:02:04
[2026-10-18 01:02:04,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:02:04,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:02:04,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:02:05,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:02:05,214.214 INFO    ] time= 18/10/2026 01:02:05
[2026-10-18 01:02:05,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:02:05,240.240 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:02:05,373.373 INFO    ] No existing commands found in stream
[2026-10-18 01:02:10,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:02:10,406.406 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-18 01:02:14,090.090 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:02:14,093.093 INFO    ] Checking for system updates...
[2026-10-18 01:02:14,130.130 INFO    ] 200
[2026-10-18 01:02:14,133.133 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:02:14,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:02:14,189.189 INFO    ] No update needed
[2026-10-18 01:02:14,191.191 INFO    ] Checking for camera pi updates...
[2026-10-18 01:02:14,232.232 INFO    ] 200
[2026-10-18 01:02:14,235.235 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:02:14,288.288 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:02:24,304.304 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:02:24,339.339 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:02:24,348.348 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:02:24,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:02:24,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:02:24,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:02:26,400.400 INFO    ] ================================================
[2026-10-18 01:02:26,417.417 INFO    ] Launching Daemon at Sun Oct 18 01:02:26 IST 2026
[2026-10-18 01:02:26,428.428 INFO    ] ================================================
[2026-10-18 01:02:27,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:02:27
[2026-10-18 01:02:27,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:02:27,896.896 INFO    ] Initializing speech engine...
[2026-10-18 01:02:27,905.905 INFO    ] 2026-10-18 01:02:27
[2026-10-18 01:02:28,161.161 INFO    ] 2026-10-18 01:02:28
[2026-10-18 01:02:28,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:02:28,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:02:28,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:02:28,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:02:28,623.623 INFO    ] time= 18/10/2026 01:02:28
[2026-10-18 01:02:28,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:02:28,709.709 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:02:28,851.851 INFO    ] No existing commands found in stream
[2026-10-18 01:02:33,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:02:33,870.870 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-18 01:02:35,782.782 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 01:02:35,784.784 INFO    ] Checking for system updates...
[2026-10-18 01:02:35,820.820 INFO    ] 200
[2026-10-18 01:02:35,823.823 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:02:35,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:02:35,877.877 INFO    ] No update needed
[2026-10-18 01:02:35,880.880 INFO    ] Checking for camera pi updates...
[2026-10-18 01:02:35,913.913 INFO    ] 200
[2026-10-18 01:02:35,916.916 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:02:35,955.955 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:02:45,971.971 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:02:46,006.006 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:02:46,015.015 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:02:46,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:02:46,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:02:46,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:02:48,067.067 INFO    ] ================================================
[2026-10-18 01:02:48,083.083 INFO    ] Launching Daemon at Sun Oct 18 01:02:48 IST 2026
[2026-10-18 01:02:48,094.094 INFO    ] ================================================
[2026-10-18 01:02:48,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:02:48
[2026-10-18 01:02:49,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:02:49,520.520 INFO    ] Initializing speech engine...
[2026-10-18 01:02:49,529.529 INFO    ] 2026-10-18 01:02:49
[2026-10-18 01:02:49,794.794 INFO    ] 2026-10-18 01:02:49
[2026-10-18 01:02:49,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:02:50,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:02:50,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:02:50,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:02:50,181.181 INFO    ] time= 18/10/2026 01:02:50
[2026-10-18 01:02:50,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:02:50,224.224 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:02:50,308.308 INFO    ] No existing commands found in stream
[2026-10-18 01:02:55,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:02:55,323.323 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-18 01:02:58,402.402 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:02:58,405.405 INFO    ] Checking for system updates...
[2026-10-18 01:02:58,445.445 INFO    ] 200
[2026-10-18 01:02:58,448.448 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:02:58,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:02:58,503.503 INFO    ] No update needed
[2026-10-18 01:02:58,506.506 INFO    ] Checking for camera pi updates...
[2026-10-18 01:02:58,539.539 INFO    ] 200
[2026-10-18 01:02:58,542.542 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:02:58,582.582 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:03:08,596.596 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:03:08,630.630 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:03:08,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:03:08,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:03:08,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:03:08,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:03:10,692.692 INFO    ] ================================================
[2026-10-18 01:03:10,708.708 INFO    ] Launching Daemon at Sun Oct 18 01:03:10 IST 2026
[2026-10-18 01:03:10,720.720 INFO    ] ================================================
[2026-10-18 01:03:11,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:03:11
[2026-10-18 01:03:11,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:03:12,144.144 INFO    ] Initializing speech engine...
[2026-10-18 01:03:12,153.153 INFO    ] 2026-10-18 01:03:12
[2026-10-18 01:03:12,403.403 INFO    ] 2026-10-18 01:03:12
[2026-10-18 01:03:12,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:03:12,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:03:12,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:03:12,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:03:12,909.909 INFO    ] time= 18/10/2026 01:03:12
[2026-10-18 01:03:12,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:03:12,983.983 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:03:13,129.129 INFO    ] No existing commands found in stream
[2026-10-18 01:03:18,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:03:18,146.146 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-18 01:03:18,759.759 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:03:18,761.761 INFO    ] Checking for system updates...
[2026-10-18 01:03:18,797.797 INFO    ] 200
[2026-10-18 01:03:18,799.799 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:03:18,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:03:18,854.854 INFO    ] No update needed
[2026-10-18 01:03:18,857.857 INFO    ] Checking for camera pi updates...
[2026-10-18 01:03:18,895.895 INFO    ] 200
[2026-10-18 01:03:18,897.897 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:03:18,945.945 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:03:28,960.960 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:03:28,995.995 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:03:29,004.004 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:03:29,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:03:29,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:03:29,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:03:31,059.059 INFO    ] ================================================
[2026-10-18 01:03:31,074.074 INFO    ] Launching Daemon at Sun Oct 18 01:03:31 IST 2026
[2026-10-18 01:03:31,085.085 INFO    ] ================================================
[2026-10-18 01:03:31,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:03:31
[2026-10-18 01:03:32,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:03:32,589.589 INFO    ] Initializing speech engine...
[2026-10-18 01:03:32,596.596 INFO    ] 2026-10-18 01:03:32
[2026-10-18 01:03:32,869.869 INFO    ] 2026-10-18 01:03:32
[2026-10-18 01:03:32,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:03:33,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:03:33,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:03:33,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:03:33,350.350 INFO    ] time= 18/10/2026 01:03:33
[2026-10-18 01:03:33,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:03:33,459.459 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:03:33,627.627 INFO    ] No existing commands found in stream
[2026-10-18 01:03:38,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:03:38,667.667 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-18 01:03:40,065.065 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:03:40,069.069 INFO    ] Checking for system updates...
[2026-10-18 01:03:40,106.106 INFO    ] 200
[2026-10-18 01:03:40,109.109 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:03:40,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:03:40,165.165 INFO    ] No update needed
[2026-10-18 01:03:40,168.168 INFO    ] Checking for camera pi updates...
[2026-10-18 01:03:40,206.206 INFO    ] 200
[2026-10-18 01:03:40,209.209 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:03:40,255.255 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:03:50,270.270 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:03:50,304.304 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:03:50,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:03:50,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:03:50,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:03:50,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:03:52,368.368 INFO    ] ================================================
[2026-10-18 01:03:52,384.384 INFO    ] Launching Daemon at Sun Oct 18 01:03:52 IST 2026
[2026-10-18 01:03:52,395.395 INFO    ] ================================================
[2026-10-18 01:03:52,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:03:52
[2026-10-18 01:03:53,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:03:53,822.822 INFO    ] Initializing speech engine...
[2026-10-18 01:03:53,836.836 INFO    ] 2026-10-18 01:03:53
[2026-10-18 01:03:54,082.082 INFO    ] 2026-10-18 01:03:54
[2026-10-18 01:03:54,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:03:54,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:03:54,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:03:54,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:03:54,638.638 INFO    ] time= 18/10/2026 01:03:54
[2026-10-18 01:03:54,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:03:54,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:03:54,793.793 INFO    ] No existing commands found in stream
[2026-10-18 01:03:59,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:03:59,811.811 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-18 01:04:02,913.913 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:04:02,916.916 INFO    ] Checking for system updates...
[2026-10-18 01:04:02,963.963 INFO    ] 200
[2026-10-18 01:04:02,967.967 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:04:03,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:04:03,042.042 INFO    ] No update needed
[2026-10-18 01:04:03,045.045 INFO    ] Checking for camera pi updates...
[2026-10-18 01:04:03,090.090 INFO    ] 200
[2026-10-18 01:04:03,094.094 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:04:03,150.150 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:04:13,167.167 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:04:13,201.201 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:04:13,211.211 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:04:13,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:04:13,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:04:13,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:04:15,264.264 INFO    ] ================================================
[2026-10-18 01:04:15,280.280 INFO    ] Launching Daemon at Sun Oct 18 01:04:15 IST 2026
[2026-10-18 01:04:15,291.291 INFO    ] ================================================
[2026-10-18 01:04:15,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:04:15
[2026-10-18 01:04:16,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:04:16,746.746 INFO    ] Initializing speech engine...
[2026-10-18 01:04:16,755.755 INFO    ] 2026-10-18 01:04:16
[2026-10-18 01:04:17,017.017 INFO    ] 2026-10-18 01:04:17
[2026-10-18 01:04:17,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:04:17,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:04:17,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:04:17,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:04:17,495.495 INFO    ] time= 18/10/2026 01:04:17
[2026-10-18 01:04:17,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:04:17,590.590 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:04:17,727.727 INFO    ] No existing commands found in stream
[2026-10-18 01:04:22,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:04:22,755.755 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-18 01:04:24,171.171 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:04:24,174.174 INFO    ] Checking for system updates...
[2026-10-18 01:04:24,209.209 INFO    ] 200
[2026-10-18 01:04:24,211.211 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:04:24,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:04:24,273.273 INFO    ] No update needed
[2026-10-18 01:04:24,275.275 INFO    ] Checking for camera pi updates...
[2026-10-18 01:04:24,308.308 INFO    ] 200
[2026-10-18 01:04:24,311.311 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:04:24,355.355 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:04:34,367.367 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:04:34,402.402 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:04:34,411.411 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:04:34,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:04:34,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:04:34,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:04:36,465.465 INFO    ] ================================================
[2026-10-18 01:04:36,482.482 INFO    ] Launching Daemon at Sun Oct 18 01:04:36 IST 2026
[2026-10-18 01:04:36,494.494 INFO    ] ================================================
[2026-10-18 01:04:37,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:04:37
[2026-10-18 01:04:37,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:04:37,935.935 INFO    ] Initializing speech engine...
[2026-10-18 01:04:37,947.947 INFO    ] 2026-10-18 01:04:37
[2026-10-18 01:04:38,209.209 INFO    ] 2026-10-18 01:04:38
[2026-10-18 01:04:38,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:04:38,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:04:38,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:04:38,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:04:38,756.756 INFO    ] time= 18/10/2026 01:04:38
[2026-10-18 01:04:38,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:04:38,796.796 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:04:38,919.919 INFO    ] No existing commands found in stream
[2026-10-18 01:04:43,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:04:43,951.951 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-18 01:04:46,831.831 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:04:46,833.833 INFO    ] Checking for system updates...
[2026-10-18 01:04:46,873.873 INFO    ] 200
[2026-10-18 01:04:46,876.876 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:04:46,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:04:46,938.938 INFO    ] No update needed
[2026-10-18 01:04:46,941.941 INFO    ] Checking for camera pi updates...
[2026-10-18 01:04:46,974.974 INFO    ] 200
[2026-10-18 01:04:46,977.977 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:04:47,017.017 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:04:57,033.033 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:04:57,069.069 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:04:57,079.079 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:04:57,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:04:57,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:04:57,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:04:59,133.133 INFO    ] ================================================
[2026-10-18 01:04:59,150.150 INFO    ] Launching Daemon at Sun Oct 18 01:04:59 IST 2026
[2026-10-18 01:04:59,161.161 INFO    ] ================================================
[2026-10-18 01:04:59,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:04:59
[2026-10-18 01:05:00,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:05:00,572.572 INFO    ] Initializing speech engine...
[2026-10-18 01:05:00,580.580 INFO    ] 2026-10-18 01:05:00
[2026-10-18 01:05:00,890.890 INFO    ] 2026-10-18 01:05:00
[2026-10-18 01:05:00,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:05:01,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:05:01,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:05:01,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:05:01,331.331 INFO    ] time= 18/10/2026 01:05:01
[2026-10-18 01:05:01,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:05:01,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:05:01,426.426 INFO    ] No existing commands found in stream
[2026-10-18 01:05:06,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:05:06,445.445 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-18 01:05:09,308.308 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:05:09,311.311 INFO    ] Checking for system updates...
[2026-10-18 01:05:09,347.347 INFO    ] 200
[2026-10-18 01:05:09,350.350 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:05:09,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:05:09,410.410 INFO    ] No update needed
[2026-10-18 01:05:09,412.412 INFO    ] Checking for camera pi updates...
[2026-10-18 01:05:09,447.447 INFO    ] 200
[2026-10-18 01:05:09,449.449 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:05:09,494.494 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:05:19,509.509 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:05:19,544.544 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:05:19,553.553 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:05:19,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:05:19,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:05:19,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:05:21,606.606 INFO    ] ================================================
[2026-10-18 01:05:21,621.621 INFO    ] Launching Daemon at Sun Oct 18 01:05:21 IST 2026
[2026-10-18 01:05:21,633.633 INFO    ] ================================================
[2026-10-18 01:05:22,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:05:22
[2026-10-18 01:05:22,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:05:23,056.056 INFO    ] Initializing speech engine...
[2026-10-18 01:05:23,064.064 INFO    ] 2026-10-18 01:05:23
[2026-10-18 01:05:23,310.310 INFO    ] 2026-10-18 01:05:23
[2026-10-18 01:05:23,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:05:23,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:05:23,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:05:23,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:05:23,862.862 INFO    ] time= 18/10/2026 01:05:23
[2026-10-18 01:05:23,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:05:23,887.887 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:05:24,016.016 INFO    ] No existing commands found in stream
[2026-10-18 01:05:29,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:05:29,031.031 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-18 01:05:32,588.588 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:05:32,591.591 INFO    ] Checking for system updates...
[2026-10-18 01:05:32,631.631 INFO    ] 200
[2026-10-18 01:05:32,634.634 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:05:32,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:05:32,699.699 INFO    ] No update needed
[2026-10-18 01:05:32,702.702 INFO    ] Checking for camera pi updates...
[2026-10-18 01:05:32,741.741 INFO    ] 200
[2026-10-18 01:05:32,744.744 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:05:32,792.792 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:05:42,807.807 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:05:42,845.845 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:05:42,856.856 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:05:42,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:05:42,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:05:42,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:05:44,911.911 INFO    ] ================================================
[2026-10-18 01:05:44,927.927 INFO    ] Launching Daemon at Sun Oct 18 01:05:44 IST 2026
[2026-10-18 01:05:44,938.938 INFO    ] ================================================
[2026-10-18 01:05:45,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:05:45
[2026-10-18 01:05:46,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:05:46,519.519 INFO    ] Initializing speech engine...
[2026-10-18 01:05:46,528.528 INFO    ] 2026-10-18 01:05:46
[2026-10-18 01:05:46,796.796 INFO    ] 2026-10-18 01:05:46
[2026-10-18 01:05:46,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:05:47,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:05:47,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:05:47,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:05:47,341.341 INFO    ] time= 18/10/2026 01:05:47
[2026-10-18 01:05:47,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:05:47,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:05:47,508.508 INFO    ] No existing commands found in stream
[2026-10-18 01:05:52,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:05:52,543.543 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-18 01:05:53,837.837 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:05:53,840.840 INFO    ] Checking for system updates...
[2026-10-18 01:05:53,878.878 INFO    ] 200
[2026-10-18 01:05:53,880.880 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:05:53,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:05:53,942.942 INFO    ] No update needed
[2026-10-18 01:05:53,944.944 INFO    ] Checking for camera pi updates...
[2026-10-18 01:05:53,979.979 INFO    ] 200
[2026-10-18 01:05:53,982.982 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:05:54,027.027 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:06:04,041.041 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:06:04,081.081 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:06:04,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:06:04,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:06:04,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:06:04,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:06:06,146.146 INFO    ] ================================================
[2026-10-18 01:06:06,169.169 INFO    ] Launching Daemon at Sun Oct 18 01:06:06 IST 2026
[2026-10-18 01:06:06,180.180 INFO    ] ================================================
[2026-10-18 01:06:06,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:06:06
[2026-10-18 01:06:07,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:06:07,594.594 INFO    ] Initializing speech engine...
[2026-10-18 01:06:07,612.612 INFO    ] 2026-10-18 01:06:07
[2026-10-18 01:06:07,864.864 INFO    ] 2026-10-18 01:06:07
[2026-10-18 01:06:07,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:06:08,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:06:08,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:06:08,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:06:08,370.370 INFO    ] time= 18/10/2026 01:06:08
[2026-10-18 01:06:08,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:06:08,444.444 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:06:08,566.566 INFO    ] No existing commands found in stream
[2026-10-18 01:06:13,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:06:13,600.600 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-18 01:06:14,620.620 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:06:14,622.622 INFO    ] Checking for system updates...
[2026-10-18 01:06:14,663.663 INFO    ] 200
[2026-10-18 01:06:14,666.666 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:06:14,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:06:14,729.729 INFO    ] No update needed
[2026-10-18 01:06:14,732.732 INFO    ] Checking for camera pi updates...
[2026-10-18 01:06:14,770.770 INFO    ] 200
[2026-10-18 01:06:14,773.773 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:06:14,815.815 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:06:24,832.832 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:06:24,872.872 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:06:24,883.883 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:06:24,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:06:24,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:06:24,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:06:26,943.943 INFO    ] ================================================
[2026-10-18 01:06:26,960.960 INFO    ] Launching Daemon at Sun Oct 18 01:06:26 IST 2026
[2026-10-18 01:06:26,972.972 INFO    ] ================================================
[2026-10-18 01:06:27,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:06:27
[2026-10-18 01:06:28,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:06:28,452.452 INFO    ] Initializing speech engine...
[2026-10-18 01:06:28,461.461 INFO    ] 2026-10-18 01:06:28
[2026-10-18 01:06:28,756.756 INFO    ] 2026-10-18 01:06:28
[2026-10-18 01:06:28,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:06:29,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:06:29,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:06:29,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:06:29,331.331 INFO    ] time= 18/10/2026 01:06:29
[2026-10-18 01:06:29,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:06:29,368.368 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:06:29,522.522 INFO    ] No existing commands found in stream
[2026-10-18 01:06:34,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:06:34,550.550 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-18 01:06:36,807.807 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:06:36,809.809 INFO    ] Checking for system updates...
[2026-10-18 01:06:36,850.850 INFO    ] 200
[2026-10-18 01:06:36,853.853 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:06:36,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:06:36,909.909 INFO    ] No update needed
[2026-10-18 01:06:36,912.912 INFO    ] Checking for camera pi updates...
[2026-10-18 01:06:36,945.945 INFO    ] 200
[2026-10-18 01:06:36,947.947 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:06:36,992.992 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:06:47,008.008 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:06:47,043.043 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:06:47,053.053 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:06:47,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:06:47,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:06:47,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:06:49,107.107 INFO    ] ================================================
[2026-10-18 01:06:49,123.123 INFO    ] Launching Daemon at Sun Oct 18 01:06:49 IST 2026
[2026-10-18 01:06:49,134.134 INFO    ] ================================================
[2026-10-18 01:06:49,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:06:49
[2026-10-18 01:06:50,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:06:50,587.587 INFO    ] Initializing speech engine...
[2026-10-18 01:06:50,592.592 INFO    ] 2026-10-18 01:06:50
[2026-10-18 01:06:50,853.853 INFO    ] 2026-10-18 01:06:50
[2026-10-18 01:06:50,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:06:51,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:06:51,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:06:51,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:06:51,378.378 INFO    ] time= 18/10/2026 01:06:51
[2026-10-18 01:06:51,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:06:51,416.416 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:06:51,548.548 INFO    ] No existing commands found in stream
[2026-10-18 01:06:56,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:06:56,565.565 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-18 01:06:59,178.178 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:06:59,181.181 INFO    ] Checking for system updates...
[2026-10-18 01:06:59,218.218 INFO    ] 200
[2026-10-18 01:06:59,220.220 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:06:59,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:06:59,282.282 INFO    ] No update needed
[2026-10-18 01:06:59,284.284 INFO    ] Checking for camera pi updates...
[2026-10-18 01:06:59,318.318 INFO    ] 200
[2026-10-18 01:06:59,320.320 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:06:59,360.360 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:07:09,374.374 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:07:09,410.410 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:07:09,420.420 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:07:09,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:07:09,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:07:09,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:07:11,474.474 INFO    ] ================================================
[2026-10-18 01:07:11,491.491 INFO    ] Launching Daemon at Sun Oct 18 01:07:11 IST 2026
[2026-10-18 01:07:11,507.507 INFO    ] ================================================
[2026-10-18 01:07:12,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:07:12
[2026-10-18 01:07:12,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:07:13,140.140 INFO    ] Initializing speech engine...
[2026-10-18 01:07:13,147.147 INFO    ] 2026-10-18 01:07:13
[2026-10-18 01:07:13,420.420 INFO    ] 2026-10-18 01:07:13
[2026-10-18 01:07:13,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:07:13,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:07:13,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:07:13,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:07:13,968.968 INFO    ] time= 18/10/2026 01:07:13
[2026-10-18 01:07:13,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:07:13,993.993 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:07:14,126.126 INFO    ] No existing commands found in stream
[2026-10-18 01:07:19,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:07:19,157.157 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-18 01:07:23,247.247 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 01:07:23,250.250 INFO    ] Checking for system updates...
[2026-10-18 01:07:23,287.287 INFO    ] 200
[2026-10-18 01:07:23,289.289 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:07:23,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:07:23,343.343 INFO    ] No update needed
[2026-10-18 01:07:23,345.345 INFO    ] Checking for camera pi updates...
[2026-10-18 01:07:23,379.379 INFO    ] 200
[2026-10-18 01:07:23,381.381 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:07:23,426.426 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:07:33,438.438 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:07:33,473.473 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:07:33,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:07:33,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:07:33,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:07:33,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:07:35,535.535 INFO    ] ================================================
[2026-10-18 01:07:35,551.551 INFO    ] Launching Daemon at Sun Oct 18 01:07:35 IST 2026
[2026-10-18 01:07:35,562.562 INFO    ] ================================================
[2026-10-18 01:07:36,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:07:36
[2026-10-18 01:07:36,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:07:37,015.015 INFO    ] Initializing speech engine...
[2026-10-18 01:07:37,024.024 INFO    ] 2026-10-18 01:07:37
[2026-10-18 01:07:37,273.273 INFO    ] 2026-10-18 01:07:37
[2026-10-18 01:07:37,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:07:37,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:07:37,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:07:37,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:07:37,825.825 INFO    ] time= 18/10/2026 01:07:37
[2026-10-18 01:07:37,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:07:37,850.850 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:07:37,990.990 INFO    ] No existing commands found in stream
[2026-10-18 01:07:43,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:07:43,024.024 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-18 01:07:46,364.364 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:07:46,367.367 INFO    ] Checking for system updates...
[2026-10-18 01:07:46,403.403 INFO    ] 200
[2026-10-18 01:07:46,406.406 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:07:46,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:07:46,461.461 INFO    ] No update needed
[2026-10-18 01:07:46,463.463 INFO    ] Checking for camera pi updates...
[2026-10-18 01:07:46,496.496 INFO    ] 200
[2026-10-18 01:07:46,499.499 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:07:46,544.544 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:07:56,559.559 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:07:56,594.594 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:07:56,604.604 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:07:56,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:07:56,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:07:56,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:07:58,657.657 INFO    ] ================================================
[2026-10-18 01:07:58,673.673 INFO    ] Launching Daemon at Sun Oct 18 01:07:58 IST 2026
[2026-10-18 01:07:58,684.684 INFO    ] ================================================
[2026-10-18 01:07:59,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:07:59
[2026-10-18 01:07:59,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:08:00,120.120 INFO    ] Initializing speech engine...
[2026-10-18 01:08:00,129.129 INFO    ] 2026-10-18 01:08:00
[2026-10-18 01:08:00,394.394 INFO    ] 2026-10-18 01:08:00
[2026-10-18 01:08:00,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:08:00,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:08:00,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:08:00,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:08:00,813.813 INFO    ] time= 18/10/2026 01:08:00
[2026-10-18 01:08:00,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:08:00,824.824 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:08:00,900.900 INFO    ] No existing commands found in stream
[2026-10-18 01:08:05,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:08:05,918.918 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-18 01:08:09,885.885 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:08:09,887.887 INFO    ] Checking for system updates...
[2026-10-18 01:08:09,922.922 INFO    ] 200
[2026-10-18 01:08:09,925.925 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:08:09,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:08:09,981.981 INFO    ] No update needed
[2026-10-18 01:08:09,983.983 INFO    ] Checking for camera pi updates...
[2026-10-18 01:08:10,016.016 INFO    ] 200
[2026-10-18 01:08:10,018.018 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:08:10,061.061 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:08:20,076.076 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:08:20,111.111 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:08:20,120.120 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:08:20,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:08:20,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:08:20,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:08:22,173.173 INFO    ] ================================================
[2026-10-18 01:08:22,189.189 INFO    ] Launching Daemon at Sun Oct 18 01:08:22 IST 2026
[2026-10-18 01:08:22,200.200 INFO    ] ================================================
[2026-10-18 01:08:22,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:08:22
[2026-10-18 01:08:23,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:08:23,620.620 INFO    ] Initializing speech engine...
[2026-10-18 01:08:23,640.640 INFO    ] 2026-10-18 01:08:23
[2026-10-18 01:08:23,902.902 INFO    ] 2026-10-18 01:08:23
[2026-10-18 01:08:23,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:08:24,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:08:24,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:08:24,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:08:24,316.316 INFO    ] time= 18/10/2026 01:08:24
[2026-10-18 01:08:24,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:08:24,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:08:24,506.506 INFO    ] No existing commands found in stream
[2026-10-18 01:08:29,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:08:29,534.534 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-18 01:08:33,649.649 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 01:08:33,652.652 INFO    ] Checking for system updates...
[2026-10-18 01:08:33,688.688 INFO    ] 200
[2026-10-18 01:08:33,690.690 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:08:33,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:08:33,750.750 INFO    ] No update needed
[2026-10-18 01:08:33,753.753 INFO    ] Checking for camera pi updates...
[2026-10-18 01:08:33,790.790 INFO    ] 200
[2026-10-18 01:08:33,792.792 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:08:33,832.832 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:08:43,847.847 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:08:43,882.882 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:08:43,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:08:43,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:08:43,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:08:43,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:08:45,943.943 INFO    ] ================================================
[2026-10-18 01:08:45,959.959 INFO    ] Launching Daemon at Sun Oct 18 01:08:45 IST 2026
[2026-10-18 01:08:45,970.970 INFO    ] ================================================
[2026-10-18 01:08:46,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:08:46
[2026-10-18 01:08:47,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:08:47,401.401 INFO    ] Initializing speech engine...
[2026-10-18 01:08:47,410.410 INFO    ] 2026-10-18 01:08:47
[2026-10-18 01:08:47,672.672 INFO    ] 2026-10-18 01:08:47
[2026-10-18 01:08:47,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:08:47,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:08:47,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:08:48,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:08:48,153.153 INFO    ] time= 18/10/2026 01:08:48
[2026-10-18 01:08:48,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:08:48,266.266 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:08:48,403.403 INFO    ] No existing commands found in stream
[2026-10-18 01:08:53,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:08:53,432.432 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-18 01:08:53,934.934 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:08:53,937.937 INFO    ] Checking for system updates...
[2026-10-18 01:08:53,973.973 INFO    ] 200
[2026-10-18 01:08:53,975.975 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:08:54,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:08:54,030.030 INFO    ] No update needed
[2026-10-18 01:08:54,032.032 INFO    ] Checking for camera pi updates...
[2026-10-18 01:08:54,065.065 INFO    ] 200
[2026-10-18 01:08:54,068.068 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:08:54,112.112 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:09:04,125.125 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:09:04,160.160 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:09:04,170.170 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:09:04,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:09:04,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:09:04,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:09:06,224.224 INFO    ] ================================================
[2026-10-18 01:09:06,240.240 INFO    ] Launching Daemon at Sun Oct 18 01:09:06 IST 2026
[2026-10-18 01:09:06,250.250 INFO    ] ================================================
[2026-10-18 01:09:06,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:09:06
[2026-10-18 01:09:07,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:09:07,828.828 INFO    ] Initializing speech engine...
[2026-10-18 01:09:07,836.836 INFO    ] 2026-10-18 01:09:07
[2026-10-18 01:09:08,102.102 INFO    ] 2026-10-18 01:09:08
[2026-10-18 01:09:08,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:09:08,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:09:08,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:09:08,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:09:08,652.652 INFO    ] time= 18/10/2026 01:09:08
[2026-10-18 01:09:08,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:09:08,701.701 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:09:08,808.808 INFO    ] No existing commands found in stream
[2026-10-18 01:09:13,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:09:13,845.845 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-18 01:09:17,507.507 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:09:17,510.510 INFO    ] Checking for system updates...
[2026-10-18 01:09:17,545.545 INFO    ] 200
[2026-10-18 01:09:17,548.548 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:09:17,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:09:17,607.607 INFO    ] No update needed
[2026-10-18 01:09:17,609.609 INFO    ] Checking for camera pi updates...
[2026-10-18 01:09:17,643.643 INFO    ] 200
[2026-10-18 01:09:17,646.646 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:09:17,689.689 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:09:27,701.701 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:09:27,736.736 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:09:27,746.746 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:09:27,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:09:27,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:09:27,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:09:29,798.798 INFO    ] ================================================
[2026-10-18 01:09:29,812.812 INFO    ] Launching Daemon at Sun Oct 18 01:09:29 IST 2026
[2026-10-18 01:09:29,823.823 INFO    ] ================================================
[2026-10-18 01:09:30,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:09:30
[2026-10-18 01:09:31,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:09:31,392.392 INFO    ] Initializing speech engine...
[2026-10-18 01:09:31,403.403 INFO    ] 2026-10-18 01:09:31
[2026-10-18 01:09:31,674.674 INFO    ] 2026-10-18 01:09:31
[2026-10-18 01:09:31,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:09:31,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:09:31,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:09:32,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:09:32,142.142 INFO    ] time= 18/10/2026 01:09:32
[2026-10-18 01:09:32,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:09:32,207.207 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:09:32,318.318 INFO    ] No existing commands found in stream
[2026-10-18 01:09:37,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:09:37,334.334 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-18 01:09:39,785.785 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:09:39,788.788 INFO    ] Checking for system updates...
[2026-10-18 01:09:39,828.828 INFO    ] 200
[2026-10-18 01:09:39,830.830 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:09:39,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:09:39,893.893 INFO    ] No update needed
[2026-10-18 01:09:39,895.895 INFO    ] Checking for camera pi updates...
[2026-10-18 01:09:39,932.932 INFO    ] 200
[2026-10-18 01:09:39,935.935 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:09:39,980.980 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:09:49,996.996 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:09:50,035.035 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:09:50,046.046 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:09:50,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:09:50,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:09:50,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:09:52,100.100 INFO    ] ================================================
[2026-10-18 01:09:52,115.115 INFO    ] Launching Daemon at Sun Oct 18 01:09:52 IST 2026
[2026-10-18 01:09:52,126.126 INFO    ] ================================================
[2026-10-18 01:09:52,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:09:52
[2026-10-18 01:09:53,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:09:53,715.715 INFO    ] Initializing speech engine...
[2026-10-18 01:09:53,722.722 INFO    ] 2026-10-18 01:09:53
[2026-10-18 01:09:53,994.994 INFO    ] 2026-10-18 01:09:53
[2026-10-18 01:09:54,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:09:54,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:09:54,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:09:54,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:09:54,554.554 INFO    ] time= 18/10/2026 01:09:54
[2026-10-18 01:09:54,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:09:54,604.604 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:09:54,715.715 INFO    ] No existing commands found in stream
[2026-10-18 01:09:59,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:09:59,743.743 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-18 01:10:01,865.865 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:10:01,870.870 INFO    ] Checking for system updates...
[2026-10-18 01:10:01,982.982 INFO    ] 200
[2026-10-18 01:10:02,005.005 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:10:02,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:10:02,312.312 INFO    ] No update needed
[2026-10-18 01:10:02,341.341 INFO    ] Checking for camera pi updates...
[2026-10-18 01:10:02,445.445 INFO    ] 200
[2026-10-18 01:10:02,449.449 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:10:02,575.575 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:10:12,604.604 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:10:12,644.644 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:10:12,655.655 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:10:12,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:10:12,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:10:12,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:10:14,710.710 INFO    ] ================================================
[2026-10-18 01:10:14,725.725 INFO    ] Launching Daemon at Sun Oct 18 01:10:14 IST 2026
[2026-10-18 01:10:14,736.736 INFO    ] ================================================
[2026-10-18 01:10:15,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:10:15
[2026-10-18 01:10:16,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:10:16,354.354 INFO    ] Initializing speech engine...
[2026-10-18 01:10:16,368.368 INFO    ] 2026-10-18 01:10:16
[2026-10-18 01:10:16,682.682 INFO    ] 2026-10-18 01:10:16
[2026-10-18 01:10:16,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:10:16,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:10:16,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:10:17,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:10:17,201.201 INFO    ] time= 18/10/2026 01:10:17
[2026-10-18 01:10:17,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:10:17,250.250 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:10:17,370.370 INFO    ] No existing commands found in stream
[2026-10-18 01:10:22,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:10:22,404.404 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-18 01:10:23,725.725 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:10:23,728.728 INFO    ] Checking for system updates...
[2026-10-18 01:10:23,765.765 INFO    ] 200
[2026-10-18 01:10:23,768.768 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:10:23,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:10:23,831.831 INFO    ] No update needed
[2026-10-18 01:10:23,833.833 INFO    ] Checking for camera pi updates...
[2026-10-18 01:10:23,872.872 INFO    ] 200
[2026-10-18 01:10:23,875.875 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:10:23,920.920 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:10:33,934.934 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6e150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:10:33,973.973 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:10:33,984.984 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:10:33,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:10:33,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:10:34,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:10:36,042.042 INFO    ] ================================================
[2026-10-18 01:10:36,057.057 INFO    ] Launching Daemon at Sun Oct 18 01:10:36 IST 2026
[2026-10-18 01:10:36,068.068 INFO    ] ================================================
[2026-10-18 01:10:36,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:10:36
[2026-10-18 01:10:37,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:10:37,491.491 INFO    ] Initializing speech engine...
[2026-10-18 01:10:37,501.501 INFO    ] 2026-10-18 01:10:37
[2026-10-18 01:10:37,794.794 INFO    ] 2026-10-18 01:10:37
[2026-10-18 01:10:37,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:10:38,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:10:38,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:10:38,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:10:38,214.214 INFO    ] time= 18/10/2026 01:10:38
[2026-10-18 01:10:38,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:10:38,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:10:38,426.426 INFO    ] No existing commands found in stream
[2026-10-18 01:10:43,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:10:43,449.449 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-18 01:10:45,156.156 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:10:45,159.159 INFO    ] Checking for system updates...
[2026-10-18 01:10:45,194.194 INFO    ] 200
[2026-10-18 01:10:45,196.196 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:10:45,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:10:45,253.253 INFO    ] No update needed
[2026-10-18 01:10:45,255.255 INFO    ] Checking for camera pi updates...
[2026-10-18 01:10:45,289.289 INFO    ] 200
[2026-10-18 01:10:45,291.291 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:10:45,335.335 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:10:55,350.350 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:10:55,385.385 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:10:55,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:10:55,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:10:55,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:10:55,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:10:57,447.447 INFO    ] ================================================
[2026-10-18 01:10:57,463.463 INFO    ] Launching Daemon at Sun Oct 18 01:10:57 IST 2026
[2026-10-18 01:10:57,474.474 INFO    ] ================================================
[2026-10-18 01:10:58,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:10:58
[2026-10-18 01:10:58,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:10:58,910.910 INFO    ] Initializing speech engine...
[2026-10-18 01:10:58,925.925 INFO    ] 2026-10-18 01:10:58
[2026-10-18 01:10:59,180.180 INFO    ] 2026-10-18 01:10:59
[2026-10-18 01:10:59,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:10:59,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:10:59,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:10:59,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:10:59,735.735 INFO    ] time= 18/10/2026 01:10:59
[2026-10-18 01:10:59,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:10:59,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:10:59,891.891 INFO    ] No existing commands found in stream
[2026-10-18 01:11:04,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:11:04,916.916 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-18 01:11:06,205.205 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:11:06,208.208 INFO    ] Checking for system updates...
[2026-10-18 01:11:06,246.246 INFO    ] 200
[2026-10-18 01:11:06,249.249 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:11:06,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:11:06,309.309 INFO    ] No update needed
[2026-10-18 01:11:06,311.311 INFO    ] Checking for camera pi updates...
[2026-10-18 01:11:06,345.345 INFO    ] 200
[2026-10-18 01:11:06,348.348 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:11:06,388.388 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:11:16,403.403 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:11:16,439.439 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:11:16,448.448 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:11:16,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:11:16,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:11:16,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:11:18,501.501 INFO    ] ================================================
[2026-10-18 01:11:18,517.517 INFO    ] Launching Daemon at Sun Oct 18 01:11:18 IST 2026
[2026-10-18 01:11:18,528.528 INFO    ] ================================================
[2026-10-18 01:11:19,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:11:19
[2026-10-18 01:11:19,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:11:19,981.981 INFO    ] Initializing speech engine...
[2026-10-18 01:11:19,987.987 INFO    ] 2026-10-18 01:11:19
[2026-10-18 01:11:20,246.246 INFO    ] 2026-10-18 01:11:20
[2026-10-18 01:11:20,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:11:20,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:11:20,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:11:20,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:11:20,785.785 INFO    ] time= 18/10/2026 01:11:20
[2026-10-18 01:11:20,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:11:20,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:11:20,953.953 INFO    ] No existing commands found in stream
[2026-10-18 01:11:25,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:11:25,988.988 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-18 01:11:26,561.561 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:11:26,563.563 INFO    ] Checking for system updates...
[2026-10-18 01:11:26,599.599 INFO    ] 200
[2026-10-18 01:11:26,601.601 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:11:26,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:11:26,661.661 INFO    ] No update needed
[2026-10-18 01:11:26,663.663 INFO    ] Checking for camera pi updates...
[2026-10-18 01:11:26,697.697 INFO    ] 200
[2026-10-18 01:11:26,699.699 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:11:26,747.747 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:11:36,763.763 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:11:36,798.798 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:11:36,808.808 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:11:36,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:11:36,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:11:36,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:11:38,862.862 INFO    ] ================================================
[2026-10-18 01:11:38,878.878 INFO    ] Launching Daemon at Sun Oct 18 01:11:38 IST 2026
[2026-10-18 01:11:38,889.889 INFO    ] ================================================
[2026-10-18 01:11:39,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:11:39
[2026-10-18 01:11:40,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:11:40,340.340 INFO    ] Initializing speech engine...
[2026-10-18 01:11:40,349.349 INFO    ] 2026-10-18 01:11:40
[2026-10-18 01:11:40,599.599 INFO    ] 2026-10-18 01:11:40
[2026-10-18 01:11:40,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:11:40,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:11:40,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:11:41,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:11:41,103.103 INFO    ] time= 18/10/2026 01:11:41
[2026-10-18 01:11:41,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:11:41,172.172 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:11:41,302.302 INFO    ] No existing commands found in stream
[2026-10-18 01:11:46,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:11:46,330.330 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-18 01:11:48,435.435 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:11:48,438.438 INFO    ] Checking for system updates...
[2026-10-18 01:11:48,474.474 INFO    ] 200
[2026-10-18 01:11:48,477.477 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:11:48,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:11:48,531.531 INFO    ] No update needed
[2026-10-18 01:11:48,534.534 INFO    ] Checking for camera pi updates...
[2026-10-18 01:11:48,570.570 INFO    ] 200
[2026-10-18 01:11:48,573.573 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:11:48,613.613 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:11:58,624.624 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:11:58,659.659 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:11:58,669.669 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:11:58,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:11:58,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:11:58,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:12:00,722.722 INFO    ] ================================================
[2026-10-18 01:12:00,738.738 INFO    ] Launching Daemon at Sun Oct 18 01:12:00 IST 2026
[2026-10-18 01:12:00,749.749 INFO    ] ================================================
[2026-10-18 01:12:01,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:12:01
[2026-10-18 01:12:02,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:12:02,505.505 INFO    ] Initializing speech engine...
[2026-10-18 01:12:02,518.518 INFO    ] 2026-10-18 01:12:02
[2026-10-18 01:12:02,833.833 INFO    ] 2026-10-18 01:12:02
[2026-10-18 01:12:02,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:12:03,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:12:03,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:12:03,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:12:03,308.308 INFO    ] time= 18/10/2026 01:12:03
[2026-10-18 01:12:03,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:12:03,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:12:03,556.556 INFO    ] No existing commands found in stream
[2026-10-18 01:12:08,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:12:08,582.582 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-18 01:12:11,031.031 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 01:12:11,034.034 INFO    ] Checking for system updates...
[2026-10-18 01:12:11,073.073 INFO    ] 200
[2026-10-18 01:12:11,075.075 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:12:11,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:12:11,130.130 INFO    ] No update needed
[2026-10-18 01:12:11,133.133 INFO    ] Checking for camera pi updates...
[2026-10-18 01:12:11,173.173 INFO    ] 200
[2026-10-18 01:12:11,175.175 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:12:11,219.219 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:12:21,235.235 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:12:21,270.270 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:12:21,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:12:21,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:12:21,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:12:21,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:12:23,332.332 INFO    ] ================================================
[2026-10-18 01:12:23,348.348 INFO    ] Launching Daemon at Sun Oct 18 01:12:23 IST 2026
[2026-10-18 01:12:23,359.359 INFO    ] ================================================
[2026-10-18 01:12:23,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:12:23
[2026-10-18 01:12:24,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:12:24,772.772 INFO    ] Initializing speech engine...
[2026-10-18 01:12:24,795.795 INFO    ] 2026-10-18 01:12:24
[2026-10-18 01:12:25,049.049 INFO    ] 2026-10-18 01:12:25
[2026-10-18 01:12:25,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:12:25,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:12:25,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:12:25,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:12:25,541.541 INFO    ] time= 18/10/2026 01:12:25
[2026-10-18 01:12:25,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:12:25,634.634 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:12:25,769.769 INFO    ] No existing commands found in stream
[2026-10-18 01:12:30,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:12:30,798.798 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-18 01:12:31,980.980 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:12:31,983.983 INFO    ] Checking for system updates...
[2026-10-18 01:12:32,022.022 INFO    ] 200
[2026-10-18 01:12:32,025.025 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:12:32,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:12:32,084.084 INFO    ] No update needed
[2026-10-18 01:12:32,087.087 INFO    ] Checking for camera pi updates...
[2026-10-18 01:12:32,123.123 INFO    ] 200
[2026-10-18 01:12:32,126.126 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:12:32,176.176 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:12:42,191.191 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:12:42,226.226 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:12:42,236.236 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:12:42,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:12:42,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:12:42,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:12:44,291.291 INFO    ] ================================================
[2026-10-18 01:12:44,307.307 INFO    ] Launching Daemon at Sun Oct 18 01:12:44 IST 2026
[2026-10-18 01:12:44,318.318 INFO    ] ================================================
[2026-10-18 01:12:44,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:12:44
[2026-10-18 01:12:45,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:12:45,776.776 INFO    ] Initializing speech engine...
[2026-10-18 01:12:45,794.794 INFO    ] 2026-10-18 01:12:45
[2026-10-18 01:12:46,072.072 INFO    ] 2026-10-18 01:12:46
[2026-10-18 01:12:46,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:12:46,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:12:46,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:12:46,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:12:46,596.596 INFO    ] time= 18/10/2026 01:12:46
[2026-10-18 01:12:46,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:12:46,694.694 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:12:46,851.851 INFO    ] No existing commands found in stream
[2026-10-18 01:12:51,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:12:51,872.872 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-18 01:12:54,871.871 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:12:54,873.873 INFO    ] Checking for system updates...
[2026-10-18 01:12:54,909.909 INFO    ] 200
[2026-10-18 01:12:54,912.912 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:12:54,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:12:54,974.974 INFO    ] No update needed
[2026-10-18 01:12:54,977.977 INFO    ] Checking for camera pi updates...
[2026-10-18 01:12:55,010.010 INFO    ] 200
[2026-10-18 01:12:55,012.012 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:12:55,058.058 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:13:05,072.072 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:13:05,108.108 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:13:05,117.117 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:13:05,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:13:05,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:13:05,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:13:07,171.171 INFO    ] ================================================
[2026-10-18 01:13:07,187.187 INFO    ] Launching Daemon at Sun Oct 18 01:13:07 IST 2026
[2026-10-18 01:13:07,197.197 INFO    ] ================================================
[2026-10-18 01:13:07,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:13:07
[2026-10-18 01:13:08,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:13:08,655.655 INFO    ] Initializing speech engine...
[2026-10-18 01:13:08,665.665 INFO    ] 2026-10-18 01:13:08
[2026-10-18 01:13:08,926.926 INFO    ] 2026-10-18 01:13:08
[2026-10-18 01:13:08,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:13:09,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:13:09,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:13:09,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:13:09,470.470 INFO    ] time= 18/10/2026 01:13:09
[2026-10-18 01:13:09,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:13:09,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:13:09,614.614 INFO    ] No existing commands found in stream
[2026-10-18 01:13:14,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:13:14,638.638 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-18 01:13:17,470.470 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:13:17,472.472 INFO    ] Checking for system updates...
[2026-10-18 01:13:17,508.508 INFO    ] 200
[2026-10-18 01:13:17,510.510 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:13:17,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:13:17,566.566 INFO    ] No update needed
[2026-10-18 01:13:17,569.569 INFO    ] Checking for camera pi updates...
[2026-10-18 01:13:17,607.607 INFO    ] 200
[2026-10-18 01:13:17,610.610 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:13:17,649.649 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:13:27,664.664 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:13:27,700.700 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:13:27,710.710 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:13:27,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:13:27,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:13:27,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:13:29,763.763 INFO    ] ================================================
[2026-10-18 01:13:29,779.779 INFO    ] Launching Daemon at Sun Oct 18 01:13:29 IST 2026
[2026-10-18 01:13:29,790.790 INFO    ] ================================================
[2026-10-18 01:13:30,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:13:30
[2026-10-18 01:13:30,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:13:31,249.249 INFO    ] Initializing speech engine...
[2026-10-18 01:13:31,270.270 INFO    ] 2026-10-18 01:13:31
[2026-10-18 01:13:31,563.563 INFO    ] 2026-10-18 01:13:31
[2026-10-18 01:13:31,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:13:31,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:13:31,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:13:32,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:13:32,018.018 INFO    ] time= 18/10/2026 01:13:32
[2026-10-18 01:13:32,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:13:32,031.031 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:13:32,120.120 INFO    ] No existing commands found in stream
[2026-10-18 01:13:37,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:13:37,148.148 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-18 01:13:41,143.143 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:13:41,145.145 INFO    ] Checking for system updates...
[2026-10-18 01:13:41,185.185 INFO    ] 200
[2026-10-18 01:13:41,188.188 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:13:41,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:13:41,250.250 INFO    ] No update needed
[2026-10-18 01:13:41,253.253 INFO    ] Checking for camera pi updates...
[2026-10-18 01:13:41,287.287 INFO    ] 200
[2026-10-18 01:13:41,289.289 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:13:41,333.333 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:13:51,349.349 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:13:51,384.384 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:13:51,393.393 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:13:51,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:13:51,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:13:51,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:13:53,447.447 INFO    ] ================================================
[2026-10-18 01:13:53,464.464 INFO    ] Launching Daemon at Sun Oct 18 01:13:53 IST 2026
[2026-10-18 01:13:53,475.475 INFO    ] ================================================
[2026-10-18 01:13:54,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:13:54
[2026-10-18 01:13:54,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:13:54,936.936 INFO    ] Initializing speech engine...
[2026-10-18 01:13:54,943.943 INFO    ] 2026-10-18 01:13:54
[2026-10-18 01:13:55,204.204 INFO    ] 2026-10-18 01:13:55
[2026-10-18 01:13:55,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:13:55,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:13:55,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:13:55,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:13:55,700.700 INFO    ] time= 18/10/2026 01:13:55
[2026-10-18 01:13:55,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:13:55,758.758 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:13:55,918.918 INFO    ] No existing commands found in stream
[2026-10-18 01:14:00,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:14:00,953.953 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-18 01:14:03,824.824 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:14:03,827.827 INFO    ] Checking for system updates...
[2026-10-18 01:14:03,862.862 INFO    ] 200
[2026-10-18 01:14:03,865.865 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:14:03,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:14:03,928.928 INFO    ] No update needed
[2026-10-18 01:14:03,930.930 INFO    ] Checking for camera pi updates...
[2026-10-18 01:14:03,964.964 INFO    ] 200
[2026-10-18 01:14:03,967.967 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:14:04,012.012 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:14:14,027.027 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:14:14,062.062 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:14:14,072.072 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:14:14,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:14:14,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:14:14,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:14:16,129.129 INFO    ] ================================================
[2026-10-18 01:14:16,144.144 INFO    ] Launching Daemon at Sun Oct 18 01:14:16 IST 2026
[2026-10-18 01:14:16,155.155 INFO    ] ================================================
[2026-10-18 01:14:16,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:14:16
[2026-10-18 01:14:17,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:14:17,623.623 INFO    ] Initializing speech engine...
[2026-10-18 01:14:17,629.629 INFO    ] 2026-10-18 01:14:17
[2026-10-18 01:14:17,891.891 INFO    ] 2026-10-18 01:14:17
[2026-10-18 01:14:17,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:14:18,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:14:18,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:14:18,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:14:18,435.435 INFO    ] time= 18/10/2026 01:14:18
[2026-10-18 01:14:18,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:14:18,459.459 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:14:18,611.611 INFO    ] No existing commands found in stream
[2026-10-18 01:14:23,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:14:23,644.644 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-18 01:14:24,452.452 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:14:24,454.454 INFO    ] Checking for system updates...
[2026-10-18 01:14:24,490.490 INFO    ] 200
[2026-10-18 01:14:24,493.493 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:14:24,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:14:24,556.556 INFO    ] No update needed
[2026-10-18 01:14:24,558.558 INFO    ] Checking for camera pi updates...
[2026-10-18 01:14:24,596.596 INFO    ] 200
[2026-10-18 01:14:24,598.598 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:14:24,639.639 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:14:34,651.651 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:14:34,686.686 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:14:34,696.696 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:14:34,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:14:34,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:14:34,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:14:36,751.751 INFO    ] ================================================
[2026-10-18 01:14:36,766.766 INFO    ] Launching Daemon at Sun Oct 18 01:14:36 IST 2026
[2026-10-18 01:14:36,778.778 INFO    ] ================================================
[2026-10-18 01:14:37,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:14:37
[2026-10-18 01:14:37,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:14:38,183.183 INFO    ] Initializing speech engine...
[2026-10-18 01:14:38,191.191 INFO    ] 2026-10-18 01:14:38
[2026-10-18 01:14:38,464.464 INFO    ] 2026-10-18 01:14:38
[2026-10-18 01:14:38,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:14:38,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:14:38,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:14:38,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:14:38,969.969 INFO    ] time= 18/10/2026 01:14:38
[2026-10-18 01:14:39,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:14:39,038.038 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:14:39,198.198 INFO    ] No existing commands found in stream
[2026-10-18 01:14:44,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:14:44,238.238 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-18 01:14:46,155.155 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:14:46,158.158 INFO    ] Checking for system updates...
[2026-10-18 01:14:46,200.200 INFO    ] 200
[2026-10-18 01:14:46,203.203 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:14:46,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:14:46,268.268 INFO    ] No update needed
[2026-10-18 01:14:46,271.271 INFO    ] Checking for camera pi updates...
[2026-10-18 01:14:46,305.305 INFO    ] 200
[2026-10-18 01:14:46,308.308 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:14:46,356.356 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:14:56,372.372 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:14:56,414.414 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:14:56,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:14:56,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:14:56,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:14:56,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:14:58,483.483 INFO    ] ================================================
[2026-10-18 01:14:58,498.498 INFO    ] Launching Daemon at Sun Oct 18 01:14:58 IST 2026
[2026-10-18 01:14:58,509.509 INFO    ] ================================================
[2026-10-18 01:14:59,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:14:59
[2026-10-18 01:14:59,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:14:59,977.977 INFO    ] Initializing speech engine...
[2026-10-18 01:14:59,983.983 INFO    ] 2026-10-18 01:14:59
[2026-10-18 01:15:00,245.245 INFO    ] 2026-10-18 01:15:00
[2026-10-18 01:15:00,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:15:00,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:15:00,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:15:00,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:15:00,725.725 INFO    ] time= 18/10/2026 01:15:00
[2026-10-18 01:15:00,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:15:00,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:15:00,967.967 INFO    ] No existing commands found in stream
[2026-10-18 01:15:05,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:15:06,000.000 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-18 01:15:07,292.292 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:15:07,294.294 INFO    ] Checking for system updates...
[2026-10-18 01:15:07,331.331 INFO    ] 200
[2026-10-18 01:15:07,333.333 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:15:07,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:15:07,399.399 INFO    ] No update needed
[2026-10-18 01:15:07,401.401 INFO    ] Checking for camera pi updates...
[2026-10-18 01:15:07,443.443 INFO    ] 200
[2026-10-18 01:15:07,445.445 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:15:07,485.485 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:15:17,500.500 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:15:17,535.535 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:15:17,544.544 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:15:17,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:15:17,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:15:17,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:15:19,598.598 INFO    ] ================================================
[2026-10-18 01:15:19,614.614 INFO    ] Launching Daemon at Sun Oct 18 01:15:19 IST 2026
[2026-10-18 01:15:19,625.625 INFO    ] ================================================
[2026-10-18 01:15:20,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:15:20
[2026-10-18 01:15:20,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:15:21,099.099 INFO    ] Initializing speech engine...
[2026-10-18 01:15:21,106.106 INFO    ] 2026-10-18 01:15:21
[2026-10-18 01:15:21,378.378 INFO    ] 2026-10-18 01:15:21
[2026-10-18 01:15:21,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:15:21,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:15:21,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:15:21,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:15:21,909.909 INFO    ] time= 18/10/2026 01:15:21
[2026-10-18 01:15:21,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:15:21,933.933 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:15:22,062.062 INFO    ] No existing commands found in stream
[2026-10-18 01:15:27,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:15:27,079.079 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-18 01:15:30,500.500 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:15:30,503.503 INFO    ] Checking for system updates...
[2026-10-18 01:15:30,539.539 INFO    ] 200
[2026-10-18 01:15:30,541.541 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:15:30,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:15:30,604.604 INFO    ] No update needed
[2026-10-18 01:15:30,606.606 INFO    ] Checking for camera pi updates...
[2026-10-18 01:15:30,645.645 INFO    ] 200
[2026-10-18 01:15:30,647.647 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:15:30,687.687 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:15:40,702.702 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:15:40,739.739 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:15:40,748.748 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:15:40,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:15:40,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:15:40,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:15:42,802.802 INFO    ] ================================================
[2026-10-18 01:15:42,818.818 INFO    ] Launching Daemon at Sun Oct 18 01:15:42 IST 2026
[2026-10-18 01:15:42,829.829 INFO    ] ================================================
[2026-10-18 01:15:43,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:15:43
[2026-10-18 01:15:44,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:15:44,379.379 INFO    ] Initializing speech engine...
[2026-10-18 01:15:44,391.391 INFO    ] 2026-10-18 01:15:44
[2026-10-18 01:15:44,656.656 INFO    ] 2026-10-18 01:15:44
[2026-10-18 01:15:44,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:15:44,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:15:44,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:15:45,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:15:45,136.136 INFO    ] time= 18/10/2026 01:15:45
[2026-10-18 01:15:45,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:15:45,210.210 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:15:45,362.362 INFO    ] No existing commands found in stream
[2026-10-18 01:15:50,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:15:50,393.393 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-18 01:15:52,475.475 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:15:52,478.478 INFO    ] Checking for system updates...
[2026-10-18 01:15:52,513.513 INFO    ] 200
[2026-10-18 01:15:52,516.516 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:15:52,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:15:52,572.572 INFO    ] No update needed
[2026-10-18 01:15:52,574.574 INFO    ] Checking for camera pi updates...
[2026-10-18 01:15:52,608.608 INFO    ] 200
[2026-10-18 01:15:52,610.610 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:15:52,656.656 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:16:02,672.672 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:16:02,719.719 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:16:02,732.732 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:16:02,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:16:02,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:16:02,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:16:04,796.796 INFO    ] ================================================
[2026-10-18 01:16:04,811.811 INFO    ] Launching Daemon at Sun Oct 18 01:16:04 IST 2026
[2026-10-18 01:16:04,823.823 INFO    ] ================================================
[2026-10-18 01:16:05,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:16:05
[2026-10-18 01:16:05,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:16:06,243.243 INFO    ] Initializing speech engine...
[2026-10-18 01:16:06,252.252 INFO    ] 2026-10-18 01:16:06
[2026-10-18 01:16:06,506.506 INFO    ] 2026-10-18 01:16:06
[2026-10-18 01:16:06,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:16:06,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:16:06,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:16:06,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:16:06,999.999 INFO    ] time= 18/10/2026 01:16:06
[2026-10-18 01:16:07,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:16:07,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:16:07,210.210 INFO    ] No existing commands found in stream
[2026-10-18 01:16:12,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:16:12,226.226 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-18 01:16:13,443.443 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:16:13,445.445 INFO    ] Checking for system updates...
[2026-10-18 01:16:13,484.484 INFO    ] 200
[2026-10-18 01:16:13,487.487 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:16:13,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:16:13,547.547 INFO    ] No update needed
[2026-10-18 01:16:13,549.549 INFO    ] Checking for camera pi updates...
[2026-10-18 01:16:13,586.586 INFO    ] 200
[2026-10-18 01:16:13,588.588 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:16:13,629.629 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:16:23,644.644 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:16:23,680.680 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:16:23,690.690 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:16:23,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:16:23,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:16:23,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:16:25,743.743 INFO    ] ================================================
[2026-10-18 01:16:25,759.759 INFO    ] Launching Daemon at Sun Oct 18 01:16:25 IST 2026
[2026-10-18 01:16:25,770.770 INFO    ] ================================================
[2026-10-18 01:16:26,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:16:26
[2026-10-18 01:16:26,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:16:27,188.188 INFO    ] Initializing speech engine...
[2026-10-18 01:16:27,200.200 INFO    ] 2026-10-18 01:16:27
[2026-10-18 01:16:27,446.446 INFO    ] 2026-10-18 01:16:27
[2026-10-18 01:16:27,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:16:27,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:16:27,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:16:27,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:16:27,999.999 INFO    ] time= 18/10/2026 01:16:27
[2026-10-18 01:16:28,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:16:28,025.025 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:16:28,155.155 INFO    ] No existing commands found in stream
[2026-10-18 01:16:33,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:16:33,177.177 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-18 01:16:33,871.871 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:16:33,874.874 INFO    ] Checking for system updates...
[2026-10-18 01:16:33,910.910 INFO    ] 200
[2026-10-18 01:16:33,913.913 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:16:33,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:16:33,973.973 INFO    ] No update needed
[2026-10-18 01:16:33,976.976 INFO    ] Checking for camera pi updates...
[2026-10-18 01:16:34,012.012 INFO    ] 200
[2026-10-18 01:16:34,014.014 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:16:34,055.055 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:16:44,070.070 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:16:44,105.105 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:16:44,115.115 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:16:44,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:16:44,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:16:44,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:16:46,171.171 INFO    ] ================================================
[2026-10-18 01:16:46,189.189 INFO    ] Launching Daemon at Sun Oct 18 01:16:46 IST 2026
[2026-10-18 01:16:46,201.201 INFO    ] ================================================
[2026-10-18 01:16:46,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:16:46
[2026-10-18 01:16:47,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:16:47,846.846 INFO    ] Initializing speech engine...
[2026-10-18 01:16:47,861.861 INFO    ] 2026-10-18 01:16:47
[2026-10-18 01:16:48,160.160 INFO    ] 2026-10-18 01:16:48
[2026-10-18 01:16:48,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:16:48,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:16:48,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:16:48,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:16:48,691.691 INFO    ] time= 18/10/2026 01:16:48
[2026-10-18 01:16:48,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:16:48,717.717 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:16:48,808.808 INFO    ] No existing commands found in stream
[2026-10-18 01:16:53,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:16:53,822.822 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-18 01:16:55,497.497 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:16:55,500.500 INFO    ] Checking for system updates...
[2026-10-18 01:16:55,537.537 INFO    ] 200
[2026-10-18 01:16:55,540.540 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:16:55,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:16:55,595.595 INFO    ] No update needed
[2026-10-18 01:16:55,598.598 INFO    ] Checking for camera pi updates...
[2026-10-18 01:16:55,632.632 INFO    ] 200
[2026-10-18 01:16:55,635.635 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:16:55,677.677 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:17:05,690.690 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:17:05,729.729 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:17:05,740.740 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:17:05,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:17:05,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:17:05,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:17:07,799.799 INFO    ] ================================================
[2026-10-18 01:17:07,818.818 INFO    ] Launching Daemon at Sun Oct 18 01:17:07 IST 2026
[2026-10-18 01:17:07,829.829 INFO    ] ================================================
[2026-10-18 01:17:08,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:17:08
[2026-10-18 01:17:09,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:17:09,335.335 INFO    ] Initializing speech engine...
[2026-10-18 01:17:09,345.345 INFO    ] 2026-10-18 01:17:09
[2026-10-18 01:17:09,599.599 INFO    ] 2026-10-18 01:17:09
[2026-10-18 01:17:09,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:17:09,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:17:09,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:17:10,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:17:10,162.162 INFO    ] time= 18/10/2026 01:17:10
[2026-10-18 01:17:10,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:17:10,202.202 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:17:10,341.341 INFO    ] No existing commands found in stream
[2026-10-18 01:17:15,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:17:15,374.374 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-18 01:17:18,080.080 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:17:18,082.082 INFO    ] Checking for system updates...
[2026-10-18 01:17:18,117.117 INFO    ] 200
[2026-10-18 01:17:18,120.120 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:17:18,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:17:18,182.182 INFO    ] No update needed
[2026-10-18 01:17:18,184.184 INFO    ] Checking for camera pi updates...
[2026-10-18 01:17:18,221.221 INFO    ] 200
[2026-10-18 01:17:18,223.223 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:17:18,263.263 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:17:28,278.278 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:17:28,312.312 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:17:28,322.322 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:17:28,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:17:28,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:17:28,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:17:30,375.375 INFO    ] ================================================
[2026-10-18 01:17:30,391.391 INFO    ] Launching Daemon at Sun Oct 18 01:17:30 IST 2026
[2026-10-18 01:17:30,402.402 INFO    ] ================================================
[2026-10-18 01:17:30,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:17:30
[2026-10-18 01:17:31,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:17:31,803.803 INFO    ] Initializing speech engine...
[2026-10-18 01:17:31,818.818 INFO    ] 2026-10-18 01:17:31
[2026-10-18 01:17:32,102.102 INFO    ] 2026-10-18 01:17:32
[2026-10-18 01:17:32,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:17:32,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:17:32,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:17:32,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:17:32,645.645 INFO    ] time= 18/10/2026 01:17:32
[2026-10-18 01:17:32,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:17:32,714.714 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:17:32,854.854 INFO    ] No existing commands found in stream
[2026-10-18 01:17:37,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:17:37,887.887 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-18 01:17:39,851.851 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:17:39,854.854 INFO    ] Checking for system updates...
[2026-10-18 01:17:39,889.889 INFO    ] 200
[2026-10-18 01:17:39,892.892 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:17:39,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:17:39,946.946 INFO    ] No update needed
[2026-10-18 01:17:39,948.948 INFO    ] Checking for camera pi updates...
[2026-10-18 01:17:39,981.981 INFO    ] 200
[2026-10-18 01:17:39,984.984 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:17:40,024.024 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:17:50,039.039 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:17:50,074.074 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:17:50,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:17:50,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:17:50,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:17:50,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:17:52,136.136 INFO    ] ================================================
[2026-10-18 01:17:52,152.152 INFO    ] Launching Daemon at Sun Oct 18 01:17:52 IST 2026
[2026-10-18 01:17:52,163.163 INFO    ] ================================================
[2026-10-18 01:17:52,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:17:52
[2026-10-18 01:17:53,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:17:53,580.580 INFO    ] Initializing speech engine...
[2026-10-18 01:17:53,590.590 INFO    ] 2026-10-18 01:17:53
[2026-10-18 01:17:53,849.849 INFO    ] 2026-10-18 01:17:53
[2026-10-18 01:17:53,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:17:54,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:17:54,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:17:54,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:17:54,393.393 INFO    ] time= 18/10/2026 01:17:54
[2026-10-18 01:17:54,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:17:54,416.416 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:17:54,548.548 INFO    ] No existing commands found in stream
[2026-10-18 01:17:59,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:17:59,569.569 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-18 01:18:01,001.001 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:18:01,004.004 INFO    ] Checking for system updates...
[2026-10-18 01:18:01,041.041 INFO    ] 200
[2026-10-18 01:18:01,043.043 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:18:01,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:18:01,106.106 INFO    ] No update needed
[2026-10-18 01:18:01,109.109 INFO    ] Checking for camera pi updates...
[2026-10-18 01:18:01,146.146 INFO    ] 200
[2026-10-18 01:18:01,149.149 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:18:01,194.194 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:18:11,211.211 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:18:11,251.251 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:18:11,262.262 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:18:11,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:18:11,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:18:11,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:18:13,318.318 INFO    ] ================================================
[2026-10-18 01:18:13,333.333 INFO    ] Launching Daemon at Sun Oct 18 01:18:13 IST 2026
[2026-10-18 01:18:13,345.345 INFO    ] ================================================
[2026-10-18 01:18:13,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:18:13
[2026-10-18 01:18:14,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:18:14,950.950 INFO    ] Initializing speech engine...
[2026-10-18 01:18:14,957.957 INFO    ] 2026-10-18 01:18:14
[2026-10-18 01:18:15,246.246 INFO    ] 2026-10-18 01:18:15
[2026-10-18 01:18:15,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:18:15,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:18:15,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:18:15,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:18:15,790.790 INFO    ] time= 18/10/2026 01:18:15
[2026-10-18 01:18:15,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:18:15,828.828 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:18:15,983.983 INFO    ] No existing commands found in stream
[2026-10-18 01:18:21,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:18:21,012.012 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-18 01:18:21,852.852 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:18:21,855.855 INFO    ] Checking for system updates...
[2026-10-18 01:18:21,897.897 INFO    ] 200
[2026-10-18 01:18:21,899.899 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:18:21,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:18:21,960.960 INFO    ] No update needed
[2026-10-18 01:18:21,963.963 INFO    ] Checking for camera pi updates...
[2026-10-18 01:18:21,997.997 INFO    ] 200
[2026-10-18 01:18:21,999.999 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:18:22,043.043 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:18:32,059.059 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:18:32,102.102 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:18:32,114.114 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:18:32,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:18:32,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:18:32,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:18:34,172.172 INFO    ] ================================================
[2026-10-18 01:18:34,188.188 INFO    ] Launching Daemon at Sun Oct 18 01:18:34 IST 2026
[2026-10-18 01:18:34,199.199 INFO    ] ================================================
[2026-10-18 01:18:34,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:18:34
[2026-10-18 01:18:35,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:18:35,809.809 INFO    ] Initializing speech engine...
[2026-10-18 01:18:35,823.823 INFO    ] 2026-10-18 01:18:35
[2026-10-18 01:18:36,138.138 INFO    ] 2026-10-18 01:18:36
[2026-10-18 01:18:36,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:18:36,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:18:36,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:18:36,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:18:36,684.684 INFO    ] time= 18/10/2026 01:18:36
[2026-10-18 01:18:36,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:18:36,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:18:36,886.886 INFO    ] No existing commands found in stream
[2026-10-18 01:18:41,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:18:41,921.921 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-18 01:18:46,472.472 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:18:46,475.475 INFO    ] Checking for system updates...
[2026-10-18 01:18:46,511.511 INFO    ] 200
[2026-10-18 01:18:46,514.514 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:18:46,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:18:46,572.572 INFO    ] No update needed
[2026-10-18 01:18:46,574.574 INFO    ] Checking for camera pi updates...
[2026-10-18 01:18:46,608.608 INFO    ] 200
[2026-10-18 01:18:46,610.610 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:18:46,650.650 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:18:56,666.666 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:18:56,705.705 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:18:56,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:18:56,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:18:56,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:18:56,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:18:58,771.771 INFO    ] ================================================
[2026-10-18 01:18:58,787.787 INFO    ] Launching Daemon at Sun Oct 18 01:18:58 IST 2026
[2026-10-18 01:18:58,798.798 INFO    ] ================================================
[2026-10-18 01:18:59,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:18:59
[2026-10-18 01:18:59,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:19:00,256.256 INFO    ] Initializing speech engine...
[2026-10-18 01:19:00,265.265 INFO    ] 2026-10-18 01:19:00
[2026-10-18 01:19:00,516.516 INFO    ] 2026-10-18 01:19:00
[2026-10-18 01:19:00,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:19:00,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:19:00,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:19:01,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:19:01,066.066 INFO    ] time= 18/10/2026 01:19:01
[2026-10-18 01:19:01,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:19:01,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:19:01,231.231 INFO    ] No existing commands found in stream
[2026-10-18 01:19:06,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:19:06,256.256 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-18 01:19:07,833.833 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:19:07,836.836 INFO    ] Checking for system updates...
[2026-10-18 01:19:07,871.871 INFO    ] 200
[2026-10-18 01:19:07,874.874 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:19:07,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:19:07,928.928 INFO    ] No update needed
[2026-10-18 01:19:07,930.930 INFO    ] Checking for camera pi updates...
[2026-10-18 01:19:07,964.964 INFO    ] 200
[2026-10-18 01:19:07,966.966 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:19:08,008.008 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:19:18,021.021 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:19:18,057.057 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:19:18,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:19:18,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:19:18,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:19:18,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:19:20,122.122 INFO    ] ================================================
[2026-10-18 01:19:20,138.138 INFO    ] Launching Daemon at Sun Oct 18 01:19:20 IST 2026
[2026-10-18 01:19:20,148.148 INFO    ] ================================================
[2026-10-18 01:19:20,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:19:20
[2026-10-18 01:19:21,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:19:21,602.602 INFO    ] Initializing speech engine...
[2026-10-18 01:19:21,625.625 INFO    ] 2026-10-18 01:19:21
[2026-10-18 01:19:21,881.881 INFO    ] 2026-10-18 01:19:21
[2026-10-18 01:19:21,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:19:22,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:19:22,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:19:22,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:19:22,439.439 INFO    ] time= 18/10/2026 01:19:22
[2026-10-18 01:19:22,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:19:22,463.463 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:19:22,596.596 INFO    ] No existing commands found in stream
[2026-10-18 01:19:27,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:19:27,622.622 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-18 01:19:30,280.280 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:19:30,283.283 INFO    ] Checking for system updates...
[2026-10-18 01:19:30,324.324 INFO    ] 200
[2026-10-18 01:19:30,326.326 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:19:30,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:19:30,381.381 INFO    ] No update needed
[2026-10-18 01:19:30,383.383 INFO    ] Checking for camera pi updates...
[2026-10-18 01:19:30,417.417 INFO    ] 200
[2026-10-18 01:19:30,419.419 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:19:30,466.466 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:19:40,480.480 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:19:40,516.516 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:19:40,526.526 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:19:40,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:19:40,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:19:40,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:19:42,579.579 INFO    ] ================================================
[2026-10-18 01:19:42,595.595 INFO    ] Launching Daemon at Sun Oct 18 01:19:42 IST 2026
[2026-10-18 01:19:42,606.606 INFO    ] ================================================
[2026-10-18 01:19:43,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:19:43
[2026-10-18 01:19:43,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:19:44,088.088 INFO    ] Initializing speech engine...
[2026-10-18 01:19:44,093.093 INFO    ] 2026-10-18 01:19:44
[2026-10-18 01:19:44,343.343 INFO    ] 2026-10-18 01:19:44
[2026-10-18 01:19:44,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:19:44,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:19:44,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:19:44,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:19:44,806.806 INFO    ] time= 18/10/2026 01:19:44
[2026-10-18 01:19:44,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:19:44,922.922 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:19:45,060.060 INFO    ] No existing commands found in stream
[2026-10-18 01:19:50,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:19:50,088.088 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-18 01:19:55,586.586 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:19:55,590.590 INFO    ] Checking for system updates...
[2026-10-18 01:19:55,626.626 INFO    ] 200
[2026-10-18 01:19:55,629.629 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:19:55,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:19:55,683.683 INFO    ] No update needed
[2026-10-18 01:19:55,686.686 INFO    ] Checking for camera pi updates...
[2026-10-18 01:19:55,724.724 INFO    ] 200
[2026-10-18 01:19:55,726.726 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:19:55,771.771 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:20:05,786.786 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:20:05,820.820 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:20:05,830.830 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:20:05,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:20:05,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:20:05,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:20:07,882.882 INFO    ] ================================================
[2026-10-18 01:20:07,898.898 INFO    ] Launching Daemon at Sun Oct 18 01:20:07 IST 2026
[2026-10-18 01:20:07,909.909 INFO    ] ================================================
[2026-10-18 01:20:08,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:20:08
[2026-10-18 01:20:09,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:20:09,340.340 INFO    ] Initializing speech engine...
[2026-10-18 01:20:09,349.349 INFO    ] 2026-10-18 01:20:09
[2026-10-18 01:20:09,605.605 INFO    ] 2026-10-18 01:20:09
[2026-10-18 01:20:09,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:20:09,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:20:09,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:20:10,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:20:10,146.146 INFO    ] time= 18/10/2026 01:20:10
[2026-10-18 01:20:10,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:20:10,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:20:10,287.287 INFO    ] No existing commands found in stream
[2026-10-18 01:20:15,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:20:15,317.317 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-18 01:20:18,333.333 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:20:18,335.335 INFO    ] Checking for system updates...
[2026-10-18 01:20:18,371.371 INFO    ] 200
[2026-10-18 01:20:18,373.373 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:20:18,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:20:18,429.429 INFO    ] No update needed
[2026-10-18 01:20:18,431.431 INFO    ] Checking for camera pi updates...
[2026-10-18 01:20:18,470.470 INFO    ] 200
[2026-10-18 01:20:18,472.472 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:20:18,513.513 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:20:28,530.530 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:20:28,571.571 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:20:28,582.582 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:20:28,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:20:28,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:20:28,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:20:30,639.639 INFO    ] ================================================
[2026-10-18 01:20:30,654.654 INFO    ] Launching Daemon at Sun Oct 18 01:20:30 IST 2026
[2026-10-18 01:20:30,664.664 INFO    ] ================================================
[2026-10-18 01:20:31,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:20:31
[2026-10-18 01:20:31,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:20:32,184.184 INFO    ] Initializing speech engine...
[2026-10-18 01:20:32,201.201 INFO    ] 2026-10-18 01:20:32
[2026-10-18 01:20:32,510.510 INFO    ] 2026-10-18 01:20:32
[2026-10-18 01:20:32,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:20:32,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:20:32,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:20:32,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:20:32,952.952 INFO    ] time= 18/10/2026 01:20:32
[2026-10-18 01:20:32,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:20:33,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:20:33,158.158 INFO    ] No existing commands found in stream
[2026-10-18 01:20:38,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:20:38,185.185 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-18 01:20:39,362.362 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:20:39,364.364 INFO    ] Checking for system updates...
[2026-10-18 01:20:39,401.401 INFO    ] 200
[2026-10-18 01:20:39,403.403 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:20:39,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:20:39,458.458 INFO    ] No update needed
[2026-10-18 01:20:39,461.461 INFO    ] Checking for camera pi updates...
[2026-10-18 01:20:39,494.494 INFO    ] 200
[2026-10-18 01:20:39,496.496 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:20:39,538.538 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:20:49,553.553 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:20:49,587.587 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:20:49,597.597 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:20:49,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:20:49,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:20:49,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:20:51,650.650 INFO    ] ================================================
[2026-10-18 01:20:51,665.665 INFO    ] Launching Daemon at Sun Oct 18 01:20:51 IST 2026
[2026-10-18 01:20:51,675.675 INFO    ] ================================================
[2026-10-18 01:20:52,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:20:52
[2026-10-18 01:20:52,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:20:53,138.138 INFO    ] Initializing speech engine...
[2026-10-18 01:20:53,143.143 INFO    ] 2026-10-18 01:20:53
[2026-10-18 01:20:53,391.391 INFO    ] 2026-10-18 01:20:53
[2026-10-18 01:20:53,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:20:53,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:20:53,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:20:53,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:20:53,947.947 INFO    ] time= 18/10/2026 01:20:53
[2026-10-18 01:20:53,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:20:53,970.970 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:20:54,101.101 INFO    ] No existing commands found in stream
[2026-10-18 01:20:59,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:20:59,117.117 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-18 01:21:03,235.235 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:21:03,239.239 INFO    ] Checking for system updates...
[2026-10-18 01:21:03,284.284 INFO    ] 200
[2026-10-18 01:21:03,288.288 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:21:03,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:21:03,353.353 INFO    ] No update needed
[2026-10-18 01:21:03,356.356 INFO    ] Checking for camera pi updates...
[2026-10-18 01:21:03,394.394 INFO    ] 200
[2026-10-18 01:21:03,397.397 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:21:03,437.437 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:21:13,453.453 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:21:13,489.489 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:21:13,498.498 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:21:13,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:21:13,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:21:13,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:21:15,552.552 INFO    ] ================================================
[2026-10-18 01:21:15,567.567 INFO    ] Launching Daemon at Sun Oct 18 01:21:15 IST 2026
[2026-10-18 01:21:15,578.578 INFO    ] ================================================
[2026-10-18 01:21:16,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:21:16
[2026-10-18 01:21:16,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:21:16,976.976 INFO    ] Initializing speech engine...
[2026-10-18 01:21:16,982.982 INFO    ] 2026-10-18 01:21:16
[2026-10-18 01:21:17,259.259 INFO    ] 2026-10-18 01:21:17
[2026-10-18 01:21:17,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:21:17,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:21:17,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:21:17,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:21:17,776.776 INFO    ] time= 18/10/2026 01:21:17
[2026-10-18 01:21:17,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:21:17,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:21:17,975.975 INFO    ] No existing commands found in stream
[2026-10-18 01:21:22,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:21:22,995.995 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-18 01:21:26,777.777 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:21:26,780.780 INFO    ] Checking for system updates...
[2026-10-18 01:21:26,816.816 INFO    ] 200
[2026-10-18 01:21:26,818.818 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:21:26,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:21:26,872.872 INFO    ] No update needed
[2026-10-18 01:21:26,875.875 INFO    ] Checking for camera pi updates...
[2026-10-18 01:21:26,913.913 INFO    ] 200
[2026-10-18 01:21:26,916.916 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:21:26,956.956 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:21:36,972.972 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:21:37,007.007 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:21:37,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:21:37,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:21:37,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:21:37,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:21:39,071.071 INFO    ] ================================================
[2026-10-18 01:21:39,087.087 INFO    ] Launching Daemon at Sun Oct 18 01:21:39 IST 2026
[2026-10-18 01:21:39,098.098 INFO    ] ================================================
[2026-10-18 01:21:39,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:21:39
[2026-10-18 01:21:40,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:21:40,513.513 INFO    ] Initializing speech engine...
[2026-10-18 01:21:40,521.521 INFO    ] 2026-10-18 01:21:40
[2026-10-18 01:21:40,822.822 INFO    ] 2026-10-18 01:21:40
[2026-10-18 01:21:40,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:21:41,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:21:41,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:21:41,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:21:41,251.251 INFO    ] time= 18/10/2026 01:21:41
[2026-10-18 01:21:41,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:21:41,281.281 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:21:41,431.431 INFO    ] No existing commands found in stream
[2026-10-18 01:21:46,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:21:46,460.460 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-18 01:21:47,037.037 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:21:47,040.040 INFO    ] Checking for system updates...
[2026-10-18 01:21:47,078.078 INFO    ] 200
[2026-10-18 01:21:47,080.080 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:21:47,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:21:47,145.145 INFO    ] No update needed
[2026-10-18 01:21:47,148.148 INFO    ] Checking for camera pi updates...
[2026-10-18 01:21:47,183.183 INFO    ] 200
[2026-10-18 01:21:47,186.186 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:21:47,228.228 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:21:57,241.241 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:21:57,283.283 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:21:57,294.294 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:21:57,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:21:57,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:21:57,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:21:59,351.351 INFO    ] ================================================
[2026-10-18 01:21:59,367.367 INFO    ] Launching Daemon at Sun Oct 18 01:21:59 IST 2026
[2026-10-18 01:21:59,377.377 INFO    ] ================================================
[2026-10-18 01:21:59,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:21:59
[2026-10-18 01:22:00,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:22:00,803.803 INFO    ] Initializing speech engine...
[2026-10-18 01:22:00,814.814 INFO    ] 2026-10-18 01:22:00
[2026-10-18 01:22:01,066.066 INFO    ] 2026-10-18 01:22:01
[2026-10-18 01:22:01,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:22:01,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:22:01,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:22:01,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:22:01,528.528 INFO    ] time= 18/10/2026 01:22:01
[2026-10-18 01:22:01,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:22:01,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:22:01,638.638 INFO    ] No existing commands found in stream
[2026-10-18 01:22:06,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:22:06,651.651 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-18 01:22:10,450.450 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:22:10,453.453 INFO    ] Checking for system updates...
[2026-10-18 01:22:10,492.492 INFO    ] 200
[2026-10-18 01:22:10,495.495 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:22:10,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:22:10,549.549 INFO    ] No update needed
[2026-10-18 01:22:10,551.551 INFO    ] Checking for camera pi updates...
[2026-10-18 01:22:10,589.589 INFO    ] 200
[2026-10-18 01:22:10,591.591 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:22:10,635.635 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:22:20,650.650 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:22:20,685.685 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:22:20,694.694 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:22:20,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:22:20,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:22:20,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:22:22,746.746 INFO    ] ================================================
[2026-10-18 01:22:22,761.761 INFO    ] Launching Daemon at Sun Oct 18 01:22:22 IST 2026
[2026-10-18 01:22:22,772.772 INFO    ] ================================================
[2026-10-18 01:22:23,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:22:23
[2026-10-18 01:22:23,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:22:24,196.196 INFO    ] Initializing speech engine...
[2026-10-18 01:22:24,205.205 INFO    ] 2026-10-18 01:22:24
[2026-10-18 01:22:24,462.462 INFO    ] 2026-10-18 01:22:24
[2026-10-18 01:22:24,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:22:24,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:22:24,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:22:24,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:22:25,002.002 INFO    ] time= 18/10/2026 01:22:24
[2026-10-18 01:22:25,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:22:25,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:22:25,159.159 INFO    ] No existing commands found in stream
[2026-10-18 01:22:30,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:22:30,189.189 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-18 01:22:33,751.751 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:22:33,753.753 INFO    ] Checking for system updates...
[2026-10-18 01:22:33,789.789 INFO    ] 200
[2026-10-18 01:22:33,792.792 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:22:33,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:22:33,846.846 INFO    ] No update needed
[2026-10-18 01:22:33,849.849 INFO    ] Checking for camera pi updates...
[2026-10-18 01:22:33,888.888 INFO    ] 200
[2026-10-18 01:22:33,890.890 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:22:33,930.930 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:22:43,946.946 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:22:43,981.981 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:22:43,990.990 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:22:43,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:22:43,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:22:44,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:22:46,044.044 INFO    ] ================================================
[2026-10-18 01:22:46,059.059 INFO    ] Launching Daemon at Sun Oct 18 01:22:46 IST 2026
[2026-10-18 01:22:46,069.069 INFO    ] ================================================
[2026-10-18 01:22:46,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:22:46
[2026-10-18 01:22:47,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:22:47,545.545 INFO    ] Initializing speech engine...
[2026-10-18 01:22:47,559.559 INFO    ] 2026-10-18 01:22:47
[2026-10-18 01:22:47,869.869 INFO    ] 2026-10-18 01:22:47
[2026-10-18 01:22:47,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:22:48,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:22:48,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:22:48,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:22:48,390.390 INFO    ] time= 18/10/2026 01:22:48
[2026-10-18 01:22:48,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:22:48,437.437 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:22:48,553.553 INFO    ] No existing commands found in stream
[2026-10-18 01:22:53,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:22:53,586.586 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-18 01:22:55,160.160 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:22:55,163.163 INFO    ] Checking for system updates...
[2026-10-18 01:22:55,200.200 INFO    ] 200
[2026-10-18 01:22:55,203.203 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:22:55,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:22:55,259.259 INFO    ] No update needed
[2026-10-18 01:22:55,261.261 INFO    ] Checking for camera pi updates...
[2026-10-18 01:22:55,296.296 INFO    ] 200
[2026-10-18 01:22:55,298.298 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:22:55,338.338 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:23:05,353.353 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:23:05,389.389 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:23:05,399.399 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:23:05,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:23:05,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:23:05,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:23:07,451.451 INFO    ] ================================================
[2026-10-18 01:23:07,466.466 INFO    ] Launching Daemon at Sun Oct 18 01:23:07 IST 2026
[2026-10-18 01:23:07,477.477 INFO    ] ================================================
[2026-10-18 01:23:08,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:23:08
[2026-10-18 01:23:08,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:23:08,946.946 INFO    ] Initializing speech engine...
[2026-10-18 01:23:08,953.953 INFO    ] 2026-10-18 01:23:08
[2026-10-18 01:23:09,220.220 INFO    ] 2026-10-18 01:23:09
[2026-10-18 01:23:09,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:23:09,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:23:09,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:23:09,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:23:09,732.732 INFO    ] time= 18/10/2026 01:23:09
[2026-10-18 01:23:09,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:23:09,822.822 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:23:09,975.975 INFO    ] No existing commands found in stream
[2026-10-18 01:23:15,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:23:15,005.005 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-18 01:23:18,755.755 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 01:23:18,758.758 INFO    ] Checking for system updates...
[2026-10-18 01:23:18,797.797 INFO    ] 200
[2026-10-18 01:23:18,799.799 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:23:18,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:23:18,853.853 INFO    ] No update needed
[2026-10-18 01:23:18,856.856 INFO    ] Checking for camera pi updates...
[2026-10-18 01:23:18,892.892 INFO    ] 200
[2026-10-18 01:23:18,895.895 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:23:18,939.939 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:23:28,954.954 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:23:28,990.990 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:23:29,000.000 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:23:29,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:23:29,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:23:29,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:23:31,054.054 INFO    ] ================================================
[2026-10-18 01:23:31,072.072 INFO    ] Launching Daemon at Sun Oct 18 01:23:31 IST 2026
[2026-10-18 01:23:31,083.083 INFO    ] ================================================
[2026-10-18 01:23:31,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:23:31
[2026-10-18 01:23:32,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:23:32,698.698 INFO    ] Initializing speech engine...
[2026-10-18 01:23:32,712.712 INFO    ] 2026-10-18 01:23:32
[2026-10-18 01:23:32,997.997 INFO    ] 2026-10-18 01:23:32
[2026-10-18 01:23:33,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:23:33,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:23:33,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:23:33,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:23:33,456.456 INFO    ] time= 18/10/2026 01:23:33
[2026-10-18 01:23:33,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:23:33,560.560 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:23:33,682.682 INFO    ] No existing commands found in stream
[2026-10-18 01:23:38,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:23:38,716.716 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-18 01:23:42,400.400 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:23:42,403.403 INFO    ] Checking for system updates...
[2026-10-18 01:23:42,441.441 INFO    ] 200
[2026-10-18 01:23:42,444.444 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:23:42,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:23:42,498.498 INFO    ] No update needed
[2026-10-18 01:23:42,500.500 INFO    ] Checking for camera pi updates...
[2026-10-18 01:23:42,537.537 INFO    ] 200
[2026-10-18 01:23:42,540.540 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:23:42,580.580 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:23:52,595.595 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:23:52,632.632 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:23:52,641.641 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:23:52,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:23:52,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:23:52,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:23:54,695.695 INFO    ] ================================================
[2026-10-18 01:23:54,710.710 INFO    ] Launching Daemon at Sun Oct 18 01:23:54 IST 2026
[2026-10-18 01:23:54,721.721 INFO    ] ================================================
[2026-10-18 01:23:55,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:23:55
[2026-10-18 01:23:55,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:23:56,123.123 INFO    ] Initializing speech engine...
[2026-10-18 01:23:56,146.146 INFO    ] 2026-10-18 01:23:56
[2026-10-18 01:23:56,405.405 INFO    ] 2026-10-18 01:23:56
[2026-10-18 01:23:56,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:23:56,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:23:56,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:23:56,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:23:56,962.962 INFO    ] time= 18/10/2026 01:23:56
[2026-10-18 01:23:56,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:23:56,986.986 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:23:57,119.119 INFO    ] No existing commands found in stream
[2026-10-18 01:24:02,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:24:02,146.146 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-18 01:24:05,319.319 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:24:05,321.321 INFO    ] Checking for system updates...
[2026-10-18 01:24:05,360.360 INFO    ] 200
[2026-10-18 01:24:05,363.363 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:24:05,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:24:05,417.417 INFO    ] No update needed
[2026-10-18 01:24:05,420.420 INFO    ] Checking for camera pi updates...
[2026-10-18 01:24:05,453.453 INFO    ] 200
[2026-10-18 01:24:05,456.456 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:24:05,495.495 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:24:15,506.506 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:24:15,540.540 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:24:15,550.550 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:24:15,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:24:15,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:24:15,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:24:17,603.603 INFO    ] ================================================
[2026-10-18 01:24:17,618.618 INFO    ] Launching Daemon at Sun Oct 18 01:24:17 IST 2026
[2026-10-18 01:24:17,629.629 INFO    ] ================================================
[2026-10-18 01:24:18,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:24:18
[2026-10-18 01:24:18,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:24:19,030.030 INFO    ] Initializing speech engine...
[2026-10-18 01:24:19,037.037 INFO    ] 2026-10-18 01:24:19
[2026-10-18 01:24:19,327.327 INFO    ] 2026-10-18 01:24:19
[2026-10-18 01:24:19,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:24:19,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:24:19,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:24:19,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:24:19,740.740 INFO    ] time= 18/10/2026 01:24:19
[2026-10-18 01:24:19,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:24:19,813.813 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:24:19,930.930 INFO    ] No existing commands found in stream
[2026-10-18 01:24:24,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:24:24,963.963 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-18 01:24:28,643.643 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:24:28,646.646 INFO    ] Checking for system updates...
[2026-10-18 01:24:28,684.684 INFO    ] 200
[2026-10-18 01:24:28,687.687 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:24:28,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:24:28,746.746 INFO    ] No update needed
[2026-10-18 01:24:28,749.749 INFO    ] Checking for camera pi updates...
[2026-10-18 01:24:28,785.785 INFO    ] 200
[2026-10-18 01:24:28,788.788 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:24:28,829.829 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:24:38,842.842 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:24:38,877.877 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:24:38,886.886 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:24:38,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:24:38,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:24:38,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:24:40,938.938 INFO    ] ================================================
[2026-10-18 01:24:40,953.953 INFO    ] Launching Daemon at Sun Oct 18 01:24:40 IST 2026
[2026-10-18 01:24:40,964.964 INFO    ] ================================================
[2026-10-18 01:24:41,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:24:41
[2026-10-18 01:24:42,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:24:42,528.528 INFO    ] Initializing speech engine...
[2026-10-18 01:24:42,552.552 INFO    ] 2026-10-18 01:24:42
[2026-10-18 01:24:42,841.841 INFO    ] 2026-10-18 01:24:42
[2026-10-18 01:24:42,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:24:43,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:24:43,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:24:43,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:24:43,359.359 INFO    ] time= 18/10/2026 01:24:43
[2026-10-18 01:24:43,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:24:43,386.386 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:24:43,518.518 INFO    ] No existing commands found in stream
[2026-10-18 01:24:48,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:24:48,535.535 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-18 01:24:51,243.243 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:24:51,246.246 INFO    ] Checking for system updates...
[2026-10-18 01:24:51,285.285 INFO    ] 200
[2026-10-18 01:24:51,288.288 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:24:51,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:24:51,350.350 INFO    ] No update needed
[2026-10-18 01:24:51,352.352 INFO    ] Checking for camera pi updates...
[2026-10-18 01:24:51,386.386 INFO    ] 200
[2026-10-18 01:24:51,389.389 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:24:51,430.430 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:25:01,448.448 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:25:01,509.509 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:25:01,523.523 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:25:01,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:25:01,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:25:01,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:25:03,599.599 INFO    ] ================================================
[2026-10-18 01:25:03,615.615 INFO    ] Launching Daemon at Sun Oct 18 01:25:03 IST 2026
[2026-10-18 01:25:03,626.626 INFO    ] ================================================
[2026-10-18 01:25:04,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:25:04
[2026-10-18 01:25:04,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:25:05,071.071 INFO    ] Initializing speech engine...
[2026-10-18 01:25:05,079.079 INFO    ] 2026-10-18 01:25:05
[2026-10-18 01:25:05,333.333 INFO    ] 2026-10-18 01:25:05
[2026-10-18 01:25:05,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:25:05,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:25:05,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:25:05,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:25:05,874.874 INFO    ] time= 18/10/2026 01:25:05
[2026-10-18 01:25:05,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:25:05,897.897 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:25:06,029.029 INFO    ] No existing commands found in stream
[2026-10-18 01:25:11,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:25:11,060.060 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-18 01:25:13,932.932 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 01:25:13,935.935 INFO    ] Checking for system updates...
[2026-10-18 01:25:13,971.971 INFO    ] 200
[2026-10-18 01:25:13,973.973 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:25:14,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:25:14,028.028 INFO    ] No update needed
[2026-10-18 01:25:14,031.031 INFO    ] Checking for camera pi updates...
[2026-10-18 01:25:14,068.068 INFO    ] 200
[2026-10-18 01:25:14,071.071 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:25:14,111.111 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:25:24,127.127 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:25:24,169.169 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:25:24,179.179 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:25:24,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:25:24,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:25:24,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:25:26,232.232 INFO    ] ================================================
[2026-10-18 01:25:26,247.247 INFO    ] Launching Daemon at Sun Oct 18 01:25:26 IST 2026
[2026-10-18 01:25:26,257.257 INFO    ] ================================================
[2026-10-18 01:25:26,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:25:26
[2026-10-18 01:25:27,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:25:27,719.719 INFO    ] Initializing speech engine...
[2026-10-18 01:25:27,730.730 INFO    ] 2026-10-18 01:25:27
[2026-10-18 01:25:28,004.004 INFO    ] 2026-10-18 01:25:27
[2026-10-18 01:25:28,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:25:28,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:25:28,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:25:28,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:25:28,542.542 INFO    ] time= 18/10/2026 01:25:28
[2026-10-18 01:25:28,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:25:28,572.572 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:25:28,723.723 INFO    ] No existing commands found in stream
[2026-10-18 01:25:33,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:25:33,744.744 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-18 01:25:35,610.610 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 01:25:35,612.612 INFO    ] Checking for system updates...
[2026-10-18 01:25:35,650.650 INFO    ] 200
[2026-10-18 01:25:35,652.652 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:25:35,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:25:35,711.711 INFO    ] No update needed
[2026-10-18 01:25:35,713.713 INFO    ] Checking for camera pi updates...
[2026-10-18 01:25:35,749.749 INFO    ] 200
[2026-10-18 01:25:35,751.751 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:25:35,794.794 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:25:45,808.808 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:25:45,843.843 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:25:45,852.852 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:25:45,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:25:45,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:25:45,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:25:47,904.904 INFO    ] ================================================
[2026-10-18 01:25:47,920.920 INFO    ] Launching Daemon at Sun Oct 18 01:25:47 IST 2026
[2026-10-18 01:25:47,931.931 INFO    ] ================================================
[2026-10-18 01:25:48,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:25:48
[2026-10-18 01:25:49,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:25:49,344.344 INFO    ] Initializing speech engine...
[2026-10-18 01:25:49,350.350 INFO    ] 2026-10-18 01:25:49
[2026-10-18 01:25:49,644.644 INFO    ] 2026-10-18 01:25:49
[2026-10-18 01:25:49,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:25:49,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:25:49,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:25:50,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:25:50,052.052 INFO    ] time= 18/10/2026 01:25:50
[2026-10-18 01:25:50,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:25:50,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:25:50,243.243 INFO    ] No existing commands found in stream
[2026-10-18 01:25:55,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:25:55,276.276 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-18 01:25:57,963.963 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:25:57,966.966 INFO    ] Checking for system updates...
[2026-10-18 01:25:58,001.001 INFO    ] 200
[2026-10-18 01:25:58,003.003 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:25:58,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:25:58,059.059 INFO    ] No update needed
[2026-10-18 01:25:58,062.062 INFO    ] Checking for camera pi updates...
[2026-10-18 01:25:58,095.095 INFO    ] 200
[2026-10-18 01:25:58,097.097 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:25:58,137.137 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:26:08,150.150 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:26:08,185.185 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:26:08,194.194 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:26:08,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:26:08,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:26:08,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:26:10,247.247 INFO    ] ================================================
[2026-10-18 01:26:10,263.263 INFO    ] Launching Daemon at Sun Oct 18 01:26:10 IST 2026
[2026-10-18 01:26:10,274.274 INFO    ] ================================================
[2026-10-18 01:26:10,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:26:10
[2026-10-18 01:26:11,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:26:11,678.678 INFO    ] Initializing speech engine...
[2026-10-18 01:26:11,693.693 INFO    ] 2026-10-18 01:26:11
[2026-10-18 01:26:11,961.961 INFO    ] 2026-10-18 01:26:11
[2026-10-18 01:26:12,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:26:12,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:26:12,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:26:12,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:26:12,469.469 INFO    ] time= 18/10/2026 01:26:12
[2026-10-18 01:26:12,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:26:12,541.541 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:26:12,694.694 INFO    ] No existing commands found in stream
[2026-10-18 01:26:17,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:26:17,719.719 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-18 01:26:22,134.134 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:26:22,137.137 INFO    ] Checking for system updates...
[2026-10-18 01:26:22,172.172 INFO    ] 200
[2026-10-18 01:26:22,175.175 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:26:22,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:26:22,228.228 INFO    ] No update needed
[2026-10-18 01:26:22,231.231 INFO    ] Checking for camera pi updates...
[2026-10-18 01:26:22,264.264 INFO    ] 200
[2026-10-18 01:26:22,267.267 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:26:22,308.308 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:26:32,323.323 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:26:32,359.359 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:26:32,370.370 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:26:32,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:26:32,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:26:32,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:26:34,424.424 INFO    ] ================================================
[2026-10-18 01:26:34,439.439 INFO    ] Launching Daemon at Sun Oct 18 01:26:34 IST 2026
[2026-10-18 01:26:34,451.451 INFO    ] ================================================
[2026-10-18 01:26:35,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:26:35
[2026-10-18 01:26:35,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:26:36,028.028 INFO    ] Initializing speech engine...
[2026-10-18 01:26:36,037.037 INFO    ] 2026-10-18 01:26:36
[2026-10-18 01:26:36,318.318 INFO    ] 2026-10-18 01:26:36
[2026-10-18 01:26:36,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:26:36,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:26:36,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:26:36,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:26:36,851.851 INFO    ] time= 18/10/2026 01:26:36
[2026-10-18 01:26:36,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:26:36,898.898 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:26:37,019.019 INFO    ] No existing commands found in stream
[2026-10-18 01:26:42,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:26:42,053.053 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-18 01:26:46,133.133 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:26:46,135.135 INFO    ] Checking for system updates...
[2026-10-18 01:26:46,174.174 INFO    ] 200
[2026-10-18 01:26:46,176.176 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:26:46,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:26:46,236.236 INFO    ] No update needed
[2026-10-18 01:26:46,239.239 INFO    ] Checking for camera pi updates...
[2026-10-18 01:26:46,275.275 INFO    ] 200
[2026-10-18 01:26:46,277.277 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:26:46,321.321 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:26:56,334.334 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:26:56,369.369 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:26:56,379.379 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:26:56,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:26:56,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:26:56,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:26:58,431.431 INFO    ] ================================================
[2026-10-18 01:26:58,446.446 INFO    ] Launching Daemon at Sun Oct 18 01:26:58 IST 2026
[2026-10-18 01:26:58,457.457 INFO    ] ================================================
[2026-10-18 01:26:59,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:26:59
[2026-10-18 01:26:59,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:27:00,030.030 INFO    ] Initializing speech engine...
[2026-10-18 01:27:00,042.042 INFO    ] 2026-10-18 01:27:00
[2026-10-18 01:27:00,326.326 INFO    ] 2026-10-18 01:27:00
[2026-10-18 01:27:00,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:27:00,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:27:00,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:27:00,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:27:00,862.862 INFO    ] time= 18/10/2026 01:27:00
[2026-10-18 01:27:00,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:27:00,910.910 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:27:01,017.017 INFO    ] No existing commands found in stream
[2026-10-18 01:27:06,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:27:06,050.050 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-18 01:27:08,020.020 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:27:08,023.023 INFO    ] Checking for system updates...
[2026-10-18 01:27:08,060.060 INFO    ] 200
[2026-10-18 01:27:08,062.062 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:27:08,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:27:08,125.125 INFO    ] No update needed
[2026-10-18 01:27:08,128.128 INFO    ] Checking for camera pi updates...
[2026-10-18 01:27:08,176.176 INFO    ] 200
[2026-10-18 01:27:08,179.179 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:27:08,220.220 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:27:18,235.235 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:27:18,274.274 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:27:18,285.285 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:27:18,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:27:18,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:27:18,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:27:20,340.340 INFO    ] ================================================
[2026-10-18 01:27:20,356.356 INFO    ] Launching Daemon at Sun Oct 18 01:27:20 IST 2026
[2026-10-18 01:27:20,367.367 INFO    ] ================================================
[2026-10-18 01:27:21,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:27:20
[2026-10-18 01:27:21,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:27:21,948.948 INFO    ] Initializing speech engine...
[2026-10-18 01:27:21,957.957 INFO    ] 2026-10-18 01:27:21
[2026-10-18 01:27:22,234.234 INFO    ] 2026-10-18 01:27:22
[2026-10-18 01:27:22,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:27:22,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:27:22,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:27:22,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:27:22,791.791 INFO    ] time= 18/10/2026 01:27:22
[2026-10-18 01:27:22,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:27:22,819.819 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:27:22,952.952 INFO    ] No existing commands found in stream
[2026-10-18 01:27:27,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:27:27,973.973 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-18 01:27:28,925.925 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 01:27:28,928.928 INFO    ] Checking for system updates...
[2026-10-18 01:27:28,964.964 INFO    ] 200
[2026-10-18 01:27:28,967.967 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:27:29,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:27:29,029.029 INFO    ] No update needed
[2026-10-18 01:27:29,032.032 INFO    ] Checking for camera pi updates...
[2026-10-18 01:27:29,069.069 INFO    ] 200
[2026-10-18 01:27:29,071.071 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:27:29,121.121 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:27:39,136.136 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:27:39,176.176 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:27:39,187.187 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:27:39,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:27:39,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:27:39,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:27:41,242.242 INFO    ] ================================================
[2026-10-18 01:27:41,259.259 INFO    ] Launching Daemon at Sun Oct 18 01:27:41 IST 2026
[2026-10-18 01:27:41,270.270 INFO    ] ================================================
[2026-10-18 01:27:41,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:27:41
[2026-10-18 01:27:42,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:27:42,701.701 INFO    ] Initializing speech engine...
[2026-10-18 01:27:42,706.706 INFO    ] 2026-10-18 01:27:42
[2026-10-18 01:27:42,950.950 INFO    ] 2026-10-18 01:27:42
[2026-10-18 01:27:42,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:27:43,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:27:43,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:27:43,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:27:43,460.460 INFO    ] time= 18/10/2026 01:27:43
[2026-10-18 01:27:43,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:27:43,518.518 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:27:43,690.690 INFO    ] No existing commands found in stream
[2026-10-18 01:27:48,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:27:48,729.729 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-18 01:27:53,151.151 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:27:53,154.154 INFO    ] Checking for system updates...
[2026-10-18 01:27:53,195.195 INFO    ] 200
[2026-10-18 01:27:53,198.198 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:27:53,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:27:53,254.254 INFO    ] No update needed
[2026-10-18 01:27:53,257.257 INFO    ] Checking for camera pi updates...
[2026-10-18 01:27:53,295.295 INFO    ] 200
[2026-10-18 01:27:53,298.298 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:27:53,354.354 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:28:03,368.368 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:28:03,419.419 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:28:03,432.432 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:28:03,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:28:03,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:28:03,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:28:05,490.490 INFO    ] ================================================
[2026-10-18 01:28:05,506.506 INFO    ] Launching Daemon at Sun Oct 18 01:28:05 IST 2026
[2026-10-18 01:28:05,517.517 INFO    ] ================================================
[2026-10-18 01:28:06,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:28:06
[2026-10-18 01:28:06,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:28:07,181.181 INFO    ] Initializing speech engine...
[2026-10-18 01:28:07,194.194 INFO    ] 2026-10-18 01:28:07
[2026-10-18 01:28:07,510.510 INFO    ] 2026-10-18 01:28:07
[2026-10-18 01:28:07,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:28:07,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:28:07,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:28:08,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:28:08,016.016 INFO    ] time= 18/10/2026 01:28:08
[2026-10-18 01:28:08,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:28:08,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:28:08,221.221 INFO    ] No existing commands found in stream
[2026-10-18 01:28:13,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:28:13,255.255 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-18 01:28:17,521.521 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:28:17,524.524 INFO    ] Checking for system updates...
[2026-10-18 01:28:17,561.561 INFO    ] 200
[2026-10-18 01:28:17,563.563 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:28:17,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:28:17,619.619 INFO    ] No update needed
[2026-10-18 01:28:17,621.621 INFO    ] Checking for camera pi updates...
[2026-10-18 01:28:17,655.655 INFO    ] 200
[2026-10-18 01:28:17,658.658 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:28:17,699.699 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:28:27,713.713 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:28:27,748.748 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:28:27,758.758 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:28:27,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:28:27,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:28:27,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:28:29,811.811 INFO    ] ================================================
[2026-10-18 01:28:29,827.827 INFO    ] Launching Daemon at Sun Oct 18 01:28:29 IST 2026
[2026-10-18 01:28:29,838.838 INFO    ] ================================================
[2026-10-18 01:28:30,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:28:30
[2026-10-18 01:28:31,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:28:31,504.504 INFO    ] Initializing speech engine...
[2026-10-18 01:28:31,518.518 INFO    ] 2026-10-18 01:28:31
[2026-10-18 01:28:31,799.799 INFO    ] 2026-10-18 01:28:31
[2026-10-18 01:28:31,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:28:32,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:28:32,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:28:32,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:28:32,293.293 INFO    ] time= 18/10/2026 01:28:32
[2026-10-18 01:28:32,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:28:32,391.391 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:28:32,528.528 INFO    ] No existing commands found in stream
[2026-10-18 01:28:37,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:28:37,556.556 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-18 01:28:38,982.982 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:28:38,985.985 INFO    ] Checking for system updates...
[2026-10-18 01:28:39,021.021 INFO    ] 200
[2026-10-18 01:28:39,024.024 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:28:39,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:28:39,078.078 INFO    ] No update needed
[2026-10-18 01:28:39,081.081 INFO    ] Checking for camera pi updates...
[2026-10-18 01:28:39,114.114 INFO    ] 200
[2026-10-18 01:28:39,117.117 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:28:39,157.157 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:28:49,172.172 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:28:49,206.206 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:28:49,216.216 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:28:49,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:28:49,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:28:49,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:28:51,269.269 INFO    ] ================================================
[2026-10-18 01:28:51,286.286 INFO    ] Launching Daemon at Sun Oct 18 01:28:51 IST 2026
[2026-10-18 01:28:51,297.297 INFO    ] ================================================
[2026-10-18 01:28:51,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:28:51
[2026-10-18 01:28:52,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:28:52,719.719 INFO    ] Initializing speech engine...
[2026-10-18 01:28:52,728.728 INFO    ] 2026-10-18 01:28:52
[2026-10-18 01:28:52,973.973 INFO    ] 2026-10-18 01:28:52
[2026-10-18 01:28:53,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:28:53,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:28:53,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:28:53,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:28:53,468.468 INFO    ] time= 18/10/2026 01:28:53
[2026-10-18 01:28:53,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:28:53,535.535 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:28:53,683.683 INFO    ] No existing commands found in stream
[2026-10-18 01:28:58,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:28:58,704.704 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-18 01:29:01,037.037 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:29:01,039.039 INFO    ] Checking for system updates...
[2026-10-18 01:29:01,083.083 INFO    ] 200
[2026-10-18 01:29:01,086.086 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:29:01,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:29:01,140.140 INFO    ] No update needed
[2026-10-18 01:29:01,143.143 INFO    ] Checking for camera pi updates...
[2026-10-18 01:29:01,177.177 INFO    ] 200
[2026-10-18 01:29:01,180.180 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:29:01,219.219 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:29:11,233.233 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:29:11,268.268 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:29:11,278.278 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:29:11,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:29:11,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:29:11,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:29:13,330.330 INFO    ] ================================================
[2026-10-18 01:29:13,346.346 INFO    ] Launching Daemon at Sun Oct 18 01:29:13 IST 2026
[2026-10-18 01:29:13,357.357 INFO    ] ================================================
[2026-10-18 01:29:13,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:29:13
[2026-10-18 01:29:14,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:29:14,839.839 INFO    ] Initializing speech engine...
[2026-10-18 01:29:14,846.846 INFO    ] 2026-10-18 01:29:14
[2026-10-18 01:29:15,111.111 INFO    ] 2026-10-18 01:29:15
[2026-10-18 01:29:15,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:29:15,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:29:15,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:29:15,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:29:15,658.658 INFO    ] time= 18/10/2026 01:29:15
[2026-10-18 01:29:15,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:29:15,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:29:15,832.832 INFO    ] No existing commands found in stream
[2026-10-18 01:29:20,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:29:20,865.865 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-18 01:29:25,235.235 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:29:25,238.238 INFO    ] Checking for system updates...
[2026-10-18 01:29:25,278.278 INFO    ] 200
[2026-10-18 01:29:25,280.280 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:29:25,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:29:25,341.341 INFO    ] No update needed
[2026-10-18 01:29:25,344.344 INFO    ] Checking for camera pi updates...
[2026-10-18 01:29:25,381.381 INFO    ] 200
[2026-10-18 01:29:25,383.383 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:29:25,429.429 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:29:35,443.443 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:29:35,478.478 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:29:35,488.488 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:29:35,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:29:35,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:29:35,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:29:37,540.540 INFO    ] ================================================
[2026-10-18 01:29:37,556.556 INFO    ] Launching Daemon at Sun Oct 18 01:29:37 IST 2026
[2026-10-18 01:29:37,568.568 INFO    ] ================================================
[2026-10-18 01:29:38,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:29:38
[2026-10-18 01:29:38,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:29:39,007.007 INFO    ] Initializing speech engine...
[2026-10-18 01:29:39,016.016 INFO    ] 2026-10-18 01:29:39
[2026-10-18 01:29:39,286.286 INFO    ] 2026-10-18 01:29:39
[2026-10-18 01:29:39,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:29:39,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:29:39,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:29:39,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:29:39,719.719 INFO    ] time= 18/10/2026 01:29:39
[2026-10-18 01:29:39,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:29:39,773.773 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:29:39,922.922 INFO    ] No existing commands found in stream
[2026-10-18 01:29:44,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:29:44,950.950 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-18 01:29:46,380.380 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:29:46,383.383 INFO    ] Checking for system updates...
[2026-10-18 01:29:46,437.437 INFO    ] 200
[2026-10-18 01:29:46,441.441 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:29:46,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:29:46,505.505 INFO    ] No update needed
[2026-10-18 01:29:46,508.508 INFO    ] Checking for camera pi updates...
[2026-10-18 01:29:46,546.546 INFO    ] 200
[2026-10-18 01:29:46,550.550 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:29:46,596.596 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:29:56,614.614 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:29:56,655.655 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:29:56,666.666 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:29:56,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:29:56,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:29:56,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:29:58,721.721 INFO    ] ================================================
[2026-10-18 01:29:58,737.737 INFO    ] Launching Daemon at Sun Oct 18 01:29:58 IST 2026
[2026-10-18 01:29:58,749.749 INFO    ] ================================================
[2026-10-18 01:29:59,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:29:59
[2026-10-18 01:29:59,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:30:00,174.174 INFO    ] Initializing speech engine...
[2026-10-18 01:30:00,183.183 INFO    ] 2026-10-18 01:30:00
[2026-10-18 01:30:00,428.428 INFO    ] 2026-10-18 01:30:00
[2026-10-18 01:30:00,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:30:00,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:30:00,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:30:00,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:30:00,921.921 INFO    ] time= 18/10/2026 01:30:00
[2026-10-18 01:30:00,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:30:00,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:30:01,136.136 INFO    ] No existing commands found in stream
[2026-10-18 01:30:06,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:30:06,154.154 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-18 01:30:08,830.830 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:30:08,833.833 INFO    ] Checking for system updates...
[2026-10-18 01:30:08,879.879 INFO    ] 200
[2026-10-18 01:30:08,881.881 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:30:08,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:30:08,979.979 INFO    ] No update needed
[2026-10-18 01:30:08,981.981 INFO    ] Checking for camera pi updates...
[2026-10-18 01:30:09,029.029 INFO    ] 200
[2026-10-18 01:30:09,031.031 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:30:09,072.072 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:30:19,087.087 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:30:19,122.122 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:30:19,132.132 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:30:19,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:30:19,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:30:19,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:30:21,186.186 INFO    ] ================================================
[2026-10-18 01:30:21,203.203 INFO    ] Launching Daemon at Sun Oct 18 01:30:21 IST 2026
[2026-10-18 01:30:21,214.214 INFO    ] ================================================
[2026-10-18 01:30:21,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:30:21
[2026-10-18 01:30:22,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:30:22,654.654 INFO    ] Initializing speech engine...
[2026-10-18 01:30:22,661.661 INFO    ] 2026-10-18 01:30:22
[2026-10-18 01:30:22,907.907 INFO    ] 2026-10-18 01:30:22
[2026-10-18 01:30:22,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:30:23,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:30:23,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:30:23,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:30:23,462.462 INFO    ] time= 18/10/2026 01:30:23
[2026-10-18 01:30:23,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:30:23,486.486 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:30:23,622.622 INFO    ] No existing commands found in stream
[2026-10-18 01:30:28,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:30:28,650.650 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-18 01:30:30,897.897 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:30:30,899.899 INFO    ] Checking for system updates...
[2026-10-18 01:30:30,935.935 INFO    ] 200
[2026-10-18 01:30:30,938.938 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:30:30,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:30:30,992.992 INFO    ] No update needed
[2026-10-18 01:30:30,995.995 INFO    ] Checking for camera pi updates...
[2026-10-18 01:30:31,032.032 INFO    ] 200
[2026-10-18 01:30:31,034.034 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:30:31,074.074 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:30:41,091.091 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:30:41,131.131 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:30:41,142.142 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:30:41,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:30:41,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:30:41,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:30:43,197.197 INFO    ] ================================================
[2026-10-18 01:30:43,213.213 INFO    ] Launching Daemon at Sun Oct 18 01:30:43 IST 2026
[2026-10-18 01:30:43,224.224 INFO    ] ================================================
[2026-10-18 01:30:43,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:30:43
[2026-10-18 01:30:44,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:30:44,647.647 INFO    ] Initializing speech engine...
[2026-10-18 01:30:44,656.656 INFO    ] 2026-10-18 01:30:44
[2026-10-18 01:30:44,903.903 INFO    ] 2026-10-18 01:30:44
[2026-10-18 01:30:44,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:30:45,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:30:45,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:30:45,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:30:45,389.389 INFO    ] time= 18/10/2026 01:30:45
[2026-10-18 01:30:45,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:30:45,467.467 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:30:45,609.609 INFO    ] No existing commands found in stream
[2026-10-18 01:30:50,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:30:50,629.629 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-18 01:30:51,159.159 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 01:30:51,162.162 INFO    ] Checking for system updates...
[2026-10-18 01:30:51,200.200 INFO    ] 200
[2026-10-18 01:30:51,202.202 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:30:51,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:30:51,259.259 INFO    ] No update needed
[2026-10-18 01:30:51,262.262 INFO    ] Checking for camera pi updates...
[2026-10-18 01:30:51,295.295 INFO    ] 200
[2026-10-18 01:30:51,298.298 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:30:51,339.339 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:31:01,354.354 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:31:01,397.397 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:31:01,409.409 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:31:01,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:31:01,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:31:01,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:31:03,475.475 INFO    ] ================================================
[2026-10-18 01:31:03,491.491 INFO    ] Launching Daemon at Sun Oct 18 01:31:03 IST 2026
[2026-10-18 01:31:03,503.503 INFO    ] ================================================
[2026-10-18 01:31:04,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:31:04
[2026-10-18 01:31:04,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:31:04,922.922 INFO    ] Initializing speech engine...
[2026-10-18 01:31:04,938.938 INFO    ] 2026-10-18 01:31:04
[2026-10-18 01:31:05,210.210 INFO    ] 2026-10-18 01:31:05
[2026-10-18 01:31:05,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:31:05,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:31:05,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:31:05,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:31:05,700.700 INFO    ] time= 18/10/2026 01:31:05
[2026-10-18 01:31:05,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:31:05,793.793 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:31:05,900.900 INFO    ] No existing commands found in stream
[2026-10-18 01:31:10,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:31:10,915.915 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-18 01:31:11,396.396 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:31:11,399.399 INFO    ] Checking for system updates...
[2026-10-18 01:31:11,434.434 INFO    ] 200
[2026-10-18 01:31:11,437.437 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:31:11,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:31:11,492.492 INFO    ] No update needed
[2026-10-18 01:31:11,494.494 INFO    ] Checking for camera pi updates...
[2026-10-18 01:31:11,531.531 INFO    ] 200
[2026-10-18 01:31:11,534.534 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:31:11,574.574 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:31:21,589.589 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:31:21,624.624 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:31:21,633.633 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:31:21,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:31:21,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:31:21,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:31:23,686.686 INFO    ] ================================================
[2026-10-18 01:31:23,702.702 INFO    ] Launching Daemon at Sun Oct 18 01:31:23 IST 2026
[2026-10-18 01:31:23,713.713 INFO    ] ================================================
[2026-10-18 01:31:24,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:31:24
[2026-10-18 01:31:24,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:31:25,127.127 INFO    ] Initializing speech engine...
[2026-10-18 01:31:25,133.133 INFO    ] 2026-10-18 01:31:25
[2026-10-18 01:31:25,428.428 INFO    ] 2026-10-18 01:31:25
[2026-10-18 01:31:25,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:31:25,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:31:25,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:31:25,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:31:25,853.853 INFO    ] time= 18/10/2026 01:31:25
[2026-10-18 01:31:25,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:31:25,912.912 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:31:26,071.071 INFO    ] No existing commands found in stream
[2026-10-18 01:31:31,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:31:31,092.092 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-18 01:31:34,557.557 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:31:34,559.559 INFO    ] Checking for system updates...
[2026-10-18 01:31:34,595.595 INFO    ] 200
[2026-10-18 01:31:34,598.598 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:31:34,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:31:34,653.653 INFO    ] No update needed
[2026-10-18 01:31:34,656.656 INFO    ] Checking for camera pi updates...
[2026-10-18 01:31:34,694.694 INFO    ] 200
[2026-10-18 01:31:34,696.696 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:31:34,736.736 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:31:44,752.752 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:31:44,787.787 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:31:44,796.796 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:31:44,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:31:44,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:31:44,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:31:46,849.849 INFO    ] ================================================
[2026-10-18 01:31:46,865.865 INFO    ] Launching Daemon at Sun Oct 18 01:31:46 IST 2026
[2026-10-18 01:31:46,877.877 INFO    ] ================================================
[2026-10-18 01:31:47,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:31:47
[2026-10-18 01:31:48,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:31:48,291.291 INFO    ] Initializing speech engine...
[2026-10-18 01:31:48,300.300 INFO    ] 2026-10-18 01:31:48
[2026-10-18 01:31:48,598.598 INFO    ] 2026-10-18 01:31:48
[2026-10-18 01:31:48,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:31:48,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:31:48,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:31:49,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:31:49,103.103 INFO    ] time= 18/10/2026 01:31:49
[2026-10-18 01:31:49,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:31:49,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:31:49,369.369 INFO    ] No existing commands found in stream
[2026-10-18 01:31:54,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:31:54,396.396 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-18 01:31:58,843.843 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:31:58,846.846 INFO    ] Checking for system updates...
[2026-10-18 01:31:58,881.881 INFO    ] 200
[2026-10-18 01:31:58,884.884 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:31:58,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:31:58,938.938 INFO    ] No update needed
[2026-10-18 01:31:58,940.940 INFO    ] Checking for camera pi updates...
[2026-10-18 01:31:58,974.974 INFO    ] 200
[2026-10-18 01:31:58,977.977 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:31:59,022.022 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:32:09,037.037 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:32:09,071.071 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:32:09,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:32:09,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:32:09,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:32:09,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:32:11,134.134 INFO    ] ================================================
[2026-10-18 01:32:11,151.151 INFO    ] Launching Daemon at Sun Oct 18 01:32:11 IST 2026
[2026-10-18 01:32:11,163.163 INFO    ] ================================================
[2026-10-18 01:32:11,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:32:11
[2026-10-18 01:32:12,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:32:12,574.574 INFO    ] Initializing speech engine...
[2026-10-18 01:32:12,582.582 INFO    ] 2026-10-18 01:32:12
[2026-10-18 01:32:12,878.878 INFO    ] 2026-10-18 01:32:12
[2026-10-18 01:32:12,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:32:13,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:32:13,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:32:13,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:32:13,336.336 INFO    ] time= 18/10/2026 01:32:13
[2026-10-18 01:32:13,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:32:13,385.385 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:32:13,526.526 INFO    ] No existing commands found in stream
[2026-10-18 01:32:18,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:32:18,540.540 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-18 01:32:21,041.041 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:32:21,043.043 INFO    ] Checking for system updates...
[2026-10-18 01:32:21,079.079 INFO    ] 200
[2026-10-18 01:32:21,081.081 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:32:21,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:32:21,136.136 INFO    ] No update needed
[2026-10-18 01:32:21,138.138 INFO    ] Checking for camera pi updates...
[2026-10-18 01:32:21,175.175 INFO    ] 200
[2026-10-18 01:32:21,177.177 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:32:21,218.218 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:32:31,233.233 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:32:31,268.268 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:32:31,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:32:31,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:32:31,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:32:31,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:32:33,330.330 INFO    ] ================================================
[2026-10-18 01:32:33,346.346 INFO    ] Launching Daemon at Sun Oct 18 01:32:33 IST 2026
[2026-10-18 01:32:33,357.357 INFO    ] ================================================
[2026-10-18 01:32:34,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:32:33
[2026-10-18 01:32:34,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:32:34,969.969 INFO    ] Initializing speech engine...
[2026-10-18 01:32:34,977.977 INFO    ] 2026-10-18 01:32:34
[2026-10-18 01:32:35,249.249 INFO    ] 2026-10-18 01:32:35
[2026-10-18 01:32:35,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:32:35,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:32:35,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:32:35,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:32:35,814.814 INFO    ] time= 18/10/2026 01:32:35
[2026-10-18 01:32:35,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:32:35,869.869 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:32:36,003.003 INFO    ] No existing commands found in stream
[2026-10-18 01:32:41,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:32:41,044.044 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-18 01:32:43,060.060 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 01:32:43,063.063 INFO    ] Checking for system updates...
[2026-10-18 01:32:43,100.100 INFO    ] 200
[2026-10-18 01:32:43,103.103 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:32:43,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:32:43,159.159 INFO    ] No update needed
[2026-10-18 01:32:43,161.161 INFO    ] Checking for camera pi updates...
[2026-10-18 01:32:43,198.198 INFO    ] 200
[2026-10-18 01:32:43,200.200 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:32:43,241.241 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:32:53,257.257 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:32:53,292.292 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:32:53,302.302 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:32:53,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:32:53,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:32:53,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:32:55,354.354 INFO    ] ================================================
[2026-10-18 01:32:55,370.370 INFO    ] Launching Daemon at Sun Oct 18 01:32:55 IST 2026
[2026-10-18 01:32:55,382.382 INFO    ] ================================================
[2026-10-18 01:32:55,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:32:55
[2026-10-18 01:32:56,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:32:56,841.841 INFO    ] Initializing speech engine...
[2026-10-18 01:32:56,851.851 INFO    ] 2026-10-18 01:32:56
[2026-10-18 01:32:57,099.099 INFO    ] 2026-10-18 01:32:57
[2026-10-18 01:32:57,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:32:57,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:32:57,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:32:57,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:32:57,652.652 INFO    ] time= 18/10/2026 01:32:57
[2026-10-18 01:32:57,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:32:57,677.677 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:32:57,808.808 INFO    ] No existing commands found in stream
[2026-10-18 01:33:02,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:33:02,831.831 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-18 01:33:03,841.841 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:33:03,844.844 INFO    ] Checking for system updates...
[2026-10-18 01:33:03,886.886 INFO    ] 200
[2026-10-18 01:33:03,889.889 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:33:03,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:33:03,957.957 INFO    ] No update needed
[2026-10-18 01:33:03,960.960 INFO    ] Checking for camera pi updates...
[2026-10-18 01:33:04,004.004 INFO    ] 200
[2026-10-18 01:33:04,007.007 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:33:04,050.050 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:33:14,065.065 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:33:14,103.103 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:33:14,114.114 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:33:14,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:33:14,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:33:14,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:33:16,174.174 INFO    ] ================================================
[2026-10-18 01:33:16,190.190 INFO    ] Launching Daemon at Sun Oct 18 01:33:16 IST 2026
[2026-10-18 01:33:16,203.203 INFO    ] ================================================
[2026-10-18 01:33:16,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:33:16
[2026-10-18 01:33:17,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:33:17,679.679 INFO    ] Initializing speech engine...
[2026-10-18 01:33:17,701.701 INFO    ] 2026-10-18 01:33:17
[2026-10-18 01:33:17,952.952 INFO    ] 2026-10-18 01:33:17
[2026-10-18 01:33:17,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:33:18,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:33:18,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:33:18,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:33:18,504.504 INFO    ] time= 18/10/2026 01:33:18
[2026-10-18 01:33:18,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:33:18,529.529 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:33:18,664.664 INFO    ] No existing commands found in stream
[2026-10-18 01:33:23,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:33:23,698.698 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-18 01:33:26,567.567 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:33:26,569.569 INFO    ] Checking for system updates...
[2026-10-18 01:33:26,606.606 INFO    ] 200
[2026-10-18 01:33:26,609.609 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:33:26,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:33:26,665.665 INFO    ] No update needed
[2026-10-18 01:33:26,667.667 INFO    ] Checking for camera pi updates...
[2026-10-18 01:33:26,705.705 INFO    ] 200
[2026-10-18 01:33:26,708.708 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:33:26,753.753 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:33:36,769.769 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:33:36,804.804 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:33:36,814.814 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:33:36,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:33:36,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:33:36,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:33:38,868.868 INFO    ] ================================================
[2026-10-18 01:33:38,884.884 INFO    ] Launching Daemon at Sun Oct 18 01:33:38 IST 2026
[2026-10-18 01:33:38,895.895 INFO    ] ================================================
[2026-10-18 01:33:39,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:33:39
[2026-10-18 01:33:40,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:33:40,295.295 INFO    ] Initializing speech engine...
[2026-10-18 01:33:40,300.300 INFO    ] 2026-10-18 01:33:40
[2026-10-18 01:33:40,570.570 INFO    ] 2026-10-18 01:33:40
[2026-10-18 01:33:40,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:33:40,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:33:40,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:33:41,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:33:41,123.123 INFO    ] time= 18/10/2026 01:33:41
[2026-10-18 01:33:41,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:33:41,146.146 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:33:41,278.278 INFO    ] No existing commands found in stream
[2026-10-18 01:33:46,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:33:46,303.303 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-18 01:33:49,828.828 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:33:49,831.831 INFO    ] Checking for system updates...
[2026-10-18 01:33:49,873.873 INFO    ] 200
[2026-10-18 01:33:49,876.876 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:33:49,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:33:49,962.962 INFO    ] No update needed
[2026-10-18 01:33:49,965.965 INFO    ] Checking for camera pi updates...
[2026-10-18 01:33:50,000.000 INFO    ] 200
[2026-10-18 01:33:50,003.003 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:33:50,050.050 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:34:00,067.067 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:34:00,107.107 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:34:00,118.118 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:34:00,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:34:00,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:34:00,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:34:02,180.180 INFO    ] ================================================
[2026-10-18 01:34:02,202.202 INFO    ] Launching Daemon at Sun Oct 18 01:34:02 IST 2026
[2026-10-18 01:34:02,220.220 INFO    ] ================================================
[2026-10-18 01:34:02,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:34:02
[2026-10-18 01:34:03,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:34:03,983.983 INFO    ] Initializing speech engine...
[2026-10-18 01:34:03,993.993 INFO    ] 2026-10-18 01:34:03
[2026-10-18 01:34:04,273.273 INFO    ] 2026-10-18 01:34:04
[2026-10-18 01:34:04,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:34:04,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:34:05,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:34:05,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:34:05,278.278 INFO    ] time= 18/10/2026 01:34:05
[2026-10-18 01:34:05,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:34:05,285.285 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:34:05,412.412 INFO    ] No existing commands found in stream
[2026-10-18 01:34:10,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:34:10,429.429 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-18 01:34:11,103.103 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:34:11,107.107 INFO    ] Checking for system updates...
[2026-10-18 01:34:11,143.143 INFO    ] 200
[2026-10-18 01:34:11,147.147 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:34:11,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:34:11,202.202 INFO    ] No update needed
[2026-10-18 01:34:11,205.205 INFO    ] Checking for camera pi updates...
[2026-10-18 01:34:11,244.244 INFO    ] 200
[2026-10-18 01:34:11,247.247 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:34:11,289.289 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:34:21,304.304 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:34:21,345.345 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:34:21,356.356 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:34:21,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:34:21,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:34:21,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:34:23,413.413 INFO    ] ================================================
[2026-10-18 01:34:23,428.428 INFO    ] Launching Daemon at Sun Oct 18 01:34:23 IST 2026
[2026-10-18 01:34:23,439.439 INFO    ] ================================================
[2026-10-18 01:34:24,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:34:24
[2026-10-18 01:34:24,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:34:24,951.951 INFO    ] Initializing speech engine...
[2026-10-18 01:34:24,976.976 INFO    ] 2026-10-18 01:34:24
[2026-10-18 01:34:25,237.237 INFO    ] 2026-10-18 01:34:25
[2026-10-18 01:34:25,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:34:25,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:34:25,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:34:25,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:34:25,819.819 INFO    ] time= 18/10/2026 01:34:25
[2026-10-18 01:34:25,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:34:25,847.847 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:34:25,995.995 INFO    ] No existing commands found in stream
[2026-10-18 01:34:31,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:34:31,033.033 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-18 01:34:34,605.605 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:34:34,608.608 INFO    ] Checking for system updates...
[2026-10-18 01:34:34,648.648 INFO    ] 200
[2026-10-18 01:34:34,650.650 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:34:34,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:34:34,704.704 INFO    ] No update needed
[2026-10-18 01:34:34,707.707 INFO    ] Checking for camera pi updates...
[2026-10-18 01:34:34,744.744 INFO    ] 200
[2026-10-18 01:34:34,747.747 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:34:34,787.787 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:34:44,803.803 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:34:44,839.839 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:34:44,849.849 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:34:44,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:34:44,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:34:44,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:34:46,902.902 INFO    ] ================================================
[2026-10-18 01:34:46,919.919 INFO    ] Launching Daemon at Sun Oct 18 01:34:46 IST 2026
[2026-10-18 01:34:46,931.931 INFO    ] ================================================
[2026-10-18 01:34:47,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:34:47
[2026-10-18 01:34:48,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:34:48,529.529 INFO    ] Initializing speech engine...
[2026-10-18 01:34:48,542.542 INFO    ] 2026-10-18 01:34:48
[2026-10-18 01:34:48,829.829 INFO    ] 2026-10-18 01:34:48
[2026-10-18 01:34:48,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:34:49,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:34:49,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:34:49,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:34:49,370.370 INFO    ] time= 18/10/2026 01:34:49
[2026-10-18 01:34:49,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:34:49,410.410 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:34:49,549.549 INFO    ] No existing commands found in stream
[2026-10-18 01:34:54,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:34:54,583.583 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-18 01:34:56,214.214 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:34:56,218.218 INFO    ] Checking for system updates...
[2026-10-18 01:34:56,259.259 INFO    ] 200
[2026-10-18 01:34:56,262.262 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:34:56,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:34:56,326.326 INFO    ] No update needed
[2026-10-18 01:34:56,329.329 INFO    ] Checking for camera pi updates...
[2026-10-18 01:34:56,368.368 INFO    ] 200
[2026-10-18 01:34:56,372.372 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:34:56,413.413 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:35:06,436.436 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:35:06,471.471 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:35:06,481.481 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:35:06,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:35:06,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:35:06,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:35:08,533.533 INFO    ] ================================================
[2026-10-18 01:35:08,549.549 INFO    ] Launching Daemon at Sun Oct 18 01:35:08 IST 2026
[2026-10-18 01:35:08,560.560 INFO    ] ================================================
[2026-10-18 01:35:09,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:35:09
[2026-10-18 01:35:09,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:35:09,964.964 INFO    ] Initializing speech engine...
[2026-10-18 01:35:09,970.970 INFO    ] 2026-10-18 01:35:09
[2026-10-18 01:35:10,272.272 INFO    ] 2026-10-18 01:35:10
[2026-10-18 01:35:10,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:35:10,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:35:10,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:35:10,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:35:10,656.656 INFO    ] time= 18/10/2026 01:35:10
[2026-10-18 01:35:10,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:35:10,699.699 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:35:10,829.829 INFO    ] No existing commands found in stream
[2026-10-18 01:35:15,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:35:15,852.852 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-18 01:35:17,330.330 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 01:35:17,333.333 INFO    ] Checking for system updates...
[2026-10-18 01:35:17,368.368 INFO    ] 200
[2026-10-18 01:35:17,370.370 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:35:17,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:35:17,426.426 INFO    ] No update needed
[2026-10-18 01:35:17,429.429 INFO    ] Checking for camera pi updates...
[2026-10-18 01:35:17,467.467 INFO    ] 200
[2026-10-18 01:35:17,469.469 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:35:17,509.509 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:35:27,524.524 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:35:27,559.559 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:35:27,569.569 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:35:27,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:35:27,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:35:27,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:35:29,622.622 INFO    ] ================================================
[2026-10-18 01:35:29,639.639 INFO    ] Launching Daemon at Sun Oct 18 01:35:29 IST 2026
[2026-10-18 01:35:29,653.653 INFO    ] ================================================
[2026-10-18 01:35:30,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:35:30
[2026-10-18 01:35:30,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:35:31,154.154 INFO    ] Initializing speech engine...
[2026-10-18 01:35:31,163.163 INFO    ] 2026-10-18 01:35:31
[2026-10-18 01:35:31,434.434 INFO    ] 2026-10-18 01:35:31
[2026-10-18 01:35:31,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:35:31,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:35:31,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:35:31,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:35:31,942.942 INFO    ] time= 18/10/2026 01:35:31
[2026-10-18 01:35:31,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:35:32,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:35:32,184.184 INFO    ] No existing commands found in stream
[2026-10-18 01:35:37,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:35:37,221.221 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-18 01:35:38,441.441 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:35:38,443.443 INFO    ] Checking for system updates...
[2026-10-18 01:35:38,483.483 INFO    ] 200
[2026-10-18 01:35:38,486.486 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:35:38,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:35:38,540.540 INFO    ] No update needed
[2026-10-18 01:35:38,543.543 INFO    ] Checking for camera pi updates...
[2026-10-18 01:35:38,580.580 INFO    ] 200
[2026-10-18 01:35:38,582.582 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:35:38,628.628 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:35:48,642.642 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:35:48,677.677 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:35:48,687.687 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:35:48,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:35:48,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:35:48,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:35:50,738.738 INFO    ] ================================================
[2026-10-18 01:35:50,754.754 INFO    ] Launching Daemon at Sun Oct 18 01:35:50 IST 2026
[2026-10-18 01:35:50,764.764 INFO    ] ================================================
[2026-10-18 01:35:51,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:35:51
[2026-10-18 01:35:52,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:35:52,369.369 INFO    ] Initializing speech engine...
[2026-10-18 01:35:52,378.378 INFO    ] 2026-10-18 01:35:52
[2026-10-18 01:35:52,630.630 INFO    ] 2026-10-18 01:35:52
[2026-10-18 01:35:52,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:35:52,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:35:52,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:35:53,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:35:53,135.135 INFO    ] time= 18/10/2026 01:35:53
[2026-10-18 01:35:53,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:35:53,207.207 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:35:53,304.304 INFO    ] No existing commands found in stream
[2026-10-18 01:35:58,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:35:58,328.328 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-18 01:35:59,409.409 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:35:59,411.411 INFO    ] Checking for system updates...
[2026-10-18 01:35:59,447.447 INFO    ] 200
[2026-10-18 01:35:59,450.450 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:35:59,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:35:59,505.505 INFO    ] No update needed
[2026-10-18 01:35:59,508.508 INFO    ] Checking for camera pi updates...
[2026-10-18 01:35:59,542.542 INFO    ] 200
[2026-10-18 01:35:59,544.544 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:35:59,584.584 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:36:09,599.599 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:36:09,634.634 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:36:09,643.643 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:36:09,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:36:09,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:36:09,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:36:11,696.696 INFO    ] ================================================
[2026-10-18 01:36:11,711.711 INFO    ] Launching Daemon at Sun Oct 18 01:36:11 IST 2026
[2026-10-18 01:36:11,722.722 INFO    ] ================================================
[2026-10-18 01:36:12,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:36:12
[2026-10-18 01:36:12,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:36:13,137.137 INFO    ] Initializing speech engine...
[2026-10-18 01:36:13,146.146 INFO    ] 2026-10-18 01:36:13
[2026-10-18 01:36:13,391.391 INFO    ] 2026-10-18 01:36:13
[2026-10-18 01:36:13,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:36:13,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:36:13,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:36:13,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:36:13,944.944 INFO    ] time= 18/10/2026 01:36:13
[2026-10-18 01:36:13,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:36:13,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:36:14,103.103 INFO    ] No existing commands found in stream
[2026-10-18 01:36:19,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:36:19,137.137 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-18 01:36:20,760.760 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:36:20,763.763 INFO    ] Checking for system updates...
[2026-10-18 01:36:20,798.798 INFO    ] 200
[2026-10-18 01:36:20,800.800 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:36:20,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:36:20,855.855 INFO    ] No update needed
[2026-10-18 01:36:20,858.858 INFO    ] Checking for camera pi updates...
[2026-10-18 01:36:20,891.891 INFO    ] 200
[2026-10-18 01:36:20,893.893 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:36:20,934.934 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:36:30,948.948 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:36:30,983.983 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:36:30,993.993 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:36:30,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:36:31,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:36:31,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:36:33,047.047 INFO    ] ================================================
[2026-10-18 01:36:33,063.063 INFO    ] Launching Daemon at Sun Oct 18 01:36:33 IST 2026
[2026-10-18 01:36:33,075.075 INFO    ] ================================================
[2026-10-18 01:36:33,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:36:33
[2026-10-18 01:36:34,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:36:34,597.597 INFO    ] Initializing speech engine...
[2026-10-18 01:36:34,609.609 INFO    ] 2026-10-18 01:36:34
[2026-10-18 01:36:34,917.917 INFO    ] 2026-10-18 01:36:34
[2026-10-18 01:36:35,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:36:35,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:36:35,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:36:35,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:36:35,429.429 INFO    ] time= 18/10/2026 01:36:35
[2026-10-18 01:36:35,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:36:35,476.476 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:36:35,590.590 INFO    ] No existing commands found in stream
[2026-10-18 01:36:40,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:36:40,631.631 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-18 01:36:43,297.297 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:36:43,299.299 INFO    ] Checking for system updates...
[2026-10-18 01:36:43,341.341 INFO    ] 200
[2026-10-18 01:36:43,343.343 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:36:43,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:36:43,409.409 INFO    ] No update needed
[2026-10-18 01:36:43,412.412 INFO    ] Checking for camera pi updates...
[2026-10-18 01:36:43,455.455 INFO    ] 200
[2026-10-18 01:36:43,458.458 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:36:43,499.499 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:36:53,515.515 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:36:53,556.556 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:36:53,567.567 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:36:53,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:36:53,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:36:53,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:36:55,622.622 INFO    ] ================================================
[2026-10-18 01:36:55,638.638 INFO    ] Launching Daemon at Sun Oct 18 01:36:55 IST 2026
[2026-10-18 01:36:55,648.648 INFO    ] ================================================
[2026-10-18 01:36:56,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:36:56
[2026-10-18 01:36:56,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:36:57,102.102 INFO    ] Initializing speech engine...
[2026-10-18 01:36:57,108.108 INFO    ] 2026-10-18 01:36:57
[2026-10-18 01:36:57,357.357 INFO    ] 2026-10-18 01:36:57
[2026-10-18 01:36:57,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:36:57,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:36:57,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:36:57,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:36:57,929.929 INFO    ] time= 18/10/2026 01:36:57
[2026-10-18 01:36:57,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:36:57,954.954 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:36:58,089.089 INFO    ] No existing commands found in stream
[2026-10-18 01:37:03,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:37:03,112.112 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-18 01:37:05,777.777 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:37:05,780.780 INFO    ] Checking for system updates...
[2026-10-18 01:37:05,816.816 INFO    ] 200
[2026-10-18 01:37:05,819.819 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:37:05,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:37:05,874.874 INFO    ] No update needed
[2026-10-18 01:37:05,876.876 INFO    ] Checking for camera pi updates...
[2026-10-18 01:37:05,912.912 INFO    ] 200
[2026-10-18 01:37:05,914.914 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:37:05,954.954 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:37:15,969.969 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:37:16,003.003 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:37:16,013.013 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:37:16,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:37:16,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:37:16,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:37:18,065.065 INFO    ] ================================================
[2026-10-18 01:37:18,080.080 INFO    ] Launching Daemon at Sun Oct 18 01:37:18 IST 2026
[2026-10-18 01:37:18,091.091 INFO    ] ================================================
[2026-10-18 01:37:18,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:37:18
[2026-10-18 01:37:19,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:37:19,512.512 INFO    ] Initializing speech engine...
[2026-10-18 01:37:19,521.521 INFO    ] 2026-10-18 01:37:19
[2026-10-18 01:37:19,768.768 INFO    ] 2026-10-18 01:37:19
[2026-10-18 01:37:19,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:37:20,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:37:20,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:37:20,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:37:20,310.310 INFO    ] time= 18/10/2026 01:37:20
[2026-10-18 01:37:20,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:37:20,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:37:20,480.480 INFO    ] No existing commands found in stream
[2026-10-18 01:37:25,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:37:25,498.498 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-18 01:37:27,470.470 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:37:27,472.472 INFO    ] Checking for system updates...
[2026-10-18 01:37:27,508.508 INFO    ] 200
[2026-10-18 01:37:27,511.511 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:37:27,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:37:27,582.582 INFO    ] No update needed
[2026-10-18 01:37:27,584.584 INFO    ] Checking for camera pi updates...
[2026-10-18 01:37:27,617.617 INFO    ] 200
[2026-10-18 01:37:27,620.620 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:37:27,661.661 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:37:37,675.675 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:37:37,710.710 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:37:37,720.720 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:37:37,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:37:37,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:37:37,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:37:39,772.772 INFO    ] ================================================
[2026-10-18 01:37:39,787.787 INFO    ] Launching Daemon at Sun Oct 18 01:37:39 IST 2026
[2026-10-18 01:37:39,798.798 INFO    ] ================================================
[2026-10-18 01:37:40,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:37:40
[2026-10-18 01:37:41,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:37:41,392.392 INFO    ] Initializing speech engine...
[2026-10-18 01:37:41,402.402 INFO    ] 2026-10-18 01:37:41
[2026-10-18 01:37:41,688.688 INFO    ] 2026-10-18 01:37:41
[2026-10-18 01:37:41,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:37:41,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:37:41,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:37:42,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:37:42,090.090 INFO    ] time= 18/10/2026 01:37:42
[2026-10-18 01:37:42,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:37:42,101.101 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:37:42,184.184 INFO    ] No existing commands found in stream
[2026-10-18 01:37:47,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:37:47,222.222 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-18 01:37:50,828.828 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:37:50,831.831 INFO    ] Checking for system updates...
[2026-10-18 01:37:50,867.867 INFO    ] 200
[2026-10-18 01:37:50,869.869 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:37:50,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:37:50,923.923 INFO    ] No update needed
[2026-10-18 01:37:50,926.926 INFO    ] Checking for camera pi updates...
[2026-10-18 01:37:50,985.985 INFO    ] 200
[2026-10-18 01:37:50,987.987 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:37:51,033.033 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:38:01,048.048 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:38:01,082.082 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:38:01,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:38:01,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:38:01,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:38:01,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:38:03,147.147 INFO    ] ================================================
[2026-10-18 01:38:03,162.162 INFO    ] Launching Daemon at Sun Oct 18 01:38:03 IST 2026
[2026-10-18 01:38:03,173.173 INFO    ] ================================================
[2026-10-18 01:38:03,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:38:03
[2026-10-18 01:38:04,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:38:04,601.601 INFO    ] Initializing speech engine...
[2026-10-18 01:38:04,611.611 INFO    ] 2026-10-18 01:38:04
[2026-10-18 01:38:04,855.855 INFO    ] 2026-10-18 01:38:04
[2026-10-18 01:38:04,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:38:05,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:38:05,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:38:05,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:38:05,344.344 INFO    ] time= 18/10/2026 01:38:05
[2026-10-18 01:38:05,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:38:05,414.414 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:38:05,552.552 INFO    ] No existing commands found in stream
[2026-10-18 01:38:10,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:38:10,575.575 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-18 01:38:14,800.800 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:38:14,803.803 INFO    ] Checking for system updates...
[2026-10-18 01:38:14,840.840 INFO    ] 200
[2026-10-18 01:38:14,843.843 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:38:14,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:38:14,899.899 INFO    ] No update needed
[2026-10-18 01:38:14,902.902 INFO    ] Checking for camera pi updates...
[2026-10-18 01:38:14,937.937 INFO    ] 200
[2026-10-18 01:38:14,940.940 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:38:14,986.986 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:38:25,003.003 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:38:25,043.043 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:38:25,054.054 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:38:25,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:38:25,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:38:25,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:38:27,111.111 INFO    ] ================================================
[2026-10-18 01:38:27,126.126 INFO    ] Launching Daemon at Sun Oct 18 01:38:27 IST 2026
[2026-10-18 01:38:27,137.137 INFO    ] ================================================
[2026-10-18 01:38:27,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:38:27
[2026-10-18 01:38:28,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:38:28,776.776 INFO    ] Initializing speech engine...
[2026-10-18 01:38:28,786.786 INFO    ] 2026-10-18 01:38:28
[2026-10-18 01:38:29,090.090 INFO    ] 2026-10-18 01:38:29
[2026-10-18 01:38:29,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:38:29,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:38:29,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:38:29,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:38:29,596.596 INFO    ] time= 18/10/2026 01:38:29
[2026-10-18 01:38:29,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:38:29,643.643 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:38:29,755.755 INFO    ] No existing commands found in stream
[2026-10-18 01:38:34,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:38:34,790.790 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-18 01:38:36,304.304 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:38:36,307.307 INFO    ] Checking for system updates...
[2026-10-18 01:38:36,346.346 INFO    ] 200
[2026-10-18 01:38:36,349.349 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:38:36,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:38:36,406.406 INFO    ] No update needed
[2026-10-18 01:38:36,408.408 INFO    ] Checking for camera pi updates...
[2026-10-18 01:38:36,442.442 INFO    ] 200
[2026-10-18 01:38:36,444.444 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:38:36,484.484 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:38:46,499.499 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:38:46,537.537 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:38:46,548.548 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:38:46,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:38:46,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:38:46,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:38:48,602.602 INFO    ] ================================================
[2026-10-18 01:38:48,617.617 INFO    ] Launching Daemon at Sun Oct 18 01:38:48 IST 2026
[2026-10-18 01:38:48,628.628 INFO    ] ================================================
[2026-10-18 01:38:49,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:38:49
[2026-10-18 01:38:49,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:38:50,228.228 INFO    ] Initializing speech engine...
[2026-10-18 01:38:50,236.236 INFO    ] 2026-10-18 01:38:50
[2026-10-18 01:38:50,525.525 INFO    ] 2026-10-18 01:38:50
[2026-10-18 01:38:50,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:38:50,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:38:50,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:38:51,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:38:51,052.052 INFO    ] time= 18/10/2026 01:38:51
[2026-10-18 01:38:51,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:38:51,080.080 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:38:51,232.232 INFO    ] No existing commands found in stream
[2026-10-18 01:38:56,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:38:56,261.261 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-18 01:38:58,444.444 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:38:58,447.447 INFO    ] Checking for system updates...
[2026-10-18 01:38:58,487.487 INFO    ] 200
[2026-10-18 01:38:58,490.490 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:38:58,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:38:58,551.551 INFO    ] No update needed
[2026-10-18 01:38:58,553.553 INFO    ] Checking for camera pi updates...
[2026-10-18 01:38:58,592.592 INFO    ] 200
[2026-10-18 01:38:58,595.595 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:38:58,636.636 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:39:08,650.650 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:39:08,686.686 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:39:08,696.696 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:39:08,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:39:08,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:39:08,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:39:10,748.748 INFO    ] ================================================
[2026-10-18 01:39:10,764.764 INFO    ] Launching Daemon at Sun Oct 18 01:39:10 IST 2026
[2026-10-18 01:39:10,775.775 INFO    ] ================================================
[2026-10-18 01:39:11,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:39:11
[2026-10-18 01:39:11,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:39:12,202.202 INFO    ] Initializing speech engine...
[2026-10-18 01:39:12,209.209 INFO    ] 2026-10-18 01:39:12
[2026-10-18 01:39:12,485.485 INFO    ] 2026-10-18 01:39:12
[2026-10-18 01:39:12,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:39:12,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:39:12,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:39:12,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:39:13,042.042 INFO    ] time= 18/10/2026 01:39:13
[2026-10-18 01:39:13,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:39:13,065.065 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:39:13,191.191 INFO    ] No existing commands found in stream
[2026-10-18 01:39:18,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:39:18,209.209 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-18 01:39:21,758.758 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:39:21,761.761 INFO    ] Checking for system updates...
[2026-10-18 01:39:21,797.797 INFO    ] 200
[2026-10-18 01:39:21,799.799 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:39:21,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:39:21,856.856 INFO    ] No update needed
[2026-10-18 01:39:21,859.859 INFO    ] Checking for camera pi updates...
[2026-10-18 01:39:21,895.895 INFO    ] 200
[2026-10-18 01:39:21,898.898 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:39:21,938.938 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:39:31,954.954 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:39:31,991.991 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:39:32,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:39:32,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:39:32,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:39:32,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:39:34,057.057 INFO    ] ================================================
[2026-10-18 01:39:34,074.074 INFO    ] Launching Daemon at Sun Oct 18 01:39:34 IST 2026
[2026-10-18 01:39:34,084.084 INFO    ] ================================================
[2026-10-18 01:39:34,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:39:34
[2026-10-18 01:39:35,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:39:35,492.492 INFO    ] Initializing speech engine...
[2026-10-18 01:39:35,517.517 INFO    ] 2026-10-18 01:39:35
[2026-10-18 01:39:35,770.770 INFO    ] 2026-10-18 01:39:35
[2026-10-18 01:39:35,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:39:36,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:39:36,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:39:36,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:39:36,269.269 INFO    ] time= 18/10/2026 01:39:36
[2026-10-18 01:39:36,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:39:36,343.343 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:39:36,475.475 INFO    ] No existing commands found in stream
[2026-10-18 01:39:41,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:39:41,503.503 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-18 01:39:42,615.615 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 01:39:42,618.618 INFO    ] Checking for system updates...
[2026-10-18 01:39:42,653.653 INFO    ] 200
[2026-10-18 01:39:42,655.655 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:39:42,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:39:42,711.711 INFO    ] No update needed
[2026-10-18 01:39:42,713.713 INFO    ] Checking for camera pi updates...
[2026-10-18 01:39:42,747.747 INFO    ] 200
[2026-10-18 01:39:42,749.749 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:39:42,794.794 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:39:52,809.809 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:39:52,843.843 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:39:52,853.853 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:39:52,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:39:52,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:39:52,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:39:54,906.906 INFO    ] ================================================
[2026-10-18 01:39:54,923.923 INFO    ] Launching Daemon at Sun Oct 18 01:39:54 IST 2026
[2026-10-18 01:39:54,934.934 INFO    ] ================================================
[2026-10-18 01:39:55,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:39:55
[2026-10-18 01:39:56,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:39:56,576.576 INFO    ] Initializing speech engine...
[2026-10-18 01:39:56,585.585 INFO    ] 2026-10-18 01:39:56
[2026-10-18 01:39:56,879.879 INFO    ] 2026-10-18 01:39:56
[2026-10-18 01:39:56,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:39:57,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:39:57,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:39:57,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:39:57,408.408 INFO    ] time= 18/10/2026 01:39:57
[2026-10-18 01:39:57,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:39:57,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:39:57,565.565 INFO    ] No existing commands found in stream
[2026-10-18 01:40:02,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:40:02,593.593 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-18 01:40:09,028.028 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:40:09,031.031 INFO    ] Checking for system updates...
[2026-10-18 01:40:09,069.069 INFO    ] 200
[2026-10-18 01:40:09,072.072 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:40:09,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:40:09,129.129 INFO    ] No update needed
[2026-10-18 01:40:09,132.132 INFO    ] Checking for camera pi updates...
[2026-10-18 01:40:09,171.171 INFO    ] 200
[2026-10-18 01:40:09,173.173 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:40:09,216.216 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:40:19,232.232 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:40:19,272.272 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:40:19,283.283 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:40:19,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:40:19,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:40:19,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:40:21,338.338 INFO    ] ================================================
[2026-10-18 01:40:21,354.354 INFO    ] Launching Daemon at Sun Oct 18 01:40:21 IST 2026
[2026-10-18 01:40:21,365.365 INFO    ] ================================================
[2026-10-18 01:40:21,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:40:21
[2026-10-18 01:40:22,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:40:22,843.843 INFO    ] Initializing speech engine...
[2026-10-18 01:40:22,851.851 INFO    ] 2026-10-18 01:40:22
[2026-10-18 01:40:23,114.114 INFO    ] 2026-10-18 01:40:23
[2026-10-18 01:40:23,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:40:23,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:40:23,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:40:23,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:40:23,676.676 INFO    ] time= 18/10/2026 01:40:23
[2026-10-18 01:40:23,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:40:23,700.700 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:40:23,837.837 INFO    ] No existing commands found in stream
[2026-10-18 01:40:28,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:40:28,859.859 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-18 01:40:30,562.562 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:40:30,565.565 INFO    ] Checking for system updates...
[2026-10-18 01:40:30,605.605 INFO    ] 200
[2026-10-18 01:40:30,608.608 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:40:30,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:40:30,663.663 INFO    ] No update needed
[2026-10-18 01:40:30,666.666 INFO    ] Checking for camera pi updates...
[2026-10-18 01:40:30,700.700 INFO    ] 200
[2026-10-18 01:40:30,703.703 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:40:30,742.742 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:40:40,758.758 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:40:40,793.793 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:40:40,803.803 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:40:40,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:40:40,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:40:40,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:40:42,857.857 INFO    ] ================================================
[2026-10-18 01:40:42,873.873 INFO    ] Launching Daemon at Sun Oct 18 01:40:42 IST 2026
[2026-10-18 01:40:42,884.884 INFO    ] ================================================
[2026-10-18 01:40:43,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:40:43
[2026-10-18 01:40:44,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:40:44,339.339 INFO    ] Initializing speech engine...
[2026-10-18 01:40:44,345.345 INFO    ] 2026-10-18 01:40:44
[2026-10-18 01:40:44,610.610 INFO    ] 2026-10-18 01:40:44
[2026-10-18 01:40:44,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:40:44,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:40:44,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:40:45,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:40:45,142.142 INFO    ] time= 18/10/2026 01:40:45
[2026-10-18 01:40:45,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:40:45,220.220 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:40:45,324.324 INFO    ] No existing commands found in stream
[2026-10-18 01:40:50,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:40:50,339.339 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-18 01:40:53,943.943 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:40:53,945.945 INFO    ] Checking for system updates...
[2026-10-18 01:40:53,982.982 INFO    ] 200
[2026-10-18 01:40:53,985.985 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:40:54,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:40:54,043.043 INFO    ] No update needed
[2026-10-18 01:40:54,046.046 INFO    ] Checking for camera pi updates...
[2026-10-18 01:40:54,084.084 INFO    ] 200
[2026-10-18 01:40:54,088.088 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:40:54,134.134 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:41:04,149.149 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:41:04,189.189 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:41:04,200.200 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:41:04,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:41:04,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:41:04,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:41:06,256.256 INFO    ] ================================================
[2026-10-18 01:41:06,272.272 INFO    ] Launching Daemon at Sun Oct 18 01:41:06 IST 2026
[2026-10-18 01:41:06,283.283 INFO    ] ================================================
[2026-10-18 01:41:06,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:41:06
[2026-10-18 01:41:07,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:41:07,731.731 INFO    ] Initializing speech engine...
[2026-10-18 01:41:07,739.739 INFO    ] 2026-10-18 01:41:07
[2026-10-18 01:41:08,036.036 INFO    ] 2026-10-18 01:41:08
[2026-10-18 01:41:08,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:41:08,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:41:08,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:41:08,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:41:08,458.458 INFO    ] time= 18/10/2026 01:41:08
[2026-10-18 01:41:08,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:41:08,504.504 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:41:08,629.629 INFO    ] No existing commands found in stream
[2026-10-18 01:41:13,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:41:13,657.657 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-18 01:41:14,278.278 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:41:14,281.281 INFO    ] Checking for system updates...
[2026-10-18 01:41:14,321.321 INFO    ] 200
[2026-10-18 01:41:14,324.324 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:41:14,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:41:14,378.378 INFO    ] No update needed
[2026-10-18 01:41:14,381.381 INFO    ] Checking for camera pi updates...
[2026-10-18 01:41:14,416.416 INFO    ] 200
[2026-10-18 01:41:14,418.418 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:41:14,464.464 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:41:24,479.479 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:41:24,521.521 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:41:24,531.531 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:41:24,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:41:24,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:41:24,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:41:26,584.584 INFO    ] ================================================
[2026-10-18 01:41:26,599.599 INFO    ] Launching Daemon at Sun Oct 18 01:41:26 IST 2026
[2026-10-18 01:41:26,610.610 INFO    ] ================================================
[2026-10-18 01:41:27,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:41:27
[2026-10-18 01:41:27,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:41:28,020.020 INFO    ] Initializing speech engine...
[2026-10-18 01:41:28,029.029 INFO    ] 2026-10-18 01:41:28
[2026-10-18 01:41:28,325.325 INFO    ] 2026-10-18 01:41:28
[2026-10-18 01:41:28,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:41:28,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:41:28,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:41:28,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:41:28,751.751 INFO    ] time= 18/10/2026 01:41:28
[2026-10-18 01:41:28,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:41:28,806.806 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:41:28,946.946 INFO    ] No existing commands found in stream
[2026-10-18 01:41:33,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:41:33,979.979 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-18 01:41:37,506.506 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 01:41:37,509.509 INFO    ] Checking for system updates...
[2026-10-18 01:41:37,544.544 INFO    ] 200
[2026-10-18 01:41:37,547.547 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:41:37,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:41:37,603.603 INFO    ] No update needed
[2026-10-18 01:41:37,606.606 INFO    ] Checking for camera pi updates...
[2026-10-18 01:41:37,643.643 INFO    ] 200
[2026-10-18 01:41:37,645.645 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:41:37,690.690 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:41:47,705.705 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:41:47,741.741 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:41:47,751.751 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:41:47,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:41:47,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:41:47,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:41:49,805.805 INFO    ] ================================================
[2026-10-18 01:41:49,821.821 INFO    ] Launching Daemon at Sun Oct 18 01:41:49 IST 2026
[2026-10-18 01:41:49,832.832 INFO    ] ================================================
[2026-10-18 01:41:50,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:41:50
[2026-10-18 01:41:51,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:41:51,272.272 INFO    ] Initializing speech engine...
[2026-10-18 01:41:51,286.286 INFO    ] 2026-10-18 01:41:51
[2026-10-18 01:41:51,572.572 INFO    ] 2026-10-18 01:41:51
[2026-10-18 01:41:51,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:41:51,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:41:51,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:41:52,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:41:52,099.099 INFO    ] time= 18/10/2026 01:41:52
[2026-10-18 01:41:52,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:41:52,208.208 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:41:52,374.374 INFO    ] No existing commands found in stream
[2026-10-18 01:41:57,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:41:57,396.396 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-18 01:42:01,262.262 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:42:01,265.265 INFO    ] Checking for system updates...
[2026-10-18 01:42:01,324.324 INFO    ] 200
[2026-10-18 01:42:01,328.328 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:42:01,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:42:01,448.448 INFO    ] No update needed
[2026-10-18 01:42:01,452.452 INFO    ] Checking for camera pi updates...
[2026-10-18 01:42:01,513.513 INFO    ] 200
[2026-10-18 01:42:01,517.517 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:42:01,604.604 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:42:11,622.622 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:42:11,662.662 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:42:11,674.674 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:42:11,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:42:11,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:42:11,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:42:13,730.730 INFO    ] ================================================
[2026-10-18 01:42:13,745.745 INFO    ] Launching Daemon at Sun Oct 18 01:42:13 IST 2026
[2026-10-18 01:42:13,755.755 INFO    ] ================================================
[2026-10-18 01:42:14,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:42:14
[2026-10-18 01:42:14,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:42:15,169.169 INFO    ] Initializing speech engine...
[2026-10-18 01:42:15,182.182 INFO    ] 2026-10-18 01:42:15
[2026-10-18 01:42:15,446.446 INFO    ] 2026-10-18 01:42:15
[2026-10-18 01:42:15,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:42:15,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:42:15,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:42:15,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:42:15,999.999 INFO    ] time= 18/10/2026 01:42:15
[2026-10-18 01:42:16,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:42:16,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:42:16,158.158 INFO    ] No existing commands found in stream
[2026-10-18 01:42:21,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:42:21,175.175 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-18 01:42:25,391.391 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:42:25,393.393 INFO    ] Checking for system updates...
[2026-10-18 01:42:25,433.433 INFO    ] 200
[2026-10-18 01:42:25,436.436 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:42:25,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:42:25,496.496 INFO    ] No update needed
[2026-10-18 01:42:25,499.499 INFO    ] Checking for camera pi updates...
[2026-10-18 01:42:25,538.538 INFO    ] 200
[2026-10-18 01:42:25,540.540 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:42:25,580.580 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:42:35,594.594 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:42:35,630.630 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:42:35,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:42:35,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:42:35,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:42:35,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:42:37,693.693 INFO    ] ================================================
[2026-10-18 01:42:37,708.708 INFO    ] Launching Daemon at Sun Oct 18 01:42:37 IST 2026
[2026-10-18 01:42:37,719.719 INFO    ] ================================================
[2026-10-18 01:42:38,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:42:38
[2026-10-18 01:42:38,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:42:39,202.202 INFO    ] Initializing speech engine...
[2026-10-18 01:42:39,211.211 INFO    ] 2026-10-18 01:42:39
[2026-10-18 01:42:39,524.524 INFO    ] 2026-10-18 01:42:39
[2026-10-18 01:42:39,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:42:39,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:42:39,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:42:40,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:42:40,048.048 INFO    ] time= 18/10/2026 01:42:40
[2026-10-18 01:42:40,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:42:40,084.084 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:42:40,217.217 INFO    ] No existing commands found in stream
[2026-10-18 01:42:45,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:42:45,246.246 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-18 01:42:48,631.631 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:42:48,634.634 INFO    ] Checking for system updates...
[2026-10-18 01:42:48,671.671 INFO    ] 200
[2026-10-18 01:42:48,674.674 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:42:48,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:42:48,731.731 INFO    ] No update needed
[2026-10-18 01:42:48,733.733 INFO    ] Checking for camera pi updates...
[2026-10-18 01:42:48,768.768 INFO    ] 200
[2026-10-18 01:42:48,770.770 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:42:48,811.811 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:42:58,826.826 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:42:58,860.860 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:42:58,870.870 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:42:58,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:42:58,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:42:58,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:43:00,921.921 INFO    ] ================================================
[2026-10-18 01:43:00,936.936 INFO    ] Launching Daemon at Sun Oct 18 01:43:00 IST 2026
[2026-10-18 01:43:00,947.947 INFO    ] ================================================
[2026-10-18 01:43:01,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:43:01
[2026-10-18 01:43:02,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:43:02,735.735 INFO    ] Initializing speech engine...
[2026-10-18 01:43:02,738.738 INFO    ] 2026-10-18 01:43:02
[2026-10-18 01:43:03,067.067 INFO    ] 2026-10-18 01:43:03
[2026-10-18 01:43:03,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:43:03,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:43:03,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:43:03,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:43:03,534.534 INFO    ] time= 18/10/2026 01:43:03
[2026-10-18 01:43:03,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:43:03,589.589 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:43:03,731.731 INFO    ] No existing commands found in stream
[2026-10-18 01:43:08,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:43:08,764.764 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-18 01:43:12,971.971 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 01:43:12,974.974 INFO    ] Checking for system updates...
[2026-10-18 01:43:13,010.010 INFO    ] 200
[2026-10-18 01:43:13,012.012 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:43:13,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:43:13,076.076 INFO    ] No update needed
[2026-10-18 01:43:13,078.078 INFO    ] Checking for camera pi updates...
[2026-10-18 01:43:13,114.114 INFO    ] 200
[2026-10-18 01:43:13,117.117 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:43:13,157.157 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:43:23,172.172 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:43:23,207.207 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:43:23,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:43:23,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:43:23,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:43:23,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:43:25,269.269 INFO    ] ================================================
[2026-10-18 01:43:25,284.284 INFO    ] Launching Daemon at Sun Oct 18 01:43:25 IST 2026
[2026-10-18 01:43:25,295.295 INFO    ] ================================================
[2026-10-18 01:43:25,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:43:25
[2026-10-18 01:43:26,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:43:26,705.705 INFO    ] Initializing speech engine...
[2026-10-18 01:43:26,719.719 INFO    ] 2026-10-18 01:43:26
[2026-10-18 01:43:27,002.002 INFO    ] 2026-10-18 01:43:26
[2026-10-18 01:43:27,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:43:27,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:43:27,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:43:27,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:43:27,517.517 INFO    ] time= 18/10/2026 01:43:27
[2026-10-18 01:43:27,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:43:27,589.589 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:43:27,772.772 INFO    ] No existing commands found in stream
[2026-10-18 01:43:32,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:43:32,791.791 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-18 01:43:33,362.362 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:43:33,364.364 INFO    ] Checking for system updates...
[2026-10-18 01:43:33,403.403 INFO    ] 200
[2026-10-18 01:43:33,406.406 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:43:33,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:43:33,460.460 INFO    ] No update needed
[2026-10-18 01:43:33,463.463 INFO    ] Checking for camera pi updates...
[2026-10-18 01:43:33,500.500 INFO    ] 200
[2026-10-18 01:43:33,502.502 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:43:33,547.547 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:43:43,562.562 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:43:43,597.597 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:43:43,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:43:43,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:43:43,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:43:43,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:43:45,659.659 INFO    ] ================================================
[2026-10-18 01:43:45,673.673 INFO    ] Launching Daemon at Sun Oct 18 01:43:45 IST 2026
[2026-10-18 01:43:45,684.684 INFO    ] ================================================
[2026-10-18 01:43:46,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:43:46
[2026-10-18 01:43:46,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:43:47,092.092 INFO    ] Initializing speech engine...
[2026-10-18 01:43:47,099.099 INFO    ] 2026-10-18 01:43:47
[2026-10-18 01:43:47,396.396 INFO    ] 2026-10-18 01:43:47
[2026-10-18 01:43:47,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:43:47,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:43:47,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:43:47,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:43:47,782.782 INFO    ] time= 18/10/2026 01:43:47
[2026-10-18 01:43:47,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:43:47,823.823 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:43:47,906.906 INFO    ] No existing commands found in stream
[2026-10-18 01:43:52,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:43:52,919.919 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-18 01:43:56,278.278 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:43:56,281.281 INFO    ] Checking for system updates...
[2026-10-18 01:43:56,317.317 INFO    ] 200
[2026-10-18 01:43:56,319.319 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:43:56,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:43:56,373.373 INFO    ] No update needed
[2026-10-18 01:43:56,376.376 INFO    ] Checking for camera pi updates...
[2026-10-18 01:43:56,410.410 INFO    ] 200
[2026-10-18 01:43:56,412.412 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:43:56,453.453 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:44:06,469.469 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:44:06,504.504 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:44:06,514.514 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:44:06,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:44:06,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:44:06,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:44:08,568.568 INFO    ] ================================================
[2026-10-18 01:44:08,584.584 INFO    ] Launching Daemon at Sun Oct 18 01:44:08 IST 2026
[2026-10-18 01:44:08,595.595 INFO    ] ================================================
[2026-10-18 01:44:09,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:44:09
[2026-10-18 01:44:09,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:44:10,007.007 INFO    ] Initializing speech engine...
[2026-10-18 01:44:10,022.022 INFO    ] 2026-10-18 01:44:10
[2026-10-18 01:44:10,289.289 INFO    ] 2026-10-18 01:44:10
[2026-10-18 01:44:10,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:44:10,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:44:10,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:44:10,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:44:10,776.776 INFO    ] time= 18/10/2026 01:44:10
[2026-10-18 01:44:10,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:44:10,896.896 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:44:11,041.041 INFO    ] No existing commands found in stream
[2026-10-18 01:44:16,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:44:16,067.067 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-18 01:44:17,712.712 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:44:17,714.714 INFO    ] Checking for system updates...
[2026-10-18 01:44:17,751.751 INFO    ] 200
[2026-10-18 01:44:17,753.753 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:44:17,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:44:17,818.818 INFO    ] No update needed
[2026-10-18 01:44:17,820.820 INFO    ] Checking for camera pi updates...
[2026-10-18 01:44:17,863.863 INFO    ] 200
[2026-10-18 01:44:17,865.865 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:44:17,919.919 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:44:27,934.934 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:44:27,970.970 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:44:27,980.980 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:44:27,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:44:27,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:44:27,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:44:30,032.032 INFO    ] ================================================
[2026-10-18 01:44:30,048.048 INFO    ] Launching Daemon at Sun Oct 18 01:44:30 IST 2026
[2026-10-18 01:44:30,059.059 INFO    ] ================================================
[2026-10-18 01:44:30,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:44:30
[2026-10-18 01:44:31,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:44:31,484.484 INFO    ] Initializing speech engine...
[2026-10-18 01:44:31,498.498 INFO    ] 2026-10-18 01:44:31
[2026-10-18 01:44:31,774.774 INFO    ] 2026-10-18 01:44:31
[2026-10-18 01:44:31,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:44:32,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:44:32,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:44:32,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:44:32,309.309 INFO    ] time= 18/10/2026 01:44:32
[2026-10-18 01:44:32,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:44:32,376.376 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:44:32,538.538 INFO    ] No existing commands found in stream
[2026-10-18 01:44:37,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:44:37,566.566 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-18 01:44:41,107.107 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:44:41,110.110 INFO    ] Checking for system updates...
[2026-10-18 01:44:41,149.149 INFO    ] 200
[2026-10-18 01:44:41,152.152 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:44:41,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:44:41,213.213 INFO    ] No update needed
[2026-10-18 01:44:41,216.216 INFO    ] Checking for camera pi updates...
[2026-10-18 01:44:41,253.253 INFO    ] 200
[2026-10-18 01:44:41,255.255 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:44:41,300.300 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:44:51,315.315 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:44:51,351.351 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:44:51,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:44:51,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:44:51,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:44:51,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:44:53,413.413 INFO    ] ================================================
[2026-10-18 01:44:53,429.429 INFO    ] Launching Daemon at Sun Oct 18 01:44:53 IST 2026
[2026-10-18 01:44:53,444.444 INFO    ] ================================================
[2026-10-18 01:44:54,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:44:54
[2026-10-18 01:44:54,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:44:54,876.876 INFO    ] Initializing speech engine...
[2026-10-18 01:44:54,895.895 INFO    ] 2026-10-18 01:44:54
[2026-10-18 01:44:55,162.162 INFO    ] 2026-10-18 01:44:55
[2026-10-18 01:44:55,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:44:55,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:44:55,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:44:55,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:44:55,701.701 INFO    ] time= 18/10/2026 01:44:55
[2026-10-18 01:44:55,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:44:55,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:44:55,949.949 INFO    ] No existing commands found in stream
[2026-10-18 01:45:00,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:45:00,974.974 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-18 01:45:04,680.680 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:45:04,683.683 INFO    ] Checking for system updates...
[2026-10-18 01:45:04,719.719 INFO    ] 200
[2026-10-18 01:45:04,721.721 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:45:04,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:45:04,777.777 INFO    ] No update needed
[2026-10-18 01:45:04,779.779 INFO    ] Checking for camera pi updates...
[2026-10-18 01:45:04,816.816 INFO    ] 200
[2026-10-18 01:45:04,819.819 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:45:04,860.860 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:45:14,876.876 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:45:14,916.916 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:45:14,926.926 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:45:14,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:45:14,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:45:14,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:45:16,981.981 INFO    ] ================================================
[2026-10-18 01:45:17,998.998 INFO    ] Launching Daemon at Sun Oct 18 01:45:16 IST 2026
[2026-10-18 01:45:17,009.009 INFO    ] ================================================
[2026-10-18 01:45:17,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:45:17
[2026-10-18 01:45:18,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:45:18,418.418 INFO    ] Initializing speech engine...
[2026-10-18 01:45:18,425.425 INFO    ] 2026-10-18 01:45:18
[2026-10-18 01:45:18,718.718 INFO    ] 2026-10-18 01:45:18
[2026-10-18 01:45:18,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:45:18,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:45:18,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:45:19,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:45:19,204.204 INFO    ] time= 18/10/2026 01:45:19
[2026-10-18 01:45:19,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:45:19,305.305 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:45:19,405.405 INFO    ] No existing commands found in stream
[2026-10-18 01:45:24,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:45:24,419.419 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-18 01:45:28,291.291 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:45:28,294.294 INFO    ] Checking for system updates...
[2026-10-18 01:45:28,330.330 INFO    ] 200
[2026-10-18 01:45:28,333.333 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:45:28,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:45:28,392.392 INFO    ] No update needed
[2026-10-18 01:45:28,395.395 INFO    ] Checking for camera pi updates...
[2026-10-18 01:45:28,431.431 INFO    ] 200
[2026-10-18 01:45:28,434.434 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:45:28,475.475 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:45:38,489.489 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:45:38,524.524 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:45:38,534.534 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:45:38,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:45:38,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:45:38,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:45:40,587.587 INFO    ] ================================================
[2026-10-18 01:45:40,602.602 INFO    ] Launching Daemon at Sun Oct 18 01:45:40 IST 2026
[2026-10-18 01:45:40,614.614 INFO    ] ================================================
[2026-10-18 01:45:41,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:45:41
[2026-10-18 01:45:41,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:45:42,219.219 INFO    ] Initializing speech engine...
[2026-10-18 01:45:42,228.228 INFO    ] 2026-10-18 01:45:42
[2026-10-18 01:45:42,514.514 INFO    ] 2026-10-18 01:45:42
[2026-10-18 01:45:42,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:45:42,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:45:42,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:45:43,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:45:43,070.070 INFO    ] time= 18/10/2026 01:45:43
[2026-10-18 01:45:43,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:45:43,096.096 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:45:43,243.243 INFO    ] No existing commands found in stream
[2026-10-18 01:45:48,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:45:48,283.283 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-18 01:45:51,195.195 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:45:51,198.198 INFO    ] Checking for system updates...
[2026-10-18 01:45:51,236.236 INFO    ] 200
[2026-10-18 01:45:51,238.238 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:45:51,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:45:51,295.295 INFO    ] No update needed
[2026-10-18 01:45:51,298.298 INFO    ] Checking for camera pi updates...
[2026-10-18 01:45:51,334.334 INFO    ] 200
[2026-10-18 01:45:51,337.337 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:45:51,379.379 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:46:01,396.396 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:46:01,436.436 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:46:01,447.447 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:46:01,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:46:01,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:46:01,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:46:03,509.509 INFO    ] ================================================
[2026-10-18 01:46:03,527.527 INFO    ] Launching Daemon at Sun Oct 18 01:46:03 IST 2026
[2026-10-18 01:46:03,541.541 INFO    ] ================================================
[2026-10-18 01:46:04,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:46:04
[2026-10-18 01:46:04,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:46:05,011.011 INFO    ] Initializing speech engine...
[2026-10-18 01:46:05,022.022 INFO    ] 2026-10-18 01:46:05
[2026-10-18 01:46:05,283.283 INFO    ] 2026-10-18 01:46:05
[2026-10-18 01:46:05,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:46:05,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:46:05,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:46:05,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:46:05,828.828 INFO    ] time= 18/10/2026 01:46:05
[2026-10-18 01:46:05,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:46:05,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:46:05,982.982 INFO    ] No existing commands found in stream
[2026-10-18 01:46:11,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:46:11,007.007 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-18 01:46:14,015.015 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:46:14,018.018 INFO    ] Checking for system updates...
[2026-10-18 01:46:14,058.058 INFO    ] 200
[2026-10-18 01:46:14,061.061 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:46:14,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:46:14,117.117 INFO    ] No update needed
[2026-10-18 01:46:14,120.120 INFO    ] Checking for camera pi updates...
[2026-10-18 01:46:14,161.161 INFO    ] 200
[2026-10-18 01:46:14,163.163 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:46:14,208.208 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:46:24,223.223 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:46:24,257.257 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:46:24,267.267 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:46:24,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:46:24,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:46:24,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:46:26,320.320 INFO    ] ================================================
[2026-10-18 01:46:26,335.335 INFO    ] Launching Daemon at Sun Oct 18 01:46:26 IST 2026
[2026-10-18 01:46:26,347.347 INFO    ] ================================================
[2026-10-18 01:46:26,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:46:26
[2026-10-18 01:46:27,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:46:27,796.796 INFO    ] Initializing speech engine...
[2026-10-18 01:46:27,807.807 INFO    ] 2026-10-18 01:46:27
[2026-10-18 01:46:28,092.092 INFO    ] 2026-10-18 01:46:28
[2026-10-18 01:46:28,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:46:28,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:46:28,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:46:28,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:46:28,643.643 INFO    ] time= 18/10/2026 01:46:28
[2026-10-18 01:46:28,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:46:28,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:46:28,833.833 INFO    ] No existing commands found in stream
[2026-10-18 01:46:33,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:46:33,873.873 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-18 01:46:36,276.276 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:46:36,279.279 INFO    ] Checking for system updates...
[2026-10-18 01:46:36,319.319 INFO    ] 200
[2026-10-18 01:46:36,322.322 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:46:36,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:46:36,382.382 INFO    ] No update needed
[2026-10-18 01:46:36,385.385 INFO    ] Checking for camera pi updates...
[2026-10-18 01:46:36,420.420 INFO    ] 200
[2026-10-18 01:46:36,423.423 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:46:36,463.463 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:46:46,476.476 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:46:46,511.511 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:46:46,521.521 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:46:46,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:46:46,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:46:46,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:46:48,572.572 INFO    ] ================================================
[2026-10-18 01:46:48,588.588 INFO    ] Launching Daemon at Sun Oct 18 01:46:48 IST 2026
[2026-10-18 01:46:48,599.599 INFO    ] ================================================
[2026-10-18 01:46:49,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:46:49
[2026-10-18 01:46:49,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:46:50,000.000 INFO    ] Initializing speech engine...
[2026-10-18 01:46:50,008.008 INFO    ] 2026-10-18 01:46:50
[2026-10-18 01:46:50,300.300 INFO    ] 2026-10-18 01:46:50
[2026-10-18 01:46:50,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:46:50,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:46:50,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:46:50,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:46:50,831.831 INFO    ] time= 18/10/2026 01:46:50
[2026-10-18 01:46:50,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:46:50,931.931 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:46:51,080.080 INFO    ] No existing commands found in stream
[2026-10-18 01:46:56,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:46:56,112.112 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-18 01:46:59,537.537 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 01:46:59,540.540 INFO    ] Checking for system updates...
[2026-10-18 01:46:59,579.579 INFO    ] 200
[2026-10-18 01:46:59,582.582 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:46:59,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:46:59,636.636 INFO    ] No update needed
[2026-10-18 01:46:59,639.639 INFO    ] Checking for camera pi updates...
[2026-10-18 01:46:59,675.675 INFO    ] 200
[2026-10-18 01:46:59,678.678 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:46:59,722.722 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:47:09,737.737 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:47:09,772.772 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:47:09,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:47:09,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:47:09,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:47:09,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:47:11,834.834 INFO    ] ================================================
[2026-10-18 01:47:11,850.850 INFO    ] Launching Daemon at Sun Oct 18 01:47:11 IST 2026
[2026-10-18 01:47:11,861.861 INFO    ] ================================================
[2026-10-18 01:47:12,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:47:12
[2026-10-18 01:47:13,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:47:13,263.263 INFO    ] Initializing speech engine...
[2026-10-18 01:47:13,286.286 INFO    ] 2026-10-18 01:47:13
[2026-10-18 01:47:13,542.542 INFO    ] 2026-10-18 01:47:13
[2026-10-18 01:47:13,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:47:13,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:47:13,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:47:13,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:47:13,947.947 INFO    ] time= 18/10/2026 01:47:13
[2026-10-18 01:47:13,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:47:13,996.996 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:47:14,118.118 INFO    ] No existing commands found in stream
[2026-10-18 01:47:19,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:47:19,150.150 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-18 01:47:23,235.235 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:47:23,238.238 INFO    ] Checking for system updates...
[2026-10-18 01:47:23,277.277 INFO    ] 200
[2026-10-18 01:47:23,279.279 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:47:23,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:47:23,339.339 INFO    ] No update needed
[2026-10-18 01:47:23,341.341 INFO    ] Checking for camera pi updates...
[2026-10-18 01:47:23,377.377 INFO    ] 200
[2026-10-18 01:47:23,379.379 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:47:23,420.420 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:47:33,432.432 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:47:33,467.467 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:47:33,476.476 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:47:33,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:47:33,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:47:33,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:47:35,530.530 INFO    ] ================================================
[2026-10-18 01:47:35,545.545 INFO    ] Launching Daemon at Sun Oct 18 01:47:35 IST 2026
[2026-10-18 01:47:35,557.557 INFO    ] ================================================
[2026-10-18 01:47:36,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:47:36
[2026-10-18 01:47:36,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:47:37,147.147 INFO    ] Initializing speech engine...
[2026-10-18 01:47:37,161.161 INFO    ] 2026-10-18 01:47:37
[2026-10-18 01:47:37,430.430 INFO    ] 2026-10-18 01:47:37
[2026-10-18 01:47:37,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:47:37,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:47:37,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:47:37,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:47:37,978.978 INFO    ] time= 18/10/2026 01:47:37
[2026-10-18 01:47:37,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:47:38,003.003 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:47:38,134.134 INFO    ] No existing commands found in stream
[2026-10-18 01:47:43,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:47:43,158.158 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-18 01:47:45,792.792 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:47:45,795.795 INFO    ] Checking for system updates...
[2026-10-18 01:47:45,835.835 INFO    ] 200
[2026-10-18 01:47:45,838.838 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:47:45,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:47:45,899.899 INFO    ] No update needed
[2026-10-18 01:47:45,902.902 INFO    ] Checking for camera pi updates...
[2026-10-18 01:47:45,937.937 INFO    ] 200
[2026-10-18 01:47:45,940.940 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:47:45,986.986 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:47:56,008.008 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:47:56,048.048 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:47:56,060.060 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:47:56,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:47:56,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:47:56,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:47:58,116.116 INFO    ] ================================================
[2026-10-18 01:47:58,132.132 INFO    ] Launching Daemon at Sun Oct 18 01:47:58 IST 2026
[2026-10-18 01:47:58,143.143 INFO    ] ================================================
[2026-10-18 01:47:58,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:47:58
[2026-10-18 01:47:59,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:47:59,665.665 INFO    ] Initializing speech engine...
[2026-10-18 01:47:59,672.672 INFO    ] 2026-10-18 01:47:59
[2026-10-18 01:47:59,932.932 INFO    ] 2026-10-18 01:47:59
[2026-10-18 01:47:59,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:48:00,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:48:00,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:48:00,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:48:00,476.476 INFO    ] time= 18/10/2026 01:48:00
[2026-10-18 01:48:00,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:48:00,498.498 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:48:00,630.630 INFO    ] No existing commands found in stream
[2026-10-18 01:48:05,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:48:05,646.646 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-18 01:48:08,992.992 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:48:08,995.995 INFO    ] Checking for system updates...
[2026-10-18 01:48:09,035.035 INFO    ] 200
[2026-10-18 01:48:09,037.037 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:48:09,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:48:09,098.098 INFO    ] No update needed
[2026-10-18 01:48:09,100.100 INFO    ] Checking for camera pi updates...
[2026-10-18 01:48:09,137.137 INFO    ] 200
[2026-10-18 01:48:09,139.139 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:48:09,183.183 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:48:19,198.198 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:48:19,234.234 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:48:19,244.244 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:48:19,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:48:19,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:48:19,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:48:21,298.298 INFO    ] ================================================
[2026-10-18 01:48:21,314.314 INFO    ] Launching Daemon at Sun Oct 18 01:48:21 IST 2026
[2026-10-18 01:48:21,325.325 INFO    ] ================================================
[2026-10-18 01:48:21,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:48:21
[2026-10-18 01:48:22,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:48:22,806.806 INFO    ] Initializing speech engine...
[2026-10-18 01:48:22,828.828 INFO    ] 2026-10-18 01:48:22
[2026-10-18 01:48:23,080.080 INFO    ] 2026-10-18 01:48:23
[2026-10-18 01:48:23,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:48:23,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:48:23,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:48:23,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:48:23,562.562 INFO    ] time= 18/10/2026 01:48:23
[2026-10-18 01:48:23,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:48:23,642.642 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:48:23,770.770 INFO    ] No existing commands found in stream
[2026-10-18 01:48:28,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:48:28,801.801 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-18 01:48:32,548.548 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:48:32,551.551 INFO    ] Checking for system updates...
[2026-10-18 01:48:32,591.591 INFO    ] 200
[2026-10-18 01:48:32,594.594 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:48:32,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:48:32,657.657 INFO    ] No update needed
[2026-10-18 01:48:32,660.660 INFO    ] Checking for camera pi updates...
[2026-10-18 01:48:32,701.701 INFO    ] 200
[2026-10-18 01:48:32,703.703 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:48:32,753.753 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:48:42,768.768 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:48:42,803.803 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:48:42,813.813 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:48:42,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:48:42,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:48:42,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:48:44,867.867 INFO    ] ================================================
[2026-10-18 01:48:44,883.883 INFO    ] Launching Daemon at Sun Oct 18 01:48:44 IST 2026
[2026-10-18 01:48:44,895.895 INFO    ] ================================================
[2026-10-18 01:48:45,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:48:45
[2026-10-18 01:48:46,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:48:46,318.318 INFO    ] Initializing speech engine...
[2026-10-18 01:48:46,326.326 INFO    ] 2026-10-18 01:48:46
[2026-10-18 01:48:46,577.577 INFO    ] 2026-10-18 01:48:46
[2026-10-18 01:48:46,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:48:46,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:48:46,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:48:47,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:48:47,079.079 INFO    ] time= 18/10/2026 01:48:47
[2026-10-18 01:48:47,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:48:47,153.153 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:48:47,294.294 INFO    ] No existing commands found in stream
[2026-10-18 01:48:52,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:48:52,320.320 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-18 01:48:53,754.754 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:48:53,756.756 INFO    ] Checking for system updates...
[2026-10-18 01:48:53,797.797 INFO    ] 200
[2026-10-18 01:48:53,800.800 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:48:53,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:48:53,853.853 INFO    ] No update needed
[2026-10-18 01:48:53,856.856 INFO    ] Checking for camera pi updates...
[2026-10-18 01:48:53,891.891 INFO    ] 200
[2026-10-18 01:48:53,893.893 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:48:53,940.940 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:49:03,953.953 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:49:03,988.988 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:49:03,998.998 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:49:04,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:49:04,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:49:04,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:49:06,052.052 INFO    ] ================================================
[2026-10-18 01:49:06,068.068 INFO    ] Launching Daemon at Sun Oct 18 01:49:06 IST 2026
[2026-10-18 01:49:06,079.079 INFO    ] ================================================
[2026-10-18 01:49:06,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:49:06
[2026-10-18 01:49:07,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:49:07,732.732 INFO    ] Initializing speech engine...
[2026-10-18 01:49:07,746.746 INFO    ] 2026-10-18 01:49:07
[2026-10-18 01:49:08,027.027 INFO    ] 2026-10-18 01:49:08
[2026-10-18 01:49:08,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:49:08,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:49:08,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:49:08,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:49:08,567.567 INFO    ] time= 18/10/2026 01:49:08
[2026-10-18 01:49:08,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:49:08,603.603 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:49:08,722.722 INFO    ] No existing commands found in stream
[2026-10-18 01:49:13,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:49:13,746.746 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-18 01:49:18,179.179 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:49:18,182.182 INFO    ] Checking for system updates...
[2026-10-18 01:49:18,224.224 INFO    ] 200
[2026-10-18 01:49:18,227.227 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:49:18,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:49:18,291.291 INFO    ] No update needed
[2026-10-18 01:49:18,293.293 INFO    ] Checking for camera pi updates...
[2026-10-18 01:49:18,332.332 INFO    ] 200
[2026-10-18 01:49:18,335.335 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:49:18,382.382 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:49:28,399.399 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:49:28,440.440 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:49:28,452.452 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:49:28,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:49:28,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:49:28,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:49:30,510.510 INFO    ] ================================================
[2026-10-18 01:49:30,526.526 INFO    ] Launching Daemon at Sun Oct 18 01:49:30 IST 2026
[2026-10-18 01:49:30,537.537 INFO    ] ================================================
[2026-10-18 01:49:31,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:49:31
[2026-10-18 01:49:31,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:49:32,232.232 INFO    ] Initializing speech engine...
[2026-10-18 01:49:32,243.243 INFO    ] 2026-10-18 01:49:32
[2026-10-18 01:49:32,563.563 INFO    ] 2026-10-18 01:49:32
[2026-10-18 01:49:32,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:49:32,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:49:32,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:49:33,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:49:33,148.148 INFO    ] time= 18/10/2026 01:49:33
[2026-10-18 01:49:33,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:49:33,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:49:33,354.354 INFO    ] No existing commands found in stream
[2026-10-18 01:49:38,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:49:38,372.372 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-18 01:49:39,240.240 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:49:39,243.243 INFO    ] Checking for system updates...
[2026-10-18 01:49:39,305.305 INFO    ] 200
[2026-10-18 01:49:39,308.308 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:49:39,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:49:39,367.367 INFO    ] No update needed
[2026-10-18 01:49:39,370.370 INFO    ] Checking for camera pi updates...
[2026-10-18 01:49:39,415.415 INFO    ] 200
[2026-10-18 01:49:39,418.418 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:49:39,460.460 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:49:49,477.477 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:49:49,513.513 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:49:49,522.522 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:49:49,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:49:49,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:49:49,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:49:51,576.576 INFO    ] ================================================
[2026-10-18 01:49:51,593.593 INFO    ] Launching Daemon at Sun Oct 18 01:49:51 IST 2026
[2026-10-18 01:49:51,604.604 INFO    ] ================================================
[2026-10-18 01:49:52,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:49:52
[2026-10-18 01:49:52,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:49:53,061.061 INFO    ] Initializing speech engine...
[2026-10-18 01:49:53,070.070 INFO    ] 2026-10-18 01:49:53
[2026-10-18 01:49:53,345.345 INFO    ] 2026-10-18 01:49:53
[2026-10-18 01:49:53,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:49:53,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:49:53,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:49:53,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:49:53,884.884 INFO    ] time= 18/10/2026 01:49:53
[2026-10-18 01:49:53,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:49:53,909.909 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:49:54,027.027 INFO    ] No existing commands found in stream
[2026-10-18 01:49:59,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:49:59,051.051 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-18 01:50:02,612.612 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:50:02,616.616 INFO    ] Checking for system updates...
[2026-10-18 01:50:02,678.678 INFO    ] 200
[2026-10-18 01:50:02,682.682 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:50:02,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:50:02,760.760 INFO    ] No update needed
[2026-10-18 01:50:02,765.765 INFO    ] Checking for camera pi updates...
[2026-10-18 01:50:02,816.816 INFO    ] 200
[2026-10-18 01:50:02,820.820 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:50:02,887.887 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:50:12,910.910 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:50:12,949.949 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:50:12,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:50:12,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:50:12,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:50:12,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:50:15,016.016 INFO    ] ================================================
[2026-10-18 01:50:15,038.038 INFO    ] Launching Daemon at Sun Oct 18 01:50:15 IST 2026
[2026-10-18 01:50:15,050.050 INFO    ] ================================================
[2026-10-18 01:50:15,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:50:15
[2026-10-18 01:50:16,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:50:16,482.482 INFO    ] Initializing speech engine...
[2026-10-18 01:50:16,489.489 INFO    ] 2026-10-18 01:50:16
[2026-10-18 01:50:16,783.783 INFO    ] 2026-10-18 01:50:16
[2026-10-18 01:50:16,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:50:17,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:50:17,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:50:17,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:50:17,246.246 INFO    ] time= 18/10/2026 01:50:17
[2026-10-18 01:50:17,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:50:17,320.320 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:50:17,429.429 INFO    ] No existing commands found in stream
[2026-10-18 01:50:22,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:50:22,455.455 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-18 01:50:24,612.612 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 01:50:24,615.615 INFO    ] Checking for system updates...
[2026-10-18 01:50:24,653.653 INFO    ] 200
[2026-10-18 01:50:24,656.656 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:50:24,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:50:24,712.712 INFO    ] No update needed
[2026-10-18 01:50:24,714.714 INFO    ] Checking for camera pi updates...
[2026-10-18 01:50:24,754.754 INFO    ] 200
[2026-10-18 01:50:24,757.757 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:50:24,797.797 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:50:34,812.812 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:50:34,847.847 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:50:34,857.857 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:50:34,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:50:34,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:50:34,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:50:36,910.910 INFO    ] ================================================
[2026-10-18 01:50:36,927.927 INFO    ] Launching Daemon at Sun Oct 18 01:50:36 IST 2026
[2026-10-18 01:50:36,939.939 INFO    ] ================================================
[2026-10-18 01:50:37,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:50:37
[2026-10-18 01:50:38,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:50:38,360.360 INFO    ] Initializing speech engine...
[2026-10-18 01:50:38,369.369 INFO    ] 2026-10-18 01:50:38
[2026-10-18 01:50:38,618.618 INFO    ] 2026-10-18 01:50:38
[2026-10-18 01:50:38,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:50:38,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:50:38,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:50:39,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:50:39,141.141 INFO    ] time= 18/10/2026 01:50:39
[2026-10-18 01:50:39,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:50:39,192.192 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:50:39,350.350 INFO    ] No existing commands found in stream
[2026-10-18 01:50:44,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:50:44,379.379 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-18 01:50:45,629.629 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 01:50:45,632.632 INFO    ] Checking for system updates...
[2026-10-18 01:50:45,668.668 INFO    ] 200
[2026-10-18 01:50:45,670.670 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:50:45,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:50:45,729.729 INFO    ] No update needed
[2026-10-18 01:50:45,731.731 INFO    ] Checking for camera pi updates...
[2026-10-18 01:50:45,765.765 INFO    ] 200
[2026-10-18 01:50:45,768.768 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:50:45,810.810 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:50:55,824.824 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:50:55,859.859 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:50:55,869.869 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:50:55,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:50:55,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:50:55,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:50:57,923.923 INFO    ] ================================================
[2026-10-18 01:50:57,939.939 INFO    ] Launching Daemon at Sun Oct 18 01:50:57 IST 2026
[2026-10-18 01:50:57,950.950 INFO    ] ================================================
[2026-10-18 01:50:58,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:50:58
[2026-10-18 01:50:59,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:50:59,389.389 INFO    ] Initializing speech engine...
[2026-10-18 01:50:59,398.398 INFO    ] 2026-10-18 01:50:59
[2026-10-18 01:50:59,694.694 INFO    ] 2026-10-18 01:50:59
[2026-10-18 01:50:59,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:50:59,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:51:00,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:51:00,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:51:00,249.249 INFO    ] time= 18/10/2026 01:51:00
[2026-10-18 01:51:00,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:51:00,332.332 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:51:00,497.497 INFO    ] No existing commands found in stream
[2026-10-18 01:51:05,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:51:05,515.515 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-18 01:51:06,753.753 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 01:51:06,755.755 INFO    ] Checking for system updates...
[2026-10-18 01:51:06,791.791 INFO    ] 200
[2026-10-18 01:51:06,794.794 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:51:06,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:51:06,851.851 INFO    ] No update needed
[2026-10-18 01:51:06,853.853 INFO    ] Checking for camera pi updates...
[2026-10-18 01:51:06,890.890 INFO    ] 200
[2026-10-18 01:51:06,893.893 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:51:06,932.932 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:51:16,948.948 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:51:16,983.983 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:51:16,993.993 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:51:16,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:51:17,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:51:17,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:51:19,046.046 INFO    ] ================================================
[2026-10-18 01:51:19,063.063 INFO    ] Launching Daemon at Sun Oct 18 01:51:19 IST 2026
[2026-10-18 01:51:19,074.074 INFO    ] ================================================
[2026-10-18 01:51:19,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:51:19
[2026-10-18 01:51:20,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:51:20,547.547 INFO    ] Initializing speech engine...
[2026-10-18 01:51:20,555.555 INFO    ] 2026-10-18 01:51:20
[2026-10-18 01:51:20,831.831 INFO    ] 2026-10-18 01:51:20
[2026-10-18 01:51:20,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:51:21,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:51:21,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:51:21,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:51:21,339.339 INFO    ] time= 18/10/2026 01:51:21
[2026-10-18 01:51:21,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:51:21,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:51:21,564.564 INFO    ] No existing commands found in stream
[2026-10-18 01:51:26,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:51:26,605.605 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-18 01:51:30,681.681 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:51:30,684.684 INFO    ] Checking for system updates...
[2026-10-18 01:51:30,724.724 INFO    ] 200
[2026-10-18 01:51:30,727.727 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:51:30,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:51:30,789.789 INFO    ] No update needed
[2026-10-18 01:51:30,792.792 INFO    ] Checking for camera pi updates...
[2026-10-18 01:51:30,830.830 INFO    ] 200
[2026-10-18 01:51:30,833.833 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:51:30,874.874 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:51:40,890.890 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:51:40,929.929 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:51:40,940.940 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:51:40,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:51:40,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:51:40,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:51:43,995.995 INFO    ] ================================================
[2026-10-18 01:51:43,012.012 INFO    ] Launching Daemon at Sun Oct 18 01:51:43 IST 2026
[2026-10-18 01:51:43,023.023 INFO    ] ================================================
[2026-10-18 01:51:43,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:51:43
[2026-10-18 01:51:44,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:51:44,421.421 INFO    ] Initializing speech engine...
[2026-10-18 01:51:44,436.436 INFO    ] 2026-10-18 01:51:44
[2026-10-18 01:51:44,701.701 INFO    ] 2026-10-18 01:51:44
[2026-10-18 01:51:44,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:51:44,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:51:44,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:51:45,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:51:45,155.155 INFO    ] time= 18/10/2026 01:51:45
[2026-10-18 01:51:45,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:51:45,275.275 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:51:45,426.426 INFO    ] No existing commands found in stream
[2026-10-18 01:51:50,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:51:50,443.443 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-18 01:51:52,985.985 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:51:52,988.988 INFO    ] Checking for system updates...
[2026-10-18 01:51:53,024.024 INFO    ] 200
[2026-10-18 01:51:53,027.027 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:51:53,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:51:53,081.081 INFO    ] No update needed
[2026-10-18 01:51:53,083.083 INFO    ] Checking for camera pi updates...
[2026-10-18 01:51:53,117.117 INFO    ] 200
[2026-10-18 01:51:53,120.120 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:51:53,161.161 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:52:03,176.176 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:52:03,215.215 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:52:03,227.227 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:52:03,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:52:03,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:52:03,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:52:05,287.287 INFO    ] ================================================
[2026-10-18 01:52:05,304.304 INFO    ] Launching Daemon at Sun Oct 18 01:52:05 IST 2026
[2026-10-18 01:52:05,316.316 INFO    ] ================================================
[2026-10-18 01:52:05,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:52:05
[2026-10-18 01:52:06,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:52:06,750.750 INFO    ] Initializing speech engine...
[2026-10-18 01:52:06,760.760 INFO    ] 2026-10-18 01:52:06
[2026-10-18 01:52:07,007.007 INFO    ] 2026-10-18 01:52:07
[2026-10-18 01:52:07,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:52:07,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:52:07,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:52:07,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:52:07,558.558 INFO    ] time= 18/10/2026 01:52:07
[2026-10-18 01:52:07,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:52:07,586.586 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:52:07,718.718 INFO    ] No existing commands found in stream
[2026-10-18 01:52:12,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:52:12,743.743 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-18 01:52:15,647.647 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:52:15,650.650 INFO    ] Checking for system updates...
[2026-10-18 01:52:15,690.690 INFO    ] 200
[2026-10-18 01:52:15,693.693 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:52:15,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:52:15,747.747 INFO    ] No update needed
[2026-10-18 01:52:15,750.750 INFO    ] Checking for camera pi updates...
[2026-10-18 01:52:15,784.784 INFO    ] 200
[2026-10-18 01:52:15,787.787 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:52:15,827.827 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:52:25,841.841 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:52:25,877.877 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:52:25,886.886 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:52:25,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:52:25,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:52:25,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:52:27,940.940 INFO    ] ================================================
[2026-10-18 01:52:27,957.957 INFO    ] Launching Daemon at Sun Oct 18 01:52:27 IST 2026
[2026-10-18 01:52:27,969.969 INFO    ] ================================================
[2026-10-18 01:52:28,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:52:28
[2026-10-18 01:52:29,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:52:29,380.380 INFO    ] Initializing speech engine...
[2026-10-18 01:52:29,389.389 INFO    ] 2026-10-18 01:52:29
[2026-10-18 01:52:29,684.684 INFO    ] 2026-10-18 01:52:29
[2026-10-18 01:52:29,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:52:29,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:52:29,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:52:30,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:52:30,113.113 INFO    ] time= 18/10/2026 01:52:30
[2026-10-18 01:52:30,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:52:30,141.141 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:52:30,256.256 INFO    ] No existing commands found in stream
[2026-10-18 01:52:35,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:52:35,289.289 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-18 01:52:36,122.122 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:52:36,125.125 INFO    ] Checking for system updates...
[2026-10-18 01:52:36,161.161 INFO    ] 200
[2026-10-18 01:52:36,163.163 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:52:36,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:52:36,218.218 INFO    ] No update needed
[2026-10-18 01:52:36,220.220 INFO    ] Checking for camera pi updates...
[2026-10-18 01:52:36,254.254 INFO    ] 200
[2026-10-18 01:52:36,256.256 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:52:36,296.296 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:52:46,311.311 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:52:46,346.346 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:52:46,355.355 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:52:46,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:52:46,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:52:46,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:52:48,410.410 INFO    ] ================================================
[2026-10-18 01:52:48,427.427 INFO    ] Launching Daemon at Sun Oct 18 01:52:48 IST 2026
[2026-10-18 01:52:48,439.439 INFO    ] ================================================
[2026-10-18 01:52:49,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:52:49
[2026-10-18 01:52:49,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:52:50,110.110 INFO    ] Initializing speech engine...
[2026-10-18 01:52:50,115.115 INFO    ] 2026-10-18 01:52:50
[2026-10-18 01:52:50,407.407 INFO    ] 2026-10-18 01:52:50
[2026-10-18 01:52:50,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:52:50,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:52:50,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:52:50,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:52:50,955.955 INFO    ] time= 18/10/2026 01:52:50
[2026-10-18 01:52:50,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:52:51,004.004 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:52:51,122.122 INFO    ] No existing commands found in stream
[2026-10-18 01:52:56,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:52:56,161.161 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-18 01:53:00,409.409 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 01:53:00,413.413 INFO    ] Checking for system updates...
[2026-10-18 01:53:00,450.450 INFO    ] 200
[2026-10-18 01:53:00,452.452 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:53:00,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:53:00,515.515 INFO    ] No update needed
[2026-10-18 01:53:00,517.517 INFO    ] Checking for camera pi updates...
[2026-10-18 01:53:00,552.552 INFO    ] 200
[2026-10-18 01:53:00,554.554 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:53:00,596.596 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:53:10,612.612 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:53:10,653.653 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:53:10,664.664 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:53:10,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:53:10,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:53:10,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:53:12,718.718 INFO    ] ================================================
[2026-10-18 01:53:12,733.733 INFO    ] Launching Daemon at Sun Oct 18 01:53:12 IST 2026
[2026-10-18 01:53:12,744.744 INFO    ] ================================================
[2026-10-18 01:53:13,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:53:13
[2026-10-18 01:53:13,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:53:14,201.201 INFO    ] Initializing speech engine...
[2026-10-18 01:53:14,208.208 INFO    ] 2026-10-18 01:53:14
[2026-10-18 01:53:14,471.471 INFO    ] 2026-10-18 01:53:14
[2026-10-18 01:53:14,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:53:14,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:53:14,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:53:14,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:53:15,012.012 INFO    ] time= 18/10/2026 01:53:14
[2026-10-18 01:53:15,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:53:15,035.035 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:53:15,169.169 INFO    ] No existing commands found in stream
[2026-10-18 01:53:20,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:53:20,190.190 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-18 01:53:21,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:53:21,861.861 INFO    ] Checking for system updates...
[2026-10-18 01:53:21,898.898 INFO    ] 200
[2026-10-18 01:53:21,901.901 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:53:21,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:53:21,957.957 INFO    ] No update needed
[2026-10-18 01:53:21,959.959 INFO    ] Checking for camera pi updates...
[2026-10-18 01:53:21,998.998 INFO    ] 200
[2026-10-18 01:53:22,001.001 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:53:22,052.052 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:53:32,068.068 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:53:32,108.108 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:53:32,119.119 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:53:32,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:53:32,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:53:32,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:53:34,178.178 INFO    ] ================================================
[2026-10-18 01:53:34,194.194 INFO    ] Launching Daemon at Sun Oct 18 01:53:34 IST 2026
[2026-10-18 01:53:34,205.205 INFO    ] ================================================
[2026-10-18 01:53:34,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:53:34
[2026-10-18 01:53:35,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:53:35,778.778 INFO    ] Initializing speech engine...
[2026-10-18 01:53:35,784.784 INFO    ] 2026-10-18 01:53:35
[2026-10-18 01:53:36,102.102 INFO    ] 2026-10-18 01:53:36
[2026-10-18 01:53:36,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:53:36,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:53:36,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:53:36,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:53:36,622.622 INFO    ] time= 18/10/2026 01:53:36
[2026-10-18 01:53:36,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:53:36,671.671 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:53:36,817.817 INFO    ] No existing commands found in stream
[2026-10-18 01:53:41,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:53:41,851.851 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-18 01:53:42,862.862 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:53:42,865.865 INFO    ] Checking for system updates...
[2026-10-18 01:53:42,902.902 INFO    ] 200
[2026-10-18 01:53:42,905.905 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:53:42,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:53:42,960.960 INFO    ] No update needed
[2026-10-18 01:53:42,963.963 INFO    ] Checking for camera pi updates...
[2026-10-18 01:53:42,998.998 INFO    ] 200
[2026-10-18 01:53:43,001.001 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:53:43,042.042 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:53:53,059.059 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:53:53,100.100 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:53:53,111.111 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:53:53,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:53:53,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:53:53,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:53:55,167.167 INFO    ] ================================================
[2026-10-18 01:53:55,182.182 INFO    ] Launching Daemon at Sun Oct 18 01:53:55 IST 2026
[2026-10-18 01:53:55,194.194 INFO    ] ================================================
[2026-10-18 01:53:55,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:53:55
[2026-10-18 01:53:56,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:53:56,682.682 INFO    ] Initializing speech engine...
[2026-10-18 01:53:56,692.692 INFO    ] 2026-10-18 01:53:56
[2026-10-18 01:53:57,009.009 INFO    ] 2026-10-18 01:53:56
[2026-10-18 01:53:57,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:53:57,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:53:57,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:53:57,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:53:57,525.525 INFO    ] time= 18/10/2026 01:53:57
[2026-10-18 01:53:57,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:53:57,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:53:57,708.708 INFO    ] No existing commands found in stream
[2026-10-18 01:54:02,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:54:02,750.750 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-18 01:54:05,818.818 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:54:05,821.821 INFO    ] Checking for system updates...
[2026-10-18 01:54:05,857.857 INFO    ] 200
[2026-10-18 01:54:05,860.860 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:54:05,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:54:05,938.938 INFO    ] No update needed
[2026-10-18 01:54:05,941.941 INFO    ] Checking for camera pi updates...
[2026-10-18 01:54:05,980.980 INFO    ] 200
[2026-10-18 01:54:05,983.983 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:54:06,029.029 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:54:16,043.043 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:54:16,078.078 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:54:16,088.088 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:54:16,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:54:16,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:54:16,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:54:18,140.140 INFO    ] ================================================
[2026-10-18 01:54:18,159.159 INFO    ] Launching Daemon at Sun Oct 18 01:54:18 IST 2026
[2026-10-18 01:54:18,170.170 INFO    ] ================================================
[2026-10-18 01:54:18,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:54:18
[2026-10-18 01:54:19,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:54:19,830.830 INFO    ] Initializing speech engine...
[2026-10-18 01:54:19,838.838 INFO    ] 2026-10-18 01:54:19
[2026-10-18 01:54:20,100.100 INFO    ] 2026-10-18 01:54:20
[2026-10-18 01:54:20,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:54:20,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:54:20,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:54:20,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:54:20,636.636 INFO    ] time= 18/10/2026 01:54:20
[2026-10-18 01:54:20,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:54:20,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:54:20,842.842 INFO    ] No existing commands found in stream
[2026-10-18 01:54:25,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:54:25,871.871 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-18 01:54:27,682.682 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:54:27,685.685 INFO    ] Checking for system updates...
[2026-10-18 01:54:27,725.725 INFO    ] 200
[2026-10-18 01:54:27,728.728 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:54:27,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:54:27,782.782 INFO    ] No update needed
[2026-10-18 01:54:27,784.784 INFO    ] Checking for camera pi updates...
[2026-10-18 01:54:27,818.818 INFO    ] 200
[2026-10-18 01:54:27,820.820 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:54:27,860.860 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:54:37,876.876 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:54:37,911.911 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:54:37,920.920 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:54:37,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:54:37,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:54:37,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:54:39,972.972 INFO    ] ================================================
[2026-10-18 01:54:39,988.988 INFO    ] Launching Daemon at Sun Oct 18 01:54:39 IST 2026
[2026-10-18 01:54:40,999.999 INFO    ] ================================================
[2026-10-18 01:54:40,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:54:40
[2026-10-18 01:54:41,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:54:41,406.406 INFO    ] Initializing speech engine...
[2026-10-18 01:54:41,427.427 INFO    ] 2026-10-18 01:54:41
[2026-10-18 01:54:41,689.689 INFO    ] 2026-10-18 01:54:41
[2026-10-18 01:54:41,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:54:41,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:54:41,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:54:42,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:54:42,186.186 INFO    ] time= 18/10/2026 01:54:42
[2026-10-18 01:54:42,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:54:42,265.265 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:54:42,401.401 INFO    ] No existing commands found in stream
[2026-10-18 01:54:47,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:54:47,430.430 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-18 01:54:51,618.618 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:54:51,620.620 INFO    ] Checking for system updates...
[2026-10-18 01:54:51,656.656 INFO    ] 200
[2026-10-18 01:54:51,659.659 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:54:51,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:54:51,715.715 INFO    ] No update needed
[2026-10-18 01:54:51,717.717 INFO    ] Checking for camera pi updates...
[2026-10-18 01:54:51,752.752 INFO    ] 200
[2026-10-18 01:54:51,754.754 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:54:51,801.801 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:55:01,816.816 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:55:01,850.850 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:55:01,860.860 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:55:01,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:55:01,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:55:01,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:55:03,926.926 INFO    ] ================================================
[2026-10-18 01:55:03,943.943 INFO    ] Launching Daemon at Sun Oct 18 01:55:03 IST 2026
[2026-10-18 01:55:03,957.957 INFO    ] ================================================
[2026-10-18 01:55:04,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:55:04
[2026-10-18 01:55:05,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:55:05,381.381 INFO    ] Initializing speech engine...
[2026-10-18 01:55:05,390.390 INFO    ] 2026-10-18 01:55:05
[2026-10-18 01:55:05,638.638 INFO    ] 2026-10-18 01:55:05
[2026-10-18 01:55:05,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:55:05,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:55:05,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:55:06,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:55:06,109.109 INFO    ] time= 18/10/2026 01:55:06
[2026-10-18 01:55:06,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:55:06,202.202 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:55:06,349.349 INFO    ] No existing commands found in stream
[2026-10-18 01:55:11,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:55:11,364.364 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-18 01:55:14,160.160 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:55:14,163.163 INFO    ] Checking for system updates...
[2026-10-18 01:55:14,199.199 INFO    ] 200
[2026-10-18 01:55:14,201.201 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:55:14,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:55:14,262.262 INFO    ] No update needed
[2026-10-18 01:55:14,265.265 INFO    ] Checking for camera pi updates...
[2026-10-18 01:55:14,302.302 INFO    ] 200
[2026-10-18 01:55:14,305.305 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:55:14,344.344 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:55:24,359.359 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:55:24,394.394 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:55:24,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:55:24,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:55:24,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:55:24,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:55:26,456.456 INFO    ] ================================================
[2026-10-18 01:55:26,472.472 INFO    ] Launching Daemon at Sun Oct 18 01:55:26 IST 2026
[2026-10-18 01:55:26,484.484 INFO    ] ================================================
[2026-10-18 01:55:27,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:55:27
[2026-10-18 01:55:27,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:55:27,950.950 INFO    ] Initializing speech engine...
[2026-10-18 01:55:27,955.955 INFO    ] 2026-10-18 01:55:27
[2026-10-18 01:55:28,218.218 INFO    ] 2026-10-18 01:55:28
[2026-10-18 01:55:28,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:55:28,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:55:28,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:55:28,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:55:28,761.761 INFO    ] time= 18/10/2026 01:55:28
[2026-10-18 01:55:28,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:55:28,791.791 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:55:28,915.915 INFO    ] No existing commands found in stream
[2026-10-18 01:55:33,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:55:33,933.933 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-18 01:55:38,374.374 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:55:38,377.377 INFO    ] Checking for system updates...
[2026-10-18 01:55:38,417.417 INFO    ] 200
[2026-10-18 01:55:38,420.420 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:55:38,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:55:38,474.474 INFO    ] No update needed
[2026-10-18 01:55:38,477.477 INFO    ] Checking for camera pi updates...
[2026-10-18 01:55:38,514.514 INFO    ] 200
[2026-10-18 01:55:38,517.517 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:55:38,562.562 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:55:48,577.577 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:55:48,611.611 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:55:48,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:55:48,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:55:48,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:55:48,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:55:50,673.673 INFO    ] ================================================
[2026-10-18 01:55:50,689.689 INFO    ] Launching Daemon at Sun Oct 18 01:55:50 IST 2026
[2026-10-18 01:55:50,700.700 INFO    ] ================================================
[2026-10-18 01:55:51,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:55:51
[2026-10-18 01:55:51,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:55:52,158.158 INFO    ] Initializing speech engine...
[2026-10-18 01:55:52,166.166 INFO    ] 2026-10-18 01:55:52
[2026-10-18 01:55:52,426.426 INFO    ] 2026-10-18 01:55:52
[2026-10-18 01:55:52,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:55:52,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:55:52,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:55:52,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:55:52,967.967 INFO    ] time= 18/10/2026 01:55:52
[2026-10-18 01:55:52,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:55:52,991.991 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:55:53,122.122 INFO    ] No existing commands found in stream
[2026-10-18 01:55:58,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:55:58,144.144 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-18 01:56:00,117.117 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:56:00,119.119 INFO    ] Checking for system updates...
[2026-10-18 01:56:00,160.160 INFO    ] 200
[2026-10-18 01:56:00,163.163 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:56:00,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:56:00,222.222 INFO    ] No update needed
[2026-10-18 01:56:00,225.225 INFO    ] Checking for camera pi updates...
[2026-10-18 01:56:00,261.261 INFO    ] 200
[2026-10-18 01:56:00,264.264 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:56:00,311.311 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:56:10,327.327 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:56:10,362.362 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:56:10,372.372 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:56:10,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:56:10,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:56:10,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:56:12,425.425 INFO    ] ================================================
[2026-10-18 01:56:12,440.440 INFO    ] Launching Daemon at Sun Oct 18 01:56:12 IST 2026
[2026-10-18 01:56:12,452.452 INFO    ] ================================================
[2026-10-18 01:56:13,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:56:13
[2026-10-18 01:56:13,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:56:13,909.909 INFO    ] Initializing speech engine...
[2026-10-18 01:56:13,924.924 INFO    ] 2026-10-18 01:56:13
[2026-10-18 01:56:14,195.195 INFO    ] 2026-10-18 01:56:14
[2026-10-18 01:56:14,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:56:14,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:56:14,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:56:14,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:56:14,727.727 INFO    ] time= 18/10/2026 01:56:14
[2026-10-18 01:56:14,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:56:14,817.817 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:56:14,959.959 INFO    ] No existing commands found in stream
[2026-10-18 01:56:19,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:56:19,988.988 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-18 01:56:23,860.860 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:56:23,863.863 INFO    ] Checking for system updates...
[2026-10-18 01:56:23,899.899 INFO    ] 200
[2026-10-18 01:56:23,901.901 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:56:23,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:56:23,958.958 INFO    ] No update needed
[2026-10-18 01:56:23,961.961 INFO    ] Checking for camera pi updates...
[2026-10-18 01:56:23,994.994 INFO    ] 200
[2026-10-18 01:56:23,996.996 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:56:24,040.040 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:56:34,052.052 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:56:34,088.088 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:56:34,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:56:34,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:56:34,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:56:34,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:56:36,150.150 INFO    ] ================================================
[2026-10-18 01:56:36,166.166 INFO    ] Launching Daemon at Sun Oct 18 01:56:36 IST 2026
[2026-10-18 01:56:36,178.178 INFO    ] ================================================
[2026-10-18 01:56:36,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:56:36
[2026-10-18 01:56:37,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:56:37,583.583 INFO    ] Initializing speech engine...
[2026-10-18 01:56:37,606.606 INFO    ] 2026-10-18 01:56:37
[2026-10-18 01:56:37,860.860 INFO    ] 2026-10-18 01:56:37
[2026-10-18 01:56:37,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:56:38,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:56:38,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:56:38,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:56:38,402.402 INFO    ] time= 18/10/2026 01:56:38
[2026-10-18 01:56:38,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:56:38,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:56:38,585.585 INFO    ] No existing commands found in stream
[2026-10-18 01:56:43,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:56:43,602.602 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-18 01:56:46,790.790 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 01:56:46,793.793 INFO    ] Checking for system updates...
[2026-10-18 01:56:46,832.832 INFO    ] 200
[2026-10-18 01:56:46,835.835 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:56:46,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:56:46,890.890 INFO    ] No update needed
[2026-10-18 01:56:46,893.893 INFO    ] Checking for camera pi updates...
[2026-10-18 01:56:46,930.930 INFO    ] 200
[2026-10-18 01:56:46,933.933 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:56:46,977.977 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:56:56,991.991 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:56:57,030.030 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:56:57,041.041 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:56:57,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:56:57,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:56:57,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:56:59,096.096 INFO    ] ================================================
[2026-10-18 01:56:59,111.111 INFO    ] Launching Daemon at Sun Oct 18 01:56:59 IST 2026
[2026-10-18 01:56:59,123.123 INFO    ] ================================================
[2026-10-18 01:56:59,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:56:59
[2026-10-18 01:57:00,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:57:00,582.582 INFO    ] Initializing speech engine...
[2026-10-18 01:57:00,588.588 INFO    ] 2026-10-18 01:57:00
[2026-10-18 01:57:00,849.849 INFO    ] 2026-10-18 01:57:00
[2026-10-18 01:57:00,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:57:01,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:57:01,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:57:01,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:57:01,368.368 INFO    ] time= 18/10/2026 01:57:01
[2026-10-18 01:57:01,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:57:01,413.413 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:57:01,550.550 INFO    ] No existing commands found in stream
[2026-10-18 01:57:06,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:57:06,584.584 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-18 01:57:08,059.059 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:57:08,061.061 INFO    ] Checking for system updates...
[2026-10-18 01:57:08,097.097 INFO    ] 200
[2026-10-18 01:57:08,099.099 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:57:08,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:57:08,154.154 INFO    ] No update needed
[2026-10-18 01:57:08,156.156 INFO    ] Checking for camera pi updates...
[2026-10-18 01:57:08,190.190 INFO    ] 200
[2026-10-18 01:57:08,192.192 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:57:08,236.236 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:57:18,251.251 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:57:18,287.287 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:57:18,297.297 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:57:18,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:57:18,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:57:18,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:57:20,351.351 INFO    ] ================================================
[2026-10-18 01:57:20,366.366 INFO    ] Launching Daemon at Sun Oct 18 01:57:20 IST 2026
[2026-10-18 01:57:20,377.377 INFO    ] ================================================
[2026-10-18 01:57:21,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:57:21
[2026-10-18 01:57:21,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:57:21,976.976 INFO    ] Initializing speech engine...
[2026-10-18 01:57:21,990.990 INFO    ] 2026-10-18 01:57:21
[2026-10-18 01:57:22,301.301 INFO    ] 2026-10-18 01:57:22
[2026-10-18 01:57:22,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:57:22,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:57:22,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:57:22,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:57:22,804.804 INFO    ] time= 18/10/2026 01:57:22
[2026-10-18 01:57:22,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:57:22,852.852 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:57:22,970.970 INFO    ] No existing commands found in stream
[2026-10-18 01:57:28,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:57:28,004.004 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-18 01:57:30,696.696 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:57:30,699.699 INFO    ] Checking for system updates...
[2026-10-18 01:57:30,737.737 INFO    ] 200
[2026-10-18 01:57:30,739.739 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:57:30,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:57:30,801.801 INFO    ] No update needed
[2026-10-18 01:57:30,804.804 INFO    ] Checking for camera pi updates...
[2026-10-18 01:57:30,840.840 INFO    ] 200
[2026-10-18 01:57:30,843.843 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:57:30,888.888 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:57:40,904.904 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:57:40,944.944 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:57:40,955.955 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:57:40,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:57:40,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:57:40,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:57:43,011.011 INFO    ] ================================================
[2026-10-18 01:57:43,026.026 INFO    ] Launching Daemon at Sun Oct 18 01:57:43 IST 2026
[2026-10-18 01:57:43,038.038 INFO    ] ================================================
[2026-10-18 01:57:43,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:57:43
[2026-10-18 01:57:44,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:57:44,470.470 INFO    ] Initializing speech engine...
[2026-10-18 01:57:44,479.479 INFO    ] 2026-10-18 01:57:44
[2026-10-18 01:57:44,724.724 INFO    ] 2026-10-18 01:57:44
[2026-10-18 01:57:44,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:57:45,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:57:45,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:57:45,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:57:45,276.276 INFO    ] time= 18/10/2026 01:57:45
[2026-10-18 01:57:45,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:57:45,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:57:45,425.425 INFO    ] No existing commands found in stream
[2026-10-18 01:57:50,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:57:50,443.443 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-18 01:57:54,809.809 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 01:57:54,812.812 INFO    ] Checking for system updates...
[2026-10-18 01:57:54,847.847 INFO    ] 200
[2026-10-18 01:57:54,849.849 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:57:54,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:57:54,910.910 INFO    ] No update needed
[2026-10-18 01:57:54,912.912 INFO    ] Checking for camera pi updates...
[2026-10-18 01:57:54,945.945 INFO    ] 200
[2026-10-18 01:57:54,948.948 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:57:54,988.988 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:58:05,003.003 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:58:05,039.039 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:58:05,049.049 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:58:05,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:58:05,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:58:05,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:58:07,101.101 INFO    ] ================================================
[2026-10-18 01:58:07,116.116 INFO    ] Launching Daemon at Sun Oct 18 01:58:07 IST 2026
[2026-10-18 01:58:07,127.127 INFO    ] ================================================
[2026-10-18 01:58:07,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:58:07
[2026-10-18 01:58:08,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:58:08,595.595 INFO    ] Initializing speech engine...
[2026-10-18 01:58:08,603.603 INFO    ] 2026-10-18 01:58:08
[2026-10-18 01:58:08,868.868 INFO    ] 2026-10-18 01:58:08
[2026-10-18 01:58:08,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:58:09,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:58:09,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:58:09,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:58:09,394.394 INFO    ] time= 18/10/2026 01:58:09
[2026-10-18 01:58:09,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:58:09,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:58:09,610.610 INFO    ] No existing commands found in stream
[2026-10-18 01:58:14,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:58:14,630.630 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-18 01:58:18,143.143 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:58:18,146.146 INFO    ] Checking for system updates...
[2026-10-18 01:58:18,185.185 INFO    ] 200
[2026-10-18 01:58:18,188.188 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:58:18,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:58:18,243.243 INFO    ] No update needed
[2026-10-18 01:58:18,246.246 INFO    ] Checking for camera pi updates...
[2026-10-18 01:58:18,279.279 INFO    ] 200
[2026-10-18 01:58:18,281.281 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:58:18,325.325 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:58:28,340.340 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:58:28,374.374 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:58:28,384.384 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:58:28,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:58:28,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:58:28,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:58:30,436.436 INFO    ] ================================================
[2026-10-18 01:58:30,452.452 INFO    ] Launching Daemon at Sun Oct 18 01:58:30 IST 2026
[2026-10-18 01:58:30,463.463 INFO    ] ================================================
[2026-10-18 01:58:31,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:58:31
[2026-10-18 01:58:31,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:58:31,938.938 INFO    ] Initializing speech engine...
[2026-10-18 01:58:31,949.949 INFO    ] 2026-10-18 01:58:31
[2026-10-18 01:58:32,232.232 INFO    ] 2026-10-18 01:58:32
[2026-10-18 01:58:32,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:58:32,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:58:32,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:58:32,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:58:32,815.815 INFO    ] time= 18/10/2026 01:58:32
[2026-10-18 01:58:32,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:58:32,842.842 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:58:32,969.969 INFO    ] No existing commands found in stream
[2026-10-18 01:58:38,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:58:38,002.002 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-18 01:58:39,833.833 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:58:39,836.836 INFO    ] Checking for system updates...
[2026-10-18 01:58:39,875.875 INFO    ] 200
[2026-10-18 01:58:39,878.878 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:58:39,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:58:39,936.936 INFO    ] No update needed
[2026-10-18 01:58:39,939.939 INFO    ] Checking for camera pi updates...
[2026-10-18 01:58:39,973.973 INFO    ] 200
[2026-10-18 01:58:39,975.975 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:58:40,014.014 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:58:50,029.029 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:58:50,064.064 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:58:50,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:58:50,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:58:50,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:58:50,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:58:52,126.126 INFO    ] ================================================
[2026-10-18 01:58:52,143.143 INFO    ] Launching Daemon at Sun Oct 18 01:58:52 IST 2026
[2026-10-18 01:58:52,158.158 INFO    ] ================================================
[2026-10-18 01:58:52,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:58:52
[2026-10-18 01:58:53,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:58:53,716.716 INFO    ] Initializing speech engine...
[2026-10-18 01:58:53,725.725 INFO    ] 2026-10-18 01:58:53
[2026-10-18 01:58:53,990.990 INFO    ] 2026-10-18 01:58:53
[2026-10-18 01:58:54,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:58:54,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:58:54,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:58:54,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:58:54,487.487 INFO    ] time= 18/10/2026 01:58:54
[2026-10-18 01:58:54,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:58:54,564.564 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:58:54,718.718 INFO    ] No existing commands found in stream
[2026-10-18 01:58:59,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:58:59,743.743 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-18 01:59:03,785.785 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 01:59:03,788.788 INFO    ] Checking for system updates...
[2026-10-18 01:59:03,825.825 INFO    ] 200
[2026-10-18 01:59:03,828.828 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:59:03,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 01:59:03,883.883 INFO    ] No update needed
[2026-10-18 01:59:03,886.886 INFO    ] Checking for camera pi updates...
[2026-10-18 01:59:03,924.924 INFO    ] 200
[2026-10-18 01:59:03,927.927 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:59:03,968.968 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:59:13,984.984 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:59:14,023.023 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:59:14,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:59:14,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:59:14,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:59:14,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:59:16,090.090 INFO    ] ================================================
[2026-10-18 01:59:16,105.105 INFO    ] Launching Daemon at Sun Oct 18 01:59:16 IST 2026
[2026-10-18 01:59:16,117.117 INFO    ] ================================================
[2026-10-18 01:59:16,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:59:16
[2026-10-18 01:59:17,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:59:17,634.634 INFO    ] Initializing speech engine...
[2026-10-18 01:59:17,642.642 INFO    ] 2026-10-18 01:59:17
[2026-10-18 01:59:17,915.915 INFO    ] 2026-10-18 01:59:17
[2026-10-18 01:59:17,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:59:18,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:59:18,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:59:18,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:59:18,486.486 INFO    ] time= 18/10/2026 01:59:18
[2026-10-18 01:59:18,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:59:18,509.509 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:59:18,640.640 INFO    ] No existing commands found in stream
[2026-10-18 01:59:23,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:59:23,659.659 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-18 01:59:26,778.778 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 01:59:26,780.780 INFO    ] Checking for system updates...
[2026-10-18 01:59:26,818.818 INFO    ] 200
[2026-10-18 01:59:26,821.821 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:59:26,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:59:26,876.876 INFO    ] No update needed
[2026-10-18 01:59:26,878.878 INFO    ] Checking for camera pi updates...
[2026-10-18 01:59:26,912.912 INFO    ] 200
[2026-10-18 01:59:26,915.915 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:59:26,956.956 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:59:36,972.972 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:59:37,011.011 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:59:37,022.022 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:59:37,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:59:37,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:59:37,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:59:39,077.077 INFO    ] ================================================
[2026-10-18 01:59:39,092.092 INFO    ] Launching Daemon at Sun Oct 18 01:59:39 IST 2026
[2026-10-18 01:59:39,104.104 INFO    ] ================================================
[2026-10-18 01:59:39,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 01:59:39
[2026-10-18 01:59:40,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 01:59:40,561.561 INFO    ] Initializing speech engine...
[2026-10-18 01:59:40,570.570 INFO    ] 2026-10-18 01:59:40
[2026-10-18 01:59:40,831.831 INFO    ] 2026-10-18 01:59:40
[2026-10-18 01:59:40,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 01:59:41,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 01:59:41,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 01:59:41,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 01:59:41,317.317 INFO    ] time= 18/10/2026 01:59:41
[2026-10-18 01:59:41,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 01:59:41,385.385 INFO    ] Checking for existing commands in stream...
[2026-10-18 01:59:41,514.514 INFO    ] No existing commands found in stream
[2026-10-18 01:59:46,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 01:59:46,541.541 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-18 01:59:47,454.454 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 01:59:47,457.457 INFO    ] Checking for system updates...
[2026-10-18 01:59:47,496.496 INFO    ] 200
[2026-10-18 01:59:47,499.499 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:59:47,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 01:59:47,558.558 INFO    ] No update needed
[2026-10-18 01:59:47,561.561 INFO    ] Checking for camera pi updates...
[2026-10-18 01:59:47,595.595 INFO    ] 200
[2026-10-18 01:59:47,598.598 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 01:59:47,638.638 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 01:59:57,653.653 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 01:59:57,689.689 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 01:59:57,699.699 INFO    ] Script finished. Safe exiting...
[2026-10-18 01:59:57,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 01:59:57,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 01:59:57,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 01:59:59,750.750 INFO    ] ================================================
[2026-10-18 01:59:59,765.765 INFO    ] Launching Daemon at Sun Oct 18 01:59:59 IST 2026
[2026-10-18 01:59:59,777.777 INFO    ] ================================================
[2026-10-18 02:00:00,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:00:00
[2026-10-18 02:00:00,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:00:01,242.242 INFO    ] Initializing speech engine...
[2026-10-18 02:00:01,258.258 INFO    ] 2026-10-18 02:00:01
[2026-10-18 02:00:01,533.533 INFO    ] 2026-10-18 02:00:01
[2026-10-18 02:00:01,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:00:01,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:00:01,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:00:01,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:00:01,989.989 INFO    ] time= 18/10/2026 02:00:01
[2026-10-18 02:00:02,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:00:02,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:00:02,160.160 INFO    ] No existing commands found in stream
[2026-10-18 02:00:07,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:00:07,192.192 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-18 02:00:09,323.323 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:00:09,326.326 INFO    ] Checking for system updates...
[2026-10-18 02:00:09,362.362 INFO    ] 200
[2026-10-18 02:00:09,364.364 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:00:09,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:00:09,422.422 INFO    ] No update needed
[2026-10-18 02:00:09,424.424 INFO    ] Checking for camera pi updates...
[2026-10-18 02:00:09,457.457 INFO    ] 200
[2026-10-18 02:00:09,460.460 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:00:09,503.503 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:00:19,518.518 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d730f0>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:00:19,552.552 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:00:19,565.565 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:00:19,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:00:19,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:00:19,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:00:21,618.618 INFO    ] ================================================
[2026-10-18 02:00:21,633.633 INFO    ] Launching Daemon at Sun Oct 18 02:00:21 IST 2026
[2026-10-18 02:00:21,644.644 INFO    ] ================================================
[2026-10-18 02:00:22,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:00:22
[2026-10-18 02:00:22,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:00:23,112.112 INFO    ] Initializing speech engine...
[2026-10-18 02:00:23,122.122 INFO    ] 2026-10-18 02:00:23
[2026-10-18 02:00:23,371.371 INFO    ] 2026-10-18 02:00:23
[2026-10-18 02:00:23,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:00:23,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:00:23,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:00:23,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:00:23,928.928 INFO    ] time= 18/10/2026 02:00:23
[2026-10-18 02:00:23,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:00:23,952.952 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:00:24,084.084 INFO    ] No existing commands found in stream
[2026-10-18 02:00:29,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:00:29,110.110 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-18 02:00:32,276.276 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 02:00:32,279.279 INFO    ] Checking for system updates...
[2026-10-18 02:00:32,319.319 INFO    ] 200
[2026-10-18 02:00:32,321.321 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:00:32,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:00:32,396.396 INFO    ] No update needed
[2026-10-18 02:00:32,399.399 INFO    ] Checking for camera pi updates...
[2026-10-18 02:00:32,440.440 INFO    ] 200
[2026-10-18 02:00:32,443.443 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:00:32,488.488 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:00:42,503.503 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:00:42,541.541 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:00:42,551.551 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:00:42,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:00:42,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:00:42,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:00:44,605.605 INFO    ] ================================================
[2026-10-18 02:00:44,621.621 INFO    ] Launching Daemon at Sun Oct 18 02:00:44 IST 2026
[2026-10-18 02:00:44,632.632 INFO    ] ================================================
[2026-10-18 02:00:45,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:00:45
[2026-10-18 02:00:45,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:00:46,249.249 INFO    ] Initializing speech engine...
[2026-10-18 02:00:46,258.258 INFO    ] 2026-10-18 02:00:46
[2026-10-18 02:00:46,517.517 INFO    ] 2026-10-18 02:00:46
[2026-10-18 02:00:46,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:00:46,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:00:46,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:00:47,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:00:47,052.052 INFO    ] time= 18/10/2026 02:00:47
[2026-10-18 02:00:47,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:00:47,084.084 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:00:47,215.215 INFO    ] No existing commands found in stream
[2026-10-18 02:00:52,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:00:52,241.241 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-18 02:00:55,211.211 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 02:00:55,214.214 INFO    ] Checking for system updates...
[2026-10-18 02:00:55,250.250 INFO    ] 200
[2026-10-18 02:00:55,252.252 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:00:55,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:00:55,315.315 INFO    ] No update needed
[2026-10-18 02:00:55,317.317 INFO    ] Checking for camera pi updates...
[2026-10-18 02:00:55,351.351 INFO    ] 200
[2026-10-18 02:00:55,353.353 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:00:55,393.393 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:01:05,408.408 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf5150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:01:05,442.442 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:01:05,452.452 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:01:05,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:01:05,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:01:05,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:01:07,504.504 INFO    ] ================================================
[2026-10-18 02:01:07,520.520 INFO    ] Launching Daemon at Sun Oct 18 02:01:07 IST 2026
[2026-10-18 02:01:07,531.531 INFO    ] ================================================
[2026-10-18 02:01:08,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:01:08
[2026-10-18 02:01:08,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:01:08,954.954 INFO    ] Initializing speech engine...
[2026-10-18 02:01:08,963.963 INFO    ] 2026-10-18 02:01:08
[2026-10-18 02:01:09,220.220 INFO    ] 2026-10-18 02:01:09
[2026-10-18 02:01:09,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:01:09,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:01:09,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:01:09,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:01:09,706.706 INFO    ] time= 18/10/2026 02:01:09
[2026-10-18 02:01:09,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:01:09,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:01:09,936.936 INFO    ] No existing commands found in stream
[2026-10-18 02:01:14,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:01:14,962.962 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-18 02:01:15,732.732 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:01:15,735.735 INFO    ] Checking for system updates...
[2026-10-18 02:01:15,771.771 INFO    ] 200
[2026-10-18 02:01:15,773.773 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:01:15,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:01:15,829.829 INFO    ] No update needed
[2026-10-18 02:01:15,831.831 INFO    ] Checking for camera pi updates...
[2026-10-18 02:01:15,864.864 INFO    ] 200
[2026-10-18 02:01:15,866.866 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:01:15,908.908 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:01:25,922.922 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:01:25,957.957 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:01:25,967.967 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:01:25,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:01:25,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:01:25,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:01:28,020.020 INFO    ] ================================================
[2026-10-18 02:01:28,036.036 INFO    ] Launching Daemon at Sun Oct 18 02:01:28 IST 2026
[2026-10-18 02:01:28,046.046 INFO    ] ================================================
[2026-10-18 02:01:28,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:01:28
[2026-10-18 02:01:29,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:01:29,452.452 INFO    ] Initializing speech engine...
[2026-10-18 02:01:29,458.458 INFO    ] 2026-10-18 02:01:29
[2026-10-18 02:01:29,737.737 INFO    ] 2026-10-18 02:01:29
[2026-10-18 02:01:29,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:01:30,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:01:30,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:01:30,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:01:30,309.309 INFO    ] time= 18/10/2026 02:01:30
[2026-10-18 02:01:30,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:01:30,334.334 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:01:30,471.471 INFO    ] No existing commands found in stream
[2026-10-18 02:01:35,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:01:35,496.496 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-18 02:01:38,586.586 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:01:38,588.588 INFO    ] Checking for system updates...
[2026-10-18 02:01:38,627.627 INFO    ] 200
[2026-10-18 02:01:38,629.629 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:01:38,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:01:38,683.683 INFO    ] No update needed
[2026-10-18 02:01:38,686.686 INFO    ] Checking for camera pi updates...
[2026-10-18 02:01:38,719.719 INFO    ] 200
[2026-10-18 02:01:38,722.722 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:01:38,762.762 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:01:48,778.778 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:01:48,818.818 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:01:48,829.829 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:01:48,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:01:48,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:01:48,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:01:50,885.885 INFO    ] ================================================
[2026-10-18 02:01:50,900.900 INFO    ] Launching Daemon at Sun Oct 18 02:01:50 IST 2026
[2026-10-18 02:01:50,911.911 INFO    ] ================================================
[2026-10-18 02:01:51,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:01:51
[2026-10-18 02:01:52,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:01:52,489.489 INFO    ] Initializing speech engine...
[2026-10-18 02:01:52,503.503 INFO    ] 2026-10-18 02:01:52
[2026-10-18 02:01:52,811.811 INFO    ] 2026-10-18 02:01:52
[2026-10-18 02:01:52,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:01:53,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:01:53,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:01:53,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:01:53,331.331 INFO    ] time= 18/10/2026 02:01:53
[2026-10-18 02:01:53,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:01:53,362.362 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:01:53,510.510 INFO    ] No existing commands found in stream
[2026-10-18 02:01:58,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:01:58,544.544 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-18 02:02:01,923.923 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:02:01,926.926 INFO    ] Checking for system updates...
[2026-10-18 02:02:01,991.991 INFO    ] 200
[2026-10-18 02:02:01,995.995 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:02:02,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:02:02,103.103 INFO    ] No update needed
[2026-10-18 02:02:02,110.110 INFO    ] Checking for camera pi updates...
[2026-10-18 02:02:02,172.172 INFO    ] 200
[2026-10-18 02:02:02,176.176 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:02:02,222.222 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:02:12,237.237 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:02:12,271.271 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:02:12,281.281 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:02:12,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:02:12,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:02:12,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:02:14,333.333 INFO    ] ================================================
[2026-10-18 02:02:14,349.349 INFO    ] Launching Daemon at Sun Oct 18 02:02:14 IST 2026
[2026-10-18 02:02:14,360.360 INFO    ] ================================================
[2026-10-18 02:02:15,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:02:15
[2026-10-18 02:02:15,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:02:15,968.968 INFO    ] Initializing speech engine...
[2026-10-18 02:02:15,982.982 INFO    ] 2026-10-18 02:02:15
[2026-10-18 02:02:16,262.262 INFO    ] 2026-10-18 02:02:16
[2026-10-18 02:02:16,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:02:16,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:02:16,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:02:16,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:02:16,803.803 INFO    ] time= 18/10/2026 02:02:16
[2026-10-18 02:02:16,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:02:16,849.849 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:02:16,988.988 INFO    ] No existing commands found in stream
[2026-10-18 02:02:22,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:02:22,022.022 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-18 02:02:25,319.319 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:02:25,322.322 INFO    ] Checking for system updates...
[2026-10-18 02:02:25,359.359 INFO    ] 200
[2026-10-18 02:02:25,362.362 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:02:25,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:02:25,419.419 INFO    ] No update needed
[2026-10-18 02:02:25,422.422 INFO    ] Checking for camera pi updates...
[2026-10-18 02:02:25,466.466 INFO    ] 200
[2026-10-18 02:02:25,469.469 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:02:25,515.515 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:02:35,532.532 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:02:35,571.571 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:02:35,582.582 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:02:35,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:02:35,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:02:35,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:02:37,640.640 INFO    ] ================================================
[2026-10-18 02:02:37,657.657 INFO    ] Launching Daemon at Sun Oct 18 02:02:37 IST 2026
[2026-10-18 02:02:37,669.669 INFO    ] ================================================
[2026-10-18 02:02:38,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:02:38
[2026-10-18 02:02:38,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:02:39,158.158 INFO    ] Initializing speech engine...
[2026-10-18 02:02:39,168.168 INFO    ] 2026-10-18 02:02:39
[2026-10-18 02:02:39,419.419 INFO    ] 2026-10-18 02:02:39
[2026-10-18 02:02:39,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:02:39,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:02:39,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:02:39,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:02:39,912.912 INFO    ] time= 18/10/2026 02:02:39
[2026-10-18 02:02:39,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:02:39,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:02:40,118.118 INFO    ] No existing commands found in stream
[2026-10-18 02:02:45,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:02:45,146.146 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-18 02:02:48,644.644 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:02:48,646.646 INFO    ] Checking for system updates...
[2026-10-18 02:02:48,686.686 INFO    ] 200
[2026-10-18 02:02:48,688.688 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:02:48,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:02:48,742.742 INFO    ] No update needed
[2026-10-18 02:02:48,745.745 INFO    ] Checking for camera pi updates...
[2026-10-18 02:02:48,778.778 INFO    ] 200
[2026-10-18 02:02:48,781.781 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:02:48,821.821 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:02:58,836.836 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:02:58,872.872 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:02:58,882.882 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:02:58,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:02:58,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:02:58,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:03:00,936.936 INFO    ] ================================================
[2026-10-18 02:03:00,952.952 INFO    ] Launching Daemon at Sun Oct 18 02:03:00 IST 2026
[2026-10-18 02:03:00,963.963 INFO    ] ================================================
[2026-10-18 02:03:01,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:03:01
[2026-10-18 02:03:02,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:03:02,815.815 INFO    ] Initializing speech engine...
[2026-10-18 02:03:02,830.830 INFO    ] 2026-10-18 02:03:02
[2026-10-18 02:03:03,176.176 INFO    ] 2026-10-18 02:03:03
[2026-10-18 02:03:03,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:03:03,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:03:03,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:03:03,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:03:03,728.728 INFO    ] time= 18/10/2026 02:03:03
[2026-10-18 02:03:03,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:03:03,752.752 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:03:03,909.909 INFO    ] No existing commands found in stream
[2026-10-18 02:03:08,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:03:08,934.934 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-18 02:03:12,634.634 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:03:12,637.637 INFO    ] Checking for system updates...
[2026-10-18 02:03:12,674.674 INFO    ] 200
[2026-10-18 02:03:12,677.677 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:03:12,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:03:12,732.732 INFO    ] No update needed
[2026-10-18 02:03:12,734.734 INFO    ] Checking for camera pi updates...
[2026-10-18 02:03:12,769.769 INFO    ] 200
[2026-10-18 02:03:12,772.772 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:03:12,813.813 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:03:22,829.829 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:03:22,870.870 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:03:22,881.881 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:03:22,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:03:22,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:03:22,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:03:24,937.937 INFO    ] ================================================
[2026-10-18 02:03:24,953.953 INFO    ] Launching Daemon at Sun Oct 18 02:03:24 IST 2026
[2026-10-18 02:03:24,965.965 INFO    ] ================================================
[2026-10-18 02:03:25,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:03:25
[2026-10-18 02:03:26,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:03:26,496.496 INFO    ] Initializing speech engine...
[2026-10-18 02:03:26,507.507 INFO    ] 2026-10-18 02:03:26
[2026-10-18 02:03:26,755.755 INFO    ] 2026-10-18 02:03:26
[2026-10-18 02:03:26,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:03:27,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:03:27,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:03:27,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:03:27,312.312 INFO    ] time= 18/10/2026 02:03:27
[2026-10-18 02:03:27,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:03:27,334.334 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:03:27,470.470 INFO    ] No existing commands found in stream
[2026-10-18 02:03:32,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:03:32,491.491 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-18 02:03:35,659.659 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:03:35,662.662 INFO    ] Checking for system updates...
[2026-10-18 02:03:35,697.697 INFO    ] 200
[2026-10-18 02:03:35,700.700 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:03:35,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:03:35,755.755 INFO    ] No update needed
[2026-10-18 02:03:35,764.764 INFO    ] Checking for camera pi updates...
[2026-10-18 02:03:35,801.801 INFO    ] 200
[2026-10-18 02:03:35,804.804 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:03:35,843.843 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:03:45,858.858 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:03:45,893.893 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:03:45,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:03:45,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:03:45,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:03:45,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:03:47,956.956 INFO    ] ================================================
[2026-10-18 02:03:47,972.972 INFO    ] Launching Daemon at Sun Oct 18 02:03:47 IST 2026
[2026-10-18 02:03:47,983.983 INFO    ] ================================================
[2026-10-18 02:03:48,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:03:48
[2026-10-18 02:03:49,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:03:49,626.626 INFO    ] Initializing speech engine...
[2026-10-18 02:03:49,639.639 INFO    ] 2026-10-18 02:03:49
[2026-10-18 02:03:49,949.949 INFO    ] 2026-10-18 02:03:49
[2026-10-18 02:03:50,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:03:50,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:03:50,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:03:50,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:03:50,458.458 INFO    ] time= 18/10/2026 02:03:50
[2026-10-18 02:03:50,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:03:50,507.507 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:03:50,653.653 INFO    ] No existing commands found in stream
[2026-10-18 02:03:55,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:03:55,687.687 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-18 02:03:57,395.395 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:03:57,398.398 INFO    ] Checking for system updates...
[2026-10-18 02:03:57,436.436 INFO    ] 200
[2026-10-18 02:03:57,439.439 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:03:57,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:03:57,502.502 INFO    ] No update needed
[2026-10-18 02:03:57,504.504 INFO    ] Checking for camera pi updates...
[2026-10-18 02:03:57,539.539 INFO    ] 200
[2026-10-18 02:03:57,542.542 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:03:57,583.583 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:04:07,600.600 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:04:07,640.640 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:04:07,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:04:07,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:04:07,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:04:07,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:04:09,709.709 INFO    ] ================================================
[2026-10-18 02:04:09,725.725 INFO    ] Launching Daemon at Sun Oct 18 02:04:09 IST 2026
[2026-10-18 02:04:09,736.736 INFO    ] ================================================
[2026-10-18 02:04:10,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:04:10
[2026-10-18 02:04:11,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:04:11,358.358 INFO    ] Initializing speech engine...
[2026-10-18 02:04:11,368.368 INFO    ] 2026-10-18 02:04:11
[2026-10-18 02:04:11,652.652 INFO    ] 2026-10-18 02:04:11
[2026-10-18 02:04:11,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:04:11,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:04:11,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:04:12,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:04:12,205.205 INFO    ] time= 18/10/2026 02:04:12
[2026-10-18 02:04:12,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:04:12,255.255 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:04:12,375.375 INFO    ] No existing commands found in stream
[2026-10-18 02:04:17,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:04:17,409.409 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-18 02:04:20,217.217 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:04:20,220.220 INFO    ] Checking for system updates...
[2026-10-18 02:04:20,256.256 INFO    ] 200
[2026-10-18 02:04:20,259.259 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:04:20,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:04:20,318.318 INFO    ] No update needed
[2026-10-18 02:04:20,320.320 INFO    ] Checking for camera pi updates...
[2026-10-18 02:04:20,355.355 INFO    ] 200
[2026-10-18 02:04:20,358.358 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:04:20,401.401 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:04:30,418.418 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:04:30,458.458 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:04:30,469.469 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:04:30,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:04:30,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:04:30,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:04:32,526.526 INFO    ] ================================================
[2026-10-18 02:04:32,543.543 INFO    ] Launching Daemon at Sun Oct 18 02:04:32 IST 2026
[2026-10-18 02:04:32,555.555 INFO    ] ================================================
[2026-10-18 02:04:33,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:04:33
[2026-10-18 02:04:33,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:04:34,224.224 INFO    ] Initializing speech engine...
[2026-10-18 02:04:34,237.237 INFO    ] 2026-10-18 02:04:34
[2026-10-18 02:04:34,551.551 INFO    ] 2026-10-18 02:04:34
[2026-10-18 02:04:34,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:04:34,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:04:34,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:04:35,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:04:35,073.073 INFO    ] time= 18/10/2026 02:04:35
[2026-10-18 02:04:35,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:04:35,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:04:35,274.274 INFO    ] No existing commands found in stream
[2026-10-18 02:04:40,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:04:40,312.312 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-18 02:04:41,677.677 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:04:41,680.680 INFO    ] Checking for system updates...
[2026-10-18 02:04:41,716.716 INFO    ] 200
[2026-10-18 02:04:41,719.719 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:04:41,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:04:41,773.773 INFO    ] No update needed
[2026-10-18 02:04:41,776.776 INFO    ] Checking for camera pi updates...
[2026-10-18 02:04:41,810.810 INFO    ] 200
[2026-10-18 02:04:41,812.812 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:04:41,852.852 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:04:51,867.867 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:04:51,901.901 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:04:51,911.911 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:04:51,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:04:51,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:04:51,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:04:53,963.963 INFO    ] ================================================
[2026-10-18 02:04:53,979.979 INFO    ] Launching Daemon at Sun Oct 18 02:04:53 IST 2026
[2026-10-18 02:04:53,990.990 INFO    ] ================================================
[2026-10-18 02:04:54,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:04:54
[2026-10-18 02:04:55,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:04:55,449.449 INFO    ] Initializing speech engine...
[2026-10-18 02:04:55,458.458 INFO    ] 2026-10-18 02:04:55
[2026-10-18 02:04:55,709.709 INFO    ] 2026-10-18 02:04:55
[2026-10-18 02:04:55,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:04:55,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:04:56,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:04:56,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:04:56,190.190 INFO    ] time= 18/10/2026 02:04:56
[2026-10-18 02:04:56,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:04:56,272.272 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:04:56,419.419 INFO    ] No existing commands found in stream
[2026-10-18 02:05:01,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:05:01,437.437 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-18 02:05:05,171.171 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 02:05:05,174.174 INFO    ] Checking for system updates...
[2026-10-18 02:05:05,221.221 INFO    ] 200
[2026-10-18 02:05:05,224.224 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 02:05:05,227.227 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-18 02:05:05,230.230 INFO    ] Checking for camera pi updates...
[2026-10-18 02:05:05,283.283 INFO    ] 200
[2026-10-18 02:05:05,285.285 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 02:05:05,288.288 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-18 02:05:05,291.291 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:05:05,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:05:05,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:05:05,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:05:07,350.350 INFO    ] ================================================
[2026-10-18 02:05:07,365.365 INFO    ] Launching Daemon at Sun Oct 18 02:05:07 IST 2026
[2026-10-18 02:05:07,376.376 INFO    ] ================================================
[2026-10-18 02:05:08,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:05:08
[2026-10-18 02:05:08,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:05:09,052.052 INFO    ] Initializing speech engine...
[2026-10-18 02:05:09,065.065 INFO    ] 2026-10-18 02:05:09
[2026-10-18 02:05:09,351.351 INFO    ] 2026-10-18 02:05:09
[2026-10-18 02:05:09,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:05:09,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:05:09,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:05:09,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:05:09,904.904 INFO    ] time= 18/10/2026 02:05:09
[2026-10-18 02:05:09,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:05:09,940.940 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:05:10,089.089 INFO    ] No existing commands found in stream
[2026-10-18 02:05:15,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:05:15,128.128 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-18 02:05:19,128.128 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:05:19,131.131 INFO    ] Checking for system updates...
[2026-10-18 02:05:19,169.169 INFO    ] 200
[2026-10-18 02:05:19,172.172 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:05:19,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:05:19,230.230 INFO    ] No update needed
[2026-10-18 02:05:19,233.233 INFO    ] Checking for camera pi updates...
[2026-10-18 02:05:19,272.272 INFO    ] 200
[2026-10-18 02:05:19,275.275 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:05:19,327.327 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:05:29,344.344 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:05:29,384.384 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:05:29,396.396 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:05:29,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:05:29,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:05:29,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:05:31,454.454 INFO    ] ================================================
[2026-10-18 02:05:31,469.469 INFO    ] Launching Daemon at Sun Oct 18 02:05:31 IST 2026
[2026-10-18 02:05:31,480.480 INFO    ] ================================================
[2026-10-18 02:05:32,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:05:32
[2026-10-18 02:05:32,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:05:32,964.964 INFO    ] Initializing speech engine...
[2026-10-18 02:05:32,988.988 INFO    ] 2026-10-18 02:05:32
[2026-10-18 02:05:33,280.280 INFO    ] 2026-10-18 02:05:33
[2026-10-18 02:05:33,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:05:33,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:05:33,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:05:33,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:05:33,779.779 INFO    ] time= 18/10/2026 02:05:33
[2026-10-18 02:05:33,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:05:33,866.866 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:05:34,020.020 INFO    ] No existing commands found in stream
[2026-10-18 02:05:39,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:05:39,037.037 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-18 02:05:42,466.466 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:05:42,468.468 INFO    ] Checking for system updates...
[2026-10-18 02:05:42,506.506 INFO    ] 200
[2026-10-18 02:05:42,508.508 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:05:42,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:05:42,564.564 INFO    ] No update needed
[2026-10-18 02:05:42,567.567 INFO    ] Checking for camera pi updates...
[2026-10-18 02:05:42,600.600 INFO    ] 200
[2026-10-18 02:05:42,603.603 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:05:42,643.643 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:05:52,658.658 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:05:52,694.694 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:05:52,703.703 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:05:52,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:05:52,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:05:52,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:05:54,759.759 INFO    ] ================================================
[2026-10-18 02:05:54,774.774 INFO    ] Launching Daemon at Sun Oct 18 02:05:54 IST 2026
[2026-10-18 02:05:54,784.784 INFO    ] ================================================
[2026-10-18 02:05:55,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:05:55
[2026-10-18 02:05:55,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:05:56,191.191 INFO    ] Initializing speech engine...
[2026-10-18 02:05:56,205.205 INFO    ] 2026-10-18 02:05:56
[2026-10-18 02:05:56,471.471 INFO    ] 2026-10-18 02:05:56
[2026-10-18 02:05:56,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:05:56,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:05:56,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:05:56,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:05:56,989.989 INFO    ] time= 18/10/2026 02:05:56
[2026-10-18 02:05:57,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:05:57,050.050 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:05:57,202.202 INFO    ] No existing commands found in stream
[2026-10-18 02:06:02,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:06:02,221.221 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-18 02:06:06,090.090 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:06:06,092.092 INFO    ] Checking for system updates...
[2026-10-18 02:06:06,133.133 INFO    ] 200
[2026-10-18 02:06:06,136.136 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:06:06,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:06:06,191.191 INFO    ] No update needed
[2026-10-18 02:06:06,194.194 INFO    ] Checking for camera pi updates...
[2026-10-18 02:06:06,228.228 INFO    ] 200
[2026-10-18 02:06:06,231.231 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:06:06,273.273 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:06:16,289.289 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:06:16,329.329 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:06:16,340.340 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:06:16,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:06:16,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:06:16,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:06:18,397.397 INFO    ] ================================================
[2026-10-18 02:06:18,413.413 INFO    ] Launching Daemon at Sun Oct 18 02:06:18 IST 2026
[2026-10-18 02:06:18,424.424 INFO    ] ================================================
[2026-10-18 02:06:18,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:06:18
[2026-10-18 02:06:19,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:06:19,873.873 INFO    ] Initializing speech engine...
[2026-10-18 02:06:19,880.880 INFO    ] 2026-10-18 02:06:19
[2026-10-18 02:06:20,141.141 INFO    ] 2026-10-18 02:06:20
[2026-10-18 02:06:20,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:06:20,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:06:20,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:06:20,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:06:20,686.686 INFO    ] time= 18/10/2026 02:06:20
[2026-10-18 02:06:20,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:06:20,710.710 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:06:20,833.833 INFO    ] No existing commands found in stream
[2026-10-18 02:06:25,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:06:25,852.852 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-18 02:06:27,916.916 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 02:06:27,919.919 INFO    ] Checking for system updates...
[2026-10-18 02:06:27,958.958 INFO    ] 200
[2026-10-18 02:06:27,960.960 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:06:28,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:06:28,015.015 INFO    ] No update needed
[2026-10-18 02:06:28,018.018 INFO    ] Checking for camera pi updates...
[2026-10-18 02:06:28,051.051 INFO    ] 200
[2026-10-18 02:06:28,054.054 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:06:28,094.094 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:06:38,109.109 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:06:38,144.144 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:06:38,154.154 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:06:38,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:06:38,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:06:38,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:06:40,208.208 INFO    ] ================================================
[2026-10-18 02:06:40,224.224 INFO    ] Launching Daemon at Sun Oct 18 02:06:40 IST 2026
[2026-10-18 02:06:40,235.235 INFO    ] ================================================
[2026-10-18 02:06:40,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:06:40
[2026-10-18 02:06:41,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:06:41,859.859 INFO    ] Initializing speech engine...
[2026-10-18 02:06:41,867.867 INFO    ] 2026-10-18 02:06:41
[2026-10-18 02:06:42,159.159 INFO    ] 2026-10-18 02:06:42
[2026-10-18 02:06:42,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:06:42,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:06:42,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:06:42,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:06:42,640.640 INFO    ] time= 18/10/2026 02:06:42
[2026-10-18 02:06:42,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:06:42,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:06:42,872.872 INFO    ] No existing commands found in stream
[2026-10-18 02:06:47,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:06:47,905.905 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-18 02:06:50,031.031 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:06:50,034.034 INFO    ] Checking for system updates...
[2026-10-18 02:06:50,070.070 INFO    ] 200
[2026-10-18 02:06:50,073.073 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:06:50,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:06:50,128.128 INFO    ] No update needed
[2026-10-18 02:06:50,131.131 INFO    ] Checking for camera pi updates...
[2026-10-18 02:06:50,165.165 INFO    ] 200
[2026-10-18 02:06:50,168.168 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:06:50,208.208 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:07:00,223.223 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:07:00,263.263 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:07:00,274.274 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:07:00,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:07:00,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:07:00,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:07:02,338.338 INFO    ] ================================================
[2026-10-18 02:07:02,369.369 INFO    ] Launching Daemon at Sun Oct 18 02:07:02 IST 2026
[2026-10-18 02:07:02,385.385 INFO    ] ================================================
[2026-10-18 02:07:03,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:07:03
[2026-10-18 02:07:03,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:07:04,006.006 INFO    ] Initializing speech engine...
[2026-10-18 02:07:04,017.017 INFO    ] 2026-10-18 02:07:04
[2026-10-18 02:07:04,287.287 INFO    ] 2026-10-18 02:07:04
[2026-10-18 02:07:04,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:07:04,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:07:04,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:07:04,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:07:04,776.776 INFO    ] time= 18/10/2026 02:07:04
[2026-10-18 02:07:04,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:07:04,865.865 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:07:05,005.005 INFO    ] No existing commands found in stream
[2026-10-18 02:07:10,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:07:10,023.023 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-18 02:07:11,640.640 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:07:11,642.642 INFO    ] Checking for system updates...
[2026-10-18 02:07:11,679.679 INFO    ] 200
[2026-10-18 02:07:11,681.681 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:07:11,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:07:11,739.739 INFO    ] No update needed
[2026-10-18 02:07:11,742.742 INFO    ] Checking for camera pi updates...
[2026-10-18 02:07:11,775.775 INFO    ] 200
[2026-10-18 02:07:11,778.778 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:07:11,819.819 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:07:21,834.834 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:07:21,870.870 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:07:21,880.880 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:07:21,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:07:21,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:07:21,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:07:23,934.934 INFO    ] ================================================
[2026-10-18 02:07:23,949.949 INFO    ] Launching Daemon at Sun Oct 18 02:07:23 IST 2026
[2026-10-18 02:07:23,961.961 INFO    ] ================================================
[2026-10-18 02:07:24,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:07:24
[2026-10-18 02:07:25,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:07:25,431.431 INFO    ] Initializing speech engine...
[2026-10-18 02:07:25,438.438 INFO    ] 2026-10-18 02:07:25
[2026-10-18 02:07:25,702.702 INFO    ] 2026-10-18 02:07:25
[2026-10-18 02:07:25,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:07:25,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:07:25,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:07:26,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:07:26,185.185 INFO    ] time= 18/10/2026 02:07:26
[2026-10-18 02:07:26,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:07:26,254.254 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:07:26,399.399 INFO    ] No existing commands found in stream
[2026-10-18 02:07:31,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:07:31,419.419 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-18 02:07:32,066.066 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:07:32,069.069 INFO    ] Checking for system updates...
[2026-10-18 02:07:32,115.115 INFO    ] 200
[2026-10-18 02:07:32,118.118 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:07:32,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:07:32,180.180 INFO    ] No update needed
[2026-10-18 02:07:32,183.183 INFO    ] Checking for camera pi updates...
[2026-10-18 02:07:32,220.220 INFO    ] 200
[2026-10-18 02:07:32,223.223 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:07:32,270.270 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:07:42,286.286 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:07:42,326.326 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:07:42,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:07:42,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:07:42,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:07:42,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:07:44,394.394 INFO    ] ================================================
[2026-10-18 02:07:44,410.410 INFO    ] Launching Daemon at Sun Oct 18 02:07:44 IST 2026
[2026-10-18 02:07:44,421.421 INFO    ] ================================================
[2026-10-18 02:07:45,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:07:45
[2026-10-18 02:07:45,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:07:45,909.909 INFO    ] Initializing speech engine...
[2026-10-18 02:07:45,920.920 INFO    ] 2026-10-18 02:07:45
[2026-10-18 02:07:46,208.208 INFO    ] 2026-10-18 02:07:46
[2026-10-18 02:07:46,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:07:46,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:07:46,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:07:46,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:07:46,752.752 INFO    ] time= 18/10/2026 02:07:46
[2026-10-18 02:07:46,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:07:46,780.780 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:07:46,942.942 INFO    ] No existing commands found in stream
[2026-10-18 02:07:51,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:07:51,981.981 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-18 02:07:54,673.673 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:07:54,676.676 INFO    ] Checking for system updates...
[2026-10-18 02:07:54,713.713 INFO    ] 200
[2026-10-18 02:07:54,716.716 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:07:54,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:07:54,771.771 INFO    ] No update needed
[2026-10-18 02:07:54,774.774 INFO    ] Checking for camera pi updates...
[2026-10-18 02:07:54,808.808 INFO    ] 200
[2026-10-18 02:07:54,811.811 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:07:54,851.851 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:08:04,867.867 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:08:04,905.905 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:08:04,916.916 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:08:04,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:08:04,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:08:04,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:08:06,970.970 INFO    ] ================================================
[2026-10-18 02:08:06,985.985 INFO    ] Launching Daemon at Sun Oct 18 02:08:06 IST 2026
[2026-10-18 02:08:07,996.996 INFO    ] ================================================
[2026-10-18 02:08:07,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:08:07
[2026-10-18 02:08:08,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:08:08,422.422 INFO    ] Initializing speech engine...
[2026-10-18 02:08:08,430.430 INFO    ] 2026-10-18 02:08:08
[2026-10-18 02:08:08,717.717 INFO    ] 2026-10-18 02:08:08
[2026-10-18 02:08:08,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:08:08,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:08:09,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:08:09,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:08:09,204.204 INFO    ] time= 18/10/2026 02:08:09
[2026-10-18 02:08:09,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:08:09,328.328 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:08:09,472.472 INFO    ] No existing commands found in stream
[2026-10-18 02:08:14,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:08:14,506.506 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-18 02:08:17,845.845 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:08:17,848.848 INFO    ] Checking for system updates...
[2026-10-18 02:08:17,883.883 INFO    ] 200
[2026-10-18 02:08:17,886.886 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:08:17,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:08:17,941.941 INFO    ] No update needed
[2026-10-18 02:08:17,944.944 INFO    ] Checking for camera pi updates...
[2026-10-18 02:08:17,977.977 INFO    ] 200
[2026-10-18 02:08:17,979.979 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:08:18,019.019 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:08:28,035.035 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:08:28,072.072 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:08:28,082.082 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:08:28,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:08:28,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:08:28,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:08:30,134.134 INFO    ] ================================================
[2026-10-18 02:08:30,149.149 INFO    ] Launching Daemon at Sun Oct 18 02:08:30 IST 2026
[2026-10-18 02:08:30,160.160 INFO    ] ================================================
[2026-10-18 02:08:30,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:08:30
[2026-10-18 02:08:31,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:08:31,742.742 INFO    ] Initializing speech engine...
[2026-10-18 02:08:31,749.749 INFO    ] 2026-10-18 02:08:31
[2026-10-18 02:08:32,021.021 INFO    ] 2026-10-18 02:08:32
[2026-10-18 02:08:32,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:08:32,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:08:32,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:08:32,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:08:32,528.528 INFO    ] time= 18/10/2026 02:08:32
[2026-10-18 02:08:32,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:08:32,614.614 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:08:32,763.763 INFO    ] No existing commands found in stream
[2026-10-18 02:08:37,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:08:37,784.784 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-18 02:08:41,000.000 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:08:41,003.003 INFO    ] Checking for system updates...
[2026-10-18 02:08:41,038.038 INFO    ] 200
[2026-10-18 02:08:41,041.041 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:08:41,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:08:41,095.095 INFO    ] No update needed
[2026-10-18 02:08:41,097.097 INFO    ] Checking for camera pi updates...
[2026-10-18 02:08:41,131.131 INFO    ] 200
[2026-10-18 02:08:41,134.134 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:08:41,178.178 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:08:51,194.194 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:08:51,232.232 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:08:51,243.243 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:08:51,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:08:51,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:08:51,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:08:53,298.298 INFO    ] ================================================
[2026-10-18 02:08:53,314.314 INFO    ] Launching Daemon at Sun Oct 18 02:08:53 IST 2026
[2026-10-18 02:08:53,325.325 INFO    ] ================================================
[2026-10-18 02:08:53,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:08:53
[2026-10-18 02:08:54,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:08:54,745.745 INFO    ] Initializing speech engine...
[2026-10-18 02:08:54,765.765 INFO    ] 2026-10-18 02:08:54
[2026-10-18 02:08:55,016.016 INFO    ] 2026-10-18 02:08:55
[2026-10-18 02:08:55,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:08:55,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:08:55,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:08:55,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:08:55,501.501 INFO    ] time= 18/10/2026 02:08:55
[2026-10-18 02:08:55,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:08:55,591.591 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:08:55,734.734 INFO    ] No existing commands found in stream
[2026-10-18 02:09:00,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:09:00,759.759 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-18 02:09:02,176.176 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:09:02,180.180 INFO    ] Checking for system updates...
[2026-10-18 02:09:02,239.239 INFO    ] 200
[2026-10-18 02:09:02,242.242 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:09:02,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:09:02,372.372 INFO    ] No update needed
[2026-10-18 02:09:02,381.381 INFO    ] Checking for camera pi updates...
[2026-10-18 02:09:02,426.426 INFO    ] 200
[2026-10-18 02:09:02,430.430 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:09:02,475.475 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:09:12,489.489 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:09:12,523.523 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:09:12,533.533 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:09:12,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:09:12,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:09:12,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:09:14,592.592 INFO    ] ================================================
[2026-10-18 02:09:14,607.607 INFO    ] Launching Daemon at Sun Oct 18 02:09:14 IST 2026
[2026-10-18 02:09:14,618.618 INFO    ] ================================================
[2026-10-18 02:09:15,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:09:15
[2026-10-18 02:09:15,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:09:16,013.013 INFO    ] Initializing speech engine...
[2026-10-18 02:09:16,021.021 INFO    ] 2026-10-18 02:09:16
[2026-10-18 02:09:16,311.311 INFO    ] 2026-10-18 02:09:16
[2026-10-18 02:09:16,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:09:16,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:09:16,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:09:16,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:09:16,719.719 INFO    ] time= 18/10/2026 02:09:16
[2026-10-18 02:09:16,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:09:16,730.730 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:09:16,845.845 INFO    ] No existing commands found in stream
[2026-10-18 02:09:21,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:09:21,873.873 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-18 02:09:24,271.271 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:09:24,274.274 INFO    ] Checking for system updates...
[2026-10-18 02:09:24,309.309 INFO    ] 200
[2026-10-18 02:09:24,311.311 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:09:24,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:09:24,365.365 INFO    ] No update needed
[2026-10-18 02:09:24,368.368 INFO    ] Checking for camera pi updates...
[2026-10-18 02:09:24,405.405 INFO    ] 200
[2026-10-18 02:09:24,408.408 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:09:24,448.448 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:09:34,459.459 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:09:34,493.493 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:09:34,503.503 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:09:34,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:09:34,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:09:34,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:09:36,555.555 INFO    ] ================================================
[2026-10-18 02:09:36,571.571 INFO    ] Launching Daemon at Sun Oct 18 02:09:36 IST 2026
[2026-10-18 02:09:36,582.582 INFO    ] ================================================
[2026-10-18 02:09:37,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:09:37
[2026-10-18 02:09:37,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:09:38,032.032 INFO    ] Initializing speech engine...
[2026-10-18 02:09:38,057.057 INFO    ] 2026-10-18 02:09:38
[2026-10-18 02:09:38,323.323 INFO    ] 2026-10-18 02:09:38
[2026-10-18 02:09:38,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:09:38,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:09:38,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:09:38,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:09:38,843.843 INFO    ] time= 18/10/2026 02:09:38
[2026-10-18 02:09:38,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:09:38,947.947 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:09:39,073.073 INFO    ] No existing commands found in stream
[2026-10-18 02:09:44,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:09:44,093.093 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-18 02:09:48,573.573 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 02:09:48,576.576 INFO    ] Checking for system updates...
[2026-10-18 02:09:48,614.614 INFO    ] 200
[2026-10-18 02:09:48,617.617 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:09:48,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:09:48,678.678 INFO    ] No update needed
[2026-10-18 02:09:48,681.681 INFO    ] Checking for camera pi updates...
[2026-10-18 02:09:48,715.715 INFO    ] 200
[2026-10-18 02:09:48,718.718 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:09:48,759.759 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:09:58,775.775 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:09:58,814.814 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:09:58,825.825 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:09:58,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:09:58,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:09:58,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:10:00,881.881 INFO    ] ================================================
[2026-10-18 02:10:00,897.897 INFO    ] Launching Daemon at Sun Oct 18 02:10:00 IST 2026
[2026-10-18 02:10:00,907.907 INFO    ] ================================================
[2026-10-18 02:10:01,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:10:01
[2026-10-18 02:10:02,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:10:03,064.064 INFO    ] Initializing speech engine...
[2026-10-18 02:10:03,069.069 INFO    ] 2026-10-18 02:10:03
[2026-10-18 02:10:03,475.475 INFO    ] 2026-10-18 02:10:03
[2026-10-18 02:10:03,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:10:03,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:10:03,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:10:03,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:10:04,013.013 INFO    ] time= 18/10/2026 02:10:03
[2026-10-18 02:10:04,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:10:04,052.052 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:10:04,179.179 INFO    ] No existing commands found in stream
[2026-10-18 02:10:09,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:10:09,220.220 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-18 02:10:10,007.007 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:10:10,009.009 INFO    ] Checking for system updates...
[2026-10-18 02:10:10,045.045 INFO    ] 200
[2026-10-18 02:10:10,047.047 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:10:10,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:10:10,102.102 INFO    ] No update needed
[2026-10-18 02:10:10,105.105 INFO    ] Checking for camera pi updates...
[2026-10-18 02:10:10,138.138 INFO    ] 200
[2026-10-18 02:10:10,140.140 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:10:10,180.180 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:10:20,195.195 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:10:20,231.231 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:10:20,241.241 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:10:20,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:10:20,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:10:20,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:10:22,295.295 INFO    ] ================================================
[2026-10-18 02:10:22,311.311 INFO    ] Launching Daemon at Sun Oct 18 02:10:22 IST 2026
[2026-10-18 02:10:22,323.323 INFO    ] ================================================
[2026-10-18 02:10:22,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:10:22
[2026-10-18 02:10:23,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:10:23,909.909 INFO    ] Initializing speech engine...
[2026-10-18 02:10:23,918.918 INFO    ] 2026-10-18 02:10:23
[2026-10-18 02:10:24,203.203 INFO    ] 2026-10-18 02:10:24
[2026-10-18 02:10:24,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:10:24,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:10:24,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:10:24,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:10:24,750.750 INFO    ] time= 18/10/2026 02:10:24
[2026-10-18 02:10:24,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:10:24,776.776 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:10:24,910.910 INFO    ] No existing commands found in stream
[2026-10-18 02:10:29,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:10:29,926.926 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-18 02:10:32,354.354 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 02:10:32,357.357 INFO    ] Checking for system updates...
[2026-10-18 02:10:32,398.398 INFO    ] 200
[2026-10-18 02:10:32,401.401 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:10:32,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:10:32,462.462 INFO    ] No update needed
[2026-10-18 02:10:32,465.465 INFO    ] Checking for camera pi updates...
[2026-10-18 02:10:32,502.502 INFO    ] 200
[2026-10-18 02:10:32,505.505 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:10:32,549.549 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:10:42,562.562 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:10:42,596.596 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:10:42,606.606 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:10:42,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:10:42,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:10:42,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:10:44,658.658 INFO    ] ================================================
[2026-10-18 02:10:44,673.673 INFO    ] Launching Daemon at Sun Oct 18 02:10:44 IST 2026
[2026-10-18 02:10:44,683.683 INFO    ] ================================================
[2026-10-18 02:10:45,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:10:45
[2026-10-18 02:10:45,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:10:46,279.279 INFO    ] Initializing speech engine...
[2026-10-18 02:10:46,286.286 INFO    ] 2026-10-18 02:10:46
[2026-10-18 02:10:46,572.572 INFO    ] 2026-10-18 02:10:46
[2026-10-18 02:10:46,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:10:46,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:10:46,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:10:47,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:10:47,118.118 INFO    ] time= 18/10/2026 02:10:47
[2026-10-18 02:10:47,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:10:47,147.147 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:10:47,283.283 INFO    ] No existing commands found in stream
[2026-10-18 02:10:52,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:10:52,313.313 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-18 02:10:54,381.381 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 02:10:54,384.384 INFO    ] Checking for system updates...
[2026-10-18 02:10:54,421.421 INFO    ] 200
[2026-10-18 02:10:54,424.424 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:10:54,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:10:54,479.479 INFO    ] No update needed
[2026-10-18 02:10:54,482.482 INFO    ] Checking for camera pi updates...
[2026-10-18 02:10:54,517.517 INFO    ] 200
[2026-10-18 02:10:54,519.519 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:10:54,561.561 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:11:04,576.576 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:11:04,615.615 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:11:04,626.626 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:11:04,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:11:04,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:11:04,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:11:06,679.679 INFO    ] ================================================
[2026-10-18 02:11:06,695.695 INFO    ] Launching Daemon at Sun Oct 18 02:11:06 IST 2026
[2026-10-18 02:11:06,706.706 INFO    ] ================================================
[2026-10-18 02:11:07,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:11:07
[2026-10-18 02:11:07,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:11:08,121.121 INFO    ] Initializing speech engine...
[2026-10-18 02:11:08,136.136 INFO    ] 2026-10-18 02:11:08
[2026-10-18 02:11:08,391.391 INFO    ] 2026-10-18 02:11:08
[2026-10-18 02:11:08,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:11:08,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:11:08,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:11:08,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:11:08,957.957 INFO    ] time= 18/10/2026 02:11:08
[2026-10-18 02:11:08,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:11:08,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:11:09,117.117 INFO    ] No existing commands found in stream
[2026-10-18 02:11:14,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:11:14,142.142 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-18 02:11:18,266.266 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:11:18,268.268 INFO    ] Checking for system updates...
[2026-10-18 02:11:18,304.304 INFO    ] 200
[2026-10-18 02:11:18,306.306 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:11:18,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:11:18,360.360 INFO    ] No update needed
[2026-10-18 02:11:18,362.362 INFO    ] Checking for camera pi updates...
[2026-10-18 02:11:18,399.399 INFO    ] 200
[2026-10-18 02:11:18,402.402 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:11:18,442.442 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:11:28,457.457 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:11:28,499.499 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:11:28,509.509 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:11:28,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:11:28,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:11:28,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:11:30,562.562 INFO    ] ================================================
[2026-10-18 02:11:30,579.579 INFO    ] Launching Daemon at Sun Oct 18 02:11:30 IST 2026
[2026-10-18 02:11:30,590.590 INFO    ] ================================================
[2026-10-18 02:11:31,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:11:31
[2026-10-18 02:11:31,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:11:32,099.099 INFO    ] Initializing speech engine...
[2026-10-18 02:11:32,113.113 INFO    ] 2026-10-18 02:11:32
[2026-10-18 02:11:32,377.377 INFO    ] 2026-10-18 02:11:32
[2026-10-18 02:11:32,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:11:32,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:11:32,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:11:32,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:11:32,947.947 INFO    ] time= 18/10/2026 02:11:32
[2026-10-18 02:11:32,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:11:32,975.975 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:11:33,104.104 INFO    ] No existing commands found in stream
[2026-10-18 02:11:38,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:11:38,122.122 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-18 02:11:39,561.561 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:11:39,563.563 INFO    ] Checking for system updates...
[2026-10-18 02:11:39,599.599 INFO    ] 200
[2026-10-18 02:11:39,601.601 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:11:39,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:11:39,655.655 INFO    ] No update needed
[2026-10-18 02:11:39,658.658 INFO    ] Checking for camera pi updates...
[2026-10-18 02:11:39,692.692 INFO    ] 200
[2026-10-18 02:11:39,694.694 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:11:39,735.735 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:11:49,750.750 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:11:49,786.786 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:11:49,796.796 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:11:49,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:11:49,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:11:49,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:11:51,850.850 INFO    ] ================================================
[2026-10-18 02:11:51,866.866 INFO    ] Launching Daemon at Sun Oct 18 02:11:51 IST 2026
[2026-10-18 02:11:51,876.876 INFO    ] ================================================
[2026-10-18 02:11:52,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:11:52
[2026-10-18 02:11:53,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:11:53,466.466 INFO    ] Initializing speech engine...
[2026-10-18 02:11:53,472.472 INFO    ] 2026-10-18 02:11:53
[2026-10-18 02:11:53,742.742 INFO    ] 2026-10-18 02:11:53
[2026-10-18 02:11:53,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:11:54,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:11:54,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:11:54,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:11:54,247.247 INFO    ] time= 18/10/2026 02:11:54
[2026-10-18 02:11:54,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:11:54,302.302 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:11:54,469.469 INFO    ] No existing commands found in stream
[2026-10-18 02:11:59,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:11:59,508.508 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-18 02:12:01,147.147 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:12:01,150.150 INFO    ] Checking for system updates...
[2026-10-18 02:12:01,186.186 INFO    ] 200
[2026-10-18 02:12:01,189.189 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:12:01,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:12:01,251.251 INFO    ] No update needed
[2026-10-18 02:12:01,261.261 INFO    ] Checking for camera pi updates...
[2026-10-18 02:12:01,361.361 INFO    ] 200
[2026-10-18 02:12:01,365.365 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:12:01,437.437 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:12:11,457.457 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:12:11,492.492 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:12:11,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:12:11,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:12:11,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:12:11,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:12:13,554.554 INFO    ] ================================================
[2026-10-18 02:12:13,569.569 INFO    ] Launching Daemon at Sun Oct 18 02:12:13 IST 2026
[2026-10-18 02:12:13,580.580 INFO    ] ================================================
[2026-10-18 02:12:14,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:12:14
[2026-10-18 02:12:14,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:12:15,005.005 INFO    ] Initializing speech engine...
[2026-10-18 02:12:15,023.023 INFO    ] 2026-10-18 02:12:15
[2026-10-18 02:12:15,275.275 INFO    ] 2026-10-18 02:12:15
[2026-10-18 02:12:15,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:12:15,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:12:15,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:12:15,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:12:15,780.780 INFO    ] time= 18/10/2026 02:12:15
[2026-10-18 02:12:15,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:12:15,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:12:16,053.053 INFO    ] No existing commands found in stream
[2026-10-18 02:12:21,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:12:21,081.081 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-18 02:12:22,526.526 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:12:22,529.529 INFO    ] Checking for system updates...
[2026-10-18 02:12:22,564.564 INFO    ] 200
[2026-10-18 02:12:22,567.567 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:12:22,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:12:22,625.625 INFO    ] No update needed
[2026-10-18 02:12:22,628.628 INFO    ] Checking for camera pi updates...
[2026-10-18 02:12:22,662.662 INFO    ] 200
[2026-10-18 02:12:22,665.665 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:12:22,706.706 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:12:32,721.721 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:12:32,766.766 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:12:32,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:12:32,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:12:32,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:12:32,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:12:34,834.834 INFO    ] ================================================
[2026-10-18 02:12:34,849.849 INFO    ] Launching Daemon at Sun Oct 18 02:12:34 IST 2026
[2026-10-18 02:12:34,860.860 INFO    ] ================================================
[2026-10-18 02:12:35,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:12:35
[2026-10-18 02:12:36,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:12:36,438.438 INFO    ] Initializing speech engine...
[2026-10-18 02:12:36,461.461 INFO    ] 2026-10-18 02:12:36
[2026-10-18 02:12:36,714.714 INFO    ] 2026-10-18 02:12:36
[2026-10-18 02:12:36,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:12:36,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:12:36,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:12:37,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:12:37,156.156 INFO    ] time= 18/10/2026 02:12:37
[2026-10-18 02:12:37,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:12:37,275.275 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:12:37,408.408 INFO    ] No existing commands found in stream
[2026-10-18 02:12:42,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:12:42,441.441 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-18 02:12:43,001.001 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 02:12:43,004.004 INFO    ] Checking for system updates...
[2026-10-18 02:12:44,176.176 INFO    ] 200
[2026-10-18 02:12:44,179.179 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:12:44,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:12:44,236.236 INFO    ] No update needed
[2026-10-18 02:12:44,239.239 INFO    ] Checking for camera pi updates...
[2026-10-18 02:12:44,278.278 INFO    ] 200
[2026-10-18 02:12:44,282.282 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:12:44,323.323 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:12:54,339.339 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:12:54,380.380 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:12:54,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:12:54,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:12:54,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:12:54,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:12:56,447.447 INFO    ] ================================================
[2026-10-18 02:12:56,463.463 INFO    ] Launching Daemon at Sun Oct 18 02:12:56 IST 2026
[2026-10-18 02:12:56,474.474 INFO    ] ================================================
[2026-10-18 02:12:57,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:12:57
[2026-10-18 02:12:57,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:12:57,920.920 INFO    ] Initializing speech engine...
[2026-10-18 02:12:57,929.929 INFO    ] 2026-10-18 02:12:57
[2026-10-18 02:12:58,216.216 INFO    ] 2026-10-18 02:12:58
[2026-10-18 02:12:58,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:12:58,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:12:58,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:12:58,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:12:58,749.749 INFO    ] time= 18/10/2026 02:12:58
[2026-10-18 02:12:58,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:12:58,779.779 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:12:58,909.909 INFO    ] No existing commands found in stream
[2026-10-18 02:13:03,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:13:03,947.947 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-18 02:13:07,762.762 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:13:07,765.765 INFO    ] Checking for system updates...
[2026-10-18 02:13:07,802.802 INFO    ] 200
[2026-10-18 02:13:07,805.805 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:13:07,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:13:07,862.862 INFO    ] No update needed
[2026-10-18 02:13:07,865.865 INFO    ] Checking for camera pi updates...
[2026-10-18 02:13:07,900.900 INFO    ] 200
[2026-10-18 02:13:07,903.903 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:13:07,943.943 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:13:17,959.959 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:13:17,993.993 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:13:18,003.003 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:13:18,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:13:18,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:13:18,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:13:20,056.056 INFO    ] ================================================
[2026-10-18 02:13:20,072.072 INFO    ] Launching Daemon at Sun Oct 18 02:13:20 IST 2026
[2026-10-18 02:13:20,083.083 INFO    ] ================================================
[2026-10-18 02:13:20,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:13:20
[2026-10-18 02:13:21,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:13:21,530.530 INFO    ] Initializing speech engine...
[2026-10-18 02:13:21,547.547 INFO    ] 2026-10-18 02:13:21
[2026-10-18 02:13:21,801.801 INFO    ] 2026-10-18 02:13:21
[2026-10-18 02:13:21,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:13:22,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:13:22,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:13:22,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:13:22,362.362 INFO    ] time= 18/10/2026 02:13:22
[2026-10-18 02:13:22,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:13:22,386.386 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:13:22,519.519 INFO    ] No existing commands found in stream
[2026-10-18 02:13:27,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:13:27,545.545 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-18 02:13:30,284.284 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:13:30,287.287 INFO    ] Checking for system updates...
[2026-10-18 02:13:30,323.323 INFO    ] 200
[2026-10-18 02:13:30,326.326 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:13:30,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:13:30,384.384 INFO    ] No update needed
[2026-10-18 02:13:30,386.386 INFO    ] Checking for camera pi updates...
[2026-10-18 02:13:30,420.420 INFO    ] 200
[2026-10-18 02:13:30,422.422 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:13:30,463.463 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:13:40,478.478 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:13:40,513.513 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:13:40,523.523 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:13:40,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:13:40,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:13:40,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:13:42,576.576 INFO    ] ================================================
[2026-10-18 02:13:42,591.591 INFO    ] Launching Daemon at Sun Oct 18 02:13:42 IST 2026
[2026-10-18 02:13:42,603.603 INFO    ] ================================================
[2026-10-18 02:13:43,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:13:43
[2026-10-18 02:13:43,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:13:44,039.039 INFO    ] Initializing speech engine...
[2026-10-18 02:13:44,047.047 INFO    ] 2026-10-18 02:13:44
[2026-10-18 02:13:44,297.297 INFO    ] 2026-10-18 02:13:44
[2026-10-18 02:13:44,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:13:44,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:13:44,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:13:44,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:13:44,854.854 INFO    ] time= 18/10/2026 02:13:44
[2026-10-18 02:13:44,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:13:44,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:13:45,010.010 INFO    ] No existing commands found in stream
[2026-10-18 02:13:50,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:13:50,036.036 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-18 02:13:51,122.122 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:13:51,126.126 INFO    ] Checking for system updates...
[2026-10-18 02:13:51,163.163 INFO    ] 200
[2026-10-18 02:13:51,166.166 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:13:51,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:13:51,221.221 INFO    ] No update needed
[2026-10-18 02:13:51,224.224 INFO    ] Checking for camera pi updates...
[2026-10-18 02:13:51,258.258 INFO    ] 200
[2026-10-18 02:13:51,260.260 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:13:51,301.301 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:14:01,318.318 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:14:01,368.368 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:14:01,381.381 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:14:01,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:14:01,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:14:01,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:14:03,446.446 INFO    ] ================================================
[2026-10-18 02:14:03,461.461 INFO    ] Launching Daemon at Sun Oct 18 02:14:03 IST 2026
[2026-10-18 02:14:03,473.473 INFO    ] ================================================
[2026-10-18 02:14:04,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:14:04
[2026-10-18 02:14:04,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:14:04,934.934 INFO    ] Initializing speech engine...
[2026-10-18 02:14:04,939.939 INFO    ] 2026-10-18 02:14:04
[2026-10-18 02:14:05,192.192 INFO    ] 2026-10-18 02:14:05
[2026-10-18 02:14:05,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:14:05,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:14:05,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:14:05,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:14:05,720.720 INFO    ] time= 18/10/2026 02:14:05
[2026-10-18 02:14:05,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:14:05,818.818 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:14:05,970.970 INFO    ] No existing commands found in stream
[2026-10-18 02:14:11,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:14:11,003.003 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-18 02:14:14,088.088 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:14:14,090.090 INFO    ] Checking for system updates...
[2026-10-18 02:14:14,127.127 INFO    ] 200
[2026-10-18 02:14:14,130.130 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:14:14,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:14:14,187.187 INFO    ] No update needed
[2026-10-18 02:14:14,190.190 INFO    ] Checking for camera pi updates...
[2026-10-18 02:14:14,226.226 INFO    ] 200
[2026-10-18 02:14:14,228.228 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:14:14,270.270 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:14:24,286.286 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:14:24,326.326 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:14:24,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:14:24,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:14:24,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:14:24,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:14:26,394.394 INFO    ] ================================================
[2026-10-18 02:14:26,409.409 INFO    ] Launching Daemon at Sun Oct 18 02:14:26 IST 2026
[2026-10-18 02:14:26,420.420 INFO    ] ================================================
[2026-10-18 02:14:26,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:14:26
[2026-10-18 02:14:27,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:14:27,847.847 INFO    ] Initializing speech engine...
[2026-10-18 02:14:27,855.855 INFO    ] 2026-10-18 02:14:27
[2026-10-18 02:14:28,107.107 INFO    ] 2026-10-18 02:14:28
[2026-10-18 02:14:28,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:14:28,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:14:28,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:14:28,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:14:28,649.649 INFO    ] time= 18/10/2026 02:14:28
[2026-10-18 02:14:28,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:14:28,699.699 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:14:28,833.833 INFO    ] No existing commands found in stream
[2026-10-18 02:14:33,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:14:33,851.851 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-18 02:14:38,256.256 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 02:14:38,259.259 INFO    ] Checking for system updates...
[2026-10-18 02:14:38,296.296 INFO    ] 200
[2026-10-18 02:14:38,299.299 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:14:38,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:14:38,362.362 INFO    ] No update needed
[2026-10-18 02:14:38,364.364 INFO    ] Checking for camera pi updates...
[2026-10-18 02:14:38,397.397 INFO    ] 200
[2026-10-18 02:14:38,400.400 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:14:38,446.446 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:14:48,461.461 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:14:48,496.496 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:14:48,506.506 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:14:48,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:14:48,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:14:48,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:14:50,558.558 INFO    ] ================================================
[2026-10-18 02:14:50,574.574 INFO    ] Launching Daemon at Sun Oct 18 02:14:50 IST 2026
[2026-10-18 02:14:50,585.585 INFO    ] ================================================
[2026-10-18 02:14:51,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:14:51
[2026-10-18 02:14:51,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:14:52,009.009 INFO    ] Initializing speech engine...
[2026-10-18 02:14:52,017.017 INFO    ] 2026-10-18 02:14:52
[2026-10-18 02:14:52,317.317 INFO    ] 2026-10-18 02:14:52
[2026-10-18 02:14:52,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:14:52,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:14:52,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:14:52,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:14:52,749.749 INFO    ] time= 18/10/2026 02:14:52
[2026-10-18 02:14:52,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:14:52,763.763 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:14:52,894.894 INFO    ] No existing commands found in stream
[2026-10-18 02:14:57,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:14:57,922.922 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-18 02:14:59,708.708 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:14:59,711.711 INFO    ] Checking for system updates...
[2026-10-18 02:14:59,748.748 INFO    ] 200
[2026-10-18 02:14:59,750.750 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:14:59,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:14:59,816.816 INFO    ] No update needed
[2026-10-18 02:14:59,819.819 INFO    ] Checking for camera pi updates...
[2026-10-18 02:14:59,852.852 INFO    ] 200
[2026-10-18 02:14:59,855.855 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:14:59,903.903 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:15:09,917.917 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:15:09,952.952 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:15:09,961.961 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:15:09,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:15:09,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:15:09,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:15:12,014.014 INFO    ] ================================================
[2026-10-18 02:15:12,030.030 INFO    ] Launching Daemon at Sun Oct 18 02:15:12 IST 2026
[2026-10-18 02:15:12,041.041 INFO    ] ================================================
[2026-10-18 02:15:12,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:15:12
[2026-10-18 02:15:13,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:15:13,475.475 INFO    ] Initializing speech engine...
[2026-10-18 02:15:13,485.485 INFO    ] 2026-10-18 02:15:13
[2026-10-18 02:15:13,761.761 INFO    ] 2026-10-18 02:15:13
[2026-10-18 02:15:13,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:15:14,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:15:14,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:15:14,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:15:14,272.272 INFO    ] time= 18/10/2026 02:15:14
[2026-10-18 02:15:14,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:15:14,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:15:14,510.510 INFO    ] No existing commands found in stream
[2026-10-18 02:15:19,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:15:19,533.533 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-18 02:15:21,848.848 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 02:15:21,851.851 INFO    ] Checking for system updates...
[2026-10-18 02:15:21,890.890 INFO    ] 200
[2026-10-18 02:15:21,892.892 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:15:21,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:15:21,952.952 INFO    ] No update needed
[2026-10-18 02:15:21,955.955 INFO    ] Checking for camera pi updates...
[2026-10-18 02:15:21,990.990 INFO    ] 200
[2026-10-18 02:15:21,993.993 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:15:22,043.043 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:15:32,059.059 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:15:32,098.098 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:15:32,108.108 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:15:32,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:15:32,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:15:32,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:15:34,169.169 INFO    ] ================================================
[2026-10-18 02:15:34,185.185 INFO    ] Launching Daemon at Sun Oct 18 02:15:34 IST 2026
[2026-10-18 02:15:34,197.197 INFO    ] ================================================
[2026-10-18 02:15:34,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:15:34
[2026-10-18 02:15:35,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:15:35,609.609 INFO    ] Initializing speech engine...
[2026-10-18 02:15:35,623.623 INFO    ] 2026-10-18 02:15:35
[2026-10-18 02:15:35,878.878 INFO    ] 2026-10-18 02:15:35
[2026-10-18 02:15:35,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:15:36,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:15:36,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:15:36,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:15:36,386.386 INFO    ] time= 18/10/2026 02:15:36
[2026-10-18 02:15:36,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:15:36,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:15:36,626.626 INFO    ] No existing commands found in stream
[2026-10-18 02:15:41,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:15:41,659.659 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-18 02:15:42,984.984 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 02:15:42,987.987 INFO    ] Checking for system updates...
[2026-10-18 02:15:43,028.028 INFO    ] 200
[2026-10-18 02:15:43,030.030 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:15:43,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:15:43,092.092 INFO    ] No update needed
[2026-10-18 02:15:43,095.095 INFO    ] Checking for camera pi updates...
[2026-10-18 02:15:43,129.129 INFO    ] 200
[2026-10-18 02:15:43,132.132 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:15:43,177.177 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:15:53,193.193 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:15:53,233.233 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:15:53,244.244 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:15:53,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:15:53,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:15:53,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:15:55,301.301 INFO    ] ================================================
[2026-10-18 02:15:55,317.317 INFO    ] Launching Daemon at Sun Oct 18 02:15:55 IST 2026
[2026-10-18 02:15:55,329.329 INFO    ] ================================================
[2026-10-18 02:15:55,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:15:55
[2026-10-18 02:15:56,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:15:56,743.743 INFO    ] Initializing speech engine...
[2026-10-18 02:15:56,750.750 INFO    ] 2026-10-18 02:15:56
[2026-10-18 02:15:57,043.043 INFO    ] 2026-10-18 02:15:57
[2026-10-18 02:15:57,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:15:57,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:15:57,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:15:57,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:15:57,535.535 INFO    ] time= 18/10/2026 02:15:57
[2026-10-18 02:15:57,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:15:57,633.633 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:15:57,737.737 INFO    ] No existing commands found in stream
[2026-10-18 02:16:02,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:16:02,751.751 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-18 02:16:05,152.152 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:16:05,154.154 INFO    ] Checking for system updates...
[2026-10-18 02:16:05,190.190 INFO    ] 200
[2026-10-18 02:16:05,192.192 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:16:05,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:16:05,251.251 INFO    ] No update needed
[2026-10-18 02:16:05,254.254 INFO    ] Checking for camera pi updates...
[2026-10-18 02:16:05,287.287 INFO    ] 200
[2026-10-18 02:16:05,290.290 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:16:05,331.331 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:16:15,346.346 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:16:15,381.381 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:16:15,390.390 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:16:15,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:16:15,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:16:15,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:16:17,444.444 INFO    ] ================================================
[2026-10-18 02:16:17,459.459 INFO    ] Launching Daemon at Sun Oct 18 02:16:17 IST 2026
[2026-10-18 02:16:17,470.470 INFO    ] ================================================
[2026-10-18 02:16:18,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:16:18
[2026-10-18 02:16:18,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:16:18,934.934 INFO    ] Initializing speech engine...
[2026-10-18 02:16:18,942.942 INFO    ] 2026-10-18 02:16:18
[2026-10-18 02:16:19,193.193 INFO    ] 2026-10-18 02:16:19
[2026-10-18 02:16:19,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:16:19,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:16:19,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:16:19,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:16:19,737.737 INFO    ] time= 18/10/2026 02:16:19
[2026-10-18 02:16:19,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:16:19,761.761 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:16:19,908.908 INFO    ] No existing commands found in stream
[2026-10-18 02:16:24,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:16:24,934.934 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-18 02:16:27,175.175 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:16:27,179.179 INFO    ] Checking for system updates...
[2026-10-18 02:16:27,219.219 INFO    ] 200
[2026-10-18 02:16:27,221.221 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:16:27,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:16:27,281.281 INFO    ] No update needed
[2026-10-18 02:16:27,284.284 INFO    ] Checking for camera pi updates...
[2026-10-18 02:16:27,328.328 INFO    ] 200
[2026-10-18 02:16:27,331.331 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:16:27,377.377 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:16:37,394.394 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:16:37,434.434 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:16:37,445.445 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:16:37,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:16:37,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:16:37,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:16:39,502.502 INFO    ] ================================================
[2026-10-18 02:16:39,518.518 INFO    ] Launching Daemon at Sun Oct 18 02:16:39 IST 2026
[2026-10-18 02:16:39,530.530 INFO    ] ================================================
[2026-10-18 02:16:40,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:16:40
[2026-10-18 02:16:40,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:16:40,943.943 INFO    ] Initializing speech engine...
[2026-10-18 02:16:40,952.952 INFO    ] 2026-10-18 02:16:40
[2026-10-18 02:16:41,217.217 INFO    ] 2026-10-18 02:16:41
[2026-10-18 02:16:41,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:16:41,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:16:41,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:16:41,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:16:41,627.627 INFO    ] time= 18/10/2026 02:16:41
[2026-10-18 02:16:41,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:16:41,684.684 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:16:41,832.832 INFO    ] No existing commands found in stream
[2026-10-18 02:16:46,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:16:46,841.841 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-18 02:16:50,888.888 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 02:16:50,891.891 INFO    ] Checking for system updates...
[2026-10-18 02:16:50,928.928 INFO    ] 200
[2026-10-18 02:16:50,930.930 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:16:50,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:16:50,987.987 INFO    ] No update needed
[2026-10-18 02:16:50,989.989 INFO    ] Checking for camera pi updates...
[2026-10-18 02:16:51,024.024 INFO    ] 200
[2026-10-18 02:16:51,027.027 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:16:51,068.068 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:17:01,084.084 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:17:01,124.124 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:17:01,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:17:01,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:17:01,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:17:01,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:17:03,201.201 INFO    ] ================================================
[2026-10-18 02:17:03,220.220 INFO    ] Launching Daemon at Sun Oct 18 02:17:03 IST 2026
[2026-10-18 02:17:03,236.236 INFO    ] ================================================
[2026-10-18 02:17:03,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:17:03
[2026-10-18 02:17:04,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:17:04,741.741 INFO    ] Initializing speech engine...
[2026-10-18 02:17:04,750.750 INFO    ] 2026-10-18 02:17:04
[2026-10-18 02:17:04,995.995 INFO    ] 2026-10-18 02:17:04
[2026-10-18 02:17:05,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:17:05,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:17:05,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:17:05,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:17:05,474.474 INFO    ] time= 18/10/2026 02:17:05
[2026-10-18 02:17:05,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:17:05,557.557 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:17:05,694.694 INFO    ] No existing commands found in stream
[2026-10-18 02:17:10,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:17:10,716.716 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-18 02:17:14,222.222 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 02:17:14,225.225 INFO    ] Checking for system updates...
[2026-10-18 02:17:14,260.260 INFO    ] 200
[2026-10-18 02:17:14,262.262 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:17:14,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:17:14,317.317 INFO    ] No update needed
[2026-10-18 02:17:14,320.320 INFO    ] Checking for camera pi updates...
[2026-10-18 02:17:14,353.353 INFO    ] 200
[2026-10-18 02:17:14,355.355 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:17:14,397.397 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:17:24,412.412 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:17:24,446.446 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:17:24,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:17:24,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:17:24,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:17:24,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:17:26,508.508 INFO    ] ================================================
[2026-10-18 02:17:26,523.523 INFO    ] Launching Daemon at Sun Oct 18 02:17:26 IST 2026
[2026-10-18 02:17:26,535.535 INFO    ] ================================================
[2026-10-18 02:17:27,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:17:27
[2026-10-18 02:17:27,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:17:28,160.160 INFO    ] Initializing speech engine...
[2026-10-18 02:17:28,172.172 INFO    ] 2026-10-18 02:17:28
[2026-10-18 02:17:28,442.442 INFO    ] 2026-10-18 02:17:28
[2026-10-18 02:17:28,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:17:28,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:17:28,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:17:28,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:17:29,006.006 INFO    ] time= 18/10/2026 02:17:28
[2026-10-18 02:17:29,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:17:29,055.055 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:17:29,164.164 INFO    ] No existing commands found in stream
[2026-10-18 02:17:34,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:17:34,183.183 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-18 02:17:36,831.831 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 02:17:36,834.834 INFO    ] Checking for system updates...
[2026-10-18 02:17:36,875.875 INFO    ] 200
[2026-10-18 02:17:36,878.878 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:17:36,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:17:36,937.937 INFO    ] No update needed
[2026-10-18 02:17:36,939.939 INFO    ] Checking for camera pi updates...
[2026-10-18 02:17:36,978.978 INFO    ] 200
[2026-10-18 02:17:36,981.981 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:17:37,021.021 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:17:47,036.036 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:17:47,071.071 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:17:47,080.080 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:17:47,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:17:47,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:17:47,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:17:49,133.133 INFO    ] ================================================
[2026-10-18 02:17:49,149.149 INFO    ] Launching Daemon at Sun Oct 18 02:17:49 IST 2026
[2026-10-18 02:17:49,160.160 INFO    ] ================================================
[2026-10-18 02:17:49,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:17:49
[2026-10-18 02:17:50,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:17:50,587.587 INFO    ] Initializing speech engine...
[2026-10-18 02:17:50,594.594 INFO    ] 2026-10-18 02:17:50
[2026-10-18 02:17:50,844.844 INFO    ] 2026-10-18 02:17:50
[2026-10-18 02:17:50,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:17:51,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:17:51,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:17:51,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:17:51,316.316 INFO    ] time= 18/10/2026 02:17:51
[2026-10-18 02:17:51,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:17:51,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:17:51,567.567 INFO    ] No existing commands found in stream
[2026-10-18 02:17:56,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:17:56,587.587 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-18 02:17:59,770.770 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:17:59,772.772 INFO    ] Checking for system updates...
[2026-10-18 02:17:59,808.808 INFO    ] 200
[2026-10-18 02:17:59,811.811 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:17:59,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:17:59,865.865 INFO    ] No update needed
[2026-10-18 02:17:59,868.868 INFO    ] Checking for camera pi updates...
[2026-10-18 02:17:59,905.905 INFO    ] 200
[2026-10-18 02:17:59,908.908 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:17:59,949.949 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:18:09,964.964 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:18:09,998.998 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:18:10,008.008 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:18:10,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:18:10,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:18:10,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:18:12,062.062 INFO    ] ================================================
[2026-10-18 02:18:12,078.078 INFO    ] Launching Daemon at Sun Oct 18 02:18:12 IST 2026
[2026-10-18 02:18:12,090.090 INFO    ] ================================================
[2026-10-18 02:18:12,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:18:12
[2026-10-18 02:18:13,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:18:13,556.556 INFO    ] Initializing speech engine...
[2026-10-18 02:18:13,563.563 INFO    ] 2026-10-18 02:18:13
[2026-10-18 02:18:13,823.823 INFO    ] 2026-10-18 02:18:13
[2026-10-18 02:18:13,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:18:14,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:18:14,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:18:14,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:18:14,194.194 INFO    ] time= 18/10/2026 02:18:14
[2026-10-18 02:18:14,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:18:14,248.248 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:18:14,331.331 INFO    ] No existing commands found in stream
[2026-10-18 02:18:19,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:18:19,343.343 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-18 02:18:19,932.932 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:18:19,934.934 INFO    ] Checking for system updates...
[2026-10-18 02:18:19,970.970 INFO    ] 200
[2026-10-18 02:18:19,973.973 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:18:20,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:18:20,029.029 INFO    ] No update needed
[2026-10-18 02:18:20,031.031 INFO    ] Checking for camera pi updates...
[2026-10-18 02:18:20,069.069 INFO    ] 200
[2026-10-18 02:18:20,071.071 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:18:20,112.112 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:18:30,128.128 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:18:30,163.163 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:18:30,173.173 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:18:30,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:18:30,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:18:30,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:18:32,228.228 INFO    ] ================================================
[2026-10-18 02:18:32,244.244 INFO    ] Launching Daemon at Sun Oct 18 02:18:32 IST 2026
[2026-10-18 02:18:32,257.257 INFO    ] ================================================
[2026-10-18 02:18:32,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:18:32
[2026-10-18 02:18:33,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:18:33,798.798 INFO    ] Initializing speech engine...
[2026-10-18 02:18:33,818.818 INFO    ] 2026-10-18 02:18:33
[2026-10-18 02:18:34,091.091 INFO    ] 2026-10-18 02:18:34
[2026-10-18 02:18:34,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:18:34,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:18:34,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:18:34,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:18:34,506.506 INFO    ] time= 18/10/2026 02:18:34
[2026-10-18 02:18:34,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:18:34,517.517 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:18:34,593.593 INFO    ] No existing commands found in stream
[2026-10-18 02:18:39,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:18:39,611.611 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-18 02:18:43,423.423 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:18:43,426.426 INFO    ] Checking for system updates...
[2026-10-18 02:18:43,469.469 INFO    ] 200
[2026-10-18 02:18:43,472.472 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:18:43,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:18:43,529.529 INFO    ] No update needed
[2026-10-18 02:18:43,531.531 INFO    ] Checking for camera pi updates...
[2026-10-18 02:18:43,567.567 INFO    ] 200
[2026-10-18 02:18:43,570.570 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:18:43,612.612 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:18:53,628.628 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:18:53,664.664 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:18:53,674.674 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:18:53,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:18:53,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:18:53,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:18:55,727.727 INFO    ] ================================================
[2026-10-18 02:18:55,744.744 INFO    ] Launching Daemon at Sun Oct 18 02:18:55 IST 2026
[2026-10-18 02:18:55,755.755 INFO    ] ================================================
[2026-10-18 02:18:56,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:18:56
[2026-10-18 02:18:57,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:18:57,432.432 INFO    ] Initializing speech engine...
[2026-10-18 02:18:57,444.444 INFO    ] 2026-10-18 02:18:57
[2026-10-18 02:18:57,740.740 INFO    ] 2026-10-18 02:18:57
[2026-10-18 02:18:57,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:18:58,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:18:58,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:18:58,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:18:58,285.285 INFO    ] time= 18/10/2026 02:18:58
[2026-10-18 02:18:58,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:18:58,327.327 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:18:58,456.456 INFO    ] No existing commands found in stream
[2026-10-18 02:19:03,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:19:03,491.491 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-18 02:19:04,444.444 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:19:04,447.447 INFO    ] Checking for system updates...
[2026-10-18 02:19:04,488.488 INFO    ] 200
[2026-10-18 02:19:04,491.491 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:19:04,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:19:04,545.545 INFO    ] No update needed
[2026-10-18 02:19:04,548.548 INFO    ] Checking for camera pi updates...
[2026-10-18 02:19:04,585.585 INFO    ] 200
[2026-10-18 02:19:04,588.588 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:19:04,628.628 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:19:14,642.642 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:19:14,678.678 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:19:14,688.688 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:19:14,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:19:14,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:19:14,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:19:16,741.741 INFO    ] ================================================
[2026-10-18 02:19:16,758.758 INFO    ] Launching Daemon at Sun Oct 18 02:19:16 IST 2026
[2026-10-18 02:19:16,770.770 INFO    ] ================================================
[2026-10-18 02:19:17,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:19:17
[2026-10-18 02:19:17,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:19:18,183.183 INFO    ] Initializing speech engine...
[2026-10-18 02:19:18,191.191 INFO    ] 2026-10-18 02:19:18
[2026-10-18 02:19:18,489.489 INFO    ] 2026-10-18 02:19:18
[2026-10-18 02:19:18,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:19:18,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:19:18,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:19:18,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:19:19,009.009 INFO    ] time= 18/10/2026 02:19:18
[2026-10-18 02:19:19,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:19:19,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:19:19,277.277 INFO    ] No existing commands found in stream
[2026-10-18 02:19:24,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:19:24,310.310 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-18 02:19:25,913.913 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:19:25,916.916 INFO    ] Checking for system updates...
[2026-10-18 02:19:25,957.957 INFO    ] 200
[2026-10-18 02:19:25,959.959 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:19:26,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:19:26,023.023 INFO    ] No update needed
[2026-10-18 02:19:26,025.025 INFO    ] Checking for camera pi updates...
[2026-10-18 02:19:26,059.059 INFO    ] 200
[2026-10-18 02:19:26,061.061 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:19:26,107.107 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:19:36,121.121 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:19:36,157.157 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:19:36,167.167 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:19:36,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:19:36,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:19:36,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:19:38,220.220 INFO    ] ================================================
[2026-10-18 02:19:38,235.235 INFO    ] Launching Daemon at Sun Oct 18 02:19:38 IST 2026
[2026-10-18 02:19:38,246.246 INFO    ] ================================================
[2026-10-18 02:19:38,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:19:38
[2026-10-18 02:19:39,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:19:39,703.703 INFO    ] Initializing speech engine...
[2026-10-18 02:19:39,712.712 INFO    ] 2026-10-18 02:19:39
[2026-10-18 02:19:39,961.961 INFO    ] 2026-10-18 02:19:39
[2026-10-18 02:19:39,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:19:40,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:19:40,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:19:40,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:19:40,467.467 INFO    ] time= 18/10/2026 02:19:40
[2026-10-18 02:19:40,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:19:40,539.539 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:19:40,713.713 INFO    ] No existing commands found in stream
[2026-10-18 02:19:45,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:19:45,741.741 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-18 02:19:47,514.514 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:19:47,517.517 INFO    ] Checking for system updates...
[2026-10-18 02:19:47,558.558 INFO    ] 200
[2026-10-18 02:19:47,560.560 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:19:47,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:19:47,622.622 INFO    ] No update needed
[2026-10-18 02:19:47,624.624 INFO    ] Checking for camera pi updates...
[2026-10-18 02:19:47,659.659 INFO    ] 200
[2026-10-18 02:19:47,661.661 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:19:47,702.702 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:19:57,717.717 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:19:57,752.752 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:19:57,761.761 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:19:57,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:19:57,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:19:57,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:19:59,815.815 INFO    ] ================================================
[2026-10-18 02:19:59,831.831 INFO    ] Launching Daemon at Sun Oct 18 02:19:59 IST 2026
[2026-10-18 02:19:59,842.842 INFO    ] ================================================
[2026-10-18 02:20:00,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:20:00
[2026-10-18 02:20:01,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:20:01,306.306 INFO    ] Initializing speech engine...
[2026-10-18 02:20:01,316.316 INFO    ] 2026-10-18 02:20:01
[2026-10-18 02:20:01,575.575 INFO    ] 2026-10-18 02:20:01
[2026-10-18 02:20:01,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:20:01,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:20:01,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:20:02,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:20:02,076.076 INFO    ] time= 18/10/2026 02:20:02
[2026-10-18 02:20:02,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:20:02,132.132 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:20:02,237.237 INFO    ] No existing commands found in stream
[2026-10-18 02:20:07,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:20:07,256.256 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-18 02:20:08,957.957 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 02:20:08,960.960 INFO    ] Checking for system updates...
[2026-10-18 02:20:09,001.001 INFO    ] 200
[2026-10-18 02:20:09,003.003 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:20:09,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:20:09,062.062 INFO    ] No update needed
[2026-10-18 02:20:09,065.065 INFO    ] Checking for camera pi updates...
[2026-10-18 02:20:09,103.103 INFO    ] 200
[2026-10-18 02:20:09,106.106 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:20:09,147.147 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:20:19,164.164 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:20:19,207.207 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:20:19,218.218 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:20:19,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:20:19,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:20:19,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:20:21,275.275 INFO    ] ================================================
[2026-10-18 02:20:21,290.290 INFO    ] Launching Daemon at Sun Oct 18 02:20:21 IST 2026
[2026-10-18 02:20:21,301.301 INFO    ] ================================================
[2026-10-18 02:20:21,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:20:21
[2026-10-18 02:20:22,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:20:22,875.875 INFO    ] Initializing speech engine...
[2026-10-18 02:20:22,880.880 INFO    ] 2026-10-18 02:20:22
[2026-10-18 02:20:23,191.191 INFO    ] 2026-10-18 02:20:23
[2026-10-18 02:20:23,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:20:23,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:20:23,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:20:23,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:20:23,700.700 INFO    ] time= 18/10/2026 02:20:23
[2026-10-18 02:20:23,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:20:23,726.726 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:20:23,913.913 INFO    ] No existing commands found in stream
[2026-10-18 02:20:28,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:20:28,943.943 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-18 02:20:31,464.464 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:20:31,467.467 INFO    ] Checking for system updates...
[2026-10-18 02:20:31,504.504 INFO    ] 200
[2026-10-18 02:20:31,507.507 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:20:31,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:20:31,571.571 INFO    ] No update needed
[2026-10-18 02:20:31,578.578 INFO    ] Checking for camera pi updates...
[2026-10-18 02:20:31,616.616 INFO    ] 200
[2026-10-18 02:20:31,618.618 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:20:31,664.664 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:20:41,679.679 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:20:41,714.714 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:20:41,723.723 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:20:41,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:20:41,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:20:41,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:20:43,777.777 INFO    ] ================================================
[2026-10-18 02:20:43,792.792 INFO    ] Launching Daemon at Sun Oct 18 02:20:43 IST 2026
[2026-10-18 02:20:43,804.804 INFO    ] ================================================
[2026-10-18 02:20:44,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:20:44
[2026-10-18 02:20:44,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:20:45,211.211 INFO    ] Initializing speech engine...
[2026-10-18 02:20:45,224.224 INFO    ] 2026-10-18 02:20:45
[2026-10-18 02:20:45,493.493 INFO    ] 2026-10-18 02:20:45
[2026-10-18 02:20:45,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:20:45,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:20:45,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:20:45,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:20:45,990.990 INFO    ] time= 18/10/2026 02:20:45
[2026-10-18 02:20:46,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:20:46,069.069 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:20:46,245.245 INFO    ] No existing commands found in stream
[2026-10-18 02:20:51,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:20:51,273.273 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-18 02:20:55,137.137 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 02:20:55,140.140 INFO    ] Checking for system updates...
[2026-10-18 02:20:55,176.176 INFO    ] 200
[2026-10-18 02:20:55,178.178 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:20:55,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:20:55,239.239 INFO    ] No update needed
[2026-10-18 02:20:55,242.242 INFO    ] Checking for camera pi updates...
[2026-10-18 02:20:55,276.276 INFO    ] 200
[2026-10-18 02:20:55,279.279 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:20:55,319.319 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:21:05,335.335 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:21:05,371.371 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:21:05,381.381 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:21:05,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:21:05,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:21:05,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:21:07,437.437 INFO    ] ================================================
[2026-10-18 02:21:07,453.453 INFO    ] Launching Daemon at Sun Oct 18 02:21:07 IST 2026
[2026-10-18 02:21:07,477.477 INFO    ] ================================================
[2026-10-18 02:21:08,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:21:08
[2026-10-18 02:21:08,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:21:08,896.896 INFO    ] Initializing speech engine...
[2026-10-18 02:21:08,902.902 INFO    ] 2026-10-18 02:21:08
[2026-10-18 02:21:09,200.200 INFO    ] 2026-10-18 02:21:09
[2026-10-18 02:21:09,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:21:09,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:21:09,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:21:09,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:21:09,622.622 INFO    ] time= 18/10/2026 02:21:09
[2026-10-18 02:21:09,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:21:09,633.633 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:21:09,711.711 INFO    ] No existing commands found in stream
[2026-10-18 02:21:14,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:21:14,734.734 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-18 02:21:16,583.583 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:21:16,586.586 INFO    ] Checking for system updates...
[2026-10-18 02:21:16,625.625 INFO    ] 200
[2026-10-18 02:21:16,628.628 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:21:16,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:21:16,693.693 INFO    ] No update needed
[2026-10-18 02:21:16,696.696 INFO    ] Checking for camera pi updates...
[2026-10-18 02:21:16,730.730 INFO    ] 200
[2026-10-18 02:21:16,732.732 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:21:16,781.781 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:21:26,796.796 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:21:26,831.831 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:21:26,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:21:26,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:21:26,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:21:26,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:21:28,894.894 INFO    ] ================================================
[2026-10-18 02:21:28,909.909 INFO    ] Launching Daemon at Sun Oct 18 02:21:28 IST 2026
[2026-10-18 02:21:28,920.920 INFO    ] ================================================
[2026-10-18 02:21:29,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:21:29
[2026-10-18 02:21:30,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:21:30,383.383 INFO    ] Initializing speech engine...
[2026-10-18 02:21:30,393.393 INFO    ] 2026-10-18 02:21:30
[2026-10-18 02:21:30,643.643 INFO    ] 2026-10-18 02:21:30
[2026-10-18 02:21:30,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:21:30,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:21:30,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:21:31,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:21:31,124.124 INFO    ] time= 18/10/2026 02:21:31
[2026-10-18 02:21:31,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:21:31,210.210 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:21:31,344.344 INFO    ] No existing commands found in stream
[2026-10-18 02:21:36,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:21:36,372.372 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-18 02:21:37,942.942 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:21:37,945.945 INFO    ] Checking for system updates...
[2026-10-18 02:21:37,984.984 INFO    ] 200
[2026-10-18 02:21:37,987.987 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:21:38,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:21:38,049.049 INFO    ] No update needed
[2026-10-18 02:21:38,051.051 INFO    ] Checking for camera pi updates...
[2026-10-18 02:21:38,085.085 INFO    ] 200
[2026-10-18 02:21:38,088.088 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:21:38,133.133 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:21:48,146.146 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:21:48,181.181 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:21:48,191.191 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:21:48,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:21:48,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:21:48,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:21:50,246.246 INFO    ] ================================================
[2026-10-18 02:21:50,261.261 INFO    ] Launching Daemon at Sun Oct 18 02:21:50 IST 2026
[2026-10-18 02:21:50,271.271 INFO    ] ================================================
[2026-10-18 02:21:50,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:21:50
[2026-10-18 02:21:51,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:21:51,729.729 INFO    ] Initializing speech engine...
[2026-10-18 02:21:51,738.738 INFO    ] 2026-10-18 02:21:51
[2026-10-18 02:21:51,985.985 INFO    ] 2026-10-18 02:21:51
[2026-10-18 02:21:52,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:21:52,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:21:52,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:21:52,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:21:52,419.419 INFO    ] time= 18/10/2026 02:21:52
[2026-10-18 02:21:52,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:21:52,447.447 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:21:52,575.575 INFO    ] No existing commands found in stream
[2026-10-18 02:21:57,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:21:57,603.603 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-18 02:22:00,698.698 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 02:22:00,701.701 INFO    ] Checking for system updates...
[2026-10-18 02:22:00,738.738 INFO    ] 200
[2026-10-18 02:22:00,740.740 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:22:00,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:22:00,796.796 INFO    ] No update needed
[2026-10-18 02:22:00,799.799 INFO    ] Checking for camera pi updates...
[2026-10-18 02:22:00,833.833 INFO    ] 200
[2026-10-18 02:22:00,836.836 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:22:00,877.877 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:22:10,892.892 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:22:10,928.928 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:22:10,938.938 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:22:10,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:22:10,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:22:10,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:22:12,991.991 INFO    ] ================================================
[2026-10-18 02:22:13,007.007 INFO    ] Launching Daemon at Sun Oct 18 02:22:13 IST 2026
[2026-10-18 02:22:13,018.018 INFO    ] ================================================
[2026-10-18 02:22:13,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:22:13
[2026-10-18 02:22:14,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:22:14,433.433 INFO    ] Initializing speech engine...
[2026-10-18 02:22:14,442.442 INFO    ] 2026-10-18 02:22:14
[2026-10-18 02:22:14,733.733 INFO    ] 2026-10-18 02:22:14
[2026-10-18 02:22:14,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:22:14,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:22:14,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:22:15,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:22:15,154.154 INFO    ] time= 18/10/2026 02:22:15
[2026-10-18 02:22:15,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:22:15,228.228 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:22:15,363.363 INFO    ] No existing commands found in stream
[2026-10-18 02:22:20,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:22:20,385.385 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-18 02:22:21,367.367 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:22:21,369.369 INFO    ] Checking for system updates...
[2026-10-18 02:22:21,408.408 INFO    ] 200
[2026-10-18 02:22:21,411.411 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:22:21,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:22:21,471.471 INFO    ] No update needed
[2026-10-18 02:22:21,473.473 INFO    ] Checking for camera pi updates...
[2026-10-18 02:22:21,514.514 INFO    ] 200
[2026-10-18 02:22:21,516.516 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:22:21,572.572 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:22:31,590.590 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:22:31,626.626 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:22:31,637.637 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:22:31,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:22:31,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:22:31,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:22:33,694.694 INFO    ] ================================================
[2026-10-18 02:22:33,711.711 INFO    ] Launching Daemon at Sun Oct 18 02:22:33 IST 2026
[2026-10-18 02:22:33,723.723 INFO    ] ================================================
[2026-10-18 02:22:34,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:22:34
[2026-10-18 02:22:34,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:22:35,231.231 INFO    ] Initializing speech engine...
[2026-10-18 02:22:35,254.254 INFO    ] 2026-10-18 02:22:35
[2026-10-18 02:22:35,516.516 INFO    ] 2026-10-18 02:22:35
[2026-10-18 02:22:35,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:22:35,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:22:35,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:22:35,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:22:36,010.010 INFO    ] time= 18/10/2026 02:22:35
[2026-10-18 02:22:36,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:22:36,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:22:36,227.227 INFO    ] No existing commands found in stream
[2026-10-18 02:22:41,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:22:41,255.255 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-18 02:22:47,115.115 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:22:47,118.118 INFO    ] Checking for system updates...
[2026-10-18 02:22:47,159.159 INFO    ] 200
[2026-10-18 02:22:47,161.161 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:22:47,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:22:47,224.224 INFO    ] No update needed
[2026-10-18 02:22:47,226.226 INFO    ] Checking for camera pi updates...
[2026-10-18 02:22:47,260.260 INFO    ] 200
[2026-10-18 02:22:47,262.262 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:22:47,313.313 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:22:57,329.329 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:22:57,364.364 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:22:57,374.374 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:22:57,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:22:57,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:22:57,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:22:59,429.429 INFO    ] ================================================
[2026-10-18 02:22:59,445.445 INFO    ] Launching Daemon at Sun Oct 18 02:22:59 IST 2026
[2026-10-18 02:22:59,456.456 INFO    ] ================================================
[2026-10-18 02:23:00,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:23:00
[2026-10-18 02:23:00,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:23:01,100.100 INFO    ] Initializing speech engine...
[2026-10-18 02:23:01,114.114 INFO    ] 2026-10-18 02:23:01
[2026-10-18 02:23:01,537.537 INFO    ] 2026-10-18 02:23:01
[2026-10-18 02:23:01,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:23:01,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:23:01,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:23:02,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:23:02,054.054 INFO    ] time= 18/10/2026 02:23:02
[2026-10-18 02:23:02,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:23:02,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:23:02,318.318 INFO    ] No existing commands found in stream
[2026-10-18 02:23:07,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:23:07,353.353 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-18 02:23:08,187.187 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:23:08,189.189 INFO    ] Checking for system updates...
[2026-10-18 02:23:08,226.226 INFO    ] 200
[2026-10-18 02:23:08,229.229 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:23:08,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:23:08,285.285 INFO    ] No update needed
[2026-10-18 02:23:08,288.288 INFO    ] Checking for camera pi updates...
[2026-10-18 02:23:08,323.323 INFO    ] 200
[2026-10-18 02:23:08,326.326 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:23:08,367.367 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:23:18,383.383 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:23:18,424.424 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:23:18,435.435 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:23:18,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:23:18,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:23:18,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:23:20,492.492 INFO    ] ================================================
[2026-10-18 02:23:20,507.507 INFO    ] Launching Daemon at Sun Oct 18 02:23:20 IST 2026
[2026-10-18 02:23:20,518.518 INFO    ] ================================================
[2026-10-18 02:23:21,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:23:21
[2026-10-18 02:23:21,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:23:22,205.205 INFO    ] Initializing speech engine...
[2026-10-18 02:23:22,214.214 INFO    ] 2026-10-18 02:23:22
[2026-10-18 02:23:22,501.501 INFO    ] 2026-10-18 02:23:22
[2026-10-18 02:23:22,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:23:22,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:23:22,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:23:22,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:23:23,047.047 INFO    ] time= 18/10/2026 02:23:23
[2026-10-18 02:23:23,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:23:23,076.076 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:23:23,204.204 INFO    ] No existing commands found in stream
[2026-10-18 02:23:28,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:23:28,227.227 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-18 02:23:29,008.008 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:23:29,011.011 INFO    ] Checking for system updates...
[2026-10-18 02:23:29,052.052 INFO    ] 200
[2026-10-18 02:23:29,055.055 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:23:29,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:23:29,121.121 INFO    ] No update needed
[2026-10-18 02:23:29,123.123 INFO    ] Checking for camera pi updates...
[2026-10-18 02:23:29,162.162 INFO    ] 200
[2026-10-18 02:23:29,165.165 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:23:29,217.217 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:23:39,233.233 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:23:39,274.274 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:23:39,286.286 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:23:39,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:23:39,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:23:39,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:23:41,342.342 INFO    ] ================================================
[2026-10-18 02:23:41,358.358 INFO    ] Launching Daemon at Sun Oct 18 02:23:41 IST 2026
[2026-10-18 02:23:41,369.369 INFO    ] ================================================
[2026-10-18 02:23:41,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:23:41
[2026-10-18 02:23:42,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:23:42,832.832 INFO    ] Initializing speech engine...
[2026-10-18 02:23:42,840.840 INFO    ] 2026-10-18 02:23:42
[2026-10-18 02:23:43,108.108 INFO    ] 2026-10-18 02:23:43
[2026-10-18 02:23:43,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:23:43,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:23:43,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:23:43,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:23:43,578.578 INFO    ] time= 18/10/2026 02:23:43
[2026-10-18 02:23:43,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:23:43,685.685 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:23:43,802.802 INFO    ] No existing commands found in stream
[2026-10-18 02:23:48,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:23:48,831.831 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-18 02:23:52,494.494 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 02:23:52,496.496 INFO    ] Checking for system updates...
[2026-10-18 02:23:52,532.532 INFO    ] 200
[2026-10-18 02:23:52,534.534 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:23:52,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:23:52,591.591 INFO    ] No update needed
[2026-10-18 02:23:52,593.593 INFO    ] Checking for camera pi updates...
[2026-10-18 02:23:52,627.627 INFO    ] 200
[2026-10-18 02:23:52,630.630 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:23:52,669.669 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:24:02,684.684 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:24:02,726.726 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:24:02,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:24:02,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:24:02,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:24:02,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:24:04,800.800 INFO    ] ================================================
[2026-10-18 02:24:04,817.817 INFO    ] Launching Daemon at Sun Oct 18 02:24:04 IST 2026
[2026-10-18 02:24:04,828.828 INFO    ] ================================================
[2026-10-18 02:24:05,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:24:05
[2026-10-18 02:24:06,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:24:06,316.316 INFO    ] Initializing speech engine...
[2026-10-18 02:24:06,336.336 INFO    ] 2026-10-18 02:24:06
[2026-10-18 02:24:06,585.585 INFO    ] 2026-10-18 02:24:06
[2026-10-18 02:24:06,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:24:06,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:24:06,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:24:07,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:24:07,083.083 INFO    ] time= 18/10/2026 02:24:07
[2026-10-18 02:24:07,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:24:07,181.181 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:24:07,293.293 INFO    ] No existing commands found in stream
[2026-10-18 02:24:12,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:24:12,322.322 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-18 02:24:15,457.457 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 02:24:15,460.460 INFO    ] Checking for system updates...
[2026-10-18 02:24:15,507.507 INFO    ] 200
[2026-10-18 02:24:15,509.509 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:24:15,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:24:15,564.564 INFO    ] No update needed
[2026-10-18 02:24:15,567.567 INFO    ] Checking for camera pi updates...
[2026-10-18 02:24:15,606.606 INFO    ] 200
[2026-10-18 02:24:15,608.608 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:24:15,659.659 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:24:25,675.675 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:24:25,715.715 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:24:25,727.727 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:24:25,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:24:25,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:24:25,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:24:27,781.781 INFO    ] ================================================
[2026-10-18 02:24:27,797.797 INFO    ] Launching Daemon at Sun Oct 18 02:24:27 IST 2026
[2026-10-18 02:24:27,808.808 INFO    ] ================================================
[2026-10-18 02:24:28,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:24:28
[2026-10-18 02:24:29,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:24:29,454.454 INFO    ] Initializing speech engine...
[2026-10-18 02:24:29,461.461 INFO    ] 2026-10-18 02:24:29
[2026-10-18 02:24:29,751.751 INFO    ] 2026-10-18 02:24:29
[2026-10-18 02:24:29,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:24:30,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:24:30,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:24:30,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:24:30,294.294 INFO    ] time= 18/10/2026 02:24:30
[2026-10-18 02:24:30,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:24:30,341.341 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:24:30,454.454 INFO    ] No existing commands found in stream
[2026-10-18 02:24:35,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:24:35,488.488 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-18 02:24:38,935.935 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:24:38,938.938 INFO    ] Checking for system updates...
[2026-10-18 02:24:38,974.974 INFO    ] 200
[2026-10-18 02:24:38,977.977 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:24:39,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:24:39,039.039 INFO    ] No update needed
[2026-10-18 02:24:39,042.042 INFO    ] Checking for camera pi updates...
[2026-10-18 02:24:39,080.080 INFO    ] 200
[2026-10-18 02:24:39,083.083 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:24:39,128.128 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:24:49,144.144 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:24:49,184.184 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:24:49,195.195 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:24:49,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:24:49,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:24:49,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:24:51,251.251 INFO    ] ================================================
[2026-10-18 02:24:51,267.267 INFO    ] Launching Daemon at Sun Oct 18 02:24:51 IST 2026
[2026-10-18 02:24:51,279.279 INFO    ] ================================================
[2026-10-18 02:24:51,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:24:51
[2026-10-18 02:24:52,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:24:52,865.865 INFO    ] Initializing speech engine...
[2026-10-18 02:24:52,873.873 INFO    ] 2026-10-18 02:24:52
[2026-10-18 02:24:53,138.138 INFO    ] 2026-10-18 02:24:53
[2026-10-18 02:24:53,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:24:53,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:24:53,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:24:53,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:24:53,700.700 INFO    ] time= 18/10/2026 02:24:53
[2026-10-18 02:24:53,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:24:53,729.729 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:24:53,884.884 INFO    ] No existing commands found in stream
[2026-10-18 02:24:58,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:24:58,918.918 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-18 02:25:03,359.359 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:25:03,362.362 INFO    ] Checking for system updates...
[2026-10-18 02:25:03,399.399 INFO    ] 200
[2026-10-18 02:25:03,402.402 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:25:03,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:25:03,462.462 INFO    ] No update needed
[2026-10-18 02:25:03,465.465 INFO    ] Checking for camera pi updates...
[2026-10-18 02:25:03,509.509 INFO    ] 200
[2026-10-18 02:25:03,512.512 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:25:03,561.561 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:25:13,577.577 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:25:13,612.612 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:25:13,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:25:13,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:25:13,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:25:13,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:25:15,675.675 INFO    ] ================================================
[2026-10-18 02:25:15,691.691 INFO    ] Launching Daemon at Sun Oct 18 02:25:15 IST 2026
[2026-10-18 02:25:15,702.702 INFO    ] ================================================
[2026-10-18 02:25:16,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:25:16
[2026-10-18 02:25:16,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:25:17,112.112 INFO    ] Initializing speech engine...
[2026-10-18 02:25:17,121.121 INFO    ] 2026-10-18 02:25:17
[2026-10-18 02:25:17,414.414 INFO    ] 2026-10-18 02:25:17
[2026-10-18 02:25:17,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:25:17,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:25:17,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:25:17,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:25:17,940.940 INFO    ] time= 18/10/2026 02:25:17
[2026-10-18 02:25:17,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:25:18,044.044 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:25:18,184.184 INFO    ] No existing commands found in stream
[2026-10-18 02:25:23,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:25:23,214.214 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-18 02:25:26,088.088 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:25:26,090.090 INFO    ] Checking for system updates...
[2026-10-18 02:25:26,126.126 INFO    ] 200
[2026-10-18 02:25:26,128.128 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:25:26,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:25:26,183.183 INFO    ] No update needed
[2026-10-18 02:25:26,186.186 INFO    ] Checking for camera pi updates...
[2026-10-18 02:25:26,223.223 INFO    ] 200
[2026-10-18 02:25:26,225.225 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:25:26,265.265 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:25:36,281.281 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:25:36,317.317 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:25:36,327.327 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:25:36,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:25:36,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:25:36,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:25:38,379.379 INFO    ] ================================================
[2026-10-18 02:25:38,394.394 INFO    ] Launching Daemon at Sun Oct 18 02:25:38 IST 2026
[2026-10-18 02:25:38,405.405 INFO    ] ================================================
[2026-10-18 02:25:39,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:25:39
[2026-10-18 02:25:39,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:25:40,018.018 INFO    ] Initializing speech engine...
[2026-10-18 02:25:40,025.025 INFO    ] 2026-10-18 02:25:40
[2026-10-18 02:25:40,308.308 INFO    ] 2026-10-18 02:25:40
[2026-10-18 02:25:40,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:25:40,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:25:40,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:25:40,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:25:40,868.868 INFO    ] time= 18/10/2026 02:25:40
[2026-10-18 02:25:40,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:25:40,906.906 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:25:41,024.024 INFO    ] No existing commands found in stream
[2026-10-18 02:25:46,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:25:46,058.058 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-18 02:25:50,096.096 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 02:25:50,099.099 INFO    ] Checking for system updates...
[2026-10-18 02:25:50,136.136 INFO    ] 200
[2026-10-18 02:25:50,139.139 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:25:50,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:25:50,194.194 INFO    ] No update needed
[2026-10-18 02:25:50,197.197 INFO    ] Checking for camera pi updates...
[2026-10-18 02:25:50,234.234 INFO    ] 200
[2026-10-18 02:25:50,237.237 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:25:50,276.276 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:26:00,292.292 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:26:00,327.327 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:26:00,336.336 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:26:00,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:26:00,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:26:00,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:26:02,392.392 INFO    ] ================================================
[2026-10-18 02:26:02,409.409 INFO    ] Launching Daemon at Sun Oct 18 02:26:02 IST 2026
[2026-10-18 02:26:02,422.422 INFO    ] ================================================
[2026-10-18 02:26:03,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:26:03
[2026-10-18 02:26:03,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:26:03,958.958 INFO    ] Initializing speech engine...
[2026-10-18 02:26:03,974.974 INFO    ] 2026-10-18 02:26:03
[2026-10-18 02:26:04,239.239 INFO    ] 2026-10-18 02:26:04
[2026-10-18 02:26:04,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:26:04,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:26:04,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:26:04,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:26:04,722.722 INFO    ] time= 18/10/2026 02:26:04
[2026-10-18 02:26:04,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:26:04,820.820 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:26:04,916.916 INFO    ] No existing commands found in stream
[2026-10-18 02:26:09,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:26:09,931.931 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-18 02:26:13,967.967 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:26:13,970.970 INFO    ] Checking for system updates...
[2026-10-18 02:26:14,005.005 INFO    ] 200
[2026-10-18 02:26:14,008.008 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:26:14,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:26:14,062.062 INFO    ] No update needed
[2026-10-18 02:26:14,064.064 INFO    ] Checking for camera pi updates...
[2026-10-18 02:26:14,097.097 INFO    ] 200
[2026-10-18 02:26:14,100.100 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:26:14,139.139 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:26:24,154.154 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:26:24,189.189 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:26:24,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:26:24,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:26:24,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:26:24,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:26:26,250.250 INFO    ] ================================================
[2026-10-18 02:26:26,265.265 INFO    ] Launching Daemon at Sun Oct 18 02:26:26 IST 2026
[2026-10-18 02:26:26,276.276 INFO    ] ================================================
[2026-10-18 02:26:26,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:26:26
[2026-10-18 02:26:27,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:26:27,731.731 INFO    ] Initializing speech engine...
[2026-10-18 02:26:27,752.752 INFO    ] 2026-10-18 02:26:27
[2026-10-18 02:26:28,012.012 INFO    ] 2026-10-18 02:26:28
[2026-10-18 02:26:28,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:26:28,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:26:28,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:26:28,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:26:28,492.492 INFO    ] time= 18/10/2026 02:26:28
[2026-10-18 02:26:28,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:26:28,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:26:28,687.687 INFO    ] No existing commands found in stream
[2026-10-18 02:26:33,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:26:33,702.702 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-18 02:26:35,954.954 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:26:35,957.957 INFO    ] Checking for system updates...
[2026-10-18 02:26:35,992.992 INFO    ] 200
[2026-10-18 02:26:35,994.994 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:26:36,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:26:36,048.048 INFO    ] No update needed
[2026-10-18 02:26:36,054.054 INFO    ] Checking for camera pi updates...
[2026-10-18 02:26:36,099.099 INFO    ] 200
[2026-10-18 02:26:36,101.101 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:26:36,141.141 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:26:46,153.153 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:26:46,187.187 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:26:46,197.197 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:26:46,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:26:46,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:26:46,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:26:48,249.249 INFO    ] ================================================
[2026-10-18 02:26:48,264.264 INFO    ] Launching Daemon at Sun Oct 18 02:26:48 IST 2026
[2026-10-18 02:26:48,274.274 INFO    ] ================================================
[2026-10-18 02:26:48,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:26:48
[2026-10-18 02:26:49,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:26:49,716.716 INFO    ] Initializing speech engine...
[2026-10-18 02:26:49,725.725 INFO    ] 2026-10-18 02:26:49
[2026-10-18 02:26:49,973.973 INFO    ] 2026-10-18 02:26:49
[2026-10-18 02:26:50,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:26:50,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:26:50,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:26:50,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:26:50,522.522 INFO    ] time= 18/10/2026 02:26:50
[2026-10-18 02:26:50,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:26:50,554.554 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:26:50,708.708 INFO    ] No existing commands found in stream
[2026-10-18 02:26:55,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:26:55,741.741 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-18 02:26:57,958.958 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:26:57,961.961 INFO    ] Checking for system updates...
[2026-10-18 02:26:58,001.001 INFO    ] 200
[2026-10-18 02:26:58,004.004 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:26:58,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:26:58,063.063 INFO    ] No update needed
[2026-10-18 02:26:58,066.066 INFO    ] Checking for camera pi updates...
[2026-10-18 02:26:58,100.100 INFO    ] 200
[2026-10-18 02:26:58,103.103 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:26:58,143.143 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:27:08,158.158 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:27:08,196.196 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:27:08,207.207 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:27:08,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:27:08,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:27:08,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:27:10,261.261 INFO    ] ================================================
[2026-10-18 02:27:10,276.276 INFO    ] Launching Daemon at Sun Oct 18 02:27:10 IST 2026
[2026-10-18 02:27:10,286.286 INFO    ] ================================================
[2026-10-18 02:27:10,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:27:10
[2026-10-18 02:27:11,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:27:11,715.715 INFO    ] Initializing speech engine...
[2026-10-18 02:27:11,722.722 INFO    ] 2026-10-18 02:27:11
[2026-10-18 02:27:12,012.012 INFO    ] 2026-10-18 02:27:11
[2026-10-18 02:27:12,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:27:12,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:27:12,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:27:12,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:27:12,531.531 INFO    ] time= 18/10/2026 02:27:12
[2026-10-18 02:27:12,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:27:12,614.614 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:27:12,767.767 INFO    ] No existing commands found in stream
[2026-10-18 02:27:17,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:27:17,792.792 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-18 02:27:21,450.450 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:27:21,453.453 INFO    ] Checking for system updates...
[2026-10-18 02:27:21,488.488 INFO    ] 200
[2026-10-18 02:27:21,490.490 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:27:21,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:27:21,550.550 INFO    ] No update needed
[2026-10-18 02:27:21,552.552 INFO    ] Checking for camera pi updates...
[2026-10-18 02:27:21,586.586 INFO    ] 200
[2026-10-18 02:27:21,589.589 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:27:21,629.629 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:27:31,643.643 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:27:31,678.678 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:27:31,687.687 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:27:31,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:27:31,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:27:31,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:27:33,739.739 INFO    ] ================================================
[2026-10-18 02:27:33,754.754 INFO    ] Launching Daemon at Sun Oct 18 02:27:33 IST 2026
[2026-10-18 02:27:33,765.765 INFO    ] ================================================
[2026-10-18 02:27:34,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:27:34
[2026-10-18 02:27:34,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:27:35,228.228 INFO    ] Initializing speech engine...
[2026-10-18 02:27:35,238.238 INFO    ] 2026-10-18 02:27:35
[2026-10-18 02:27:35,496.496 INFO    ] 2026-10-18 02:27:35
[2026-10-18 02:27:35,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:27:35,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:27:35,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:27:36,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:27:36,041.041 INFO    ] time= 18/10/2026 02:27:36
[2026-10-18 02:27:36,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:27:36,068.068 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:27:36,197.197 INFO    ] No existing commands found in stream
[2026-10-18 02:27:41,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:27:41,214.214 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-18 02:27:43,492.492 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 02:27:43,495.495 INFO    ] Checking for system updates...
[2026-10-18 02:27:43,531.531 INFO    ] 200
[2026-10-18 02:27:43,534.534 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:27:43,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:27:43,593.593 INFO    ] No update needed
[2026-10-18 02:27:43,596.596 INFO    ] Checking for camera pi updates...
[2026-10-18 02:27:43,632.632 INFO    ] 200
[2026-10-18 02:27:43,635.635 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:27:43,675.675 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:27:53,688.688 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:27:53,724.724 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:27:53,733.733 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:27:53,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:27:53,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:27:53,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:27:55,787.787 INFO    ] ================================================
[2026-10-18 02:27:55,802.802 INFO    ] Launching Daemon at Sun Oct 18 02:27:55 IST 2026
[2026-10-18 02:27:55,812.812 INFO    ] ================================================
[2026-10-18 02:27:56,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:27:56
[2026-10-18 02:27:56,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:27:57,275.275 INFO    ] Initializing speech engine...
[2026-10-18 02:27:57,282.282 INFO    ] 2026-10-18 02:27:57
[2026-10-18 02:27:57,542.542 INFO    ] 2026-10-18 02:27:57
[2026-10-18 02:27:57,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:27:57,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:27:57,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:27:57,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:27:57,995.995 INFO    ] time= 18/10/2026 02:27:57
[2026-10-18 02:27:58,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:27:58,098.098 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:27:58,233.233 INFO    ] No existing commands found in stream
[2026-10-18 02:28:03,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:28:03,258.258 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-18 02:28:08,990.990 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:28:08,993.993 INFO    ] Checking for system updates...
[2026-10-18 02:28:09,028.028 INFO    ] 200
[2026-10-18 02:28:09,031.031 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:28:09,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:28:09,085.085 INFO    ] No update needed
[2026-10-18 02:28:09,088.088 INFO    ] Checking for camera pi updates...
[2026-10-18 02:28:09,122.122 INFO    ] 200
[2026-10-18 02:28:09,125.125 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:28:09,167.167 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:28:19,182.182 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:28:19,218.218 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:28:19,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:28:19,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:28:19,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:28:19,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:28:21,280.280 INFO    ] ================================================
[2026-10-18 02:28:21,296.296 INFO    ] Launching Daemon at Sun Oct 18 02:28:21 IST 2026
[2026-10-18 02:28:21,307.307 INFO    ] ================================================
[2026-10-18 02:28:21,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:28:21
[2026-10-18 02:28:22,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:28:22,757.757 INFO    ] Initializing speech engine...
[2026-10-18 02:28:22,773.773 INFO    ] 2026-10-18 02:28:22
[2026-10-18 02:28:23,059.059 INFO    ] 2026-10-18 02:28:23
[2026-10-18 02:28:23,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:28:23,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:28:23,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:28:23,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:28:23,544.544 INFO    ] time= 18/10/2026 02:28:23
[2026-10-18 02:28:23,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:28:23,614.614 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:28:23,745.745 INFO    ] No existing commands found in stream
[2026-10-18 02:28:28,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:28:28,759.759 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-18 02:28:33,088.088 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:28:33,091.091 INFO    ] Checking for system updates...
[2026-10-18 02:28:33,126.126 INFO    ] 200
[2026-10-18 02:28:33,129.129 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:28:33,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:28:33,190.190 INFO    ] No update needed
[2026-10-18 02:28:33,192.192 INFO    ] Checking for camera pi updates...
[2026-10-18 02:28:33,225.225 INFO    ] 200
[2026-10-18 02:28:33,228.228 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:28:33,268.268 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:28:43,283.283 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:28:43,319.319 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:28:43,328.328 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:28:43,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:28:43,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:28:43,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:28:45,381.381 INFO    ] ================================================
[2026-10-18 02:28:45,397.397 INFO    ] Launching Daemon at Sun Oct 18 02:28:45 IST 2026
[2026-10-18 02:28:45,408.408 INFO    ] ================================================
[2026-10-18 02:28:45,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:28:45
[2026-10-18 02:28:46,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:28:46,858.858 INFO    ] Initializing speech engine...
[2026-10-18 02:28:46,873.873 INFO    ] 2026-10-18 02:28:46
[2026-10-18 02:28:47,158.158 INFO    ] 2026-10-18 02:28:47
[2026-10-18 02:28:47,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:28:47,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:28:47,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:28:47,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:28:47,681.681 INFO    ] time= 18/10/2026 02:28:47
[2026-10-18 02:28:47,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:28:47,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:28:47,929.929 INFO    ] No existing commands found in stream
[2026-10-18 02:28:52,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:28:52,958.958 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-18 02:28:56,806.806 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:28:56,809.809 INFO    ] Checking for system updates...
[2026-10-18 02:28:56,845.845 INFO    ] 200
[2026-10-18 02:28:56,848.848 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:28:56,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:28:56,902.902 INFO    ] No update needed
[2026-10-18 02:28:56,905.905 INFO    ] Checking for camera pi updates...
[2026-10-18 02:28:56,938.938 INFO    ] 200
[2026-10-18 02:28:56,940.940 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:28:56,984.984 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:29:07,000.000 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:29:07,036.036 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:29:07,046.046 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:29:07,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:29:07,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:29:07,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:29:09,099.099 INFO    ] ================================================
[2026-10-18 02:29:09,115.115 INFO    ] Launching Daemon at Sun Oct 18 02:29:09 IST 2026
[2026-10-18 02:29:09,126.126 INFO    ] ================================================
[2026-10-18 02:29:09,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:29:09
[2026-10-18 02:29:10,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:29:10,583.583 INFO    ] Initializing speech engine...
[2026-10-18 02:29:10,592.592 INFO    ] 2026-10-18 02:29:10
[2026-10-18 02:29:10,843.843 INFO    ] 2026-10-18 02:29:10
[2026-10-18 02:29:10,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:29:11,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:29:11,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:29:11,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:29:11,399.399 INFO    ] time= 18/10/2026 02:29:11
[2026-10-18 02:29:11,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:29:11,423.423 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:29:11,553.553 INFO    ] No existing commands found in stream
[2026-10-18 02:29:16,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:29:16,568.568 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-18 02:29:20,492.492 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 02:29:20,495.495 INFO    ] Checking for system updates...
[2026-10-18 02:29:20,534.534 INFO    ] 200
[2026-10-18 02:29:20,537.537 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:29:20,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:29:20,591.591 INFO    ] No update needed
[2026-10-18 02:29:20,593.593 INFO    ] Checking for camera pi updates...
[2026-10-18 02:29:20,627.627 INFO    ] 200
[2026-10-18 02:29:20,629.629 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:29:20,671.671 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:29:30,686.686 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:29:30,722.722 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:29:30,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:29:30,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:29:30,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:29:30,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:29:32,789.789 INFO    ] ================================================
[2026-10-18 02:29:32,805.805 INFO    ] Launching Daemon at Sun Oct 18 02:29:32 IST 2026
[2026-10-18 02:29:32,816.816 INFO    ] ================================================
[2026-10-18 02:29:33,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:29:33
[2026-10-18 02:29:34,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:29:34,275.275 INFO    ] Initializing speech engine...
[2026-10-18 02:29:34,284.284 INFO    ] 2026-10-18 02:29:34
[2026-10-18 02:29:34,579.579 INFO    ] 2026-10-18 02:29:34
[2026-10-18 02:29:34,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:29:34,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:29:34,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:29:35,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:29:35,077.077 INFO    ] time= 18/10/2026 02:29:35
[2026-10-18 02:29:35,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:29:35,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:29:35,234.234 INFO    ] No existing commands found in stream
[2026-10-18 02:29:40,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:29:40,258.258 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-18 02:29:43,784.784 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:29:43,786.786 INFO    ] Checking for system updates...
[2026-10-18 02:29:43,826.826 INFO    ] 200
[2026-10-18 02:29:43,828.828 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:29:43,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:29:43,882.882 INFO    ] No update needed
[2026-10-18 02:29:43,885.885 INFO    ] Checking for camera pi updates...
[2026-10-18 02:29:43,918.918 INFO    ] 200
[2026-10-18 02:29:43,921.921 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:29:43,965.965 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:29:53,981.981 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:29:54,016.016 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:29:54,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:29:54,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:29:54,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:29:54,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:29:56,080.080 INFO    ] ================================================
[2026-10-18 02:29:56,095.095 INFO    ] Launching Daemon at Sun Oct 18 02:29:56 IST 2026
[2026-10-18 02:29:56,106.106 INFO    ] ================================================
[2026-10-18 02:29:56,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:29:56
[2026-10-18 02:29:57,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:29:57,621.621 INFO    ] Initializing speech engine...
[2026-10-18 02:29:57,630.630 INFO    ] 2026-10-18 02:29:57
[2026-10-18 02:29:57,924.924 INFO    ] 2026-10-18 02:29:57
[2026-10-18 02:29:57,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:29:58,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:29:58,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:29:58,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:29:58,451.451 INFO    ] time= 18/10/2026 02:29:58
[2026-10-18 02:29:58,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:29:58,529.529 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:29:58,660.660 INFO    ] No existing commands found in stream
[2026-10-18 02:30:03,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:30:03,691.691 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-18 02:30:08,167.167 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 02:30:08,169.169 INFO    ] Checking for system updates...
[2026-10-18 02:30:08,204.204 INFO    ] 200
[2026-10-18 02:30:08,207.207 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:30:08,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:30:08,261.261 INFO    ] No update needed
[2026-10-18 02:30:08,263.263 INFO    ] Checking for camera pi updates...
[2026-10-18 02:30:08,301.301 INFO    ] 200
[2026-10-18 02:30:08,303.303 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:30:08,343.343 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:30:18,358.358 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:30:18,393.393 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:30:18,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:30:18,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:30:18,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:30:18,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:30:20,456.456 INFO    ] ================================================
[2026-10-18 02:30:20,471.471 INFO    ] Launching Daemon at Sun Oct 18 02:30:20 IST 2026
[2026-10-18 02:30:20,482.482 INFO    ] ================================================
[2026-10-18 02:30:21,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:30:21
[2026-10-18 02:30:21,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:30:21,932.932 INFO    ] Initializing speech engine...
[2026-10-18 02:30:21,941.941 INFO    ] 2026-10-18 02:30:21
[2026-10-18 02:30:22,191.191 INFO    ] 2026-10-18 02:30:22
[2026-10-18 02:30:22,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:30:22,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:30:22,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:30:22,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:30:22,745.745 INFO    ] time= 18/10/2026 02:30:22
[2026-10-18 02:30:22,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:30:22,772.772 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:30:22,902.902 INFO    ] No existing commands found in stream
[2026-10-18 02:30:27,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:30:27,928.928 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-18 02:30:28,892.892 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:30:28,895.895 INFO    ] Checking for system updates...
[2026-10-18 02:30:28,931.931 INFO    ] 200
[2026-10-18 02:30:28,933.933 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:30:28,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:30:28,995.995 INFO    ] No update needed
[2026-10-18 02:30:28,998.998 INFO    ] Checking for camera pi updates...
[2026-10-18 02:30:29,032.032 INFO    ] 200
[2026-10-18 02:30:29,034.034 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:30:29,074.074 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:30:39,089.089 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:30:39,123.123 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:30:39,132.132 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:30:39,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:30:39,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:30:39,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:30:41,186.186 INFO    ] ================================================
[2026-10-18 02:30:41,201.201 INFO    ] Launching Daemon at Sun Oct 18 02:30:41 IST 2026
[2026-10-18 02:30:41,212.212 INFO    ] ================================================
[2026-10-18 02:30:41,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:30:41
[2026-10-18 02:30:42,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:30:42,781.781 INFO    ] Initializing speech engine...
[2026-10-18 02:30:42,790.790 INFO    ] 2026-10-18 02:30:42
[2026-10-18 02:30:43,041.041 INFO    ] 2026-10-18 02:30:43
[2026-10-18 02:30:43,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:30:43,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:30:43,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:30:43,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:30:43,557.557 INFO    ] time= 18/10/2026 02:30:43
[2026-10-18 02:30:43,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:30:43,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:30:43,763.763 INFO    ] No existing commands found in stream
[2026-10-18 02:30:48,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:30:48,783.783 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-18 02:30:51,482.482 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 02:30:51,486.486 INFO    ] Checking for system updates...
[2026-10-18 02:30:51,522.522 INFO    ] 200
[2026-10-18 02:30:51,525.525 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:30:51,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:30:51,581.581 INFO    ] No update needed
[2026-10-18 02:30:51,583.583 INFO    ] Checking for camera pi updates...
[2026-10-18 02:30:51,618.618 INFO    ] 200
[2026-10-18 02:30:51,621.621 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:30:51,667.667 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:31:01,683.683 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:31:01,728.728 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:31:01,740.740 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:31:01,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:31:01,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:31:01,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:31:03,803.803 INFO    ] ================================================
[2026-10-18 02:31:03,819.819 INFO    ] Launching Daemon at Sun Oct 18 02:31:03 IST 2026
[2026-10-18 02:31:03,829.829 INFO    ] ================================================
[2026-10-18 02:31:04,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:31:04
[2026-10-18 02:31:05,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:31:05,280.280 INFO    ] Initializing speech engine...
[2026-10-18 02:31:05,291.291 INFO    ] 2026-10-18 02:31:05
[2026-10-18 02:31:05,540.540 INFO    ] 2026-10-18 02:31:05
[2026-10-18 02:31:05,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:31:05,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:31:05,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:31:06,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:31:06,099.099 INFO    ] time= 18/10/2026 02:31:06
[2026-10-18 02:31:06,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:31:06,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:31:06,255.255 INFO    ] No existing commands found in stream
[2026-10-18 02:31:11,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:31:11,277.277 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-18 02:31:13,152.152 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:31:13,155.155 INFO    ] Checking for system updates...
[2026-10-18 02:31:13,194.194 INFO    ] 200
[2026-10-18 02:31:13,196.196 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:31:13,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:31:13,251.251 INFO    ] No update needed
[2026-10-18 02:31:13,253.253 INFO    ] Checking for camera pi updates...
[2026-10-18 02:31:13,286.286 INFO    ] 200
[2026-10-18 02:31:13,289.289 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:31:13,335.335 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:31:23,350.350 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:31:23,386.386 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:31:23,396.396 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:31:23,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:31:23,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:31:23,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:31:25,451.451 INFO    ] ================================================
[2026-10-18 02:31:25,466.466 INFO    ] Launching Daemon at Sun Oct 18 02:31:25 IST 2026
[2026-10-18 02:31:25,477.477 INFO    ] ================================================
[2026-10-18 02:31:26,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:31:26
[2026-10-18 02:31:26,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:31:26,918.918 INFO    ] Initializing speech engine...
[2026-10-18 02:31:26,933.933 INFO    ] 2026-10-18 02:31:26
[2026-10-18 02:31:27,187.187 INFO    ] 2026-10-18 02:31:27
[2026-10-18 02:31:27,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:31:27,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:31:27,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:31:27,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:31:27,684.684 INFO    ] time= 18/10/2026 02:31:27
[2026-10-18 02:31:27,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:31:27,759.759 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:31:27,906.906 INFO    ] No existing commands found in stream
[2026-10-18 02:31:32,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:31:32,929.929 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-18 02:31:36,963.963 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:31:36,966.966 INFO    ] Checking for system updates...
[2026-10-18 02:31:37,006.006 INFO    ] 200
[2026-10-18 02:31:37,009.009 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:31:37,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:31:37,068.068 INFO    ] No update needed
[2026-10-18 02:31:37,070.070 INFO    ] Checking for camera pi updates...
[2026-10-18 02:31:37,104.104 INFO    ] 200
[2026-10-18 02:31:37,107.107 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:31:37,153.153 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:31:47,166.166 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:31:47,206.206 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:31:47,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:31:47,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:31:47,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:31:47,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:31:49,273.273 INFO    ] ================================================
[2026-10-18 02:31:49,288.288 INFO    ] Launching Daemon at Sun Oct 18 02:31:49 IST 2026
[2026-10-18 02:31:49,299.299 INFO    ] ================================================
[2026-10-18 02:31:49,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:31:49
[2026-10-18 02:31:50,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:31:50,732.732 INFO    ] Initializing speech engine...
[2026-10-18 02:31:50,737.737 INFO    ] 2026-10-18 02:31:50
[2026-10-18 02:31:50,984.984 INFO    ] 2026-10-18 02:31:50
[2026-10-18 02:31:51,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:31:51,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:31:51,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:31:51,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:31:51,455.455 INFO    ] time= 18/10/2026 02:31:51
[2026-10-18 02:31:51,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:31:51,547.547 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:31:51,680.680 INFO    ] No existing commands found in stream
[2026-10-18 02:31:56,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:31:56,707.707 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-18 02:31:58,161.161 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:31:58,164.164 INFO    ] Checking for system updates...
[2026-10-18 02:31:58,201.201 INFO    ] 200
[2026-10-18 02:31:58,204.204 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:31:58,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:31:58,261.261 INFO    ] No update needed
[2026-10-18 02:31:58,264.264 INFO    ] Checking for camera pi updates...
[2026-10-18 02:31:58,298.298 INFO    ] 200
[2026-10-18 02:31:58,301.301 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:31:58,342.342 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:32:08,358.358 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:32:08,399.399 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:32:08,410.410 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:32:08,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:32:08,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:32:08,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:32:10,468.468 INFO    ] ================================================
[2026-10-18 02:32:10,483.483 INFO    ] Launching Daemon at Sun Oct 18 02:32:10 IST 2026
[2026-10-18 02:32:10,493.493 INFO    ] ================================================
[2026-10-18 02:32:11,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:32:11
[2026-10-18 02:32:11,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:32:11,915.915 INFO    ] Initializing speech engine...
[2026-10-18 02:32:11,924.924 INFO    ] 2026-10-18 02:32:11
[2026-10-18 02:32:12,170.170 INFO    ] 2026-10-18 02:32:12
[2026-10-18 02:32:12,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:32:12,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:32:12,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:32:12,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:32:12,671.671 INFO    ] time= 18/10/2026 02:32:12
[2026-10-18 02:32:12,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:32:12,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:32:12,878.878 INFO    ] No existing commands found in stream
[2026-10-18 02:32:17,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:32:17,895.895 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-18 02:32:18,486.486 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:32:18,488.488 INFO    ] Checking for system updates...
[2026-10-18 02:32:18,528.528 INFO    ] 200
[2026-10-18 02:32:18,530.530 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:32:18,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:32:18,584.584 INFO    ] No update needed
[2026-10-18 02:32:18,587.587 INFO    ] Checking for camera pi updates...
[2026-10-18 02:32:18,624.624 INFO    ] 200
[2026-10-18 02:32:18,627.627 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:32:18,667.667 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:32:28,683.683 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:32:28,717.717 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:32:28,727.727 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:32:28,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:32:28,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:32:28,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:32:30,781.781 INFO    ] ================================================
[2026-10-18 02:32:30,796.796 INFO    ] Launching Daemon at Sun Oct 18 02:32:30 IST 2026
[2026-10-18 02:32:30,807.807 INFO    ] ================================================
[2026-10-18 02:32:31,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:32:31
[2026-10-18 02:32:32,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:32:32,362.362 INFO    ] Initializing speech engine...
[2026-10-18 02:32:32,370.370 INFO    ] 2026-10-18 02:32:32
[2026-10-18 02:32:32,649.649 INFO    ] 2026-10-18 02:32:32
[2026-10-18 02:32:32,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:32:32,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:32:32,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:32:33,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:32:33,150.150 INFO    ] time= 18/10/2026 02:32:33
[2026-10-18 02:32:33,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:32:33,238.238 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:32:33,377.377 INFO    ] No existing commands found in stream
[2026-10-18 02:32:38,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:32:38,401.401 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-18 02:32:41,832.832 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:32:41,835.835 INFO    ] Checking for system updates...
[2026-10-18 02:32:41,871.871 INFO    ] 200
[2026-10-18 02:32:41,873.873 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:32:41,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:32:41,939.939 INFO    ] No update needed
[2026-10-18 02:32:41,942.942 INFO    ] Checking for camera pi updates...
[2026-10-18 02:32:41,977.977 INFO    ] 200
[2026-10-18 02:32:41,980.980 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:32:42,026.026 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:32:52,042.042 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:32:52,082.082 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:32:52,093.093 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:32:52,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:32:52,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:32:52,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:32:54,150.150 INFO    ] ================================================
[2026-10-18 02:32:54,165.165 INFO    ] Launching Daemon at Sun Oct 18 02:32:54 IST 2026
[2026-10-18 02:32:54,176.176 INFO    ] ================================================
[2026-10-18 02:32:54,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:32:54
[2026-10-18 02:32:55,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:32:55,606.606 INFO    ] Initializing speech engine...
[2026-10-18 02:32:55,615.615 INFO    ] 2026-10-18 02:32:55
[2026-10-18 02:32:55,875.875 INFO    ] 2026-10-18 02:32:55
[2026-10-18 02:32:55,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:32:56,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:32:56,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:32:56,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:32:56,397.397 INFO    ] time= 18/10/2026 02:32:56
[2026-10-18 02:32:56,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:32:56,431.431 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:32:56,572.572 INFO    ] No existing commands found in stream
[2026-10-18 02:33:01,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:33:01,591.591 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-18 02:33:02,627.627 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:33:02,630.630 INFO    ] Checking for system updates...
[2026-10-18 02:33:02,692.692 INFO    ] 200
[2026-10-18 02:33:02,695.695 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:33:02,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:33:02,757.757 INFO    ] No update needed
[2026-10-18 02:33:02,761.761 INFO    ] Checking for camera pi updates...
[2026-10-18 02:33:02,803.803 INFO    ] 200
[2026-10-18 02:33:02,806.806 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:33:02,860.860 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:33:12,875.875 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:33:12,911.911 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:33:12,920.920 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:33:12,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:33:12,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:33:12,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:33:14,975.975 INFO    ] ================================================
[2026-10-18 02:33:14,990.990 INFO    ] Launching Daemon at Sun Oct 18 02:33:14 IST 2026
[2026-10-18 02:33:15,001.001 INFO    ] ================================================
[2026-10-18 02:33:15,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:33:15
[2026-10-18 02:33:16,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:33:16,613.613 INFO    ] Initializing speech engine...
[2026-10-18 02:33:16,626.626 INFO    ] 2026-10-18 02:33:16
[2026-10-18 02:33:16,922.922 INFO    ] 2026-10-18 02:33:16
[2026-10-18 02:33:16,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:33:17,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:33:17,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:33:17,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:33:17,486.486 INFO    ] time= 18/10/2026 02:33:17
[2026-10-18 02:33:17,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:33:17,533.533 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:33:17,690.690 INFO    ] No existing commands found in stream
[2026-10-18 02:33:22,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:33:22,730.730 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-18 02:33:25,222.222 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:33:25,225.225 INFO    ] Checking for system updates...
[2026-10-18 02:33:25,263.263 INFO    ] 200
[2026-10-18 02:33:25,266.266 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:33:25,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:33:25,321.321 INFO    ] No update needed
[2026-10-18 02:33:25,324.324 INFO    ] Checking for camera pi updates...
[2026-10-18 02:33:25,359.359 INFO    ] 200
[2026-10-18 02:33:25,362.362 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:33:25,404.404 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:33:35,420.420 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:33:35,460.460 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:33:35,471.471 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:33:35,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:33:35,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:33:35,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:33:37,526.526 INFO    ] ================================================
[2026-10-18 02:33:37,541.541 INFO    ] Launching Daemon at Sun Oct 18 02:33:37 IST 2026
[2026-10-18 02:33:37,552.552 INFO    ] ================================================
[2026-10-18 02:33:38,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:33:38
[2026-10-18 02:33:38,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:33:39,153.153 INFO    ] Initializing speech engine...
[2026-10-18 02:33:39,162.162 INFO    ] 2026-10-18 02:33:39
[2026-10-18 02:33:39,446.446 INFO    ] 2026-10-18 02:33:39
[2026-10-18 02:33:39,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:33:39,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:33:39,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:33:39,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:33:39,981.981 INFO    ] time= 18/10/2026 02:33:39
[2026-10-18 02:33:40,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:33:40,029.029 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:33:40,180.180 INFO    ] No existing commands found in stream
[2026-10-18 02:33:45,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:33:45,214.214 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-18 02:33:49,262.262 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:33:49,265.265 INFO    ] Checking for system updates...
[2026-10-18 02:33:49,302.302 INFO    ] 200
[2026-10-18 02:33:49,305.305 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:33:49,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:33:49,361.361 INFO    ] No update needed
[2026-10-18 02:33:49,364.364 INFO    ] Checking for camera pi updates...
[2026-10-18 02:33:49,399.399 INFO    ] 200
[2026-10-18 02:33:49,402.402 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:33:49,443.443 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:33:59,459.459 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:33:59,500.500 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:33:59,511.511 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:33:59,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:33:59,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:33:59,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:34:01,569.569 INFO    ] ================================================
[2026-10-18 02:34:01,590.590 INFO    ] Launching Daemon at Sun Oct 18 02:34:01 IST 2026
[2026-10-18 02:34:01,603.603 INFO    ] ================================================
[2026-10-18 02:34:02,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:34:02
[2026-10-18 02:34:02,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:34:03,171.171 INFO    ] Initializing speech engine...
[2026-10-18 02:34:03,181.181 INFO    ] 2026-10-18 02:34:03
[2026-10-18 02:34:03,445.445 INFO    ] 2026-10-18 02:34:03
[2026-10-18 02:34:03,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:34:03,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:34:03,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:34:03,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:34:03,910.910 INFO    ] time= 18/10/2026 02:34:03
[2026-10-18 02:34:03,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:34:04,007.007 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:34:04,146.146 INFO    ] No existing commands found in stream
[2026-10-18 02:34:09,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:34:09,170.170 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-18 02:34:10,007.007 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:34:10,010.010 INFO    ] Checking for system updates...
[2026-10-18 02:34:10,046.046 INFO    ] 200
[2026-10-18 02:34:10,049.049 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:34:10,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:34:10,113.113 INFO    ] No update needed
[2026-10-18 02:34:10,117.117 INFO    ] Checking for camera pi updates...
[2026-10-18 02:34:10,156.156 INFO    ] 200
[2026-10-18 02:34:10,159.159 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:34:10,198.198 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:34:20,211.211 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:34:20,246.246 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:34:20,256.256 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:34:20,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:34:20,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:34:20,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:34:22,309.309 INFO    ] ================================================
[2026-10-18 02:34:22,324.324 INFO    ] Launching Daemon at Sun Oct 18 02:34:22 IST 2026
[2026-10-18 02:34:22,335.335 INFO    ] ================================================
[2026-10-18 02:34:23,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:34:22
[2026-10-18 02:34:23,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:34:24,000.000 INFO    ] Initializing speech engine...
[2026-10-18 02:34:24,011.011 INFO    ] 2026-10-18 02:34:24
[2026-10-18 02:34:24,326.326 INFO    ] 2026-10-18 02:34:24
[2026-10-18 02:34:24,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:34:24,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:34:24,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:34:24,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:34:24,841.841 INFO    ] time= 18/10/2026 02:34:24
[2026-10-18 02:34:24,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:34:24,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:34:25,019.019 INFO    ] No existing commands found in stream
[2026-10-18 02:34:30,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:34:30,059.059 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-18 02:34:33,821.821 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:34:33,824.824 INFO    ] Checking for system updates...
[2026-10-18 02:34:33,861.861 INFO    ] 200
[2026-10-18 02:34:33,863.863 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:34:33,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:34:33,921.921 INFO    ] No update needed
[2026-10-18 02:34:33,924.924 INFO    ] Checking for camera pi updates...
[2026-10-18 02:34:33,959.959 INFO    ] 200
[2026-10-18 02:34:33,962.962 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:34:34,003.003 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:34:44,020.020 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:34:44,061.061 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:34:44,072.072 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:34:44,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:34:44,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:34:44,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:34:46,128.128 INFO    ] ================================================
[2026-10-18 02:34:46,143.143 INFO    ] Launching Daemon at Sun Oct 18 02:34:46 IST 2026
[2026-10-18 02:34:46,155.155 INFO    ] ================================================
[2026-10-18 02:34:46,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:34:46
[2026-10-18 02:34:47,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:34:47,630.630 INFO    ] Initializing speech engine...
[2026-10-18 02:34:47,636.636 INFO    ] 2026-10-18 02:34:47
[2026-10-18 02:34:47,882.882 INFO    ] 2026-10-18 02:34:47
[2026-10-18 02:34:47,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:34:48,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:34:48,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:34:48,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:34:48,368.368 INFO    ] time= 18/10/2026 02:34:48
[2026-10-18 02:34:48,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:34:48,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:34:48,592.592 INFO    ] No existing commands found in stream
[2026-10-18 02:34:53,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:34:53,611.611 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-18 02:34:55,747.747 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:34:55,749.749 INFO    ] Checking for system updates...
[2026-10-18 02:34:55,786.786 INFO    ] 200
[2026-10-18 02:34:55,788.788 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:34:55,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:34:55,842.842 INFO    ] No update needed
[2026-10-18 02:34:55,845.845 INFO    ] Checking for camera pi updates...
[2026-10-18 02:34:55,879.879 INFO    ] 200
[2026-10-18 02:34:55,881.881 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:34:55,921.921 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:35:05,936.936 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:35:05,971.971 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:35:05,980.980 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:35:05,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:35:05,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:35:05,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:35:08,035.035 INFO    ] ================================================
[2026-10-18 02:35:08,051.051 INFO    ] Launching Daemon at Sun Oct 18 02:35:08 IST 2026
[2026-10-18 02:35:08,062.062 INFO    ] ================================================
[2026-10-18 02:35:08,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:35:08
[2026-10-18 02:35:09,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:35:09,702.702 INFO    ] Initializing speech engine...
[2026-10-18 02:35:09,713.713 INFO    ] 2026-10-18 02:35:09
[2026-10-18 02:35:10,019.019 INFO    ] 2026-10-18 02:35:09
[2026-10-18 02:35:10,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:35:10,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:35:10,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:35:10,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:35:10,725.725 INFO    ] time= 18/10/2026 02:35:10
[2026-10-18 02:35:10,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:35:10,843.843 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:35:10,972.972 INFO    ] No existing commands found in stream
[2026-10-18 02:35:15,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:35:15,993.993 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-18 02:35:19,808.808 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:35:19,811.811 INFO    ] Checking for system updates...
[2026-10-18 02:35:19,848.848 INFO    ] 200
[2026-10-18 02:35:19,851.851 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:35:19,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:35:19,909.909 INFO    ] No update needed
[2026-10-18 02:35:19,912.912 INFO    ] Checking for camera pi updates...
[2026-10-18 02:35:19,947.947 INFO    ] 200
[2026-10-18 02:35:19,950.950 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:35:19,997.997 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:35:30,013.013 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:35:30,054.054 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:35:30,065.065 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:35:30,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:35:30,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:35:30,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:35:32,124.124 INFO    ] ================================================
[2026-10-18 02:35:32,141.141 INFO    ] Launching Daemon at Sun Oct 18 02:35:32 IST 2026
[2026-10-18 02:35:32,152.152 INFO    ] ================================================
[2026-10-18 02:35:32,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:35:32
[2026-10-18 02:35:33,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:35:33,850.850 INFO    ] Initializing speech engine...
[2026-10-18 02:35:33,862.862 INFO    ] 2026-10-18 02:35:33
[2026-10-18 02:35:34,157.157 INFO    ] 2026-10-18 02:35:34
[2026-10-18 02:35:34,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:35:34,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:35:34,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:35:34,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:35:34,705.705 INFO    ] time= 18/10/2026 02:35:34
[2026-10-18 02:35:34,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:35:34,742.742 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:35:34,863.863 INFO    ] No existing commands found in stream
[2026-10-18 02:35:39,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:35:39,888.888 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-18 02:35:43,421.421 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:35:43,424.424 INFO    ] Checking for system updates...
[2026-10-18 02:35:43,462.462 INFO    ] 200
[2026-10-18 02:35:43,464.464 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:35:43,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:35:43,520.520 INFO    ] No update needed
[2026-10-18 02:35:43,523.523 INFO    ] Checking for camera pi updates...
[2026-10-18 02:35:43,559.559 INFO    ] 200
[2026-10-18 02:35:43,561.561 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:35:43,603.603 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:35:53,619.619 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:35:53,661.661 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:35:53,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:35:53,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:35:53,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:35:53,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:35:55,737.737 INFO    ] ================================================
[2026-10-18 02:35:55,753.753 INFO    ] Launching Daemon at Sun Oct 18 02:35:55 IST 2026
[2026-10-18 02:35:55,764.764 INFO    ] ================================================
[2026-10-18 02:35:56,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:35:56
[2026-10-18 02:35:56,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:35:57,199.199 INFO    ] Initializing speech engine...
[2026-10-18 02:35:57,204.204 INFO    ] 2026-10-18 02:35:57
[2026-10-18 02:35:57,450.450 INFO    ] 2026-10-18 02:35:57
[2026-10-18 02:35:57,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:35:57,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:35:57,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:35:57,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:35:57,951.951 INFO    ] time= 18/10/2026 02:35:57
[2026-10-18 02:35:58,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:35:58,015.015 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:35:58,162.162 INFO    ] No existing commands found in stream
[2026-10-18 02:36:03,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:36:03,188.188 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-18 02:36:05,579.579 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:36:05,582.582 INFO    ] Checking for system updates...
[2026-10-18 02:36:05,618.618 INFO    ] 200
[2026-10-18 02:36:05,620.620 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:36:05,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:36:05,675.675 INFO    ] No update needed
[2026-10-18 02:36:05,677.677 INFO    ] Checking for camera pi updates...
[2026-10-18 02:36:05,711.711 INFO    ] 200
[2026-10-18 02:36:05,713.713 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:36:05,758.758 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:36:15,775.775 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:36:15,810.810 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:36:15,820.820 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:36:15,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:36:15,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:36:15,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:36:17,874.874 INFO    ] ================================================
[2026-10-18 02:36:17,889.889 INFO    ] Launching Daemon at Sun Oct 18 02:36:17 IST 2026
[2026-10-18 02:36:17,900.900 INFO    ] ================================================
[2026-10-18 02:36:18,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:36:18
[2026-10-18 02:36:19,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:36:19,319.319 INFO    ] Initializing speech engine...
[2026-10-18 02:36:19,339.339 INFO    ] 2026-10-18 02:36:19
[2026-10-18 02:36:19,588.588 INFO    ] 2026-10-18 02:36:19
[2026-10-18 02:36:19,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:36:19,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:36:19,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:36:20,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:36:20,157.157 INFO    ] time= 18/10/2026 02:36:20
[2026-10-18 02:36:20,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:36:20,183.183 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:36:20,317.317 INFO    ] No existing commands found in stream
[2026-10-18 02:36:25,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:36:25,333.333 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-18 02:36:25,988.988 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:36:25,991.991 INFO    ] Checking for system updates...
[2026-10-18 02:36:26,028.028 INFO    ] 200
[2026-10-18 02:36:26,030.030 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:36:26,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:36:26,086.086 INFO    ] No update needed
[2026-10-18 02:36:26,088.088 INFO    ] Checking for camera pi updates...
[2026-10-18 02:36:26,121.121 INFO    ] 200
[2026-10-18 02:36:26,124.124 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:36:26,164.164 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:36:36,178.178 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:36:36,213.213 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:36:36,223.223 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:36:36,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:36:36,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:36:36,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:36:38,277.277 INFO    ] ================================================
[2026-10-18 02:36:38,292.292 INFO    ] Launching Daemon at Sun Oct 18 02:36:38 IST 2026
[2026-10-18 02:36:38,304.304 INFO    ] ================================================
[2026-10-18 02:36:38,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:36:38
[2026-10-18 02:36:39,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:36:39,909.909 INFO    ] Initializing speech engine...
[2026-10-18 02:36:39,916.916 INFO    ] 2026-10-18 02:36:39
[2026-10-18 02:36:40,208.208 INFO    ] 2026-10-18 02:36:40
[2026-10-18 02:36:40,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:36:40,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:36:40,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:36:40,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:36:40,764.764 INFO    ] time= 18/10/2026 02:36:40
[2026-10-18 02:36:40,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:36:40,801.801 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:36:40,934.934 INFO    ] No existing commands found in stream
[2026-10-18 02:36:45,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:36:45,963.963 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-18 02:36:48,422.422 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:36:48,425.425 INFO    ] Checking for system updates...
[2026-10-18 02:36:48,461.461 INFO    ] 200
[2026-10-18 02:36:48,464.464 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:36:48,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:36:48,518.518 INFO    ] No update needed
[2026-10-18 02:36:48,520.520 INFO    ] Checking for camera pi updates...
[2026-10-18 02:36:48,554.554 INFO    ] 200
[2026-10-18 02:36:48,557.557 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:36:48,597.597 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:36:58,610.610 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:36:58,645.645 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:36:58,654.654 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:36:58,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:36:58,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:36:58,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:37:00,707.707 INFO    ] ================================================
[2026-10-18 02:37:00,723.723 INFO    ] Launching Daemon at Sun Oct 18 02:37:00 IST 2026
[2026-10-18 02:37:00,734.734 INFO    ] ================================================
[2026-10-18 02:37:01,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:37:01
[2026-10-18 02:37:02,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:37:02,396.396 INFO    ] Initializing speech engine...
[2026-10-18 02:37:02,408.408 INFO    ] 2026-10-18 02:37:02
[2026-10-18 02:37:02,737.737 INFO    ] 2026-10-18 02:37:02
[2026-10-18 02:37:02,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:37:03,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:37:03,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:37:03,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:37:03,358.358 INFO    ] time= 18/10/2026 02:37:03
[2026-10-18 02:37:03,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:37:03,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:37:03,518.518 INFO    ] No existing commands found in stream
[2026-10-18 02:37:08,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:37:08,539.539 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-18 02:37:09,182.182 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:37:09,184.184 INFO    ] Checking for system updates...
[2026-10-18 02:37:09,220.220 INFO    ] 200
[2026-10-18 02:37:09,222.222 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:37:09,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:37:09,283.283 INFO    ] No update needed
[2026-10-18 02:37:09,286.286 INFO    ] Checking for camera pi updates...
[2026-10-18 02:37:09,320.320 INFO    ] 200
[2026-10-18 02:37:09,322.322 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:37:09,369.369 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:37:19,386.386 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:37:19,427.427 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:37:19,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:37:19,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:37:19,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:37:19,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:37:21,493.493 INFO    ] ================================================
[2026-10-18 02:37:21,509.509 INFO    ] Launching Daemon at Sun Oct 18 02:37:21 IST 2026
[2026-10-18 02:37:21,520.520 INFO    ] ================================================
[2026-10-18 02:37:22,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:37:22
[2026-10-18 02:37:22,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:37:23,004.004 INFO    ] Initializing speech engine...
[2026-10-18 02:37:23,015.015 INFO    ] 2026-10-18 02:37:23
[2026-10-18 02:37:23,289.289 INFO    ] 2026-10-18 02:37:23
[2026-10-18 02:37:23,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:37:23,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:37:23,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:37:23,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:37:23,842.842 INFO    ] time= 18/10/2026 02:37:23
[2026-10-18 02:37:23,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:37:23,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:37:24,052.052 INFO    ] No existing commands found in stream
[2026-10-18 02:37:29,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:37:29,081.081 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-18 02:37:32,211.211 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:37:32,215.215 INFO    ] Checking for system updates...
[2026-10-18 02:37:32,260.260 INFO    ] 200
[2026-10-18 02:37:32,262.262 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:37:32,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:37:32,331.331 INFO    ] No update needed
[2026-10-18 02:37:32,333.333 INFO    ] Checking for camera pi updates...
[2026-10-18 02:37:32,369.369 INFO    ] 200
[2026-10-18 02:37:32,372.372 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:37:32,414.414 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:37:42,429.429 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:37:42,464.464 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:37:42,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:37:42,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:37:42,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:37:42,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:37:44,526.526 INFO    ] ================================================
[2026-10-18 02:37:44,543.543 INFO    ] Launching Daemon at Sun Oct 18 02:37:44 IST 2026
[2026-10-18 02:37:44,554.554 INFO    ] ================================================
[2026-10-18 02:37:45,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:37:45
[2026-10-18 02:37:45,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:37:45,973.973 INFO    ] Initializing speech engine...
[2026-10-18 02:37:45,982.982 INFO    ] 2026-10-18 02:37:45
[2026-10-18 02:37:46,228.228 INFO    ] 2026-10-18 02:37:46
[2026-10-18 02:37:46,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:37:46,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:37:46,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:37:46,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:37:46,732.732 INFO    ] time= 18/10/2026 02:37:46
[2026-10-18 02:37:46,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:37:46,789.789 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:37:46,939.939 INFO    ] No existing commands found in stream
[2026-10-18 02:37:51,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:37:51,972.972 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-18 02:37:54,223.223 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:37:54,226.226 INFO    ] Checking for system updates...
[2026-10-18 02:37:54,262.262 INFO    ] 200
[2026-10-18 02:37:54,264.264 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:37:54,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:37:54,326.326 INFO    ] No update needed
[2026-10-18 02:37:54,329.329 INFO    ] Checking for camera pi updates...
[2026-10-18 02:37:54,363.363 INFO    ] 200
[2026-10-18 02:37:54,365.365 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:37:54,405.405 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:38:04,419.419 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:38:04,454.454 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:38:04,463.463 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:38:04,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:38:04,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:38:04,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:38:06,517.517 INFO    ] ================================================
[2026-10-18 02:38:06,532.532 INFO    ] Launching Daemon at Sun Oct 18 02:38:06 IST 2026
[2026-10-18 02:38:06,542.542 INFO    ] ================================================
[2026-10-18 02:38:07,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:38:07
[2026-10-18 02:38:07,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:38:08,133.133 INFO    ] Initializing speech engine...
[2026-10-18 02:38:08,140.140 INFO    ] 2026-10-18 02:38:08
[2026-10-18 02:38:08,411.411 INFO    ] 2026-10-18 02:38:08
[2026-10-18 02:38:08,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:38:08,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:38:08,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:38:08,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:38:08,962.962 INFO    ] time= 18/10/2026 02:38:08
[2026-10-18 02:38:08,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:38:09,004.004 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:38:09,140.140 INFO    ] No existing commands found in stream
[2026-10-18 02:38:14,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:38:14,174.174 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-18 02:38:17,631.631 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 02:38:17,634.634 INFO    ] Checking for system updates...
[2026-10-18 02:38:17,671.671 INFO    ] 200
[2026-10-18 02:38:17,674.674 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:38:17,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:38:17,734.734 INFO    ] No update needed
[2026-10-18 02:38:17,736.736 INFO    ] Checking for camera pi updates...
[2026-10-18 02:38:17,770.770 INFO    ] 200
[2026-10-18 02:38:17,773.773 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:38:17,822.822 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:38:27,837.837 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:38:27,872.872 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:38:27,881.881 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:38:27,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:38:27,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:38:27,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:38:29,934.934 INFO    ] ================================================
[2026-10-18 02:38:29,949.949 INFO    ] Launching Daemon at Sun Oct 18 02:38:29 IST 2026
[2026-10-18 02:38:29,960.960 INFO    ] ================================================
[2026-10-18 02:38:30,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:38:30
[2026-10-18 02:38:31,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:38:31,364.364 INFO    ] Initializing speech engine...
[2026-10-18 02:38:31,373.373 INFO    ] 2026-10-18 02:38:31
[2026-10-18 02:38:31,684.684 INFO    ] 2026-10-18 02:38:31
[2026-10-18 02:38:31,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:38:31,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:38:31,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:38:32,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:38:32,118.118 INFO    ] time= 18/10/2026 02:38:32
[2026-10-18 02:38:32,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:38:32,156.156 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:38:32,303.303 INFO    ] No existing commands found in stream
[2026-10-18 02:38:37,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:38:37,331.331 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-18 02:38:39,790.790 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:38:39,792.792 INFO    ] Checking for system updates...
[2026-10-18 02:38:39,828.828 INFO    ] 200
[2026-10-18 02:38:39,831.831 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:38:39,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:38:39,890.890 INFO    ] No update needed
[2026-10-18 02:38:39,892.892 INFO    ] Checking for camera pi updates...
[2026-10-18 02:38:39,927.927 INFO    ] 200
[2026-10-18 02:38:39,929.929 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:38:39,973.973 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:38:49,988.988 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:38:50,024.024 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:38:50,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:38:50,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:38:50,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:38:50,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:38:52,087.087 INFO    ] ================================================
[2026-10-18 02:38:52,102.102 INFO    ] Launching Daemon at Sun Oct 18 02:38:52 IST 2026
[2026-10-18 02:38:52,112.112 INFO    ] ================================================
[2026-10-18 02:38:52,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:38:52
[2026-10-18 02:38:53,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:38:53,691.691 INFO    ] Initializing speech engine...
[2026-10-18 02:38:53,705.705 INFO    ] 2026-10-18 02:38:53
[2026-10-18 02:38:53,969.969 INFO    ] 2026-10-18 02:38:53
[2026-10-18 02:38:54,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:38:54,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:38:54,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:38:54,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:38:54,517.517 INFO    ] time= 18/10/2026 02:38:54
[2026-10-18 02:38:54,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:38:54,564.564 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:38:54,695.695 INFO    ] No existing commands found in stream
[2026-10-18 02:38:59,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:38:59,734.734 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-18 02:39:03,477.477 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:39:03,480.480 INFO    ] Checking for system updates...
[2026-10-18 02:39:03,517.517 INFO    ] 200
[2026-10-18 02:39:03,519.519 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:39:03,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:39:03,575.575 INFO    ] No update needed
[2026-10-18 02:39:03,578.578 INFO    ] Checking for camera pi updates...
[2026-10-18 02:39:03,612.612 INFO    ] 200
[2026-10-18 02:39:03,615.615 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:39:03,660.660 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:39:13,677.677 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:39:13,712.712 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:39:13,721.721 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:39:13,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:39:13,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:39:13,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:39:15,773.773 INFO    ] ================================================
[2026-10-18 02:39:15,788.788 INFO    ] Launching Daemon at Sun Oct 18 02:39:15 IST 2026
[2026-10-18 02:39:15,799.799 INFO    ] ================================================
[2026-10-18 02:39:16,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:39:16
[2026-10-18 02:39:16,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:39:17,216.216 INFO    ] Initializing speech engine...
[2026-10-18 02:39:17,225.225 INFO    ] 2026-10-18 02:39:17
[2026-10-18 02:39:17,486.486 INFO    ] 2026-10-18 02:39:17
[2026-10-18 02:39:17,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:39:17,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:39:17,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:39:17,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:39:17,975.975 INFO    ] time= 18/10/2026 02:39:17
[2026-10-18 02:39:18,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:39:18,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:39:18,180.180 INFO    ] No existing commands found in stream
[2026-10-18 02:39:23,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:39:23,198.198 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-18 02:39:24,081.081 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 02:39:24,083.083 INFO    ] Checking for system updates...
[2026-10-18 02:39:24,119.119 INFO    ] 200
[2026-10-18 02:39:24,121.121 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:39:24,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:39:24,180.180 INFO    ] No update needed
[2026-10-18 02:39:24,182.182 INFO    ] Checking for camera pi updates...
[2026-10-18 02:39:24,215.215 INFO    ] 200
[2026-10-18 02:39:24,218.218 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:39:24,260.260 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:39:34,273.273 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:39:34,308.308 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:39:34,317.317 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:39:34,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:39:34,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:39:34,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:39:36,370.370 INFO    ] ================================================
[2026-10-18 02:39:36,384.384 INFO    ] Launching Daemon at Sun Oct 18 02:39:36 IST 2026
[2026-10-18 02:39:36,395.395 INFO    ] ================================================
[2026-10-18 02:39:36,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:39:36
[2026-10-18 02:39:37,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:39:37,813.813 INFO    ] Initializing speech engine...
[2026-10-18 02:39:37,824.824 INFO    ] 2026-10-18 02:39:37
[2026-10-18 02:39:38,079.079 INFO    ] 2026-10-18 02:39:38
[2026-10-18 02:39:38,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:39:38,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:39:38,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:39:38,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:39:38,606.606 INFO    ] time= 18/10/2026 02:39:38
[2026-10-18 02:39:38,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:39:38,688.688 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:39:38,822.822 INFO    ] No existing commands found in stream
[2026-10-18 02:39:43,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:39:43,850.850 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-18 02:39:47,133.133 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 02:39:47,136.136 INFO    ] Checking for system updates...
[2026-10-18 02:39:47,173.173 INFO    ] 200
[2026-10-18 02:39:47,176.176 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:39:47,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:39:47,237.237 INFO    ] No update needed
[2026-10-18 02:39:47,239.239 INFO    ] Checking for camera pi updates...
[2026-10-18 02:39:47,274.274 INFO    ] 200
[2026-10-18 02:39:47,277.277 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:39:47,318.318 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:39:57,334.334 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:39:57,374.374 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:39:57,386.386 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:39:57,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:39:57,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:39:57,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:39:59,442.442 INFO    ] ================================================
[2026-10-18 02:39:59,457.457 INFO    ] Launching Daemon at Sun Oct 18 02:39:59 IST 2026
[2026-10-18 02:39:59,468.468 INFO    ] ================================================
[2026-10-18 02:40:00,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:40:00
[2026-10-18 02:40:00,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:40:00,890.890 INFO    ] Initializing speech engine...
[2026-10-18 02:40:00,896.896 INFO    ] 2026-10-18 02:40:00
[2026-10-18 02:40:01,140.140 INFO    ] 2026-10-18 02:40:01
[2026-10-18 02:40:01,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:40:01,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:40:01,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:40:01,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:40:01,645.645 INFO    ] time= 18/10/2026 02:40:01
[2026-10-18 02:40:01,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:40:01,688.688 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:40:01,771.771 INFO    ] No existing commands found in stream
[2026-10-18 02:40:06,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:40:06,785.785 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-18 02:40:08,836.836 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 02:40:08,839.839 INFO    ] Checking for system updates...
[2026-10-18 02:40:08,875.875 INFO    ] 200
[2026-10-18 02:40:08,877.877 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:40:08,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:40:08,936.936 INFO    ] No update needed
[2026-10-18 02:40:08,939.939 INFO    ] Checking for camera pi updates...
[2026-10-18 02:40:08,972.972 INFO    ] 200
[2026-10-18 02:40:08,974.974 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:40:09,024.024 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:40:19,040.040 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:40:19,074.074 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:40:19,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:40:19,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:40:19,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:40:19,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:40:21,136.136 INFO    ] ================================================
[2026-10-18 02:40:21,151.151 INFO    ] Launching Daemon at Sun Oct 18 02:40:21 IST 2026
[2026-10-18 02:40:21,162.162 INFO    ] ================================================
[2026-10-18 02:40:21,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:40:21
[2026-10-18 02:40:22,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:40:22,615.615 INFO    ] Initializing speech engine...
[2026-10-18 02:40:22,621.621 INFO    ] 2026-10-18 02:40:22
[2026-10-18 02:40:22,880.880 INFO    ] 2026-10-18 02:40:22
[2026-10-18 02:40:22,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:40:23,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:40:23,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:40:23,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:40:23,421.421 INFO    ] time= 18/10/2026 02:40:23
[2026-10-18 02:40:23,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:40:23,448.448 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:40:23,578.578 INFO    ] No existing commands found in stream
[2026-10-18 02:40:28,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:40:28,599.599 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-18 02:40:31,187.187 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 02:40:31,190.190 INFO    ] Checking for system updates...
[2026-10-18 02:40:31,225.225 INFO    ] 200
[2026-10-18 02:40:31,227.227 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:40:31,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:40:31,286.286 INFO    ] No update needed
[2026-10-18 02:40:31,288.288 INFO    ] Checking for camera pi updates...
[2026-10-18 02:40:31,322.322 INFO    ] 200
[2026-10-18 02:40:31,325.325 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:40:31,370.370 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:40:41,386.386 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:40:41,421.421 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:40:41,431.431 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:40:41,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:40:41,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:40:41,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:40:43,484.484 INFO    ] ================================================
[2026-10-18 02:40:43,502.502 INFO    ] Launching Daemon at Sun Oct 18 02:40:43 IST 2026
[2026-10-18 02:40:43,513.513 INFO    ] ================================================
[2026-10-18 02:40:44,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:40:44
[2026-10-18 02:40:44,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:40:44,935.935 INFO    ] Initializing speech engine...
[2026-10-18 02:40:44,944.944 INFO    ] 2026-10-18 02:40:44
[2026-10-18 02:40:45,211.211 INFO    ] 2026-10-18 02:40:45
[2026-10-18 02:40:45,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:40:45,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:40:45,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:40:45,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:40:45,757.757 INFO    ] time= 18/10/2026 02:40:45
[2026-10-18 02:40:45,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:40:45,807.807 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:40:45,917.917 INFO    ] No existing commands found in stream
[2026-10-18 02:40:50,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:40:50,950.950 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-18 02:40:51,988.988 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:40:51,991.991 INFO    ] Checking for system updates...
[2026-10-18 02:40:52,028.028 INFO    ] 200
[2026-10-18 02:40:52,030.030 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:40:52,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:40:52,085.085 INFO    ] No update needed
[2026-10-18 02:40:52,088.088 INFO    ] Checking for camera pi updates...
[2026-10-18 02:40:52,123.123 INFO    ] 200
[2026-10-18 02:40:52,126.126 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:40:52,167.167 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:41:02,181.181 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:41:02,220.220 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:41:02,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:41:02,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:41:02,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:41:02,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:41:04,289.289 INFO    ] ================================================
[2026-10-18 02:41:04,304.304 INFO    ] Launching Daemon at Sun Oct 18 02:41:04 IST 2026
[2026-10-18 02:41:04,314.314 INFO    ] ================================================
[2026-10-18 02:41:04,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:41:04
[2026-10-18 02:41:05,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:41:05,928.928 INFO    ] Initializing speech engine...
[2026-10-18 02:41:05,939.939 INFO    ] 2026-10-18 02:41:05
[2026-10-18 02:41:06,245.245 INFO    ] 2026-10-18 02:41:06
[2026-10-18 02:41:06,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:41:06,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:41:06,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:41:06,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:41:06,771.771 INFO    ] time= 18/10/2026 02:41:06
[2026-10-18 02:41:06,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:41:06,809.809 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:41:06,942.942 INFO    ] No existing commands found in stream
[2026-10-18 02:41:11,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:41:11,981.981 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-18 02:41:14,903.903 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 02:41:14,906.906 INFO    ] Checking for system updates...
[2026-10-18 02:41:14,943.943 INFO    ] 200
[2026-10-18 02:41:14,946.946 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:41:15,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:41:15,003.003 INFO    ] No update needed
[2026-10-18 02:41:15,006.006 INFO    ] Checking for camera pi updates...
[2026-10-18 02:41:15,040.040 INFO    ] 200
[2026-10-18 02:41:15,043.043 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:41:15,091.091 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:41:25,109.109 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:41:25,146.146 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:41:25,156.156 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:41:25,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:41:25,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:41:25,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:41:27,209.209 INFO    ] ================================================
[2026-10-18 02:41:27,225.225 INFO    ] Launching Daemon at Sun Oct 18 02:41:27 IST 2026
[2026-10-18 02:41:27,236.236 INFO    ] ================================================
[2026-10-18 02:41:27,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:41:27
[2026-10-18 02:41:28,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:41:28,657.657 INFO    ] Initializing speech engine...
[2026-10-18 02:41:28,662.662 INFO    ] 2026-10-18 02:41:28
[2026-10-18 02:41:28,913.913 INFO    ] 2026-10-18 02:41:28
[2026-10-18 02:41:28,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:41:29,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:41:29,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:41:29,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:41:29,460.460 INFO    ] time= 18/10/2026 02:41:29
[2026-10-18 02:41:29,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:41:29,486.486 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:41:29,616.616 INFO    ] No existing commands found in stream
[2026-10-18 02:41:34,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:41:34,637.637 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-18 02:41:37,646.646 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:41:37,649.649 INFO    ] Checking for system updates...
[2026-10-18 02:41:37,684.684 INFO    ] 200
[2026-10-18 02:41:37,687.687 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:41:37,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:41:37,747.747 INFO    ] No update needed
[2026-10-18 02:41:37,749.749 INFO    ] Checking for camera pi updates...
[2026-10-18 02:41:37,782.782 INFO    ] 200
[2026-10-18 02:41:37,784.784 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:41:37,830.830 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:41:47,844.844 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:41:47,879.879 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:41:47,888.888 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:41:47,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:41:47,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:41:47,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:41:49,942.942 INFO    ] ================================================
[2026-10-18 02:41:49,958.958 INFO    ] Launching Daemon at Sun Oct 18 02:41:49 IST 2026
[2026-10-18 02:41:49,969.969 INFO    ] ================================================
[2026-10-18 02:41:50,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:41:50
[2026-10-18 02:41:51,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:41:51,449.449 INFO    ] Initializing speech engine...
[2026-10-18 02:41:51,457.457 INFO    ] 2026-10-18 02:41:51
[2026-10-18 02:41:51,730.730 INFO    ] 2026-10-18 02:41:51
[2026-10-18 02:41:51,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:41:52,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:41:52,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:41:52,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:41:52,263.263 INFO    ] time= 18/10/2026 02:41:52
[2026-10-18 02:41:52,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:41:52,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:41:52,421.421 INFO    ] No existing commands found in stream
[2026-10-18 02:41:57,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:41:57,449.449 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-18 02:41:59,634.634 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 02:41:59,636.636 INFO    ] Checking for system updates...
[2026-10-18 02:41:59,681.681 INFO    ] 200
[2026-10-18 02:41:59,684.684 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:41:59,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:41:59,740.740 INFO    ] No update needed
[2026-10-18 02:41:59,742.742 INFO    ] Checking for camera pi updates...
[2026-10-18 02:41:59,778.778 INFO    ] 200
[2026-10-18 02:41:59,781.781 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:41:59,822.822 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:42:09,837.837 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:42:09,877.877 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:42:09,888.888 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:42:09,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:42:09,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:42:09,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:42:11,945.945 INFO    ] ================================================
[2026-10-18 02:42:11,960.960 INFO    ] Launching Daemon at Sun Oct 18 02:42:11 IST 2026
[2026-10-18 02:42:11,971.971 INFO    ] ================================================
[2026-10-18 02:42:12,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:42:12
[2026-10-18 02:42:13,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:42:13,426.426 INFO    ] Initializing speech engine...
[2026-10-18 02:42:13,435.435 INFO    ] 2026-10-18 02:42:13
[2026-10-18 02:42:13,680.680 INFO    ] 2026-10-18 02:42:13
[2026-10-18 02:42:13,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:42:13,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:42:13,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:42:14,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:42:14,218.218 INFO    ] time= 18/10/2026 02:42:14
[2026-10-18 02:42:14,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:42:14,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:42:14,389.389 INFO    ] No existing commands found in stream
[2026-10-18 02:42:19,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:42:19,404.404 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-18 02:42:22,490.490 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 02:42:22,492.492 INFO    ] Checking for system updates...
[2026-10-18 02:42:22,533.533 INFO    ] 200
[2026-10-18 02:42:22,536.536 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:42:22,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:42:22,592.592 INFO    ] No update needed
[2026-10-18 02:42:22,595.595 INFO    ] Checking for camera pi updates...
[2026-10-18 02:42:22,630.630 INFO    ] 200
[2026-10-18 02:42:22,632.632 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:42:22,674.674 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:42:32,689.689 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:42:32,731.731 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:42:32,743.743 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:42:32,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:42:32,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:42:32,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:42:34,802.802 INFO    ] ================================================
[2026-10-18 02:42:34,818.818 INFO    ] Launching Daemon at Sun Oct 18 02:42:34 IST 2026
[2026-10-18 02:42:34,829.829 INFO    ] ================================================
[2026-10-18 02:42:35,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:42:35
[2026-10-18 02:42:36,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:42:36,361.361 INFO    ] Initializing speech engine...
[2026-10-18 02:42:36,372.372 INFO    ] 2026-10-18 02:42:36
[2026-10-18 02:42:36,680.680 INFO    ] 2026-10-18 02:42:36
[2026-10-18 02:42:36,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:42:36,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:42:36,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:42:37,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:42:37,200.200 INFO    ] time= 18/10/2026 02:42:37
[2026-10-18 02:42:37,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:42:37,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:42:37,344.344 INFO    ] No existing commands found in stream
[2026-10-18 02:42:42,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:42:42,382.382 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-18 02:42:46,582.582 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:42:46,586.586 INFO    ] Checking for system updates...
[2026-10-18 02:42:46,623.623 INFO    ] 200
[2026-10-18 02:42:46,626.626 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:42:46,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:42:46,690.690 INFO    ] No update needed
[2026-10-18 02:42:46,693.693 INFO    ] Checking for camera pi updates...
[2026-10-18 02:42:46,732.732 INFO    ] 200
[2026-10-18 02:42:46,735.735 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:42:46,782.782 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:42:56,799.799 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:42:56,839.839 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:42:56,850.850 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:42:56,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:42:56,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:42:56,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:42:58,906.906 INFO    ] ================================================
[2026-10-18 02:42:58,921.921 INFO    ] Launching Daemon at Sun Oct 18 02:42:58 IST 2026
[2026-10-18 02:42:58,933.933 INFO    ] ================================================
[2026-10-18 02:42:59,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:42:59
[2026-10-18 02:43:00,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:43:00,357.357 INFO    ] Initializing speech engine...
[2026-10-18 02:43:00,362.362 INFO    ] 2026-10-18 02:43:00
[2026-10-18 02:43:00,628.628 INFO    ] 2026-10-18 02:43:00
[2026-10-18 02:43:00,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:43:00,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:43:00,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:43:01,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:43:01,184.184 INFO    ] time= 18/10/2026 02:43:01
[2026-10-18 02:43:01,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:43:01,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:43:01,346.346 INFO    ] No existing commands found in stream
[2026-10-18 02:43:06,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:43:06,379.379 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-18 02:43:10,764.764 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:43:10,768.768 INFO    ] Checking for system updates...
[2026-10-18 02:43:10,808.808 INFO    ] 200
[2026-10-18 02:43:10,811.811 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:43:10,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:43:10,867.867 INFO    ] No update needed
[2026-10-18 02:43:10,870.870 INFO    ] Checking for camera pi updates...
[2026-10-18 02:43:10,905.905 INFO    ] 200
[2026-10-18 02:43:10,908.908 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:43:10,949.949 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:43:20,966.966 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:43:21,007.007 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:43:21,019.019 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:43:21,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:43:21,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:43:21,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:43:23,075.075 INFO    ] ================================================
[2026-10-18 02:43:23,090.090 INFO    ] Launching Daemon at Sun Oct 18 02:43:23 IST 2026
[2026-10-18 02:43:23,102.102 INFO    ] ================================================
[2026-10-18 02:43:23,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:43:23
[2026-10-18 02:43:24,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:43:24,678.678 INFO    ] Initializing speech engine...
[2026-10-18 02:43:24,687.687 INFO    ] 2026-10-18 02:43:24
[2026-10-18 02:43:24,975.975 INFO    ] 2026-10-18 02:43:24
[2026-10-18 02:43:25,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:43:25,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:43:25,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:43:25,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:43:25,530.530 INFO    ] time= 18/10/2026 02:43:25
[2026-10-18 02:43:25,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:43:25,579.579 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:43:25,710.710 INFO    ] No existing commands found in stream
[2026-10-18 02:43:30,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:43:30,739.739 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-18 02:43:32,745.745 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:43:32,749.749 INFO    ] Checking for system updates...
[2026-10-18 02:43:32,790.790 INFO    ] 200
[2026-10-18 02:43:32,793.793 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:43:32,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:43:32,864.864 INFO    ] No update needed
[2026-10-18 02:43:32,867.867 INFO    ] Checking for camera pi updates...
[2026-10-18 02:43:32,906.906 INFO    ] 200
[2026-10-18 02:43:32,909.909 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:43:32,950.950 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:43:42,967.967 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:43:43,008.008 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:43:43,019.019 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:43:43,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:43:43,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:43:43,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:43:45,074.074 INFO    ] ================================================
[2026-10-18 02:43:45,090.090 INFO    ] Launching Daemon at Sun Oct 18 02:43:45 IST 2026
[2026-10-18 02:43:45,102.102 INFO    ] ================================================
[2026-10-18 02:43:45,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:43:45
[2026-10-18 02:43:46,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:43:46,730.730 INFO    ] Initializing speech engine...
[2026-10-18 02:43:46,737.737 INFO    ] 2026-10-18 02:43:46
[2026-10-18 02:43:47,012.012 INFO    ] 2026-10-18 02:43:47
[2026-10-18 02:43:47,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:43:47,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:43:47,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:43:47,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:43:47,563.563 INFO    ] time= 18/10/2026 02:43:47
[2026-10-18 02:43:47,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:43:47,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:43:47,715.715 INFO    ] No existing commands found in stream
[2026-10-18 02:43:52,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:43:52,735.735 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-18 02:43:56,171.171 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:43:56,174.174 INFO    ] Checking for system updates...
[2026-10-18 02:43:56,212.212 INFO    ] 200
[2026-10-18 02:43:56,215.215 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:43:56,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:43:56,272.272 INFO    ] No update needed
[2026-10-18 02:43:56,274.274 INFO    ] Checking for camera pi updates...
[2026-10-18 02:43:56,308.308 INFO    ] 200
[2026-10-18 02:43:56,311.311 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:43:56,352.352 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:44:06,368.368 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:44:06,402.402 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:44:06,412.412 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:44:06,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:44:06,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:44:06,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:44:08,464.464 INFO    ] ================================================
[2026-10-18 02:44:08,480.480 INFO    ] Launching Daemon at Sun Oct 18 02:44:08 IST 2026
[2026-10-18 02:44:08,491.491 INFO    ] ================================================
[2026-10-18 02:44:09,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:44:09
[2026-10-18 02:44:09,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:44:10,155.155 INFO    ] Initializing speech engine...
[2026-10-18 02:44:10,168.168 INFO    ] 2026-10-18 02:44:10
[2026-10-18 02:44:10,489.489 INFO    ] 2026-10-18 02:44:10
[2026-10-18 02:44:10,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:44:10,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:44:10,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:44:11,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:44:11,030.030 INFO    ] time= 18/10/2026 02:44:11
[2026-10-18 02:44:11,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:44:11,068.068 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:44:11,191.191 INFO    ] No existing commands found in stream
[2026-10-18 02:44:16,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:44:16,223.223 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-18 02:44:18,079.079 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:44:18,082.082 INFO    ] Checking for system updates...
[2026-10-18 02:44:18,119.119 INFO    ] 200
[2026-10-18 02:44:18,122.122 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:44:18,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:44:18,183.183 INFO    ] No update needed
[2026-10-18 02:44:18,186.186 INFO    ] Checking for camera pi updates...
[2026-10-18 02:44:18,220.220 INFO    ] 200
[2026-10-18 02:44:18,222.222 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:44:18,263.263 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:44:28,277.277 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:44:28,313.313 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:44:28,323.323 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:44:28,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:44:28,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:44:28,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:44:30,376.376 INFO    ] ================================================
[2026-10-18 02:44:30,392.392 INFO    ] Launching Daemon at Sun Oct 18 02:44:30 IST 2026
[2026-10-18 02:44:30,403.403 INFO    ] ================================================
[2026-10-18 02:44:30,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:44:30
[2026-10-18 02:44:31,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:44:31,888.888 INFO    ] Initializing speech engine...
[2026-10-18 02:44:31,899.899 INFO    ] 2026-10-18 02:44:31
[2026-10-18 02:44:32,191.191 INFO    ] 2026-10-18 02:44:32
[2026-10-18 02:44:32,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:44:32,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:44:32,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:44:32,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:44:32,625.625 INFO    ] time= 18/10/2026 02:44:32
[2026-10-18 02:44:32,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:44:32,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:44:32,808.808 INFO    ] No existing commands found in stream
[2026-10-18 02:44:37,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:44:37,836.836 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-18 02:44:41,021.021 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:44:41,023.023 INFO    ] Checking for system updates...
[2026-10-18 02:44:41,059.059 INFO    ] 200
[2026-10-18 02:44:41,061.061 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:44:41,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:44:41,116.116 INFO    ] No update needed
[2026-10-18 02:44:41,118.118 INFO    ] Checking for camera pi updates...
[2026-10-18 02:44:41,152.152 INFO    ] 200
[2026-10-18 02:44:41,155.155 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:44:41,196.196 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:44:51,211.211 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:44:51,246.246 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:44:51,256.256 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:44:51,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:44:51,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:44:51,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:44:53,309.309 INFO    ] ================================================
[2026-10-18 02:44:53,325.325 INFO    ] Launching Daemon at Sun Oct 18 02:44:53 IST 2026
[2026-10-18 02:44:53,336.336 INFO    ] ================================================
[2026-10-18 02:44:53,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:44:53
[2026-10-18 02:44:54,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:44:54,732.732 INFO    ] Initializing speech engine...
[2026-10-18 02:44:54,746.746 INFO    ] 2026-10-18 02:44:54
[2026-10-18 02:44:55,011.011 INFO    ] 2026-10-18 02:44:54
[2026-10-18 02:44:55,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:44:55,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:44:55,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:44:55,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:44:55,580.580 INFO    ] time= 18/10/2026 02:44:55
[2026-10-18 02:44:55,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:44:55,605.605 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:44:55,744.744 INFO    ] No existing commands found in stream
[2026-10-18 02:45:00,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:45:00,778.778 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-18 02:45:02,503.503 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 02:45:02,506.506 INFO    ] Checking for system updates...
[2026-10-18 02:45:02,557.557 INFO    ] 200
[2026-10-18 02:45:02,560.560 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:45:02,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:45:02,633.633 INFO    ] No update needed
[2026-10-18 02:45:02,636.636 INFO    ] Checking for camera pi updates...
[2026-10-18 02:45:02,680.680 INFO    ] 200
[2026-10-18 02:45:02,684.684 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:45:02,732.732 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:45:12,747.747 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:45:12,782.782 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:45:12,791.791 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:45:12,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:45:12,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:45:12,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:45:14,845.845 INFO    ] ================================================
[2026-10-18 02:45:14,861.861 INFO    ] Launching Daemon at Sun Oct 18 02:45:14 IST 2026
[2026-10-18 02:45:14,872.872 INFO    ] ================================================
[2026-10-18 02:45:15,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:45:15
[2026-10-18 02:45:16,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:45:16,277.277 INFO    ] Initializing speech engine...
[2026-10-18 02:45:16,284.284 INFO    ] 2026-10-18 02:45:16
[2026-10-18 02:45:16,586.586 INFO    ] 2026-10-18 02:45:16
[2026-10-18 02:45:16,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:45:16,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:45:16,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:45:17,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:45:17,015.015 INFO    ] time= 18/10/2026 02:45:17
[2026-10-18 02:45:17,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:45:17,044.044 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:45:17,184.184 INFO    ] No existing commands found in stream
[2026-10-18 02:45:22,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:45:22,217.217 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-18 02:45:24,457.457 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:45:24,460.460 INFO    ] Checking for system updates...
[2026-10-18 02:45:24,501.501 INFO    ] 200
[2026-10-18 02:45:24,504.504 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:45:24,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:45:24,563.563 INFO    ] No update needed
[2026-10-18 02:45:24,566.566 INFO    ] Checking for camera pi updates...
[2026-10-18 02:45:24,601.601 INFO    ] 200
[2026-10-18 02:45:24,604.604 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:45:24,644.644 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:45:34,659.659 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:45:34,693.693 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:45:34,703.703 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:45:34,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:45:34,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:45:34,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:45:36,756.756 INFO    ] ================================================
[2026-10-18 02:45:36,772.772 INFO    ] Launching Daemon at Sun Oct 18 02:45:36 IST 2026
[2026-10-18 02:45:36,784.784 INFO    ] ================================================
[2026-10-18 02:45:37,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:45:37
[2026-10-18 02:45:37,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:45:38,210.210 INFO    ] Initializing speech engine...
[2026-10-18 02:45:38,227.227 INFO    ] 2026-10-18 02:45:38
[2026-10-18 02:45:38,514.514 INFO    ] 2026-10-18 02:45:38
[2026-10-18 02:45:38,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:45:38,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:45:38,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:45:38,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:45:38,958.958 INFO    ] time= 18/10/2026 02:45:38
[2026-10-18 02:45:39,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:45:39,018.018 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:45:39,160.160 INFO    ] No existing commands found in stream
[2026-10-18 02:45:44,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:45:44,173.173 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-18 02:45:45,031.031 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:45:45,033.033 INFO    ] Checking for system updates...
[2026-10-18 02:45:45,073.073 INFO    ] 200
[2026-10-18 02:45:45,075.075 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:45:45,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:45:45,130.130 INFO    ] No update needed
[2026-10-18 02:45:45,132.132 INFO    ] Checking for camera pi updates...
[2026-10-18 02:45:45,166.166 INFO    ] 200
[2026-10-18 02:45:45,168.168 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:45:45,208.208 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:45:55,223.223 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:45:55,258.258 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:45:55,268.268 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:45:55,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:45:55,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:45:55,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:45:57,321.321 INFO    ] ================================================
[2026-10-18 02:45:57,339.339 INFO    ] Launching Daemon at Sun Oct 18 02:45:57 IST 2026
[2026-10-18 02:45:57,352.352 INFO    ] ================================================
[2026-10-18 02:45:57,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:45:57
[2026-10-18 02:45:58,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:45:58,819.819 INFO    ] Initializing speech engine...
[2026-10-18 02:45:58,833.833 INFO    ] 2026-10-18 02:45:58
[2026-10-18 02:45:59,142.142 INFO    ] 2026-10-18 02:45:59
[2026-10-18 02:45:59,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:45:59,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:45:59,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:45:59,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:45:59,648.648 INFO    ] time= 18/10/2026 02:45:59
[2026-10-18 02:45:59,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:45:59,698.698 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:45:59,822.822 INFO    ] No existing commands found in stream
[2026-10-18 02:46:04,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:46:04,861.861 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-18 02:46:06,914.914 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:46:06,917.917 INFO    ] Checking for system updates...
[2026-10-18 02:46:06,958.958 INFO    ] 200
[2026-10-18 02:46:06,960.960 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:46:07,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:46:07,021.021 INFO    ] No update needed
[2026-10-18 02:46:07,023.023 INFO    ] Checking for camera pi updates...
[2026-10-18 02:46:07,057.057 INFO    ] 200
[2026-10-18 02:46:07,059.059 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:46:07,100.100 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:46:17,116.116 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:46:17,151.151 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:46:17,161.161 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:46:17,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:46:17,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:46:17,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:46:19,214.214 INFO    ] ================================================
[2026-10-18 02:46:19,229.229 INFO    ] Launching Daemon at Sun Oct 18 02:46:19 IST 2026
[2026-10-18 02:46:19,240.240 INFO    ] ================================================
[2026-10-18 02:46:19,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:46:19
[2026-10-18 02:46:20,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:46:20,663.663 INFO    ] Initializing speech engine...
[2026-10-18 02:46:20,670.670 INFO    ] 2026-10-18 02:46:20
[2026-10-18 02:46:20,930.930 INFO    ] 2026-10-18 02:46:20
[2026-10-18 02:46:20,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:46:21,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:46:21,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:46:21,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:46:21,473.473 INFO    ] time= 18/10/2026 02:46:21
[2026-10-18 02:46:21,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:46:21,497.497 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:46:21,628.628 INFO    ] No existing commands found in stream
[2026-10-18 02:46:26,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:46:26,645.645 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-18 02:46:29,005.005 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 02:46:29,008.008 INFO    ] Checking for system updates...
[2026-10-18 02:46:29,044.044 INFO    ] 200
[2026-10-18 02:46:29,046.046 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:46:29,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:46:29,100.100 INFO    ] No update needed
[2026-10-18 02:46:29,103.103 INFO    ] Checking for camera pi updates...
[2026-10-18 02:46:29,138.138 INFO    ] 200
[2026-10-18 02:46:29,140.140 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:46:29,181.181 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:46:39,196.196 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:46:39,231.231 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:46:39,240.240 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:46:39,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:46:39,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:46:39,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:46:41,293.293 INFO    ] ================================================
[2026-10-18 02:46:41,308.308 INFO    ] Launching Daemon at Sun Oct 18 02:46:41 IST 2026
[2026-10-18 02:46:41,318.318 INFO    ] ================================================
[2026-10-18 02:46:41,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:46:41
[2026-10-18 02:46:42,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:46:42,776.776 INFO    ] Initializing speech engine...
[2026-10-18 02:46:42,786.786 INFO    ] 2026-10-18 02:46:42
[2026-10-18 02:46:43,033.033 INFO    ] 2026-10-18 02:46:43
[2026-10-18 02:46:43,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:46:43,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:46:43,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:46:43,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:46:43,529.529 INFO    ] time= 18/10/2026 02:46:43
[2026-10-18 02:46:43,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:46:43,598.598 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:46:43,745.745 INFO    ] No existing commands found in stream
[2026-10-18 02:46:48,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:46:48,775.775 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-18 02:46:51,752.752 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 02:46:51,754.754 INFO    ] Checking for system updates...
[2026-10-18 02:46:51,794.794 INFO    ] 200
[2026-10-18 02:46:51,797.797 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:46:51,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:46:51,851.851 INFO    ] No update needed
[2026-10-18 02:46:51,854.854 INFO    ] Checking for camera pi updates...
[2026-10-18 02:46:51,887.887 INFO    ] 200
[2026-10-18 02:46:51,890.890 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:46:51,930.930 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:47:01,945.945 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:47:01,988.988 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:47:02,000.000 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:47:02,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:47:02,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:47:02,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:47:04,062.062 INFO    ] ================================================
[2026-10-18 02:47:04,077.077 INFO    ] Launching Daemon at Sun Oct 18 02:47:04 IST 2026
[2026-10-18 02:47:04,087.087 INFO    ] ================================================
[2026-10-18 02:47:04,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:47:04
[2026-10-18 02:47:05,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:47:05,541.541 INFO    ] Initializing speech engine...
[2026-10-18 02:47:05,550.550 INFO    ] 2026-10-18 02:47:05
[2026-10-18 02:47:05,808.808 INFO    ] 2026-10-18 02:47:05
[2026-10-18 02:47:05,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:47:06,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:47:06,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:47:06,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:47:06,299.299 INFO    ] time= 18/10/2026 02:47:06
[2026-10-18 02:47:06,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:47:06,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:47:06,511.511 INFO    ] No existing commands found in stream
[2026-10-18 02:47:11,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:47:11,528.528 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-18 02:47:15,673.673 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:47:15,675.675 INFO    ] Checking for system updates...
[2026-10-18 02:47:15,714.714 INFO    ] 200
[2026-10-18 02:47:15,717.717 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:47:15,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:47:15,777.777 INFO    ] No update needed
[2026-10-18 02:47:15,779.779 INFO    ] Checking for camera pi updates...
[2026-10-18 02:47:15,813.813 INFO    ] 200
[2026-10-18 02:47:15,815.815 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:47:15,857.857 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:47:25,872.872 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:47:25,907.907 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:47:25,917.917 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:47:25,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:47:25,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:47:25,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:47:27,970.970 INFO    ] ================================================
[2026-10-18 02:47:27,986.986 INFO    ] Launching Daemon at Sun Oct 18 02:47:27 IST 2026
[2026-10-18 02:47:28,996.996 INFO    ] ================================================
[2026-10-18 02:47:28,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:47:28
[2026-10-18 02:47:29,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:47:29,522.522 INFO    ] Initializing speech engine...
[2026-10-18 02:47:29,531.531 INFO    ] 2026-10-18 02:47:29
[2026-10-18 02:47:29,826.826 INFO    ] 2026-10-18 02:47:29
[2026-10-18 02:47:29,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:47:30,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:47:30,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:47:30,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:47:30,320.320 INFO    ] time= 18/10/2026 02:47:30
[2026-10-18 02:47:30,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:47:30,454.454 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:47:30,596.596 INFO    ] No existing commands found in stream
[2026-10-18 02:47:35,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:47:35,622.622 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-18 02:47:36,643.643 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 02:47:36,646.646 INFO    ] Checking for system updates...
[2026-10-18 02:47:36,682.682 INFO    ] 200
[2026-10-18 02:47:36,685.685 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:47:36,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:47:36,740.740 INFO    ] No update needed
[2026-10-18 02:47:36,743.743 INFO    ] Checking for camera pi updates...
[2026-10-18 02:47:36,776.776 INFO    ] 200
[2026-10-18 02:47:36,779.779 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:47:36,834.834 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:47:46,850.850 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:47:46,888.888 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:47:46,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:47:46,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:47:46,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:47:46,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:47:48,951.951 INFO    ] ================================================
[2026-10-18 02:47:48,966.966 INFO    ] Launching Daemon at Sun Oct 18 02:47:48 IST 2026
[2026-10-18 02:47:48,977.977 INFO    ] ================================================
[2026-10-18 02:47:49,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:47:49
[2026-10-18 02:47:50,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:47:50,397.397 INFO    ] Initializing speech engine...
[2026-10-18 02:47:50,418.418 INFO    ] 2026-10-18 02:47:50
[2026-10-18 02:47:50,678.678 INFO    ] 2026-10-18 02:47:50
[2026-10-18 02:47:50,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:47:50,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:47:50,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:47:51,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:47:51,177.177 INFO    ] time= 18/10/2026 02:47:51
[2026-10-18 02:47:51,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:47:51,249.249 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:47:51,372.372 INFO    ] No existing commands found in stream
[2026-10-18 02:47:56,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:47:56,406.406 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-18 02:48:00,680.680 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:48:00,683.683 INFO    ] Checking for system updates...
[2026-10-18 02:48:00,722.722 INFO    ] 200
[2026-10-18 02:48:00,724.724 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:48:00,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:48:00,779.779 INFO    ] No update needed
[2026-10-18 02:48:00,781.781 INFO    ] Checking for camera pi updates...
[2026-10-18 02:48:00,815.815 INFO    ] 200
[2026-10-18 02:48:00,817.817 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:48:00,861.861 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:48:10,877.877 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:48:10,911.911 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:48:10,921.921 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:48:10,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:48:10,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:48:10,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:48:12,975.975 INFO    ] ================================================
[2026-10-18 02:48:12,990.990 INFO    ] Launching Daemon at Sun Oct 18 02:48:12 IST 2026
[2026-10-18 02:48:13,001.001 INFO    ] ================================================
[2026-10-18 02:48:13,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:48:13
[2026-10-18 02:48:14,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:48:14,423.423 INFO    ] Initializing speech engine...
[2026-10-18 02:48:14,432.432 INFO    ] 2026-10-18 02:48:14
[2026-10-18 02:48:14,689.689 INFO    ] 2026-10-18 02:48:14
[2026-10-18 02:48:14,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:48:14,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:48:14,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:48:15,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:48:15,231.231 INFO    ] time= 18/10/2026 02:48:15
[2026-10-18 02:48:15,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:48:15,255.255 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:48:15,386.386 INFO    ] No existing commands found in stream
[2026-10-18 02:48:20,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:48:20,403.403 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-18 02:48:21,907.907 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:48:21,910.910 INFO    ] Checking for system updates...
[2026-10-18 02:48:21,946.946 INFO    ] 200
[2026-10-18 02:48:21,949.949 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:48:22,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:48:22,005.005 INFO    ] No update needed
[2026-10-18 02:48:22,008.008 INFO    ] Checking for camera pi updates...
[2026-10-18 02:48:22,049.049 INFO    ] 200
[2026-10-18 02:48:22,051.051 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:48:22,090.090 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:48:32,106.106 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:48:32,142.142 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:48:32,153.153 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:48:32,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:48:32,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:48:32,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:48:34,209.209 INFO    ] ================================================
[2026-10-18 02:48:34,225.225 INFO    ] Launching Daemon at Sun Oct 18 02:48:34 IST 2026
[2026-10-18 02:48:34,236.236 INFO    ] ================================================
[2026-10-18 02:48:34,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:48:34
[2026-10-18 02:48:35,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:48:35,661.661 INFO    ] Initializing speech engine...
[2026-10-18 02:48:35,676.676 INFO    ] 2026-10-18 02:48:35
[2026-10-18 02:48:35,949.949 INFO    ] 2026-10-18 02:48:35
[2026-10-18 02:48:35,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:48:36,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:48:36,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:48:36,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:48:36,363.363 INFO    ] time= 18/10/2026 02:48:36
[2026-10-18 02:48:36,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:48:36,379.379 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:48:36,508.508 INFO    ] No existing commands found in stream
[2026-10-18 02:48:41,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:48:41,536.536 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-18 02:48:45,266.266 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 02:48:45,269.269 INFO    ] Checking for system updates...
[2026-10-18 02:48:45,310.310 INFO    ] 200
[2026-10-18 02:48:45,313.313 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:48:45,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:48:45,368.368 INFO    ] No update needed
[2026-10-18 02:48:45,371.371 INFO    ] Checking for camera pi updates...
[2026-10-18 02:48:45,409.409 INFO    ] 200
[2026-10-18 02:48:45,412.412 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:48:45,454.454 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:48:55,470.470 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:48:55,511.511 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:48:55,522.522 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:48:55,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:48:55,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:48:55,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:48:57,576.576 INFO    ] ================================================
[2026-10-18 02:48:57,591.591 INFO    ] Launching Daemon at Sun Oct 18 02:48:57 IST 2026
[2026-10-18 02:48:57,602.602 INFO    ] ================================================
[2026-10-18 02:48:58,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:48:58
[2026-10-18 02:48:58,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:48:59,219.219 INFO    ] Initializing speech engine...
[2026-10-18 02:48:59,227.227 INFO    ] 2026-10-18 02:48:59
[2026-10-18 02:48:59,497.497 INFO    ] 2026-10-18 02:48:59
[2026-10-18 02:48:59,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:48:59,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:48:59,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:48:59,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:48:59,972.972 INFO    ] time= 18/10/2026 02:48:59
[2026-10-18 02:49:00,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:49:00,107.107 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:49:00,239.239 INFO    ] No existing commands found in stream
[2026-10-18 02:49:05,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:49:05,260.260 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-18 02:49:06,940.940 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:49:06,943.943 INFO    ] Checking for system updates...
[2026-10-18 02:49:06,979.979 INFO    ] 200
[2026-10-18 02:49:06,981.981 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:49:07,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:49:07,035.035 INFO    ] No update needed
[2026-10-18 02:49:07,038.038 INFO    ] Checking for camera pi updates...
[2026-10-18 02:49:07,075.075 INFO    ] 200
[2026-10-18 02:49:07,077.077 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:49:07,117.117 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:49:17,130.130 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:49:17,165.165 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:49:17,175.175 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:49:17,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:49:17,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:49:17,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:49:19,228.228 INFO    ] ================================================
[2026-10-18 02:49:19,244.244 INFO    ] Launching Daemon at Sun Oct 18 02:49:19 IST 2026
[2026-10-18 02:49:19,255.255 INFO    ] ================================================
[2026-10-18 02:49:19,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:49:19
[2026-10-18 02:49:20,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:49:20,848.848 INFO    ] Initializing speech engine...
[2026-10-18 02:49:20,861.861 INFO    ] 2026-10-18 02:49:20
[2026-10-18 02:49:21,146.146 INFO    ] 2026-10-18 02:49:21
[2026-10-18 02:49:21,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:49:21,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:49:21,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:49:21,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:49:21,704.704 INFO    ] time= 18/10/2026 02:49:21
[2026-10-18 02:49:21,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:49:21,732.732 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:49:21,873.873 INFO    ] No existing commands found in stream
[2026-10-18 02:49:26,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:49:26,909.909 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-18 02:49:30,254.254 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 02:49:30,258.258 INFO    ] Checking for system updates...
[2026-10-18 02:49:30,294.294 INFO    ] 200
[2026-10-18 02:49:30,298.298 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:49:30,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:49:30,355.355 INFO    ] No update needed
[2026-10-18 02:49:30,358.358 INFO    ] Checking for camera pi updates...
[2026-10-18 02:49:30,398.398 INFO    ] 200
[2026-10-18 02:49:30,401.401 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:49:30,448.448 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:49:40,463.463 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:49:40,503.503 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:49:40,515.515 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:49:40,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:49:40,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:49:40,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:49:42,571.571 INFO    ] ================================================
[2026-10-18 02:49:42,586.586 INFO    ] Launching Daemon at Sun Oct 18 02:49:42 IST 2026
[2026-10-18 02:49:42,598.598 INFO    ] ================================================
[2026-10-18 02:49:43,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:49:43
[2026-10-18 02:49:43,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:49:44,025.025 INFO    ] Initializing speech engine...
[2026-10-18 02:49:44,046.046 INFO    ] 2026-10-18 02:49:44
[2026-10-18 02:49:44,323.323 INFO    ] 2026-10-18 02:49:44
[2026-10-18 02:49:44,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:49:44,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:49:44,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:49:44,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:49:44,703.703 INFO    ] time= 18/10/2026 02:49:44
[2026-10-18 02:49:44,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:49:44,742.742 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:49:44,831.831 INFO    ] No existing commands found in stream
[2026-10-18 02:49:49,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:49:49,849.849 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-18 02:49:53,702.702 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:49:53,705.705 INFO    ] Checking for system updates...
[2026-10-18 02:49:53,740.740 INFO    ] 200
[2026-10-18 02:49:53,743.743 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:49:53,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:49:53,798.798 INFO    ] No update needed
[2026-10-18 02:49:53,800.800 INFO    ] Checking for camera pi updates...
[2026-10-18 02:49:53,833.833 INFO    ] 200
[2026-10-18 02:49:53,836.836 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:49:53,876.876 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:50:03,889.889 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:50:03,924.924 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:50:03,933.933 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:50:03,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:50:03,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:50:03,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:50:05,986.986 INFO    ] ================================================
[2026-10-18 02:50:06,003.003 INFO    ] Launching Daemon at Sun Oct 18 02:50:05 IST 2026
[2026-10-18 02:50:06,014.014 INFO    ] ================================================
[2026-10-18 02:50:06,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:50:06
[2026-10-18 02:50:07,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:50:07,482.482 INFO    ] Initializing speech engine...
[2026-10-18 02:50:07,491.491 INFO    ] 2026-10-18 02:50:07
[2026-10-18 02:50:07,739.739 INFO    ] 2026-10-18 02:50:07
[2026-10-18 02:50:07,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:50:08,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:50:08,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:50:08,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:50:08,230.230 INFO    ] time= 18/10/2026 02:50:08
[2026-10-18 02:50:08,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:50:08,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:50:08,447.447 INFO    ] No existing commands found in stream
[2026-10-18 02:50:13,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:50:13,461.461 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-18 02:50:17,787.787 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:50:17,789.789 INFO    ] Checking for system updates...
[2026-10-18 02:50:17,825.825 INFO    ] 200
[2026-10-18 02:50:17,828.828 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:50:17,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:50:17,882.882 INFO    ] No update needed
[2026-10-18 02:50:17,885.885 INFO    ] Checking for camera pi updates...
[2026-10-18 02:50:17,922.922 INFO    ] 200
[2026-10-18 02:50:17,924.924 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:50:17,965.965 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:50:27,980.980 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:50:28,015.015 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:50:28,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:50:28,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:50:28,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:50:28,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:50:30,079.079 INFO    ] ================================================
[2026-10-18 02:50:30,096.096 INFO    ] Launching Daemon at Sun Oct 18 02:50:30 IST 2026
[2026-10-18 02:50:30,107.107 INFO    ] ================================================
[2026-10-18 02:50:30,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:50:30
[2026-10-18 02:50:31,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:50:31,568.568 INFO    ] Initializing speech engine...
[2026-10-18 02:50:31,577.577 INFO    ] 2026-10-18 02:50:31
[2026-10-18 02:50:31,840.840 INFO    ] 2026-10-18 02:50:31
[2026-10-18 02:50:31,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:50:32,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:50:32,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:50:32,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:50:32,335.335 INFO    ] time= 18/10/2026 02:50:32
[2026-10-18 02:50:32,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:50:32,433.433 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:50:32,633.633 INFO    ] No existing commands found in stream
[2026-10-18 02:50:37,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:50:37,672.672 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-18 02:50:39,558.558 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:50:39,561.561 INFO    ] Checking for system updates...
[2026-10-18 02:50:39,598.598 INFO    ] 200
[2026-10-18 02:50:39,601.601 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:50:39,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:50:39,658.658 INFO    ] No update needed
[2026-10-18 02:50:39,661.661 INFO    ] Checking for camera pi updates...
[2026-10-18 02:50:39,700.700 INFO    ] 200
[2026-10-18 02:50:39,703.703 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:50:39,744.744 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:50:49,760.760 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:50:49,808.808 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:50:49,820.820 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:50:49,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:50:49,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:50:49,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:50:51,877.877 INFO    ] ================================================
[2026-10-18 02:50:51,894.894 INFO    ] Launching Daemon at Sun Oct 18 02:50:51 IST 2026
[2026-10-18 02:50:51,905.905 INFO    ] ================================================
[2026-10-18 02:50:52,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:50:52
[2026-10-18 02:50:53,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:50:53,446.446 INFO    ] Initializing speech engine...
[2026-10-18 02:50:53,453.453 INFO    ] 2026-10-18 02:50:53
[2026-10-18 02:50:53,712.712 INFO    ] 2026-10-18 02:50:53
[2026-10-18 02:50:53,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:50:53,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:50:53,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:50:54,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:50:54,257.257 INFO    ] time= 18/10/2026 02:50:54
[2026-10-18 02:50:54,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:50:54,280.280 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:50:54,410.410 INFO    ] No existing commands found in stream
[2026-10-18 02:50:59,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:50:59,425.425 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-18 02:51:03,410.410 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:51:03,413.413 INFO    ] Checking for system updates...
[2026-10-18 02:51:03,461.461 INFO    ] 200
[2026-10-18 02:51:03,464.464 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 02:51:03,471.471 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-18 02:51:03,474.474 INFO    ] Checking for camera pi updates...
[2026-10-18 02:51:03,518.518 INFO    ] 200
[2026-10-18 02:51:03,521.521 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 02:51:03,524.524 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-18 02:51:03,528.528 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:51:03,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:51:03,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:51:03,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:51:05,589.589 INFO    ] ================================================
[2026-10-18 02:51:05,604.604 INFO    ] Launching Daemon at Sun Oct 18 02:51:05 IST 2026
[2026-10-18 02:51:05,615.615 INFO    ] ================================================
[2026-10-18 02:51:06,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:51:06
[2026-10-18 02:51:06,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:51:07,266.266 INFO    ] Initializing speech engine...
[2026-10-18 02:51:07,274.274 INFO    ] 2026-10-18 02:51:07
[2026-10-18 02:51:07,568.568 INFO    ] 2026-10-18 02:51:07
[2026-10-18 02:51:07,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:51:07,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:51:07,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:51:08,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:51:08,099.099 INFO    ] time= 18/10/2026 02:51:08
[2026-10-18 02:51:08,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:51:08,146.146 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:51:08,263.263 INFO    ] No existing commands found in stream
[2026-10-18 02:51:13,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:51:13,290.290 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-18 02:51:15,668.668 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:51:15,671.671 INFO    ] Checking for system updates...
[2026-10-18 02:51:15,706.706 INFO    ] 200
[2026-10-18 02:51:15,708.708 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:51:15,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:51:15,763.763 INFO    ] No update needed
[2026-10-18 02:51:15,765.765 INFO    ] Checking for camera pi updates...
[2026-10-18 02:51:15,799.799 INFO    ] 200
[2026-10-18 02:51:15,802.802 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:51:15,842.842 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:51:25,857.857 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:51:25,896.896 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:51:25,906.906 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:51:25,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:51:25,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:51:25,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:51:27,959.959 INFO    ] ================================================
[2026-10-18 02:51:27,974.974 INFO    ] Launching Daemon at Sun Oct 18 02:51:27 IST 2026
[2026-10-18 02:51:27,984.984 INFO    ] ================================================
[2026-10-18 02:51:28,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:51:28
[2026-10-18 02:51:29,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:51:29,632.632 INFO    ] Initializing speech engine...
[2026-10-18 02:51:29,647.647 INFO    ] 2026-10-18 02:51:29
[2026-10-18 02:51:29,916.916 INFO    ] 2026-10-18 02:51:29
[2026-10-18 02:51:29,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:51:30,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:51:30,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:51:30,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:51:30,472.472 INFO    ] time= 18/10/2026 02:51:30
[2026-10-18 02:51:30,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:51:30,502.502 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:51:30,691.691 INFO    ] No existing commands found in stream
[2026-10-18 02:51:35,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:51:35,726.726 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-18 02:51:38,104.104 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:51:38,107.107 INFO    ] Checking for system updates...
[2026-10-18 02:51:38,143.143 INFO    ] 200
[2026-10-18 02:51:38,145.145 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:51:38,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:51:38,200.200 INFO    ] No update needed
[2026-10-18 02:51:38,202.202 INFO    ] Checking for camera pi updates...
[2026-10-18 02:51:38,236.236 INFO    ] 200
[2026-10-18 02:51:38,238.238 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:51:38,284.284 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:51:48,299.299 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:51:48,333.333 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:51:48,343.343 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:51:48,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:51:48,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:51:48,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:51:50,395.395 INFO    ] ================================================
[2026-10-18 02:51:50,410.410 INFO    ] Launching Daemon at Sun Oct 18 02:51:50 IST 2026
[2026-10-18 02:51:50,421.421 INFO    ] ================================================
[2026-10-18 02:51:51,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:51:51
[2026-10-18 02:51:51,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:51:51,877.877 INFO    ] Initializing speech engine...
[2026-10-18 02:51:51,903.903 INFO    ] 2026-10-18 02:51:51
[2026-10-18 02:51:52,179.179 INFO    ] 2026-10-18 02:51:52
[2026-10-18 02:51:52,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:51:52,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:51:52,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:51:52,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:51:52,601.601 INFO    ] time= 18/10/2026 02:51:52
[2026-10-18 02:51:52,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:51:52,613.613 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:51:52,694.694 INFO    ] No existing commands found in stream
[2026-10-18 02:51:57,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:51:57,711.711 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-18 02:52:01,249.249 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:52:01,251.251 INFO    ] Checking for system updates...
[2026-10-18 02:52:01,287.287 INFO    ] 200
[2026-10-18 02:52:01,290.290 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:52:01,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:52:01,344.344 INFO    ] No update needed
[2026-10-18 02:52:01,346.346 INFO    ] Checking for camera pi updates...
[2026-10-18 02:52:01,379.379 INFO    ] 200
[2026-10-18 02:52:01,382.382 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:52:01,423.423 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:52:11,437.437 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:52:11,472.472 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:52:11,481.481 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:52:11,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:52:11,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:52:11,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:52:13,534.534 INFO    ] ================================================
[2026-10-18 02:52:13,549.549 INFO    ] Launching Daemon at Sun Oct 18 02:52:13 IST 2026
[2026-10-18 02:52:13,559.559 INFO    ] ================================================
[2026-10-18 02:52:14,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:52:14
[2026-10-18 02:52:14,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:52:15,127.127 INFO    ] Initializing speech engine...
[2026-10-18 02:52:15,139.139 INFO    ] 2026-10-18 02:52:15
[2026-10-18 02:52:15,449.449 INFO    ] 2026-10-18 02:52:15
[2026-10-18 02:52:15,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:52:15,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:52:15,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:52:16,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:52:16,159.159 INFO    ] time= 18/10/2026 02:52:16
[2026-10-18 02:52:16,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:52:16,241.241 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:52:16,395.395 INFO    ] No existing commands found in stream
[2026-10-18 02:52:21,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:52:21,414.414 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-18 02:52:22,544.544 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 02:52:22,547.547 INFO    ] Checking for system updates...
[2026-10-18 02:52:22,582.582 INFO    ] 200
[2026-10-18 02:52:22,585.585 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:52:22,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:52:22,648.648 INFO    ] No update needed
[2026-10-18 02:52:22,650.650 INFO    ] Checking for camera pi updates...
[2026-10-18 02:52:22,683.683 INFO    ] 200
[2026-10-18 02:52:22,685.685 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:52:22,725.725 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:52:32,741.741 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:52:32,778.778 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:52:32,789.789 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:52:32,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:52:32,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:52:32,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:52:34,844.844 INFO    ] ================================================
[2026-10-18 02:52:34,860.860 INFO    ] Launching Daemon at Sun Oct 18 02:52:34 IST 2026
[2026-10-18 02:52:34,871.871 INFO    ] ================================================
[2026-10-18 02:52:35,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:52:35
[2026-10-18 02:52:36,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:52:36,287.287 INFO    ] Initializing speech engine...
[2026-10-18 02:52:36,302.302 INFO    ] 2026-10-18 02:52:36
[2026-10-18 02:52:36,580.580 INFO    ] 2026-10-18 02:52:36
[2026-10-18 02:52:36,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:52:36,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:52:36,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:52:37,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:52:37,086.086 INFO    ] time= 18/10/2026 02:52:37
[2026-10-18 02:52:37,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:52:37,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:52:37,295.295 INFO    ] No existing commands found in stream
[2026-10-18 02:52:42,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:52:42,319.319 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-18 02:52:43,838.838 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:52:43,841.841 INFO    ] Checking for system updates...
[2026-10-18 02:52:43,876.876 INFO    ] 200
[2026-10-18 02:52:43,879.879 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:52:43,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:52:43,933.933 INFO    ] No update needed
[2026-10-18 02:52:43,936.936 INFO    ] Checking for camera pi updates...
[2026-10-18 02:52:43,971.971 INFO    ] 200
[2026-10-18 02:52:43,973.973 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:52:44,013.013 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:52:54,028.028 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:52:54,066.066 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:52:54,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:52:54,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:52:54,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:52:54,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:52:56,143.143 INFO    ] ================================================
[2026-10-18 02:52:56,158.158 INFO    ] Launching Daemon at Sun Oct 18 02:52:56 IST 2026
[2026-10-18 02:52:56,169.169 INFO    ] ================================================
[2026-10-18 02:52:56,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:52:56
[2026-10-18 02:52:57,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:52:57,594.594 INFO    ] Initializing speech engine...
[2026-10-18 02:52:57,600.600 INFO    ] 2026-10-18 02:52:57
[2026-10-18 02:52:57,847.847 INFO    ] 2026-10-18 02:52:57
[2026-10-18 02:52:57,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:52:58,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:52:58,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:52:58,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:52:58,361.361 INFO    ] time= 18/10/2026 02:52:58
[2026-10-18 02:52:58,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:52:58,415.415 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:52:58,541.541 INFO    ] No existing commands found in stream
[2026-10-18 02:53:03,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:53:03,571.571 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-18 02:53:05,822.822 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:53:05,824.824 INFO    ] Checking for system updates...
[2026-10-18 02:53:05,863.863 INFO    ] 200
[2026-10-18 02:53:05,866.866 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:53:05,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:53:05,921.921 INFO    ] No update needed
[2026-10-18 02:53:05,923.923 INFO    ] Checking for camera pi updates...
[2026-10-18 02:53:05,957.957 INFO    ] 200
[2026-10-18 02:53:05,959.959 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:53:06,004.004 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:53:16,019.019 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:53:16,054.054 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:53:16,063.063 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:53:16,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:53:16,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:53:16,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:53:18,117.117 INFO    ] ================================================
[2026-10-18 02:53:18,134.134 INFO    ] Launching Daemon at Sun Oct 18 02:53:18 IST 2026
[2026-10-18 02:53:18,145.145 INFO    ] ================================================
[2026-10-18 02:53:18,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:53:18
[2026-10-18 02:53:19,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:53:19,806.806 INFO    ] Initializing speech engine...
[2026-10-18 02:53:19,815.815 INFO    ] 2026-10-18 02:53:19
[2026-10-18 02:53:20,099.099 INFO    ] 2026-10-18 02:53:20
[2026-10-18 02:53:20,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:53:20,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:53:20,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:53:20,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:53:20,633.633 INFO    ] time= 18/10/2026 02:53:20
[2026-10-18 02:53:20,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:53:20,679.679 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:53:20,789.789 INFO    ] No existing commands found in stream
[2026-10-18 02:53:25,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:53:25,822.822 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-18 02:53:27,324.324 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:53:27,328.328 INFO    ] Checking for system updates...
[2026-10-18 02:53:27,365.365 INFO    ] 200
[2026-10-18 02:53:27,368.368 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:53:27,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:53:27,423.423 INFO    ] No update needed
[2026-10-18 02:53:27,426.426 INFO    ] Checking for camera pi updates...
[2026-10-18 02:53:27,463.463 INFO    ] 200
[2026-10-18 02:53:27,466.466 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:53:27,506.506 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:53:37,521.521 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:53:37,556.556 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:53:37,565.565 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:53:37,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:53:37,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:53:37,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:53:39,618.618 INFO    ] ================================================
[2026-10-18 02:53:39,633.633 INFO    ] Launching Daemon at Sun Oct 18 02:53:39 IST 2026
[2026-10-18 02:53:39,645.645 INFO    ] ================================================
[2026-10-18 02:53:40,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:53:40
[2026-10-18 02:53:40,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:53:41,102.102 INFO    ] Initializing speech engine...
[2026-10-18 02:53:41,111.111 INFO    ] 2026-10-18 02:53:41
[2026-10-18 02:53:41,369.369 INFO    ] 2026-10-18 02:53:41
[2026-10-18 02:53:41,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:53:41,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:53:41,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:53:41,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:53:41,858.858 INFO    ] time= 18/10/2026 02:53:41
[2026-10-18 02:53:41,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:53:41,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:53:42,063.063 INFO    ] No existing commands found in stream
[2026-10-18 02:53:47,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:53:47,080.080 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-18 02:53:49,970.970 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:53:49,973.973 INFO    ] Checking for system updates...
[2026-10-18 02:53:50,008.008 INFO    ] 200
[2026-10-18 02:53:50,011.011 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:53:50,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:53:50,074.074 INFO    ] No update needed
[2026-10-18 02:53:50,076.076 INFO    ] Checking for camera pi updates...
[2026-10-18 02:53:50,110.110 INFO    ] 200
[2026-10-18 02:53:50,112.112 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:53:50,152.152 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:54:00,168.168 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:54:00,203.203 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:54:00,213.213 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:54:00,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:54:00,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:54:00,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:54:02,268.268 INFO    ] ================================================
[2026-10-18 02:54:02,290.290 INFO    ] Launching Daemon at Sun Oct 18 02:54:02 IST 2026
[2026-10-18 02:54:02,305.305 INFO    ] ================================================
[2026-10-18 02:54:02,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:54:02
[2026-10-18 02:54:03,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:54:03,934.934 INFO    ] Initializing speech engine...
[2026-10-18 02:54:03,939.939 INFO    ] 2026-10-18 02:54:03
[2026-10-18 02:54:04,184.184 INFO    ] 2026-10-18 02:54:04
[2026-10-18 02:54:04,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:54:04,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:54:04,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:54:04,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:54:04,670.670 INFO    ] time= 18/10/2026 02:54:04
[2026-10-18 02:54:04,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:54:04,756.756 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:54:04,907.907 INFO    ] No existing commands found in stream
[2026-10-18 02:54:09,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:54:09,924.924 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-18 02:54:12,422.422 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:54:12,424.424 INFO    ] Checking for system updates...
[2026-10-18 02:54:12,465.465 INFO    ] 200
[2026-10-18 02:54:12,467.467 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:54:12,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:54:12,524.524 INFO    ] No update needed
[2026-10-18 02:54:12,527.527 INFO    ] Checking for camera pi updates...
[2026-10-18 02:54:12,562.562 INFO    ] 200
[2026-10-18 02:54:12,565.565 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:54:12,612.612 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:54:22,626.626 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:54:22,666.666 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:54:22,678.678 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:54:22,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:54:22,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:54:22,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:54:24,734.734 INFO    ] ================================================
[2026-10-18 02:54:24,749.749 INFO    ] Launching Daemon at Sun Oct 18 02:54:24 IST 2026
[2026-10-18 02:54:24,760.760 INFO    ] ================================================
[2026-10-18 02:54:25,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:54:25
[2026-10-18 02:54:25,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:54:26,218.218 INFO    ] Initializing speech engine...
[2026-10-18 02:54:26,226.226 INFO    ] 2026-10-18 02:54:26
[2026-10-18 02:54:26,484.484 INFO    ] 2026-10-18 02:54:26
[2026-10-18 02:54:26,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:54:26,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:54:26,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:54:26,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:54:26,978.978 INFO    ] time= 18/10/2026 02:54:26
[2026-10-18 02:54:27,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:54:27,042.042 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:54:27,187.187 INFO    ] No existing commands found in stream
[2026-10-18 02:54:32,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:54:32,210.210 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-18 02:54:34,625.625 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:54:34,628.628 INFO    ] Checking for system updates...
[2026-10-18 02:54:34,664.664 INFO    ] 200
[2026-10-18 02:54:34,666.666 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:54:34,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:54:34,721.721 INFO    ] No update needed
[2026-10-18 02:54:34,724.724 INFO    ] Checking for camera pi updates...
[2026-10-18 02:54:34,758.758 INFO    ] 200
[2026-10-18 02:54:34,760.760 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:54:34,805.805 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:54:44,820.820 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:54:44,855.855 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:54:44,864.864 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:54:44,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:54:44,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:54:44,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:54:46,917.917 INFO    ] ================================================
[2026-10-18 02:54:46,933.933 INFO    ] Launching Daemon at Sun Oct 18 02:54:46 IST 2026
[2026-10-18 02:54:46,944.944 INFO    ] ================================================
[2026-10-18 02:54:47,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:54:47
[2026-10-18 02:54:48,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:54:48,395.395 INFO    ] Initializing speech engine...
[2026-10-18 02:54:48,402.402 INFO    ] 2026-10-18 02:54:48
[2026-10-18 02:54:48,671.671 INFO    ] 2026-10-18 02:54:48
[2026-10-18 02:54:48,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:54:48,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:54:48,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:54:49,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:54:49,066.066 INFO    ] time= 18/10/2026 02:54:49
[2026-10-18 02:54:49,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:54:49,078.078 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:54:49,175.175 INFO    ] No existing commands found in stream
[2026-10-18 02:54:54,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:54:54,213.213 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-18 02:54:56,837.837 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:54:56,840.840 INFO    ] Checking for system updates...
[2026-10-18 02:54:56,875.875 INFO    ] 200
[2026-10-18 02:54:56,878.878 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:54:56,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:54:56,932.932 INFO    ] No update needed
[2026-10-18 02:54:56,934.934 INFO    ] Checking for camera pi updates...
[2026-10-18 02:54:56,972.972 INFO    ] 200
[2026-10-18 02:54:56,974.974 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:54:57,020.020 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:55:07,036.036 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:55:07,071.071 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:55:07,080.080 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:55:07,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:55:07,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:55:07,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:55:09,138.138 INFO    ] ================================================
[2026-10-18 02:55:09,154.154 INFO    ] Launching Daemon at Sun Oct 18 02:55:09 IST 2026
[2026-10-18 02:55:09,165.165 INFO    ] ================================================
[2026-10-18 02:55:09,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:55:09
[2026-10-18 02:55:10,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:55:10,828.828 INFO    ] Initializing speech engine...
[2026-10-18 02:55:10,841.841 INFO    ] 2026-10-18 02:55:10
[2026-10-18 02:55:11,156.156 INFO    ] 2026-10-18 02:55:11
[2026-10-18 02:55:11,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:55:11,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:55:11,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:55:11,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:55:11,668.668 INFO    ] time= 18/10/2026 02:55:11
[2026-10-18 02:55:11,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:55:11,721.721 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:55:11,834.834 INFO    ] No existing commands found in stream
[2026-10-18 02:55:16,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:55:16,868.868 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-18 02:55:18,114.114 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 02:55:18,118.118 INFO    ] Checking for system updates...
[2026-10-18 02:55:18,154.154 INFO    ] 200
[2026-10-18 02:55:18,157.157 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:55:18,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:55:18,211.211 INFO    ] No update needed
[2026-10-18 02:55:18,214.214 INFO    ] Checking for camera pi updates...
[2026-10-18 02:55:18,247.247 INFO    ] 200
[2026-10-18 02:55:18,250.250 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:55:18,295.295 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:55:28,310.310 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:55:28,345.345 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:55:28,355.355 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:55:28,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:55:28,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:55:28,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:55:30,407.407 INFO    ] ================================================
[2026-10-18 02:55:30,423.423 INFO    ] Launching Daemon at Sun Oct 18 02:55:30 IST 2026
[2026-10-18 02:55:30,434.434 INFO    ] ================================================
[2026-10-18 02:55:31,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:55:31
[2026-10-18 02:55:31,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:55:32,043.043 INFO    ] Initializing speech engine...
[2026-10-18 02:55:32,050.050 INFO    ] 2026-10-18 02:55:32
[2026-10-18 02:55:32,329.329 INFO    ] 2026-10-18 02:55:32
[2026-10-18 02:55:32,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:55:32,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:55:32,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:55:32,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:55:32,766.766 INFO    ] time= 18/10/2026 02:55:32
[2026-10-18 02:55:32,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:55:32,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:55:32,885.885 INFO    ] No existing commands found in stream
[2026-10-18 02:55:37,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:55:37,902.902 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-18 02:55:39,842.842 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:55:39,844.844 INFO    ] Checking for system updates...
[2026-10-18 02:55:39,885.885 INFO    ] 200
[2026-10-18 02:55:39,887.887 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:55:39,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:55:39,942.942 INFO    ] No update needed
[2026-10-18 02:55:39,944.944 INFO    ] Checking for camera pi updates...
[2026-10-18 02:55:39,982.982 INFO    ] 200
[2026-10-18 02:55:39,984.984 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:55:40,030.030 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:55:50,044.044 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:55:50,079.079 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:55:50,089.089 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:55:50,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:55:50,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:55:50,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:55:52,142.142 INFO    ] ================================================
[2026-10-18 02:55:52,158.158 INFO    ] Launching Daemon at Sun Oct 18 02:55:52 IST 2026
[2026-10-18 02:55:52,169.169 INFO    ] ================================================
[2026-10-18 02:55:52,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:55:52
[2026-10-18 02:55:53,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:55:53,566.566 INFO    ] Initializing speech engine...
[2026-10-18 02:55:53,581.581 INFO    ] 2026-10-18 02:55:53
[2026-10-18 02:55:53,841.841 INFO    ] 2026-10-18 02:55:53
[2026-10-18 02:55:53,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:55:54,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:55:54,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:55:54,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:55:54,333.333 INFO    ] time= 18/10/2026 02:55:54
[2026-10-18 02:55:54,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:55:54,403.403 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:55:54,527.527 INFO    ] No existing commands found in stream
[2026-10-18 02:55:59,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:55:59,560.560 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-18 02:56:01,404.404 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:56:01,407.407 INFO    ] Checking for system updates...
[2026-10-18 02:56:01,443.443 INFO    ] 200
[2026-10-18 02:56:01,445.445 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:56:01,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:56:01,499.499 INFO    ] No update needed
[2026-10-18 02:56:01,502.502 INFO    ] Checking for camera pi updates...
[2026-10-18 02:56:01,540.540 INFO    ] 200
[2026-10-18 02:56:01,542.542 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:56:01,582.582 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:56:11,597.597 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:56:11,632.632 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:56:11,642.642 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:56:11,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:56:11,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:56:11,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:56:13,696.696 INFO    ] ================================================
[2026-10-18 02:56:13,712.712 INFO    ] Launching Daemon at Sun Oct 18 02:56:13 IST 2026
[2026-10-18 02:56:13,723.723 INFO    ] ================================================
[2026-10-18 02:56:14,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:56:14
[2026-10-18 02:56:14,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:56:15,207.207 INFO    ] Initializing speech engine...
[2026-10-18 02:56:15,221.221 INFO    ] 2026-10-18 02:56:15
[2026-10-18 02:56:15,490.490 INFO    ] 2026-10-18 02:56:15
[2026-10-18 02:56:15,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:56:15,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:56:15,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:56:15,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:56:15,986.986 INFO    ] time= 18/10/2026 02:56:15
[2026-10-18 02:56:16,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:56:16,063.063 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:56:16,223.223 INFO    ] No existing commands found in stream
[2026-10-18 02:56:21,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:56:21,252.252 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-18 02:56:23,665.665 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:56:23,668.668 INFO    ] Checking for system updates...
[2026-10-18 02:56:23,711.711 INFO    ] 200
[2026-10-18 02:56:23,714.714 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:56:23,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:56:23,774.774 INFO    ] No update needed
[2026-10-18 02:56:23,777.777 INFO    ] Checking for camera pi updates...
[2026-10-18 02:56:23,815.815 INFO    ] 200
[2026-10-18 02:56:23,818.818 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:56:23,864.864 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:56:33,877.877 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:56:33,913.913 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:56:33,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:56:33,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:56:33,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:56:33,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:56:35,977.977 INFO    ] ================================================
[2026-10-18 02:56:35,993.993 INFO    ] Launching Daemon at Sun Oct 18 02:56:35 IST 2026
[2026-10-18 02:56:36,004.004 INFO    ] ================================================
[2026-10-18 02:56:36,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:56:36
[2026-10-18 02:56:37,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:56:37,661.661 INFO    ] Initializing speech engine...
[2026-10-18 02:56:37,672.672 INFO    ] 2026-10-18 02:56:37
[2026-10-18 02:56:37,956.956 INFO    ] 2026-10-18 02:56:37
[2026-10-18 02:56:38,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:56:38,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:56:38,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:56:38,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:56:38,494.494 INFO    ] time= 18/10/2026 02:56:38
[2026-10-18 02:56:38,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:56:38,546.546 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:56:38,686.686 INFO    ] No existing commands found in stream
[2026-10-18 02:56:43,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:56:43,721.721 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-18 02:56:45,287.287 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:56:45,290.290 INFO    ] Checking for system updates...
[2026-10-18 02:56:45,328.328 INFO    ] 200
[2026-10-18 02:56:45,331.331 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:56:45,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:56:45,397.397 INFO    ] No update needed
[2026-10-18 02:56:45,400.400 INFO    ] Checking for camera pi updates...
[2026-10-18 02:56:45,441.441 INFO    ] 200
[2026-10-18 02:56:45,444.444 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:56:45,490.490 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:56:55,507.507 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:56:55,549.549 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:56:55,560.560 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:56:55,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:56:55,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:56:55,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:56:57,617.617 INFO    ] ================================================
[2026-10-18 02:56:57,633.633 INFO    ] Launching Daemon at Sun Oct 18 02:56:57 IST 2026
[2026-10-18 02:56:57,645.645 INFO    ] ================================================
[2026-10-18 02:56:58,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:56:58
[2026-10-18 02:56:59,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:56:59,344.344 INFO    ] Initializing speech engine...
[2026-10-18 02:56:59,351.351 INFO    ] 2026-10-18 02:56:59
[2026-10-18 02:56:59,619.619 INFO    ] 2026-10-18 02:56:59
[2026-10-18 02:56:59,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:56:59,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:56:59,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:57:00,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:57:00,143.143 INFO    ] time= 18/10/2026 02:57:00
[2026-10-18 02:57:00,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:57:00,183.183 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:57:00,316.316 INFO    ] No existing commands found in stream
[2026-10-18 02:57:05,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:57:05,339.339 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-18 02:57:09,784.784 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 02:57:09,787.787 INFO    ] Checking for system updates...
[2026-10-18 02:57:09,822.822 INFO    ] 200
[2026-10-18 02:57:09,825.825 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:57:09,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:57:09,880.880 INFO    ] No update needed
[2026-10-18 02:57:09,882.882 INFO    ] Checking for camera pi updates...
[2026-10-18 02:57:09,921.921 INFO    ] 200
[2026-10-18 02:57:09,924.924 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:57:09,969.969 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:57:19,984.984 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:57:20,019.019 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:57:20,028.028 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:57:20,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:57:20,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:57:20,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:57:22,082.082 INFO    ] ================================================
[2026-10-18 02:57:22,098.098 INFO    ] Launching Daemon at Sun Oct 18 02:57:22 IST 2026
[2026-10-18 02:57:22,110.110 INFO    ] ================================================
[2026-10-18 02:57:22,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:57:22
[2026-10-18 02:57:23,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:57:23,597.597 INFO    ] Initializing speech engine...
[2026-10-18 02:57:23,607.607 INFO    ] 2026-10-18 02:57:23
[2026-10-18 02:57:23,871.871 INFO    ] 2026-10-18 02:57:23
[2026-10-18 02:57:23,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:57:24,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:57:24,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:57:24,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:57:24,360.360 INFO    ] time= 18/10/2026 02:57:24
[2026-10-18 02:57:24,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:57:24,425.425 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:57:24,566.566 INFO    ] No existing commands found in stream
[2026-10-18 02:57:29,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:57:29,582.582 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-18 02:57:31,845.845 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 02:57:31,848.848 INFO    ] Checking for system updates...
[2026-10-18 02:57:31,889.889 INFO    ] 200
[2026-10-18 02:57:31,892.892 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:57:31,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:57:31,964.964 INFO    ] No update needed
[2026-10-18 02:57:31,967.967 INFO    ] Checking for camera pi updates...
[2026-10-18 02:57:32,008.008 INFO    ] 200
[2026-10-18 02:57:32,011.011 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:57:32,070.070 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:57:42,088.088 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:57:42,129.129 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:57:42,141.141 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:57:42,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:57:42,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:57:42,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:57:44,196.196 INFO    ] ================================================
[2026-10-18 02:57:44,212.212 INFO    ] Launching Daemon at Sun Oct 18 02:57:44 IST 2026
[2026-10-18 02:57:44,223.223 INFO    ] ================================================
[2026-10-18 02:57:44,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:57:44
[2026-10-18 02:57:45,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:57:45,654.654 INFO    ] Initializing speech engine...
[2026-10-18 02:57:45,660.660 INFO    ] 2026-10-18 02:57:45
[2026-10-18 02:57:45,919.919 INFO    ] 2026-10-18 02:57:45
[2026-10-18 02:57:45,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:57:46,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:57:46,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:57:46,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:57:46,467.467 INFO    ] time= 18/10/2026 02:57:46
[2026-10-18 02:57:46,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:57:46,491.491 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:57:46,621.621 INFO    ] No existing commands found in stream
[2026-10-18 02:57:51,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:57:51,637.637 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-18 02:57:55,427.427 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:57:55,430.430 INFO    ] Checking for system updates...
[2026-10-18 02:57:55,470.470 INFO    ] 200
[2026-10-18 02:57:55,472.472 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:57:55,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:57:55,535.535 INFO    ] No update needed
[2026-10-18 02:57:55,537.537 INFO    ] Checking for camera pi updates...
[2026-10-18 02:57:55,571.571 INFO    ] 200
[2026-10-18 02:57:55,574.574 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:57:55,615.615 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:58:05,629.629 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:58:05,665.665 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:58:05,674.674 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:58:05,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:58:05,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:58:05,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:58:07,727.727 INFO    ] ================================================
[2026-10-18 02:58:07,743.743 INFO    ] Launching Daemon at Sun Oct 18 02:58:07 IST 2026
[2026-10-18 02:58:07,754.754 INFO    ] ================================================
[2026-10-18 02:58:08,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:58:08
[2026-10-18 02:58:08,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:58:09,153.153 INFO    ] Initializing speech engine...
[2026-10-18 02:58:09,168.168 INFO    ] 2026-10-18 02:58:09
[2026-10-18 02:58:09,451.451 INFO    ] 2026-10-18 02:58:09
[2026-10-18 02:58:09,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:58:09,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:58:09,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:58:09,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:58:09,956.956 INFO    ] time= 18/10/2026 02:58:09
[2026-10-18 02:58:10,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:58:10,025.025 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:58:10,164.164 INFO    ] No existing commands found in stream
[2026-10-18 02:58:15,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:58:15,190.190 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-18 02:58:18,334.334 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 02:58:18,337.337 INFO    ] Checking for system updates...
[2026-10-18 02:58:18,379.379 INFO    ] 200
[2026-10-18 02:58:18,382.382 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:58:18,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:58:18,448.448 INFO    ] No update needed
[2026-10-18 02:58:18,452.452 INFO    ] Checking for camera pi updates...
[2026-10-18 02:58:18,493.493 INFO    ] 200
[2026-10-18 02:58:18,496.496 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:58:18,544.544 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:58:28,562.562 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:58:28,603.603 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:58:28,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:58:28,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:58:28,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:58:28,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:58:30,670.670 INFO    ] ================================================
[2026-10-18 02:58:30,687.687 INFO    ] Launching Daemon at Sun Oct 18 02:58:30 IST 2026
[2026-10-18 02:58:30,698.698 INFO    ] ================================================
[2026-10-18 02:58:31,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:58:31
[2026-10-18 02:58:32,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:58:32,462.462 INFO    ] Initializing speech engine...
[2026-10-18 02:58:32,470.470 INFO    ] 2026-10-18 02:58:32
[2026-10-18 02:58:32,790.790 INFO    ] 2026-10-18 02:58:32
[2026-10-18 02:58:32,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:58:33,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:58:33,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:58:33,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:58:33,616.616 INFO    ] time= 18/10/2026 02:58:33
[2026-10-18 02:58:33,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:58:33,725.725 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:58:33,921.921 INFO    ] No existing commands found in stream
[2026-10-18 02:58:38,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:58:38,961.961 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-18 02:58:42,284.284 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 02:58:42,288.288 INFO    ] Checking for system updates...
[2026-10-18 02:58:42,329.329 INFO    ] 200
[2026-10-18 02:58:42,332.332 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:58:42,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:58:42,395.395 INFO    ] No update needed
[2026-10-18 02:58:42,398.398 INFO    ] Checking for camera pi updates...
[2026-10-18 02:58:42,432.432 INFO    ] 200
[2026-10-18 02:58:42,434.434 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:58:42,474.474 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:58:52,489.489 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:58:52,523.523 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:58:52,533.533 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:58:52,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:58:52,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:58:52,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:58:54,586.586 INFO    ] ================================================
[2026-10-18 02:58:54,602.602 INFO    ] Launching Daemon at Sun Oct 18 02:58:54 IST 2026
[2026-10-18 02:58:54,614.614 INFO    ] ================================================
[2026-10-18 02:58:55,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:58:55
[2026-10-18 02:58:55,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:58:56,235.235 INFO    ] Initializing speech engine...
[2026-10-18 02:58:56,243.243 INFO    ] 2026-10-18 02:58:56
[2026-10-18 02:58:56,512.512 INFO    ] 2026-10-18 02:58:56
[2026-10-18 02:58:56,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:58:56,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:58:56,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:58:57,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:58:57,042.042 INFO    ] time= 18/10/2026 02:58:57
[2026-10-18 02:58:57,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:58:57,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:58:57,214.214 INFO    ] No existing commands found in stream
[2026-10-18 02:59:02,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:59:02,248.248 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-18 02:59:06,649.649 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 02:59:06,652.652 INFO    ] Checking for system updates...
[2026-10-18 02:59:06,692.692 INFO    ] 200
[2026-10-18 02:59:06,695.695 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:59:06,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 02:59:06,757.757 INFO    ] No update needed
[2026-10-18 02:59:06,759.759 INFO    ] Checking for camera pi updates...
[2026-10-18 02:59:06,797.797 INFO    ] 200
[2026-10-18 02:59:06,799.799 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:59:06,845.845 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:59:16,858.858 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:59:16,892.892 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:59:16,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:59:16,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:59:16,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:59:16,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:59:18,956.956 INFO    ] ================================================
[2026-10-18 02:59:18,972.972 INFO    ] Launching Daemon at Sun Oct 18 02:59:18 IST 2026
[2026-10-18 02:59:18,984.984 INFO    ] ================================================
[2026-10-18 02:59:19,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:59:19
[2026-10-18 02:59:20,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:59:20,470.470 INFO    ] Initializing speech engine...
[2026-10-18 02:59:20,480.480 INFO    ] 2026-10-18 02:59:20
[2026-10-18 02:59:20,777.777 INFO    ] 2026-10-18 02:59:20
[2026-10-18 02:59:20,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:59:21,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:59:21,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:59:21,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:59:21,339.339 INFO    ] time= 18/10/2026 02:59:21
[2026-10-18 02:59:21,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:59:21,380.380 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:59:21,496.496 INFO    ] No existing commands found in stream
[2026-10-18 02:59:26,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:59:26,521.521 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-18 02:59:30,240.240 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 02:59:30,243.243 INFO    ] Checking for system updates...
[2026-10-18 02:59:30,282.282 INFO    ] 200
[2026-10-18 02:59:30,285.285 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:59:30,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:59:30,342.342 INFO    ] No update needed
[2026-10-18 02:59:30,344.344 INFO    ] Checking for camera pi updates...
[2026-10-18 02:59:30,378.378 INFO    ] 200
[2026-10-18 02:59:30,380.380 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:59:30,420.420 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 02:59:40,434.434 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 02:59:40,470.470 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 02:59:40,480.480 INFO    ] Script finished. Safe exiting...
[2026-10-18 02:59:40,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 02:59:40,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 02:59:40,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 02:59:42,533.533 INFO    ] ================================================
[2026-10-18 02:59:42,549.549 INFO    ] Launching Daemon at Sun Oct 18 02:59:42 IST 2026
[2026-10-18 02:59:42,561.561 INFO    ] ================================================
[2026-10-18 02:59:43,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 02:59:43
[2026-10-18 02:59:43,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 02:59:43,985.985 INFO    ] Initializing speech engine...
[2026-10-18 02:59:44,000.000 INFO    ] 2026-10-18 02:59:43
[2026-10-18 02:59:44,291.291 INFO    ] 2026-10-18 02:59:44
[2026-10-18 02:59:44,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 02:59:44,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 02:59:44,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 02:59:44,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 02:59:44,716.716 INFO    ] time= 18/10/2026 02:59:44
[2026-10-18 02:59:44,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 02:59:44,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-18 02:59:44,819.819 INFO    ] No existing commands found in stream
[2026-10-18 02:59:49,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 02:59:49,848.848 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-18 02:59:51,270.270 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 02:59:51,272.272 INFO    ] Checking for system updates...
[2026-10-18 02:59:51,313.313 INFO    ] 200
[2026-10-18 02:59:51,316.316 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:59:51,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 02:59:51,371.371 INFO    ] No update needed
[2026-10-18 02:59:51,373.373 INFO    ] Checking for camera pi updates...
[2026-10-18 02:59:51,411.411 INFO    ] 200
[2026-10-18 02:59:51,413.413 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 02:59:51,459.459 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:00:01,475.475 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:00:01,637.637 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:00:01,736.736 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:00:01,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:00:01,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:00:01,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:00:04,059.059 INFO    ] ================================================
[2026-10-18 03:00:04,131.131 INFO    ] Launching Daemon at Sun Oct 18 03:00:04 IST 2026
[2026-10-18 03:00:04,219.219 INFO    ] ================================================
[2026-10-18 03:00:05,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:00:05
[2026-10-18 03:00:06,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:00:06,667.667 INFO    ] Initializing speech engine...
[2026-10-18 03:00:06,675.675 INFO    ] 2026-10-18 03:00:06
[2026-10-18 03:00:06,953.953 INFO    ] 2026-10-18 03:00:06
[2026-10-18 03:00:06,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:00:07,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:00:07,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:00:07,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:00:07,331.331 INFO    ] time= 18/10/2026 03:00:07
[2026-10-18 03:00:07,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:00:07,394.394 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:00:07,534.534 INFO    ] No existing commands found in stream
[2026-10-18 03:00:12,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:00:12,546.546 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-18 03:00:16,771.771 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:00:16,774.774 INFO    ] Checking for system updates...
[2026-10-18 03:00:16,814.814 INFO    ] 200
[2026-10-18 03:00:16,817.817 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:00:16,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:00:16,878.878 INFO    ] No update needed
[2026-10-18 03:00:16,880.880 INFO    ] Checking for camera pi updates...
[2026-10-18 03:00:16,917.917 INFO    ] 200
[2026-10-18 03:00:16,920.920 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:00:16,965.965 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:00:26,980.980 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:00:27,015.015 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:00:27,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:00:27,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:00:27,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:00:27,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:00:29,077.077 INFO    ] ================================================
[2026-10-18 03:00:29,093.093 INFO    ] Launching Daemon at Sun Oct 18 03:00:29 IST 2026
[2026-10-18 03:00:29,104.104 INFO    ] ================================================
[2026-10-18 03:00:29,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:00:29
[2026-10-18 03:00:30,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:00:30,526.526 INFO    ] Initializing speech engine...
[2026-10-18 03:00:30,535.535 INFO    ] 2026-10-18 03:00:30
[2026-10-18 03:00:30,781.781 INFO    ] 2026-10-18 03:00:30
[2026-10-18 03:00:30,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:00:31,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:00:31,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:00:31,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:00:31,282.282 INFO    ] time= 18/10/2026 03:00:31
[2026-10-18 03:00:31,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:00:31,344.344 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:00:31,494.494 INFO    ] No existing commands found in stream
[2026-10-18 03:00:36,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:00:36,522.522 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-18 03:00:37,093.093 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:00:37,096.096 INFO    ] Checking for system updates...
[2026-10-18 03:00:37,132.132 INFO    ] 200
[2026-10-18 03:00:37,135.135 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:00:37,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:00:37,190.190 INFO    ] No update needed
[2026-10-18 03:00:37,192.192 INFO    ] Checking for camera pi updates...
[2026-10-18 03:00:37,226.226 INFO    ] 200
[2026-10-18 03:00:37,229.229 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:00:37,269.269 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:00:47,285.285 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:00:47,319.319 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:00:47,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:00:47,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:00:47,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:00:47,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:00:49,381.381 INFO    ] ================================================
[2026-10-18 03:00:49,397.397 INFO    ] Launching Daemon at Sun Oct 18 03:00:49 IST 2026
[2026-10-18 03:00:49,409.409 INFO    ] ================================================
[2026-10-18 03:00:50,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:00:50
[2026-10-18 03:00:50,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:00:50,932.932 INFO    ] Initializing speech engine...
[2026-10-18 03:00:50,946.946 INFO    ] 2026-10-18 03:00:50
[2026-10-18 03:00:51,212.212 INFO    ] 2026-10-18 03:00:51
[2026-10-18 03:00:51,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:00:51,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:00:51,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:00:51,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:00:51,682.682 INFO    ] time= 18/10/2026 03:00:51
[2026-10-18 03:00:51,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:00:51,790.790 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:00:51,923.923 INFO    ] No existing commands found in stream
[2026-10-18 03:00:56,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:00:56,951.951 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-18 03:01:00,411.411 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:01:00,414.414 INFO    ] Checking for system updates...
[2026-10-18 03:01:00,454.454 INFO    ] 200
[2026-10-18 03:01:00,456.456 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:01:00,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:01:00,512.512 INFO    ] No update needed
[2026-10-18 03:01:00,514.514 INFO    ] Checking for camera pi updates...
[2026-10-18 03:01:00,550.550 INFO    ] 200
[2026-10-18 03:01:00,553.553 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:01:00,614.614 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:01:10,630.630 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:01:10,667.667 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:01:10,676.676 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:01:10,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:01:10,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:01:10,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:01:12,730.730 INFO    ] ================================================
[2026-10-18 03:01:12,746.746 INFO    ] Launching Daemon at Sun Oct 18 03:01:12 IST 2026
[2026-10-18 03:01:12,758.758 INFO    ] ================================================
[2026-10-18 03:01:13,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:01:13
[2026-10-18 03:01:13,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:01:14,239.239 INFO    ] Initializing speech engine...
[2026-10-18 03:01:14,247.247 INFO    ] 2026-10-18 03:01:14
[2026-10-18 03:01:14,503.503 INFO    ] 2026-10-18 03:01:14
[2026-10-18 03:01:14,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:01:14,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:01:14,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:01:15,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:01:15,045.045 INFO    ] time= 18/10/2026 03:01:15
[2026-10-18 03:01:15,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:01:15,070.070 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:01:15,198.198 INFO    ] No existing commands found in stream
[2026-10-18 03:01:20,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:01:20,214.214 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-18 03:01:24,029.029 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:01:24,031.031 INFO    ] Checking for system updates...
[2026-10-18 03:01:24,070.070 INFO    ] 200
[2026-10-18 03:01:24,072.072 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:01:24,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:01:24,136.136 INFO    ] No update needed
[2026-10-18 03:01:24,139.139 INFO    ] Checking for camera pi updates...
[2026-10-18 03:01:24,176.176 INFO    ] 200
[2026-10-18 03:01:24,178.178 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:01:24,223.223 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:01:34,237.237 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:01:34,272.272 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:01:34,281.281 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:01:34,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:01:34,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:01:34,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:01:36,335.335 INFO    ] ================================================
[2026-10-18 03:01:36,351.351 INFO    ] Launching Daemon at Sun Oct 18 03:01:36 IST 2026
[2026-10-18 03:01:36,362.362 INFO    ] ================================================
[2026-10-18 03:01:36,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:01:36
[2026-10-18 03:01:37,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:01:37,858.858 INFO    ] Initializing speech engine...
[2026-10-18 03:01:37,863.863 INFO    ] 2026-10-18 03:01:37
[2026-10-18 03:01:38,111.111 INFO    ] 2026-10-18 03:01:38
[2026-10-18 03:01:38,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:01:43,204.204 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-10-18 03:01:43,230.230 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-18 03:01:43,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:01:43,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:01:43,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:01:45,284.284 INFO    ] ================================================
[2026-10-18 03:01:45,300.300 INFO    ] Launching Daemon at Sun Oct 18 03:01:45 IST 2026
[2026-10-18 03:01:45,311.311 INFO    ] ================================================
[2026-10-18 03:01:45,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:01:45
[2026-10-18 03:01:46,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:01:46,818.818 INFO    ] Initializing speech engine...
[2026-10-18 03:01:46,825.825 INFO    ] 2026-10-18 03:01:46
[2026-10-18 03:01:47,088.088 INFO    ] 2026-10-18 03:01:47
[2026-10-18 03:01:47,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:01:52,208.208 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-10-18 03:01:52,235.235 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-18 03:01:52,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:01:52,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:01:52,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:01:54,287.287 INFO    ] ================================================
[2026-10-18 03:01:54,304.304 INFO    ] Launching Daemon at Sun Oct 18 03:01:54 IST 2026
[2026-10-18 03:01:54,315.315 INFO    ] ================================================
[2026-10-18 03:01:54,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:01:54
[2026-10-18 03:01:55,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:01:55,732.732 INFO    ] Initializing speech engine...
[2026-10-18 03:01:55,740.740 INFO    ] 2026-10-18 03:01:55
[2026-10-18 03:01:55,987.987 INFO    ] 2026-10-18 03:01:55
[2026-10-18 03:01:56,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:01:56,146.146 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-18 03:01:56,251.251 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-18 03:01:56,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:01:56,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:01:56,347.347 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-18 03:01:56,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:01:58,426.426 INFO    ] ================================================
[2026-10-18 03:01:58,442.442 INFO    ] Launching Daemon at Sun Oct 18 03:01:58 IST 2026
[2026-10-18 03:01:58,453.453 INFO    ] ================================================
[2026-10-18 03:01:59,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:01:59
[2026-10-18 03:01:59,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:01:59,884.884 INFO    ] Initializing speech engine...
[2026-10-18 03:01:59,891.891 INFO    ] 2026-10-18 03:01:59
[2026-10-18 03:02:00,150.150 INFO    ] 2026-10-18 03:02:00
[2026-10-18 03:02:00,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:02:00,298.298 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-18 03:02:00,403.403 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-18 03:02:00,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:02:00,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:02:00,503.503 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-18 03:02:00,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:02:02,598.598 INFO    ] ================================================
[2026-10-18 03:02:02,619.619 INFO    ] Launching Daemon at Sun Oct 18 03:02:02 IST 2026
[2026-10-18 03:02:02,639.639 INFO    ] ================================================
[2026-10-18 03:02:03,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:02:03
[2026-10-18 03:02:03,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:02:04,139.139 INFO    ] Initializing speech engine...
[2026-10-18 03:02:04,164.164 INFO    ] 2026-10-18 03:02:04
[2026-10-18 03:02:04,441.441 INFO    ] 2026-10-18 03:02:04
[2026-10-18 03:02:04,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:02:07,648.648 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 113 connecting to live.vendingbuddy.in:23294. No route to host.
[2026-10-18 03:02:07,675.675 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-18 03:02:07,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:02:07,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:02:07,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:02:09,727.727 INFO    ] ================================================
[2026-10-18 03:02:09,743.743 INFO    ] Launching Daemon at Sun Oct 18 03:02:09 IST 2026
[2026-10-18 03:02:09,754.754 INFO    ] ================================================
[2026-10-18 03:02:10,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:02:10
[2026-10-18 03:02:10,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:02:11,189.189 INFO    ] Initializing speech engine...
[2026-10-18 03:02:11,197.197 INFO    ] 2026-10-18 03:02:11
[2026-10-18 03:02:11,469.469 INFO    ] 2026-10-18 03:02:11
[2026-10-18 03:02:11,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:02:11,628.628 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-18 03:02:11,732.732 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-18 03:02:11,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:02:11,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:02:11,832.832 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-18 03:02:11,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:02:13,909.909 INFO    ] ================================================
[2026-10-18 03:02:13,927.927 INFO    ] Launching Daemon at Sun Oct 18 03:02:13 IST 2026
[2026-10-18 03:02:13,938.938 INFO    ] ================================================
[2026-10-18 03:02:14,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:02:14
[2026-10-18 03:02:15,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:02:15,376.376 INFO    ] Initializing speech engine...
[2026-10-18 03:02:15,384.384 INFO    ] 2026-10-18 03:02:15
[2026-10-18 03:02:15,637.637 INFO    ] 2026-10-18 03:02:15
[2026-10-18 03:02:15,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:02:15,800.800 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-18 03:02:15,904.904 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-18 03:02:15,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:02:15,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:02:16,007.007 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-18 03:02:16,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:02:18,094.094 INFO    ] ================================================
[2026-10-18 03:02:18,109.109 INFO    ] Launching Daemon at Sun Oct 18 03:02:18 IST 2026
[2026-10-18 03:02:18,121.121 INFO    ] ================================================
[2026-10-18 03:02:18,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:02:18
[2026-10-18 03:02:19,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:02:19,744.744 INFO    ] Initializing speech engine...
[2026-10-18 03:02:19,755.755 INFO    ] 2026-10-18 03:02:19
[2026-10-18 03:02:20,070.070 INFO    ] 2026-10-18 03:02:20
[2026-10-18 03:02:20,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:02:20,206.206 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-18 03:02:20,344.344 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-18 03:02:20,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:02:20,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:02:20,418.418 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-18 03:02:20,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:02:22,520.520 INFO    ] ================================================
[2026-10-18 03:02:22,536.536 INFO    ] Launching Daemon at Sun Oct 18 03:02:22 IST 2026
[2026-10-18 03:02:22,548.548 INFO    ] ================================================
[2026-10-18 03:02:23,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:02:23
[2026-10-18 03:02:23,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:02:24,010.010 INFO    ] Initializing speech engine...
[2026-10-18 03:02:24,020.020 INFO    ] 2026-10-18 03:02:24
[2026-10-18 03:02:24,284.284 INFO    ] 2026-10-18 03:02:24
[2026-10-18 03:02:24,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:02:24,442.442 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-18 03:02:24,586.586 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-18 03:02:24,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:02:24,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:02:24,653.653 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-18 03:02:24,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:02:26,735.735 INFO    ] ================================================
[2026-10-18 03:02:26,751.751 INFO    ] Launching Daemon at Sun Oct 18 03:02:26 IST 2026
[2026-10-18 03:02:26,762.762 INFO    ] ================================================
[2026-10-18 03:02:27,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:02:27
[2026-10-18 03:02:27,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:02:28,222.222 INFO    ] Initializing speech engine...
[2026-10-18 03:02:28,231.231 INFO    ] 2026-10-18 03:02:28
[2026-10-18 03:02:28,504.504 INFO    ] 2026-10-18 03:02:28
[2026-10-18 03:02:28,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:02:28,641.641 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-18 03:02:28,806.806 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-18 03:02:28,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:02:28,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:02:28,907.907 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-18 03:02:28,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:02:31,112.112 INFO    ] ================================================
[2026-10-18 03:02:31,136.136 INFO    ] Launching Daemon at Sun Oct 18 03:02:31 IST 2026
[2026-10-18 03:02:31,148.148 INFO    ] ================================================
[2026-10-18 03:02:31,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:02:31
[2026-10-18 03:02:32,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:02:32,816.816 INFO    ] Initializing speech engine...
[2026-10-18 03:02:32,835.835 INFO    ] 2026-10-18 03:02:32
[2026-10-18 03:02:33,091.091 INFO    ] 2026-10-18 03:02:33
[2026-10-18 03:02:33,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:02:33,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:02:33,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:02:33,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:02:33,630.630 INFO    ] time= 18/10/2026 03:02:33
[2026-10-18 03:02:33,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:02:33,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:02:33,838.838 INFO    ] No existing commands found in stream
[2026-10-18 03:02:38,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:02:38,852.852 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-18 03:02:41,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:02:41,135.135 INFO    ] Checking for system updates...
[2026-10-18 03:02:41,178.178 INFO    ] 200
[2026-10-18 03:02:41,181.181 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:02:41,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:02:41,248.248 INFO    ] No update needed
[2026-10-18 03:02:41,250.250 INFO    ] Checking for camera pi updates...
[2026-10-18 03:02:41,286.286 INFO    ] 200
[2026-10-18 03:02:41,288.288 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:02:41,330.330 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:02:51,346.346 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:02:51,387.387 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:02:51,398.398 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:02:51,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:02:51,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:02:51,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:02:53,455.455 INFO    ] ================================================
[2026-10-18 03:02:53,470.470 INFO    ] Launching Daemon at Sun Oct 18 03:02:53 IST 2026
[2026-10-18 03:02:53,482.482 INFO    ] ================================================
[2026-10-18 03:02:54,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:02:54
[2026-10-18 03:02:54,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:02:54,902.902 INFO    ] Initializing speech engine...
[2026-10-18 03:02:54,916.916 INFO    ] 2026-10-18 03:02:54
[2026-10-18 03:02:55,173.173 INFO    ] 2026-10-18 03:02:55
[2026-10-18 03:02:55,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:02:55,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:02:55,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:02:55,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:02:55,663.663 INFO    ] time= 18/10/2026 03:02:55
[2026-10-18 03:02:55,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:02:55,752.752 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:02:55,908.908 INFO    ] No existing commands found in stream
[2026-10-18 03:03:00,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:03:00,933.933 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-18 03:03:04,404.404 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:03:04,407.407 INFO    ] Checking for system updates...
[2026-10-18 03:03:04,446.446 INFO    ] 200
[2026-10-18 03:03:04,449.449 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:03:04,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:03:04,510.510 INFO    ] No update needed
[2026-10-18 03:03:04,512.512 INFO    ] Checking for camera pi updates...
[2026-10-18 03:03:04,547.547 INFO    ] 200
[2026-10-18 03:03:04,549.549 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:03:04,590.590 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:03:14,605.605 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:03:14,639.639 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:03:14,649.649 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:03:14,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:03:14,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:03:14,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:03:16,703.703 INFO    ] ================================================
[2026-10-18 03:03:16,718.718 INFO    ] Launching Daemon at Sun Oct 18 03:03:16 IST 2026
[2026-10-18 03:03:16,729.729 INFO    ] ================================================
[2026-10-18 03:03:17,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:03:17
[2026-10-18 03:03:17,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:03:18,134.134 INFO    ] Initializing speech engine...
[2026-10-18 03:03:18,142.142 INFO    ] 2026-10-18 03:03:18
[2026-10-18 03:03:18,416.416 INFO    ] 2026-10-18 03:03:18
[2026-10-18 03:03:18,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:03:18,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:03:18,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:03:18,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:03:18,895.895 INFO    ] time= 18/10/2026 03:03:18
[2026-10-18 03:03:18,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:03:18,994.994 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:03:19,115.115 INFO    ] No existing commands found in stream
[2026-10-18 03:03:24,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:03:24,140.140 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-18 03:03:26,911.911 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:03:26,913.913 INFO    ] Checking for system updates...
[2026-10-18 03:03:26,950.950 INFO    ] 200
[2026-10-18 03:03:26,952.952 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:03:27,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:03:27,007.007 INFO    ] No update needed
[2026-10-18 03:03:27,010.010 INFO    ] Checking for camera pi updates...
[2026-10-18 03:03:27,043.043 INFO    ] 200
[2026-10-18 03:03:27,046.046 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:03:27,086.086 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:03:37,100.100 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:03:37,135.135 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:03:37,145.145 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:03:37,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:03:37,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:03:37,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:03:39,199.199 INFO    ] ================================================
[2026-10-18 03:03:39,214.214 INFO    ] Launching Daemon at Sun Oct 18 03:03:39 IST 2026
[2026-10-18 03:03:39,225.225 INFO    ] ================================================
[2026-10-18 03:03:39,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:03:39
[2026-10-18 03:03:40,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:03:40,635.635 INFO    ] Initializing speech engine...
[2026-10-18 03:03:40,658.658 INFO    ] 2026-10-18 03:03:40
[2026-10-18 03:03:40,917.917 INFO    ] 2026-10-18 03:03:40
[2026-10-18 03:03:40,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:03:41,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:03:41,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:03:41,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:03:41,395.395 INFO    ] time= 18/10/2026 03:03:41
[2026-10-18 03:03:41,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:03:41,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:03:41,627.627 INFO    ] No existing commands found in stream
[2026-10-18 03:03:46,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:03:46,655.655 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-18 03:03:49,378.378 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:03:49,380.380 INFO    ] Checking for system updates...
[2026-10-18 03:03:49,421.421 INFO    ] 200
[2026-10-18 03:03:49,423.423 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:03:49,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:03:49,478.478 INFO    ] No update needed
[2026-10-18 03:03:49,481.481 INFO    ] Checking for camera pi updates...
[2026-10-18 03:03:49,517.517 INFO    ] 200
[2026-10-18 03:03:49,520.520 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:03:49,561.561 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:03:59,576.576 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:03:59,612.612 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:03:59,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:03:59,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:03:59,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:03:59,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:04:01,674.674 INFO    ] ================================================
[2026-10-18 03:04:01,689.689 INFO    ] Launching Daemon at Sun Oct 18 03:04:01 IST 2026
[2026-10-18 03:04:01,700.700 INFO    ] ================================================
[2026-10-18 03:04:02,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:04:02
[2026-10-18 03:04:03,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:04:03,461.461 INFO    ] Initializing speech engine...
[2026-10-18 03:04:03,480.480 INFO    ] 2026-10-18 03:04:03
[2026-10-18 03:04:03,759.759 INFO    ] 2026-10-18 03:04:03
[2026-10-18 03:04:03,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:04:04,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:04:04,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:04:04,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:04:04,347.347 INFO    ] time= 18/10/2026 03:04:04
[2026-10-18 03:04:04,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:04:04,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:04:04,503.503 INFO    ] No existing commands found in stream
[2026-10-18 03:04:09,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:04:09,526.526 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-18 03:04:10,073.073 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:04:10,076.076 INFO    ] Checking for system updates...
[2026-10-18 03:04:10,113.113 INFO    ] 200
[2026-10-18 03:04:10,115.115 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:04:10,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:04:10,173.173 INFO    ] No update needed
[2026-10-18 03:04:10,176.176 INFO    ] Checking for camera pi updates...
[2026-10-18 03:04:10,209.209 INFO    ] 200
[2026-10-18 03:04:10,212.212 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:04:10,252.252 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:04:20,265.265 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:04:20,301.301 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:04:20,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:04:20,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:04:20,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:04:20,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:04:22,363.363 INFO    ] ================================================
[2026-10-18 03:04:22,379.379 INFO    ] Launching Daemon at Sun Oct 18 03:04:22 IST 2026
[2026-10-18 03:04:22,389.389 INFO    ] ================================================
[2026-10-18 03:04:22,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:04:22
[2026-10-18 03:04:23,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:04:23,887.887 INFO    ] Initializing speech engine...
[2026-10-18 03:04:23,895.895 INFO    ] 2026-10-18 03:04:23
[2026-10-18 03:04:24,176.176 INFO    ] 2026-10-18 03:04:24
[2026-10-18 03:04:24,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:04:24,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:04:24,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:04:24,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:04:24,715.715 INFO    ] time= 18/10/2026 03:04:24
[2026-10-18 03:04:24,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:04:24,740.740 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:04:24,870.870 INFO    ] No existing commands found in stream
[2026-10-18 03:04:29,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:04:29,898.898 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-18 03:04:31,332.332 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:04:31,335.335 INFO    ] Checking for system updates...
[2026-10-18 03:04:31,376.376 INFO    ] 200
[2026-10-18 03:04:31,379.379 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:04:31,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:04:31,439.439 INFO    ] No update needed
[2026-10-18 03:04:31,442.442 INFO    ] Checking for camera pi updates...
[2026-10-18 03:04:31,475.475 INFO    ] 200
[2026-10-18 03:04:31,478.478 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:04:31,518.518 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:04:41,532.532 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:04:41,568.568 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:04:41,577.577 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:04:41,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:04:41,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:04:41,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:04:43,630.630 INFO    ] ================================================
[2026-10-18 03:04:43,645.645 INFO    ] Launching Daemon at Sun Oct 18 03:04:43 IST 2026
[2026-10-18 03:04:43,655.655 INFO    ] ================================================
[2026-10-18 03:04:44,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:04:44
[2026-10-18 03:04:44,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:04:45,093.093 INFO    ] Initializing speech engine...
[2026-10-18 03:04:45,102.102 INFO    ] 2026-10-18 03:04:45
[2026-10-18 03:04:45,391.391 INFO    ] 2026-10-18 03:04:45
[2026-10-18 03:04:45,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:04:45,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:04:45,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:04:45,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:04:45,908.908 INFO    ] time= 18/10/2026 03:04:45
[2026-10-18 03:04:45,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:04:46,006.006 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:04:46,161.161 INFO    ] No existing commands found in stream
[2026-10-18 03:04:51,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:04:51,183.183 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-18 03:04:52,271.271 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 03:04:52,274.274 INFO    ] Checking for system updates...
[2026-10-18 03:04:52,312.312 INFO    ] 200
[2026-10-18 03:04:52,315.315 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:04:52,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:04:52,374.374 INFO    ] No update needed
[2026-10-18 03:04:52,376.376 INFO    ] Checking for camera pi updates...
[2026-10-18 03:04:52,410.410 INFO    ] 200
[2026-10-18 03:04:52,413.413 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:04:52,458.458 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:05:02,475.475 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:05:02,554.554 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:05:02,582.582 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:05:02,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:05:02,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:05:02,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:05:04,646.646 INFO    ] ================================================
[2026-10-18 03:05:04,661.661 INFO    ] Launching Daemon at Sun Oct 18 03:05:04 IST 2026
[2026-10-18 03:05:04,672.672 INFO    ] ================================================
[2026-10-18 03:05:05,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:05:05
[2026-10-18 03:05:05,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:05:06,082.082 INFO    ] Initializing speech engine...
[2026-10-18 03:05:06,101.101 INFO    ] 2026-10-18 03:05:06
[2026-10-18 03:05:06,355.355 INFO    ] 2026-10-18 03:05:06
[2026-10-18 03:05:06,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:05:06,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:05:06,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:05:06,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:05:06,927.927 INFO    ] time= 18/10/2026 03:05:06
[2026-10-18 03:05:06,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:05:06,951.951 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:05:07,081.081 INFO    ] No existing commands found in stream
[2026-10-18 03:05:12,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:05:12,100.100 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-18 03:05:13,270.270 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 03:05:13,273.273 INFO    ] Checking for system updates...
[2026-10-18 03:05:13,309.309 INFO    ] 200
[2026-10-18 03:05:13,311.311 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:05:13,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:05:13,370.370 INFO    ] No update needed
[2026-10-18 03:05:13,373.373 INFO    ] Checking for camera pi updates...
[2026-10-18 03:05:13,407.407 INFO    ] 200
[2026-10-18 03:05:13,409.409 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:05:13,449.449 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:05:23,464.464 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:05:23,501.501 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:05:23,511.511 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:05:23,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:05:23,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:05:23,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:05:25,564.564 INFO    ] ================================================
[2026-10-18 03:05:25,579.579 INFO    ] Launching Daemon at Sun Oct 18 03:05:25 IST 2026
[2026-10-18 03:05:25,590.590 INFO    ] ================================================
[2026-10-18 03:05:26,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:05:26
[2026-10-18 03:05:26,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:05:27,042.042 INFO    ] Initializing speech engine...
[2026-10-18 03:05:27,048.048 INFO    ] 2026-10-18 03:05:27
[2026-10-18 03:05:27,348.348 INFO    ] 2026-10-18 03:05:27
[2026-10-18 03:05:27,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:05:27,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:05:27,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:05:27,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:05:27,772.772 INFO    ] time= 18/10/2026 03:05:27
[2026-10-18 03:05:27,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:05:27,783.783 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:05:27,857.857 INFO    ] No existing commands found in stream
[2026-10-18 03:05:32,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:05:32,871.871 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-18 03:05:33,878.878 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 03:05:33,880.880 INFO    ] Checking for system updates...
[2026-10-18 03:05:33,916.916 INFO    ] 200
[2026-10-18 03:05:33,919.919 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:05:33,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:05:33,981.981 INFO    ] No update needed
[2026-10-18 03:05:33,983.983 INFO    ] Checking for camera pi updates...
[2026-10-18 03:05:34,020.020 INFO    ] 200
[2026-10-18 03:05:34,022.022 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:05:34,063.063 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:05:44,079.079 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:05:44,118.118 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:05:44,130.130 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:05:44,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:05:44,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:05:44,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:05:46,184.184 INFO    ] ================================================
[2026-10-18 03:05:46,200.200 INFO    ] Launching Daemon at Sun Oct 18 03:05:46 IST 2026
[2026-10-18 03:05:46,211.211 INFO    ] ================================================
[2026-10-18 03:05:46,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:05:46
[2026-10-18 03:05:47,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:05:47,637.637 INFO    ] Initializing speech engine...
[2026-10-18 03:05:47,657.657 INFO    ] 2026-10-18 03:05:47
[2026-10-18 03:05:47,923.923 INFO    ] 2026-10-18 03:05:47
[2026-10-18 03:05:47,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:05:48,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:05:48,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:05:48,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:05:48,399.399 INFO    ] time= 18/10/2026 03:05:48
[2026-10-18 03:05:48,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:05:48,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:05:48,539.539 INFO    ] No existing commands found in stream
[2026-10-18 03:05:53,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:05:53,572.572 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-18 03:05:55,664.664 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:05:55,667.667 INFO    ] Checking for system updates...
[2026-10-18 03:05:55,706.706 INFO    ] 200
[2026-10-18 03:05:55,709.709 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:05:55,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:05:55,769.769 INFO    ] No update needed
[2026-10-18 03:05:55,772.772 INFO    ] Checking for camera pi updates...
[2026-10-18 03:05:55,809.809 INFO    ] 200
[2026-10-18 03:05:55,811.811 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:05:55,851.851 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:06:05,867.867 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:06:05,901.901 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:06:05,911.911 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:06:05,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:06:05,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:06:05,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:06:07,963.963 INFO    ] ================================================
[2026-10-18 03:06:07,979.979 INFO    ] Launching Daemon at Sun Oct 18 03:06:07 IST 2026
[2026-10-18 03:06:07,991.991 INFO    ] ================================================
[2026-10-18 03:06:08,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:06:08
[2026-10-18 03:06:09,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:06:09,445.445 INFO    ] Initializing speech engine...
[2026-10-18 03:06:09,453.453 INFO    ] 2026-10-18 03:06:09
[2026-10-18 03:06:09,710.710 INFO    ] 2026-10-18 03:06:09
[2026-10-18 03:06:09,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:06:09,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:06:10,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:06:10,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:06:10,267.267 INFO    ] time= 18/10/2026 03:06:10
[2026-10-18 03:06:10,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:06:10,292.292 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:06:10,409.409 INFO    ] No existing commands found in stream
[2026-10-18 03:06:15,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:06:15,439.439 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-18 03:06:17,969.969 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:06:17,972.972 INFO    ] Checking for system updates...
[2026-10-18 03:06:18,008.008 INFO    ] 200
[2026-10-18 03:06:18,011.011 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:06:18,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:06:18,072.072 INFO    ] No update needed
[2026-10-18 03:06:18,075.075 INFO    ] Checking for camera pi updates...
[2026-10-18 03:06:18,110.110 INFO    ] 200
[2026-10-18 03:06:18,113.113 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:06:18,155.155 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:06:28,171.171 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:06:28,209.209 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:06:28,220.220 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:06:28,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:06:28,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:06:28,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:06:30,275.275 INFO    ] ================================================
[2026-10-18 03:06:30,290.290 INFO    ] Launching Daemon at Sun Oct 18 03:06:30 IST 2026
[2026-10-18 03:06:30,301.301 INFO    ] ================================================
[2026-10-18 03:06:30,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:06:30
[2026-10-18 03:06:31,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:06:31,925.925 INFO    ] Initializing speech engine...
[2026-10-18 03:06:31,932.932 INFO    ] 2026-10-18 03:06:31
[2026-10-18 03:06:32,238.238 INFO    ] 2026-10-18 03:06:32
[2026-10-18 03:06:32,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:06:32,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:06:32,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:06:32,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:06:32,769.769 INFO    ] time= 18/10/2026 03:06:32
[2026-10-18 03:06:32,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:06:32,861.861 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:06:33,008.008 INFO    ] No existing commands found in stream
[2026-10-18 03:06:38,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:06:38,024.024 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-18 03:06:41,238.238 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:06:41,240.240 INFO    ] Checking for system updates...
[2026-10-18 03:06:41,277.277 INFO    ] 200
[2026-10-18 03:06:41,279.279 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:06:41,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:06:41,336.336 INFO    ] No update needed
[2026-10-18 03:06:41,338.338 INFO    ] Checking for camera pi updates...
[2026-10-18 03:06:41,372.372 INFO    ] 200
[2026-10-18 03:06:41,374.374 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:06:41,418.418 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:06:51,432.432 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:06:51,467.467 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:06:51,476.476 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:06:51,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:06:51,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:06:51,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:06:53,529.529 INFO    ] ================================================
[2026-10-18 03:06:53,545.545 INFO    ] Launching Daemon at Sun Oct 18 03:06:53 IST 2026
[2026-10-18 03:06:53,556.556 INFO    ] ================================================
[2026-10-18 03:06:54,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:06:54
[2026-10-18 03:06:54,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:06:54,976.976 INFO    ] Initializing speech engine...
[2026-10-18 03:06:54,989.989 INFO    ] 2026-10-18 03:06:54
[2026-10-18 03:06:55,239.239 INFO    ] 2026-10-18 03:06:55
[2026-10-18 03:06:55,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:06:55,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:06:55,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:06:55,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:06:55,723.723 INFO    ] time= 18/10/2026 03:06:55
[2026-10-18 03:06:55,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:06:55,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:06:55,942.942 INFO    ] No existing commands found in stream
[2026-10-18 03:07:00,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:07:00,974.974 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-18 03:07:05,282.282 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:07:05,285.285 INFO    ] Checking for system updates...
[2026-10-18 03:07:05,323.323 INFO    ] 200
[2026-10-18 03:07:05,326.326 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:07:05,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:07:05,389.389 INFO    ] No update needed
[2026-10-18 03:07:05,392.392 INFO    ] Checking for camera pi updates...
[2026-10-18 03:07:05,428.428 INFO    ] 200
[2026-10-18 03:07:05,430.430 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:07:05,471.471 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:07:15,486.486 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:07:15,520.520 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:07:15,530.530 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:07:15,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:07:15,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:07:15,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:07:17,583.583 INFO    ] ================================================
[2026-10-18 03:07:17,598.598 INFO    ] Launching Daemon at Sun Oct 18 03:07:17 IST 2026
[2026-10-18 03:07:17,609.609 INFO    ] ================================================
[2026-10-18 03:07:18,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:07:18
[2026-10-18 03:07:18,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:07:19,028.028 INFO    ] Initializing speech engine...
[2026-10-18 03:07:19,037.037 INFO    ] 2026-10-18 03:07:19
[2026-10-18 03:07:19,284.284 INFO    ] 2026-10-18 03:07:19
[2026-10-18 03:07:19,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:07:19,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:07:19,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:07:19,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:07:19,841.841 INFO    ] time= 18/10/2026 03:07:19
[2026-10-18 03:07:19,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:07:19,865.865 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:07:19,986.986 INFO    ] No existing commands found in stream
[2026-10-18 03:07:25,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:07:25,013.013 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-18 03:07:27,471.471 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 03:07:27,473.473 INFO    ] Checking for system updates...
[2026-10-18 03:07:27,509.509 INFO    ] 200
[2026-10-18 03:07:27,511.511 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:07:27,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:07:27,570.570 INFO    ] No update needed
[2026-10-18 03:07:27,572.572 INFO    ] Checking for camera pi updates...
[2026-10-18 03:07:27,606.606 INFO    ] 200
[2026-10-18 03:07:27,608.608 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:07:27,649.649 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:07:37,663.663 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:07:37,697.697 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:07:37,707.707 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:07:37,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:07:37,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:07:37,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:07:39,760.760 INFO    ] ================================================
[2026-10-18 03:07:39,776.776 INFO    ] Launching Daemon at Sun Oct 18 03:07:39 IST 2026
[2026-10-18 03:07:39,788.788 INFO    ] ================================================
[2026-10-18 03:07:40,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:07:40
[2026-10-18 03:07:40,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:07:41,241.241 INFO    ] Initializing speech engine...
[2026-10-18 03:07:41,251.251 INFO    ] 2026-10-18 03:07:41
[2026-10-18 03:07:41,507.507 INFO    ] 2026-10-18 03:07:41
[2026-10-18 03:07:41,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:07:41,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:07:41,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:07:41,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:07:41,997.997 INFO    ] time= 18/10/2026 03:07:41
[2026-10-18 03:07:42,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:07:42,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:07:42,192.192 INFO    ] No existing commands found in stream
[2026-10-18 03:07:47,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:07:47,220.220 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-18 03:07:51,713.713 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:07:51,716.716 INFO    ] Checking for system updates...
[2026-10-18 03:07:51,756.756 INFO    ] 200
[2026-10-18 03:07:51,758.758 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:07:51,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:07:51,813.813 INFO    ] No update needed
[2026-10-18 03:07:51,815.815 INFO    ] Checking for camera pi updates...
[2026-10-18 03:07:51,854.854 INFO    ] 200
[2026-10-18 03:07:51,856.856 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:07:51,901.901 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:08:01,917.917 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:08:01,955.955 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:08:01,967.967 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:08:01,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:08:01,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:08:01,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:08:04,027.027 INFO    ] ================================================
[2026-10-18 03:08:04,043.043 INFO    ] Launching Daemon at Sun Oct 18 03:08:04 IST 2026
[2026-10-18 03:08:04,054.054 INFO    ] ================================================
[2026-10-18 03:08:04,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:08:04
[2026-10-18 03:08:05,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:08:05,482.482 INFO    ] Initializing speech engine...
[2026-10-18 03:08:05,495.495 INFO    ] 2026-10-18 03:08:05
[2026-10-18 03:08:05,761.761 INFO    ] 2026-10-18 03:08:05
[2026-10-18 03:08:05,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:08:06,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:08:06,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:08:06,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:08:06,253.253 INFO    ] time= 18/10/2026 03:08:06
[2026-10-18 03:08:06,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:08:06,334.334 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:08:06,453.453 INFO    ] No existing commands found in stream
[2026-10-18 03:08:11,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:08:11,468.468 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-18 03:08:13,195.195 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:08:13,197.197 INFO    ] Checking for system updates...
[2026-10-18 03:08:13,233.233 INFO    ] 200
[2026-10-18 03:08:13,235.235 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:08:13,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:08:13,290.290 INFO    ] No update needed
[2026-10-18 03:08:13,292.292 INFO    ] Checking for camera pi updates...
[2026-10-18 03:08:13,326.326 INFO    ] 200
[2026-10-18 03:08:13,328.328 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:08:13,372.372 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:08:23,388.388 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:08:23,423.423 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:08:23,433.433 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:08:23,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:08:23,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:08:23,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:08:25,487.487 INFO    ] ================================================
[2026-10-18 03:08:25,503.503 INFO    ] Launching Daemon at Sun Oct 18 03:08:25 IST 2026
[2026-10-18 03:08:25,513.513 INFO    ] ================================================
[2026-10-18 03:08:26,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:08:26
[2026-10-18 03:08:26,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:08:27,069.069 INFO    ] Initializing speech engine...
[2026-10-18 03:08:27,077.077 INFO    ] 2026-10-18 03:08:27
[2026-10-18 03:08:27,369.369 INFO    ] 2026-10-18 03:08:27
[2026-10-18 03:08:27,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:08:27,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:08:27,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:08:27,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:08:27,866.866 INFO    ] time= 18/10/2026 03:08:27
[2026-10-18 03:08:27,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:08:27,939.939 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:08:28,077.077 INFO    ] No existing commands found in stream
[2026-10-18 03:08:33,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:08:33,104.104 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-18 03:08:34,488.488 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:08:34,491.491 INFO    ] Checking for system updates...
[2026-10-18 03:08:34,527.527 INFO    ] 200
[2026-10-18 03:08:34,530.530 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:08:34,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:08:34,588.588 INFO    ] No update needed
[2026-10-18 03:08:34,591.591 INFO    ] Checking for camera pi updates...
[2026-10-18 03:08:34,624.624 INFO    ] 200
[2026-10-18 03:08:34,627.627 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:08:34,668.668 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:08:44,683.683 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:08:44,718.718 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:08:44,727.727 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:08:44,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:08:44,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:08:44,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:08:46,780.780 INFO    ] ================================================
[2026-10-18 03:08:46,796.796 INFO    ] Launching Daemon at Sun Oct 18 03:08:46 IST 2026
[2026-10-18 03:08:46,808.808 INFO    ] ================================================
[2026-10-18 03:08:47,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:08:47
[2026-10-18 03:08:48,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:08:48,335.335 INFO    ] Initializing speech engine...
[2026-10-18 03:08:48,349.349 INFO    ] 2026-10-18 03:08:48
[2026-10-18 03:08:48,660.660 INFO    ] 2026-10-18 03:08:48
[2026-10-18 03:08:48,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:08:48,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:08:48,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:08:49,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:08:49,183.183 INFO    ] time= 18/10/2026 03:08:49
[2026-10-18 03:08:49,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:08:49,219.219 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:08:49,348.348 INFO    ] No existing commands found in stream
[2026-10-18 03:08:54,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:08:54,371.371 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-18 03:08:56,791.791 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:08:56,794.794 INFO    ] Checking for system updates...
[2026-10-18 03:08:56,831.831 INFO    ] 200
[2026-10-18 03:08:56,834.834 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:08:56,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:08:56,891.891 INFO    ] No update needed
[2026-10-18 03:08:56,894.894 INFO    ] Checking for camera pi updates...
[2026-10-18 03:08:56,930.930 INFO    ] 200
[2026-10-18 03:08:56,933.933 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:08:56,978.978 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:09:06,994.994 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:09:07,029.029 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:09:07,039.039 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:09:07,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:09:07,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:09:07,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:09:09,093.093 INFO    ] ================================================
[2026-10-18 03:09:09,109.109 INFO    ] Launching Daemon at Sun Oct 18 03:09:09 IST 2026
[2026-10-18 03:09:09,120.120 INFO    ] ================================================
[2026-10-18 03:09:09,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:09:09
[2026-10-18 03:09:10,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:09:10,630.630 INFO    ] Initializing speech engine...
[2026-10-18 03:09:10,653.653 INFO    ] 2026-10-18 03:09:10
[2026-10-18 03:09:10,908.908 INFO    ] 2026-10-18 03:09:10
[2026-10-18 03:09:10,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:09:11,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:09:11,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:09:11,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:09:11,367.367 INFO    ] time= 18/10/2026 03:09:11
[2026-10-18 03:09:11,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:09:11,486.486 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:09:11,627.627 INFO    ] No existing commands found in stream
[2026-10-18 03:09:16,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:09:16,655.655 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-18 03:09:18,668.668 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:09:18,671.671 INFO    ] Checking for system updates...
[2026-10-18 03:09:18,708.708 INFO    ] 200
[2026-10-18 03:09:18,711.711 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:09:18,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:09:18,767.767 INFO    ] No update needed
[2026-10-18 03:09:18,770.770 INFO    ] Checking for camera pi updates...
[2026-10-18 03:09:18,808.808 INFO    ] 200
[2026-10-18 03:09:18,810.810 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:09:18,856.856 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:09:28,869.869 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:09:28,909.909 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:09:28,920.920 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:09:28,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:09:28,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:09:28,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:09:30,976.976 INFO    ] ================================================
[2026-10-18 03:09:30,991.991 INFO    ] Launching Daemon at Sun Oct 18 03:09:30 IST 2026
[2026-10-18 03:09:31,002.002 INFO    ] ================================================
[2026-10-18 03:09:31,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:09:31
[2026-10-18 03:09:32,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:09:32,494.494 INFO    ] Initializing speech engine...
[2026-10-18 03:09:32,503.503 INFO    ] 2026-10-18 03:09:32
[2026-10-18 03:09:32,814.814 INFO    ] 2026-10-18 03:09:32
[2026-10-18 03:09:32,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:09:33,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:09:33,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:09:33,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:09:33,237.237 INFO    ] time= 18/10/2026 03:09:33
[2026-10-18 03:09:33,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:09:33,249.249 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:09:33,324.324 INFO    ] No existing commands found in stream
[2026-10-18 03:09:38,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:09:38,352.352 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-18 03:09:41,533.533 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:09:41,536.536 INFO    ] Checking for system updates...
[2026-10-18 03:09:41,575.575 INFO    ] 200
[2026-10-18 03:09:41,578.578 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:09:41,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:09:41,638.638 INFO    ] No update needed
[2026-10-18 03:09:41,640.640 INFO    ] Checking for camera pi updates...
[2026-10-18 03:09:41,674.674 INFO    ] 200
[2026-10-18 03:09:41,676.676 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:09:41,721.721 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:09:51,736.736 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:09:51,771.771 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:09:51,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:09:51,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:09:51,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:09:51,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:09:53,835.835 INFO    ] ================================================
[2026-10-18 03:09:53,851.851 INFO    ] Launching Daemon at Sun Oct 18 03:09:53 IST 2026
[2026-10-18 03:09:53,862.862 INFO    ] ================================================
[2026-10-18 03:09:54,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:09:54
[2026-10-18 03:09:55,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:09:55,284.284 INFO    ] Initializing speech engine...
[2026-10-18 03:09:55,303.303 INFO    ] 2026-10-18 03:09:55
[2026-10-18 03:09:55,571.571 INFO    ] 2026-10-18 03:09:55
[2026-10-18 03:09:55,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:09:55,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:09:55,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:09:55,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:09:55,989.989 INFO    ] time= 18/10/2026 03:09:55
[2026-10-18 03:09:56,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:09:56,063.063 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:09:56,180.180 INFO    ] No existing commands found in stream
[2026-10-18 03:10:01,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:10:01,208.208 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-18 03:10:08,247.247 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:10:08,250.250 INFO    ] Checking for system updates...
[2026-10-18 03:10:08,285.285 INFO    ] 200
[2026-10-18 03:10:08,287.287 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:10:08,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:10:08,343.343 INFO    ] No update needed
[2026-10-18 03:10:08,346.346 INFO    ] Checking for camera pi updates...
[2026-10-18 03:10:08,382.382 INFO    ] 200
[2026-10-18 03:10:08,385.385 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:10:08,426.426 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:10:18,442.442 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:10:18,478.478 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:10:18,488.488 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:10:18,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:10:18,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:10:18,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:10:20,541.541 INFO    ] ================================================
[2026-10-18 03:10:20,557.557 INFO    ] Launching Daemon at Sun Oct 18 03:10:20 IST 2026
[2026-10-18 03:10:20,569.569 INFO    ] ================================================
[2026-10-18 03:10:21,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:10:21
[2026-10-18 03:10:21,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:10:21,977.977 INFO    ] Initializing speech engine...
[2026-10-18 03:10:21,984.984 INFO    ] 2026-10-18 03:10:21
[2026-10-18 03:10:22,272.272 INFO    ] 2026-10-18 03:10:22
[2026-10-18 03:10:22,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:10:22,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:10:22,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:10:22,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:10:22,838.838 INFO    ] time= 18/10/2026 03:10:22
[2026-10-18 03:10:22,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:10:22,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:10:22,995.995 INFO    ] No existing commands found in stream
[2026-10-18 03:10:28,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:10:28,021.021 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-18 03:10:32,274.274 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:10:32,278.278 INFO    ] Checking for system updates...
[2026-10-18 03:10:32,317.317 INFO    ] 200
[2026-10-18 03:10:32,320.320 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:10:32,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:10:32,381.381 INFO    ] No update needed
[2026-10-18 03:10:32,385.385 INFO    ] Checking for camera pi updates...
[2026-10-18 03:10:32,425.425 INFO    ] 200
[2026-10-18 03:10:32,428.428 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:10:32,479.479 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:10:42,495.495 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:10:42,534.534 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:10:42,545.545 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:10:42,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:10:42,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:10:42,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:10:44,600.600 INFO    ] ================================================
[2026-10-18 03:10:44,616.616 INFO    ] Launching Daemon at Sun Oct 18 03:10:44 IST 2026
[2026-10-18 03:10:44,627.627 INFO    ] ================================================
[2026-10-18 03:10:45,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:10:45
[2026-10-18 03:10:45,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:10:46,034.034 INFO    ] Initializing speech engine...
[2026-10-18 03:10:46,042.042 INFO    ] 2026-10-18 03:10:46
[2026-10-18 03:10:46,317.317 INFO    ] 2026-10-18 03:10:46
[2026-10-18 03:10:46,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:10:46,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:10:46,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:10:46,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:10:46,792.792 INFO    ] time= 18/10/2026 03:10:46
[2026-10-18 03:10:46,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:10:46,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:10:47,033.033 INFO    ] No existing commands found in stream
[2026-10-18 03:10:52,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:10:52,055.055 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-18 03:10:56,382.382 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:10:56,385.385 INFO    ] Checking for system updates...
[2026-10-18 03:10:56,424.424 INFO    ] 200
[2026-10-18 03:10:56,427.427 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:10:56,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:10:56,488.488 INFO    ] No update needed
[2026-10-18 03:10:56,491.491 INFO    ] Checking for camera pi updates...
[2026-10-18 03:10:56,524.524 INFO    ] 200
[2026-10-18 03:10:56,527.527 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:10:56,572.572 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:11:06,588.588 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:11:06,623.623 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:11:06,632.632 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:11:06,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:11:06,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:11:06,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:11:08,687.687 INFO    ] ================================================
[2026-10-18 03:11:08,702.702 INFO    ] Launching Daemon at Sun Oct 18 03:11:08 IST 2026
[2026-10-18 03:11:08,713.713 INFO    ] ================================================
[2026-10-18 03:11:09,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:11:09
[2026-10-18 03:11:09,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:11:10,141.141 INFO    ] Initializing speech engine...
[2026-10-18 03:11:10,151.151 INFO    ] 2026-10-18 03:11:10
[2026-10-18 03:11:10,424.424 INFO    ] 2026-10-18 03:11:10
[2026-10-18 03:11:10,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:11:10,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:11:10,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:11:10,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:11:10,990.990 INFO    ] time= 18/10/2026 03:11:10
[2026-10-18 03:11:11,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:11:11,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:11:11,221.221 INFO    ] No existing commands found in stream
[2026-10-18 03:11:16,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:11:16,256.256 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-18 03:11:16,777.777 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 03:11:16,780.780 INFO    ] Checking for system updates...
[2026-10-18 03:11:16,817.817 INFO    ] 200
[2026-10-18 03:11:16,819.819 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:11:16,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:11:16,875.875 INFO    ] No update needed
[2026-10-18 03:11:16,878.878 INFO    ] Checking for camera pi updates...
[2026-10-18 03:11:16,912.912 INFO    ] 200
[2026-10-18 03:11:16,915.915 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:11:16,956.956 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:11:26,972.972 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:11:27,012.012 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:11:27,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:11:27,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:11:27,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:11:27,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:11:29,080.080 INFO    ] ================================================
[2026-10-18 03:11:29,096.096 INFO    ] Launching Daemon at Sun Oct 18 03:11:29 IST 2026
[2026-10-18 03:11:29,107.107 INFO    ] ================================================
[2026-10-18 03:11:29,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:11:29
[2026-10-18 03:11:30,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:11:30,561.561 INFO    ] Initializing speech engine...
[2026-10-18 03:11:30,570.570 INFO    ] 2026-10-18 03:11:30
[2026-10-18 03:11:30,864.864 INFO    ] 2026-10-18 03:11:30
[2026-10-18 03:11:30,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:11:31,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:11:31,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:11:31,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:11:31,355.355 INFO    ] time= 18/10/2026 03:11:31
[2026-10-18 03:11:31,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:11:31,439.439 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:11:31,554.554 INFO    ] No existing commands found in stream
[2026-10-18 03:11:36,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:11:36,569.569 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-18 03:11:38,394.394 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 03:11:38,397.397 INFO    ] Checking for system updates...
[2026-10-18 03:11:38,444.444 INFO    ] 200
[2026-10-18 03:11:38,447.447 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:11:38,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:11:38,515.515 INFO    ] No update needed
[2026-10-18 03:11:38,517.517 INFO    ] Checking for camera pi updates...
[2026-10-18 03:11:38,551.551 INFO    ] 200
[2026-10-18 03:11:38,553.553 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:11:38,594.594 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:11:48,609.609 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:11:48,643.643 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:11:48,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:11:48,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:11:48,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:11:48,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:11:50,705.705 INFO    ] ================================================
[2026-10-18 03:11:50,722.722 INFO    ] Launching Daemon at Sun Oct 18 03:11:50 IST 2026
[2026-10-18 03:11:50,734.734 INFO    ] ================================================
[2026-10-18 03:11:51,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:11:51
[2026-10-18 03:11:52,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:11:52,344.344 INFO    ] Initializing speech engine...
[2026-10-18 03:11:52,351.351 INFO    ] 2026-10-18 03:11:52
[2026-10-18 03:11:52,623.623 INFO    ] 2026-10-18 03:11:52
[2026-10-18 03:11:52,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:11:52,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:11:52,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:11:53,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:11:53,187.187 INFO    ] time= 18/10/2026 03:11:53
[2026-10-18 03:11:53,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:11:53,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:11:53,346.346 INFO    ] No existing commands found in stream
[2026-10-18 03:11:58,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:11:58,363.363 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-18 03:12:02,659.659 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:12:02,662.662 INFO    ] Checking for system updates...
[2026-10-18 03:12:02,707.707 INFO    ] 200
[2026-10-18 03:12:02,710.710 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:12:02,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:12:02,774.774 INFO    ] No update needed
[2026-10-18 03:12:02,777.777 INFO    ] Checking for camera pi updates...
[2026-10-18 03:12:02,817.817 INFO    ] 200
[2026-10-18 03:12:02,820.820 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:12:02,890.890 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:12:12,907.907 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:12:12,943.943 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:12:12,952.952 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:12:12,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:12:12,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:12:12,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:12:15,006.006 INFO    ] ================================================
[2026-10-18 03:12:15,022.022 INFO    ] Launching Daemon at Sun Oct 18 03:12:15 IST 2026
[2026-10-18 03:12:15,033.033 INFO    ] ================================================
[2026-10-18 03:12:15,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:12:15
[2026-10-18 03:12:16,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:12:16,444.444 INFO    ] Initializing speech engine...
[2026-10-18 03:12:16,451.451 INFO    ] 2026-10-18 03:12:16
[2026-10-18 03:12:16,741.741 INFO    ] 2026-10-18 03:12:16
[2026-10-18 03:12:16,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:12:16,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:12:16,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:12:17,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:12:17,151.151 INFO    ] time= 18/10/2026 03:12:17
[2026-10-18 03:12:17,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:12:17,211.211 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:12:17,323.323 INFO    ] No existing commands found in stream
[2026-10-18 03:12:22,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:12:22,351.351 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-18 03:12:24,549.549 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:12:24,552.552 INFO    ] Checking for system updates...
[2026-10-18 03:12:24,590.590 INFO    ] 200
[2026-10-18 03:12:24,592.592 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:12:24,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:12:24,648.648 INFO    ] No update needed
[2026-10-18 03:12:24,650.650 INFO    ] Checking for camera pi updates...
[2026-10-18 03:12:24,683.683 INFO    ] 200
[2026-10-18 03:12:24,686.686 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:12:24,725.725 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:12:34,738.738 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:12:34,772.772 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:12:34,782.782 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:12:34,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:12:34,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:12:34,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:12:36,835.835 INFO    ] ================================================
[2026-10-18 03:12:36,850.850 INFO    ] Launching Daemon at Sun Oct 18 03:12:36 IST 2026
[2026-10-18 03:12:36,861.861 INFO    ] ================================================
[2026-10-18 03:12:37,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:12:37
[2026-10-18 03:12:38,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:12:38,335.335 INFO    ] Initializing speech engine...
[2026-10-18 03:12:38,360.360 INFO    ] 2026-10-18 03:12:38
[2026-10-18 03:12:38,640.640 INFO    ] 2026-10-18 03:12:38
[2026-10-18 03:12:38,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:12:38,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:12:38,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:12:39,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:12:39,059.059 INFO    ] time= 18/10/2026 03:12:39
[2026-10-18 03:12:39,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:12:39,109.109 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:12:39,225.225 INFO    ] No existing commands found in stream
[2026-10-18 03:12:44,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:12:44,253.253 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-18 03:12:48,370.370 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 03:12:48,373.373 INFO    ] Checking for system updates...
[2026-10-18 03:12:48,409.409 INFO    ] 200
[2026-10-18 03:12:48,411.411 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:12:48,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:12:48,466.466 INFO    ] No update needed
[2026-10-18 03:12:48,468.468 INFO    ] Checking for camera pi updates...
[2026-10-18 03:12:48,504.504 INFO    ] 200
[2026-10-18 03:12:48,507.507 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:12:48,551.551 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:12:58,566.566 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:12:58,600.600 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:12:58,610.610 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:12:58,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:12:58,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:12:58,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:13:00,662.662 INFO    ] ================================================
[2026-10-18 03:13:00,678.678 INFO    ] Launching Daemon at Sun Oct 18 03:13:00 IST 2026
[2026-10-18 03:13:00,690.690 INFO    ] ================================================
[2026-10-18 03:13:01,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:13:01
[2026-10-18 03:13:02,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:13:02,494.494 INFO    ] Initializing speech engine...
[2026-10-18 03:13:02,509.509 INFO    ] 2026-10-18 03:13:02
[2026-10-18 03:13:02,798.798 INFO    ] 2026-10-18 03:13:02
[2026-10-18 03:13:02,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:13:03,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:13:03,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:13:03,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:13:03,286.286 INFO    ] time= 18/10/2026 03:13:03
[2026-10-18 03:13:03,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:13:03,356.356 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:13:03,449.449 INFO    ] No existing commands found in stream
[2026-10-18 03:13:08,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:13:08,466.466 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-18 03:13:10,984.984 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:13:10,987.987 INFO    ] Checking for system updates...
[2026-10-18 03:13:11,026.026 INFO    ] 200
[2026-10-18 03:13:11,028.028 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:13:11,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:13:11,084.084 INFO    ] No update needed
[2026-10-18 03:13:11,087.087 INFO    ] Checking for camera pi updates...
[2026-10-18 03:13:11,121.121 INFO    ] 200
[2026-10-18 03:13:11,123.123 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:13:11,163.163 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:13:21,178.178 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:13:21,213.213 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:13:21,222.222 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:13:21,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:13:21,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:13:21,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:13:23,276.276 INFO    ] ================================================
[2026-10-18 03:13:23,291.291 INFO    ] Launching Daemon at Sun Oct 18 03:13:23 IST 2026
[2026-10-18 03:13:23,303.303 INFO    ] ================================================
[2026-10-18 03:13:23,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:13:23
[2026-10-18 03:13:24,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:13:24,930.930 INFO    ] Initializing speech engine...
[2026-10-18 03:13:24,942.942 INFO    ] 2026-10-18 03:13:24
[2026-10-18 03:13:25,195.195 INFO    ] 2026-10-18 03:13:25
[2026-10-18 03:13:25,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:13:25,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:13:25,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:13:25,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:13:25,607.607 INFO    ] time= 18/10/2026 03:13:25
[2026-10-18 03:13:25,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:13:25,639.639 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:13:25,773.773 INFO    ] No existing commands found in stream
[2026-10-18 03:13:30,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:13:30,796.796 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-18 03:13:31,321.321 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:13:31,324.324 INFO    ] Checking for system updates...
[2026-10-18 03:13:31,359.359 INFO    ] 200
[2026-10-18 03:13:31,362.362 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:13:31,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:13:31,415.415 INFO    ] No update needed
[2026-10-18 03:13:31,418.418 INFO    ] Checking for camera pi updates...
[2026-10-18 03:13:31,454.454 INFO    ] 200
[2026-10-18 03:13:31,457.457 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:13:31,499.499 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:13:41,513.513 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:13:41,548.548 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:13:41,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:13:41,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:13:41,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:13:41,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:13:43,609.609 INFO    ] ================================================
[2026-10-18 03:13:43,626.626 INFO    ] Launching Daemon at Sun Oct 18 03:13:43 IST 2026
[2026-10-18 03:13:43,637.637 INFO    ] ================================================
[2026-10-18 03:13:44,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:13:44
[2026-10-18 03:13:44,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:13:45,091.091 INFO    ] Initializing speech engine...
[2026-10-18 03:13:45,100.100 INFO    ] 2026-10-18 03:13:45
[2026-10-18 03:13:45,396.396 INFO    ] 2026-10-18 03:13:45
[2026-10-18 03:13:45,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:13:45,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:13:45,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:13:45,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:13:45,905.905 INFO    ] time= 18/10/2026 03:13:45
[2026-10-18 03:13:45,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:13:46,009.009 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:13:46,167.167 INFO    ] No existing commands found in stream
[2026-10-18 03:13:51,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:13:51,192.192 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-18 03:13:54,411.411 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 03:13:54,414.414 INFO    ] Checking for system updates...
[2026-10-18 03:13:54,449.449 INFO    ] 200
[2026-10-18 03:13:54,452.452 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:13:54,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:13:54,506.506 INFO    ] No update needed
[2026-10-18 03:13:54,508.508 INFO    ] Checking for camera pi updates...
[2026-10-18 03:13:54,543.543 INFO    ] 200
[2026-10-18 03:13:54,545.545 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:13:54,586.586 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:14:04,600.600 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df5150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:14:04,636.636 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:14:04,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:14:04,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:14:04,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:14:04,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:14:06,699.699 INFO    ] ================================================
[2026-10-18 03:14:06,715.715 INFO    ] Launching Daemon at Sun Oct 18 03:14:06 IST 2026
[2026-10-18 03:14:06,726.726 INFO    ] ================================================
[2026-10-18 03:14:07,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:14:07
[2026-10-18 03:14:07,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:14:08,186.186 INFO    ] Initializing speech engine...
[2026-10-18 03:14:08,191.191 INFO    ] 2026-10-18 03:14:08
[2026-10-18 03:14:08,453.453 INFO    ] 2026-10-18 03:14:08
[2026-10-18 03:14:08,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:14:08,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:14:08,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:14:08,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:14:08,994.994 INFO    ] time= 18/10/2026 03:14:08
[2026-10-18 03:14:09,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:14:09,018.018 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:14:09,145.145 INFO    ] No existing commands found in stream
[2026-10-18 03:14:14,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:14:14,162.162 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-18 03:14:14,801.801 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:14:14,804.804 INFO    ] Checking for system updates...
[2026-10-18 03:14:14,840.840 INFO    ] 200
[2026-10-18 03:14:14,843.843 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:14:14,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:14:14,899.899 INFO    ] No update needed
[2026-10-18 03:14:14,902.902 INFO    ] Checking for camera pi updates...
[2026-10-18 03:14:14,938.938 INFO    ] 200
[2026-10-18 03:14:14,941.941 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:14:14,982.982 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:14:24,997.997 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:14:25,033.033 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:14:25,042.042 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:14:25,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:14:25,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:14:25,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:14:27,096.096 INFO    ] ================================================
[2026-10-18 03:14:27,112.112 INFO    ] Launching Daemon at Sun Oct 18 03:14:27 IST 2026
[2026-10-18 03:14:27,123.123 INFO    ] ================================================
[2026-10-18 03:14:27,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:14:27
[2026-10-18 03:14:28,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:14:28,586.586 INFO    ] Initializing speech engine...
[2026-10-18 03:14:28,592.592 INFO    ] 2026-10-18 03:14:28
[2026-10-18 03:14:28,840.840 INFO    ] 2026-10-18 03:14:28
[2026-10-18 03:14:28,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:14:29,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:14:29,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:14:29,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:14:29,330.330 INFO    ] time= 18/10/2026 03:14:29
[2026-10-18 03:14:29,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:14:29,405.405 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:14:29,559.559 INFO    ] No existing commands found in stream
[2026-10-18 03:14:34,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:14:34,590.590 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-18 03:14:38,466.466 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:14:38,470.470 INFO    ] Checking for system updates...
[2026-10-18 03:14:38,506.506 INFO    ] 200
[2026-10-18 03:14:38,509.509 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:14:38,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:14:38,567.567 INFO    ] No update needed
[2026-10-18 03:14:38,570.570 INFO    ] Checking for camera pi updates...
[2026-10-18 03:14:38,604.604 INFO    ] 200
[2026-10-18 03:14:38,606.606 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:14:38,649.649 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:14:48,664.664 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:14:48,700.700 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:14:48,710.710 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:14:48,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:14:48,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:14:48,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:14:50,764.764 INFO    ] ================================================
[2026-10-18 03:14:50,781.781 INFO    ] Launching Daemon at Sun Oct 18 03:14:50 IST 2026
[2026-10-18 03:14:50,792.792 INFO    ] ================================================
[2026-10-18 03:14:51,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:14:51
[2026-10-18 03:14:52,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:14:52,381.381 INFO    ] Initializing speech engine...
[2026-10-18 03:14:52,386.386 INFO    ] 2026-10-18 03:14:52
[2026-10-18 03:14:52,649.649 INFO    ] 2026-10-18 03:14:52
[2026-10-18 03:14:52,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:14:52,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:14:52,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:14:53,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:14:53,153.153 INFO    ] time= 18/10/2026 03:14:53
[2026-10-18 03:14:53,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:14:53,200.200 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:14:53,344.344 INFO    ] No existing commands found in stream
[2026-10-18 03:14:58,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:14:58,361.361 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-18 03:14:59,353.353 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:14:59,355.355 INFO    ] Checking for system updates...
[2026-10-18 03:14:59,394.394 INFO    ] 200
[2026-10-18 03:14:59,397.397 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:14:59,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:14:59,452.452 INFO    ] No update needed
[2026-10-18 03:14:59,454.454 INFO    ] Checking for camera pi updates...
[2026-10-18 03:14:59,487.487 INFO    ] 200
[2026-10-18 03:14:59,490.490 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:14:59,530.530 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:15:09,543.543 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:15:09,578.578 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:15:09,588.588 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:15:09,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:15:09,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:15:09,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:15:11,640.640 INFO    ] ================================================
[2026-10-18 03:15:11,657.657 INFO    ] Launching Daemon at Sun Oct 18 03:15:11 IST 2026
[2026-10-18 03:15:11,667.667 INFO    ] ================================================
[2026-10-18 03:15:12,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:15:12
[2026-10-18 03:15:12,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:15:13,141.141 INFO    ] Initializing speech engine...
[2026-10-18 03:15:13,157.157 INFO    ] 2026-10-18 03:15:13
[2026-10-18 03:15:13,440.440 INFO    ] 2026-10-18 03:15:13
[2026-10-18 03:15:13,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:15:13,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:15:13,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:15:13,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:15:13,971.971 INFO    ] time= 18/10/2026 03:15:13
[2026-10-18 03:15:14,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:15:14,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:15:14,244.244 INFO    ] No existing commands found in stream
[2026-10-18 03:15:19,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:15:19,262.262 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-18 03:15:23,531.531 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 03:15:23,534.534 INFO    ] Checking for system updates...
[2026-10-18 03:15:23,573.573 INFO    ] 200
[2026-10-18 03:15:23,576.576 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:15:23,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:15:23,632.632 INFO    ] No update needed
[2026-10-18 03:15:23,635.635 INFO    ] Checking for camera pi updates...
[2026-10-18 03:15:23,670.670 INFO    ] 200
[2026-10-18 03:15:23,672.672 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:15:23,717.717 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:15:33,731.731 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:15:33,770.770 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:15:33,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:15:33,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:15:33,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:15:33,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:15:35,837.837 INFO    ] ================================================
[2026-10-18 03:15:35,853.853 INFO    ] Launching Daemon at Sun Oct 18 03:15:35 IST 2026
[2026-10-18 03:15:35,864.864 INFO    ] ================================================
[2026-10-18 03:15:36,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:15:36
[2026-10-18 03:15:37,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:15:37,286.286 INFO    ] Initializing speech engine...
[2026-10-18 03:15:37,313.313 INFO    ] 2026-10-18 03:15:37
[2026-10-18 03:15:37,570.570 INFO    ] 2026-10-18 03:15:37
[2026-10-18 03:15:37,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:15:37,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:15:37,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:15:38,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:15:38,074.074 INFO    ] time= 18/10/2026 03:15:38
[2026-10-18 03:15:38,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:15:38,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:15:38,292.292 INFO    ] No existing commands found in stream
[2026-10-18 03:15:43,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:15:43,309.309 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-18 03:15:46,531.531 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 03:15:46,534.534 INFO    ] Checking for system updates...
[2026-10-18 03:15:46,574.574 INFO    ] 200
[2026-10-18 03:15:46,577.577 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:15:46,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:15:46,633.633 INFO    ] No update needed
[2026-10-18 03:15:46,636.636 INFO    ] Checking for camera pi updates...
[2026-10-18 03:15:46,673.673 INFO    ] 200
[2026-10-18 03:15:46,676.676 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:15:46,718.718 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:15:56,734.734 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:15:56,772.772 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:15:56,783.783 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:15:56,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:15:56,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:15:56,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:15:58,840.840 INFO    ] ================================================
[2026-10-18 03:15:58,856.856 INFO    ] Launching Daemon at Sun Oct 18 03:15:58 IST 2026
[2026-10-18 03:15:58,866.866 INFO    ] ================================================
[2026-10-18 03:15:59,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:15:59
[2026-10-18 03:16:00,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:16:00,401.401 INFO    ] Initializing speech engine...
[2026-10-18 03:16:00,410.410 INFO    ] 2026-10-18 03:16:00
[2026-10-18 03:16:00,702.702 INFO    ] 2026-10-18 03:16:00
[2026-10-18 03:16:00,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:16:00,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:16:00,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:16:01,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:16:01,220.220 INFO    ] time= 18/10/2026 03:16:01
[2026-10-18 03:16:01,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:16:01,262.262 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:16:01,413.413 INFO    ] No existing commands found in stream
[2026-10-18 03:16:06,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:16:06,427.427 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-18 03:16:10,730.730 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:16:10,732.732 INFO    ] Checking for system updates...
[2026-10-18 03:16:10,777.777 INFO    ] 200
[2026-10-18 03:16:10,780.780 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:16:10,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:16:10,842.842 INFO    ] No update needed
[2026-10-18 03:16:10,845.845 INFO    ] Checking for camera pi updates...
[2026-10-18 03:16:10,883.883 INFO    ] 200
[2026-10-18 03:16:10,885.885 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:16:10,932.932 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:16:20,948.948 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:16:20,983.983 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:16:20,993.993 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:16:20,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:16:21,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:16:21,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:16:23,046.046 INFO    ] ================================================
[2026-10-18 03:16:23,062.062 INFO    ] Launching Daemon at Sun Oct 18 03:16:23 IST 2026
[2026-10-18 03:16:23,075.075 INFO    ] ================================================
[2026-10-18 03:16:23,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:16:23
[2026-10-18 03:16:24,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:16:24,520.520 INFO    ] Initializing speech engine...
[2026-10-18 03:16:24,529.529 INFO    ] 2026-10-18 03:16:24
[2026-10-18 03:16:24,782.782 INFO    ] 2026-10-18 03:16:24
[2026-10-18 03:16:24,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:16:25,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:16:25,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:16:25,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:16:25,350.350 INFO    ] time= 18/10/2026 03:16:25
[2026-10-18 03:16:25,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:16:25,374.374 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:16:25,513.513 INFO    ] No existing commands found in stream
[2026-10-18 03:16:30,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:16:30,542.542 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-18 03:16:32,566.566 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:16:32,569.569 INFO    ] Checking for system updates...
[2026-10-18 03:16:32,611.611 INFO    ] 200
[2026-10-18 03:16:32,613.613 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:16:32,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:16:32,679.679 INFO    ] No update needed
[2026-10-18 03:16:32,682.682 INFO    ] Checking for camera pi updates...
[2026-10-18 03:16:32,717.717 INFO    ] 200
[2026-10-18 03:16:32,720.720 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:16:32,772.772 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:16:42,787.787 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:16:42,822.822 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:16:42,832.832 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:16:42,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:16:42,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:16:42,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:16:44,885.885 INFO    ] ================================================
[2026-10-18 03:16:44,901.901 INFO    ] Launching Daemon at Sun Oct 18 03:16:44 IST 2026
[2026-10-18 03:16:44,911.911 INFO    ] ================================================
[2026-10-18 03:16:45,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:16:45
[2026-10-18 03:16:46,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:16:46,509.509 INFO    ] Initializing speech engine...
[2026-10-18 03:16:46,521.521 INFO    ] 2026-10-18 03:16:46
[2026-10-18 03:16:46,789.789 INFO    ] 2026-10-18 03:16:46
[2026-10-18 03:16:46,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:16:47,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:16:47,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:16:47,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:16:47,364.364 INFO    ] time= 18/10/2026 03:16:47
[2026-10-18 03:16:47,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:16:47,396.396 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:16:47,512.512 INFO    ] No existing commands found in stream
[2026-10-18 03:16:52,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:16:52,541.541 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-18 03:16:54,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:16:54,135.135 INFO    ] Checking for system updates...
[2026-10-18 03:16:54,171.171 INFO    ] 200
[2026-10-18 03:16:54,174.174 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:16:54,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:16:54,230.230 INFO    ] No update needed
[2026-10-18 03:16:54,233.233 INFO    ] Checking for camera pi updates...
[2026-10-18 03:16:54,266.266 INFO    ] 200
[2026-10-18 03:16:54,269.269 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:16:54,309.309 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:17:04,323.323 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:17:04,359.359 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:17:04,369.369 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:17:04,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:17:04,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:17:04,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:17:06,421.421 INFO    ] ================================================
[2026-10-18 03:17:06,436.436 INFO    ] Launching Daemon at Sun Oct 18 03:17:06 IST 2026
[2026-10-18 03:17:06,447.447 INFO    ] ================================================
[2026-10-18 03:17:07,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:17:07
[2026-10-18 03:17:07,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:17:07,865.865 INFO    ] Initializing speech engine...
[2026-10-18 03:17:07,874.874 INFO    ] 2026-10-18 03:17:07
[2026-10-18 03:17:08,119.119 INFO    ] 2026-10-18 03:17:08
[2026-10-18 03:17:08,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:17:08,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:17:08,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:17:08,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:17:08,628.628 INFO    ] time= 18/10/2026 03:17:08
[2026-10-18 03:17:08,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:17:08,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:17:08,866.866 INFO    ] No existing commands found in stream
[2026-10-18 03:17:13,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:17:13,899.899 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-18 03:17:15,950.950 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 03:17:15,952.952 INFO    ] Checking for system updates...
[2026-10-18 03:17:15,992.992 INFO    ] 200
[2026-10-18 03:17:15,994.994 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:17:16,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:17:16,051.051 INFO    ] No update needed
[2026-10-18 03:17:16,054.054 INFO    ] Checking for camera pi updates...
[2026-10-18 03:17:16,093.093 INFO    ] 200
[2026-10-18 03:17:16,095.095 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:17:16,142.142 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:17:26,162.162 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:17:26,203.203 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:17:26,214.214 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:17:26,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:17:26,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:17:26,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:17:28,271.271 INFO    ] ================================================
[2026-10-18 03:17:28,287.287 INFO    ] Launching Daemon at Sun Oct 18 03:17:28 IST 2026
[2026-10-18 03:17:28,298.298 INFO    ] ================================================
[2026-10-18 03:17:28,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:17:28
[2026-10-18 03:17:29,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:17:29,952.952 INFO    ] Initializing speech engine...
[2026-10-18 03:17:29,961.961 INFO    ] 2026-10-18 03:17:29
[2026-10-18 03:17:30,234.234 INFO    ] 2026-10-18 03:17:30
[2026-10-18 03:17:30,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:17:30,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:17:30,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:17:30,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:17:30,806.806 INFO    ] time= 18/10/2026 03:17:30
[2026-10-18 03:17:30,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:17:30,834.834 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:17:30,904.904 INFO    ] No existing commands found in stream
[2026-10-18 03:17:35,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:17:35,928.928 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-18 03:17:37,608.608 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 03:17:37,611.611 INFO    ] Checking for system updates...
[2026-10-18 03:17:37,655.655 INFO    ] 200
[2026-10-18 03:17:37,659.659 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:17:37,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:17:37,716.716 INFO    ] No update needed
[2026-10-18 03:17:37,720.720 INFO    ] Checking for camera pi updates...
[2026-10-18 03:17:37,757.757 INFO    ] 200
[2026-10-18 03:17:37,760.760 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:17:37,806.806 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:17:47,823.823 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:17:47,863.863 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:17:47,874.874 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:17:47,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:17:47,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:17:47,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:17:49,930.930 INFO    ] ================================================
[2026-10-18 03:17:49,946.946 INFO    ] Launching Daemon at Sun Oct 18 03:17:49 IST 2026
[2026-10-18 03:17:49,957.957 INFO    ] ================================================
[2026-10-18 03:17:50,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:17:50
[2026-10-18 03:17:51,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:17:51,405.405 INFO    ] Initializing speech engine...
[2026-10-18 03:17:51,411.411 INFO    ] 2026-10-18 03:17:51
[2026-10-18 03:17:51,660.660 INFO    ] 2026-10-18 03:17:51
[2026-10-18 03:17:51,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:17:52,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:17:52,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:17:52,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:17:52,236.236 INFO    ] time= 18/10/2026 03:17:52
[2026-10-18 03:17:52,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:17:52,266.266 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:17:52,392.392 INFO    ] No existing commands found in stream
[2026-10-18 03:17:57,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:17:57,407.407 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-18 03:17:59,372.372 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:17:59,375.375 INFO    ] Checking for system updates...
[2026-10-18 03:17:59,410.410 INFO    ] 200
[2026-10-18 03:17:59,413.413 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:17:59,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:17:59,467.467 INFO    ] No update needed
[2026-10-18 03:17:59,469.469 INFO    ] Checking for camera pi updates...
[2026-10-18 03:17:59,507.507 INFO    ] 200
[2026-10-18 03:17:59,509.509 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:17:59,550.550 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:18:09,564.564 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:18:09,599.599 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:18:09,608.608 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:18:09,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:18:09,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:18:09,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:18:11,661.661 INFO    ] ================================================
[2026-10-18 03:18:11,676.676 INFO    ] Launching Daemon at Sun Oct 18 03:18:11 IST 2026
[2026-10-18 03:18:11,686.686 INFO    ] ================================================
[2026-10-18 03:18:12,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:18:12
[2026-10-18 03:18:12,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:18:13,089.089 INFO    ] Initializing speech engine...
[2026-10-18 03:18:13,102.102 INFO    ] 2026-10-18 03:18:13
[2026-10-18 03:18:13,370.370 INFO    ] 2026-10-18 03:18:13
[2026-10-18 03:18:13,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:18:13,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:18:13,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:18:13,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:18:13,933.933 INFO    ] time= 18/10/2026 03:18:13
[2026-10-18 03:18:13,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:18:13,959.959 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:18:14,094.094 INFO    ] No existing commands found in stream
[2026-10-18 03:18:19,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:18:19,109.109 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-18 03:18:20,565.565 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:18:20,567.567 INFO    ] Checking for system updates...
[2026-10-18 03:18:20,604.604 INFO    ] 200
[2026-10-18 03:18:20,607.607 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:18:20,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:18:20,674.674 INFO    ] No update needed
[2026-10-18 03:18:20,676.676 INFO    ] Checking for camera pi updates...
[2026-10-18 03:18:20,711.711 INFO    ] 200
[2026-10-18 03:18:20,714.714 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:18:20,759.759 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:18:30,776.776 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:18:30,815.815 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:18:30,826.826 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:18:30,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:18:30,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:18:30,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:18:32,883.883 INFO    ] ================================================
[2026-10-18 03:18:32,898.898 INFO    ] Launching Daemon at Sun Oct 18 03:18:32 IST 2026
[2026-10-18 03:18:32,909.909 INFO    ] ================================================
[2026-10-18 03:18:33,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:18:33
[2026-10-18 03:18:34,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:18:34,509.509 INFO    ] Initializing speech engine...
[2026-10-18 03:18:34,521.521 INFO    ] 2026-10-18 03:18:34
[2026-10-18 03:18:34,807.807 INFO    ] 2026-10-18 03:18:34
[2026-10-18 03:18:34,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:18:35,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:18:35,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:18:35,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:18:35,351.351 INFO    ] time= 18/10/2026 03:18:35
[2026-10-18 03:18:35,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:18:35,388.388 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:18:35,504.504 INFO    ] No existing commands found in stream
[2026-10-18 03:18:40,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:18:40,538.538 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-18 03:18:42,674.674 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:18:42,677.677 INFO    ] Checking for system updates...
[2026-10-18 03:18:42,715.715 INFO    ] 200
[2026-10-18 03:18:42,718.718 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:18:42,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:18:42,773.773 INFO    ] No update needed
[2026-10-18 03:18:42,776.776 INFO    ] Checking for camera pi updates...
[2026-10-18 03:18:42,810.810 INFO    ] 200
[2026-10-18 03:18:42,813.813 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:18:42,854.854 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:18:52,870.870 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:18:52,910.910 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:18:52,921.921 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:18:52,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:18:52,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:18:52,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:18:54,978.978 INFO    ] ================================================
[2026-10-18 03:18:55,995.995 INFO    ] Launching Daemon at Sun Oct 18 03:18:54 IST 2026
[2026-10-18 03:18:55,008.008 INFO    ] ================================================
[2026-10-18 03:18:55,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:18:55
[2026-10-18 03:18:56,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:18:56,494.494 INFO    ] Initializing speech engine...
[2026-10-18 03:18:56,500.500 INFO    ] 2026-10-18 03:18:56
[2026-10-18 03:18:56,764.764 INFO    ] 2026-10-18 03:18:56
[2026-10-18 03:18:56,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:18:57,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:18:57,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:18:57,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:18:57,270.270 INFO    ] time= 18/10/2026 03:18:57
[2026-10-18 03:18:57,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:18:57,334.334 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:18:57,480.480 INFO    ] No existing commands found in stream
[2026-10-18 03:19:02,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:19:02,502.502 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-18 03:19:05,737.737 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:19:05,739.739 INFO    ] Checking for system updates...
[2026-10-18 03:19:05,779.779 INFO    ] 200
[2026-10-18 03:19:05,782.782 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:19:05,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:19:05,848.848 INFO    ] No update needed
[2026-10-18 03:19:05,850.850 INFO    ] Checking for camera pi updates...
[2026-10-18 03:19:05,888.888 INFO    ] 200
[2026-10-18 03:19:05,890.890 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:19:05,930.930 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:19:15,945.945 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:19:15,981.981 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:19:15,990.990 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:19:15,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:19:15,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:19:16,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:19:18,044.044 INFO    ] ================================================
[2026-10-18 03:19:18,059.059 INFO    ] Launching Daemon at Sun Oct 18 03:19:18 IST 2026
[2026-10-18 03:19:18,070.070 INFO    ] ================================================
[2026-10-18 03:19:18,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:19:18
[2026-10-18 03:19:19,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:19:19,516.516 INFO    ] Initializing speech engine...
[2026-10-18 03:19:19,525.525 INFO    ] 2026-10-18 03:19:19
[2026-10-18 03:19:19,818.818 INFO    ] 2026-10-18 03:19:19
[2026-10-18 03:19:19,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:19:20,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:19:20,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:19:20,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:19:20,350.350 INFO    ] time= 18/10/2026 03:19:20
[2026-10-18 03:19:20,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:19:20,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:19:20,618.618 INFO    ] No existing commands found in stream
[2026-10-18 03:19:25,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:19:25,639.639 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-18 03:19:27,130.130 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:19:27,133.133 INFO    ] Checking for system updates...
[2026-10-18 03:19:27,170.170 INFO    ] 200
[2026-10-18 03:19:27,173.173 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:19:27,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:19:27,234.234 INFO    ] No update needed
[2026-10-18 03:19:27,238.238 INFO    ] Checking for camera pi updates...
[2026-10-18 03:19:27,272.272 INFO    ] 200
[2026-10-18 03:19:27,274.274 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:19:27,323.323 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:19:37,339.339 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:19:37,378.378 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:19:37,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:19:37,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:19:37,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:19:37,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:19:39,447.447 INFO    ] ================================================
[2026-10-18 03:19:39,464.464 INFO    ] Launching Daemon at Sun Oct 18 03:19:39 IST 2026
[2026-10-18 03:19:39,475.475 INFO    ] ================================================
[2026-10-18 03:19:40,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:19:40
[2026-10-18 03:19:40,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:19:41,103.103 INFO    ] Initializing speech engine...
[2026-10-18 03:19:41,109.109 INFO    ] 2026-10-18 03:19:41
[2026-10-18 03:19:41,383.383 INFO    ] 2026-10-18 03:19:41
[2026-10-18 03:19:41,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:19:41,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:19:41,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:19:41,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:19:41,945.945 INFO    ] time= 18/10/2026 03:19:41
[2026-10-18 03:19:41,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:19:41,975.975 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:19:42,130.130 INFO    ] No existing commands found in stream
[2026-10-18 03:19:47,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:19:47,169.169 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-18 03:19:48,521.521 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:19:48,524.524 INFO    ] Checking for system updates...
[2026-10-18 03:19:48,561.561 INFO    ] 200
[2026-10-18 03:19:48,564.564 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:19:48,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:19:48,626.626 INFO    ] No update needed
[2026-10-18 03:19:48,628.628 INFO    ] Checking for camera pi updates...
[2026-10-18 03:19:48,663.663 INFO    ] 200
[2026-10-18 03:19:48,666.666 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:19:48,707.707 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:19:58,723.723 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:19:58,762.762 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:19:58,773.773 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:19:58,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:19:58,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:19:58,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:20:00,828.828 INFO    ] ================================================
[2026-10-18 03:20:00,843.843 INFO    ] Launching Daemon at Sun Oct 18 03:20:00 IST 2026
[2026-10-18 03:20:00,854.854 INFO    ] ================================================
[2026-10-18 03:20:01,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:20:01
[2026-10-18 03:20:02,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:20:03,083.083 INFO    ] Initializing speech engine...
[2026-10-18 03:20:03,102.102 INFO    ] 2026-10-18 03:20:03
[2026-10-18 03:20:03,456.456 INFO    ] 2026-10-18 03:20:03
[2026-10-18 03:20:03,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:20:03,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:20:03,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:20:03,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:20:03,894.894 INFO    ] time= 18/10/2026 03:20:03
[2026-10-18 03:20:03,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:20:03,993.993 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:20:04,087.087 INFO    ] No existing commands found in stream
[2026-10-18 03:20:09,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:20:09,103.103 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-18 03:20:11,696.696 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:20:11,698.698 INFO    ] Checking for system updates...
[2026-10-18 03:20:11,738.738 INFO    ] 200
[2026-10-18 03:20:11,740.740 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:20:11,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:20:11,794.794 INFO    ] No update needed
[2026-10-18 03:20:11,797.797 INFO    ] Checking for camera pi updates...
[2026-10-18 03:20:11,831.831 INFO    ] 200
[2026-10-18 03:20:11,834.834 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:20:11,875.875 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:20:21,891.891 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:20:21,926.926 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:20:21,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:20:21,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:20:21,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:20:21,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:20:23,989.989 INFO    ] ================================================
[2026-10-18 03:20:24,004.004 INFO    ] Launching Daemon at Sun Oct 18 03:20:23 IST 2026
[2026-10-18 03:20:24,015.015 INFO    ] ================================================
[2026-10-18 03:20:24,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:20:24
[2026-10-18 03:20:25,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:20:25,625.625 INFO    ] Initializing speech engine...
[2026-10-18 03:20:25,639.639 INFO    ] 2026-10-18 03:20:25
[2026-10-18 03:20:25,918.918 INFO    ] 2026-10-18 03:20:25
[2026-10-18 03:20:25,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:20:26,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:20:26,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:20:26,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:20:26,454.454 INFO    ] time= 18/10/2026 03:20:26
[2026-10-18 03:20:26,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:20:26,503.503 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:20:26,625.625 INFO    ] No existing commands found in stream
[2026-10-18 03:20:31,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:20:31,660.660 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-18 03:20:36,057.057 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:20:36,060.060 INFO    ] Checking for system updates...
[2026-10-18 03:20:36,098.098 INFO    ] 200
[2026-10-18 03:20:36,100.100 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:20:36,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:20:36,156.156 INFO    ] No update needed
[2026-10-18 03:20:36,159.159 INFO    ] Checking for camera pi updates...
[2026-10-18 03:20:36,193.193 INFO    ] 200
[2026-10-18 03:20:36,195.195 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:20:36,237.237 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:20:46,253.253 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:20:46,295.295 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:20:46,307.307 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:20:46,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:20:46,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:20:46,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:20:48,364.364 INFO    ] ================================================
[2026-10-18 03:20:48,379.379 INFO    ] Launching Daemon at Sun Oct 18 03:20:48 IST 2026
[2026-10-18 03:20:48,390.390 INFO    ] ================================================
[2026-10-18 03:20:48,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:20:48
[2026-10-18 03:20:49,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:20:49,850.850 INFO    ] Initializing speech engine...
[2026-10-18 03:20:49,861.861 INFO    ] 2026-10-18 03:20:49
[2026-10-18 03:20:50,117.117 INFO    ] 2026-10-18 03:20:50
[2026-10-18 03:20:50,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:20:50,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:20:50,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:20:50,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:20:50,623.623 INFO    ] time= 18/10/2026 03:20:50
[2026-10-18 03:20:50,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:20:50,690.690 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:20:50,816.816 INFO    ] No existing commands found in stream
[2026-10-18 03:20:55,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:20:55,837.837 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-18 03:20:57,929.929 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 03:20:57,932.932 INFO    ] Checking for system updates...
[2026-10-18 03:20:57,968.968 INFO    ] 200
[2026-10-18 03:20:57,971.971 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:20:58,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:20:58,026.026 INFO    ] No update needed
[2026-10-18 03:20:58,028.028 INFO    ] Checking for camera pi updates...
[2026-10-18 03:20:58,063.063 INFO    ] 200
[2026-10-18 03:20:58,065.065 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:20:58,107.107 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:21:08,120.120 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:21:08,156.156 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:21:08,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:21:08,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:21:08,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:21:08,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:21:10,221.221 INFO    ] ================================================
[2026-10-18 03:21:10,237.237 INFO    ] Launching Daemon at Sun Oct 18 03:21:10 IST 2026
[2026-10-18 03:21:10,248.248 INFO    ] ================================================
[2026-10-18 03:21:10,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:21:10
[2026-10-18 03:21:11,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:21:11,687.687 INFO    ] Initializing speech engine...
[2026-10-18 03:21:11,694.694 INFO    ] 2026-10-18 03:21:11
[2026-10-18 03:21:11,959.959 INFO    ] 2026-10-18 03:21:11
[2026-10-18 03:21:11,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:21:12,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:21:12,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:21:12,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:21:12,983.983 INFO    ] time= 18/10/2026 03:21:12
[2026-10-18 03:21:13,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:21:13,083.083 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:21:13,218.218 INFO    ] No existing commands found in stream
[2026-10-18 03:21:18,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:21:18,251.251 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-18 03:21:19,290.290 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 03:21:19,293.293 INFO    ] Checking for system updates...
[2026-10-18 03:21:19,333.333 INFO    ] 200
[2026-10-18 03:21:19,336.336 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:21:19,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:21:19,391.391 INFO    ] No update needed
[2026-10-18 03:21:19,393.393 INFO    ] Checking for camera pi updates...
[2026-10-18 03:21:19,433.433 INFO    ] 200
[2026-10-18 03:21:19,435.435 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:21:19,475.475 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:21:29,491.491 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:21:29,525.525 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:21:29,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:21:29,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:21:29,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:21:29,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:21:31,589.589 INFO    ] ================================================
[2026-10-18 03:21:31,604.604 INFO    ] Launching Daemon at Sun Oct 18 03:21:31 IST 2026
[2026-10-18 03:21:31,614.614 INFO    ] ================================================
[2026-10-18 03:21:32,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:21:32
[2026-10-18 03:21:32,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:21:33,142.142 INFO    ] Initializing speech engine...
[2026-10-18 03:21:33,165.165 INFO    ] 2026-10-18 03:21:33
[2026-10-18 03:21:33,448.448 INFO    ] 2026-10-18 03:21:33
[2026-10-18 03:21:33,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:21:33,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:21:33,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:21:33,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:21:33,877.877 INFO    ] time= 18/10/2026 03:21:33
[2026-10-18 03:21:33,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:21:33,889.889 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:21:33,966.966 INFO    ] No existing commands found in stream
[2026-10-18 03:21:38,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:21:38,984.984 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-18 03:21:39,846.846 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:21:39,849.849 INFO    ] Checking for system updates...
[2026-10-18 03:21:39,885.885 INFO    ] 200
[2026-10-18 03:21:39,888.888 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:21:39,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:21:39,942.942 INFO    ] No update needed
[2026-10-18 03:21:39,944.944 INFO    ] Checking for camera pi updates...
[2026-10-18 03:21:39,978.978 INFO    ] 200
[2026-10-18 03:21:39,980.980 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:21:40,020.020 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:21:50,035.035 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:21:50,070.070 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:21:50,079.079 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:21:50,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:21:50,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:21:50,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:21:52,132.132 INFO    ] ================================================
[2026-10-18 03:21:52,147.147 INFO    ] Launching Daemon at Sun Oct 18 03:21:52 IST 2026
[2026-10-18 03:21:52,158.158 INFO    ] ================================================
[2026-10-18 03:21:52,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:21:52
[2026-10-18 03:21:53,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:21:53,807.807 INFO    ] Initializing speech engine...
[2026-10-18 03:21:53,819.819 INFO    ] 2026-10-18 03:21:53
[2026-10-18 03:21:54,130.130 INFO    ] 2026-10-18 03:21:54
[2026-10-18 03:21:54,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:21:54,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:21:54,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:21:54,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:21:54,639.639 INFO    ] time= 18/10/2026 03:21:54
[2026-10-18 03:21:54,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:21:54,687.687 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:21:54,813.813 INFO    ] No existing commands found in stream
[2026-10-18 03:21:59,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:21:59,854.854 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-18 03:22:02,464.464 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:22:02,468.468 INFO    ] Checking for system updates...
[2026-10-18 03:22:02,511.511 INFO    ] 200
[2026-10-18 03:22:02,514.514 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:22:02,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:22:02,577.577 INFO    ] No update needed
[2026-10-18 03:22:02,581.581 INFO    ] Checking for camera pi updates...
[2026-10-18 03:22:02,618.618 INFO    ] 200
[2026-10-18 03:22:02,621.621 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:22:02,667.667 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:22:12,683.683 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:22:12,718.718 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:22:12,732.732 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:22:12,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:22:12,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:22:12,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:22:14,786.786 INFO    ] ================================================
[2026-10-18 03:22:14,802.802 INFO    ] Launching Daemon at Sun Oct 18 03:22:14 IST 2026
[2026-10-18 03:22:14,813.813 INFO    ] ================================================
[2026-10-18 03:22:15,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:22:15
[2026-10-18 03:22:15,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:22:16,236.236 INFO    ] Initializing speech engine...
[2026-10-18 03:22:16,244.244 INFO    ] 2026-10-18 03:22:16
[2026-10-18 03:22:16,494.494 INFO    ] 2026-10-18 03:22:16
[2026-10-18 03:22:16,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:22:16,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:22:16,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:22:16,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:22:16,993.993 INFO    ] time= 18/10/2026 03:22:16
[2026-10-18 03:22:17,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:22:17,063.063 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:22:17,191.191 INFO    ] No existing commands found in stream
[2026-10-18 03:22:22,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:22:22,221.221 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-18 03:22:25,176.176 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:22:25,179.179 INFO    ] Checking for system updates...
[2026-10-18 03:22:25,219.219 INFO    ] 200
[2026-10-18 03:22:25,221.221 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:22:25,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:22:25,277.277 INFO    ] No update needed
[2026-10-18 03:22:25,279.279 INFO    ] Checking for camera pi updates...
[2026-10-18 03:22:25,313.313 INFO    ] 200
[2026-10-18 03:22:25,316.316 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:22:25,357.357 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:22:35,374.374 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:22:35,415.415 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:22:35,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:22:35,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:22:35,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:22:35,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:22:37,483.483 INFO    ] ================================================
[2026-10-18 03:22:37,499.499 INFO    ] Launching Daemon at Sun Oct 18 03:22:37 IST 2026
[2026-10-18 03:22:37,511.511 INFO    ] ================================================
[2026-10-18 03:22:38,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:22:38
[2026-10-18 03:22:38,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:22:38,984.984 INFO    ] Initializing speech engine...
[2026-10-18 03:22:38,993.993 INFO    ] 2026-10-18 03:22:38
[2026-10-18 03:22:39,253.253 INFO    ] 2026-10-18 03:22:39
[2026-10-18 03:22:39,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:22:39,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:22:39,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:22:39,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:22:39,738.738 INFO    ] time= 18/10/2026 03:22:39
[2026-10-18 03:22:39,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:22:39,808.808 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:22:39,954.954 INFO    ] No existing commands found in stream
[2026-10-18 03:22:44,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:22:44,977.977 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-18 03:22:46,251.251 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 03:22:46,254.254 INFO    ] Checking for system updates...
[2026-10-18 03:22:46,289.289 INFO    ] 200
[2026-10-18 03:22:46,292.292 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:22:46,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:22:46,346.346 INFO    ] No update needed
[2026-10-18 03:22:46,348.348 INFO    ] Checking for camera pi updates...
[2026-10-18 03:22:46,381.381 INFO    ] 200
[2026-10-18 03:22:46,384.384 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:22:46,426.426 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:22:56,441.441 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:22:56,477.477 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:22:56,487.487 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:22:56,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:22:56,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:22:56,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:22:58,540.540 INFO    ] ================================================
[2026-10-18 03:22:58,556.556 INFO    ] Launching Daemon at Sun Oct 18 03:22:58 IST 2026
[2026-10-18 03:22:58,567.567 INFO    ] ================================================
[2026-10-18 03:22:59,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:22:59
[2026-10-18 03:22:59,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:23:00,056.056 INFO    ] Initializing speech engine...
[2026-10-18 03:23:00,063.063 INFO    ] 2026-10-18 03:23:00
[2026-10-18 03:23:00,328.328 INFO    ] 2026-10-18 03:23:00
[2026-10-18 03:23:00,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:23:00,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:23:00,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:23:00,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:23:00,713.713 INFO    ] time= 18/10/2026 03:23:00
[2026-10-18 03:23:00,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:23:00,782.782 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:23:00,869.869 INFO    ] No existing commands found in stream
[2026-10-18 03:23:05,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:23:05,882.882 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-18 03:23:06,860.860 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 03:23:06,863.863 INFO    ] Checking for system updates...
[2026-10-18 03:23:06,903.903 INFO    ] 200
[2026-10-18 03:23:06,905.905 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:23:06,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:23:06,966.966 INFO    ] No update needed
[2026-10-18 03:23:06,969.969 INFO    ] Checking for camera pi updates...
[2026-10-18 03:23:07,004.004 INFO    ] 200
[2026-10-18 03:23:07,006.006 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:23:07,047.047 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:23:17,063.063 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:23:17,102.102 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:23:17,113.113 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:23:17,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:23:17,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:23:17,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:23:19,167.167 INFO    ] ================================================
[2026-10-18 03:23:19,182.182 INFO    ] Launching Daemon at Sun Oct 18 03:23:19 IST 2026
[2026-10-18 03:23:19,193.193 INFO    ] ================================================
[2026-10-18 03:23:19,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:23:19
[2026-10-18 03:23:20,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:23:20,674.674 INFO    ] Initializing speech engine...
[2026-10-18 03:23:20,695.695 INFO    ] 2026-10-18 03:23:20
[2026-10-18 03:23:20,986.986 INFO    ] 2026-10-18 03:23:20
[2026-10-18 03:23:21,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:23:21,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:23:21,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:23:21,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:23:21,559.559 INFO    ] time= 18/10/2026 03:23:21
[2026-10-18 03:23:21,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:23:21,582.582 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:23:21,716.716 INFO    ] No existing commands found in stream
[2026-10-18 03:23:26,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:23:26,740.740 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-18 03:23:28,392.392 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 03:23:28,395.395 INFO    ] Checking for system updates...
[2026-10-18 03:23:28,430.430 INFO    ] 200
[2026-10-18 03:23:28,433.433 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:23:28,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:23:28,486.486 INFO    ] No update needed
[2026-10-18 03:23:28,489.489 INFO    ] Checking for camera pi updates...
[2026-10-18 03:23:28,527.527 INFO    ] 200
[2026-10-18 03:23:28,529.529 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:23:28,569.569 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:23:38,583.583 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:23:38,617.617 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:23:38,627.627 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:23:38,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:23:38,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:23:38,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:23:40,679.679 INFO    ] ================================================
[2026-10-18 03:23:40,694.694 INFO    ] Launching Daemon at Sun Oct 18 03:23:40 IST 2026
[2026-10-18 03:23:40,704.704 INFO    ] ================================================
[2026-10-18 03:23:41,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:23:41
[2026-10-18 03:23:41,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:23:42,112.112 INFO    ] Initializing speech engine...
[2026-10-18 03:23:42,121.121 INFO    ] 2026-10-18 03:23:42
[2026-10-18 03:23:42,409.409 INFO    ] 2026-10-18 03:23:42
[2026-10-18 03:23:42,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:23:42,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:23:42,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:23:42,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:23:42,896.896 INFO    ] time= 18/10/2026 03:23:42
[2026-10-18 03:23:42,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:23:42,990.990 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:23:43,091.091 INFO    ] No existing commands found in stream
[2026-10-18 03:23:48,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:23:48,106.106 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-18 03:23:50,206.206 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:23:50,209.209 INFO    ] Checking for system updates...
[2026-10-18 03:23:50,244.244 INFO    ] 200
[2026-10-18 03:23:50,247.247 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:23:50,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:23:50,306.306 INFO    ] No update needed
[2026-10-18 03:23:50,309.309 INFO    ] Checking for camera pi updates...
[2026-10-18 03:23:50,346.346 INFO    ] 200
[2026-10-18 03:23:50,348.348 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:23:50,388.388 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:24:00,403.403 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:24:00,438.438 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:24:00,451.451 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:24:00,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:24:00,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:24:00,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:24:02,511.511 INFO    ] ================================================
[2026-10-18 03:24:02,530.530 INFO    ] Launching Daemon at Sun Oct 18 03:24:02 IST 2026
[2026-10-18 03:24:02,544.544 INFO    ] ================================================
[2026-10-18 03:24:03,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:24:03
[2026-10-18 03:24:03,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:24:04,106.106 INFO    ] Initializing speech engine...
[2026-10-18 03:24:04,128.128 INFO    ] 2026-10-18 03:24:04
[2026-10-18 03:24:04,399.399 INFO    ] 2026-10-18 03:24:04
[2026-10-18 03:24:04,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:24:04,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:24:04,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:24:04,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:24:04,921.921 INFO    ] time= 18/10/2026 03:24:04
[2026-10-18 03:24:04,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:24:04,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:24:05,156.156 INFO    ] No existing commands found in stream
[2026-10-18 03:24:10,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:24:10,181.181 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-18 03:24:11,148.148 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 03:24:11,151.151 INFO    ] Checking for system updates...
[2026-10-18 03:24:11,186.186 INFO    ] 200
[2026-10-18 03:24:11,188.188 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:24:11,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:24:11,242.242 INFO    ] No update needed
[2026-10-18 03:24:11,245.245 INFO    ] Checking for camera pi updates...
[2026-10-18 03:24:11,278.278 INFO    ] 200
[2026-10-18 03:24:11,280.280 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:24:11,324.324 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:24:21,337.337 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:24:21,372.372 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:24:21,381.381 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:24:21,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:24:21,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:24:21,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:24:23,433.433 INFO    ] ================================================
[2026-10-18 03:24:23,448.448 INFO    ] Launching Daemon at Sun Oct 18 03:24:23 IST 2026
[2026-10-18 03:24:23,459.459 INFO    ] ================================================
[2026-10-18 03:24:24,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:24:24
[2026-10-18 03:24:24,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:24:24,900.900 INFO    ] Initializing speech engine...
[2026-10-18 03:24:24,914.914 INFO    ] 2026-10-18 03:24:24
[2026-10-18 03:24:25,194.194 INFO    ] 2026-10-18 03:24:25
[2026-10-18 03:24:25,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:24:25,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:24:25,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:24:25,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:24:25,672.672 INFO    ] time= 18/10/2026 03:24:25
[2026-10-18 03:24:25,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:24:25,766.766 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:24:25,868.868 INFO    ] No existing commands found in stream
[2026-10-18 03:24:30,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:24:30,882.882 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-18 03:24:33,236.236 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:24:33,239.239 INFO    ] Checking for system updates...
[2026-10-18 03:24:33,278.278 INFO    ] 200
[2026-10-18 03:24:33,280.280 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:24:33,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:24:33,340.340 INFO    ] No update needed
[2026-10-18 03:24:33,343.343 INFO    ] Checking for camera pi updates...
[2026-10-18 03:24:33,377.377 INFO    ] 200
[2026-10-18 03:24:33,380.380 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:24:33,420.420 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:24:43,436.436 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:24:43,471.471 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:24:43,480.480 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:24:43,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:24:43,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:24:43,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:24:45,532.532 INFO    ] ================================================
[2026-10-18 03:24:45,547.547 INFO    ] Launching Daemon at Sun Oct 18 03:24:45 IST 2026
[2026-10-18 03:24:45,558.558 INFO    ] ================================================
[2026-10-18 03:24:46,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:24:46
[2026-10-18 03:24:46,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:24:47,120.120 INFO    ] Initializing speech engine...
[2026-10-18 03:24:47,126.126 INFO    ] 2026-10-18 03:24:47
[2026-10-18 03:24:47,414.414 INFO    ] 2026-10-18 03:24:47
[2026-10-18 03:24:47,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:24:47,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:24:47,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:24:47,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:24:47,955.955 INFO    ] time= 18/10/2026 03:24:47
[2026-10-18 03:24:47,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:24:48,005.005 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:24:48,111.111 INFO    ] No existing commands found in stream
[2026-10-18 03:24:53,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:24:53,143.143 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-18 03:24:55,724.724 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:24:55,727.727 INFO    ] Checking for system updates...
[2026-10-18 03:24:55,763.763 INFO    ] 200
[2026-10-18 03:24:55,766.766 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:24:55,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:24:55,822.822 INFO    ] No update needed
[2026-10-18 03:24:55,824.824 INFO    ] Checking for camera pi updates...
[2026-10-18 03:24:55,860.860 INFO    ] 200
[2026-10-18 03:24:55,863.863 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:24:55,903.903 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:25:05,918.918 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:25:05,958.958 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:25:05,969.969 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:25:05,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:25:05,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:25:05,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:25:08,023.023 INFO    ] ================================================
[2026-10-18 03:25:08,037.037 INFO    ] Launching Daemon at Sun Oct 18 03:25:08 IST 2026
[2026-10-18 03:25:08,048.048 INFO    ] ================================================
[2026-10-18 03:25:08,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:25:08
[2026-10-18 03:25:09,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:25:09,466.466 INFO    ] Initializing speech engine...
[2026-10-18 03:25:09,476.476 INFO    ] 2026-10-18 03:25:09
[2026-10-18 03:25:09,734.734 INFO    ] 2026-10-18 03:25:09
[2026-10-18 03:25:09,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:25:10,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:25:10,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:25:10,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:25:10,275.275 INFO    ] time= 18/10/2026 03:25:10
[2026-10-18 03:25:10,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:25:10,296.296 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:25:10,411.411 INFO    ] No existing commands found in stream
[2026-10-18 03:25:15,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:25:15,438.438 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-18 03:25:18,080.080 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:25:18,082.082 INFO    ] Checking for system updates...
[2026-10-18 03:25:18,118.118 INFO    ] 200
[2026-10-18 03:25:18,120.120 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:25:18,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:25:18,175.175 INFO    ] No update needed
[2026-10-18 03:25:18,178.178 INFO    ] Checking for camera pi updates...
[2026-10-18 03:25:18,214.214 INFO    ] 200
[2026-10-18 03:25:18,217.217 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:25:18,256.256 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:25:28,271.271 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:25:28,306.306 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:25:28,316.316 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:25:28,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:25:28,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:25:28,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:25:30,369.369 INFO    ] ================================================
[2026-10-18 03:25:30,384.384 INFO    ] Launching Daemon at Sun Oct 18 03:25:30 IST 2026
[2026-10-18 03:25:30,394.394 INFO    ] ================================================
[2026-10-18 03:25:30,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:25:30
[2026-10-18 03:25:31,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:25:31,807.807 INFO    ] Initializing speech engine...
[2026-10-18 03:25:31,823.823 INFO    ] 2026-10-18 03:25:31
[2026-10-18 03:25:32,126.126 INFO    ] 2026-10-18 03:25:32
[2026-10-18 03:25:32,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:25:32,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:25:32,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:25:32,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:25:32,576.576 INFO    ] time= 18/10/2026 03:25:32
[2026-10-18 03:25:32,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:25:32,654.654 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:25:32,777.777 INFO    ] No existing commands found in stream
[2026-10-18 03:25:37,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:25:37,811.811 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-18 03:25:40,046.046 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:25:40,049.049 INFO    ] Checking for system updates...
[2026-10-18 03:25:40,086.086 INFO    ] 200
[2026-10-18 03:25:40,088.088 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:25:40,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:25:40,145.145 INFO    ] No update needed
[2026-10-18 03:25:40,148.148 INFO    ] Checking for camera pi updates...
[2026-10-18 03:25:40,185.185 INFO    ] 200
[2026-10-18 03:25:40,188.188 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:25:40,229.229 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:25:50,245.245 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:25:50,284.284 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:25:50,295.295 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:25:50,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:25:50,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:25:50,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:25:52,349.349 INFO    ] ================================================
[2026-10-18 03:25:52,364.364 INFO    ] Launching Daemon at Sun Oct 18 03:25:52 IST 2026
[2026-10-18 03:25:52,375.375 INFO    ] ================================================
[2026-10-18 03:25:53,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:25:53
[2026-10-18 03:25:53,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:25:53,977.977 INFO    ] Initializing speech engine...
[2026-10-18 03:25:53,985.985 INFO    ] 2026-10-18 03:25:53
[2026-10-18 03:25:54,268.268 INFO    ] 2026-10-18 03:25:54
[2026-10-18 03:25:54,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:25:54,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:25:54,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:25:54,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:25:54,818.818 INFO    ] time= 18/10/2026 03:25:54
[2026-10-18 03:25:54,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:25:54,858.858 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:25:54,960.960 INFO    ] No existing commands found in stream
[2026-10-18 03:25:59,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:25:59,981.981 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-18 03:26:01,677.677 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 03:26:01,680.680 INFO    ] Checking for system updates...
[2026-10-18 03:26:01,717.717 INFO    ] 200
[2026-10-18 03:26:01,719.719 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:26:01,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:26:01,802.802 INFO    ] No update needed
[2026-10-18 03:26:01,806.806 INFO    ] Checking for camera pi updates...
[2026-10-18 03:26:01,916.916 INFO    ] 200
[2026-10-18 03:26:01,920.920 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:26:01,991.991 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:26:12,008.008 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:26:12,047.047 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:26:12,059.059 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:26:12,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:26:12,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:26:12,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:26:14,115.115 INFO    ] ================================================
[2026-10-18 03:26:14,132.132 INFO    ] Launching Daemon at Sun Oct 18 03:26:14 IST 2026
[2026-10-18 03:26:14,143.143 INFO    ] ================================================
[2026-10-18 03:26:14,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:26:14
[2026-10-18 03:26:15,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:26:15,749.749 INFO    ] Initializing speech engine...
[2026-10-18 03:26:15,754.754 INFO    ] 2026-10-18 03:26:15
[2026-10-18 03:26:16,016.016 INFO    ] 2026-10-18 03:26:16
[2026-10-18 03:26:16,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:26:16,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:26:16,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:26:16,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:26:16,559.559 INFO    ] time= 18/10/2026 03:26:16
[2026-10-18 03:26:16,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:26:16,583.583 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:26:16,713.713 INFO    ] No existing commands found in stream
[2026-10-18 03:26:21,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:26:21,731.731 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-18 03:26:23,689.689 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 03:26:23,692.692 INFO    ] Checking for system updates...
[2026-10-18 03:26:23,731.731 INFO    ] 200
[2026-10-18 03:26:23,734.734 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:26:23,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:26:23,792.792 INFO    ] No update needed
[2026-10-18 03:26:23,794.794 INFO    ] Checking for camera pi updates...
[2026-10-18 03:26:23,828.828 INFO    ] 200
[2026-10-18 03:26:23,830.830 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:26:23,877.877 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:26:33,890.890 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:26:33,930.930 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:26:33,942.942 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:26:33,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:26:33,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:26:33,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:26:36,999.999 INFO    ] ================================================
[2026-10-18 03:26:36,014.014 INFO    ] Launching Daemon at Sun Oct 18 03:26:36 IST 2026
[2026-10-18 03:26:36,025.025 INFO    ] ================================================
[2026-10-18 03:26:36,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:26:36
[2026-10-18 03:26:37,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:26:37,459.459 INFO    ] Initializing speech engine...
[2026-10-18 03:26:37,468.468 INFO    ] 2026-10-18 03:26:37
[2026-10-18 03:26:37,720.720 INFO    ] 2026-10-18 03:26:37
[2026-10-18 03:26:37,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:26:38,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:26:38,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:26:38,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:26:38,204.204 INFO    ] time= 18/10/2026 03:26:38
[2026-10-18 03:26:38,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:26:38,281.281 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:26:38,402.402 INFO    ] No existing commands found in stream
[2026-10-18 03:26:43,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:26:43,435.435 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-18 03:26:47,149.149 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:26:47,151.151 INFO    ] Checking for system updates...
[2026-10-18 03:26:47,190.190 INFO    ] 200
[2026-10-18 03:26:47,193.193 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:26:47,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:26:47,247.247 INFO    ] No update needed
[2026-10-18 03:26:47,249.249 INFO    ] Checking for camera pi updates...
[2026-10-18 03:26:47,283.283 INFO    ] 200
[2026-10-18 03:26:47,285.285 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:26:47,335.335 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:26:57,349.349 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:26:57,384.384 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:26:57,394.394 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:26:57,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:26:57,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:26:57,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:26:59,447.447 INFO    ] ================================================
[2026-10-18 03:26:59,464.464 INFO    ] Launching Daemon at Sun Oct 18 03:26:59 IST 2026
[2026-10-18 03:26:59,475.475 INFO    ] ================================================
[2026-10-18 03:27:00,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:27:00
[2026-10-18 03:27:00,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:27:00,944.944 INFO    ] Initializing speech engine...
[2026-10-18 03:27:00,952.952 INFO    ] 2026-10-18 03:27:00
[2026-10-18 03:27:01,203.203 INFO    ] 2026-10-18 03:27:01
[2026-10-18 03:27:01,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:27:01,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:27:01,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:27:01,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:27:01,699.699 INFO    ] time= 18/10/2026 03:27:01
[2026-10-18 03:27:01,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:27:01,784.784 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:27:01,899.899 INFO    ] No existing commands found in stream
[2026-10-18 03:27:06,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:27:06,918.918 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-18 03:27:10,667.667 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:27:10,670.670 INFO    ] Checking for system updates...
[2026-10-18 03:27:10,706.706 INFO    ] 200
[2026-10-18 03:27:10,709.709 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:27:10,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:27:10,764.764 INFO    ] No update needed
[2026-10-18 03:27:10,767.767 INFO    ] Checking for camera pi updates...
[2026-10-18 03:27:10,804.804 INFO    ] 200
[2026-10-18 03:27:10,807.807 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:27:10,847.847 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:27:20,862.862 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:27:20,901.901 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:27:20,912.912 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:27:20,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:27:20,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:27:20,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:27:22,969.969 INFO    ] ================================================
[2026-10-18 03:27:22,985.985 INFO    ] Launching Daemon at Sun Oct 18 03:27:22 IST 2026
[2026-10-18 03:27:23,996.996 INFO    ] ================================================
[2026-10-18 03:27:23,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:27:23
[2026-10-18 03:27:24,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:27:24,447.447 INFO    ] Initializing speech engine...
[2026-10-18 03:27:24,452.452 INFO    ] 2026-10-18 03:27:24
[2026-10-18 03:27:24,745.745 INFO    ] 2026-10-18 03:27:24
[2026-10-18 03:27:24,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:27:25,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:27:25,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:27:25,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:27:25,197.197 INFO    ] time= 18/10/2026 03:27:25
[2026-10-18 03:27:25,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:27:25,293.293 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:27:25,440.440 INFO    ] No existing commands found in stream
[2026-10-18 03:27:30,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:27:30,459.459 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-18 03:27:34,336.336 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:27:34,338.338 INFO    ] Checking for system updates...
[2026-10-18 03:27:34,379.379 INFO    ] 200
[2026-10-18 03:27:34,382.382 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:27:34,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:27:34,445.445 INFO    ] No update needed
[2026-10-18 03:27:34,448.448 INFO    ] Checking for camera pi updates...
[2026-10-18 03:27:34,483.483 INFO    ] 200
[2026-10-18 03:27:34,486.486 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:27:34,532.532 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:27:44,549.549 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:27:44,589.589 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:27:44,600.600 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:27:44,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:27:44,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:27:44,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:27:46,656.656 INFO    ] ================================================
[2026-10-18 03:27:46,672.672 INFO    ] Launching Daemon at Sun Oct 18 03:27:46 IST 2026
[2026-10-18 03:27:46,684.684 INFO    ] ================================================
[2026-10-18 03:27:47,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:27:47
[2026-10-18 03:27:48,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:27:48,331.331 INFO    ] Initializing speech engine...
[2026-10-18 03:27:48,339.339 INFO    ] 2026-10-18 03:27:48
[2026-10-18 03:27:48,672.672 INFO    ] 2026-10-18 03:27:48
[2026-10-18 03:27:48,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:27:48,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:27:48,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:27:49,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:27:49,210.210 INFO    ] time= 18/10/2026 03:27:49
[2026-10-18 03:27:49,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:27:49,234.234 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:27:49,357.357 INFO    ] No existing commands found in stream
[2026-10-18 03:27:54,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:27:54,380.380 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-18 03:27:57,786.786 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 03:27:57,788.788 INFO    ] Checking for system updates...
[2026-10-18 03:27:57,828.828 INFO    ] 200
[2026-10-18 03:27:57,830.830 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:27:57,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:27:57,884.884 INFO    ] No update needed
[2026-10-18 03:27:57,887.887 INFO    ] Checking for camera pi updates...
[2026-10-18 03:27:57,921.921 INFO    ] 200
[2026-10-18 03:27:57,923.923 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:27:57,963.963 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:28:07,979.979 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:28:08,014.014 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:28:08,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:28:08,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:28:08,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:28:08,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:28:10,076.076 INFO    ] ================================================
[2026-10-18 03:28:10,092.092 INFO    ] Launching Daemon at Sun Oct 18 03:28:10 IST 2026
[2026-10-18 03:28:10,104.104 INFO    ] ================================================
[2026-10-18 03:28:10,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:28:10
[2026-10-18 03:28:11,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:28:11,738.738 INFO    ] Initializing speech engine...
[2026-10-18 03:28:11,750.750 INFO    ] 2026-10-18 03:28:11
[2026-10-18 03:28:12,029.029 INFO    ] 2026-10-18 03:28:12
[2026-10-18 03:28:12,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:28:12,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:28:12,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:28:12,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:28:12,567.567 INFO    ] time= 18/10/2026 03:28:12
[2026-10-18 03:28:12,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:28:12,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:28:12,734.734 INFO    ] No existing commands found in stream
[2026-10-18 03:28:17,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:28:17,771.771 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-18 03:28:21,688.688 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:28:21,691.691 INFO    ] Checking for system updates...
[2026-10-18 03:28:21,759.759 INFO    ] 200
[2026-10-18 03:28:21,762.762 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:28:21,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:28:21,833.833 INFO    ] No update needed
[2026-10-18 03:28:21,837.837 INFO    ] Checking for camera pi updates...
[2026-10-18 03:28:21,873.873 INFO    ] 200
[2026-10-18 03:28:21,876.876 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:28:21,928.928 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:28:31,944.944 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:28:31,988.988 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:28:32,000.000 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:28:32,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:28:32,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:28:32,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:28:34,058.058 INFO    ] ================================================
[2026-10-18 03:28:34,076.076 INFO    ] Launching Daemon at Sun Oct 18 03:28:34 IST 2026
[2026-10-18 03:28:34,087.087 INFO    ] ================================================
[2026-10-18 03:28:34,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:28:34
[2026-10-18 03:28:35,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:28:35,635.635 INFO    ] Initializing speech engine...
[2026-10-18 03:28:35,647.647 INFO    ] 2026-10-18 03:28:35
[2026-10-18 03:28:35,933.933 INFO    ] 2026-10-18 03:28:35
[2026-10-18 03:28:35,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:28:36,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:28:36,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:28:36,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:28:36,481.481 INFO    ] time= 18/10/2026 03:28:36
[2026-10-18 03:28:36,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:28:36,520.520 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:28:36,666.666 INFO    ] No existing commands found in stream
[2026-10-18 03:28:41,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:28:41,700.700 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-18 03:28:44,012.012 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:28:44,015.015 INFO    ] Checking for system updates...
[2026-10-18 03:28:44,052.052 INFO    ] 200
[2026-10-18 03:28:44,055.055 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:28:44,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:28:44,111.111 INFO    ] No update needed
[2026-10-18 03:28:44,114.114 INFO    ] Checking for camera pi updates...
[2026-10-18 03:28:44,149.149 INFO    ] 200
[2026-10-18 03:28:44,151.151 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:28:44,193.193 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:28:54,209.209 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:28:54,248.248 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:28:54,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:28:54,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:28:54,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:28:54,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:28:56,313.313 INFO    ] ================================================
[2026-10-18 03:28:56,328.328 INFO    ] Launching Daemon at Sun Oct 18 03:28:56 IST 2026
[2026-10-18 03:28:56,339.339 INFO    ] ================================================
[2026-10-18 03:28:56,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:28:56
[2026-10-18 03:28:57,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:28:57,887.887 INFO    ] Initializing speech engine...
[2026-10-18 03:28:57,895.895 INFO    ] 2026-10-18 03:28:57
[2026-10-18 03:28:58,160.160 INFO    ] 2026-10-18 03:28:58
[2026-10-18 03:28:58,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:28:58,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:28:58,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:28:58,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:28:58,706.706 INFO    ] time= 18/10/2026 03:28:58
[2026-10-18 03:28:58,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:28:58,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:28:58,860.860 INFO    ] No existing commands found in stream
[2026-10-18 03:29:03,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:29:03,901.901 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-18 03:29:05,262.262 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:29:05,265.265 INFO    ] Checking for system updates...
[2026-10-18 03:29:05,302.302 INFO    ] 200
[2026-10-18 03:29:05,305.305 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:29:05,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:29:05,365.365 INFO    ] No update needed
[2026-10-18 03:29:05,368.368 INFO    ] Checking for camera pi updates...
[2026-10-18 03:29:05,403.403 INFO    ] 200
[2026-10-18 03:29:05,405.405 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:29:05,446.446 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:29:15,459.459 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:29:15,498.498 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:29:15,509.509 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:29:15,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:29:15,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:29:15,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:29:17,564.564 INFO    ] ================================================
[2026-10-18 03:29:17,580.580 INFO    ] Launching Daemon at Sun Oct 18 03:29:17 IST 2026
[2026-10-18 03:29:17,592.592 INFO    ] ================================================
[2026-10-18 03:29:18,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:29:18
[2026-10-18 03:29:18,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:29:19,049.049 INFO    ] Initializing speech engine...
[2026-10-18 03:29:19,058.058 INFO    ] 2026-10-18 03:29:19
[2026-10-18 03:29:19,324.324 INFO    ] 2026-10-18 03:29:19
[2026-10-18 03:29:19,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:29:19,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:29:19,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:29:19,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:29:19,868.868 INFO    ] time= 18/10/2026 03:29:19
[2026-10-18 03:29:19,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:29:19,952.952 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:29:20,092.092 INFO    ] No existing commands found in stream
[2026-10-18 03:29:25,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:29:25,121.121 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-18 03:29:29,533.533 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:29:29,535.535 INFO    ] Checking for system updates...
[2026-10-18 03:29:29,571.571 INFO    ] 200
[2026-10-18 03:29:29,573.573 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:29:29,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:29:29,627.627 INFO    ] No update needed
[2026-10-18 03:29:29,630.630 INFO    ] Checking for camera pi updates...
[2026-10-18 03:29:29,662.662 INFO    ] 200
[2026-10-18 03:29:29,665.665 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:29:29,705.705 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:29:39,718.718 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:29:39,753.753 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:29:39,763.763 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:29:39,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:29:39,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:29:39,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:29:41,816.816 INFO    ] ================================================
[2026-10-18 03:29:41,832.832 INFO    ] Launching Daemon at Sun Oct 18 03:29:41 IST 2026
[2026-10-18 03:29:41,844.844 INFO    ] ================================================
[2026-10-18 03:29:42,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:29:42
[2026-10-18 03:29:42,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:29:43,250.250 INFO    ] Initializing speech engine...
[2026-10-18 03:29:43,264.264 INFO    ] 2026-10-18 03:29:43
[2026-10-18 03:29:43,547.547 INFO    ] 2026-10-18 03:29:43
[2026-10-18 03:29:43,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:29:43,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:29:43,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:29:43,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:29:43,969.969 INFO    ] time= 18/10/2026 03:29:43
[2026-10-18 03:29:43,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:29:43,983.983 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:29:44,139.139 INFO    ] No existing commands found in stream
[2026-10-18 03:29:49,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:29:49,167.167 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-18 03:29:52,174.174 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:29:52,176.176 INFO    ] Checking for system updates...
[2026-10-18 03:29:52,212.212 INFO    ] 200
[2026-10-18 03:29:52,215.215 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:29:52,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:29:52,274.274 INFO    ] No update needed
[2026-10-18 03:29:52,276.276 INFO    ] Checking for camera pi updates...
[2026-10-18 03:29:52,310.310 INFO    ] 200
[2026-10-18 03:29:52,312.312 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:29:52,353.353 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:30:02,371.371 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:30:02,627.627 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:30:02,642.642 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:30:02,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:30:02,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:30:02,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:30:04,708.708 INFO    ] ================================================
[2026-10-18 03:30:04,723.723 INFO    ] Launching Daemon at Sun Oct 18 03:30:04 IST 2026
[2026-10-18 03:30:04,734.734 INFO    ] ================================================
[2026-10-18 03:30:05,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:30:05
[2026-10-18 03:30:05,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:30:06,161.161 INFO    ] Initializing speech engine...
[2026-10-18 03:30:06,182.182 INFO    ] 2026-10-18 03:30:06
[2026-10-18 03:30:06,448.448 INFO    ] 2026-10-18 03:30:06
[2026-10-18 03:30:06,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:30:06,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:30:06,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:30:06,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:30:06,945.945 INFO    ] time= 18/10/2026 03:30:06
[2026-10-18 03:30:06,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:30:07,049.049 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:30:07,180.180 INFO    ] No existing commands found in stream
[2026-10-18 03:30:12,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:30:12,220.220 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-18 03:30:15,854.854 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:30:15,856.856 INFO    ] Checking for system updates...
[2026-10-18 03:30:15,894.894 INFO    ] 200
[2026-10-18 03:30:15,896.896 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:30:15,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:30:15,957.957 INFO    ] No update needed
[2026-10-18 03:30:15,959.959 INFO    ] Checking for camera pi updates...
[2026-10-18 03:30:15,993.993 INFO    ] 200
[2026-10-18 03:30:15,995.995 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:30:16,035.035 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:30:26,048.048 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:30:26,083.083 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:30:26,093.093 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:30:26,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:30:26,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:30:26,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:30:28,145.145 INFO    ] ================================================
[2026-10-18 03:30:28,160.160 INFO    ] Launching Daemon at Sun Oct 18 03:30:28 IST 2026
[2026-10-18 03:30:28,171.171 INFO    ] ================================================
[2026-10-18 03:30:28,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:30:28
[2026-10-18 03:30:29,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:30:29,602.602 INFO    ] Initializing speech engine...
[2026-10-18 03:30:29,611.611 INFO    ] 2026-10-18 03:30:29
[2026-10-18 03:30:29,858.858 INFO    ] 2026-10-18 03:30:29
[2026-10-18 03:30:29,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:30:30,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:30:30,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:30:30,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:30:30,354.354 INFO    ] time= 18/10/2026 03:30:30
[2026-10-18 03:30:30,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:30:30,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:30:30,551.551 INFO    ] No existing commands found in stream
[2026-10-18 03:30:35,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:30:35,577.577 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-18 03:30:37,758.758 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:30:37,760.760 INFO    ] Checking for system updates...
[2026-10-18 03:30:37,796.796 INFO    ] 200
[2026-10-18 03:30:37,798.798 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:30:37,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:30:37,862.862 INFO    ] No update needed
[2026-10-18 03:30:37,865.865 INFO    ] Checking for camera pi updates...
[2026-10-18 03:30:37,904.904 INFO    ] 200
[2026-10-18 03:30:37,907.907 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:30:37,947.947 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:30:47,962.962 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:30:47,997.997 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:30:48,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:30:48,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:30:48,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:30:48,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:30:50,059.059 INFO    ] ================================================
[2026-10-18 03:30:50,074.074 INFO    ] Launching Daemon at Sun Oct 18 03:30:50 IST 2026
[2026-10-18 03:30:50,085.085 INFO    ] ================================================
[2026-10-18 03:30:50,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:30:50
[2026-10-18 03:30:51,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:30:51,514.514 INFO    ] Initializing speech engine...
[2026-10-18 03:30:51,523.523 INFO    ] 2026-10-18 03:30:51
[2026-10-18 03:30:51,769.769 INFO    ] 2026-10-18 03:30:51
[2026-10-18 03:30:51,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:30:52,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:30:52,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:30:52,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:30:52,307.307 INFO    ] time= 18/10/2026 03:30:52
[2026-10-18 03:30:52,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:30:52,335.335 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:30:52,471.471 INFO    ] No existing commands found in stream
[2026-10-18 03:30:57,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:30:57,494.494 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-18 03:31:00,402.402 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:31:00,405.405 INFO    ] Checking for system updates...
[2026-10-18 03:31:00,447.447 INFO    ] 200
[2026-10-18 03:31:00,449.449 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:31:00,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:31:00,505.505 INFO    ] No update needed
[2026-10-18 03:31:00,508.508 INFO    ] Checking for camera pi updates...
[2026-10-18 03:31:00,542.542 INFO    ] 200
[2026-10-18 03:31:00,544.544 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:31:00,589.589 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:31:10,605.605 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:31:10,640.640 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:31:10,650.650 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:31:10,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:31:10,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:31:10,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:31:12,704.704 INFO    ] ================================================
[2026-10-18 03:31:12,720.720 INFO    ] Launching Daemon at Sun Oct 18 03:31:12 IST 2026
[2026-10-18 03:31:12,731.731 INFO    ] ================================================
[2026-10-18 03:31:13,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:31:13
[2026-10-18 03:31:13,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:31:14,175.175 INFO    ] Initializing speech engine...
[2026-10-18 03:31:14,184.184 INFO    ] 2026-10-18 03:31:14
[2026-10-18 03:31:14,441.441 INFO    ] 2026-10-18 03:31:14
[2026-10-18 03:31:14,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:31:14,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:31:14,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:31:14,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:31:14,909.909 INFO    ] time= 18/10/2026 03:31:14
[2026-10-18 03:31:14,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:31:15,023.023 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:31:15,165.165 INFO    ] No existing commands found in stream
[2026-10-18 03:31:20,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:31:20,190.190 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-18 03:31:23,740.740 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 03:31:23,742.742 INFO    ] Checking for system updates...
[2026-10-18 03:31:23,779.779 INFO    ] 200
[2026-10-18 03:31:23,781.781 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:31:23,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:31:23,837.837 INFO    ] No update needed
[2026-10-18 03:31:23,839.839 INFO    ] Checking for camera pi updates...
[2026-10-18 03:31:23,873.873 INFO    ] 200
[2026-10-18 03:31:23,876.876 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:31:23,922.922 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:31:33,936.936 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:31:33,970.970 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:31:33,980.980 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:31:33,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:31:33,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:31:33,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:31:36,032.032 INFO    ] ================================================
[2026-10-18 03:31:36,047.047 INFO    ] Launching Daemon at Sun Oct 18 03:31:36 IST 2026
[2026-10-18 03:31:36,058.058 INFO    ] ================================================
[2026-10-18 03:31:36,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:31:36
[2026-10-18 03:31:37,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:31:37,507.507 INFO    ] Initializing speech engine...
[2026-10-18 03:31:37,514.514 INFO    ] 2026-10-18 03:31:37
[2026-10-18 03:31:37,832.832 INFO    ] 2026-10-18 03:31:37
[2026-10-18 03:31:37,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:31:38,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:31:38,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:31:38,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:31:38,407.407 INFO    ] time= 18/10/2026 03:31:38
[2026-10-18 03:31:38,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:31:38,491.491 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:31:38,614.614 INFO    ] No existing commands found in stream
[2026-10-18 03:31:43,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:31:43,639.639 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-18 03:31:47,771.771 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 03:31:47,774.774 INFO    ] Checking for system updates...
[2026-10-18 03:31:47,810.810 INFO    ] 200
[2026-10-18 03:31:47,813.813 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:31:47,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:31:47,868.868 INFO    ] No update needed
[2026-10-18 03:31:47,870.870 INFO    ] Checking for camera pi updates...
[2026-10-18 03:31:47,908.908 INFO    ] 200
[2026-10-18 03:31:47,910.910 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:31:47,951.951 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:31:57,967.967 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:31:58,001.001 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:31:58,011.011 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:31:58,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:31:58,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:31:58,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:32:00,063.063 INFO    ] ================================================
[2026-10-18 03:32:00,078.078 INFO    ] Launching Daemon at Sun Oct 18 03:32:00 IST 2026
[2026-10-18 03:32:00,090.090 INFO    ] ================================================
[2026-10-18 03:32:00,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:32:00
[2026-10-18 03:32:01,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:32:01,522.522 INFO    ] Initializing speech engine...
[2026-10-18 03:32:01,531.531 INFO    ] 2026-10-18 03:32:01
[2026-10-18 03:32:02,024.024 INFO    ] 2026-10-18 03:32:02
[2026-10-18 03:32:02,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:32:02,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:32:02,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:32:02,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:32:02,459.459 INFO    ] time= 18/10/2026 03:32:02
[2026-10-18 03:32:02,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:32:02,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:32:02,528.528 INFO    ] No existing commands found in stream
[2026-10-18 03:32:07,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:32:07,541.541 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-18 03:32:11,770.770 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:32:11,773.773 INFO    ] Checking for system updates...
[2026-10-18 03:32:11,816.816 INFO    ] 200
[2026-10-18 03:32:11,819.819 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:32:11,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:32:11,878.878 INFO    ] No update needed
[2026-10-18 03:32:11,880.880 INFO    ] Checking for camera pi updates...
[2026-10-18 03:32:11,914.914 INFO    ] 200
[2026-10-18 03:32:11,917.917 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:32:11,961.961 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:32:21,977.977 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:32:22,013.013 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:32:22,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:32:22,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:32:22,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:32:22,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:32:24,077.077 INFO    ] ================================================
[2026-10-18 03:32:24,095.095 INFO    ] Launching Daemon at Sun Oct 18 03:32:24 IST 2026
[2026-10-18 03:32:24,106.106 INFO    ] ================================================
[2026-10-18 03:32:24,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:32:24
[2026-10-18 03:32:25,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:32:25,541.541 INFO    ] Initializing speech engine...
[2026-10-18 03:32:25,553.553 INFO    ] 2026-10-18 03:32:25
[2026-10-18 03:32:25,840.840 INFO    ] 2026-10-18 03:32:25
[2026-10-18 03:32:25,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:32:26,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:32:26,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:32:26,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:32:26,401.401 INFO    ] time= 18/10/2026 03:32:26
[2026-10-18 03:32:26,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:32:26,506.506 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:32:26,579.579 INFO    ] No existing commands found in stream
[2026-10-18 03:32:31,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:32:31,614.614 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-18 03:32:34,664.664 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 03:32:34,667.667 INFO    ] Checking for system updates...
[2026-10-18 03:32:34,703.703 INFO    ] 200
[2026-10-18 03:32:34,705.705 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:32:34,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:32:34,767.767 INFO    ] No update needed
[2026-10-18 03:32:34,769.769 INFO    ] Checking for camera pi updates...
[2026-10-18 03:32:34,802.802 INFO    ] 200
[2026-10-18 03:32:34,805.805 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:32:34,845.845 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:32:44,860.860 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:32:44,899.899 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:32:44,909.909 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:32:44,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:32:44,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:32:44,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:32:46,961.961 INFO    ] ================================================
[2026-10-18 03:32:46,976.976 INFO    ] Launching Daemon at Sun Oct 18 03:32:46 IST 2026
[2026-10-18 03:32:46,987.987 INFO    ] ================================================
[2026-10-18 03:32:47,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:32:47
[2026-10-18 03:32:48,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:32:48,402.402 INFO    ] Initializing speech engine...
[2026-10-18 03:32:48,412.412 INFO    ] 2026-10-18 03:32:48
[2026-10-18 03:32:48,656.656 INFO    ] 2026-10-18 03:32:48
[2026-10-18 03:32:48,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:32:48,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:32:48,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:32:49,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:32:49,208.208 INFO    ] time= 18/10/2026 03:32:49
[2026-10-18 03:32:49,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:32:49,232.232 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:32:49,347.347 INFO    ] No existing commands found in stream
[2026-10-18 03:32:54,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:32:54,376.376 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-18 03:32:54,923.923 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 03:32:54,930.930 INFO    ] Checking for system updates...
[2026-10-18 03:32:54,977.977 INFO    ] 200
[2026-10-18 03:32:54,979.979 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:32:55,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:32:55,041.041 INFO    ] No update needed
[2026-10-18 03:32:55,043.043 INFO    ] Checking for camera pi updates...
[2026-10-18 03:32:55,077.077 INFO    ] 200
[2026-10-18 03:32:55,079.079 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:32:55,125.125 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:33:05,138.138 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:33:05,175.175 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:33:05,186.186 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:33:05,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:33:05,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:33:05,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:33:07,243.243 INFO    ] ================================================
[2026-10-18 03:33:07,261.261 INFO    ] Launching Daemon at Sun Oct 18 03:33:07 IST 2026
[2026-10-18 03:33:07,272.272 INFO    ] ================================================
[2026-10-18 03:33:07,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:33:07
[2026-10-18 03:33:08,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:33:08,750.750 INFO    ] Initializing speech engine...
[2026-10-18 03:33:08,756.756 INFO    ] 2026-10-18 03:33:08
[2026-10-18 03:33:09,062.062 INFO    ] 2026-10-18 03:33:09
[2026-10-18 03:33:09,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:33:09,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:33:09,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:33:09,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:33:09,593.593 INFO    ] time= 18/10/2026 03:33:09
[2026-10-18 03:33:09,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:33:09,694.694 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:33:09,834.834 INFO    ] No existing commands found in stream
[2026-10-18 03:33:14,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:33:14,868.868 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-18 03:33:17,600.600 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:33:17,603.603 INFO    ] Checking for system updates...
[2026-10-18 03:33:17,639.639 INFO    ] 200
[2026-10-18 03:33:17,642.642 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:33:17,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:33:17,702.702 INFO    ] No update needed
[2026-10-18 03:33:17,704.704 INFO    ] Checking for camera pi updates...
[2026-10-18 03:33:17,737.737 INFO    ] 200
[2026-10-18 03:33:17,740.740 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:33:17,779.779 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:33:27,794.794 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:33:27,829.829 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:33:27,839.839 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:33:27,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:33:27,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:33:27,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:33:29,890.890 INFO    ] ================================================
[2026-10-18 03:33:29,906.906 INFO    ] Launching Daemon at Sun Oct 18 03:33:29 IST 2026
[2026-10-18 03:33:29,917.917 INFO    ] ================================================
[2026-10-18 03:33:30,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:33:30
[2026-10-18 03:33:31,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:33:31,531.531 INFO    ] Initializing speech engine...
[2026-10-18 03:33:31,540.540 INFO    ] 2026-10-18 03:33:31
[2026-10-18 03:33:31,814.814 INFO    ] 2026-10-18 03:33:31
[2026-10-18 03:33:31,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:33:32,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:33:32,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:33:32,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:33:32,391.391 INFO    ] time= 18/10/2026 03:33:32
[2026-10-18 03:33:32,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:33:32,419.419 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:33:32,547.547 INFO    ] No existing commands found in stream
[2026-10-18 03:33:37,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:33:37,576.576 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-18 03:33:40,851.851 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:33:40,854.854 INFO    ] Checking for system updates...
[2026-10-18 03:33:40,891.891 INFO    ] 200
[2026-10-18 03:33:40,894.894 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:33:40,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:33:40,956.956 INFO    ] No update needed
[2026-10-18 03:33:40,959.959 INFO    ] Checking for camera pi updates...
[2026-10-18 03:33:40,994.994 INFO    ] 200
[2026-10-18 03:33:40,997.997 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:33:41,038.038 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:33:51,054.054 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:33:51,094.094 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:33:51,106.106 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:33:51,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:33:51,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:33:51,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:33:53,160.160 INFO    ] ================================================
[2026-10-18 03:33:53,177.177 INFO    ] Launching Daemon at Sun Oct 18 03:33:53 IST 2026
[2026-10-18 03:33:53,187.187 INFO    ] ================================================
[2026-10-18 03:33:53,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:33:53
[2026-10-18 03:33:54,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:33:54,753.753 INFO    ] Initializing speech engine...
[2026-10-18 03:33:54,763.763 INFO    ] 2026-10-18 03:33:54
[2026-10-18 03:33:55,049.049 INFO    ] 2026-10-18 03:33:55
[2026-10-18 03:33:55,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:33:55,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:33:55,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:33:55,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:33:55,599.599 INFO    ] time= 18/10/2026 03:33:55
[2026-10-18 03:33:55,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:33:55,633.633 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:33:55,756.756 INFO    ] No existing commands found in stream
[2026-10-18 03:34:00,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:34:00,792.792 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-18 03:34:03,057.057 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:34:03,060.060 INFO    ] Checking for system updates...
[2026-10-18 03:34:03,102.102 INFO    ] 200
[2026-10-18 03:34:03,105.105 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:34:03,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:34:03,172.172 INFO    ] No update needed
[2026-10-18 03:34:03,175.175 INFO    ] Checking for camera pi updates...
[2026-10-18 03:34:03,222.222 INFO    ] 200
[2026-10-18 03:34:03,226.226 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:34:03,298.298 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:34:13,314.314 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:34:13,350.350 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:34:13,359.359 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:34:13,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:34:13,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:34:13,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:34:15,412.412 INFO    ] ================================================
[2026-10-18 03:34:15,428.428 INFO    ] Launching Daemon at Sun Oct 18 03:34:15 IST 2026
[2026-10-18 03:34:15,439.439 INFO    ] ================================================
[2026-10-18 03:34:16,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:34:16
[2026-10-18 03:34:16,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:34:16,953.953 INFO    ] Initializing speech engine...
[2026-10-18 03:34:16,964.964 INFO    ] 2026-10-18 03:34:16
[2026-10-18 03:34:17,223.223 INFO    ] 2026-10-18 03:34:17
[2026-10-18 03:34:17,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:34:17,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:34:17,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:34:17,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:34:17,766.766 INFO    ] time= 18/10/2026 03:34:17
[2026-10-18 03:34:17,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:34:17,790.790 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:34:17,919.919 INFO    ] No existing commands found in stream
[2026-10-18 03:34:22,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:34:22,946.946 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-18 03:34:26,798.798 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 03:34:26,801.801 INFO    ] Checking for system updates...
[2026-10-18 03:34:26,839.839 INFO    ] 200
[2026-10-18 03:34:26,841.841 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:34:26,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:34:26,897.897 INFO    ] No update needed
[2026-10-18 03:34:26,900.900 INFO    ] Checking for camera pi updates...
[2026-10-18 03:34:26,936.936 INFO    ] 200
[2026-10-18 03:34:26,939.939 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:34:26,987.987 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:34:37,002.002 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:34:37,043.043 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:34:37,054.054 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:34:37,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:34:37,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:34:37,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:34:39,113.113 INFO    ] ================================================
[2026-10-18 03:34:39,129.129 INFO    ] Launching Daemon at Sun Oct 18 03:34:39 IST 2026
[2026-10-18 03:34:39,140.140 INFO    ] ================================================
[2026-10-18 03:34:39,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:34:39
[2026-10-18 03:34:40,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:34:40,561.561 INFO    ] Initializing speech engine...
[2026-10-18 03:34:40,569.569 INFO    ] 2026-10-18 03:34:40
[2026-10-18 03:34:40,816.816 INFO    ] 2026-10-18 03:34:40
[2026-10-18 03:34:40,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:34:41,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:34:41,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:34:41,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:34:41,370.370 INFO    ] time= 18/10/2026 03:34:41
[2026-10-18 03:34:41,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:34:41,394.394 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:34:41,521.521 INFO    ] No existing commands found in stream
[2026-10-18 03:34:46,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:34:46,538.538 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-18 03:34:49,822.822 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:34:49,825.825 INFO    ] Checking for system updates...
[2026-10-18 03:34:49,860.860 INFO    ] 200
[2026-10-18 03:34:49,863.863 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:34:49,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:34:49,918.918 INFO    ] No update needed
[2026-10-18 03:34:49,920.920 INFO    ] Checking for camera pi updates...
[2026-10-18 03:34:49,953.953 INFO    ] 200
[2026-10-18 03:34:49,956.956 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:34:49,996.996 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:35:00,011.011 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:35:00,046.046 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:35:00,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:35:00,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:35:00,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:35:00,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:35:02,172.172 INFO    ] ================================================
[2026-10-18 03:35:02,250.250 INFO    ] Launching Daemon at Sun Oct 18 03:35:02 IST 2026
[2026-10-18 03:35:02,319.319 INFO    ] ================================================
[2026-10-18 03:35:03,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:35:03
[2026-10-18 03:35:03,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:35:04,185.185 INFO    ] Initializing speech engine...
[2026-10-18 03:35:04,193.193 INFO    ] 2026-10-18 03:35:04
[2026-10-18 03:35:04,523.523 INFO    ] 2026-10-18 03:35:04
[2026-10-18 03:35:04,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:35:04,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:35:04,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:35:05,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:35:05,098.098 INFO    ] time= 18/10/2026 03:35:05
[2026-10-18 03:35:05,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:35:05,127.127 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:35:05,266.266 INFO    ] No existing commands found in stream
[2026-10-18 03:35:10,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:35:10,289.289 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-18 03:35:13,778.778 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:35:13,781.781 INFO    ] Checking for system updates...
[2026-10-18 03:35:13,817.817 INFO    ] 200
[2026-10-18 03:35:13,819.819 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:35:13,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:35:13,874.874 INFO    ] No update needed
[2026-10-18 03:35:13,877.877 INFO    ] Checking for camera pi updates...
[2026-10-18 03:35:13,911.911 INFO    ] 200
[2026-10-18 03:35:13,914.914 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:35:13,955.955 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:35:23,974.974 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:35:24,014.014 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:35:24,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:35:24,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:35:24,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:35:24,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:35:26,081.081 INFO    ] ================================================
[2026-10-18 03:35:26,097.097 INFO    ] Launching Daemon at Sun Oct 18 03:35:26 IST 2026
[2026-10-18 03:35:26,108.108 INFO    ] ================================================
[2026-10-18 03:35:26,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:35:26
[2026-10-18 03:35:27,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:35:27,717.717 INFO    ] Initializing speech engine...
[2026-10-18 03:35:27,731.731 INFO    ] 2026-10-18 03:35:27
[2026-10-18 03:35:28,013.013 INFO    ] 2026-10-18 03:35:28
[2026-10-18 03:35:28,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:35:28,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:35:28,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:35:28,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:35:28,554.554 INFO    ] time= 18/10/2026 03:35:28
[2026-10-18 03:35:28,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:35:28,595.595 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:35:28,702.702 INFO    ] No existing commands found in stream
[2026-10-18 03:35:33,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:35:33,735.735 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-18 03:35:36,287.287 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:35:36,290.290 INFO    ] Checking for system updates...
[2026-10-18 03:35:36,327.327 INFO    ] 200
[2026-10-18 03:35:36,330.330 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:35:36,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:35:36,384.384 INFO    ] No update needed
[2026-10-18 03:35:36,386.386 INFO    ] Checking for camera pi updates...
[2026-10-18 03:35:36,420.420 INFO    ] 200
[2026-10-18 03:35:36,423.423 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:35:36,467.467 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:35:46,482.482 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:35:46,517.517 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:35:46,526.526 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:35:46,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:35:46,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:35:46,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:35:48,578.578 INFO    ] ================================================
[2026-10-18 03:35:48,593.593 INFO    ] Launching Daemon at Sun Oct 18 03:35:48 IST 2026
[2026-10-18 03:35:48,604.604 INFO    ] ================================================
[2026-10-18 03:35:49,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:35:49
[2026-10-18 03:35:49,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:35:50,005.005 INFO    ] Initializing speech engine...
[2026-10-18 03:35:50,013.013 INFO    ] 2026-10-18 03:35:50
[2026-10-18 03:35:50,288.288 INFO    ] 2026-10-18 03:35:50
[2026-10-18 03:35:50,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:35:50,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:35:50,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:35:50,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:35:50,773.773 INFO    ] time= 18/10/2026 03:35:50
[2026-10-18 03:35:50,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:35:50,877.877 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:35:51,056.056 INFO    ] No existing commands found in stream
[2026-10-18 03:35:56,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:35:56,075.075 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-18 03:35:56,873.873 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:35:56,876.876 INFO    ] Checking for system updates...
[2026-10-18 03:35:56,911.911 INFO    ] 200
[2026-10-18 03:35:56,914.914 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:35:56,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:35:56,969.969 INFO    ] No update needed
[2026-10-18 03:35:56,971.971 INFO    ] Checking for camera pi updates...
[2026-10-18 03:35:57,013.013 INFO    ] 200
[2026-10-18 03:35:57,016.016 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:35:57,061.061 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:36:07,077.077 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:36:07,112.112 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:36:07,121.121 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:36:07,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:36:07,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:36:07,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:36:09,173.173 INFO    ] ================================================
[2026-10-18 03:36:09,189.189 INFO    ] Launching Daemon at Sun Oct 18 03:36:09 IST 2026
[2026-10-18 03:36:09,200.200 INFO    ] ================================================
[2026-10-18 03:36:09,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:36:09
[2026-10-18 03:36:10,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:36:10,603.603 INFO    ] Initializing speech engine...
[2026-10-18 03:36:10,610.610 INFO    ] 2026-10-18 03:36:10
[2026-10-18 03:36:10,909.909 INFO    ] 2026-10-18 03:36:10
[2026-10-18 03:36:10,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:36:11,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:36:11,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:36:11,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:36:11,490.490 INFO    ] time= 18/10/2026 03:36:11
[2026-10-18 03:36:11,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:36:11,538.538 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:36:11,660.660 INFO    ] No existing commands found in stream
[2026-10-18 03:36:16,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:36:16,694.694 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-18 03:36:19,101.101 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:36:19,104.104 INFO    ] Checking for system updates...
[2026-10-18 03:36:19,142.142 INFO    ] 200
[2026-10-18 03:36:19,145.145 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:36:19,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:36:19,203.203 INFO    ] No update needed
[2026-10-18 03:36:19,205.205 INFO    ] Checking for camera pi updates...
[2026-10-18 03:36:19,245.245 INFO    ] 200
[2026-10-18 03:36:19,249.249 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:36:19,290.290 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:36:29,307.307 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:36:29,348.348 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:36:29,359.359 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:36:29,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:36:29,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:36:29,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:36:31,418.418 INFO    ] ================================================
[2026-10-18 03:36:31,435.435 INFO    ] Launching Daemon at Sun Oct 18 03:36:31 IST 2026
[2026-10-18 03:36:31,447.447 INFO    ] ================================================
[2026-10-18 03:36:32,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:36:32
[2026-10-18 03:36:32,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:36:32,947.947 INFO    ] Initializing speech engine...
[2026-10-18 03:36:32,956.956 INFO    ] 2026-10-18 03:36:32
[2026-10-18 03:36:33,252.252 INFO    ] 2026-10-18 03:36:33
[2026-10-18 03:36:33,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:36:33,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:36:33,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:36:33,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:36:33,678.678 INFO    ] time= 18/10/2026 03:36:33
[2026-10-18 03:36:33,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:36:33,713.713 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:36:33,842.842 INFO    ] No existing commands found in stream
[2026-10-18 03:36:38,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:36:38,864.864 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-18 03:36:43,277.277 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:36:43,279.279 INFO    ] Checking for system updates...
[2026-10-18 03:36:43,319.319 INFO    ] 200
[2026-10-18 03:36:43,322.322 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:36:43,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:36:43,378.378 INFO    ] No update needed
[2026-10-18 03:36:43,381.381 INFO    ] Checking for camera pi updates...
[2026-10-18 03:36:43,415.415 INFO    ] 200
[2026-10-18 03:36:43,418.418 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:36:43,458.458 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:36:53,471.471 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:36:53,507.507 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:36:53,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:36:53,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:36:53,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:36:53,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:36:55,570.570 INFO    ] ================================================
[2026-10-18 03:36:55,586.586 INFO    ] Launching Daemon at Sun Oct 18 03:36:55 IST 2026
[2026-10-18 03:36:55,597.597 INFO    ] ================================================
[2026-10-18 03:36:56,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:36:56
[2026-10-18 03:36:56,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:36:57,011.011 INFO    ] Initializing speech engine...
[2026-10-18 03:36:57,017.017 INFO    ] 2026-10-18 03:36:57
[2026-10-18 03:36:57,310.310 INFO    ] 2026-10-18 03:36:57
[2026-10-18 03:36:57,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:36:57,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:36:57,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:36:57,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:36:57,735.735 INFO    ] time= 18/10/2026 03:36:57
[2026-10-18 03:36:57,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:36:57,747.747 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:36:57,889.889 INFO    ] No existing commands found in stream
[2026-10-18 03:37:02,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:37:02,917.917 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-18 03:37:03,773.773 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 03:37:03,776.776 INFO    ] Checking for system updates...
[2026-10-18 03:37:03,815.815 INFO    ] 200
[2026-10-18 03:37:03,817.817 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:37:03,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:37:03,877.877 INFO    ] No update needed
[2026-10-18 03:37:03,880.880 INFO    ] Checking for camera pi updates...
[2026-10-18 03:37:03,912.912 INFO    ] 200
[2026-10-18 03:37:03,915.915 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:37:03,959.959 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:37:13,975.975 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:37:14,009.009 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:37:14,019.019 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:37:14,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:37:14,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:37:14,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:37:16,071.071 INFO    ] ================================================
[2026-10-18 03:37:16,086.086 INFO    ] Launching Daemon at Sun Oct 18 03:37:16 IST 2026
[2026-10-18 03:37:16,096.096 INFO    ] ================================================
[2026-10-18 03:37:16,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:37:16
[2026-10-18 03:37:17,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:37:17,550.550 INFO    ] Initializing speech engine...
[2026-10-18 03:37:17,563.563 INFO    ] 2026-10-18 03:37:17
[2026-10-18 03:37:17,850.850 INFO    ] 2026-10-18 03:37:17
[2026-10-18 03:37:17,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:37:18,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:37:18,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:37:18,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:37:18,288.288 INFO    ] time= 18/10/2026 03:37:18
[2026-10-18 03:37:18,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:37:18,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:37:18,468.468 INFO    ] No existing commands found in stream
[2026-10-18 03:37:23,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:37:23,481.481 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-18 03:37:25,470.470 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 03:37:25,473.473 INFO    ] Checking for system updates...
[2026-10-18 03:37:25,508.508 INFO    ] 200
[2026-10-18 03:37:25,510.510 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:37:25,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:37:25,564.564 INFO    ] No update needed
[2026-10-18 03:37:25,567.567 INFO    ] Checking for camera pi updates...
[2026-10-18 03:37:25,603.603 INFO    ] 200
[2026-10-18 03:37:25,606.606 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:37:25,646.646 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:37:35,661.661 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:37:35,696.696 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:37:35,705.705 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:37:35,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:37:35,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:37:35,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:37:37,758.758 INFO    ] ================================================
[2026-10-18 03:37:37,773.773 INFO    ] Launching Daemon at Sun Oct 18 03:37:37 IST 2026
[2026-10-18 03:37:37,784.784 INFO    ] ================================================
[2026-10-18 03:37:38,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:37:38
[2026-10-18 03:37:38,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:37:39,259.259 INFO    ] Initializing speech engine...
[2026-10-18 03:37:39,275.275 INFO    ] 2026-10-18 03:37:39
[2026-10-18 03:37:39,546.546 INFO    ] 2026-10-18 03:37:39
[2026-10-18 03:37:39,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:37:39,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:37:39,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:37:39,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:37:39,927.927 INFO    ] time= 18/10/2026 03:37:39
[2026-10-18 03:37:39,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:37:39,956.956 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:37:40,051.051 INFO    ] No existing commands found in stream
[2026-10-18 03:37:45,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:37:45,067.067 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-18 03:37:49,247.247 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 03:37:49,250.250 INFO    ] Checking for system updates...
[2026-10-18 03:37:49,285.285 INFO    ] 200
[2026-10-18 03:37:49,288.288 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:37:49,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:37:49,341.341 INFO    ] No update needed
[2026-10-18 03:37:49,344.344 INFO    ] Checking for camera pi updates...
[2026-10-18 03:37:49,377.377 INFO    ] 200
[2026-10-18 03:37:49,379.379 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:37:49,424.424 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:37:59,439.439 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:37:59,474.474 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:37:59,484.484 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:37:59,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:37:59,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:37:59,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:38:01,551.551 INFO    ] ================================================
[2026-10-18 03:38:01,585.585 INFO    ] Launching Daemon at Sun Oct 18 03:38:01 IST 2026
[2026-10-18 03:38:01,603.603 INFO    ] ================================================
[2026-10-18 03:38:02,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:38:02
[2026-10-18 03:38:03,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:38:03,354.354 INFO    ] Initializing speech engine...
[2026-10-18 03:38:03,360.360 INFO    ] 2026-10-18 03:38:03
[2026-10-18 03:38:03,604.604 INFO    ] 2026-10-18 03:38:03
[2026-10-18 03:38:03,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:38:03,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:38:03,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:38:04,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:38:04,159.159 INFO    ] time= 18/10/2026 03:38:04
[2026-10-18 03:38:04,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:38:04,183.183 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:38:04,312.312 INFO    ] No existing commands found in stream
[2026-10-18 03:38:09,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:38:09,329.329 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-18 03:38:12,220.220 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:38:12,222.222 INFO    ] Checking for system updates...
[2026-10-18 03:38:12,262.262 INFO    ] 200
[2026-10-18 03:38:12,265.265 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:38:12,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:38:12,336.336 INFO    ] No update needed
[2026-10-18 03:38:12,338.338 INFO    ] Checking for camera pi updates...
[2026-10-18 03:38:12,383.383 INFO    ] 200
[2026-10-18 03:38:12,388.388 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:38:12,442.442 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:38:22,460.460 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:38:22,495.495 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:38:22,505.505 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:38:22,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:38:22,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:38:22,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:38:24,559.559 INFO    ] ================================================
[2026-10-18 03:38:24,574.574 INFO    ] Launching Daemon at Sun Oct 18 03:38:24 IST 2026
[2026-10-18 03:38:24,585.585 INFO    ] ================================================
[2026-10-18 03:38:25,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:38:25
[2026-10-18 03:38:25,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:38:26,195.195 INFO    ] Initializing speech engine...
[2026-10-18 03:38:26,205.205 INFO    ] 2026-10-18 03:38:26
[2026-10-18 03:38:26,478.478 INFO    ] 2026-10-18 03:38:26
[2026-10-18 03:38:26,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:38:26,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:38:26,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:38:26,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:38:26,962.962 INFO    ] time= 18/10/2026 03:38:26
[2026-10-18 03:38:27,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:38:27,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:38:27,163.163 INFO    ] No existing commands found in stream
[2026-10-18 03:38:32,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:38:32,180.180 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-18 03:38:35,091.091 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 03:38:35,094.094 INFO    ] Checking for system updates...
[2026-10-18 03:38:35,130.130 INFO    ] 200
[2026-10-18 03:38:35,132.132 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:38:35,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:38:35,193.193 INFO    ] No update needed
[2026-10-18 03:38:35,196.196 INFO    ] Checking for camera pi updates...
[2026-10-18 03:38:35,231.231 INFO    ] 200
[2026-10-18 03:38:35,233.233 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:38:35,278.278 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:38:45,294.294 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:38:45,330.330 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:38:45,339.339 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:38:45,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:38:45,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:38:45,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:38:47,395.395 INFO    ] ================================================
[2026-10-18 03:38:47,411.411 INFO    ] Launching Daemon at Sun Oct 18 03:38:47 IST 2026
[2026-10-18 03:38:47,427.427 INFO    ] ================================================
[2026-10-18 03:38:48,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:38:48
[2026-10-18 03:38:48,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:38:48,890.890 INFO    ] Initializing speech engine...
[2026-10-18 03:38:48,898.898 INFO    ] 2026-10-18 03:38:48
[2026-10-18 03:38:49,160.160 INFO    ] 2026-10-18 03:38:49
[2026-10-18 03:38:49,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:38:49,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:38:49,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:38:49,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:38:49,640.640 INFO    ] time= 18/10/2026 03:38:49
[2026-10-18 03:38:49,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:38:49,711.711 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:38:49,827.827 INFO    ] No existing commands found in stream
[2026-10-18 03:38:54,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:38:54,857.857 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-18 03:38:59,489.489 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:38:59,492.492 INFO    ] Checking for system updates...
[2026-10-18 03:38:59,528.528 INFO    ] 200
[2026-10-18 03:38:59,530.530 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:38:59,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:38:59,584.584 INFO    ] No update needed
[2026-10-18 03:38:59,587.587 INFO    ] Checking for camera pi updates...
[2026-10-18 03:38:59,621.621 INFO    ] 200
[2026-10-18 03:38:59,624.624 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:38:59,670.670 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:39:09,684.684 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:39:09,720.720 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:39:09,730.730 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:39:09,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:39:09,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:39:09,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:39:11,783.783 INFO    ] ================================================
[2026-10-18 03:39:11,799.799 INFO    ] Launching Daemon at Sun Oct 18 03:39:11 IST 2026
[2026-10-18 03:39:11,811.811 INFO    ] ================================================
[2026-10-18 03:39:12,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:39:12
[2026-10-18 03:39:12,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:39:13,218.218 INFO    ] Initializing speech engine...
[2026-10-18 03:39:13,241.241 INFO    ] 2026-10-18 03:39:13
[2026-10-18 03:39:13,526.526 INFO    ] 2026-10-18 03:39:13
[2026-10-18 03:39:13,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:39:13,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:39:13,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:39:13,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:39:13,946.946 INFO    ] time= 18/10/2026 03:39:13
[2026-10-18 03:39:13,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:39:13,986.986 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:39:14,126.126 INFO    ] No existing commands found in stream
[2026-10-18 03:39:19,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:39:19,154.154 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-18 03:39:21,978.978 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:39:21,981.981 INFO    ] Checking for system updates...
[2026-10-18 03:39:22,017.017 INFO    ] 200
[2026-10-18 03:39:22,019.019 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:39:22,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:39:22,081.081 INFO    ] No update needed
[2026-10-18 03:39:22,083.083 INFO    ] Checking for camera pi updates...
[2026-10-18 03:39:22,120.120 INFO    ] 200
[2026-10-18 03:39:22,122.122 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:39:22,166.166 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:39:32,180.180 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:39:32,216.216 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:39:32,227.227 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:39:32,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:39:32,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:39:32,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:39:34,281.281 INFO    ] ================================================
[2026-10-18 03:39:34,297.297 INFO    ] Launching Daemon at Sun Oct 18 03:39:34 IST 2026
[2026-10-18 03:39:34,309.309 INFO    ] ================================================
[2026-10-18 03:39:34,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:39:34
[2026-10-18 03:39:35,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:39:35,733.733 INFO    ] Initializing speech engine...
[2026-10-18 03:39:35,742.742 INFO    ] 2026-10-18 03:39:35
[2026-10-18 03:39:35,997.997 INFO    ] 2026-10-18 03:39:35
[2026-10-18 03:39:36,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:39:36,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:39:36,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:39:36,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:39:36,538.538 INFO    ] time= 18/10/2026 03:39:36
[2026-10-18 03:39:36,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:39:36,562.562 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:39:36,698.698 INFO    ] No existing commands found in stream
[2026-10-18 03:39:41,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:39:41,715.715 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-18 03:39:44,193.193 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:39:44,196.196 INFO    ] Checking for system updates...
[2026-10-18 03:39:44,239.239 INFO    ] 200
[2026-10-18 03:39:44,241.241 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:39:44,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:39:44,309.309 INFO    ] No update needed
[2026-10-18 03:39:44,312.312 INFO    ] Checking for camera pi updates...
[2026-10-18 03:39:44,348.348 INFO    ] 200
[2026-10-18 03:39:44,351.351 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:39:44,403.403 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:39:54,418.418 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:39:54,453.453 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:39:54,462.462 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:39:54,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:39:54,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:39:54,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:39:56,515.515 INFO    ] ================================================
[2026-10-18 03:39:56,531.531 INFO    ] Launching Daemon at Sun Oct 18 03:39:56 IST 2026
[2026-10-18 03:39:56,542.542 INFO    ] ================================================
[2026-10-18 03:39:57,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:39:57
[2026-10-18 03:39:57,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:39:58,005.005 INFO    ] Initializing speech engine...
[2026-10-18 03:39:58,012.012 INFO    ] 2026-10-18 03:39:58
[2026-10-18 03:39:58,274.274 INFO    ] 2026-10-18 03:39:58
[2026-10-18 03:39:58,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:39:58,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:39:58,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:39:58,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:39:58,766.766 INFO    ] time= 18/10/2026 03:39:58
[2026-10-18 03:39:58,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:39:58,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:39:58,943.943 INFO    ] No existing commands found in stream
[2026-10-18 03:40:03,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:40:03,971.971 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-18 03:40:14,355.355 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-10-18 03:40:14,399.399 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM04202203 (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-10-18 03:40:14,408.408 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM04202203 (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-10-18 03:40:14,429.429 INFO    ] None
[2026-10-18 03:40:14,431.431 INFO    ] Checking for system updates...
[2026-10-18 03:40:14,473.473 INFO    ] 200
[2026-10-18 03:40:14,475.475 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:40:14,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:40:14,534.534 INFO    ] No update needed
[2026-10-18 03:40:14,537.537 INFO    ] Checking for camera pi updates...
[2026-10-18 03:40:14,571.571 INFO    ] 200
[2026-10-18 03:40:14,573.573 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:40:14,618.618 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:40:24,646.646 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73dfe5d0>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:40:24,668.668 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:40:24,678.678 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:40:24,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:40:24,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:40:24,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:40:26,732.732 INFO    ] ================================================
[2026-10-18 03:40:26,748.748 INFO    ] Launching Daemon at Sun Oct 18 03:40:26 IST 2026
[2026-10-18 03:40:26,759.759 INFO    ] ================================================
[2026-10-18 03:40:27,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:40:27
[2026-10-18 03:40:27,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:40:28,180.180 INFO    ] Initializing speech engine...
[2026-10-18 03:40:28,189.189 INFO    ] 2026-10-18 03:40:28
[2026-10-18 03:40:28,435.435 INFO    ] 2026-10-18 03:40:28
[2026-10-18 03:40:28,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:40:28,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:40:28,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:40:28,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:40:28,931.931 INFO    ] time= 18/10/2026 03:40:28
[2026-10-18 03:40:28,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:40:28,995.995 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:40:29,143.143 INFO    ] No existing commands found in stream
[2026-10-18 03:40:34,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:40:34,159.159 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-18 03:40:36,208.208 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:40:36,210.210 INFO    ] Checking for system updates...
[2026-10-18 03:40:36,249.249 INFO    ] 200
[2026-10-18 03:40:36,252.252 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:40:36,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:40:36,310.310 INFO    ] No update needed
[2026-10-18 03:40:36,312.312 INFO    ] Checking for camera pi updates...
[2026-10-18 03:40:36,345.345 INFO    ] 200
[2026-10-18 03:40:36,348.348 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:40:36,391.391 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:40:46,406.406 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:40:46,441.441 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:40:46,451.451 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:40:46,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:40:46,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:40:46,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:40:48,504.504 INFO    ] ================================================
[2026-10-18 03:40:48,520.520 INFO    ] Launching Daemon at Sun Oct 18 03:40:48 IST 2026
[2026-10-18 03:40:48,531.531 INFO    ] ================================================
[2026-10-18 03:40:49,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:40:49
[2026-10-18 03:40:49,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:40:50,053.053 INFO    ] Initializing speech engine...
[2026-10-18 03:40:50,063.063 INFO    ] 2026-10-18 03:40:50
[2026-10-18 03:40:50,315.315 INFO    ] 2026-10-18 03:40:50
[2026-10-18 03:40:50,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:40:50,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:40:50,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:40:50,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:40:50,859.859 INFO    ] time= 18/10/2026 03:40:50
[2026-10-18 03:40:50,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:40:50,882.882 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:40:51,013.013 INFO    ] No existing commands found in stream
[2026-10-18 03:40:56,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:40:56,034.034 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-18 03:41:02,848.848 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:41:02,852.852 INFO    ] Checking for system updates...
[2026-10-18 03:41:02,911.911 INFO    ] 200
[2026-10-18 03:41:02,915.915 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:41:02,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:41:02,999.999 INFO    ] No update needed
[2026-10-18 03:41:03,007.007 INFO    ] Checking for camera pi updates...
[2026-10-18 03:41:03,053.053 INFO    ] 200
[2026-10-18 03:41:03,055.055 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:41:03,112.112 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:41:13,126.126 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:41:13,162.162 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:41:13,172.172 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:41:13,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:41:13,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:41:13,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:41:15,225.225 INFO    ] ================================================
[2026-10-18 03:41:15,242.242 INFO    ] Launching Daemon at Sun Oct 18 03:41:15 IST 2026
[2026-10-18 03:41:15,253.253 INFO    ] ================================================
[2026-10-18 03:41:15,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:41:15
[2026-10-18 03:41:16,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:41:16,700.700 INFO    ] Initializing speech engine...
[2026-10-18 03:41:16,711.711 INFO    ] 2026-10-18 03:41:16
[2026-10-18 03:41:16,971.971 INFO    ] 2026-10-18 03:41:16
[2026-10-18 03:41:17,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:41:17,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:41:17,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:41:17,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:41:17,448.448 INFO    ] time= 18/10/2026 03:41:17
[2026-10-18 03:41:17,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:41:17,518.518 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:41:17,648.648 INFO    ] No existing commands found in stream
[2026-10-18 03:41:22,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:41:22,679.679 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-18 03:41:25,942.942 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:41:25,945.945 INFO    ] Checking for system updates...
[2026-10-18 03:41:25,982.982 INFO    ] 200
[2026-10-18 03:41:25,984.984 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:41:26,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:41:26,045.045 INFO    ] No update needed
[2026-10-18 03:41:26,047.047 INFO    ] Checking for camera pi updates...
[2026-10-18 03:41:26,080.080 INFO    ] 200
[2026-10-18 03:41:26,083.083 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:41:26,131.131 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:41:36,146.146 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:41:36,180.180 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:41:36,190.190 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:41:36,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:41:36,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:41:36,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:41:38,243.243 INFO    ] ================================================
[2026-10-18 03:41:38,259.259 INFO    ] Launching Daemon at Sun Oct 18 03:41:38 IST 2026
[2026-10-18 03:41:38,270.270 INFO    ] ================================================
[2026-10-18 03:41:38,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:41:38
[2026-10-18 03:41:39,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:41:39,695.695 INFO    ] Initializing speech engine...
[2026-10-18 03:41:39,701.701 INFO    ] 2026-10-18 03:41:39
[2026-10-18 03:41:39,963.963 INFO    ] 2026-10-18 03:41:39
[2026-10-18 03:41:39,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:41:40,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:41:40,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:41:40,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:41:40,455.455 INFO    ] time= 18/10/2026 03:41:40
[2026-10-18 03:41:40,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:41:40,553.553 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:41:40,696.696 INFO    ] No existing commands found in stream
[2026-10-18 03:41:45,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:41:45,726.726 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-18 03:41:46,311.311 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:41:46,314.314 INFO    ] Checking for system updates...
[2026-10-18 03:41:46,352.352 INFO    ] 200
[2026-10-18 03:41:46,355.355 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:41:46,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:41:46,415.415 INFO    ] No update needed
[2026-10-18 03:41:46,417.417 INFO    ] Checking for camera pi updates...
[2026-10-18 03:41:46,450.450 INFO    ] 200
[2026-10-18 03:41:46,453.453 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:41:46,496.496 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:41:56,511.511 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:41:56,546.546 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:41:56,555.555 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:41:56,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:41:56,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:41:56,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:41:58,609.609 INFO    ] ================================================
[2026-10-18 03:41:58,624.624 INFO    ] Launching Daemon at Sun Oct 18 03:41:58 IST 2026
[2026-10-18 03:41:58,636.636 INFO    ] ================================================
[2026-10-18 03:41:59,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:41:59
[2026-10-18 03:41:59,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:42:00,214.214 INFO    ] Initializing speech engine...
[2026-10-18 03:42:00,228.228 INFO    ] 2026-10-18 03:42:00
[2026-10-18 03:42:00,489.489 INFO    ] 2026-10-18 03:42:00
[2026-10-18 03:42:00,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:42:00,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:42:00,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:42:00,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:42:01,025.025 INFO    ] time= 18/10/2026 03:42:00
[2026-10-18 03:42:01,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:42:01,105.105 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:42:01,247.247 INFO    ] No existing commands found in stream
[2026-10-18 03:42:06,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:42:06,280.280 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-18 03:42:10,158.158 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:42:10,160.160 INFO    ] Checking for system updates...
[2026-10-18 03:42:10,201.201 INFO    ] 200
[2026-10-18 03:42:10,203.203 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:42:10,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:42:10,269.269 INFO    ] No update needed
[2026-10-18 03:42:10,272.272 INFO    ] Checking for camera pi updates...
[2026-10-18 03:42:10,310.310 INFO    ] 200
[2026-10-18 03:42:10,313.313 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:42:10,358.358 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:42:20,373.373 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:42:20,408.408 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:42:20,418.418 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:42:20,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:42:20,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:42:20,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:42:22,470.470 INFO    ] ================================================
[2026-10-18 03:42:22,486.486 INFO    ] Launching Daemon at Sun Oct 18 03:42:22 IST 2026
[2026-10-18 03:42:22,500.500 INFO    ] ================================================
[2026-10-18 03:42:23,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:42:23
[2026-10-18 03:42:23,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:42:23,934.934 INFO    ] Initializing speech engine...
[2026-10-18 03:42:23,944.944 INFO    ] 2026-10-18 03:42:23
[2026-10-18 03:42:24,203.203 INFO    ] 2026-10-18 03:42:24
[2026-10-18 03:42:24,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:42:24,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:42:24,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:42:24,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:42:24,743.743 INFO    ] time= 18/10/2026 03:42:24
[2026-10-18 03:42:24,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:42:24,767.767 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:42:24,900.900 INFO    ] No existing commands found in stream
[2026-10-18 03:42:29,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:42:29,930.930 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-18 03:42:30,590.590 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:42:30,593.593 INFO    ] Checking for system updates...
[2026-10-18 03:42:30,628.628 INFO    ] 200
[2026-10-18 03:42:30,630.630 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:42:30,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:42:30,694.694 INFO    ] No update needed
[2026-10-18 03:42:30,697.697 INFO    ] Checking for camera pi updates...
[2026-10-18 03:42:30,731.731 INFO    ] 200
[2026-10-18 03:42:30,733.733 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:42:30,777.777 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:42:40,792.792 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:42:40,827.827 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:42:40,837.837 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:42:40,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:42:40,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:42:40,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:42:42,889.889 INFO    ] ================================================
[2026-10-18 03:42:42,905.905 INFO    ] Launching Daemon at Sun Oct 18 03:42:42 IST 2026
[2026-10-18 03:42:42,916.916 INFO    ] ================================================
[2026-10-18 03:42:43,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:42:43
[2026-10-18 03:42:44,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:42:44,336.336 INFO    ] Initializing speech engine...
[2026-10-18 03:42:44,361.361 INFO    ] 2026-10-18 03:42:44
[2026-10-18 03:42:44,638.638 INFO    ] 2026-10-18 03:42:44
[2026-10-18 03:42:44,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:42:44,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:42:44,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:42:45,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:42:45,193.193 INFO    ] time= 18/10/2026 03:42:45
[2026-10-18 03:42:45,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:42:45,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:42:45,342.342 INFO    ] No existing commands found in stream
[2026-10-18 03:42:50,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:42:50,367.367 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-18 03:42:51,135.135 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 03:42:51,137.137 INFO    ] Checking for system updates...
[2026-10-18 03:42:51,173.173 INFO    ] 200
[2026-10-18 03:42:51,175.175 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:42:51,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:42:51,236.236 INFO    ] No update needed
[2026-10-18 03:42:51,238.238 INFO    ] Checking for camera pi updates...
[2026-10-18 03:42:51,275.275 INFO    ] 200
[2026-10-18 03:42:51,277.277 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:42:51,322.322 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:43:01,338.338 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:43:01,372.372 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:43:01,382.382 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:43:01,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:43:01,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:43:01,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:43:03,437.437 INFO    ] ================================================
[2026-10-18 03:43:03,457.457 INFO    ] Launching Daemon at Sun Oct 18 03:43:03 IST 2026
[2026-10-18 03:43:03,470.470 INFO    ] ================================================
[2026-10-18 03:43:04,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:43:04
[2026-10-18 03:43:04,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:43:05,118.118 INFO    ] Initializing speech engine...
[2026-10-18 03:43:05,123.123 INFO    ] 2026-10-18 03:43:05
[2026-10-18 03:43:05,398.398 INFO    ] 2026-10-18 03:43:05
[2026-10-18 03:43:05,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:43:05,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:43:05,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:43:05,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:43:05,890.890 INFO    ] time= 18/10/2026 03:43:05
[2026-10-18 03:43:05,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:43:05,960.960 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:43:06,104.104 INFO    ] No existing commands found in stream
[2026-10-18 03:43:11,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:43:11,124.124 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-18 03:43:12,203.203 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:43:12,207.207 INFO    ] Checking for system updates...
[2026-10-18 03:43:12,244.244 INFO    ] 200
[2026-10-18 03:43:12,247.247 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:43:12,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:43:12,310.310 INFO    ] No update needed
[2026-10-18 03:43:12,313.313 INFO    ] Checking for camera pi updates...
[2026-10-18 03:43:12,350.350 INFO    ] 200
[2026-10-18 03:43:12,353.353 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:43:12,398.398 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:43:22,415.415 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:43:22,454.454 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:43:22,465.465 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:43:22,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:43:22,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:43:22,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:43:24,520.520 INFO    ] ================================================
[2026-10-18 03:43:24,537.537 INFO    ] Launching Daemon at Sun Oct 18 03:43:24 IST 2026
[2026-10-18 03:43:24,548.548 INFO    ] ================================================
[2026-10-18 03:43:25,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:43:25
[2026-10-18 03:43:25,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:43:25,992.992 INFO    ] Initializing speech engine...
[2026-10-18 03:43:25,998.998 INFO    ] 2026-10-18 03:43:25
[2026-10-18 03:43:26,298.298 INFO    ] 2026-10-18 03:43:26
[2026-10-18 03:43:26,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:43:26,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:43:26,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:43:26,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:43:26,718.718 INFO    ] time= 18/10/2026 03:43:26
[2026-10-18 03:43:26,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:43:26,772.772 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:43:26,913.913 INFO    ] No existing commands found in stream
[2026-10-18 03:43:31,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:43:31,947.947 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-18 03:43:33,916.916 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:43:33,918.918 INFO    ] Checking for system updates...
[2026-10-18 03:43:33,953.953 INFO    ] 200
[2026-10-18 03:43:33,956.956 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:43:34,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:43:34,017.017 INFO    ] No update needed
[2026-10-18 03:43:34,019.019 INFO    ] Checking for camera pi updates...
[2026-10-18 03:43:34,055.055 INFO    ] 200
[2026-10-18 03:43:34,058.058 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:43:34,102.102 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:43:44,117.117 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:43:44,152.152 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:43:44,161.161 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:43:44,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:43:44,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:43:44,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:43:46,213.213 INFO    ] ================================================
[2026-10-18 03:43:46,229.229 INFO    ] Launching Daemon at Sun Oct 18 03:43:46 IST 2026
[2026-10-18 03:43:46,241.241 INFO    ] ================================================
[2026-10-18 03:43:46,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:43:46
[2026-10-18 03:43:47,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:43:47,656.656 INFO    ] Initializing speech engine...
[2026-10-18 03:43:47,665.665 INFO    ] 2026-10-18 03:43:47
[2026-10-18 03:43:47,916.916 INFO    ] 2026-10-18 03:43:47
[2026-10-18 03:43:47,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:43:48,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:43:48,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:43:48,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:43:48,389.389 INFO    ] time= 18/10/2026 03:43:48
[2026-10-18 03:43:48,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:43:48,469.469 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:43:48,616.616 INFO    ] No existing commands found in stream
[2026-10-18 03:43:53,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:43:53,632.632 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-18 03:43:54,858.858 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:43:54,860.860 INFO    ] Checking for system updates...
[2026-10-18 03:43:54,896.896 INFO    ] 200
[2026-10-18 03:43:54,899.899 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:43:54,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:43:54,959.959 INFO    ] No update needed
[2026-10-18 03:43:54,961.961 INFO    ] Checking for camera pi updates...
[2026-10-18 03:43:54,994.994 INFO    ] 200
[2026-10-18 03:43:54,997.997 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:43:55,041.041 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:44:05,056.056 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:44:05,090.090 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:44:05,100.100 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:44:05,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:44:05,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:44:05,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:44:07,158.158 INFO    ] ================================================
[2026-10-18 03:44:07,174.174 INFO    ] Launching Daemon at Sun Oct 18 03:44:07 IST 2026
[2026-10-18 03:44:07,186.186 INFO    ] ================================================
[2026-10-18 03:44:07,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:44:07
[2026-10-18 03:44:08,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:44:08,614.614 INFO    ] Initializing speech engine...
[2026-10-18 03:44:08,623.623 INFO    ] 2026-10-18 03:44:08
[2026-10-18 03:44:08,886.886 INFO    ] 2026-10-18 03:44:08
[2026-10-18 03:44:08,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:44:09,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:44:09,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:44:09,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:44:09,407.407 INFO    ] time= 18/10/2026 03:44:09
[2026-10-18 03:44:09,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:44:09,506.506 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:44:09,638.638 INFO    ] No existing commands found in stream
[2026-10-18 03:44:14,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:44:14,671.671 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-18 03:44:18,264.264 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:44:18,266.266 INFO    ] Checking for system updates...
[2026-10-18 03:44:18,302.302 INFO    ] 200
[2026-10-18 03:44:18,305.305 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:44:18,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:44:18,363.363 INFO    ] No update needed
[2026-10-18 03:44:18,366.366 INFO    ] Checking for camera pi updates...
[2026-10-18 03:44:18,401.401 INFO    ] 200
[2026-10-18 03:44:18,403.403 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:44:18,444.444 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:44:28,456.456 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:44:28,491.491 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:44:28,500.500 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:44:28,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:44:28,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:44:28,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:44:30,553.553 INFO    ] ================================================
[2026-10-18 03:44:30,568.568 INFO    ] Launching Daemon at Sun Oct 18 03:44:30 IST 2026
[2026-10-18 03:44:30,578.578 INFO    ] ================================================
[2026-10-18 03:44:31,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:44:31
[2026-10-18 03:44:31,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:44:32,022.022 INFO    ] Initializing speech engine...
[2026-10-18 03:44:32,046.046 INFO    ] 2026-10-18 03:44:32
[2026-10-18 03:44:32,325.325 INFO    ] 2026-10-18 03:44:32
[2026-10-18 03:44:32,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:44:32,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:44:32,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:44:32,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:44:32,804.804 INFO    ] time= 18/10/2026 03:44:32
[2026-10-18 03:44:32,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:44:32,892.892 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:44:32,989.989 INFO    ] No existing commands found in stream
[2026-10-18 03:44:38,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:44:38,005.005 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-18 03:44:39,260.260 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 03:44:39,263.263 INFO    ] Checking for system updates...
[2026-10-18 03:44:39,310.310 INFO    ] 200
[2026-10-18 03:44:39,313.313 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:44:39,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:44:39,371.371 INFO    ] No update needed
[2026-10-18 03:44:39,373.373 INFO    ] Checking for camera pi updates...
[2026-10-18 03:44:39,406.406 INFO    ] 200
[2026-10-18 03:44:39,409.409 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:44:39,458.458 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:44:49,473.473 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:44:49,508.508 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:44:49,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:44:49,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:44:49,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:44:49,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:44:51,571.571 INFO    ] ================================================
[2026-10-18 03:44:51,587.587 INFO    ] Launching Daemon at Sun Oct 18 03:44:51 IST 2026
[2026-10-18 03:44:51,599.599 INFO    ] ================================================
[2026-10-18 03:44:52,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:44:52
[2026-10-18 03:44:52,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:44:53,016.016 INFO    ] Initializing speech engine...
[2026-10-18 03:44:53,022.022 INFO    ] 2026-10-18 03:44:53
[2026-10-18 03:44:53,306.306 INFO    ] 2026-10-18 03:44:53
[2026-10-18 03:44:53,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:44:53,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:44:53,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:44:53,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:44:53,859.859 INFO    ] time= 18/10/2026 03:44:53
[2026-10-18 03:44:53,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:44:53,885.885 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:44:54,009.009 INFO    ] No existing commands found in stream
[2026-10-18 03:44:59,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:44:59,028.028 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-18 03:45:02,165.165 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:45:02,169.169 INFO    ] Checking for system updates...
[2026-10-18 03:45:02,277.277 INFO    ] 200
[2026-10-18 03:45:02,280.280 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:45:02,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:45:02,572.572 INFO    ] No update needed
[2026-10-18 03:45:02,580.580 INFO    ] Checking for camera pi updates...
[2026-10-18 03:45:02,645.645 INFO    ] 200
[2026-10-18 03:45:02,649.649 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:45:02,711.711 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:45:12,727.727 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:45:12,767.767 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:45:12,779.779 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:45:12,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:45:12,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:45:12,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:45:14,833.833 INFO    ] ================================================
[2026-10-18 03:45:14,849.849 INFO    ] Launching Daemon at Sun Oct 18 03:45:14 IST 2026
[2026-10-18 03:45:14,859.859 INFO    ] ================================================
[2026-10-18 03:45:15,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:45:15
[2026-10-18 03:45:16,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:45:16,282.282 INFO    ] Initializing speech engine...
[2026-10-18 03:45:16,291.291 INFO    ] 2026-10-18 03:45:16
[2026-10-18 03:45:16,584.584 INFO    ] 2026-10-18 03:45:16
[2026-10-18 03:45:16,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:45:16,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:45:16,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:45:16,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:45:17,007.007 INFO    ] time= 18/10/2026 03:45:17
[2026-10-18 03:45:17,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:45:17,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:45:17,094.094 INFO    ] No existing commands found in stream
[2026-10-18 03:45:22,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:45:22,112.112 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-18 03:45:26,338.338 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:45:26,341.341 INFO    ] Checking for system updates...
[2026-10-18 03:45:26,380.380 INFO    ] 200
[2026-10-18 03:45:26,382.382 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:45:26,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:45:26,443.443 INFO    ] No update needed
[2026-10-18 03:45:26,446.446 INFO    ] Checking for camera pi updates...
[2026-10-18 03:45:26,479.479 INFO    ] 200
[2026-10-18 03:45:26,482.482 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:45:26,526.526 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:45:36,541.541 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:45:36,581.581 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:45:36,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:45:36,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:45:36,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:45:36,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:45:38,643.643 INFO    ] ================================================
[2026-10-18 03:45:38,659.659 INFO    ] Launching Daemon at Sun Oct 18 03:45:38 IST 2026
[2026-10-18 03:45:38,671.671 INFO    ] ================================================
[2026-10-18 03:45:39,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:45:39
[2026-10-18 03:45:39,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:45:40,122.122 INFO    ] Initializing speech engine...
[2026-10-18 03:45:40,131.131 INFO    ] 2026-10-18 03:45:40
[2026-10-18 03:45:40,384.384 INFO    ] 2026-10-18 03:45:40
[2026-10-18 03:45:40,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:45:40,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:45:40,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:45:40,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:45:40,850.850 INFO    ] time= 18/10/2026 03:45:40
[2026-10-18 03:45:40,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:45:40,940.940 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:45:41,084.084 INFO    ] No existing commands found in stream
[2026-10-18 03:45:46,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:45:46,102.102 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-18 03:45:48,125.125 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:45:48,127.127 INFO    ] Checking for system updates...
[2026-10-18 03:45:48,166.166 INFO    ] 200
[2026-10-18 03:45:48,169.169 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:45:48,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:45:48,230.230 INFO    ] No update needed
[2026-10-18 03:45:48,233.233 INFO    ] Checking for camera pi updates...
[2026-10-18 03:45:48,269.269 INFO    ] 200
[2026-10-18 03:45:48,271.271 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:45:48,316.316 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:45:58,331.331 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:45:58,366.366 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:45:58,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:45:58,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:45:58,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:45:58,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:46:00,429.429 INFO    ] ================================================
[2026-10-18 03:46:00,446.446 INFO    ] Launching Daemon at Sun Oct 18 03:46:00 IST 2026
[2026-10-18 03:46:00,457.457 INFO    ] ================================================
[2026-10-18 03:46:01,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:46:01
[2026-10-18 03:46:01,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:46:02,182.182 INFO    ] Initializing speech engine...
[2026-10-18 03:46:02,189.189 INFO    ] 2026-10-18 03:46:02
[2026-10-18 03:46:02,601.601 INFO    ] 2026-10-18 03:46:02
[2026-10-18 03:46:02,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:46:02,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:46:02,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:46:03,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:46:03,030.030 INFO    ] time= 18/10/2026 03:46:03
[2026-10-18 03:46:03,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:46:03,050.050 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:46:03,182.182 INFO    ] No existing commands found in stream
[2026-10-18 03:46:08,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:46:08,212.212 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-18 03:46:11,053.053 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 03:46:11,056.056 INFO    ] Checking for system updates...
[2026-10-18 03:46:11,093.093 INFO    ] 200
[2026-10-18 03:46:11,095.095 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:46:11,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:46:11,158.158 INFO    ] No update needed
[2026-10-18 03:46:11,161.161 INFO    ] Checking for camera pi updates...
[2026-10-18 03:46:11,195.195 INFO    ] 200
[2026-10-18 03:46:11,198.198 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:46:11,244.244 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:46:21,259.259 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:46:21,299.299 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:46:21,310.310 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:46:21,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:46:21,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:46:21,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:46:23,365.365 INFO    ] ================================================
[2026-10-18 03:46:23,381.381 INFO    ] Launching Daemon at Sun Oct 18 03:46:23 IST 2026
[2026-10-18 03:46:23,393.393 INFO    ] ================================================
[2026-10-18 03:46:23,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:46:23
[2026-10-18 03:46:24,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:46:24,822.822 INFO    ] Initializing speech engine...
[2026-10-18 03:46:24,831.831 INFO    ] 2026-10-18 03:46:24
[2026-10-18 03:46:25,078.078 INFO    ] 2026-10-18 03:46:25
[2026-10-18 03:46:25,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:46:25,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:46:25,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:46:25,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:46:25,574.574 INFO    ] time= 18/10/2026 03:46:25
[2026-10-18 03:46:25,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:46:25,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:46:25,752.752 INFO    ] No existing commands found in stream
[2026-10-18 03:46:30,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:46:30,781.781 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-18 03:46:31,961.961 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:46:31,964.964 INFO    ] Checking for system updates...
[2026-10-18 03:46:32,004.004 INFO    ] 200
[2026-10-18 03:46:32,007.007 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:46:32,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:46:32,077.077 INFO    ] No update needed
[2026-10-18 03:46:32,080.080 INFO    ] Checking for camera pi updates...
[2026-10-18 03:46:32,129.129 INFO    ] 200
[2026-10-18 03:46:32,133.133 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:46:32,180.180 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:46:42,196.196 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:46:42,238.238 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:46:42,249.249 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:46:42,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:46:42,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:46:42,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:46:44,306.306 INFO    ] ================================================
[2026-10-18 03:46:44,322.322 INFO    ] Launching Daemon at Sun Oct 18 03:46:44 IST 2026
[2026-10-18 03:46:44,333.333 INFO    ] ================================================
[2026-10-18 03:46:44,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:46:44
[2026-10-18 03:46:45,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:46:45,862.862 INFO    ] Initializing speech engine...
[2026-10-18 03:46:45,870.870 INFO    ] 2026-10-18 03:46:45
[2026-10-18 03:46:46,121.121 INFO    ] 2026-10-18 03:46:46
[2026-10-18 03:46:46,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:46:46,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:46:46,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:46:46,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:46:46,596.596 INFO    ] time= 18/10/2026 03:46:46
[2026-10-18 03:46:46,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:46:46,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:46:46,869.869 INFO    ] No existing commands found in stream
[2026-10-18 03:46:51,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:46:51,888.888 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-18 03:46:54,886.886 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:46:54,889.889 INFO    ] Checking for system updates...
[2026-10-18 03:46:54,928.928 INFO    ] 200
[2026-10-18 03:46:54,931.931 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:46:54,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:46:54,992.992 INFO    ] No update needed
[2026-10-18 03:46:54,995.995 INFO    ] Checking for camera pi updates...
[2026-10-18 03:46:55,032.032 INFO    ] 200
[2026-10-18 03:46:55,035.035 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:46:55,079.079 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:47:05,092.092 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:47:05,127.127 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:47:05,137.137 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:47:05,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:47:05,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:47:05,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:47:07,189.189 INFO    ] ================================================
[2026-10-18 03:47:07,204.204 INFO    ] Launching Daemon at Sun Oct 18 03:47:07 IST 2026
[2026-10-18 03:47:07,215.215 INFO    ] ================================================
[2026-10-18 03:47:07,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:47:07
[2026-10-18 03:47:08,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:47:08,854.854 INFO    ] Initializing speech engine...
[2026-10-18 03:47:08,863.863 INFO    ] 2026-10-18 03:47:08
[2026-10-18 03:47:09,134.134 INFO    ] 2026-10-18 03:47:09
[2026-10-18 03:47:09,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:47:09,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:47:09,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:47:09,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:47:09,720.720 INFO    ] time= 18/10/2026 03:47:09
[2026-10-18 03:47:09,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:47:09,757.757 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:47:09,868.868 INFO    ] No existing commands found in stream
[2026-10-18 03:47:14,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:47:14,888.888 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-18 03:47:15,751.751 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:47:15,754.754 INFO    ] Checking for system updates...
[2026-10-18 03:47:15,791.791 INFO    ] 200
[2026-10-18 03:47:15,794.794 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:47:15,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:47:15,851.851 INFO    ] No update needed
[2026-10-18 03:47:15,854.854 INFO    ] Checking for camera pi updates...
[2026-10-18 03:47:15,889.889 INFO    ] 200
[2026-10-18 03:47:15,892.892 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:47:15,938.938 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:47:25,955.955 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:47:25,996.996 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:47:26,007.007 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:47:26,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:47:26,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:47:26,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:47:28,066.066 INFO    ] ================================================
[2026-10-18 03:47:28,082.082 INFO    ] Launching Daemon at Sun Oct 18 03:47:28 IST 2026
[2026-10-18 03:47:28,094.094 INFO    ] ================================================
[2026-10-18 03:47:28,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:47:28
[2026-10-18 03:47:29,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:47:29,545.545 INFO    ] Initializing speech engine...
[2026-10-18 03:47:29,553.553 INFO    ] 2026-10-18 03:47:29
[2026-10-18 03:47:29,829.829 INFO    ] 2026-10-18 03:47:29
[2026-10-18 03:47:29,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:47:30,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:47:30,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:47:30,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:47:30,361.361 INFO    ] time= 18/10/2026 03:47:30
[2026-10-18 03:47:30,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:47:30,390.390 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:47:30,520.520 INFO    ] No existing commands found in stream
[2026-10-18 03:47:35,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:47:35,548.548 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-18 03:47:37,799.799 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 03:47:37,802.802 INFO    ] Checking for system updates...
[2026-10-18 03:47:37,837.837 INFO    ] 200
[2026-10-18 03:47:37,840.840 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:47:37,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:47:37,895.895 INFO    ] No update needed
[2026-10-18 03:47:37,897.897 INFO    ] Checking for camera pi updates...
[2026-10-18 03:47:37,931.931 INFO    ] 200
[2026-10-18 03:47:37,934.934 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:47:37,976.976 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:47:47,989.989 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:47:48,024.024 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:47:48,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:47:48,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:47:48,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:47:48,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:47:50,094.094 INFO    ] ================================================
[2026-10-18 03:47:50,109.109 INFO    ] Launching Daemon at Sun Oct 18 03:47:50 IST 2026
[2026-10-18 03:47:50,120.120 INFO    ] ================================================
[2026-10-18 03:47:50,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:47:50
[2026-10-18 03:47:51,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:47:51,599.599 INFO    ] Initializing speech engine...
[2026-10-18 03:47:51,605.605 INFO    ] 2026-10-18 03:47:51
[2026-10-18 03:47:51,903.903 INFO    ] 2026-10-18 03:47:51
[2026-10-18 03:47:51,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:47:52,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:47:52,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:47:52,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:47:52,328.328 INFO    ] time= 18/10/2026 03:47:52
[2026-10-18 03:47:52,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:47:52,340.340 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:47:52,489.489 INFO    ] No existing commands found in stream
[2026-10-18 03:47:57,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:47:57,517.517 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-18 03:47:59,602.602 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:47:59,605.605 INFO    ] Checking for system updates...
[2026-10-18 03:47:59,645.645 INFO    ] 200
[2026-10-18 03:47:59,647.647 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:47:59,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:47:59,709.709 INFO    ] No update needed
[2026-10-18 03:47:59,712.712 INFO    ] Checking for camera pi updates...
[2026-10-18 03:47:59,749.749 INFO    ] 200
[2026-10-18 03:47:59,752.752 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:47:59,797.797 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:48:09,813.813 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:48:09,848.848 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:48:09,858.858 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:48:09,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:48:09,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:48:09,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:48:11,912.912 INFO    ] ================================================
[2026-10-18 03:48:11,928.928 INFO    ] Launching Daemon at Sun Oct 18 03:48:11 IST 2026
[2026-10-18 03:48:11,939.939 INFO    ] ================================================
[2026-10-18 03:48:12,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:48:12
[2026-10-18 03:48:13,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:48:13,592.592 INFO    ] Initializing speech engine...
[2026-10-18 03:48:13,604.604 INFO    ] 2026-10-18 03:48:13
[2026-10-18 03:48:13,896.896 INFO    ] 2026-10-18 03:48:13
[2026-10-18 03:48:14,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:48:14,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:48:14,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:48:14,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:48:14,448.448 INFO    ] time= 18/10/2026 03:48:14
[2026-10-18 03:48:14,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:48:14,501.501 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:48:14,614.614 INFO    ] No existing commands found in stream
[2026-10-18 03:48:19,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:48:19,641.641 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-18 03:48:23,812.812 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:48:23,816.816 INFO    ] Checking for system updates...
[2026-10-18 03:48:23,855.855 INFO    ] 200
[2026-10-18 03:48:23,859.859 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:48:23,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:48:23,921.921 INFO    ] No update needed
[2026-10-18 03:48:23,924.924 INFO    ] Checking for camera pi updates...
[2026-10-18 03:48:23,965.965 INFO    ] 200
[2026-10-18 03:48:23,968.968 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:48:24,023.023 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:48:34,039.039 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:48:34,079.079 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:48:34,091.091 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:48:34,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:48:34,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:48:34,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:48:36,149.149 INFO    ] ================================================
[2026-10-18 03:48:36,164.164 INFO    ] Launching Daemon at Sun Oct 18 03:48:36 IST 2026
[2026-10-18 03:48:36,175.175 INFO    ] ================================================
[2026-10-18 03:48:36,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:48:36
[2026-10-18 03:48:37,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:48:37,686.686 INFO    ] Initializing speech engine...
[2026-10-18 03:48:37,696.696 INFO    ] 2026-10-18 03:48:37
[2026-10-18 03:48:37,954.954 INFO    ] 2026-10-18 03:48:37
[2026-10-18 03:48:37,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:48:38,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:48:38,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:48:38,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:48:38,470.470 INFO    ] time= 18/10/2026 03:48:38
[2026-10-18 03:48:38,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:48:38,558.558 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:48:38,701.701 INFO    ] No existing commands found in stream
[2026-10-18 03:48:43,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:48:43,720.720 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-18 03:48:45,216.216 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:48:45,219.219 INFO    ] Checking for system updates...
[2026-10-18 03:48:45,258.258 INFO    ] 200
[2026-10-18 03:48:45,261.261 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:48:45,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:48:45,322.322 INFO    ] No update needed
[2026-10-18 03:48:45,325.325 INFO    ] Checking for camera pi updates...
[2026-10-18 03:48:45,362.362 INFO    ] 200
[2026-10-18 03:48:45,364.364 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:48:45,413.413 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:48:55,429.429 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d75150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:48:55,470.470 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:48:55,482.482 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:48:55,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:48:55,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:48:55,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:48:57,537.537 INFO    ] ================================================
[2026-10-18 03:48:57,552.552 INFO    ] Launching Daemon at Sun Oct 18 03:48:57 IST 2026
[2026-10-18 03:48:57,564.564 INFO    ] ================================================
[2026-10-18 03:48:58,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:48:58
[2026-10-18 03:48:58,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:48:59,026.026 INFO    ] Initializing speech engine...
[2026-10-18 03:48:59,034.034 INFO    ] 2026-10-18 03:48:59
[2026-10-18 03:48:59,291.291 INFO    ] 2026-10-18 03:48:59
[2026-10-18 03:48:59,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:48:59,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:48:59,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:48:59,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:48:59,838.838 INFO    ] time= 18/10/2026 03:48:59
[2026-10-18 03:48:59,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:48:59,864.864 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:48:59,990.990 INFO    ] No existing commands found in stream
[2026-10-18 03:49:05,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:49:05,009.009 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-18 03:49:08,920.920 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:49:08,923.923 INFO    ] Checking for system updates...
[2026-10-18 03:49:08,958.958 INFO    ] 200
[2026-10-18 03:49:08,961.961 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:49:09,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:49:09,015.015 INFO    ] No update needed
[2026-10-18 03:49:09,018.018 INFO    ] Checking for camera pi updates...
[2026-10-18 03:49:09,051.051 INFO    ] 200
[2026-10-18 03:49:09,053.053 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:49:09,095.095 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:49:19,111.111 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:49:19,147.147 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:49:19,157.157 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:49:19,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:49:19,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:49:19,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:49:21,210.210 INFO    ] ================================================
[2026-10-18 03:49:21,225.225 INFO    ] Launching Daemon at Sun Oct 18 03:49:21 IST 2026
[2026-10-18 03:49:21,237.237 INFO    ] ================================================
[2026-10-18 03:49:21,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:49:21
[2026-10-18 03:49:22,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:49:22,853.853 INFO    ] Initializing speech engine...
[2026-10-18 03:49:22,866.866 INFO    ] 2026-10-18 03:49:22
[2026-10-18 03:49:23,178.178 INFO    ] 2026-10-18 03:49:23
[2026-10-18 03:49:23,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:49:23,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:49:23,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:49:23,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:49:23,696.696 INFO    ] time= 18/10/2026 03:49:23
[2026-10-18 03:49:23,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:49:23,722.722 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:49:23,855.855 INFO    ] No existing commands found in stream
[2026-10-18 03:49:28,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:49:28,878.878 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-18 03:49:31,163.163 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:49:31,166.166 INFO    ] Checking for system updates...
[2026-10-18 03:49:31,207.207 INFO    ] 200
[2026-10-18 03:49:31,210.210 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:49:31,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:49:31,278.278 INFO    ] No update needed
[2026-10-18 03:49:31,282.282 INFO    ] Checking for camera pi updates...
[2026-10-18 03:49:31,318.318 INFO    ] 200
[2026-10-18 03:49:31,321.321 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:49:31,369.369 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:49:41,385.385 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:49:41,420.420 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:49:41,429.429 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:49:41,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:49:41,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:49:41,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:49:43,482.482 INFO    ] ================================================
[2026-10-18 03:49:43,498.498 INFO    ] Launching Daemon at Sun Oct 18 03:49:43 IST 2026
[2026-10-18 03:49:43,509.509 INFO    ] ================================================
[2026-10-18 03:49:44,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:49:44
[2026-10-18 03:49:44,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:49:45,021.021 INFO    ] Initializing speech engine...
[2026-10-18 03:49:45,045.045 INFO    ] 2026-10-18 03:49:45
[2026-10-18 03:49:45,306.306 INFO    ] 2026-10-18 03:49:45
[2026-10-18 03:49:45,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:49:45,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:49:45,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:49:45,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:49:45,808.808 INFO    ] time= 18/10/2026 03:49:45
[2026-10-18 03:49:45,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:49:45,884.884 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:49:46,029.029 INFO    ] No existing commands found in stream
[2026-10-18 03:49:51,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:49:51,049.049 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-18 03:49:53,907.907 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 03:49:53,909.909 INFO    ] Checking for system updates...
[2026-10-18 03:49:53,948.948 INFO    ] 200
[2026-10-18 03:49:53,951.951 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:49:54,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:49:54,013.013 INFO    ] No update needed
[2026-10-18 03:49:54,016.016 INFO    ] Checking for camera pi updates...
[2026-10-18 03:49:54,049.049 INFO    ] 200
[2026-10-18 03:49:54,052.052 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:49:54,094.094 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:50:04,107.107 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:50:04,142.142 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:50:04,152.152 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:50:04,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:50:04,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:50:04,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:50:06,208.208 INFO    ] ================================================
[2026-10-18 03:50:06,223.223 INFO    ] Launching Daemon at Sun Oct 18 03:50:06 IST 2026
[2026-10-18 03:50:06,235.235 INFO    ] ================================================
[2026-10-18 03:50:06,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:50:06
[2026-10-18 03:50:07,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:50:07,684.684 INFO    ] Initializing speech engine...
[2026-10-18 03:50:07,692.692 INFO    ] 2026-10-18 03:50:07
[2026-10-18 03:50:07,989.989 INFO    ] 2026-10-18 03:50:07
[2026-10-18 03:50:08,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:50:08,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:50:08,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:50:08,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:50:08,412.412 INFO    ] time= 18/10/2026 03:50:08
[2026-10-18 03:50:08,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:50:08,428.428 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:50:08,510.510 INFO    ] No existing commands found in stream
[2026-10-18 03:50:13,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:50:13,525.525 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-18 03:50:14,107.107 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 03:50:14,109.109 INFO    ] Checking for system updates...
[2026-10-18 03:50:14,145.145 INFO    ] 200
[2026-10-18 03:50:14,147.147 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:50:14,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:50:14,207.207 INFO    ] No update needed
[2026-10-18 03:50:14,209.209 INFO    ] Checking for camera pi updates...
[2026-10-18 03:50:14,247.247 INFO    ] 200
[2026-10-18 03:50:14,250.250 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:50:14,291.291 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:50:24,306.306 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:50:24,341.341 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:50:24,350.350 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:50:24,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:50:24,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:50:24,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:50:26,403.403 INFO    ] ================================================
[2026-10-18 03:50:26,419.419 INFO    ] Launching Daemon at Sun Oct 18 03:50:26 IST 2026
[2026-10-18 03:50:26,431.431 INFO    ] ================================================
[2026-10-18 03:50:27,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:50:27
[2026-10-18 03:50:27,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:50:27,859.859 INFO    ] Initializing speech engine...
[2026-10-18 03:50:27,884.884 INFO    ] 2026-10-18 03:50:27
[2026-10-18 03:50:28,159.159 INFO    ] 2026-10-18 03:50:28
[2026-10-18 03:50:28,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:50:28,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:50:28,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:50:28,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:50:28,547.547 INFO    ] time= 18/10/2026 03:50:28
[2026-10-18 03:50:28,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:50:28,572.572 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:50:28,676.676 INFO    ] No existing commands found in stream
[2026-10-18 03:50:33,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:50:33,690.690 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-18 03:50:36,535.535 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:50:36,538.538 INFO    ] Checking for system updates...
[2026-10-18 03:50:36,574.574 INFO    ] 200
[2026-10-18 03:50:36,576.576 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:50:36,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:50:36,638.638 INFO    ] No update needed
[2026-10-18 03:50:36,641.641 INFO    ] Checking for camera pi updates...
[2026-10-18 03:50:36,674.674 INFO    ] 200
[2026-10-18 03:50:36,676.676 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:50:36,718.718 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:50:46,733.733 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:50:46,771.771 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:50:46,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:50:46,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:50:46,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:50:46,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:50:48,836.836 INFO    ] ================================================
[2026-10-18 03:50:48,852.852 INFO    ] Launching Daemon at Sun Oct 18 03:50:48 IST 2026
[2026-10-18 03:50:48,864.864 INFO    ] ================================================
[2026-10-18 03:50:49,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:50:49
[2026-10-18 03:50:50,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:50:50,376.376 INFO    ] Initializing speech engine...
[2026-10-18 03:50:50,383.383 INFO    ] 2026-10-18 03:50:50
[2026-10-18 03:50:50,644.644 INFO    ] 2026-10-18 03:50:50
[2026-10-18 03:50:50,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:50:50,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:50:50,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:50:51,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:50:51,169.169 INFO    ] time= 18/10/2026 03:50:51
[2026-10-18 03:50:51,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:50:51,212.212 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:50:51,343.343 INFO    ] No existing commands found in stream
[2026-10-18 03:50:56,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:50:56,361.361 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-18 03:51:00,668.668 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:51:00,671.671 INFO    ] Checking for system updates...
[2026-10-18 03:51:00,710.710 INFO    ] 200
[2026-10-18 03:51:00,713.713 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:51:00,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:51:00,775.775 INFO    ] No update needed
[2026-10-18 03:51:00,778.778 INFO    ] Checking for camera pi updates...
[2026-10-18 03:51:00,815.815 INFO    ] 200
[2026-10-18 03:51:00,818.818 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:51:00,858.858 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:51:10,873.873 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:51:10,909.909 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:51:10,919.919 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:51:10,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:51:10,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:51:10,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:51:12,973.973 INFO    ] ================================================
[2026-10-18 03:51:12,989.989 INFO    ] Launching Daemon at Sun Oct 18 03:51:12 IST 2026
[2026-10-18 03:51:13,001.001 INFO    ] ================================================
[2026-10-18 03:51:13,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:51:13
[2026-10-18 03:51:14,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:51:14,610.610 INFO    ] Initializing speech engine...
[2026-10-18 03:51:14,619.619 INFO    ] 2026-10-18 03:51:14
[2026-10-18 03:51:14,906.906 INFO    ] 2026-10-18 03:51:14
[2026-10-18 03:51:14,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:51:15,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:51:15,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:51:15,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:51:15,458.458 INFO    ] time= 18/10/2026 03:51:15
[2026-10-18 03:51:15,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:51:15,486.486 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:51:15,626.626 INFO    ] No existing commands found in stream
[2026-10-18 03:51:20,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:51:20,655.655 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-18 03:51:21,653.653 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:51:21,655.655 INFO    ] Checking for system updates...
[2026-10-18 03:51:21,691.691 INFO    ] 200
[2026-10-18 03:51:21,693.693 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:51:21,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:51:21,754.754 INFO    ] No update needed
[2026-10-18 03:51:21,758.758 INFO    ] Checking for camera pi updates...
[2026-10-18 03:51:21,801.801 INFO    ] 200
[2026-10-18 03:51:21,803.803 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:51:21,847.847 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:51:31,862.862 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:51:31,899.899 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:51:31,909.909 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:51:31,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:51:31,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:51:31,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:51:33,964.964 INFO    ] ================================================
[2026-10-18 03:51:33,979.979 INFO    ] Launching Daemon at Sun Oct 18 03:51:33 IST 2026
[2026-10-18 03:51:33,990.990 INFO    ] ================================================
[2026-10-18 03:51:34,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:51:34
[2026-10-18 03:51:35,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:51:35,524.524 INFO    ] Initializing speech engine...
[2026-10-18 03:51:35,535.535 INFO    ] 2026-10-18 03:51:35
[2026-10-18 03:51:35,847.847 INFO    ] 2026-10-18 03:51:35
[2026-10-18 03:51:35,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:51:36,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:51:36,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:51:36,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:51:36,361.361 INFO    ] time= 18/10/2026 03:51:36
[2026-10-18 03:51:36,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:51:36,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:51:36,517.517 INFO    ] No existing commands found in stream
[2026-10-18 03:51:41,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:51:41,541.541 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-18 03:51:42,440.440 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:51:42,443.443 INFO    ] Checking for system updates...
[2026-10-18 03:51:42,497.497 INFO    ] 200
[2026-10-18 03:51:42,500.500 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 03:51:42,502.502 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-18 03:51:42,505.505 INFO    ] Checking for camera pi updates...
[2026-10-18 03:51:42,554.554 INFO    ] 200
[2026-10-18 03:51:42,557.557 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 03:51:42,559.559 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-18 03:51:42,562.562 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:51:42,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:51:42,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:51:42,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:51:44,617.617 INFO    ] ================================================
[2026-10-18 03:51:44,633.633 INFO    ] Launching Daemon at Sun Oct 18 03:51:44 IST 2026
[2026-10-18 03:51:44,645.645 INFO    ] ================================================
[2026-10-18 03:51:45,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:51:45
[2026-10-18 03:51:45,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:51:46,102.102 INFO    ] Initializing speech engine...
[2026-10-18 03:51:46,110.110 INFO    ] 2026-10-18 03:51:46
[2026-10-18 03:51:46,407.407 INFO    ] 2026-10-18 03:51:46
[2026-10-18 03:51:46,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:51:46,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:51:46,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:51:46,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:51:46,831.831 INFO    ] time= 18/10/2026 03:51:46
[2026-10-18 03:51:46,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:51:46,843.843 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:51:46,994.994 INFO    ] No existing commands found in stream
[2026-10-18 03:51:52,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:51:52,021.021 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-18 03:51:55,426.426 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:51:55,428.428 INFO    ] Checking for system updates...
[2026-10-18 03:51:55,469.469 INFO    ] 200
[2026-10-18 03:51:55,471.471 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:51:55,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:51:55,533.533 INFO    ] No update needed
[2026-10-18 03:51:55,535.535 INFO    ] Checking for camera pi updates...
[2026-10-18 03:51:55,568.568 INFO    ] 200
[2026-10-18 03:51:55,571.571 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:51:55,611.611 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:52:05,622.622 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:52:05,657.657 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:52:05,667.667 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:52:05,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:52:05,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:52:05,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:52:07,720.720 INFO    ] ================================================
[2026-10-18 03:52:07,736.736 INFO    ] Launching Daemon at Sun Oct 18 03:52:07 IST 2026
[2026-10-18 03:52:07,747.747 INFO    ] ================================================
[2026-10-18 03:52:08,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:52:08
[2026-10-18 03:52:09,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:52:09,381.381 INFO    ] Initializing speech engine...
[2026-10-18 03:52:09,395.395 INFO    ] 2026-10-18 03:52:09
[2026-10-18 03:52:09,709.709 INFO    ] 2026-10-18 03:52:09
[2026-10-18 03:52:09,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:52:10,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:52:10,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:52:10,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:52:10,357.357 INFO    ] time= 18/10/2026 03:52:10
[2026-10-18 03:52:10,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:52:10,448.448 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:52:10,619.619 INFO    ] No existing commands found in stream
[2026-10-18 03:52:15,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:52:15,648.648 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-18 03:52:17,367.367 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:52:17,370.370 INFO    ] Checking for system updates...
[2026-10-18 03:52:17,408.408 INFO    ] 200
[2026-10-18 03:52:17,411.411 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:52:17,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:52:17,473.473 INFO    ] No update needed
[2026-10-18 03:52:17,476.476 INFO    ] Checking for camera pi updates...
[2026-10-18 03:52:17,511.511 INFO    ] 200
[2026-10-18 03:52:17,514.514 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:52:17,556.556 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:52:27,573.573 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:52:27,613.613 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:52:27,624.624 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:52:27,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:52:27,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:52:27,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:52:29,680.680 INFO    ] ================================================
[2026-10-18 03:52:29,696.696 INFO    ] Launching Daemon at Sun Oct 18 03:52:29 IST 2026
[2026-10-18 03:52:29,707.707 INFO    ] ================================================
[2026-10-18 03:52:30,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:52:30
[2026-10-18 03:52:30,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:52:31,277.277 INFO    ] Initializing speech engine...
[2026-10-18 03:52:31,286.286 INFO    ] 2026-10-18 03:52:31
[2026-10-18 03:52:31,560.560 INFO    ] 2026-10-18 03:52:31
[2026-10-18 03:52:31,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:52:31,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:52:31,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:52:32,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:52:32,143.143 INFO    ] time= 18/10/2026 03:52:32
[2026-10-18 03:52:32,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:52:32,173.173 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:52:32,312.312 INFO    ] No existing commands found in stream
[2026-10-18 03:52:37,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:52:37,341.341 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-18 03:52:38,039.039 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:52:38,042.042 INFO    ] Checking for system updates...
[2026-10-18 03:52:38,078.078 INFO    ] 200
[2026-10-18 03:52:38,081.081 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:52:38,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:52:38,143.143 INFO    ] No update needed
[2026-10-18 03:52:38,146.146 INFO    ] Checking for camera pi updates...
[2026-10-18 03:52:38,184.184 INFO    ] 200
[2026-10-18 03:52:38,187.187 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:52:38,233.233 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:52:48,253.253 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:52:48,293.293 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:52:48,304.304 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:52:48,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:52:48,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:52:48,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:52:50,359.359 INFO    ] ================================================
[2026-10-18 03:52:50,375.375 INFO    ] Launching Daemon at Sun Oct 18 03:52:50 IST 2026
[2026-10-18 03:52:50,386.386 INFO    ] ================================================
[2026-10-18 03:52:50,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:52:50
[2026-10-18 03:52:51,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:52:51,788.788 INFO    ] Initializing speech engine...
[2026-10-18 03:52:51,810.810 INFO    ] 2026-10-18 03:52:51
[2026-10-18 03:52:52,066.066 INFO    ] 2026-10-18 03:52:52
[2026-10-18 03:52:52,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:52:52,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:52:52,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:52:52,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:52:52,548.548 INFO    ] time= 18/10/2026 03:52:52
[2026-10-18 03:52:52,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:52:52,643.643 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:52:52,793.793 INFO    ] No existing commands found in stream
[2026-10-18 03:52:57,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:52:57,812.812 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-18 03:53:01,832.832 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:53:01,839.839 INFO    ] Checking for system updates...
[2026-10-18 03:53:01,896.896 INFO    ] 200
[2026-10-18 03:53:01,899.899 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:53:02,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:53:02,033.033 INFO    ] No update needed
[2026-10-18 03:53:02,037.037 INFO    ] Checking for camera pi updates...
[2026-10-18 03:53:02,091.091 INFO    ] 200
[2026-10-18 03:53:02,094.094 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:53:02,152.152 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:53:12,169.169 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:53:12,204.204 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:53:12,214.214 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:53:12,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:53:12,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:53:12,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:53:14,270.270 INFO    ] ================================================
[2026-10-18 03:53:14,284.284 INFO    ] Launching Daemon at Sun Oct 18 03:53:14 IST 2026
[2026-10-18 03:53:14,295.295 INFO    ] ================================================
[2026-10-18 03:53:14,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:53:14
[2026-10-18 03:53:15,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:53:15,792.792 INFO    ] Initializing speech engine...
[2026-10-18 03:53:15,800.800 INFO    ] 2026-10-18 03:53:15
[2026-10-18 03:53:16,063.063 INFO    ] 2026-10-18 03:53:16
[2026-10-18 03:53:16,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:53:16,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:53:16,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:53:16,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:53:16,619.619 INFO    ] time= 18/10/2026 03:53:16
[2026-10-18 03:53:16,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:53:16,641.641 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:53:16,775.775 INFO    ] No existing commands found in stream
[2026-10-18 03:53:21,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:53:21,793.793 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-18 03:53:24,176.176 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:53:24,178.178 INFO    ] Checking for system updates...
[2026-10-18 03:53:24,216.216 INFO    ] 200
[2026-10-18 03:53:24,218.218 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:53:24,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:53:24,273.273 INFO    ] No update needed
[2026-10-18 03:53:24,276.276 INFO    ] Checking for camera pi updates...
[2026-10-18 03:53:24,310.310 INFO    ] 200
[2026-10-18 03:53:24,312.312 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:53:24,353.353 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:53:34,368.368 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:53:34,403.403 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:53:34,413.413 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:53:34,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:53:34,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:53:34,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:53:36,466.466 INFO    ] ================================================
[2026-10-18 03:53:36,481.481 INFO    ] Launching Daemon at Sun Oct 18 03:53:36 IST 2026
[2026-10-18 03:53:36,492.492 INFO    ] ================================================
[2026-10-18 03:53:37,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:53:37
[2026-10-18 03:53:37,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:53:38,129.129 INFO    ] Initializing speech engine...
[2026-10-18 03:53:38,143.143 INFO    ] 2026-10-18 03:53:38
[2026-10-18 03:53:38,424.424 INFO    ] 2026-10-18 03:53:38
[2026-10-18 03:53:38,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:53:38,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:53:38,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:53:38,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:53:38,933.933 INFO    ] time= 18/10/2026 03:53:38
[2026-10-18 03:53:38,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:53:39,015.015 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:53:39,162.162 INFO    ] No existing commands found in stream
[2026-10-18 03:53:44,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:53:44,180.180 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-18 03:53:47,320.320 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 03:53:47,323.323 INFO    ] Checking for system updates...
[2026-10-18 03:53:47,363.363 INFO    ] 200
[2026-10-18 03:53:47,365.365 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:53:47,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:53:47,421.421 INFO    ] No update needed
[2026-10-18 03:53:47,424.424 INFO    ] Checking for camera pi updates...
[2026-10-18 03:53:47,462.462 INFO    ] 200
[2026-10-18 03:53:47,465.465 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:53:47,507.507 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:53:57,523.523 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:53:57,564.564 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:53:57,575.575 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:53:57,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:53:57,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:53:57,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:53:59,630.630 INFO    ] ================================================
[2026-10-18 03:53:59,646.646 INFO    ] Launching Daemon at Sun Oct 18 03:53:59 IST 2026
[2026-10-18 03:53:59,656.656 INFO    ] ================================================
[2026-10-18 03:54:00,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:54:00
[2026-10-18 03:54:00,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:54:01,074.074 INFO    ] Initializing speech engine...
[2026-10-18 03:54:01,092.092 INFO    ] 2026-10-18 03:54:01
[2026-10-18 03:54:01,346.346 INFO    ] 2026-10-18 03:54:01
[2026-10-18 03:54:01,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:54:01,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:54:01,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:54:01,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:54:01,926.926 INFO    ] time= 18/10/2026 03:54:01
[2026-10-18 03:54:01,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:54:01,933.933 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:54:02,009.009 INFO    ] No existing commands found in stream
[2026-10-18 03:54:07,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:54:07,022.022 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-18 03:54:08,146.146 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:54:08,149.149 INFO    ] Checking for system updates...
[2026-10-18 03:54:08,185.185 INFO    ] 200
[2026-10-18 03:54:08,188.188 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:54:08,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:54:08,244.244 INFO    ] No update needed
[2026-10-18 03:54:08,246.246 INFO    ] Checking for camera pi updates...
[2026-10-18 03:54:08,280.280 INFO    ] 200
[2026-10-18 03:54:08,282.282 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:54:08,323.323 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:54:18,336.336 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:54:18,371.371 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:54:18,381.381 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:54:18,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:54:18,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:54:18,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:54:20,436.436 INFO    ] ================================================
[2026-10-18 03:54:20,451.451 INFO    ] Launching Daemon at Sun Oct 18 03:54:20 IST 2026
[2026-10-18 03:54:20,462.462 INFO    ] ================================================
[2026-10-18 03:54:21,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:54:21
[2026-10-18 03:54:21,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:54:21,940.940 INFO    ] Initializing speech engine...
[2026-10-18 03:54:21,954.954 INFO    ] 2026-10-18 03:54:21
[2026-10-18 03:54:22,264.264 INFO    ] 2026-10-18 03:54:22
[2026-10-18 03:54:22,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:54:22,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:54:22,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:54:22,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:54:22,772.772 INFO    ] time= 18/10/2026 03:54:22
[2026-10-18 03:54:22,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:54:22,820.820 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:54:22,928.928 INFO    ] No existing commands found in stream
[2026-10-18 03:54:27,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:54:27,961.961 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-18 03:54:30,699.699 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:54:30,702.702 INFO    ] Checking for system updates...
[2026-10-18 03:54:30,739.739 INFO    ] 200
[2026-10-18 03:54:30,741.741 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:54:30,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:54:30,796.796 INFO    ] No update needed
[2026-10-18 03:54:30,798.798 INFO    ] Checking for camera pi updates...
[2026-10-18 03:54:30,832.832 INFO    ] 200
[2026-10-18 03:54:30,835.835 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:54:30,875.875 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:54:40,888.888 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:54:40,922.922 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:54:40,932.932 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:54:40,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:54:40,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:54:40,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:54:42,984.984 INFO    ] ================================================
[2026-10-18 03:54:43,000.000 INFO    ] Launching Daemon at Sun Oct 18 03:54:42 IST 2026
[2026-10-18 03:54:43,010.010 INFO    ] ================================================
[2026-10-18 03:54:43,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:54:43
[2026-10-18 03:54:44,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:54:44,655.655 INFO    ] Initializing speech engine...
[2026-10-18 03:54:44,666.666 INFO    ] 2026-10-18 03:54:44
[2026-10-18 03:54:44,975.975 INFO    ] 2026-10-18 03:54:44
[2026-10-18 03:54:45,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:54:45,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:54:45,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:54:45,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:54:45,484.484 INFO    ] time= 18/10/2026 03:54:45
[2026-10-18 03:54:45,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:54:45,529.529 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:54:45,643.643 INFO    ] No existing commands found in stream
[2026-10-18 03:54:50,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:54:50,670.670 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-18 03:54:53,449.449 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:54:53,451.451 INFO    ] Checking for system updates...
[2026-10-18 03:54:53,488.488 INFO    ] 200
[2026-10-18 03:54:53,490.490 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:54:53,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:54:53,546.546 INFO    ] No update needed
[2026-10-18 03:54:53,548.548 INFO    ] Checking for camera pi updates...
[2026-10-18 03:54:53,586.586 INFO    ] 200
[2026-10-18 03:54:53,588.588 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:54:53,628.628 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:55:03,641.641 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:55:03,678.678 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:55:03,689.689 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:55:03,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:55:03,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:55:03,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:55:05,747.747 INFO    ] ================================================
[2026-10-18 03:55:05,762.762 INFO    ] Launching Daemon at Sun Oct 18 03:55:05 IST 2026
[2026-10-18 03:55:05,773.773 INFO    ] ================================================
[2026-10-18 03:55:06,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:55:06
[2026-10-18 03:55:06,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:55:07,230.230 INFO    ] Initializing speech engine...
[2026-10-18 03:55:07,235.235 INFO    ] 2026-10-18 03:55:07
[2026-10-18 03:55:07,499.499 INFO    ] 2026-10-18 03:55:07
[2026-10-18 03:55:07,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:55:07,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:55:07,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:55:08,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:55:08,043.043 INFO    ] time= 18/10/2026 03:55:08
[2026-10-18 03:55:08,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:55:08,068.068 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:55:08,193.193 INFO    ] No existing commands found in stream
[2026-10-18 03:55:13,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:55:13,212.212 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-18 03:55:14,458.458 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:55:14,460.460 INFO    ] Checking for system updates...
[2026-10-18 03:55:14,498.498 INFO    ] 200
[2026-10-18 03:55:14,501.501 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:55:14,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:55:14,555.555 INFO    ] No update needed
[2026-10-18 03:55:14,557.557 INFO    ] Checking for camera pi updates...
[2026-10-18 03:55:14,591.591 INFO    ] 200
[2026-10-18 03:55:14,593.593 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:55:14,633.633 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:55:24,648.648 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:55:24,684.684 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:55:24,694.694 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:55:24,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:55:24,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:55:24,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:55:26,747.747 INFO    ] ================================================
[2026-10-18 03:55:26,762.762 INFO    ] Launching Daemon at Sun Oct 18 03:55:26 IST 2026
[2026-10-18 03:55:26,774.774 INFO    ] ================================================
[2026-10-18 03:55:27,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:55:27
[2026-10-18 03:55:27,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:55:28,249.249 INFO    ] Initializing speech engine...
[2026-10-18 03:55:28,259.259 INFO    ] 2026-10-18 03:55:28
[2026-10-18 03:55:28,535.535 INFO    ] 2026-10-18 03:55:28
[2026-10-18 03:55:28,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:55:28,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:55:28,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:55:28,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:55:28,970.970 INFO    ] time= 18/10/2026 03:55:28
[2026-10-18 03:55:28,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:55:29,024.024 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:55:29,173.173 INFO    ] No existing commands found in stream
[2026-10-18 03:55:34,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:55:34,202.202 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-18 03:55:37,763.763 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:55:37,766.766 INFO    ] Checking for system updates...
[2026-10-18 03:55:37,802.802 INFO    ] 200
[2026-10-18 03:55:37,805.805 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:55:37,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:55:37,860.860 INFO    ] No update needed
[2026-10-18 03:55:37,862.862 INFO    ] Checking for camera pi updates...
[2026-10-18 03:55:37,896.896 INFO    ] 200
[2026-10-18 03:55:37,898.898 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:55:37,938.938 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:55:47,952.952 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:55:47,987.987 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:55:47,997.997 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:55:47,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:55:48,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:55:48,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:55:50,049.049 INFO    ] ================================================
[2026-10-18 03:55:50,064.064 INFO    ] Launching Daemon at Sun Oct 18 03:55:50 IST 2026
[2026-10-18 03:55:50,075.075 INFO    ] ================================================
[2026-10-18 03:55:50,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:55:50
[2026-10-18 03:55:51,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:55:51,479.479 INFO    ] Initializing speech engine...
[2026-10-18 03:55:51,491.491 INFO    ] 2026-10-18 03:55:51
[2026-10-18 03:55:51,757.757 INFO    ] 2026-10-18 03:55:51
[2026-10-18 03:55:51,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:55:51,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:55:52,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:55:52,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:55:52,249.249 INFO    ] time= 18/10/2026 03:55:52
[2026-10-18 03:55:52,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:55:52,327.327 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:55:52,457.457 INFO    ] No existing commands found in stream
[2026-10-18 03:55:57,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:55:57,487.487 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-18 03:56:01,778.778 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 03:56:01,781.781 INFO    ] Checking for system updates...
[2026-10-18 03:56:01,831.831 INFO    ] 200
[2026-10-18 03:56:01,836.836 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:56:01,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:56:01,909.909 INFO    ] No update needed
[2026-10-18 03:56:01,913.913 INFO    ] Checking for camera pi updates...
[2026-10-18 03:56:01,961.961 INFO    ] 200
[2026-10-18 03:56:01,965.965 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:56:02,012.012 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:56:12,028.028 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:56:12,068.068 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:56:12,079.079 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:56:12,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:56:12,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:56:12,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:56:14,135.135 INFO    ] ================================================
[2026-10-18 03:56:14,151.151 INFO    ] Launching Daemon at Sun Oct 18 03:56:14 IST 2026
[2026-10-18 03:56:14,162.162 INFO    ] ================================================
[2026-10-18 03:56:14,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:56:14
[2026-10-18 03:56:15,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:56:15,609.609 INFO    ] Initializing speech engine...
[2026-10-18 03:56:15,625.625 INFO    ] 2026-10-18 03:56:15
[2026-10-18 03:56:15,909.909 INFO    ] 2026-10-18 03:56:15
[2026-10-18 03:56:15,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:56:16,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:56:16,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:56:16,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:56:16,323.323 INFO    ] time= 18/10/2026 03:56:16
[2026-10-18 03:56:16,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:56:16,390.390 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:56:16,504.504 INFO    ] No existing commands found in stream
[2026-10-18 03:56:21,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:56:21,534.534 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-18 03:56:24,347.347 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 03:56:24,349.349 INFO    ] Checking for system updates...
[2026-10-18 03:56:24,386.386 INFO    ] 200
[2026-10-18 03:56:24,388.388 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:56:24,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:56:24,450.450 INFO    ] No update needed
[2026-10-18 03:56:24,453.453 INFO    ] Checking for camera pi updates...
[2026-10-18 03:56:24,491.491 INFO    ] 200
[2026-10-18 03:56:24,494.494 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:56:24,540.540 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:56:34,555.555 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:56:34,590.590 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:56:34,599.599 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:56:34,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:56:34,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:56:34,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:56:36,652.652 INFO    ] ================================================
[2026-10-18 03:56:36,667.667 INFO    ] Launching Daemon at Sun Oct 18 03:56:36 IST 2026
[2026-10-18 03:56:36,679.679 INFO    ] ================================================
[2026-10-18 03:56:37,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:56:37
[2026-10-18 03:56:37,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:56:38,123.123 INFO    ] Initializing speech engine...
[2026-10-18 03:56:38,145.145 INFO    ] 2026-10-18 03:56:38
[2026-10-18 03:56:38,423.423 INFO    ] 2026-10-18 03:56:38
[2026-10-18 03:56:38,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:56:38,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:56:38,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:56:38,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:56:38,841.841 INFO    ] time= 18/10/2026 03:56:38
[2026-10-18 03:56:38,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:56:38,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:56:39,007.007 INFO    ] No existing commands found in stream
[2026-10-18 03:56:44,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:56:44,041.041 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-18 03:56:48,535.535 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:56:48,537.537 INFO    ] Checking for system updates...
[2026-10-18 03:56:48,577.577 INFO    ] 200
[2026-10-18 03:56:48,580.580 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:56:48,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:56:48,643.643 INFO    ] No update needed
[2026-10-18 03:56:48,646.646 INFO    ] Checking for camera pi updates...
[2026-10-18 03:56:48,681.681 INFO    ] 200
[2026-10-18 03:56:48,684.684 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:56:48,726.726 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:56:58,740.740 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:56:58,781.781 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:56:58,792.792 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:56:58,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:56:58,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:56:58,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:57:00,847.847 INFO    ] ================================================
[2026-10-18 03:57:00,863.863 INFO    ] Launching Daemon at Sun Oct 18 03:57:00 IST 2026
[2026-10-18 03:57:00,874.874 INFO    ] ================================================
[2026-10-18 03:57:01,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:57:01
[2026-10-18 03:57:02,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:57:02,549.549 INFO    ] Initializing speech engine...
[2026-10-18 03:57:02,564.564 INFO    ] 2026-10-18 03:57:02
[2026-10-18 03:57:02,848.848 INFO    ] 2026-10-18 03:57:02
[2026-10-18 03:57:02,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:57:03,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:57:03,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:57:03,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:57:03,309.309 INFO    ] time= 18/10/2026 03:57:03
[2026-10-18 03:57:03,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:57:03,348.348 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:57:03,423.423 INFO    ] No existing commands found in stream
[2026-10-18 03:57:08,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:57:08,451.451 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-18 03:57:09,583.583 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:57:09,585.585 INFO    ] Checking for system updates...
[2026-10-18 03:57:09,621.621 INFO    ] 200
[2026-10-18 03:57:09,623.623 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:57:09,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:57:09,678.678 INFO    ] No update needed
[2026-10-18 03:57:09,680.680 INFO    ] Checking for camera pi updates...
[2026-10-18 03:57:09,717.717 INFO    ] 200
[2026-10-18 03:57:09,719.719 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:57:09,759.759 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:57:19,774.774 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:57:19,809.809 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:57:19,818.818 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:57:19,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:57:19,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:57:19,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:57:21,871.871 INFO    ] ================================================
[2026-10-18 03:57:21,887.887 INFO    ] Launching Daemon at Sun Oct 18 03:57:21 IST 2026
[2026-10-18 03:57:21,897.897 INFO    ] ================================================
[2026-10-18 03:57:22,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:57:22
[2026-10-18 03:57:23,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:57:23,328.328 INFO    ] Initializing speech engine...
[2026-10-18 03:57:23,337.337 INFO    ] 2026-10-18 03:57:23
[2026-10-18 03:57:23,587.587 INFO    ] 2026-10-18 03:57:23
[2026-10-18 03:57:23,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:57:23,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:57:23,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:57:24,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:57:24,118.118 INFO    ] time= 18/10/2026 03:57:24
[2026-10-18 03:57:24,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:57:24,164.164 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:57:24,297.297 INFO    ] No existing commands found in stream
[2026-10-18 03:57:29,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:57:29,324.324 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-18 03:57:31,402.402 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:57:31,405.405 INFO    ] Checking for system updates...
[2026-10-18 03:57:31,443.443 INFO    ] 200
[2026-10-18 03:57:31,447.447 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:57:31,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:57:31,529.529 INFO    ] No update needed
[2026-10-18 03:57:31,532.532 INFO    ] Checking for camera pi updates...
[2026-10-18 03:57:31,567.567 INFO    ] 200
[2026-10-18 03:57:31,570.570 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:57:31,613.613 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:57:41,632.632 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:57:41,667.667 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:57:41,677.677 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:57:41,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:57:41,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:57:41,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:57:43,744.744 INFO    ] ================================================
[2026-10-18 03:57:43,759.759 INFO    ] Launching Daemon at Sun Oct 18 03:57:43 IST 2026
[2026-10-18 03:57:43,769.769 INFO    ] ================================================
[2026-10-18 03:57:44,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:57:44
[2026-10-18 03:57:44,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:57:45,172.172 INFO    ] Initializing speech engine...
[2026-10-18 03:57:45,195.195 INFO    ] 2026-10-18 03:57:45
[2026-10-18 03:57:45,449.449 INFO    ] 2026-10-18 03:57:45
[2026-10-18 03:57:45,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:57:45,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:57:45,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:57:45,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:57:45,959.959 INFO    ] time= 18/10/2026 03:57:45
[2026-10-18 03:57:46,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:57:46,024.024 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:57:46,152.152 INFO    ] No existing commands found in stream
[2026-10-18 03:57:51,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:57:51,183.183 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-18 03:57:53,447.447 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:57:53,450.450 INFO    ] Checking for system updates...
[2026-10-18 03:57:53,489.489 INFO    ] 200
[2026-10-18 03:57:53,491.491 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:57:53,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:57:53,549.549 INFO    ] No update needed
[2026-10-18 03:57:53,551.551 INFO    ] Checking for camera pi updates...
[2026-10-18 03:57:53,585.585 INFO    ] 200
[2026-10-18 03:57:53,588.588 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:57:53,632.632 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:58:03,646.646 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:58:03,682.682 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:58:03,692.692 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:58:03,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:58:03,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:58:03,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:58:05,749.749 INFO    ] ================================================
[2026-10-18 03:58:05,765.765 INFO    ] Launching Daemon at Sun Oct 18 03:58:05 IST 2026
[2026-10-18 03:58:05,776.776 INFO    ] ================================================
[2026-10-18 03:58:06,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:58:06
[2026-10-18 03:58:06,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:58:07,199.199 INFO    ] Initializing speech engine...
[2026-10-18 03:58:07,207.207 INFO    ] 2026-10-18 03:58:07
[2026-10-18 03:58:07,505.505 INFO    ] 2026-10-18 03:58:07
[2026-10-18 03:58:07,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:58:07,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:58:07,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:58:07,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:58:07,933.933 INFO    ] time= 18/10/2026 03:58:07
[2026-10-18 03:58:07,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:58:08,009.009 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:58:08,130.130 INFO    ] No existing commands found in stream
[2026-10-18 03:58:13,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:58:13,163.163 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-18 03:58:16,249.249 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 03:58:16,251.251 INFO    ] Checking for system updates...
[2026-10-18 03:58:16,291.291 INFO    ] 200
[2026-10-18 03:58:16,294.294 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:58:16,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:58:16,349.349 INFO    ] No update needed
[2026-10-18 03:58:16,352.352 INFO    ] Checking for camera pi updates...
[2026-10-18 03:58:16,387.387 INFO    ] 200
[2026-10-18 03:58:16,390.390 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:58:16,439.439 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:58:26,455.455 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:58:26,489.489 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:58:26,499.499 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:58:26,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:58:26,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:58:26,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:58:28,553.553 INFO    ] ================================================
[2026-10-18 03:58:28,569.569 INFO    ] Launching Daemon at Sun Oct 18 03:58:28 IST 2026
[2026-10-18 03:58:28,580.580 INFO    ] ================================================
[2026-10-18 03:58:29,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:58:29
[2026-10-18 03:58:29,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:58:30,043.043 INFO    ] Initializing speech engine...
[2026-10-18 03:58:30,053.053 INFO    ] 2026-10-18 03:58:30
[2026-10-18 03:58:30,314.314 INFO    ] 2026-10-18 03:58:30
[2026-10-18 03:58:30,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:58:30,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:58:30,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:58:30,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:58:30,859.859 INFO    ] time= 18/10/2026 03:58:30
[2026-10-18 03:58:30,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:58:30,882.882 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:58:31,014.014 INFO    ] No existing commands found in stream
[2026-10-18 03:58:36,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:58:36,037.037 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-18 03:58:40,387.387 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:58:40,390.390 INFO    ] Checking for system updates...
[2026-10-18 03:58:40,427.427 INFO    ] 200
[2026-10-18 03:58:40,430.430 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:58:40,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:58:40,494.494 INFO    ] No update needed
[2026-10-18 03:58:40,497.497 INFO    ] Checking for camera pi updates...
[2026-10-18 03:58:40,530.530 INFO    ] 200
[2026-10-18 03:58:40,533.533 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:58:40,578.578 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:58:50,593.593 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:58:50,628.628 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:58:50,638.638 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:58:50,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:58:50,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:58:50,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:58:52,691.691 INFO    ] ================================================
[2026-10-18 03:58:52,707.707 INFO    ] Launching Daemon at Sun Oct 18 03:58:52 IST 2026
[2026-10-18 03:58:52,718.718 INFO    ] ================================================
[2026-10-18 03:58:53,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:58:53
[2026-10-18 03:58:53,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:58:54,123.123 INFO    ] Initializing speech engine...
[2026-10-18 03:58:54,132.132 INFO    ] 2026-10-18 03:58:54
[2026-10-18 03:58:54,424.424 INFO    ] 2026-10-18 03:58:54
[2026-10-18 03:58:54,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:58:54,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:58:54,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:58:55,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:58:55,059.059 INFO    ] time= 18/10/2026 03:58:55
[2026-10-18 03:58:55,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:58:55,084.084 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:58:55,231.231 INFO    ] No existing commands found in stream
[2026-10-18 03:59:00,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:59:00,250.250 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-18 03:59:02,523.523 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 03:59:02,526.526 INFO    ] Checking for system updates...
[2026-10-18 03:59:02,569.569 INFO    ] 200
[2026-10-18 03:59:02,572.572 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:59:02,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 03:59:02,649.649 INFO    ] No update needed
[2026-10-18 03:59:02,652.652 INFO    ] Checking for camera pi updates...
[2026-10-18 03:59:02,709.709 INFO    ] 200
[2026-10-18 03:59:02,712.712 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:59:02,768.768 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:59:12,783.783 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:59:12,818.818 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:59:12,827.827 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:59:12,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:59:12,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:59:12,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:59:14,879.879 INFO    ] ================================================
[2026-10-18 03:59:14,895.895 INFO    ] Launching Daemon at Sun Oct 18 03:59:14 IST 2026
[2026-10-18 03:59:14,905.905 INFO    ] ================================================
[2026-10-18 03:59:15,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:59:15
[2026-10-18 03:59:16,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:59:16,424.424 INFO    ] Initializing speech engine...
[2026-10-18 03:59:16,433.433 INFO    ] 2026-10-18 03:59:16
[2026-10-18 03:59:16,685.685 INFO    ] 2026-10-18 03:59:16
[2026-10-18 03:59:16,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:59:16,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:59:16,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:59:17,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:59:17,121.121 INFO    ] time= 18/10/2026 03:59:17
[2026-10-18 03:59:17,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:59:17,126.126 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:59:17,244.244 INFO    ] No existing commands found in stream
[2026-10-18 03:59:22,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:59:22,268.268 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-18 03:59:26,033.033 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 03:59:26,035.035 INFO    ] Checking for system updates...
[2026-10-18 03:59:26,071.071 INFO    ] 200
[2026-10-18 03:59:26,073.073 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:59:26,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:59:26,128.128 INFO    ] No update needed
[2026-10-18 03:59:26,130.130 INFO    ] Checking for camera pi updates...
[2026-10-18 03:59:26,171.171 INFO    ] 200
[2026-10-18 03:59:26,174.174 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:59:26,214.214 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 03:59:36,230.230 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 03:59:36,268.268 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 03:59:36,278.278 INFO    ] Script finished. Safe exiting...
[2026-10-18 03:59:36,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 03:59:36,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 03:59:36,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 03:59:38,333.333 INFO    ] ================================================
[2026-10-18 03:59:38,349.349 INFO    ] Launching Daemon at Sun Oct 18 03:59:38 IST 2026
[2026-10-18 03:59:38,365.365 INFO    ] ================================================
[2026-10-18 03:59:38,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 03:59:38
[2026-10-18 03:59:39,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 03:59:39,818.818 INFO    ] Initializing speech engine...
[2026-10-18 03:59:39,824.824 INFO    ] 2026-10-18 03:59:39
[2026-10-18 03:59:40,079.079 INFO    ] 2026-10-18 03:59:40
[2026-10-18 03:59:40,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 03:59:40,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 03:59:40,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 03:59:40,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 03:59:40,620.620 INFO    ] time= 18/10/2026 03:59:40
[2026-10-18 03:59:40,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 03:59:40,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-18 03:59:40,771.771 INFO    ] No existing commands found in stream
[2026-10-18 03:59:45,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 03:59:45,789.789 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-18 03:59:50,117.117 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 03:59:50,120.120 INFO    ] Checking for system updates...
[2026-10-18 03:59:50,156.156 INFO    ] 200
[2026-10-18 03:59:50,159.159 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:59:50,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 03:59:50,218.218 INFO    ] No update needed
[2026-10-18 03:59:50,220.220 INFO    ] Checking for camera pi updates...
[2026-10-18 03:59:50,261.261 INFO    ] 200
[2026-10-18 03:59:50,263.263 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 03:59:50,312.312 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:00:00,327.327 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:00:00,361.361 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:00:00,371.371 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:00:00,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:00:00,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:00:00,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:00:02,536.536 INFO    ] ================================================
[2026-10-18 04:00:02,617.617 INFO    ] Launching Daemon at Sun Oct 18 04:00:02 IST 2026
[2026-10-18 04:00:02,680.680 INFO    ] ================================================
[2026-10-18 04:00:05,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:00:05
[2026-10-18 04:00:06,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:00:06,710.710 INFO    ] Initializing speech engine...
[2026-10-18 04:00:06,723.723 INFO    ] 2026-10-18 04:00:06
[2026-10-18 04:00:07,003.003 INFO    ] 2026-10-18 04:00:06
[2026-10-18 04:00:07,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:00:07,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:00:07,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:00:07,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:00:07,564.564 INFO    ] time= 18/10/2026 04:00:07
[2026-10-18 04:00:07,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:00:07,589.589 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:00:07,717.717 INFO    ] No existing commands found in stream
[2026-10-18 04:00:12,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:00:12,735.735 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-18 04:00:14,592.592 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:00:14,595.595 INFO    ] Checking for system updates...
[2026-10-18 04:00:14,634.634 INFO    ] 200
[2026-10-18 04:00:14,637.637 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:00:14,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:00:14,694.694 INFO    ] No update needed
[2026-10-18 04:00:14,697.697 INFO    ] Checking for camera pi updates...
[2026-10-18 04:00:14,734.734 INFO    ] 200
[2026-10-18 04:00:14,736.736 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:00:14,780.780 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:00:24,796.796 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:00:24,831.831 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:00:24,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:00:24,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:00:24,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:00:24,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:00:26,896.896 INFO    ] ================================================
[2026-10-18 04:00:26,912.912 INFO    ] Launching Daemon at Sun Oct 18 04:00:26 IST 2026
[2026-10-18 04:00:26,924.924 INFO    ] ================================================
[2026-10-18 04:00:27,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:00:27
[2026-10-18 04:00:28,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:00:28,393.393 INFO    ] Initializing speech engine...
[2026-10-18 04:00:28,403.403 INFO    ] 2026-10-18 04:00:28
[2026-10-18 04:00:28,665.665 INFO    ] 2026-10-18 04:00:28
[2026-10-18 04:00:28,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:00:28,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:00:28,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:00:29,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:00:29,221.221 INFO    ] time= 18/10/2026 04:00:29
[2026-10-18 04:00:29,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:00:29,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:00:29,373.373 INFO    ] No existing commands found in stream
[2026-10-18 04:00:34,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:00:34,392.392 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-18 04:00:38,827.827 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:00:38,830.830 INFO    ] Checking for system updates...
[2026-10-18 04:00:38,867.867 INFO    ] 200
[2026-10-18 04:00:38,869.869 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:00:38,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:00:38,955.955 INFO    ] No update needed
[2026-10-18 04:00:38,958.958 INFO    ] Checking for camera pi updates...
[2026-10-18 04:00:38,994.994 INFO    ] 200
[2026-10-18 04:00:38,997.997 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:00:39,037.037 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:00:49,052.052 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:00:49,088.088 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:00:49,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:00:49,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:00:49,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:00:49,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:00:51,151.151 INFO    ] ================================================
[2026-10-18 04:00:51,167.167 INFO    ] Launching Daemon at Sun Oct 18 04:00:51 IST 2026
[2026-10-18 04:00:51,178.178 INFO    ] ================================================
[2026-10-18 04:00:51,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:00:51
[2026-10-18 04:00:52,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:00:52,743.743 INFO    ] Initializing speech engine...
[2026-10-18 04:00:52,752.752 INFO    ] 2026-10-18 04:00:52
[2026-10-18 04:00:53,001.001 INFO    ] 2026-10-18 04:00:52
[2026-10-18 04:00:53,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:00:53,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:00:53,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:00:53,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:00:53,562.562 INFO    ] time= 18/10/2026 04:00:53
[2026-10-18 04:00:53,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:00:53,586.586 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:00:53,717.717 INFO    ] No existing commands found in stream
[2026-10-18 04:00:58,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:00:58,739.739 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-18 04:01:00,548.548 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:01:00,550.550 INFO    ] Checking for system updates...
[2026-10-18 04:01:00,587.587 INFO    ] 200
[2026-10-18 04:01:00,589.589 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:01:00,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:01:00,649.649 INFO    ] No update needed
[2026-10-18 04:01:00,651.651 INFO    ] Checking for camera pi updates...
[2026-10-18 04:01:00,685.685 INFO    ] 200
[2026-10-18 04:01:00,688.688 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:01:00,732.732 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:01:10,748.748 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:01:10,783.783 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:01:10,792.792 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:01:10,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:01:10,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:01:10,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:01:12,847.847 INFO    ] ================================================
[2026-10-18 04:01:12,863.863 INFO    ] Launching Daemon at Sun Oct 18 04:01:12 IST 2026
[2026-10-18 04:01:12,875.875 INFO    ] ================================================
[2026-10-18 04:01:13,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:01:13
[2026-10-18 04:01:14,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:01:14,287.287 INFO    ] Initializing speech engine...
[2026-10-18 04:01:14,300.300 INFO    ] 2026-10-18 04:01:14
[2026-10-18 04:01:14,566.566 INFO    ] 2026-10-18 04:01:14
[2026-10-18 04:01:14,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:01:14,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:01:14,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:01:15,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:01:15,133.133 INFO    ] time= 18/10/2026 04:01:15
[2026-10-18 04:01:15,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:01:15,161.161 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:01:15,278.278 INFO    ] No existing commands found in stream
[2026-10-18 04:01:20,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:01:20,304.304 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-18 04:01:24,696.696 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:01:24,699.699 INFO    ] Checking for system updates...
[2026-10-18 04:01:24,734.734 INFO    ] 200
[2026-10-18 04:01:24,737.737 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:01:24,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:01:24,795.795 INFO    ] No update needed
[2026-10-18 04:01:24,798.798 INFO    ] Checking for camera pi updates...
[2026-10-18 04:01:24,835.835 INFO    ] 200
[2026-10-18 04:01:24,838.838 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:01:24,878.878 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:01:34,893.893 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:01:34,933.933 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:01:34,943.943 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:01:34,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:01:34,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:01:34,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:01:37,000.000 INFO    ] ================================================
[2026-10-18 04:01:37,016.016 INFO    ] Launching Daemon at Sun Oct 18 04:01:37 IST 2026
[2026-10-18 04:01:37,027.027 INFO    ] ================================================
[2026-10-18 04:01:37,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:01:37
[2026-10-18 04:01:38,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:01:38,534.534 INFO    ] Initializing speech engine...
[2026-10-18 04:01:38,544.544 INFO    ] 2026-10-18 04:01:38
[2026-10-18 04:01:38,791.791 INFO    ] 2026-10-18 04:01:38
[2026-10-18 04:01:38,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:01:39,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:01:39,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:01:39,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:01:39,299.299 INFO    ] time= 18/10/2026 04:01:39
[2026-10-18 04:01:39,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:01:39,374.374 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:01:39,506.506 INFO    ] No existing commands found in stream
[2026-10-18 04:01:44,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:01:44,537.537 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-18 04:01:48,393.393 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:01:48,395.395 INFO    ] Checking for system updates...
[2026-10-18 04:01:48,431.431 INFO    ] 200
[2026-10-18 04:01:48,433.433 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:01:48,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:01:48,488.488 INFO    ] No update needed
[2026-10-18 04:01:48,490.490 INFO    ] Checking for camera pi updates...
[2026-10-18 04:01:48,530.530 INFO    ] 200
[2026-10-18 04:01:48,532.532 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:01:48,572.572 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:01:58,587.587 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:01:58,621.621 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:01:58,630.630 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:01:58,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:01:58,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:01:58,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:02:00,686.686 INFO    ] ================================================
[2026-10-18 04:02:00,702.702 INFO    ] Launching Daemon at Sun Oct 18 04:02:00 IST 2026
[2026-10-18 04:02:00,714.714 INFO    ] ================================================
[2026-10-18 04:02:01,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:02:01
[2026-10-18 04:02:01,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:02:02,389.389 INFO    ] Initializing speech engine...
[2026-10-18 04:02:02,395.395 INFO    ] 2026-10-18 04:02:02
[2026-10-18 04:02:02,679.679 INFO    ] 2026-10-18 04:02:02
[2026-10-18 04:02:02,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:02:02,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:02:02,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:02:03,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:02:03,143.143 INFO    ] time= 18/10/2026 04:02:03
[2026-10-18 04:02:03,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:02:03,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:02:03,232.232 INFO    ] No existing commands found in stream
[2026-10-18 04:02:08,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:02:08,246.246 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-18 04:02:10,297.297 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:02:10,300.300 INFO    ] Checking for system updates...
[2026-10-18 04:02:10,336.336 INFO    ] 200
[2026-10-18 04:02:10,339.339 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:02:10,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:02:10,401.401 INFO    ] No update needed
[2026-10-18 04:02:10,403.403 INFO    ] Checking for camera pi updates...
[2026-10-18 04:02:10,437.437 INFO    ] 200
[2026-10-18 04:02:10,440.440 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:02:10,481.481 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:02:20,497.497 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:02:20,535.535 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:02:20,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:02:20,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:02:20,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:02:20,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:02:22,601.601 INFO    ] ================================================
[2026-10-18 04:02:22,617.617 INFO    ] Launching Daemon at Sun Oct 18 04:02:22 IST 2026
[2026-10-18 04:02:22,628.628 INFO    ] ================================================
[2026-10-18 04:02:23,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:02:23
[2026-10-18 04:02:23,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:02:24,117.117 INFO    ] Initializing speech engine...
[2026-10-18 04:02:24,131.131 INFO    ] 2026-10-18 04:02:24
[2026-10-18 04:02:24,417.417 INFO    ] 2026-10-18 04:02:24
[2026-10-18 04:02:24,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:02:24,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:02:24,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:02:24,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:02:24,966.966 INFO    ] time= 18/10/2026 04:02:24
[2026-10-18 04:02:24,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:02:25,014.014 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:02:25,154.154 INFO    ] No existing commands found in stream
[2026-10-18 04:02:30,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:02:30,188.188 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-18 04:02:31,536.536 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:02:31,539.539 INFO    ] Checking for system updates...
[2026-10-18 04:02:31,579.579 INFO    ] 200
[2026-10-18 04:02:31,582.582 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:02:31,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:02:31,642.642 INFO    ] No update needed
[2026-10-18 04:02:31,644.644 INFO    ] Checking for camera pi updates...
[2026-10-18 04:02:31,682.682 INFO    ] 200
[2026-10-18 04:02:31,684.684 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:02:31,733.733 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:02:41,750.750 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:02:41,788.788 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:02:41,798.798 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:02:41,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:02:41,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:02:41,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:02:43,854.854 INFO    ] ================================================
[2026-10-18 04:02:43,869.869 INFO    ] Launching Daemon at Sun Oct 18 04:02:43 IST 2026
[2026-10-18 04:02:43,880.880 INFO    ] ================================================
[2026-10-18 04:02:44,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:02:44
[2026-10-18 04:02:45,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:02:45,449.449 INFO    ] Initializing speech engine...
[2026-10-18 04:02:45,463.463 INFO    ] 2026-10-18 04:02:45
[2026-10-18 04:02:45,768.768 INFO    ] 2026-10-18 04:02:45
[2026-10-18 04:02:45,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:02:46,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:02:46,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:02:46,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:02:46,308.308 INFO    ] time= 18/10/2026 04:02:46
[2026-10-18 04:02:46,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:02:46,359.359 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:02:46,504.504 INFO    ] No existing commands found in stream
[2026-10-18 04:02:51,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:02:51,537.537 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-18 04:02:55,311.311 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:02:55,314.314 INFO    ] Checking for system updates...
[2026-10-18 04:02:55,354.354 INFO    ] 200
[2026-10-18 04:02:55,357.357 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:02:55,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:02:55,414.414 INFO    ] No update needed
[2026-10-18 04:02:55,416.416 INFO    ] Checking for camera pi updates...
[2026-10-18 04:02:55,451.451 INFO    ] 200
[2026-10-18 04:02:55,454.454 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:02:55,497.497 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:03:05,513.513 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:03:05,551.551 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:03:05,561.561 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:03:05,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:03:05,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:03:05,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:03:07,616.616 INFO    ] ================================================
[2026-10-18 04:03:07,631.631 INFO    ] Launching Daemon at Sun Oct 18 04:03:07 IST 2026
[2026-10-18 04:03:07,643.643 INFO    ] ================================================
[2026-10-18 04:03:08,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:03:08
[2026-10-18 04:03:08,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:03:09,111.111 INFO    ] Initializing speech engine...
[2026-10-18 04:03:09,120.120 INFO    ] 2026-10-18 04:03:09
[2026-10-18 04:03:09,376.376 INFO    ] 2026-10-18 04:03:09
[2026-10-18 04:03:09,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:03:09,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:03:09,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:03:09,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:03:09,884.884 INFO    ] time= 18/10/2026 04:03:09
[2026-10-18 04:03:09,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:03:09,987.987 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:03:10,152.152 INFO    ] No existing commands found in stream
[2026-10-18 04:03:15,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:03:15,178.178 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-18 04:03:15,777.777 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:03:15,779.779 INFO    ] Checking for system updates...
[2026-10-18 04:03:15,815.815 INFO    ] 200
[2026-10-18 04:03:15,817.817 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:03:15,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:03:15,875.875 INFO    ] No update needed
[2026-10-18 04:03:15,878.878 INFO    ] Checking for camera pi updates...
[2026-10-18 04:03:15,911.911 INFO    ] 200
[2026-10-18 04:03:15,913.913 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:03:15,957.957 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:03:25,973.973 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:03:26,010.010 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:03:26,022.022 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:03:26,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:03:26,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:03:26,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:03:28,078.078 INFO    ] ================================================
[2026-10-18 04:03:28,094.094 INFO    ] Launching Daemon at Sun Oct 18 04:03:28 IST 2026
[2026-10-18 04:03:28,105.105 INFO    ] ================================================
[2026-10-18 04:03:28,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:03:28
[2026-10-18 04:03:29,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:03:29,569.569 INFO    ] Initializing speech engine...
[2026-10-18 04:03:29,579.579 INFO    ] 2026-10-18 04:03:29
[2026-10-18 04:03:29,840.840 INFO    ] 2026-10-18 04:03:29
[2026-10-18 04:03:29,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:03:30,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:03:30,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:03:30,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:03:30,347.347 INFO    ] time= 18/10/2026 04:03:30
[2026-10-18 04:03:30,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:03:30,456.456 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:03:30,586.586 INFO    ] No existing commands found in stream
[2026-10-18 04:03:35,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:03:35,611.611 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-18 04:03:37,793.793 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:03:37,795.795 INFO    ] Checking for system updates...
[2026-10-18 04:03:37,842.842 INFO    ] 200
[2026-10-18 04:03:37,845.845 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:03:37,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:03:37,905.905 INFO    ] No update needed
[2026-10-18 04:03:37,907.907 INFO    ] Checking for camera pi updates...
[2026-10-18 04:03:37,943.943 INFO    ] 200
[2026-10-18 04:03:37,946.946 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:03:37,990.990 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:03:48,009.009 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:03:48,044.044 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:03:48,054.054 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:03:48,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:03:48,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:03:48,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:03:50,112.112 INFO    ] ================================================
[2026-10-18 04:03:50,127.127 INFO    ] Launching Daemon at Sun Oct 18 04:03:50 IST 2026
[2026-10-18 04:03:50,139.139 INFO    ] ================================================
[2026-10-18 04:03:50,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:03:50
[2026-10-18 04:03:51,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:03:51,603.603 INFO    ] Initializing speech engine...
[2026-10-18 04:03:51,627.627 INFO    ] 2026-10-18 04:03:51
[2026-10-18 04:03:51,907.907 INFO    ] 2026-10-18 04:03:51
[2026-10-18 04:03:51,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:03:52,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:03:52,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:03:52,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:03:52,396.396 INFO    ] time= 18/10/2026 04:03:52
[2026-10-18 04:03:52,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:03:52,503.503 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:03:52,603.603 INFO    ] No existing commands found in stream
[2026-10-18 04:03:57,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:03:57,619.619 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-18 04:04:01,380.380 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:04:01,384.384 INFO    ] Checking for system updates...
[2026-10-18 04:04:01,453.453 INFO    ] 200
[2026-10-18 04:04:01,457.457 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:04:01,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:04:01,553.553 INFO    ] No update needed
[2026-10-18 04:04:01,557.557 INFO    ] Checking for camera pi updates...
[2026-10-18 04:04:01,596.596 INFO    ] 200
[2026-10-18 04:04:01,599.599 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:04:01,647.647 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:04:11,661.661 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:04:11,701.701 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:04:11,712.712 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:04:11,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:04:11,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:04:11,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:04:13,770.770 INFO    ] ================================================
[2026-10-18 04:04:13,788.788 INFO    ] Launching Daemon at Sun Oct 18 04:04:13 IST 2026
[2026-10-18 04:04:13,800.800 INFO    ] ================================================
[2026-10-18 04:04:14,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:04:14
[2026-10-18 04:04:14,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:04:15,298.298 INFO    ] Initializing speech engine...
[2026-10-18 04:04:15,312.312 INFO    ] 2026-10-18 04:04:15
[2026-10-18 04:04:15,624.624 INFO    ] 2026-10-18 04:04:15
[2026-10-18 04:04:15,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:04:15,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:04:15,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:04:16,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:04:16,175.175 INFO    ] time= 18/10/2026 04:04:16
[2026-10-18 04:04:16,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:04:16,192.192 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:04:16,324.324 INFO    ] No existing commands found in stream
[2026-10-18 04:04:21,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:04:21,359.359 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-18 04:04:25,617.617 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:04:25,620.620 INFO    ] Checking for system updates...
[2026-10-18 04:04:25,657.657 INFO    ] 200
[2026-10-18 04:04:25,660.660 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:04:25,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:04:25,716.716 INFO    ] No update needed
[2026-10-18 04:04:25,719.719 INFO    ] Checking for camera pi updates...
[2026-10-18 04:04:25,752.752 INFO    ] 200
[2026-10-18 04:04:25,755.755 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:04:25,795.795 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:04:35,809.809 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:04:35,844.844 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:04:35,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:04:35,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:04:35,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:04:35,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:04:37,907.907 INFO    ] ================================================
[2026-10-18 04:04:37,923.923 INFO    ] Launching Daemon at Sun Oct 18 04:04:37 IST 2026
[2026-10-18 04:04:37,934.934 INFO    ] ================================================
[2026-10-18 04:04:38,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:04:38
[2026-10-18 04:04:39,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:04:39,372.372 INFO    ] Initializing speech engine...
[2026-10-18 04:04:39,381.381 INFO    ] 2026-10-18 04:04:39
[2026-10-18 04:04:39,674.674 INFO    ] 2026-10-18 04:04:39
[2026-10-18 04:04:39,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:04:39,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:04:39,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:04:40,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:04:40,094.094 INFO    ] time= 18/10/2026 04:04:40
[2026-10-18 04:04:40,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:04:40,139.139 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:04:40,268.268 INFO    ] No existing commands found in stream
[2026-10-18 04:04:45,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:04:45,296.296 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-18 04:04:48,840.840 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:04:48,843.843 INFO    ] Checking for system updates...
[2026-10-18 04:04:48,882.882 INFO    ] 200
[2026-10-18 04:04:48,884.884 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:04:48,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:04:48,940.940 INFO    ] No update needed
[2026-10-18 04:04:48,947.947 INFO    ] Checking for camera pi updates...
[2026-10-18 04:04:48,984.984 INFO    ] 200
[2026-10-18 04:04:48,986.986 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:04:49,028.028 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:04:59,045.045 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:04:59,084.084 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:04:59,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:04:59,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:04:59,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:04:59,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:05:01,150.150 INFO    ] ================================================
[2026-10-18 04:05:01,166.166 INFO    ] Launching Daemon at Sun Oct 18 04:05:01 IST 2026
[2026-10-18 04:05:01,178.178 INFO    ] ================================================
[2026-10-18 04:05:01,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:05:01
[2026-10-18 04:05:02,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:05:03,110.110 INFO    ] Initializing speech engine...
[2026-10-18 04:05:03,119.119 INFO    ] 2026-10-18 04:05:03
[2026-10-18 04:05:03,401.401 INFO    ] 2026-10-18 04:05:03
[2026-10-18 04:05:03,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:05:03,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:05:03,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:05:03,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:05:04,005.005 INFO    ] time= 18/10/2026 04:05:03
[2026-10-18 04:05:04,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:05:04,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:05:04,183.183 INFO    ] No existing commands found in stream
[2026-10-18 04:05:09,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:05:09,210.210 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-18 04:05:12,024.024 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:05:12,028.028 INFO    ] Checking for system updates...
[2026-10-18 04:05:12,066.066 INFO    ] 200
[2026-10-18 04:05:12,069.069 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:05:12,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:05:12,134.134 INFO    ] No update needed
[2026-10-18 04:05:12,137.137 INFO    ] Checking for camera pi updates...
[2026-10-18 04:05:12,172.172 INFO    ] 200
[2026-10-18 04:05:12,175.175 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:05:12,223.223 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:05:22,239.239 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:05:22,283.283 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:05:22,295.295 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:05:22,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:05:22,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:05:22,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:05:24,359.359 INFO    ] ================================================
[2026-10-18 04:05:24,377.377 INFO    ] Launching Daemon at Sun Oct 18 04:05:24 IST 2026
[2026-10-18 04:05:24,389.389 INFO    ] ================================================
[2026-10-18 04:05:24,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:05:24
[2026-10-18 04:05:25,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:05:25,886.886 INFO    ] Initializing speech engine...
[2026-10-18 04:05:25,895.895 INFO    ] 2026-10-18 04:05:25
[2026-10-18 04:05:26,150.150 INFO    ] 2026-10-18 04:05:26
[2026-10-18 04:05:26,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:05:26,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:05:27,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:05:27,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:05:27,269.269 INFO    ] time= 18/10/2026 04:05:27
[2026-10-18 04:05:27,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:05:27,327.327 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:05:27,407.407 INFO    ] No existing commands found in stream
[2026-10-18 04:05:32,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:05:32,421.421 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-18 04:05:32,940.940 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:05:32,944.944 INFO    ] Checking for system updates...
[2026-10-18 04:05:32,987.987 INFO    ] 200
[2026-10-18 04:05:32,989.989 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:05:33,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:05:33,049.049 INFO    ] No update needed
[2026-10-18 04:05:33,052.052 INFO    ] Checking for camera pi updates...
[2026-10-18 04:05:33,093.093 INFO    ] 200
[2026-10-18 04:05:33,096.096 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:05:33,140.140 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:05:43,156.156 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:05:43,191.191 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:05:43,201.201 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:05:43,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:05:43,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:05:43,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:05:45,254.254 INFO    ] ================================================
[2026-10-18 04:05:45,271.271 INFO    ] Launching Daemon at Sun Oct 18 04:05:45 IST 2026
[2026-10-18 04:05:45,282.282 INFO    ] ================================================
[2026-10-18 04:05:45,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:05:45
[2026-10-18 04:05:46,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:05:46,739.739 INFO    ] Initializing speech engine...
[2026-10-18 04:05:46,745.745 INFO    ] 2026-10-18 04:05:46
[2026-10-18 04:05:47,006.006 INFO    ] 2026-10-18 04:05:47
[2026-10-18 04:05:47,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:05:47,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:05:47,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:05:47,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:05:47,555.555 INFO    ] time= 18/10/2026 04:05:47
[2026-10-18 04:05:47,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:05:47,579.579 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:05:47,714.714 INFO    ] No existing commands found in stream
[2026-10-18 04:05:52,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:05:52,742.742 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-18 04:05:55,874.874 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:05:55,877.877 INFO    ] Checking for system updates...
[2026-10-18 04:05:55,923.923 INFO    ] 200
[2026-10-18 04:05:55,926.926 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:05:55,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:05:55,982.982 INFO    ] No update needed
[2026-10-18 04:05:55,985.985 INFO    ] Checking for camera pi updates...
[2026-10-18 04:05:56,019.019 INFO    ] 200
[2026-10-18 04:05:56,021.021 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:05:56,062.062 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:06:06,078.078 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:06:06,114.114 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:06:06,123.123 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:06:06,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:06:06,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:06:06,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:06:08,177.177 INFO    ] ================================================
[2026-10-18 04:06:08,193.193 INFO    ] Launching Daemon at Sun Oct 18 04:06:08 IST 2026
[2026-10-18 04:06:08,204.204 INFO    ] ================================================
[2026-10-18 04:06:08,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:06:08
[2026-10-18 04:06:09,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:06:09,613.613 INFO    ] Initializing speech engine...
[2026-10-18 04:06:09,626.626 INFO    ] 2026-10-18 04:06:09
[2026-10-18 04:06:09,893.893 INFO    ] 2026-10-18 04:06:09
[2026-10-18 04:06:09,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:06:10,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:06:10,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:06:10,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:06:10,469.469 INFO    ] time= 18/10/2026 04:06:10
[2026-10-18 04:06:10,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:06:10,494.494 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:06:10,642.642 INFO    ] No existing commands found in stream
[2026-10-18 04:06:15,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:06:15,682.682 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-18 04:06:17,006.006 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:06:17,009.009 INFO    ] Checking for system updates...
[2026-10-18 04:06:17,044.044 INFO    ] 200
[2026-10-18 04:06:17,047.047 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:06:17,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:06:17,110.110 INFO    ] No update needed
[2026-10-18 04:06:17,113.113 INFO    ] Checking for camera pi updates...
[2026-10-18 04:06:17,147.147 INFO    ] 200
[2026-10-18 04:06:17,150.150 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:06:17,196.196 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:06:27,213.213 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:06:27,253.253 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:06:27,264.264 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:06:27,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:06:27,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:06:27,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:06:29,319.319 INFO    ] ================================================
[2026-10-18 04:06:29,334.334 INFO    ] Launching Daemon at Sun Oct 18 04:06:29 IST 2026
[2026-10-18 04:06:29,345.345 INFO    ] ================================================
[2026-10-18 04:06:29,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:06:29
[2026-10-18 04:06:30,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:06:30,800.800 INFO    ] Initializing speech engine...
[2026-10-18 04:06:30,812.812 INFO    ] 2026-10-18 04:06:30
[2026-10-18 04:06:31,073.073 INFO    ] 2026-10-18 04:06:31
[2026-10-18 04:06:31,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:06:31,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:06:31,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:06:31,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:06:31,619.619 INFO    ] time= 18/10/2026 04:06:31
[2026-10-18 04:06:31,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:06:31,650.650 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:06:31,777.777 INFO    ] No existing commands found in stream
[2026-10-18 04:06:36,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:06:36,811.811 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-18 04:06:38,143.143 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:06:38,146.146 INFO    ] Checking for system updates...
[2026-10-18 04:06:38,185.185 INFO    ] 200
[2026-10-18 04:06:38,189.189 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:06:38,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:06:38,254.254 INFO    ] No update needed
[2026-10-18 04:06:38,257.257 INFO    ] Checking for camera pi updates...
[2026-10-18 04:06:38,296.296 INFO    ] 200
[2026-10-18 04:06:38,299.299 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:06:38,339.339 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:06:48,352.352 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:06:48,388.388 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:06:48,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:06:48,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:06:48,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:06:48,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:06:50,457.457 INFO    ] ================================================
[2026-10-18 04:06:50,472.472 INFO    ] Launching Daemon at Sun Oct 18 04:06:50 IST 2026
[2026-10-18 04:06:50,484.484 INFO    ] ================================================
[2026-10-18 04:06:51,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:06:51
[2026-10-18 04:06:51,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:06:51,910.910 INFO    ] Initializing speech engine...
[2026-10-18 04:06:51,916.916 INFO    ] 2026-10-18 04:06:51
[2026-10-18 04:06:52,212.212 INFO    ] 2026-10-18 04:06:52
[2026-10-18 04:06:52,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:06:52,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:06:52,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:06:52,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:06:52,630.630 INFO    ] time= 18/10/2026 04:06:52
[2026-10-18 04:06:52,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:06:52,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:06:52,788.788 INFO    ] No existing commands found in stream
[2026-10-18 04:06:57,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:06:57,816.816 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-18 04:07:01,122.122 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:07:01,125.125 INFO    ] Checking for system updates...
[2026-10-18 04:07:01,164.164 INFO    ] 200
[2026-10-18 04:07:01,167.167 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:07:01,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:07:01,227.227 INFO    ] No update needed
[2026-10-18 04:07:01,229.229 INFO    ] Checking for camera pi updates...
[2026-10-18 04:07:01,267.267 INFO    ] 200
[2026-10-18 04:07:01,269.269 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:07:01,309.309 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:07:11,323.323 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:07:11,358.358 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:07:11,367.367 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:07:11,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:07:11,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:07:11,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:07:13,420.420 INFO    ] ================================================
[2026-10-18 04:07:13,437.437 INFO    ] Launching Daemon at Sun Oct 18 04:07:13 IST 2026
[2026-10-18 04:07:13,448.448 INFO    ] ================================================
[2026-10-18 04:07:14,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:07:14
[2026-10-18 04:07:14,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:07:14,889.889 INFO    ] Initializing speech engine...
[2026-10-18 04:07:14,897.897 INFO    ] 2026-10-18 04:07:14
[2026-10-18 04:07:15,167.167 INFO    ] 2026-10-18 04:07:15
[2026-10-18 04:07:15,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:07:15,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:07:15,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:07:15,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:07:15,676.676 INFO    ] time= 18/10/2026 04:07:15
[2026-10-18 04:07:15,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:07:15,749.749 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:07:15,875.875 INFO    ] No existing commands found in stream
[2026-10-18 04:07:20,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:07:20,908.908 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-18 04:07:23,064.064 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:07:23,066.066 INFO    ] Checking for system updates...
[2026-10-18 04:07:23,102.102 INFO    ] 200
[2026-10-18 04:07:23,104.104 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:07:23,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:07:23,167.167 INFO    ] No update needed
[2026-10-18 04:07:23,169.169 INFO    ] Checking for camera pi updates...
[2026-10-18 04:07:23,203.203 INFO    ] 200
[2026-10-18 04:07:23,205.205 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:07:23,246.246 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:07:33,258.258 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:07:33,295.295 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:07:33,305.305 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:07:33,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:07:33,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:07:33,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:07:35,358.358 INFO    ] ================================================
[2026-10-18 04:07:35,374.374 INFO    ] Launching Daemon at Sun Oct 18 04:07:35 IST 2026
[2026-10-18 04:07:35,386.386 INFO    ] ================================================
[2026-10-18 04:07:36,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:07:36
[2026-10-18 04:07:36,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:07:37,076.076 INFO    ] Initializing speech engine...
[2026-10-18 04:07:37,089.089 INFO    ] 2026-10-18 04:07:37
[2026-10-18 04:07:37,375.375 INFO    ] 2026-10-18 04:07:37
[2026-10-18 04:07:37,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:07:37,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:07:37,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:07:37,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:07:37,925.925 INFO    ] time= 18/10/2026 04:07:37
[2026-10-18 04:07:37,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:07:37,977.977 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:07:38,131.131 INFO    ] No existing commands found in stream
[2026-10-18 04:07:43,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:07:43,171.171 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-18 04:07:45,696.696 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:07:45,699.699 INFO    ] Checking for system updates...
[2026-10-18 04:07:45,742.742 INFO    ] 200
[2026-10-18 04:07:45,745.745 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:07:45,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:07:45,811.811 INFO    ] No update needed
[2026-10-18 04:07:45,814.814 INFO    ] Checking for camera pi updates...
[2026-10-18 04:07:45,854.854 INFO    ] 200
[2026-10-18 04:07:45,857.857 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:07:45,905.905 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:07:55,922.922 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:07:55,965.965 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:07:55,976.976 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:07:55,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:07:55,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:07:55,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:07:58,033.033 INFO    ] ================================================
[2026-10-18 04:07:58,049.049 INFO    ] Launching Daemon at Sun Oct 18 04:07:58 IST 2026
[2026-10-18 04:07:58,060.060 INFO    ] ================================================
[2026-10-18 04:07:58,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:07:58
[2026-10-18 04:07:59,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:07:59,485.485 INFO    ] Initializing speech engine...
[2026-10-18 04:07:59,491.491 INFO    ] 2026-10-18 04:07:59
[2026-10-18 04:07:59,738.738 INFO    ] 2026-10-18 04:07:59
[2026-10-18 04:07:59,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:08:00,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:08:00,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:08:00,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:08:00,294.294 INFO    ] time= 18/10/2026 04:08:00
[2026-10-18 04:08:00,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:08:00,318.318 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:08:00,454.454 INFO    ] No existing commands found in stream
[2026-10-18 04:08:05,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:08:05,482.482 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-18 04:08:07,793.793 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:08:07,796.796 INFO    ] Checking for system updates...
[2026-10-18 04:08:07,839.839 INFO    ] 200
[2026-10-18 04:08:07,842.842 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:08:07,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:08:07,898.898 INFO    ] No update needed
[2026-10-18 04:08:07,901.901 INFO    ] Checking for camera pi updates...
[2026-10-18 04:08:07,937.937 INFO    ] 200
[2026-10-18 04:08:07,940.940 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:08:07,981.981 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:08:17,998.998 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:08:18,039.039 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:08:18,051.051 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:08:18,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:08:18,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:08:18,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:08:20,109.109 INFO    ] ================================================
[2026-10-18 04:08:20,124.124 INFO    ] Launching Daemon at Sun Oct 18 04:08:20 IST 2026
[2026-10-18 04:08:20,136.136 INFO    ] ================================================
[2026-10-18 04:08:20,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:08:20
[2026-10-18 04:08:21,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:08:21,600.600 INFO    ] Initializing speech engine...
[2026-10-18 04:08:21,607.607 INFO    ] 2026-10-18 04:08:21
[2026-10-18 04:08:21,896.896 INFO    ] 2026-10-18 04:08:21
[2026-10-18 04:08:21,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:08:22,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:08:22,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:08:22,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:08:22,451.451 INFO    ] time= 18/10/2026 04:08:22
[2026-10-18 04:08:22,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:08:22,489.489 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:08:22,607.607 INFO    ] No existing commands found in stream
[2026-10-18 04:08:27,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:08:27,642.642 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-18 04:08:29,383.383 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:08:29,386.386 INFO    ] Checking for system updates...
[2026-10-18 04:08:29,424.424 INFO    ] 200
[2026-10-18 04:08:29,427.427 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:08:29,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:08:29,484.484 INFO    ] No update needed
[2026-10-18 04:08:29,487.487 INFO    ] Checking for camera pi updates...
[2026-10-18 04:08:29,522.522 INFO    ] 200
[2026-10-18 04:08:29,525.525 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:08:29,566.566 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:08:39,580.580 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:08:39,617.617 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:08:39,627.627 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:08:39,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:08:39,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:08:39,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:08:41,686.686 INFO    ] ================================================
[2026-10-18 04:08:41,701.701 INFO    ] Launching Daemon at Sun Oct 18 04:08:41 IST 2026
[2026-10-18 04:08:41,712.712 INFO    ] ================================================
[2026-10-18 04:08:42,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:08:42
[2026-10-18 04:08:42,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:08:43,191.191 INFO    ] Initializing speech engine...
[2026-10-18 04:08:43,201.201 INFO    ] 2026-10-18 04:08:43
[2026-10-18 04:08:43,475.475 INFO    ] 2026-10-18 04:08:43
[2026-10-18 04:08:43,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:08:43,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:08:43,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:08:43,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:08:43,988.988 INFO    ] time= 18/10/2026 04:08:43
[2026-10-18 04:08:44,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:08:44,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:08:44,194.194 INFO    ] No existing commands found in stream
[2026-10-18 04:08:49,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:08:49,210.210 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-18 04:08:52,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:08:52,347.347 INFO    ] Checking for system updates...
[2026-10-18 04:08:52,384.384 INFO    ] 200
[2026-10-18 04:08:52,386.386 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:08:52,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:08:52,447.447 INFO    ] No update needed
[2026-10-18 04:08:52,449.449 INFO    ] Checking for camera pi updates...
[2026-10-18 04:08:52,488.488 INFO    ] 200
[2026-10-18 04:08:52,490.490 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:08:52,537.537 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:09:02,553.553 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:09:02,599.599 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:09:02,610.610 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:09:02,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:09:02,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:09:02,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:09:04,667.667 INFO    ] ================================================
[2026-10-18 04:09:04,683.683 INFO    ] Launching Daemon at Sun Oct 18 04:09:04 IST 2026
[2026-10-18 04:09:04,694.694 INFO    ] ================================================
[2026-10-18 04:09:05,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:09:05
[2026-10-18 04:09:05,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:09:06,145.145 INFO    ] Initializing speech engine...
[2026-10-18 04:09:06,160.160 INFO    ] 2026-10-18 04:09:06
[2026-10-18 04:09:06,424.424 INFO    ] 2026-10-18 04:09:06
[2026-10-18 04:09:06,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:09:06,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:09:06,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:09:06,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:09:06,923.923 INFO    ] time= 18/10/2026 04:09:06
[2026-10-18 04:09:06,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:09:07,057.057 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:09:07,207.207 INFO    ] No existing commands found in stream
[2026-10-18 04:09:12,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:09:12,240.240 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-18 04:09:15,818.818 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:09:15,820.820 INFO    ] Checking for system updates...
[2026-10-18 04:09:15,857.857 INFO    ] 200
[2026-10-18 04:09:15,860.860 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:09:15,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:09:15,915.915 INFO    ] No update needed
[2026-10-18 04:09:15,917.917 INFO    ] Checking for camera pi updates...
[2026-10-18 04:09:15,952.952 INFO    ] 200
[2026-10-18 04:09:15,954.954 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:09:16,002.002 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:09:26,017.017 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:09:26,052.052 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:09:26,062.062 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:09:26,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:09:26,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:09:26,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:09:28,115.115 INFO    ] ================================================
[2026-10-18 04:09:28,131.131 INFO    ] Launching Daemon at Sun Oct 18 04:09:28 IST 2026
[2026-10-18 04:09:28,143.143 INFO    ] ================================================
[2026-10-18 04:09:28,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:09:28
[2026-10-18 04:09:29,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:09:29,595.595 INFO    ] Initializing speech engine...
[2026-10-18 04:09:29,604.604 INFO    ] 2026-10-18 04:09:29
[2026-10-18 04:09:29,853.853 INFO    ] 2026-10-18 04:09:29
[2026-10-18 04:09:29,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:09:30,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:09:30,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:09:30,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:09:30,351.351 INFO    ] time= 18/10/2026 04:09:30
[2026-10-18 04:09:30,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:09:30,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:09:30,565.565 INFO    ] No existing commands found in stream
[2026-10-18 04:09:35,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:09:35,582.582 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-18 04:09:39,476.476 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:09:39,478.478 INFO    ] Checking for system updates...
[2026-10-18 04:09:39,514.514 INFO    ] 200
[2026-10-18 04:09:39,517.517 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:09:39,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:09:39,571.571 INFO    ] No update needed
[2026-10-18 04:09:39,574.574 INFO    ] Checking for camera pi updates...
[2026-10-18 04:09:39,612.612 INFO    ] 200
[2026-10-18 04:09:39,614.614 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:09:39,663.663 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:09:49,679.679 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:09:49,714.714 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:09:49,724.724 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:09:49,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:09:49,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:09:49,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:09:51,779.779 INFO    ] ================================================
[2026-10-18 04:09:51,794.794 INFO    ] Launching Daemon at Sun Oct 18 04:09:51 IST 2026
[2026-10-18 04:09:51,806.806 INFO    ] ================================================
[2026-10-18 04:09:52,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:09:52
[2026-10-18 04:09:53,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:09:53,333.333 INFO    ] Initializing speech engine...
[2026-10-18 04:09:53,340.340 INFO    ] 2026-10-18 04:09:53
[2026-10-18 04:09:53,600.600 INFO    ] 2026-10-18 04:09:53
[2026-10-18 04:09:53,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:09:53,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:09:53,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:09:54,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:09:54,142.142 INFO    ] time= 18/10/2026 04:09:54
[2026-10-18 04:09:54,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:09:54,167.167 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:09:54,299.299 INFO    ] No existing commands found in stream
[2026-10-18 04:09:59,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:09:59,324.324 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-18 04:10:00,707.707 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:10:00,710.710 INFO    ] Checking for system updates...
[2026-10-18 04:10:00,746.746 INFO    ] 200
[2026-10-18 04:10:00,748.748 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:10:00,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:10:00,811.811 INFO    ] No update needed
[2026-10-18 04:10:00,813.813 INFO    ] Checking for camera pi updates...
[2026-10-18 04:10:00,850.850 INFO    ] 200
[2026-10-18 04:10:00,853.853 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:10:00,894.894 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:10:10,910.910 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:10:10,953.953 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:10:10,964.964 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:10:10,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:10:10,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:10:10,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:10:13,020.020 INFO    ] ================================================
[2026-10-18 04:10:13,036.036 INFO    ] Launching Daemon at Sun Oct 18 04:10:13 IST 2026
[2026-10-18 04:10:13,047.047 INFO    ] ================================================
[2026-10-18 04:10:13,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:10:13
[2026-10-18 04:10:14,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:10:14,500.500 INFO    ] Initializing speech engine...
[2026-10-18 04:10:14,510.510 INFO    ] 2026-10-18 04:10:14
[2026-10-18 04:10:14,759.759 INFO    ] 2026-10-18 04:10:14
[2026-10-18 04:10:14,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:10:15,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:10:15,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:10:15,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:10:15,315.315 INFO    ] time= 18/10/2026 04:10:15
[2026-10-18 04:10:15,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:10:15,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:10:15,478.478 INFO    ] No existing commands found in stream
[2026-10-18 04:10:20,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:10:20,512.512 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-18 04:10:23,169.169 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:10:23,172.172 INFO    ] Checking for system updates...
[2026-10-18 04:10:23,208.208 INFO    ] 200
[2026-10-18 04:10:23,210.210 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:10:23,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:10:23,265.265 INFO    ] No update needed
[2026-10-18 04:10:23,268.268 INFO    ] Checking for camera pi updates...
[2026-10-18 04:10:23,304.304 INFO    ] 200
[2026-10-18 04:10:23,307.307 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:10:23,347.347 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:10:33,360.360 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:10:33,395.395 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:10:33,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:10:33,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:10:33,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:10:33,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:10:35,457.457 INFO    ] ================================================
[2026-10-18 04:10:35,473.473 INFO    ] Launching Daemon at Sun Oct 18 04:10:35 IST 2026
[2026-10-18 04:10:35,484.484 INFO    ] ================================================
[2026-10-18 04:10:36,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:10:36
[2026-10-18 04:10:36,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:10:36,944.944 INFO    ] Initializing speech engine...
[2026-10-18 04:10:36,949.949 INFO    ] 2026-10-18 04:10:36
[2026-10-18 04:10:37,209.209 INFO    ] 2026-10-18 04:10:37
[2026-10-18 04:10:37,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:10:37,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:10:37,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:10:37,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:10:37,704.704 INFO    ] time= 18/10/2026 04:10:37
[2026-10-18 04:10:37,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:10:37,762.762 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:10:37,926.926 INFO    ] No existing commands found in stream
[2026-10-18 04:10:42,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:10:42,964.964 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-18 04:10:45,759.759 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:10:45,761.761 INFO    ] Checking for system updates...
[2026-10-18 04:10:45,797.797 INFO    ] 200
[2026-10-18 04:10:45,800.800 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:10:45,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:10:45,864.864 INFO    ] No update needed
[2026-10-18 04:10:45,867.867 INFO    ] Checking for camera pi updates...
[2026-10-18 04:10:45,903.903 INFO    ] 200
[2026-10-18 04:10:45,906.906 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:10:45,946.946 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:10:55,960.960 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:10:55,994.994 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:10:56,004.004 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:10:56,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:10:56,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:10:56,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:10:58,057.057 INFO    ] ================================================
[2026-10-18 04:10:58,073.073 INFO    ] Launching Daemon at Sun Oct 18 04:10:58 IST 2026
[2026-10-18 04:10:58,083.083 INFO    ] ================================================
[2026-10-18 04:10:58,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:10:58
[2026-10-18 04:10:59,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:10:59,516.516 INFO    ] Initializing speech engine...
[2026-10-18 04:10:59,524.524 INFO    ] 2026-10-18 04:10:59
[2026-10-18 04:10:59,775.775 INFO    ] 2026-10-18 04:10:59
[2026-10-18 04:10:59,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:11:00,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:11:00,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:11:00,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:11:00,344.344 INFO    ] time= 18/10/2026 04:11:00
[2026-10-18 04:11:00,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:11:00,368.368 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:11:00,487.487 INFO    ] No existing commands found in stream
[2026-10-18 04:11:05,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:11:05,514.514 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-18 04:11:09,120.120 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:11:09,123.123 INFO    ] Checking for system updates...
[2026-10-18 04:11:09,162.162 INFO    ] 200
[2026-10-18 04:11:09,164.164 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:11:09,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:11:09,221.221 INFO    ] No update needed
[2026-10-18 04:11:09,223.223 INFO    ] Checking for camera pi updates...
[2026-10-18 04:11:09,271.271 INFO    ] 200
[2026-10-18 04:11:09,273.273 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:11:09,328.328 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:11:19,345.345 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:11:19,384.384 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:11:19,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:11:19,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:11:19,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:11:19,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:11:21,451.451 INFO    ] ================================================
[2026-10-18 04:11:21,467.467 INFO    ] Launching Daemon at Sun Oct 18 04:11:21 IST 2026
[2026-10-18 04:11:21,478.478 INFO    ] ================================================
[2026-10-18 04:11:22,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:11:22
[2026-10-18 04:11:22,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:11:22,913.913 INFO    ] Initializing speech engine...
[2026-10-18 04:11:22,923.923 INFO    ] 2026-10-18 04:11:22
[2026-10-18 04:11:23,172.172 INFO    ] 2026-10-18 04:11:23
[2026-10-18 04:11:23,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:11:23,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:11:23,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:11:23,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:11:23,741.741 INFO    ] time= 18/10/2026 04:11:23
[2026-10-18 04:11:23,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:11:23,765.765 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:11:23,902.902 INFO    ] No existing commands found in stream
[2026-10-18 04:11:28,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:11:28,928.928 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-18 04:11:32,976.976 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:11:32,979.979 INFO    ] Checking for system updates...
[2026-10-18 04:11:33,015.015 INFO    ] 200
[2026-10-18 04:11:33,017.017 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:11:33,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:11:33,072.072 INFO    ] No update needed
[2026-10-18 04:11:33,075.075 INFO    ] Checking for camera pi updates...
[2026-10-18 04:11:33,111.111 INFO    ] 200
[2026-10-18 04:11:33,114.114 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:11:33,162.162 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:11:43,177.177 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:11:43,211.211 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:11:43,221.221 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:11:43,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:11:43,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:11:43,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:11:45,275.275 INFO    ] ================================================
[2026-10-18 04:11:45,290.290 INFO    ] Launching Daemon at Sun Oct 18 04:11:45 IST 2026
[2026-10-18 04:11:45,302.302 INFO    ] ================================================
[2026-10-18 04:11:45,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:11:45
[2026-10-18 04:11:46,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:11:46,767.767 INFO    ] Initializing speech engine...
[2026-10-18 04:11:46,783.783 INFO    ] 2026-10-18 04:11:46
[2026-10-18 04:11:47,061.061 INFO    ] 2026-10-18 04:11:47
[2026-10-18 04:11:47,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:11:47,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:11:47,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:11:47,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:11:47,559.559 INFO    ] time= 18/10/2026 04:11:47
[2026-10-18 04:11:47,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:11:47,648.648 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:11:47,762.762 INFO    ] No existing commands found in stream
[2026-10-18 04:11:52,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:11:52,778.778 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-18 04:11:53,789.789 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:11:53,792.792 INFO    ] Checking for system updates...
[2026-10-18 04:11:53,827.827 INFO    ] 200
[2026-10-18 04:11:53,830.830 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:11:53,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:11:53,890.890 INFO    ] No update needed
[2026-10-18 04:11:53,892.892 INFO    ] Checking for camera pi updates...
[2026-10-18 04:11:53,930.930 INFO    ] 200
[2026-10-18 04:11:53,932.932 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:11:53,972.972 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:12:03,985.985 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:12:04,020.020 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:12:04,029.029 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:12:04,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:12:04,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:12:04,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:12:06,081.081 INFO    ] ================================================
[2026-10-18 04:12:06,097.097 INFO    ] Launching Daemon at Sun Oct 18 04:12:06 IST 2026
[2026-10-18 04:12:06,108.108 INFO    ] ================================================
[2026-10-18 04:12:06,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:12:06
[2026-10-18 04:12:07,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:12:07,696.696 INFO    ] Initializing speech engine...
[2026-10-18 04:12:07,709.709 INFO    ] 2026-10-18 04:12:07
[2026-10-18 04:12:07,991.991 INFO    ] 2026-10-18 04:12:07
[2026-10-18 04:12:08,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:12:08,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:12:08,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:12:08,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:12:08,553.553 INFO    ] time= 18/10/2026 04:12:08
[2026-10-18 04:12:08,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:12:08,590.590 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:12:08,700.700 INFO    ] No existing commands found in stream
[2026-10-18 04:12:13,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:12:13,725.725 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-18 04:12:15,705.705 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:12:15,708.708 INFO    ] Checking for system updates...
[2026-10-18 04:12:15,748.748 INFO    ] 200
[2026-10-18 04:12:15,751.751 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:12:15,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:12:15,805.805 INFO    ] No update needed
[2026-10-18 04:12:15,807.807 INFO    ] Checking for camera pi updates...
[2026-10-18 04:12:15,845.845 INFO    ] 200
[2026-10-18 04:12:15,847.847 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:12:15,887.887 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:12:25,902.902 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:12:25,937.937 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:12:25,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:12:25,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:12:25,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:12:25,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:12:28,999.999 INFO    ] ================================================
[2026-10-18 04:12:28,015.015 INFO    ] Launching Daemon at Sun Oct 18 04:12:28 IST 2026
[2026-10-18 04:12:28,026.026 INFO    ] ================================================
[2026-10-18 04:12:28,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:12:28
[2026-10-18 04:12:29,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:12:29,475.475 INFO    ] Initializing speech engine...
[2026-10-18 04:12:29,499.499 INFO    ] 2026-10-18 04:12:29
[2026-10-18 04:12:29,771.771 INFO    ] 2026-10-18 04:12:29
[2026-10-18 04:12:29,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:12:30,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:12:30,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:12:30,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:12:30,308.308 INFO    ] time= 18/10/2026 04:12:30
[2026-10-18 04:12:30,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:12:30,393.393 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:12:30,540.540 INFO    ] No existing commands found in stream
[2026-10-18 04:12:35,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:12:35,568.568 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-18 04:12:39,810.810 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:12:39,812.812 INFO    ] Checking for system updates...
[2026-10-18 04:12:39,850.850 INFO    ] 200
[2026-10-18 04:12:39,853.853 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:12:39,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:12:39,911.911 INFO    ] No update needed
[2026-10-18 04:12:39,913.913 INFO    ] Checking for camera pi updates...
[2026-10-18 04:12:39,951.951 INFO    ] 200
[2026-10-18 04:12:39,953.953 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:12:39,993.993 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:12:50,008.008 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:12:50,043.043 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:12:50,052.052 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:12:50,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:12:50,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:12:50,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:12:52,182.182 INFO    ] ================================================
[2026-10-18 04:12:52,198.198 INFO    ] Launching Daemon at Sun Oct 18 04:12:52 IST 2026
[2026-10-18 04:12:52,209.209 INFO    ] ================================================
[2026-10-18 04:12:52,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:12:52
[2026-10-18 04:12:53,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:12:53,786.786 INFO    ] Initializing speech engine...
[2026-10-18 04:12:53,800.800 INFO    ] 2026-10-18 04:12:53
[2026-10-18 04:12:54,081.081 INFO    ] 2026-10-18 04:12:54
[2026-10-18 04:12:54,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:12:54,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:12:54,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:12:54,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:12:54,629.629 INFO    ] time= 18/10/2026 04:12:54
[2026-10-18 04:12:54,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:12:54,679.679 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:12:54,796.796 INFO    ] No existing commands found in stream
[2026-10-18 04:12:59,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:12:59,820.820 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-18 04:13:03,889.889 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:13:03,891.891 INFO    ] Checking for system updates...
[2026-10-18 04:13:03,928.928 INFO    ] 200
[2026-10-18 04:13:03,930.930 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:13:03,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:13:03,991.991 INFO    ] No update needed
[2026-10-18 04:13:03,994.994 INFO    ] Checking for camera pi updates...
[2026-10-18 04:13:04,031.031 INFO    ] 200
[2026-10-18 04:13:04,034.034 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:13:04,074.074 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:13:14,089.089 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:13:14,129.129 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:13:14,140.140 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:13:14,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:13:14,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:13:14,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:13:16,194.194 INFO    ] ================================================
[2026-10-18 04:13:16,210.210 INFO    ] Launching Daemon at Sun Oct 18 04:13:16 IST 2026
[2026-10-18 04:13:16,221.221 INFO    ] ================================================
[2026-10-18 04:13:16,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:13:16
[2026-10-18 04:13:17,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:13:17,809.809 INFO    ] Initializing speech engine...
[2026-10-18 04:13:17,823.823 INFO    ] 2026-10-18 04:13:17
[2026-10-18 04:13:18,128.128 INFO    ] 2026-10-18 04:13:18
[2026-10-18 04:13:18,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:13:18,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:13:18,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:13:18,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:13:18,645.645 INFO    ] time= 18/10/2026 04:13:18
[2026-10-18 04:13:18,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:13:18,682.682 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:13:18,813.813 INFO    ] No existing commands found in stream
[2026-10-18 04:13:23,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:13:23,847.847 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-18 04:13:28,124.124 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:13:28,127.127 INFO    ] Checking for system updates...
[2026-10-18 04:13:28,163.163 INFO    ] 200
[2026-10-18 04:13:28,166.166 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:13:28,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:13:28,229.229 INFO    ] No update needed
[2026-10-18 04:13:28,232.232 INFO    ] Checking for camera pi updates...
[2026-10-18 04:13:28,267.267 INFO    ] 200
[2026-10-18 04:13:28,270.270 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:13:28,310.310 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:13:38,325.325 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:13:38,364.364 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:13:38,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:13:38,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:13:38,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:13:38,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:13:40,430.430 INFO    ] ================================================
[2026-10-18 04:13:40,445.445 INFO    ] Launching Daemon at Sun Oct 18 04:13:40 IST 2026
[2026-10-18 04:13:40,456.456 INFO    ] ================================================
[2026-10-18 04:13:41,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:13:41
[2026-10-18 04:13:41,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:13:42,016.016 INFO    ] Initializing speech engine...
[2026-10-18 04:13:42,030.030 INFO    ] 2026-10-18 04:13:42
[2026-10-18 04:13:42,297.297 INFO    ] 2026-10-18 04:13:42
[2026-10-18 04:13:42,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:13:42,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:13:42,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:13:42,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:13:42,778.778 INFO    ] time= 18/10/2026 04:13:42
[2026-10-18 04:13:42,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:13:42,870.870 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:13:42,979.979 INFO    ] No existing commands found in stream
[2026-10-18 04:13:47,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:13:47,993.993 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-18 04:13:49,477.477 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:13:49,479.479 INFO    ] Checking for system updates...
[2026-10-18 04:13:49,517.517 INFO    ] 200
[2026-10-18 04:13:49,520.520 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:13:49,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:13:49,574.574 INFO    ] No update needed
[2026-10-18 04:13:49,576.576 INFO    ] Checking for camera pi updates...
[2026-10-18 04:13:49,610.610 INFO    ] 200
[2026-10-18 04:13:49,613.613 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:13:49,657.657 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:13:59,672.672 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:13:59,707.707 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:13:59,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:13:59,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:13:59,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:13:59,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:14:01,774.774 INFO    ] ================================================
[2026-10-18 04:14:01,791.791 INFO    ] Launching Daemon at Sun Oct 18 04:14:01 IST 2026
[2026-10-18 04:14:01,807.807 INFO    ] ================================================
[2026-10-18 04:14:02,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:14:02
[2026-10-18 04:14:03,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:14:03,399.399 INFO    ] Initializing speech engine...
[2026-10-18 04:14:03,407.407 INFO    ] 2026-10-18 04:14:03
[2026-10-18 04:14:03,682.682 INFO    ] 2026-10-18 04:14:03
[2026-10-18 04:14:03,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:14:03,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:14:03,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:14:04,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:14:04,193.193 INFO    ] time= 18/10/2026 04:14:04
[2026-10-18 04:14:04,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:14:04,247.247 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:14:04,368.368 INFO    ] No existing commands found in stream
[2026-10-18 04:14:09,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:14:09,397.397 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-18 04:14:10,909.909 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:14:10,911.911 INFO    ] Checking for system updates...
[2026-10-18 04:14:10,947.947 INFO    ] 200
[2026-10-18 04:14:10,950.950 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:14:11,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:14:11,004.004 INFO    ] No update needed
[2026-10-18 04:14:11,006.006 INFO    ] Checking for camera pi updates...
[2026-10-18 04:14:11,039.039 INFO    ] 200
[2026-10-18 04:14:11,042.042 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:14:11,081.081 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:14:21,096.096 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:14:21,132.132 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:14:21,143.143 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:14:21,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:14:21,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:14:21,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:14:23,196.196 INFO    ] ================================================
[2026-10-18 04:14:23,211.211 INFO    ] Launching Daemon at Sun Oct 18 04:14:23 IST 2026
[2026-10-18 04:14:23,223.223 INFO    ] ================================================
[2026-10-18 04:14:23,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:14:23
[2026-10-18 04:14:24,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:14:24,710.710 INFO    ] Initializing speech engine...
[2026-10-18 04:14:24,723.723 INFO    ] 2026-10-18 04:14:24
[2026-10-18 04:14:24,994.994 INFO    ] 2026-10-18 04:14:24
[2026-10-18 04:14:25,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:14:25,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:14:25,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:14:25,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:14:25,538.538 INFO    ] time= 18/10/2026 04:14:25
[2026-10-18 04:14:25,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:14:25,563.563 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:14:25,720.720 INFO    ] No existing commands found in stream
[2026-10-18 04:14:30,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:14:30,754.754 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-18 04:14:31,404.404 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:14:31,407.407 INFO    ] Checking for system updates...
[2026-10-18 04:14:31,447.447 INFO    ] 200
[2026-10-18 04:14:31,450.450 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:14:31,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:14:31,515.515 INFO    ] No update needed
[2026-10-18 04:14:31,518.518 INFO    ] Checking for camera pi updates...
[2026-10-18 04:14:31,560.560 INFO    ] 200
[2026-10-18 04:14:31,564.564 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:14:31,646.646 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:14:41,662.662 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:14:41,706.706 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:14:41,717.717 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:14:41,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:14:41,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:14:41,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:14:43,772.772 INFO    ] ================================================
[2026-10-18 04:14:43,788.788 INFO    ] Launching Daemon at Sun Oct 18 04:14:43 IST 2026
[2026-10-18 04:14:43,798.798 INFO    ] ================================================
[2026-10-18 04:14:44,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:14:44
[2026-10-18 04:14:44,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:14:45,230.230 INFO    ] Initializing speech engine...
[2026-10-18 04:14:45,247.247 INFO    ] 2026-10-18 04:14:45
[2026-10-18 04:14:45,514.514 INFO    ] 2026-10-18 04:14:45
[2026-10-18 04:14:45,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:14:45,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:14:45,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:14:45,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:14:46,050.050 INFO    ] time= 18/10/2026 04:14:45
[2026-10-18 04:14:46,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:14:46,129.129 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:14:46,240.240 INFO    ] No existing commands found in stream
[2026-10-18 04:14:51,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:14:51,268.268 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-18 04:14:54,323.323 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:14:54,325.325 INFO    ] Checking for system updates...
[2026-10-18 04:14:54,364.364 INFO    ] 200
[2026-10-18 04:14:54,367.367 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:14:54,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:14:54,421.421 INFO    ] No update needed
[2026-10-18 04:14:54,423.423 INFO    ] Checking for camera pi updates...
[2026-10-18 04:14:54,463.463 INFO    ] 200
[2026-10-18 04:14:54,466.466 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:14:54,506.506 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:15:04,519.519 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:15:04,554.554 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:15:04,563.563 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:15:04,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:15:04,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:15:04,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:15:06,616.616 INFO    ] ================================================
[2026-10-18 04:15:06,631.631 INFO    ] Launching Daemon at Sun Oct 18 04:15:06 IST 2026
[2026-10-18 04:15:06,642.642 INFO    ] ================================================
[2026-10-18 04:15:07,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:15:07
[2026-10-18 04:15:07,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:15:08,104.104 INFO    ] Initializing speech engine...
[2026-10-18 04:15:08,116.116 INFO    ] 2026-10-18 04:15:08
[2026-10-18 04:15:08,378.378 INFO    ] 2026-10-18 04:15:08
[2026-10-18 04:15:08,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:15:08,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:15:08,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:15:08,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:15:08,916.916 INFO    ] time= 18/10/2026 04:15:08
[2026-10-18 04:15:08,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:15:08,946.946 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:15:09,078.078 INFO    ] No existing commands found in stream
[2026-10-18 04:15:14,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:15:14,095.095 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-18 04:15:15,300.300 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:15:15,303.303 INFO    ] Checking for system updates...
[2026-10-18 04:15:15,339.339 INFO    ] 200
[2026-10-18 04:15:15,341.341 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:15:15,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:15:15,396.396 INFO    ] No update needed
[2026-10-18 04:15:15,399.399 INFO    ] Checking for camera pi updates...
[2026-10-18 04:15:15,433.433 INFO    ] 200
[2026-10-18 04:15:15,435.435 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:15:15,483.483 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:15:25,499.499 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:15:25,536.536 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:15:25,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:15:25,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:15:25,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:15:25,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:15:27,599.599 INFO    ] ================================================
[2026-10-18 04:15:27,614.614 INFO    ] Launching Daemon at Sun Oct 18 04:15:27 IST 2026
[2026-10-18 04:15:27,625.625 INFO    ] ================================================
[2026-10-18 04:15:28,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:15:28
[2026-10-18 04:15:28,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:15:29,079.079 INFO    ] Initializing speech engine...
[2026-10-18 04:15:29,094.094 INFO    ] 2026-10-18 04:15:29
[2026-10-18 04:15:29,381.381 INFO    ] 2026-10-18 04:15:29
[2026-10-18 04:15:29,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:15:29,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:15:29,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:15:29,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:15:29,888.888 INFO    ] time= 18/10/2026 04:15:29
[2026-10-18 04:15:29,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:15:30,007.007 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:15:30,150.150 INFO    ] No existing commands found in stream
[2026-10-18 04:15:35,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:15:35,170.170 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-18 04:15:39,293.293 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:15:39,296.296 INFO    ] Checking for system updates...
[2026-10-18 04:15:39,333.333 INFO    ] 200
[2026-10-18 04:15:39,336.336 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:15:39,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:15:39,391.391 INFO    ] No update needed
[2026-10-18 04:15:39,393.393 INFO    ] Checking for camera pi updates...
[2026-10-18 04:15:39,426.426 INFO    ] 200
[2026-10-18 04:15:39,429.429 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:15:39,469.469 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:15:49,485.485 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:15:49,520.520 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:15:49,531.531 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:15:49,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:15:49,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:15:49,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:15:51,584.584 INFO    ] ================================================
[2026-10-18 04:15:51,600.600 INFO    ] Launching Daemon at Sun Oct 18 04:15:51 IST 2026
[2026-10-18 04:15:51,612.612 INFO    ] ================================================
[2026-10-18 04:15:52,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:15:52
[2026-10-18 04:15:52,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:15:53,016.016 INFO    ] Initializing speech engine...
[2026-10-18 04:15:53,031.031 INFO    ] 2026-10-18 04:15:53
[2026-10-18 04:15:53,296.296 INFO    ] 2026-10-18 04:15:53
[2026-10-18 04:15:53,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:15:53,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:15:53,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:15:53,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:15:53,823.823 INFO    ] time= 18/10/2026 04:15:53
[2026-10-18 04:15:53,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:15:53,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:15:54,049.049 INFO    ] No existing commands found in stream
[2026-10-18 04:15:59,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:15:59,067.067 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-18 04:16:02,336.336 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:16:02,341.341 INFO    ] Checking for system updates...
[2026-10-18 04:16:02,391.391 INFO    ] 200
[2026-10-18 04:16:02,394.394 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:16:02,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:16:02,461.461 INFO    ] No update needed
[2026-10-18 04:16:02,464.464 INFO    ] Checking for camera pi updates...
[2026-10-18 04:16:02,504.504 INFO    ] 200
[2026-10-18 04:16:02,507.507 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:16:02,559.559 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:16:12,574.574 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:16:12,609.609 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:16:12,618.618 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:16:12,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:16:12,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:16:12,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:16:14,673.673 INFO    ] ================================================
[2026-10-18 04:16:14,689.689 INFO    ] Launching Daemon at Sun Oct 18 04:16:14 IST 2026
[2026-10-18 04:16:14,699.699 INFO    ] ================================================
[2026-10-18 04:16:15,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:16:15
[2026-10-18 04:16:15,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:16:16,147.147 INFO    ] Initializing speech engine...
[2026-10-18 04:16:16,158.158 INFO    ] 2026-10-18 04:16:16
[2026-10-18 04:16:16,418.418 INFO    ] 2026-10-18 04:16:16
[2026-10-18 04:16:16,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:16:16,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:16:16,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:16:16,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:16:16,899.899 INFO    ] time= 18/10/2026 04:16:16
[2026-10-18 04:16:16,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:16:16,969.969 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:16:17,149.149 INFO    ] No existing commands found in stream
[2026-10-18 04:16:22,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:16:22,187.187 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-18 04:16:24,415.415 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:16:24,418.418 INFO    ] Checking for system updates...
[2026-10-18 04:16:24,457.457 INFO    ] 200
[2026-10-18 04:16:24,460.460 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:16:24,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:16:24,515.515 INFO    ] No update needed
[2026-10-18 04:16:24,518.518 INFO    ] Checking for camera pi updates...
[2026-10-18 04:16:24,552.552 INFO    ] 200
[2026-10-18 04:16:24,555.555 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:16:24,597.597 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:16:34,613.613 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:16:34,653.653 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:16:34,665.665 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:16:34,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:16:34,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:16:34,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:16:36,722.722 INFO    ] ================================================
[2026-10-18 04:16:36,738.738 INFO    ] Launching Daemon at Sun Oct 18 04:16:36 IST 2026
[2026-10-18 04:16:36,750.750 INFO    ] ================================================
[2026-10-18 04:16:37,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:16:37
[2026-10-18 04:16:37,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:16:38,199.199 INFO    ] Initializing speech engine...
[2026-10-18 04:16:38,207.207 INFO    ] 2026-10-18 04:16:38
[2026-10-18 04:16:38,474.474 INFO    ] 2026-10-18 04:16:38
[2026-10-18 04:16:38,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:16:38,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:16:38,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:16:38,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:16:39,039.039 INFO    ] time= 18/10/2026 04:16:38
[2026-10-18 04:16:39,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:16:39,107.107 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:16:39,241.241 INFO    ] No existing commands found in stream
[2026-10-18 04:16:44,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:16:44,267.267 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-18 04:16:46,768.768 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:16:46,770.770 INFO    ] Checking for system updates...
[2026-10-18 04:16:46,806.806 INFO    ] 200
[2026-10-18 04:16:46,809.809 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:16:46,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:16:46,868.868 INFO    ] No update needed
[2026-10-18 04:16:46,871.871 INFO    ] Checking for camera pi updates...
[2026-10-18 04:16:46,907.907 INFO    ] 200
[2026-10-18 04:16:46,910.910 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:16:46,950.950 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:16:56,966.966 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:16:57,001.001 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:16:57,011.011 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:16:57,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:16:57,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:16:57,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:16:59,064.064 INFO    ] ================================================
[2026-10-18 04:16:59,080.080 INFO    ] Launching Daemon at Sun Oct 18 04:16:59 IST 2026
[2026-10-18 04:16:59,091.091 INFO    ] ================================================
[2026-10-18 04:16:59,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:16:59
[2026-10-18 04:17:00,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:17:00,697.697 INFO    ] Initializing speech engine...
[2026-10-18 04:17:00,706.706 INFO    ] 2026-10-18 04:17:00
[2026-10-18 04:17:00,977.977 INFO    ] 2026-10-18 04:17:00
[2026-10-18 04:17:01,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:17:01,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:17:01,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:17:01,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:17:01,546.546 INFO    ] time= 18/10/2026 04:17:01
[2026-10-18 04:17:01,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:17:01,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:17:01,715.715 INFO    ] No existing commands found in stream
[2026-10-18 04:17:06,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:17:06,746.746 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-18 04:17:08,517.517 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:17:08,520.520 INFO    ] Checking for system updates...
[2026-10-18 04:17:08,560.560 INFO    ] 200
[2026-10-18 04:17:08,563.563 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:17:08,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:17:08,619.619 INFO    ] No update needed
[2026-10-18 04:17:08,621.621 INFO    ] Checking for camera pi updates...
[2026-10-18 04:17:08,659.659 INFO    ] 200
[2026-10-18 04:17:08,662.662 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:17:08,703.703 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:17:18,719.719 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:17:18,759.759 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:17:18,770.770 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:17:18,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:17:18,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:17:18,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:17:20,827.827 INFO    ] ================================================
[2026-10-18 04:17:20,843.843 INFO    ] Launching Daemon at Sun Oct 18 04:17:20 IST 2026
[2026-10-18 04:17:20,854.854 INFO    ] ================================================
[2026-10-18 04:17:21,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:17:21
[2026-10-18 04:17:22,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:17:22,475.475 INFO    ] Initializing speech engine...
[2026-10-18 04:17:22,481.481 INFO    ] 2026-10-18 04:17:22
[2026-10-18 04:17:22,752.752 INFO    ] 2026-10-18 04:17:22
[2026-10-18 04:17:22,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:17:23,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:17:23,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:17:23,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:17:23,287.287 INFO    ] time= 18/10/2026 04:17:23
[2026-10-18 04:17:23,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:17:23,313.313 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:17:23,424.424 INFO    ] No existing commands found in stream
[2026-10-18 04:17:28,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:17:28,455.455 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-18 04:17:32,119.119 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:17:32,122.122 INFO    ] Checking for system updates...
[2026-10-18 04:17:32,170.170 INFO    ] 200
[2026-10-18 04:17:32,173.173 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:17:32,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:17:32,233.233 INFO    ] No update needed
[2026-10-18 04:17:32,237.237 INFO    ] Checking for camera pi updates...
[2026-10-18 04:17:32,278.278 INFO    ] 200
[2026-10-18 04:17:32,282.282 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:17:32,334.334 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:17:42,350.350 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:17:42,386.386 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:17:42,396.396 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:17:42,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:17:42,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:17:42,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:17:44,451.451 INFO    ] ================================================
[2026-10-18 04:17:44,467.467 INFO    ] Launching Daemon at Sun Oct 18 04:17:44 IST 2026
[2026-10-18 04:17:44,477.477 INFO    ] ================================================
[2026-10-18 04:17:45,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:17:45
[2026-10-18 04:17:45,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:17:46,104.104 INFO    ] Initializing speech engine...
[2026-10-18 04:17:46,112.112 INFO    ] 2026-10-18 04:17:46
[2026-10-18 04:17:46,399.399 INFO    ] 2026-10-18 04:17:46
[2026-10-18 04:17:46,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:17:46,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:17:46,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:17:46,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:17:46,947.947 INFO    ] time= 18/10/2026 04:17:46
[2026-10-18 04:17:46,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:17:46,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:17:47,090.090 INFO    ] No existing commands found in stream
[2026-10-18 04:17:52,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:17:52,133.133 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-18 04:17:52,717.717 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:17:52,719.719 INFO    ] Checking for system updates...
[2026-10-18 04:17:52,754.754 INFO    ] 200
[2026-10-18 04:17:52,757.757 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:17:52,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:17:52,811.811 INFO    ] No update needed
[2026-10-18 04:17:52,814.814 INFO    ] Checking for camera pi updates...
[2026-10-18 04:17:52,854.854 INFO    ] 200
[2026-10-18 04:17:52,856.856 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:17:52,902.902 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:18:02,917.917 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:18:02,955.955 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:18:02,967.967 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:18:02,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:18:02,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:18:02,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:18:05,024.024 INFO    ] ================================================
[2026-10-18 04:18:05,042.042 INFO    ] Launching Daemon at Sun Oct 18 04:18:05 IST 2026
[2026-10-18 04:18:05,053.053 INFO    ] ================================================
[2026-10-18 04:18:05,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:18:05
[2026-10-18 04:18:06,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:18:06,606.606 INFO    ] Initializing speech engine...
[2026-10-18 04:18:06,616.616 INFO    ] 2026-10-18 04:18:06
[2026-10-18 04:18:06,902.902 INFO    ] 2026-10-18 04:18:06
[2026-10-18 04:18:06,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:18:07,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:18:07,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:18:07,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:18:07,345.345 INFO    ] time= 18/10/2026 04:18:07
[2026-10-18 04:18:07,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:18:07,360.360 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:18:07,446.446 INFO    ] No existing commands found in stream
[2026-10-18 04:18:12,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:18:12,486.486 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-18 04:18:13,528.528 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:18:13,530.530 INFO    ] Checking for system updates...
[2026-10-18 04:18:13,566.566 INFO    ] 200
[2026-10-18 04:18:13,568.568 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:18:13,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:18:13,622.622 INFO    ] No update needed
[2026-10-18 04:18:13,624.624 INFO    ] Checking for camera pi updates...
[2026-10-18 04:18:13,658.658 INFO    ] 200
[2026-10-18 04:18:13,660.660 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:18:13,705.705 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:18:23,718.718 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:18:23,753.753 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:18:23,762.762 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:18:23,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:18:23,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:18:23,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:18:25,815.815 INFO    ] ================================================
[2026-10-18 04:18:25,830.830 INFO    ] Launching Daemon at Sun Oct 18 04:18:25 IST 2026
[2026-10-18 04:18:25,841.841 INFO    ] ================================================
[2026-10-18 04:18:26,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:18:26
[2026-10-18 04:18:27,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:18:27,316.316 INFO    ] Initializing speech engine...
[2026-10-18 04:18:27,335.335 INFO    ] 2026-10-18 04:18:27
[2026-10-18 04:18:27,607.607 INFO    ] 2026-10-18 04:18:27
[2026-10-18 04:18:27,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:18:27,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:18:27,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:18:28,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:18:28,137.137 INFO    ] time= 18/10/2026 04:18:28
[2026-10-18 04:18:28,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:18:28,242.242 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:18:28,403.403 INFO    ] No existing commands found in stream
[2026-10-18 04:18:33,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:18:33,426.426 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-18 04:18:36,935.935 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:18:36,938.938 INFO    ] Checking for system updates...
[2026-10-18 04:18:36,977.977 INFO    ] 200
[2026-10-18 04:18:36,980.980 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:18:37,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:18:37,034.034 INFO    ] No update needed
[2026-10-18 04:18:37,036.036 INFO    ] Checking for camera pi updates...
[2026-10-18 04:18:37,077.077 INFO    ] 200
[2026-10-18 04:18:37,079.079 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:18:37,119.119 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:18:47,133.133 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:18:47,168.168 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:18:47,177.177 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:18:47,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:18:47,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:18:47,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:18:49,230.230 INFO    ] ================================================
[2026-10-18 04:18:49,246.246 INFO    ] Launching Daemon at Sun Oct 18 04:18:49 IST 2026
[2026-10-18 04:18:49,258.258 INFO    ] ================================================
[2026-10-18 04:18:49,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:18:49
[2026-10-18 04:18:50,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:18:50,900.900 INFO    ] Initializing speech engine...
[2026-10-18 04:18:50,907.907 INFO    ] 2026-10-18 04:18:50
[2026-10-18 04:18:51,224.224 INFO    ] 2026-10-18 04:18:51
[2026-10-18 04:18:51,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:18:51,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:18:51,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:18:51,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:18:51,744.744 INFO    ] time= 18/10/2026 04:18:51
[2026-10-18 04:18:51,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:18:51,784.784 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:18:51,898.898 INFO    ] No existing commands found in stream
[2026-10-18 04:18:56,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:18:56,937.937 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-18 04:18:57,974.974 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:18:57,977.977 INFO    ] Checking for system updates...
[2026-10-18 04:18:58,014.014 INFO    ] 200
[2026-10-18 04:18:58,017.017 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:18:58,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:18:58,080.080 INFO    ] No update needed
[2026-10-18 04:18:58,083.083 INFO    ] Checking for camera pi updates...
[2026-10-18 04:18:58,120.120 INFO    ] 200
[2026-10-18 04:18:58,123.123 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:18:58,163.163 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:19:08,179.179 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:19:08,215.215 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:19:08,225.225 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:19:08,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:19:08,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:19:08,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:19:10,279.279 INFO    ] ================================================
[2026-10-18 04:19:10,294.294 INFO    ] Launching Daemon at Sun Oct 18 04:19:10 IST 2026
[2026-10-18 04:19:10,305.305 INFO    ] ================================================
[2026-10-18 04:19:10,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:19:10
[2026-10-18 04:19:11,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:19:11,920.920 INFO    ] Initializing speech engine...
[2026-10-18 04:19:11,934.934 INFO    ] 2026-10-18 04:19:11
[2026-10-18 04:19:12,213.213 INFO    ] 2026-10-18 04:19:12
[2026-10-18 04:19:12,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:19:13,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:19:13,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:19:13,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:19:13,778.778 INFO    ] time= 18/10/2026 04:19:13
[2026-10-18 04:19:13,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:19:13,804.804 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:19:13,927.927 INFO    ] No existing commands found in stream
[2026-10-18 04:19:18,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:19:18,951.951 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-18 04:19:22,457.457 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:19:22,460.460 INFO    ] Checking for system updates...
[2026-10-18 04:19:22,501.501 INFO    ] 200
[2026-10-18 04:19:22,504.504 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:19:22,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:19:22,562.562 INFO    ] No update needed
[2026-10-18 04:19:22,565.565 INFO    ] Checking for camera pi updates...
[2026-10-18 04:19:22,602.602 INFO    ] 200
[2026-10-18 04:19:22,605.605 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:19:22,647.647 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:19:32,662.662 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:19:32,706.706 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:19:32,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:19:32,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:19:32,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:19:32,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:19:34,775.775 INFO    ] ================================================
[2026-10-18 04:19:34,791.791 INFO    ] Launching Daemon at Sun Oct 18 04:19:34 IST 2026
[2026-10-18 04:19:34,802.802 INFO    ] ================================================
[2026-10-18 04:19:35,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:19:35
[2026-10-18 04:19:35,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:19:36,225.225 INFO    ] Initializing speech engine...
[2026-10-18 04:19:36,234.234 INFO    ] 2026-10-18 04:19:36
[2026-10-18 04:19:36,484.484 INFO    ] 2026-10-18 04:19:36
[2026-10-18 04:19:36,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:19:36,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:19:36,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:19:37,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:19:37,065.065 INFO    ] time= 18/10/2026 04:19:37
[2026-10-18 04:19:37,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:19:37,092.092 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:19:37,208.208 INFO    ] No existing commands found in stream
[2026-10-18 04:19:42,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:19:42,240.240 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-18 04:19:44,494.494 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:19:44,497.497 INFO    ] Checking for system updates...
[2026-10-18 04:19:44,532.532 INFO    ] 200
[2026-10-18 04:19:44,535.535 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:19:44,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:19:44,590.590 INFO    ] No update needed
[2026-10-18 04:19:44,592.592 INFO    ] Checking for camera pi updates...
[2026-10-18 04:19:44,626.626 INFO    ] 200
[2026-10-18 04:19:44,628.628 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:19:44,669.669 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:19:54,684.684 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:19:54,719.719 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:19:54,729.729 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:19:54,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:19:54,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:19:54,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:19:56,782.782 INFO    ] ================================================
[2026-10-18 04:19:56,799.799 INFO    ] Launching Daemon at Sun Oct 18 04:19:56 IST 2026
[2026-10-18 04:19:56,809.809 INFO    ] ================================================
[2026-10-18 04:19:57,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:19:57
[2026-10-18 04:19:57,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:19:58,242.242 INFO    ] Initializing speech engine...
[2026-10-18 04:19:58,252.252 INFO    ] 2026-10-18 04:19:58
[2026-10-18 04:19:58,515.515 INFO    ] 2026-10-18 04:19:58
[2026-10-18 04:19:58,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:19:58,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:19:58,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:19:58,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:19:59,004.004 INFO    ] time= 18/10/2026 04:19:58
[2026-10-18 04:19:59,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:19:59,090.090 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:19:59,196.196 INFO    ] No existing commands found in stream
[2026-10-18 04:20:04,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:20:04,226.226 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-18 04:20:07,858.858 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:20:07,861.861 INFO    ] Checking for system updates...
[2026-10-18 04:20:07,897.897 INFO    ] 200
[2026-10-18 04:20:07,899.899 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:20:07,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:20:07,955.955 INFO    ] No update needed
[2026-10-18 04:20:07,958.958 INFO    ] Checking for camera pi updates...
[2026-10-18 04:20:07,994.994 INFO    ] 200
[2026-10-18 04:20:07,997.997 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:20:08,037.037 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:20:18,053.053 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:20:18,088.088 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:20:18,097.097 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:20:18,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:20:18,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:20:18,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:20:20,149.149 INFO    ] ================================================
[2026-10-18 04:20:20,165.165 INFO    ] Launching Daemon at Sun Oct 18 04:20:20 IST 2026
[2026-10-18 04:20:20,176.176 INFO    ] ================================================
[2026-10-18 04:20:20,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:20:20
[2026-10-18 04:20:21,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:20:21,761.761 INFO    ] Initializing speech engine...
[2026-10-18 04:20:21,767.767 INFO    ] 2026-10-18 04:20:21
[2026-10-18 04:20:22,037.037 INFO    ] 2026-10-18 04:20:22
[2026-10-18 04:20:22,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:20:22,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:20:22,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:20:22,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:20:22,602.602 INFO    ] time= 18/10/2026 04:20:22
[2026-10-18 04:20:22,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:20:22,641.641 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:20:22,746.746 INFO    ] No existing commands found in stream
[2026-10-18 04:20:27,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:20:27,789.789 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-18 04:20:29,891.891 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:20:29,894.894 INFO    ] Checking for system updates...
[2026-10-18 04:20:29,930.930 INFO    ] 200
[2026-10-18 04:20:29,933.933 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:20:29,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:20:29,987.987 INFO    ] No update needed
[2026-10-18 04:20:29,989.989 INFO    ] Checking for camera pi updates...
[2026-10-18 04:20:30,027.027 INFO    ] 200
[2026-10-18 04:20:30,029.029 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:20:30,069.069 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:20:40,084.084 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:20:40,118.118 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:20:40,128.128 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:20:40,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:20:40,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:20:40,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:20:42,180.180 INFO    ] ================================================
[2026-10-18 04:20:42,196.196 INFO    ] Launching Daemon at Sun Oct 18 04:20:42 IST 2026
[2026-10-18 04:20:42,207.207 INFO    ] ================================================
[2026-10-18 04:20:42,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:20:42
[2026-10-18 04:20:43,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:20:43,624.624 INFO    ] Initializing speech engine...
[2026-10-18 04:20:43,645.645 INFO    ] 2026-10-18 04:20:43
[2026-10-18 04:20:43,902.902 INFO    ] 2026-10-18 04:20:43
[2026-10-18 04:20:43,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:20:44,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:20:44,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:20:44,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:20:44,432.432 INFO    ] time= 18/10/2026 04:20:44
[2026-10-18 04:20:44,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:20:44,467.467 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:20:44,610.610 INFO    ] No existing commands found in stream
[2026-10-18 04:20:49,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:20:49,626.626 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-18 04:20:53,352.352 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:20:53,355.355 INFO    ] Checking for system updates...
[2026-10-18 04:20:53,396.396 INFO    ] 200
[2026-10-18 04:20:53,399.399 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:20:53,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:20:53,456.456 INFO    ] No update needed
[2026-10-18 04:20:53,458.458 INFO    ] Checking for camera pi updates...
[2026-10-18 04:20:53,492.492 INFO    ] 200
[2026-10-18 04:20:53,495.495 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:20:53,536.536 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:21:03,549.549 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:21:03,584.584 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:21:03,594.594 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:21:03,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:21:03,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:21:03,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:21:05,648.648 INFO    ] ================================================
[2026-10-18 04:21:05,663.663 INFO    ] Launching Daemon at Sun Oct 18 04:21:05 IST 2026
[2026-10-18 04:21:05,674.674 INFO    ] ================================================
[2026-10-18 04:21:06,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:21:06
[2026-10-18 04:21:06,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:21:07,141.141 INFO    ] Initializing speech engine...
[2026-10-18 04:21:07,151.151 INFO    ] 2026-10-18 04:21:07
[2026-10-18 04:21:07,404.404 INFO    ] 2026-10-18 04:21:07
[2026-10-18 04:21:07,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:21:07,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:21:07,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:21:07,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:21:07,823.823 INFO    ] time= 18/10/2026 04:21:07
[2026-10-18 04:21:07,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:21:07,861.861 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:21:07,977.977 INFO    ] No existing commands found in stream
[2026-10-18 04:21:13,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:21:14,352.352 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-18 04:21:18,560.560 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:21:18,563.563 INFO    ] Checking for system updates...
[2026-10-18 04:21:18,603.603 INFO    ] 200
[2026-10-18 04:21:18,606.606 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:21:18,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:21:18,662.662 INFO    ] No update needed
[2026-10-18 04:21:18,664.664 INFO    ] Checking for camera pi updates...
[2026-10-18 04:21:18,702.702 INFO    ] 200
[2026-10-18 04:21:18,704.704 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:21:18,746.746 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:21:28,762.762 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:21:28,801.801 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:21:28,812.812 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:21:28,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:21:28,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:21:28,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:21:30,868.868 INFO    ] ================================================
[2026-10-18 04:21:30,884.884 INFO    ] Launching Daemon at Sun Oct 18 04:21:30 IST 2026
[2026-10-18 04:21:30,896.896 INFO    ] ================================================
[2026-10-18 04:21:31,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:21:31
[2026-10-18 04:21:32,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:21:32,601.601 INFO    ] Initializing speech engine...
[2026-10-18 04:21:32,607.607 INFO    ] 2026-10-18 04:21:32
[2026-10-18 04:21:32,871.871 INFO    ] 2026-10-18 04:21:32
[2026-10-18 04:21:32,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:21:33,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:21:33,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:21:33,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:21:33,290.290 INFO    ] time= 18/10/2026 04:21:33
[2026-10-18 04:21:33,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:21:33,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:21:33,497.497 INFO    ] No existing commands found in stream
[2026-10-18 04:21:38,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:21:38,521.521 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-18 04:21:42,190.190 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:21:42,193.193 INFO    ] Checking for system updates...
[2026-10-18 04:21:42,232.232 INFO    ] 200
[2026-10-18 04:21:42,234.234 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:21:42,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:21:42,288.288 INFO    ] No update needed
[2026-10-18 04:21:42,291.291 INFO    ] Checking for camera pi updates...
[2026-10-18 04:21:42,328.328 INFO    ] 200
[2026-10-18 04:21:42,330.330 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:21:42,370.370 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:21:52,383.383 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:21:52,418.418 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:21:52,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:21:52,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:21:52,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:21:52,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:21:54,480.480 INFO    ] ================================================
[2026-10-18 04:21:54,496.496 INFO    ] Launching Daemon at Sun Oct 18 04:21:54 IST 2026
[2026-10-18 04:21:54,507.507 INFO    ] ================================================
[2026-10-18 04:21:55,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:21:55
[2026-10-18 04:21:55,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:21:56,111.111 INFO    ] Initializing speech engine...
[2026-10-18 04:21:56,120.120 INFO    ] 2026-10-18 04:21:56
[2026-10-18 04:21:56,405.405 INFO    ] 2026-10-18 04:21:56
[2026-10-18 04:21:56,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:21:56,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:21:56,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:21:56,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:21:56,943.943 INFO    ] time= 18/10/2026 04:21:56
[2026-10-18 04:21:56,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:21:56,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:21:57,118.118 INFO    ] No existing commands found in stream
[2026-10-18 04:22:02,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:22:02,152.152 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-18 04:22:04,990.990 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:22:04,993.993 INFO    ] Checking for system updates...
[2026-10-18 04:22:05,030.030 INFO    ] 200
[2026-10-18 04:22:05,033.033 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:22:05,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:22:05,089.089 INFO    ] No update needed
[2026-10-18 04:22:05,092.092 INFO    ] Checking for camera pi updates...
[2026-10-18 04:22:05,130.130 INFO    ] 200
[2026-10-18 04:22:05,133.133 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:22:05,174.174 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:22:15,191.191 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:22:15,231.231 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:22:15,243.243 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:22:15,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:22:15,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:22:15,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:22:17,298.298 INFO    ] ================================================
[2026-10-18 04:22:17,313.313 INFO    ] Launching Daemon at Sun Oct 18 04:22:17 IST 2026
[2026-10-18 04:22:17,324.324 INFO    ] ================================================
[2026-10-18 04:22:17,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:22:17
[2026-10-18 04:22:18,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:22:18,780.780 INFO    ] Initializing speech engine...
[2026-10-18 04:22:18,790.790 INFO    ] 2026-10-18 04:22:18
[2026-10-18 04:22:19,052.052 INFO    ] 2026-10-18 04:22:19
[2026-10-18 04:22:19,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:22:19,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:22:19,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:22:19,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:22:19,597.597 INFO    ] time= 18/10/2026 04:22:19
[2026-10-18 04:22:19,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:22:19,649.649 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:22:19,752.752 INFO    ] No existing commands found in stream
[2026-10-18 04:22:24,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:22:24,767.767 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-18 04:22:26,673.673 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:22:26,676.676 INFO    ] Checking for system updates...
[2026-10-18 04:22:26,722.722 INFO    ] 200
[2026-10-18 04:22:26,725.725 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:22:26,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:22:26,788.788 INFO    ] No update needed
[2026-10-18 04:22:26,791.791 INFO    ] Checking for camera pi updates...
[2026-10-18 04:22:26,829.829 INFO    ] 200
[2026-10-18 04:22:26,832.832 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:22:26,879.879 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:22:36,895.895 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:22:36,936.936 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:22:36,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:22:36,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:22:36,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:22:36,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:22:39,004.004 INFO    ] ================================================
[2026-10-18 04:22:39,020.020 INFO    ] Launching Daemon at Sun Oct 18 04:22:39 IST 2026
[2026-10-18 04:22:39,031.031 INFO    ] ================================================
[2026-10-18 04:22:39,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:22:39
[2026-10-18 04:22:40,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:22:40,488.488 INFO    ] Initializing speech engine...
[2026-10-18 04:22:40,498.498 INFO    ] 2026-10-18 04:22:40
[2026-10-18 04:22:40,749.749 INFO    ] 2026-10-18 04:22:40
[2026-10-18 04:22:40,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:22:41,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:22:41,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:22:41,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:22:41,309.309 INFO    ] time= 18/10/2026 04:22:41
[2026-10-18 04:22:41,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:22:41,339.339 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:22:41,477.477 INFO    ] No existing commands found in stream
[2026-10-18 04:22:46,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:22:46,494.494 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-18 04:22:47,558.558 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:22:47,561.561 INFO    ] Checking for system updates...
[2026-10-18 04:22:47,597.597 INFO    ] 200
[2026-10-18 04:22:47,600.600 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:22:47,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:22:47,658.658 INFO    ] No update needed
[2026-10-18 04:22:47,660.660 INFO    ] Checking for camera pi updates...
[2026-10-18 04:22:47,694.694 INFO    ] 200
[2026-10-18 04:22:47,697.697 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:22:47,738.738 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:22:57,754.754 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:22:57,790.790 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:22:57,799.799 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:22:57,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:22:57,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:22:57,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:22:59,853.853 INFO    ] ================================================
[2026-10-18 04:22:59,869.869 INFO    ] Launching Daemon at Sun Oct 18 04:22:59 IST 2026
[2026-10-18 04:22:59,880.880 INFO    ] ================================================
[2026-10-18 04:23:00,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:23:00
[2026-10-18 04:23:01,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:23:01,558.558 INFO    ] Initializing speech engine...
[2026-10-18 04:23:01,596.596 INFO    ] 2026-10-18 04:23:01
[2026-10-18 04:23:02,062.062 INFO    ] 2026-10-18 04:23:02
[2026-10-18 04:23:02,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:23:02,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:23:02,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:23:02,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:23:02,541.541 INFO    ] time= 18/10/2026 04:23:02
[2026-10-18 04:23:02,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:23:02,590.590 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:23:02,702.702 INFO    ] No existing commands found in stream
[2026-10-18 04:23:07,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:23:07,725.725 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-18 04:23:12,085.085 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:23:12,088.088 INFO    ] Checking for system updates...
[2026-10-18 04:23:12,124.124 INFO    ] 200
[2026-10-18 04:23:12,127.127 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:23:12,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:23:12,183.183 INFO    ] No update needed
[2026-10-18 04:23:12,186.186 INFO    ] Checking for camera pi updates...
[2026-10-18 04:23:12,221.221 INFO    ] 200
[2026-10-18 04:23:12,224.224 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:23:12,264.264 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:23:22,280.280 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:23:22,320.320 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:23:22,331.331 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:23:22,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:23:22,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:23:22,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:23:24,386.386 INFO    ] ================================================
[2026-10-18 04:23:24,401.401 INFO    ] Launching Daemon at Sun Oct 18 04:23:24 IST 2026
[2026-10-18 04:23:24,412.412 INFO    ] ================================================
[2026-10-18 04:23:24,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:23:24
[2026-10-18 04:23:25,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:23:25,840.840 INFO    ] Initializing speech engine...
[2026-10-18 04:23:25,856.856 INFO    ] 2026-10-18 04:23:25
[2026-10-18 04:23:26,140.140 INFO    ] 2026-10-18 04:23:26
[2026-10-18 04:23:26,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:23:26,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:23:26,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:23:26,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:23:26,557.557 INFO    ] time= 18/10/2026 04:23:26
[2026-10-18 04:23:26,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:23:26,568.568 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:23:26,641.641 INFO    ] No existing commands found in stream
[2026-10-18 04:23:31,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:23:31,657.657 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-18 04:23:32,731.731 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:23:32,734.734 INFO    ] Checking for system updates...
[2026-10-18 04:23:32,773.773 INFO    ] 200
[2026-10-18 04:23:32,775.775 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:23:32,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:23:32,831.831 INFO    ] No update needed
[2026-10-18 04:23:32,834.834 INFO    ] Checking for camera pi updates...
[2026-10-18 04:23:32,871.871 INFO    ] 200
[2026-10-18 04:23:32,873.873 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:23:32,913.913 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:23:42,929.929 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:23:42,964.964 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:23:42,974.974 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:23:42,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:23:42,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:23:42,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:23:45,027.027 INFO    ] ================================================
[2026-10-18 04:23:45,043.043 INFO    ] Launching Daemon at Sun Oct 18 04:23:45 IST 2026
[2026-10-18 04:23:45,055.055 INFO    ] ================================================
[2026-10-18 04:23:45,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:23:45
[2026-10-18 04:23:46,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:23:46,470.470 INFO    ] Initializing speech engine...
[2026-10-18 04:23:46,477.477 INFO    ] 2026-10-18 04:23:46
[2026-10-18 04:23:46,773.773 INFO    ] 2026-10-18 04:23:46
[2026-10-18 04:23:46,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:23:47,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:23:47,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:23:47,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:23:47,193.193 INFO    ] time= 18/10/2026 04:23:47
[2026-10-18 04:23:47,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:23:47,266.266 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:23:47,378.378 INFO    ] No existing commands found in stream
[2026-10-18 04:23:52,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:23:52,406.406 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-18 04:23:52,993.993 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:23:52,996.996 INFO    ] Checking for system updates...
[2026-10-18 04:23:53,031.031 INFO    ] 200
[2026-10-18 04:23:53,033.033 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:23:53,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:23:53,087.087 INFO    ] No update needed
[2026-10-18 04:23:53,089.089 INFO    ] Checking for camera pi updates...
[2026-10-18 04:23:53,123.123 INFO    ] 200
[2026-10-18 04:23:53,125.125 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:23:53,165.165 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:24:03,178.178 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:24:03,213.213 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:24:03,223.223 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:24:03,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:24:03,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:24:03,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:24:05,281.281 INFO    ] ================================================
[2026-10-18 04:24:05,297.297 INFO    ] Launching Daemon at Sun Oct 18 04:24:05 IST 2026
[2026-10-18 04:24:05,308.308 INFO    ] ================================================
[2026-10-18 04:24:05,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:24:05
[2026-10-18 04:24:06,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:24:06,777.777 INFO    ] Initializing speech engine...
[2026-10-18 04:24:06,790.790 INFO    ] 2026-10-18 04:24:06
[2026-10-18 04:24:07,054.054 INFO    ] 2026-10-18 04:24:07
[2026-10-18 04:24:07,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:24:07,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:24:07,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:24:07,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:24:07,598.598 INFO    ] time= 18/10/2026 04:24:07
[2026-10-18 04:24:07,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:24:07,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:24:07,749.749 INFO    ] No existing commands found in stream
[2026-10-18 04:24:12,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:24:12,769.769 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-18 04:24:14,489.489 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:24:14,492.492 INFO    ] Checking for system updates...
[2026-10-18 04:24:14,528.528 INFO    ] 200
[2026-10-18 04:24:14,531.531 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:24:14,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:24:14,594.594 INFO    ] No update needed
[2026-10-18 04:24:14,597.597 INFO    ] Checking for camera pi updates...
[2026-10-18 04:24:14,632.632 INFO    ] 200
[2026-10-18 04:24:14,635.635 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:24:14,676.676 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:24:24,693.693 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:24:24,732.732 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:24:24,743.743 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:24:24,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:24:24,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:24:24,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:24:26,797.797 INFO    ] ================================================
[2026-10-18 04:24:26,813.813 INFO    ] Launching Daemon at Sun Oct 18 04:24:26 IST 2026
[2026-10-18 04:24:26,824.824 INFO    ] ================================================
[2026-10-18 04:24:27,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:24:27
[2026-10-18 04:24:27,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:24:28,254.254 INFO    ] Initializing speech engine...
[2026-10-18 04:24:28,263.263 INFO    ] 2026-10-18 04:24:28
[2026-10-18 04:24:28,522.522 INFO    ] 2026-10-18 04:24:28
[2026-10-18 04:24:28,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:24:28,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:24:28,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:24:28,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:24:28,974.974 INFO    ] time= 18/10/2026 04:24:28
[2026-10-18 04:24:29,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:24:29,067.067 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:24:29,153.153 INFO    ] No existing commands found in stream
[2026-10-18 04:24:34,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:24:34,168.168 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-18 04:24:35,946.946 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:24:35,949.949 INFO    ] Checking for system updates...
[2026-10-18 04:24:35,988.988 INFO    ] 200
[2026-10-18 04:24:35,991.991 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:24:36,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:24:36,047.047 INFO    ] No update needed
[2026-10-18 04:24:36,050.050 INFO    ] Checking for camera pi updates...
[2026-10-18 04:24:36,084.084 INFO    ] 200
[2026-10-18 04:24:36,087.087 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:24:36,133.133 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:24:46,149.149 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:24:46,190.190 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:24:46,201.201 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:24:46,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:24:46,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:24:46,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:24:48,257.257 INFO    ] ================================================
[2026-10-18 04:24:48,273.273 INFO    ] Launching Daemon at Sun Oct 18 04:24:48 IST 2026
[2026-10-18 04:24:48,284.284 INFO    ] ================================================
[2026-10-18 04:24:48,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:24:48
[2026-10-18 04:24:49,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:24:49,911.911 INFO    ] Initializing speech engine...
[2026-10-18 04:24:49,920.920 INFO    ] 2026-10-18 04:24:49
[2026-10-18 04:24:50,213.213 INFO    ] 2026-10-18 04:24:50
[2026-10-18 04:24:50,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:24:50,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:24:50,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:24:50,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:24:50,771.771 INFO    ] time= 18/10/2026 04:24:50
[2026-10-18 04:24:50,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:24:50,796.796 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:24:50,927.927 INFO    ] No existing commands found in stream
[2026-10-18 04:24:55,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:24:55,950.950 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-18 04:24:57,470.470 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:24:57,473.473 INFO    ] Checking for system updates...
[2026-10-18 04:24:57,510.510 INFO    ] 200
[2026-10-18 04:24:57,513.513 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:24:57,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:24:57,570.570 INFO    ] No update needed
[2026-10-18 04:24:57,573.573 INFO    ] Checking for camera pi updates...
[2026-10-18 04:24:57,607.607 INFO    ] 200
[2026-10-18 04:24:57,610.610 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:24:57,651.651 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:25:07,668.668 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:25:07,703.703 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:25:07,712.712 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:25:07,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:25:07,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:25:07,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:25:09,765.765 INFO    ] ================================================
[2026-10-18 04:25:09,780.780 INFO    ] Launching Daemon at Sun Oct 18 04:25:09 IST 2026
[2026-10-18 04:25:09,791.791 INFO    ] ================================================
[2026-10-18 04:25:10,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:25:10
[2026-10-18 04:25:10,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:25:11,212.212 INFO    ] Initializing speech engine...
[2026-10-18 04:25:11,219.219 INFO    ] 2026-10-18 04:25:11
[2026-10-18 04:25:11,468.468 INFO    ] 2026-10-18 04:25:11
[2026-10-18 04:25:11,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:25:11,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:25:11,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:25:11,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:25:12,022.022 INFO    ] time= 18/10/2026 04:25:11
[2026-10-18 04:25:12,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:25:12,067.067 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:25:12,239.239 INFO    ] No existing commands found in stream
[2026-10-18 04:25:17,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:25:17,259.259 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-18 04:25:18,166.166 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:25:18,168.168 INFO    ] Checking for system updates...
[2026-10-18 04:25:18,203.203 INFO    ] 200
[2026-10-18 04:25:18,206.206 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:25:18,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:25:18,261.261 INFO    ] No update needed
[2026-10-18 04:25:18,264.264 INFO    ] Checking for camera pi updates...
[2026-10-18 04:25:18,297.297 INFO    ] 200
[2026-10-18 04:25:18,300.300 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:25:18,340.340 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:25:28,356.356 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:25:28,390.390 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:25:28,400.400 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:25:28,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:25:28,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:25:28,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:25:30,454.454 INFO    ] ================================================
[2026-10-18 04:25:30,470.470 INFO    ] Launching Daemon at Sun Oct 18 04:25:30 IST 2026
[2026-10-18 04:25:30,481.481 INFO    ] ================================================
[2026-10-18 04:25:31,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:25:31
[2026-10-18 04:25:31,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:25:31,978.978 INFO    ] Initializing speech engine...
[2026-10-18 04:25:31,988.988 INFO    ] 2026-10-18 04:25:31
[2026-10-18 04:25:32,249.249 INFO    ] 2026-10-18 04:25:32
[2026-10-18 04:25:32,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:25:32,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:25:32,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:25:32,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:25:32,845.845 INFO    ] time= 18/10/2026 04:25:32
[2026-10-18 04:25:32,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:25:32,871.871 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:25:33,009.009 INFO    ] No existing commands found in stream
[2026-10-18 04:25:38,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:25:38,029.029 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-18 04:25:38,646.646 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:25:38,648.648 INFO    ] Checking for system updates...
[2026-10-18 04:25:38,684.684 INFO    ] 200
[2026-10-18 04:25:38,686.686 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:25:38,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:25:38,745.745 INFO    ] No update needed
[2026-10-18 04:25:38,748.748 INFO    ] Checking for camera pi updates...
[2026-10-18 04:25:38,781.781 INFO    ] 200
[2026-10-18 04:25:38,784.784 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:25:38,823.823 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:25:48,839.839 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:25:48,874.874 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:25:48,883.883 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:25:48,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:25:48,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:25:48,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:25:50,935.935 INFO    ] ================================================
[2026-10-18 04:25:50,951.951 INFO    ] Launching Daemon at Sun Oct 18 04:25:50 IST 2026
[2026-10-18 04:25:50,961.961 INFO    ] ================================================
[2026-10-18 04:25:51,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:25:51
[2026-10-18 04:25:52,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:25:52,458.458 INFO    ] Initializing speech engine...
[2026-10-18 04:25:52,467.467 INFO    ] 2026-10-18 04:25:52
[2026-10-18 04:25:52,740.740 INFO    ] 2026-10-18 04:25:52
[2026-10-18 04:25:52,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:25:52,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:25:53,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:25:53,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:25:53,232.232 INFO    ] time= 18/10/2026 04:25:53
[2026-10-18 04:25:53,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:25:53,317.317 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:25:53,446.446 INFO    ] No existing commands found in stream
[2026-10-18 04:25:58,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:25:58,479.479 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-18 04:26:00,374.374 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:26:00,377.377 INFO    ] Checking for system updates...
[2026-10-18 04:26:00,416.416 INFO    ] 200
[2026-10-18 04:26:00,419.419 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:26:00,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:26:00,474.474 INFO    ] No update needed
[2026-10-18 04:26:00,477.477 INFO    ] Checking for camera pi updates...
[2026-10-18 04:26:00,516.516 INFO    ] 200
[2026-10-18 04:26:00,519.519 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:26:00,567.567 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:26:10,582.582 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:26:10,622.622 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:26:10,634.634 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:26:10,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:26:10,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:26:10,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:26:12,690.690 INFO    ] ================================================
[2026-10-18 04:26:12,705.705 INFO    ] Launching Daemon at Sun Oct 18 04:26:12 IST 2026
[2026-10-18 04:26:12,716.716 INFO    ] ================================================
[2026-10-18 04:26:13,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:26:13
[2026-10-18 04:26:13,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:26:14,151.151 INFO    ] Initializing speech engine...
[2026-10-18 04:26:14,163.163 INFO    ] 2026-10-18 04:26:14
[2026-10-18 04:26:14,417.417 INFO    ] 2026-10-18 04:26:14
[2026-10-18 04:26:14,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:26:14,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:26:14,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:26:14,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:26:14,909.909 INFO    ] time= 18/10/2026 04:26:14
[2026-10-18 04:26:14,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:26:14,987.987 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:26:15,114.114 INFO    ] No existing commands found in stream
[2026-10-18 04:26:20,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:26:20,144.144 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-18 04:26:24,280.280 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:26:24,282.282 INFO    ] Checking for system updates...
[2026-10-18 04:26:24,322.322 INFO    ] 200
[2026-10-18 04:26:24,325.325 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:26:24,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:26:24,383.383 INFO    ] No update needed
[2026-10-18 04:26:24,386.386 INFO    ] Checking for camera pi updates...
[2026-10-18 04:26:24,423.423 INFO    ] 200
[2026-10-18 04:26:24,426.426 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:26:24,476.476 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:26:34,491.491 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:26:34,530.530 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:26:34,541.541 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:26:34,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:26:34,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:26:34,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:26:36,596.596 INFO    ] ================================================
[2026-10-18 04:26:36,611.611 INFO    ] Launching Daemon at Sun Oct 18 04:26:36 IST 2026
[2026-10-18 04:26:36,622.622 INFO    ] ================================================
[2026-10-18 04:26:37,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:26:37
[2026-10-18 04:26:37,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:26:38,047.047 INFO    ] Initializing speech engine...
[2026-10-18 04:26:38,053.053 INFO    ] 2026-10-18 04:26:38
[2026-10-18 04:26:38,355.355 INFO    ] 2026-10-18 04:26:38
[2026-10-18 04:26:38,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:26:38,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:26:38,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:26:38,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:26:38,916.916 INFO    ] time= 18/10/2026 04:26:38
[2026-10-18 04:26:38,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:26:38,943.943 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:26:39,057.057 INFO    ] No existing commands found in stream
[2026-10-18 04:26:44,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:26:44,087.087 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-18 04:26:45,012.012 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:26:45,015.015 INFO    ] Checking for system updates...
[2026-10-18 04:26:45,050.050 INFO    ] 200
[2026-10-18 04:26:45,053.053 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:26:45,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:26:45,109.109 INFO    ] No update needed
[2026-10-18 04:26:45,112.112 INFO    ] Checking for camera pi updates...
[2026-10-18 04:26:45,149.149 INFO    ] 200
[2026-10-18 04:26:45,151.151 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:26:45,192.192 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:26:55,207.207 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:26:55,242.242 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:26:55,252.252 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:26:55,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:26:55,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:26:55,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:26:57,304.304 INFO    ] ================================================
[2026-10-18 04:26:57,320.320 INFO    ] Launching Daemon at Sun Oct 18 04:26:57 IST 2026
[2026-10-18 04:26:57,330.330 INFO    ] ================================================
[2026-10-18 04:26:57,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:26:57
[2026-10-18 04:26:58,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:26:58,751.751 INFO    ] Initializing speech engine...
[2026-10-18 04:26:58,760.760 INFO    ] 2026-10-18 04:26:58
[2026-10-18 04:26:59,011.011 INFO    ] 2026-10-18 04:26:59
[2026-10-18 04:26:59,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:26:59,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:26:59,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:26:59,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:26:59,488.488 INFO    ] time= 18/10/2026 04:26:59
[2026-10-18 04:26:59,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:26:59,586.586 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:26:59,738.738 INFO    ] No existing commands found in stream
[2026-10-18 04:27:04,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:27:04,757.757 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-18 04:27:08,017.017 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:27:08,020.020 INFO    ] Checking for system updates...
[2026-10-18 04:27:08,055.055 INFO    ] 200
[2026-10-18 04:27:08,058.058 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:27:08,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:27:08,121.121 INFO    ] No update needed
[2026-10-18 04:27:08,123.123 INFO    ] Checking for camera pi updates...
[2026-10-18 04:27:08,157.157 INFO    ] 200
[2026-10-18 04:27:08,159.159 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:27:08,199.199 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:27:18,214.214 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:27:18,249.249 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:27:18,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:27:18,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:27:18,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:27:18,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:27:20,311.311 INFO    ] ================================================
[2026-10-18 04:27:20,326.326 INFO    ] Launching Daemon at Sun Oct 18 04:27:20 IST 2026
[2026-10-18 04:27:20,337.337 INFO    ] ================================================
[2026-10-18 04:27:20,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:27:20
[2026-10-18 04:27:21,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:27:21,756.756 INFO    ] Initializing speech engine...
[2026-10-18 04:27:21,781.781 INFO    ] 2026-10-18 04:27:21
[2026-10-18 04:27:22,050.050 INFO    ] 2026-10-18 04:27:22
[2026-10-18 04:27:22,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:27:22,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:27:22,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:27:22,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:27:22,575.575 INFO    ] time= 18/10/2026 04:27:22
[2026-10-18 04:27:22,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:27:22,674.674 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:27:22,797.797 INFO    ] No existing commands found in stream
[2026-10-18 04:27:27,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:27:27,819.819 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-18 04:27:28,468.468 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:27:28,471.471 INFO    ] Checking for system updates...
[2026-10-18 04:27:28,507.507 INFO    ] 200
[2026-10-18 04:27:28,509.509 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:27:28,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:27:28,563.563 INFO    ] No update needed
[2026-10-18 04:27:28,566.566 INFO    ] Checking for camera pi updates...
[2026-10-18 04:27:28,600.600 INFO    ] 200
[2026-10-18 04:27:28,603.603 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:27:28,643.643 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:27:38,656.656 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:27:38,692.692 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:27:38,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:27:38,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:27:38,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:27:38,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:27:40,754.754 INFO    ] ================================================
[2026-10-18 04:27:40,770.770 INFO    ] Launching Daemon at Sun Oct 18 04:27:40 IST 2026
[2026-10-18 04:27:40,780.780 INFO    ] ================================================
[2026-10-18 04:27:41,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:27:41
[2026-10-18 04:27:41,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:27:42,239.239 INFO    ] Initializing speech engine...
[2026-10-18 04:27:42,250.250 INFO    ] 2026-10-18 04:27:42
[2026-10-18 04:27:42,497.497 INFO    ] 2026-10-18 04:27:42
[2026-10-18 04:27:42,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:27:42,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:27:42,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:27:42,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:27:43,000.000 INFO    ] time= 18/10/2026 04:27:42
[2026-10-18 04:27:43,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:27:43,069.069 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:27:43,199.199 INFO    ] No existing commands found in stream
[2026-10-18 04:27:48,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:27:48,226.226 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-18 04:27:52,363.363 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:27:52,366.366 INFO    ] Checking for system updates...
[2026-10-18 04:27:52,402.402 INFO    ] 200
[2026-10-18 04:27:52,404.404 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:27:52,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:27:52,464.464 INFO    ] No update needed
[2026-10-18 04:27:52,467.467 INFO    ] Checking for camera pi updates...
[2026-10-18 04:27:52,500.500 INFO    ] 200
[2026-10-18 04:27:52,503.503 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:27:52,543.543 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:28:02,559.559 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:28:02,607.607 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:28:02,620.620 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:28:02,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:28:02,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:28:02,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:28:04,685.685 INFO    ] ================================================
[2026-10-18 04:28:04,701.701 INFO    ] Launching Daemon at Sun Oct 18 04:28:04 IST 2026
[2026-10-18 04:28:04,712.712 INFO    ] ================================================
[2026-10-18 04:28:05,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:28:05
[2026-10-18 04:28:05,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:28:06,128.128 INFO    ] Initializing speech engine...
[2026-10-18 04:28:06,137.137 INFO    ] 2026-10-18 04:28:06
[2026-10-18 04:28:06,398.398 INFO    ] 2026-10-18 04:28:06
[2026-10-18 04:28:06,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:28:06,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:28:06,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:28:06,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:28:06,898.898 INFO    ] time= 18/10/2026 04:28:06
[2026-10-18 04:28:06,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:28:06,972.972 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:28:07,120.120 INFO    ] No existing commands found in stream
[2026-10-18 04:28:12,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:28:12,133.133 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-18 04:28:12,994.994 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:28:12,997.997 INFO    ] Checking for system updates...
[2026-10-18 04:28:13,032.032 INFO    ] 200
[2026-10-18 04:28:13,035.035 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:28:13,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:28:13,092.092 INFO    ] No update needed
[2026-10-18 04:28:13,094.094 INFO    ] Checking for camera pi updates...
[2026-10-18 04:28:13,128.128 INFO    ] 200
[2026-10-18 04:28:13,131.131 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:28:13,177.177 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:28:23,191.191 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:28:23,226.226 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:28:23,236.236 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:28:23,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:28:23,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:28:23,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:28:25,288.288 INFO    ] ================================================
[2026-10-18 04:28:25,304.304 INFO    ] Launching Daemon at Sun Oct 18 04:28:25 IST 2026
[2026-10-18 04:28:25,315.315 INFO    ] ================================================
[2026-10-18 04:28:25,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:28:25
[2026-10-18 04:28:26,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:28:26,844.844 INFO    ] Initializing speech engine...
[2026-10-18 04:28:26,853.853 INFO    ] 2026-10-18 04:28:26
[2026-10-18 04:28:27,097.097 INFO    ] 2026-10-18 04:28:27
[2026-10-18 04:28:27,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:28:27,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:28:27,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:28:27,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:28:27,597.597 INFO    ] time= 18/10/2026 04:28:27
[2026-10-18 04:28:27,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:28:27,660.660 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:28:27,804.804 INFO    ] No existing commands found in stream
[2026-10-18 04:28:32,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:28:32,821.821 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-18 04:28:37,283.283 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:28:37,285.285 INFO    ] Checking for system updates...
[2026-10-18 04:28:37,321.321 INFO    ] 200
[2026-10-18 04:28:37,323.323 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:28:37,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:28:37,381.381 INFO    ] No update needed
[2026-10-18 04:28:37,383.383 INFO    ] Checking for camera pi updates...
[2026-10-18 04:28:37,417.417 INFO    ] 200
[2026-10-18 04:28:37,419.419 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:28:37,459.459 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:28:47,475.475 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:28:47,510.510 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:28:47,519.519 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:28:47,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:28:47,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:28:47,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:28:49,573.573 INFO    ] ================================================
[2026-10-18 04:28:49,589.589 INFO    ] Launching Daemon at Sun Oct 18 04:28:49 IST 2026
[2026-10-18 04:28:49,600.600 INFO    ] ================================================
[2026-10-18 04:28:50,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:28:50
[2026-10-18 04:28:50,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:28:51,250.250 INFO    ] Initializing speech engine...
[2026-10-18 04:28:51,263.263 INFO    ] 2026-10-18 04:28:51
[2026-10-18 04:28:51,552.552 INFO    ] 2026-10-18 04:28:51
[2026-10-18 04:28:51,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:28:51,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:28:51,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:28:52,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:28:52,105.105 INFO    ] time= 18/10/2026 04:28:52
[2026-10-18 04:28:52,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:28:52,130.130 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:28:52,265.265 INFO    ] No existing commands found in stream
[2026-10-18 04:28:57,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:28:57,291.291 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-18 04:28:59,678.678 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:28:59,681.681 INFO    ] Checking for system updates...
[2026-10-18 04:28:59,718.718 INFO    ] 200
[2026-10-18 04:28:59,721.721 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:28:59,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:28:59,777.777 INFO    ] No update needed
[2026-10-18 04:28:59,779.779 INFO    ] Checking for camera pi updates...
[2026-10-18 04:28:59,816.816 INFO    ] 200
[2026-10-18 04:28:59,818.818 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:28:59,860.860 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:29:09,875.875 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:29:09,916.916 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:29:09,927.927 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:29:09,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:29:09,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:29:09,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:29:11,982.982 INFO    ] ================================================
[2026-10-18 04:29:12,998.998 INFO    ] Launching Daemon at Sun Oct 18 04:29:11 IST 2026
[2026-10-18 04:29:12,008.008 INFO    ] ================================================
[2026-10-18 04:29:12,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:29:12
[2026-10-18 04:29:13,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:29:13,512.512 INFO    ] Initializing speech engine...
[2026-10-18 04:29:13,521.521 INFO    ] 2026-10-18 04:29:13
[2026-10-18 04:29:13,796.796 INFO    ] 2026-10-18 04:29:13
[2026-10-18 04:29:13,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:29:14,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:29:14,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:29:14,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:29:14,306.306 INFO    ] time= 18/10/2026 04:29:14
[2026-10-18 04:29:14,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:29:14,366.366 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:29:14,496.496 INFO    ] No existing commands found in stream
[2026-10-18 04:29:19,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:29:19,523.523 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-18 04:29:21,903.903 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:29:21,906.906 INFO    ] Checking for system updates...
[2026-10-18 04:29:21,942.942 INFO    ] 200
[2026-10-18 04:29:21,945.945 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:29:21,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:29:21,999.999 INFO    ] No update needed
[2026-10-18 04:29:22,002.002 INFO    ] Checking for camera pi updates...
[2026-10-18 04:29:22,040.040 INFO    ] 200
[2026-10-18 04:29:22,042.042 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:29:22,088.088 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:29:32,104.104 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:29:32,148.148 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:29:32,158.158 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:29:32,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:29:32,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:29:32,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:29:34,212.212 INFO    ] ================================================
[2026-10-18 04:29:34,227.227 INFO    ] Launching Daemon at Sun Oct 18 04:29:34 IST 2026
[2026-10-18 04:29:34,238.238 INFO    ] ================================================
[2026-10-18 04:29:34,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:29:34
[2026-10-18 04:29:35,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:29:35,700.700 INFO    ] Initializing speech engine...
[2026-10-18 04:29:35,715.715 INFO    ] 2026-10-18 04:29:35
[2026-10-18 04:29:36,005.005 INFO    ] 2026-10-18 04:29:35
[2026-10-18 04:29:36,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:29:36,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:29:36,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:29:36,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:29:36,430.430 INFO    ] time= 18/10/2026 04:29:36
[2026-10-18 04:29:36,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:29:36,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:29:36,602.602 INFO    ] No existing commands found in stream
[2026-10-18 04:29:41,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:29:41,630.630 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-18 04:29:44,946.946 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:29:44,949.949 INFO    ] Checking for system updates...
[2026-10-18 04:29:44,986.986 INFO    ] 200
[2026-10-18 04:29:44,989.989 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:29:45,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:29:45,052.052 INFO    ] No update needed
[2026-10-18 04:29:45,055.055 INFO    ] Checking for camera pi updates...
[2026-10-18 04:29:45,090.090 INFO    ] 200
[2026-10-18 04:29:45,093.093 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:29:45,134.134 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:29:55,151.151 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:29:55,191.191 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:29:55,202.202 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:29:55,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:29:55,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:29:55,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:29:57,258.258 INFO    ] ================================================
[2026-10-18 04:29:57,274.274 INFO    ] Launching Daemon at Sun Oct 18 04:29:57 IST 2026
[2026-10-18 04:29:57,285.285 INFO    ] ================================================
[2026-10-18 04:29:57,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:29:57
[2026-10-18 04:29:58,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:29:58,760.760 INFO    ] Initializing speech engine...
[2026-10-18 04:29:58,767.767 INFO    ] 2026-10-18 04:29:58
[2026-10-18 04:29:59,027.027 INFO    ] 2026-10-18 04:29:59
[2026-10-18 04:29:59,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:29:59,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:29:59,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:29:59,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:29:59,521.521 INFO    ] time= 18/10/2026 04:29:59
[2026-10-18 04:29:59,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:29:59,586.586 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:29:59,727.727 INFO    ] No existing commands found in stream
[2026-10-18 04:30:04,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:30:04,746.746 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-18 04:30:09,108.108 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:30:09,111.111 INFO    ] Checking for system updates...
[2026-10-18 04:30:09,147.147 INFO    ] 200
[2026-10-18 04:30:09,149.149 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:30:09,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:30:09,205.205 INFO    ] No update needed
[2026-10-18 04:30:09,208.208 INFO    ] Checking for camera pi updates...
[2026-10-18 04:30:09,242.242 INFO    ] 200
[2026-10-18 04:30:09,244.244 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:30:09,284.284 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:30:19,300.300 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:30:19,336.336 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:30:19,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:30:19,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:30:19,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:30:19,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:30:21,399.399 INFO    ] ================================================
[2026-10-18 04:30:21,415.415 INFO    ] Launching Daemon at Sun Oct 18 04:30:21 IST 2026
[2026-10-18 04:30:21,425.425 INFO    ] ================================================
[2026-10-18 04:30:22,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:30:22
[2026-10-18 04:30:22,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:30:23,069.069 INFO    ] Initializing speech engine...
[2026-10-18 04:30:23,082.082 INFO    ] 2026-10-18 04:30:23
[2026-10-18 04:30:23,352.352 INFO    ] 2026-10-18 04:30:23
[2026-10-18 04:30:23,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:30:23,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:30:23,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:30:23,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:30:23,949.949 INFO    ] time= 18/10/2026 04:30:23
[2026-10-18 04:30:23,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:30:23,964.964 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:30:24,071.071 INFO    ] No existing commands found in stream
[2026-10-18 04:30:29,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:30:29,104.104 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-18 04:30:32,839.839 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:30:32,843.843 INFO    ] Checking for system updates...
[2026-10-18 04:30:32,889.889 INFO    ] 200
[2026-10-18 04:30:32,893.893 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:30:32,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:30:32,959.959 INFO    ] No update needed
[2026-10-18 04:30:32,962.962 INFO    ] Checking for camera pi updates...
[2026-10-18 04:30:33,004.004 INFO    ] 200
[2026-10-18 04:30:33,007.007 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:30:33,058.058 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:30:43,075.075 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:30:43,116.116 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:30:43,127.127 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:30:43,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:30:43,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:30:43,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:30:45,182.182 INFO    ] ================================================
[2026-10-18 04:30:45,198.198 INFO    ] Launching Daemon at Sun Oct 18 04:30:45 IST 2026
[2026-10-18 04:30:45,208.208 INFO    ] ================================================
[2026-10-18 04:30:45,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:30:45
[2026-10-18 04:30:46,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:30:46,677.677 INFO    ] Initializing speech engine...
[2026-10-18 04:30:46,687.687 INFO    ] 2026-10-18 04:30:46
[2026-10-18 04:30:46,941.941 INFO    ] 2026-10-18 04:30:46
[2026-10-18 04:30:46,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:30:48,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:30:48,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:30:48,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:30:48,410.410 INFO    ] time= 18/10/2026 04:30:48
[2026-10-18 04:30:48,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:30:48,423.423 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:30:48,495.495 INFO    ] No existing commands found in stream
[2026-10-18 04:30:53,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:30:53,510.510 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-18 04:30:54,743.743 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:30:54,745.745 INFO    ] Checking for system updates...
[2026-10-18 04:30:54,782.782 INFO    ] 200
[2026-10-18 04:30:54,784.784 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:30:54,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:30:54,840.840 INFO    ] No update needed
[2026-10-18 04:30:54,843.843 INFO    ] Checking for camera pi updates...
[2026-10-18 04:30:54,878.878 INFO    ] 200
[2026-10-18 04:30:54,880.880 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:30:54,921.921 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:31:04,935.935 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:31:04,971.971 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:31:04,980.980 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:31:04,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:31:04,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:31:04,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:31:07,035.035 INFO    ] ================================================
[2026-10-18 04:31:07,050.050 INFO    ] Launching Daemon at Sun Oct 18 04:31:07 IST 2026
[2026-10-18 04:31:07,061.061 INFO    ] ================================================
[2026-10-18 04:31:07,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:31:07
[2026-10-18 04:31:08,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:31:08,471.471 INFO    ] Initializing speech engine...
[2026-10-18 04:31:08,494.494 INFO    ] 2026-10-18 04:31:08
[2026-10-18 04:31:08,750.750 INFO    ] 2026-10-18 04:31:08
[2026-10-18 04:31:08,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:31:09,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:31:09,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:31:09,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:31:09,232.232 INFO    ] time= 18/10/2026 04:31:09
[2026-10-18 04:31:09,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:31:09,328.328 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:31:09,470.470 INFO    ] No existing commands found in stream
[2026-10-18 04:31:14,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:31:14,494.494 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-18 04:31:16,451.451 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:31:16,454.454 INFO    ] Checking for system updates...
[2026-10-18 04:31:16,490.490 INFO    ] 200
[2026-10-18 04:31:16,492.492 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:31:16,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:31:16,548.548 INFO    ] No update needed
[2026-10-18 04:31:16,550.550 INFO    ] Checking for camera pi updates...
[2026-10-18 04:31:16,583.583 INFO    ] 200
[2026-10-18 04:31:16,586.586 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:31:16,626.626 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:31:26,641.641 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:31:26,676.676 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:31:26,685.685 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:31:26,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:31:26,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:31:26,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:31:28,739.739 INFO    ] ================================================
[2026-10-18 04:31:28,754.754 INFO    ] Launching Daemon at Sun Oct 18 04:31:28 IST 2026
[2026-10-18 04:31:28,765.765 INFO    ] ================================================
[2026-10-18 04:31:29,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:31:29
[2026-10-18 04:31:30,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:31:30,410.410 INFO    ] Initializing speech engine...
[2026-10-18 04:31:30,420.420 INFO    ] 2026-10-18 04:31:30
[2026-10-18 04:31:30,734.734 INFO    ] 2026-10-18 04:31:30
[2026-10-18 04:31:30,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:31:31,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:31:31,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:31:31,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:31:31,246.246 INFO    ] time= 18/10/2026 04:31:31
[2026-10-18 04:31:31,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:31:31,293.293 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:31:31,431.431 INFO    ] No existing commands found in stream
[2026-10-18 04:31:36,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:31:36,466.466 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-18 04:31:39,660.660 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:31:39,663.663 INFO    ] Checking for system updates...
[2026-10-18 04:31:39,703.703 INFO    ] 200
[2026-10-18 04:31:39,706.706 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:31:39,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:31:39,761.761 INFO    ] No update needed
[2026-10-18 04:31:39,763.763 INFO    ] Checking for camera pi updates...
[2026-10-18 04:31:39,801.801 INFO    ] 200
[2026-10-18 04:31:39,803.803 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:31:39,843.843 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:31:49,858.858 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:31:49,894.894 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:31:49,904.904 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:31:49,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:31:49,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:31:49,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:31:51,956.956 INFO    ] ================================================
[2026-10-18 04:31:51,972.972 INFO    ] Launching Daemon at Sun Oct 18 04:31:51 IST 2026
[2026-10-18 04:31:51,983.983 INFO    ] ================================================
[2026-10-18 04:31:52,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:31:52
[2026-10-18 04:31:53,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:31:53,414.414 INFO    ] Initializing speech engine...
[2026-10-18 04:31:53,420.420 INFO    ] 2026-10-18 04:31:53
[2026-10-18 04:31:53,680.680 INFO    ] 2026-10-18 04:31:53
[2026-10-18 04:31:53,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:31:53,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:31:53,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:31:54,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:31:54,222.222 INFO    ] time= 18/10/2026 04:31:54
[2026-10-18 04:31:54,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:31:54,246.246 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:31:54,377.377 INFO    ] No existing commands found in stream
[2026-10-18 04:31:59,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:31:59,392.392 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-18 04:32:02,059.059 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:32:02,064.064 INFO    ] Checking for system updates...
[2026-10-18 04:32:02,115.115 INFO    ] 200
[2026-10-18 04:32:02,118.118 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:32:02,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:32:02,199.199 INFO    ] No update needed
[2026-10-18 04:32:02,202.202 INFO    ] Checking for camera pi updates...
[2026-10-18 04:32:02,243.243 INFO    ] 200
[2026-10-18 04:32:02,247.247 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:32:02,325.325 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:32:12,343.343 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:32:12,383.383 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:32:12,394.394 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:32:12,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:32:12,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:32:12,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:32:14,452.452 INFO    ] ================================================
[2026-10-18 04:32:14,467.467 INFO    ] Launching Daemon at Sun Oct 18 04:32:14 IST 2026
[2026-10-18 04:32:14,478.478 INFO    ] ================================================
[2026-10-18 04:32:15,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:32:15
[2026-10-18 04:32:15,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:32:15,887.887 INFO    ] Initializing speech engine...
[2026-10-18 04:32:15,893.893 INFO    ] 2026-10-18 04:32:15
[2026-10-18 04:32:16,190.190 INFO    ] 2026-10-18 04:32:16
[2026-10-18 04:32:16,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:32:16,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:32:16,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:32:16,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:32:16,612.612 INFO    ] time= 18/10/2026 04:32:16
[2026-10-18 04:32:16,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:32:16,624.624 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:32:16,702.702 INFO    ] No existing commands found in stream
[2026-10-18 04:32:21,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:32:21,735.735 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-18 04:32:23,019.019 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:32:23,022.022 INFO    ] Checking for system updates...
[2026-10-18 04:32:23,058.058 INFO    ] 200
[2026-10-18 04:32:23,060.060 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:32:23,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:32:23,115.115 INFO    ] No update needed
[2026-10-18 04:32:23,117.117 INFO    ] Checking for camera pi updates...
[2026-10-18 04:32:23,154.154 INFO    ] 200
[2026-10-18 04:32:23,157.157 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:32:23,203.203 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:32:33,215.215 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:32:33,250.250 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:32:33,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:32:33,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:32:33,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:32:33,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:32:35,312.312 INFO    ] ================================================
[2026-10-18 04:32:35,327.327 INFO    ] Launching Daemon at Sun Oct 18 04:32:35 IST 2026
[2026-10-18 04:32:35,339.339 INFO    ] ================================================
[2026-10-18 04:32:36,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:32:35
[2026-10-18 04:32:36,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:32:36,976.976 INFO    ] Initializing speech engine...
[2026-10-18 04:32:36,985.985 INFO    ] 2026-10-18 04:32:36
[2026-10-18 04:32:37,282.282 INFO    ] 2026-10-18 04:32:37
[2026-10-18 04:32:37,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:32:37,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:32:37,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:32:37,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:32:37,668.668 INFO    ] time= 18/10/2026 04:32:37
[2026-10-18 04:32:37,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:32:37,708.708 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:32:37,802.802 INFO    ] No existing commands found in stream
[2026-10-18 04:32:42,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:32:42,814.814 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-18 04:32:44,741.741 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:32:44,743.743 INFO    ] Checking for system updates...
[2026-10-18 04:32:44,784.784 INFO    ] 200
[2026-10-18 04:32:44,786.786 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:32:44,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:32:44,841.841 INFO    ] No update needed
[2026-10-18 04:32:44,843.843 INFO    ] Checking for camera pi updates...
[2026-10-18 04:32:44,884.884 INFO    ] 200
[2026-10-18 04:32:44,886.886 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:32:44,927.927 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:32:54,942.942 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:32:54,977.977 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:32:54,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:32:54,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:32:54,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:32:54,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:32:57,039.039 INFO    ] ================================================
[2026-10-18 04:32:57,055.055 INFO    ] Launching Daemon at Sun Oct 18 04:32:57 IST 2026
[2026-10-18 04:32:57,066.066 INFO    ] ================================================
[2026-10-18 04:32:57,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:32:57
[2026-10-18 04:32:58,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:32:58,530.530 INFO    ] Initializing speech engine...
[2026-10-18 04:32:58,538.538 INFO    ] 2026-10-18 04:32:58
[2026-10-18 04:32:58,810.810 INFO    ] 2026-10-18 04:32:58
[2026-10-18 04:32:58,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:32:59,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:32:59,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:32:59,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:32:59,304.304 INFO    ] time= 18/10/2026 04:32:59
[2026-10-18 04:32:59,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:32:59,410.410 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:32:59,550.550 INFO    ] No existing commands found in stream
[2026-10-18 04:33:04,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:33:04,583.583 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-18 04:33:08,451.451 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:33:08,454.454 INFO    ] Checking for system updates...
[2026-10-18 04:33:08,497.497 INFO    ] 200
[2026-10-18 04:33:08,500.500 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:33:08,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:33:08,558.558 INFO    ] No update needed
[2026-10-18 04:33:08,561.561 INFO    ] Checking for camera pi updates...
[2026-10-18 04:33:08,597.597 INFO    ] 200
[2026-10-18 04:33:08,600.600 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:33:08,644.644 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:33:18,660.660 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:33:18,697.697 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:33:18,707.707 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:33:18,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:33:18,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:33:18,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:33:20,761.761 INFO    ] ================================================
[2026-10-18 04:33:20,778.778 INFO    ] Launching Daemon at Sun Oct 18 04:33:20 IST 2026
[2026-10-18 04:33:20,789.789 INFO    ] ================================================
[2026-10-18 04:33:21,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:33:21
[2026-10-18 04:33:21,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:33:22,201.201 INFO    ] Initializing speech engine...
[2026-10-18 04:33:22,208.208 INFO    ] 2026-10-18 04:33:22
[2026-10-18 04:33:22,509.509 INFO    ] 2026-10-18 04:33:22
[2026-10-18 04:33:22,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:33:22,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:33:22,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:33:22,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:33:22,940.940 INFO    ] time= 18/10/2026 04:33:22
[2026-10-18 04:33:22,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:33:22,951.951 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:33:23,027.027 INFO    ] No existing commands found in stream
[2026-10-18 04:33:28,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:33:28,065.065 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-18 04:33:29,438.438 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:33:29,440.440 INFO    ] Checking for system updates...
[2026-10-18 04:33:29,480.480 INFO    ] 200
[2026-10-18 04:33:29,483.483 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:33:29,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:33:29,545.545 INFO    ] No update needed
[2026-10-18 04:33:29,547.547 INFO    ] Checking for camera pi updates...
[2026-10-18 04:33:29,585.585 INFO    ] 200
[2026-10-18 04:33:29,588.588 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:33:29,634.634 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:33:39,649.649 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:33:39,684.684 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:33:39,694.694 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:33:39,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:33:39,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:33:39,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:33:41,747.747 INFO    ] ================================================
[2026-10-18 04:33:41,763.763 INFO    ] Launching Daemon at Sun Oct 18 04:33:41 IST 2026
[2026-10-18 04:33:41,774.774 INFO    ] ================================================
[2026-10-18 04:33:42,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:33:42
[2026-10-18 04:33:43,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:33:43,415.415 INFO    ] Initializing speech engine...
[2026-10-18 04:33:43,427.427 INFO    ] 2026-10-18 04:33:43
[2026-10-18 04:33:43,718.718 INFO    ] 2026-10-18 04:33:43
[2026-10-18 04:33:43,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:33:44,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:33:44,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:33:44,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:33:44,268.268 INFO    ] time= 18/10/2026 04:33:44
[2026-10-18 04:33:44,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:33:44,294.294 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:33:44,400.400 INFO    ] No existing commands found in stream
[2026-10-18 04:33:49,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:33:49,437.437 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-18 04:33:52,515.515 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:33:52,518.518 INFO    ] Checking for system updates...
[2026-10-18 04:33:52,559.559 INFO    ] 200
[2026-10-18 04:33:52,562.562 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:33:52,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:33:52,626.626 INFO    ] No update needed
[2026-10-18 04:33:52,629.629 INFO    ] Checking for camera pi updates...
[2026-10-18 04:33:52,669.669 INFO    ] 200
[2026-10-18 04:33:52,677.677 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:33:52,737.737 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:34:02,759.759 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:34:02,809.809 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:34:02,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:34:02,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:34:02,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:34:02,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:34:04,881.881 INFO    ] ================================================
[2026-10-18 04:34:04,897.897 INFO    ] Launching Daemon at Sun Oct 18 04:34:04 IST 2026
[2026-10-18 04:34:04,908.908 INFO    ] ================================================
[2026-10-18 04:34:05,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:34:05
[2026-10-18 04:34:06,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:34:06,570.570 INFO    ] Initializing speech engine...
[2026-10-18 04:34:06,578.578 INFO    ] 2026-10-18 04:34:06
[2026-10-18 04:34:06,877.877 INFO    ] 2026-10-18 04:34:06
[2026-10-18 04:34:06,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:34:07,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:34:07,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:34:07,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:34:07,578.578 INFO    ] time= 18/10/2026 04:34:07
[2026-10-18 04:34:07,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:34:07,676.676 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:34:07,836.836 INFO    ] No existing commands found in stream
[2026-10-18 04:34:12,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:34:12,877.877 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-18 04:34:16,054.054 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:34:16,057.057 INFO    ] Checking for system updates...
[2026-10-18 04:34:16,094.094 INFO    ] 200
[2026-10-18 04:34:16,097.097 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:34:16,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:34:16,161.161 INFO    ] No update needed
[2026-10-18 04:34:16,164.164 INFO    ] Checking for camera pi updates...
[2026-10-18 04:34:16,199.199 INFO    ] 200
[2026-10-18 04:34:16,202.202 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:34:16,248.248 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:34:26,266.266 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:34:26,306.306 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:34:26,317.317 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:34:26,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:34:26,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:34:26,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:34:28,375.375 INFO    ] ================================================
[2026-10-18 04:34:28,390.390 INFO    ] Launching Daemon at Sun Oct 18 04:34:28 IST 2026
[2026-10-18 04:34:28,401.401 INFO    ] ================================================
[2026-10-18 04:34:28,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:34:28
[2026-10-18 04:34:29,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:34:29,816.816 INFO    ] Initializing speech engine...
[2026-10-18 04:34:29,822.822 INFO    ] 2026-10-18 04:34:29
[2026-10-18 04:34:30,119.119 INFO    ] 2026-10-18 04:34:30
[2026-10-18 04:34:30,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:34:30,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:34:30,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:34:30,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:34:30,545.545 INFO    ] time= 18/10/2026 04:34:30
[2026-10-18 04:34:30,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:34:30,583.583 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:34:30,708.708 INFO    ] No existing commands found in stream
[2026-10-18 04:34:35,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:34:35,741.741 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-18 04:34:37,862.862 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:34:37,865.865 INFO    ] Checking for system updates...
[2026-10-18 04:34:37,914.914 INFO    ] 200
[2026-10-18 04:34:37,916.916 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:34:37,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:34:37,970.970 INFO    ] No update needed
[2026-10-18 04:34:37,973.973 INFO    ] Checking for camera pi updates...
[2026-10-18 04:34:38,006.006 INFO    ] 200
[2026-10-18 04:34:38,009.009 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:34:38,054.054 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:34:48,068.068 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:34:48,103.103 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:34:48,113.113 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:34:48,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:34:48,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:34:48,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:34:50,165.165 INFO    ] ================================================
[2026-10-18 04:34:50,181.181 INFO    ] Launching Daemon at Sun Oct 18 04:34:50 IST 2026
[2026-10-18 04:34:50,194.194 INFO    ] ================================================
[2026-10-18 04:34:50,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:34:50
[2026-10-18 04:34:51,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:34:51,600.600 INFO    ] Initializing speech engine...
[2026-10-18 04:34:51,606.606 INFO    ] 2026-10-18 04:34:51
[2026-10-18 04:34:51,905.905 INFO    ] 2026-10-18 04:34:51
[2026-10-18 04:34:51,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:34:52,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:34:52,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:34:52,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:34:52,331.331 INFO    ] time= 18/10/2026 04:34:52
[2026-10-18 04:34:52,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:34:52,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:34:52,499.499 INFO    ] No existing commands found in stream
[2026-10-18 04:34:57,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:34:57,522.522 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-18 04:35:01,589.589 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:35:01,597.597 INFO    ] Checking for system updates...
[2026-10-18 04:35:01,768.768 INFO    ] 200
[2026-10-18 04:35:01,772.772 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:35:01,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:35:01,882.882 INFO    ] No update needed
[2026-10-18 04:35:01,885.885 INFO    ] Checking for camera pi updates...
[2026-10-18 04:35:02,008.008 INFO    ] 200
[2026-10-18 04:35:02,012.012 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:35:02,068.068 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:35:12,084.084 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:35:12,131.131 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:35:12,144.144 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:35:12,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:35:12,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:35:12,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:35:14,201.201 INFO    ] ================================================
[2026-10-18 04:35:14,217.217 INFO    ] Launching Daemon at Sun Oct 18 04:35:14 IST 2026
[2026-10-18 04:35:14,228.228 INFO    ] ================================================
[2026-10-18 04:35:14,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:35:14
[2026-10-18 04:35:15,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:35:15,675.675 INFO    ] Initializing speech engine...
[2026-10-18 04:35:15,698.698 INFO    ] 2026-10-18 04:35:15
[2026-10-18 04:35:15,955.955 INFO    ] 2026-10-18 04:35:15
[2026-10-18 04:35:15,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:35:16,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:35:16,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:35:16,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:35:16,427.427 INFO    ] time= 18/10/2026 04:35:16
[2026-10-18 04:35:16,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:35:16,519.519 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:35:16,657.657 INFO    ] No existing commands found in stream
[2026-10-18 04:35:21,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:35:21,682.682 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-18 04:35:24,633.633 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:35:24,636.636 INFO    ] Checking for system updates...
[2026-10-18 04:35:24,676.676 INFO    ] 200
[2026-10-18 04:35:24,678.678 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:35:24,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:35:24,739.739 INFO    ] No update needed
[2026-10-18 04:35:24,741.741 INFO    ] Checking for camera pi updates...
[2026-10-18 04:35:24,777.777 INFO    ] 200
[2026-10-18 04:35:24,780.780 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:35:24,827.827 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:35:34,842.842 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:35:34,876.876 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:35:34,886.886 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:35:34,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:35:34,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:35:34,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:35:36,939.939 INFO    ] ================================================
[2026-10-18 04:35:36,955.955 INFO    ] Launching Daemon at Sun Oct 18 04:35:36 IST 2026
[2026-10-18 04:35:36,966.966 INFO    ] ================================================
[2026-10-18 04:35:37,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:35:37
[2026-10-18 04:35:38,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:35:38,462.462 INFO    ] Initializing speech engine...
[2026-10-18 04:35:38,469.469 INFO    ] 2026-10-18 04:35:38
[2026-10-18 04:35:38,733.733 INFO    ] 2026-10-18 04:35:38
[2026-10-18 04:35:38,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:35:39,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:35:39,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:35:39,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:35:39,295.295 INFO    ] time= 18/10/2026 04:35:39
[2026-10-18 04:35:39,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:35:39,362.362 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:35:39,495.495 INFO    ] No existing commands found in stream
[2026-10-18 04:35:44,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:35:44,533.533 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-18 04:35:46,852.852 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:35:46,854.854 INFO    ] Checking for system updates...
[2026-10-18 04:35:46,889.889 INFO    ] 200
[2026-10-18 04:35:46,892.892 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:35:46,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:35:46,955.955 INFO    ] No update needed
[2026-10-18 04:35:46,958.958 INFO    ] Checking for camera pi updates...
[2026-10-18 04:35:46,992.992 INFO    ] 200
[2026-10-18 04:35:46,994.994 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:35:47,034.034 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:35:57,049.049 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:35:57,084.084 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:35:57,094.094 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:35:57,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:35:57,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:35:57,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:35:59,147.147 INFO    ] ================================================
[2026-10-18 04:35:59,162.162 INFO    ] Launching Daemon at Sun Oct 18 04:35:59 IST 2026
[2026-10-18 04:35:59,173.173 INFO    ] ================================================
[2026-10-18 04:35:59,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:35:59
[2026-10-18 04:36:00,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:36:00,625.625 INFO    ] Initializing speech engine...
[2026-10-18 04:36:00,634.634 INFO    ] 2026-10-18 04:36:00
[2026-10-18 04:36:00,925.925 INFO    ] 2026-10-18 04:36:00
[2026-10-18 04:36:00,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:36:01,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:36:01,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:36:01,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:36:01,317.317 INFO    ] time= 18/10/2026 04:36:01
[2026-10-18 04:36:01,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:36:01,347.347 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:36:01,423.423 INFO    ] No existing commands found in stream
[2026-10-18 04:36:06,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:36:06,439.439 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-18 04:36:08,326.326 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:36:08,329.329 INFO    ] Checking for system updates...
[2026-10-18 04:36:08,365.365 INFO    ] 200
[2026-10-18 04:36:08,368.368 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:36:08,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:36:08,423.423 INFO    ] No update needed
[2026-10-18 04:36:08,426.426 INFO    ] Checking for camera pi updates...
[2026-10-18 04:36:08,460.460 INFO    ] 200
[2026-10-18 04:36:08,462.462 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:36:08,502.502 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:36:18,517.517 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:36:18,551.551 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:36:18,561.561 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:36:18,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:36:18,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:36:18,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:36:20,613.613 INFO    ] ================================================
[2026-10-18 04:36:20,629.629 INFO    ] Launching Daemon at Sun Oct 18 04:36:20 IST 2026
[2026-10-18 04:36:20,640.640 INFO    ] ================================================
[2026-10-18 04:36:21,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:36:21
[2026-10-18 04:36:21,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:36:22,080.080 INFO    ] Initializing speech engine...
[2026-10-18 04:36:22,086.086 INFO    ] 2026-10-18 04:36:22
[2026-10-18 04:36:22,377.377 INFO    ] 2026-10-18 04:36:22
[2026-10-18 04:36:22,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:36:22,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:36:22,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:36:22,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:36:22,786.786 INFO    ] time= 18/10/2026 04:36:22
[2026-10-18 04:36:22,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:36:22,858.858 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:36:22,997.997 INFO    ] No existing commands found in stream
[2026-10-18 04:36:28,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:36:28,011.011 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-18 04:36:31,018.018 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:36:31,021.021 INFO    ] Checking for system updates...
[2026-10-18 04:36:31,060.060 INFO    ] 200
[2026-10-18 04:36:31,062.062 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:36:31,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:36:31,122.122 INFO    ] No update needed
[2026-10-18 04:36:31,124.124 INFO    ] Checking for camera pi updates...
[2026-10-18 04:36:31,160.160 INFO    ] 200
[2026-10-18 04:36:31,162.162 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:36:31,202.202 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:36:41,217.217 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:36:41,251.251 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:36:41,261.261 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:36:41,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:36:41,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:36:41,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:36:43,313.313 INFO    ] ================================================
[2026-10-18 04:36:43,328.328 INFO    ] Launching Daemon at Sun Oct 18 04:36:43 IST 2026
[2026-10-18 04:36:43,339.339 INFO    ] ================================================
[2026-10-18 04:36:43,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:36:43
[2026-10-18 04:36:44,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:36:44,802.802 INFO    ] Initializing speech engine...
[2026-10-18 04:36:44,811.811 INFO    ] 2026-10-18 04:36:44
[2026-10-18 04:36:45,074.074 INFO    ] 2026-10-18 04:36:45
[2026-10-18 04:36:45,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:36:45,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:36:45,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:36:45,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:36:45,636.636 INFO    ] time= 18/10/2026 04:36:45
[2026-10-18 04:36:45,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:36:45,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:36:45,805.805 INFO    ] No existing commands found in stream
[2026-10-18 04:36:50,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:36:50,839.839 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-18 04:36:53,267.267 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:36:53,270.270 INFO    ] Checking for system updates...
[2026-10-18 04:36:53,308.308 INFO    ] 200
[2026-10-18 04:36:53,311.311 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:36:53,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:36:53,372.372 INFO    ] No update needed
[2026-10-18 04:36:53,374.374 INFO    ] Checking for camera pi updates...
[2026-10-18 04:36:53,408.408 INFO    ] 200
[2026-10-18 04:36:53,410.410 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:36:53,455.455 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:37:03,468.468 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:37:03,523.523 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:37:03,537.537 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:37:03,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:37:03,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:37:03,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:37:05,591.591 INFO    ] ================================================
[2026-10-18 04:37:05,613.613 INFO    ] Launching Daemon at Sun Oct 18 04:37:05 IST 2026
[2026-10-18 04:37:05,623.623 INFO    ] ================================================
[2026-10-18 04:37:06,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:37:06
[2026-10-18 04:37:06,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:37:07,256.256 INFO    ] Initializing speech engine...
[2026-10-18 04:37:07,261.261 INFO    ] 2026-10-18 04:37:07
[2026-10-18 04:37:07,575.575 INFO    ] 2026-10-18 04:37:07
[2026-10-18 04:37:07,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:37:07,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:37:07,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:37:08,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:37:08,101.101 INFO    ] time= 18/10/2026 04:37:08
[2026-10-18 04:37:08,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:37:08,138.138 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:37:08,257.257 INFO    ] No existing commands found in stream
[2026-10-18 04:37:13,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:37:13,291.291 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-18 04:37:16,604.604 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:37:16,607.607 INFO    ] Checking for system updates...
[2026-10-18 04:37:16,644.644 INFO    ] 200
[2026-10-18 04:37:16,647.647 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:37:16,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:37:16,705.705 INFO    ] No update needed
[2026-10-18 04:37:16,707.707 INFO    ] Checking for camera pi updates...
[2026-10-18 04:37:16,742.742 INFO    ] 200
[2026-10-18 04:37:16,745.745 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:37:16,786.786 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:37:26,802.802 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:37:26,843.843 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:37:26,855.855 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:37:26,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:37:26,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:37:26,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:37:28,911.911 INFO    ] ================================================
[2026-10-18 04:37:28,928.928 INFO    ] Launching Daemon at Sun Oct 18 04:37:28 IST 2026
[2026-10-18 04:37:28,939.939 INFO    ] ================================================
[2026-10-18 04:37:29,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:37:29
[2026-10-18 04:37:30,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:37:30,595.595 INFO    ] Initializing speech engine...
[2026-10-18 04:37:30,608.608 INFO    ] 2026-10-18 04:37:30
[2026-10-18 04:37:30,920.920 INFO    ] 2026-10-18 04:37:30
[2026-10-18 04:37:31,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:37:31,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:37:31,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:37:31,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:37:31,448.448 INFO    ] time= 18/10/2026 04:37:31
[2026-10-18 04:37:31,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:37:31,489.489 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:37:31,605.605 INFO    ] No existing commands found in stream
[2026-10-18 04:37:36,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:37:36,632.632 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-18 04:37:39,849.849 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:37:39,852.852 INFO    ] Checking for system updates...
[2026-10-18 04:37:39,889.889 INFO    ] 200
[2026-10-18 04:37:39,892.892 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:37:39,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:37:39,948.948 INFO    ] No update needed
[2026-10-18 04:37:39,951.951 INFO    ] Checking for camera pi updates...
[2026-10-18 04:37:39,990.990 INFO    ] 200
[2026-10-18 04:37:39,993.993 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:37:40,040.040 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:37:50,056.056 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:37:50,097.097 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:37:50,109.109 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:37:50,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:37:50,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:37:50,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:37:52,169.169 INFO    ] ================================================
[2026-10-18 04:37:52,185.185 INFO    ] Launching Daemon at Sun Oct 18 04:37:52 IST 2026
[2026-10-18 04:37:52,196.196 INFO    ] ================================================
[2026-10-18 04:37:52,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:37:52
[2026-10-18 04:37:53,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:37:53,656.656 INFO    ] Initializing speech engine...
[2026-10-18 04:37:53,663.663 INFO    ] 2026-10-18 04:37:53
[2026-10-18 04:37:53,925.925 INFO    ] 2026-10-18 04:37:53
[2026-10-18 04:37:53,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:37:54,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:37:54,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:37:54,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:37:54,468.468 INFO    ] time= 18/10/2026 04:37:54
[2026-10-18 04:37:54,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:37:54,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:37:54,623.623 INFO    ] No existing commands found in stream
[2026-10-18 04:37:59,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:37:59,643.643 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-18 04:38:02,553.553 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:38:02,557.557 INFO    ] Checking for system updates...
[2026-10-18 04:38:02,600.600 INFO    ] 200
[2026-10-18 04:38:02,603.603 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:38:02,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:38:02,675.675 INFO    ] No update needed
[2026-10-18 04:38:02,678.678 INFO    ] Checking for camera pi updates...
[2026-10-18 04:38:02,717.717 INFO    ] 200
[2026-10-18 04:38:02,720.720 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:38:02,769.769 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:38:12,785.785 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:38:12,820.820 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:38:12,829.829 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:38:12,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:38:12,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:38:12,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:38:14,885.885 INFO    ] ================================================
[2026-10-18 04:38:14,901.901 INFO    ] Launching Daemon at Sun Oct 18 04:38:14 IST 2026
[2026-10-18 04:38:14,912.912 INFO    ] ================================================
[2026-10-18 04:38:15,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:38:15
[2026-10-18 04:38:16,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:38:16,320.320 INFO    ] Initializing speech engine...
[2026-10-18 04:38:16,329.329 INFO    ] 2026-10-18 04:38:16
[2026-10-18 04:38:16,626.626 INFO    ] 2026-10-18 04:38:16
[2026-10-18 04:38:16,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:38:16,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:38:16,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:38:17,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:38:17,051.051 INFO    ] time= 18/10/2026 04:38:17
[2026-10-18 04:38:17,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:38:17,065.065 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:38:17,212.212 INFO    ] No existing commands found in stream
[2026-10-18 04:38:22,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:38:22,240.240 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-18 04:38:25,293.293 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:38:25,296.296 INFO    ] Checking for system updates...
[2026-10-18 04:38:25,332.332 INFO    ] 200
[2026-10-18 04:38:25,334.334 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:38:25,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:38:25,393.393 INFO    ] No update needed
[2026-10-18 04:38:25,396.396 INFO    ] Checking for camera pi updates...
[2026-10-18 04:38:25,433.433 INFO    ] 200
[2026-10-18 04:38:25,435.435 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:38:25,475.475 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:38:35,490.490 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:38:35,526.526 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:38:35,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:38:35,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:38:35,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:38:35,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:38:37,592.592 INFO    ] ================================================
[2026-10-18 04:38:37,607.607 INFO    ] Launching Daemon at Sun Oct 18 04:38:37 IST 2026
[2026-10-18 04:38:37,619.619 INFO    ] ================================================
[2026-10-18 04:38:38,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:38:38
[2026-10-18 04:38:38,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:38:39,086.086 INFO    ] Initializing speech engine...
[2026-10-18 04:38:39,095.095 INFO    ] 2026-10-18 04:38:39
[2026-10-18 04:38:39,346.346 INFO    ] 2026-10-18 04:38:39
[2026-10-18 04:38:39,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:38:39,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:38:40,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:38:40,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:38:40,370.370 INFO    ] time= 18/10/2026 04:38:40
[2026-10-18 04:38:40,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:38:40,460.460 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:38:40,630.630 INFO    ] No existing commands found in stream
[2026-10-18 04:38:45,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:38:45,653.653 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-18 04:38:47,334.334 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:38:47,336.336 INFO    ] Checking for system updates...
[2026-10-18 04:38:47,375.375 INFO    ] 200
[2026-10-18 04:38:47,378.378 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:38:47,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:38:47,441.441 INFO    ] No update needed
[2026-10-18 04:38:47,450.450 INFO    ] Checking for camera pi updates...
[2026-10-18 04:38:47,487.487 INFO    ] 200
[2026-10-18 04:38:47,489.489 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:38:47,542.542 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:38:57,556.556 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:38:57,591.591 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:38:57,600.600 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:38:57,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:38:57,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:38:57,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:38:59,652.652 INFO    ] ================================================
[2026-10-18 04:38:59,668.668 INFO    ] Launching Daemon at Sun Oct 18 04:38:59 IST 2026
[2026-10-18 04:38:59,680.680 INFO    ] ================================================
[2026-10-18 04:39:00,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:39:00
[2026-10-18 04:39:00,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:39:01,104.104 INFO    ] Initializing speech engine...
[2026-10-18 04:39:01,111.111 INFO    ] 2026-10-18 04:39:01
[2026-10-18 04:39:01,408.408 INFO    ] 2026-10-18 04:39:01
[2026-10-18 04:39:01,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:39:01,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:39:01,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:39:01,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:39:01,858.858 INFO    ] time= 18/10/2026 04:39:01
[2026-10-18 04:39:01,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:39:01,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:39:01,981.981 INFO    ] No existing commands found in stream
[2026-10-18 04:39:06,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:39:06,994.994 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-18 04:39:09,560.560 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:39:09,563.563 INFO    ] Checking for system updates...
[2026-10-18 04:39:09,598.598 INFO    ] 200
[2026-10-18 04:39:09,601.601 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:39:09,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:39:09,656.656 INFO    ] No update needed
[2026-10-18 04:39:09,658.658 INFO    ] Checking for camera pi updates...
[2026-10-18 04:39:09,696.696 INFO    ] 200
[2026-10-18 04:39:09,698.698 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:39:09,739.739 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:39:19,754.754 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:39:19,788.788 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:39:19,798.798 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:39:19,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:39:19,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:39:19,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:39:21,851.851 INFO    ] ================================================
[2026-10-18 04:39:21,866.866 INFO    ] Launching Daemon at Sun Oct 18 04:39:21 IST 2026
[2026-10-18 04:39:21,878.878 INFO    ] ================================================
[2026-10-18 04:39:22,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:39:22
[2026-10-18 04:39:23,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:39:23,606.606 INFO    ] Initializing speech engine...
[2026-10-18 04:39:23,617.617 INFO    ] 2026-10-18 04:39:23
[2026-10-18 04:39:23,933.933 INFO    ] 2026-10-18 04:39:23
[2026-10-18 04:39:24,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:39:24,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:39:24,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:39:24,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:39:24,460.460 INFO    ] time= 18/10/2026 04:39:24
[2026-10-18 04:39:24,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:39:24,498.498 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:39:24,628.628 INFO    ] No existing commands found in stream
[2026-10-18 04:39:29,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:39:29,663.663 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-18 04:39:32,094.094 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:39:32,097.097 INFO    ] Checking for system updates...
[2026-10-18 04:39:32,137.137 INFO    ] 200
[2026-10-18 04:39:32,139.139 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:39:32,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:39:32,203.203 INFO    ] No update needed
[2026-10-18 04:39:32,206.206 INFO    ] Checking for camera pi updates...
[2026-10-18 04:39:32,244.244 INFO    ] 200
[2026-10-18 04:39:32,247.247 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:39:32,302.302 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:39:42,317.317 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:39:42,351.351 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:39:42,361.361 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:39:42,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:39:42,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:39:42,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:39:44,414.414 INFO    ] ================================================
[2026-10-18 04:39:44,429.429 INFO    ] Launching Daemon at Sun Oct 18 04:39:44 IST 2026
[2026-10-18 04:39:44,440.440 INFO    ] ================================================
[2026-10-18 04:39:45,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:39:45
[2026-10-18 04:39:45,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:39:45,988.988 INFO    ] Initializing speech engine...
[2026-10-18 04:39:46,000.000 INFO    ] 2026-10-18 04:39:45
[2026-10-18 04:39:46,316.316 INFO    ] 2026-10-18 04:39:46
[2026-10-18 04:39:46,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:39:46,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:39:46,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:39:46,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:39:46,833.833 INFO    ] time= 18/10/2026 04:39:46
[2026-10-18 04:39:46,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:39:46,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:39:46,979.979 INFO    ] No existing commands found in stream
[2026-10-18 04:39:52,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:39:52,013.013 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-18 04:39:56,034.034 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:39:56,037.037 INFO    ] Checking for system updates...
[2026-10-18 04:39:56,073.073 INFO    ] 200
[2026-10-18 04:39:56,076.076 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:39:56,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:39:56,139.139 INFO    ] No update needed
[2026-10-18 04:39:56,141.141 INFO    ] Checking for camera pi updates...
[2026-10-18 04:39:56,175.175 INFO    ] 200
[2026-10-18 04:39:56,178.178 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:39:56,224.224 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:40:06,239.239 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:40:06,275.275 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:40:06,285.285 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:40:06,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:40:06,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:40:06,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:40:08,339.339 INFO    ] ================================================
[2026-10-18 04:40:08,354.354 INFO    ] Launching Daemon at Sun Oct 18 04:40:08 IST 2026
[2026-10-18 04:40:08,365.365 INFO    ] ================================================
[2026-10-18 04:40:08,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:40:08
[2026-10-18 04:40:09,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:40:09,800.800 INFO    ] Initializing speech engine...
[2026-10-18 04:40:09,806.806 INFO    ] 2026-10-18 04:40:09
[2026-10-18 04:40:10,056.056 INFO    ] 2026-10-18 04:40:10
[2026-10-18 04:40:10,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:40:10,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:40:10,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:40:10,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:40:10,640.640 INFO    ] time= 18/10/2026 04:40:10
[2026-10-18 04:40:10,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:40:10,670.670 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:40:10,803.803 INFO    ] No existing commands found in stream
[2026-10-18 04:40:15,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:40:15,837.837 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-18 04:40:16,758.758 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:40:16,761.761 INFO    ] Checking for system updates...
[2026-10-18 04:40:16,803.803 INFO    ] 200
[2026-10-18 04:40:16,806.806 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:40:16,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:40:16,870.870 INFO    ] No update needed
[2026-10-18 04:40:16,872.872 INFO    ] Checking for camera pi updates...
[2026-10-18 04:40:16,906.906 INFO    ] 200
[2026-10-18 04:40:16,909.909 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:40:16,949.949 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:40:26,964.964 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:40:26,998.998 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:40:27,008.008 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:40:27,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:40:27,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:40:27,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:40:29,061.061 INFO    ] ================================================
[2026-10-18 04:40:29,077.077 INFO    ] Launching Daemon at Sun Oct 18 04:40:29 IST 2026
[2026-10-18 04:40:29,088.088 INFO    ] ================================================
[2026-10-18 04:40:29,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:40:29
[2026-10-18 04:40:30,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:40:30,511.511 INFO    ] Initializing speech engine...
[2026-10-18 04:40:30,519.519 INFO    ] 2026-10-18 04:40:30
[2026-10-18 04:40:30,772.772 INFO    ] 2026-10-18 04:40:30
[2026-10-18 04:40:30,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:40:31,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:40:31,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:40:31,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:40:31,337.337 INFO    ] time= 18/10/2026 04:40:31
[2026-10-18 04:40:31,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:40:31,363.363 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:40:31,498.498 INFO    ] No existing commands found in stream
[2026-10-18 04:40:36,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:40:36,520.520 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-18 04:40:43,074.074 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:40:43,077.077 INFO    ] Checking for system updates...
[2026-10-18 04:40:43,112.112 INFO    ] 200
[2026-10-18 04:40:43,114.114 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:40:43,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:40:43,179.179 INFO    ] No update needed
[2026-10-18 04:40:43,182.182 INFO    ] Checking for camera pi updates...
[2026-10-18 04:40:43,215.215 INFO    ] 200
[2026-10-18 04:40:43,217.217 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:40:43,257.257 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:40:53,272.272 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:40:53,306.306 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:40:53,316.316 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:40:53,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:40:53,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:40:53,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:40:55,369.369 INFO    ] ================================================
[2026-10-18 04:40:55,385.385 INFO    ] Launching Daemon at Sun Oct 18 04:40:55 IST 2026
[2026-10-18 04:40:55,396.396 INFO    ] ================================================
[2026-10-18 04:40:55,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:40:55
[2026-10-18 04:40:56,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:40:56,858.858 INFO    ] Initializing speech engine...
[2026-10-18 04:40:56,870.870 INFO    ] 2026-10-18 04:40:56
[2026-10-18 04:40:57,183.183 INFO    ] 2026-10-18 04:40:57
[2026-10-18 04:40:57,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:40:57,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:40:57,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:40:57,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:40:57,654.654 INFO    ] time= 18/10/2026 04:40:57
[2026-10-18 04:40:57,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:40:57,757.757 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:40:57,873.873 INFO    ] No existing commands found in stream
[2026-10-18 04:41:02,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:41:02,898.898 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-18 04:41:03,666.666 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:41:03,669.669 INFO    ] Checking for system updates...
[2026-10-18 04:41:03,708.708 INFO    ] 200
[2026-10-18 04:41:03,717.717 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:41:03,782.782 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:41:03,784.784 INFO    ] No update needed
[2026-10-18 04:41:03,787.787 INFO    ] Checking for camera pi updates...
[2026-10-18 04:41:03,829.829 INFO    ] 200
[2026-10-18 04:41:03,832.832 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:41:03,887.887 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:41:13,903.903 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:41:13,938.938 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:41:13,948.948 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:41:13,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:41:13,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:41:13,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:41:16,000.000 INFO    ] ================================================
[2026-10-18 04:41:16,015.015 INFO    ] Launching Daemon at Sun Oct 18 04:41:16 IST 2026
[2026-10-18 04:41:16,025.025 INFO    ] ================================================
[2026-10-18 04:41:16,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:41:16
[2026-10-18 04:41:17,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:41:17,458.458 INFO    ] Initializing speech engine...
[2026-10-18 04:41:17,467.467 INFO    ] 2026-10-18 04:41:17
[2026-10-18 04:41:17,728.728 INFO    ] 2026-10-18 04:41:17
[2026-10-18 04:41:17,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:41:18,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:41:18,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:41:18,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:41:18,226.226 INFO    ] time= 18/10/2026 04:41:18
[2026-10-18 04:41:18,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:41:18,296.296 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:41:18,449.449 INFO    ] No existing commands found in stream
[2026-10-18 04:41:23,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:41:23,467.467 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-18 04:41:27,449.449 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:41:27,452.452 INFO    ] Checking for system updates...
[2026-10-18 04:41:27,487.487 INFO    ] 200
[2026-10-18 04:41:27,490.490 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:41:27,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:41:27,549.549 INFO    ] No update needed
[2026-10-18 04:41:27,552.552 INFO    ] Checking for camera pi updates...
[2026-10-18 04:41:27,586.586 INFO    ] 200
[2026-10-18 04:41:27,588.588 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:41:27,629.629 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:41:37,645.645 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:41:37,680.680 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:41:37,690.690 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:41:37,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:41:37,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:41:37,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:41:39,743.743 INFO    ] ================================================
[2026-10-18 04:41:39,758.758 INFO    ] Launching Daemon at Sun Oct 18 04:41:39 IST 2026
[2026-10-18 04:41:39,769.769 INFO    ] ================================================
[2026-10-18 04:41:40,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:41:40
[2026-10-18 04:41:41,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:41:41,382.382 INFO    ] Initializing speech engine...
[2026-10-18 04:41:41,390.390 INFO    ] 2026-10-18 04:41:41
[2026-10-18 04:41:41,661.661 INFO    ] 2026-10-18 04:41:41
[2026-10-18 04:41:41,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:41:41,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:41:42,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:41:42,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:41:42,214.214 INFO    ] time= 18/10/2026 04:41:42
[2026-10-18 04:41:42,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:41:42,250.250 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:41:42,367.367 INFO    ] No existing commands found in stream
[2026-10-18 04:41:47,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:41:47,388.388 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-18 04:41:49,716.716 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:41:49,719.719 INFO    ] Checking for system updates...
[2026-10-18 04:41:49,756.756 INFO    ] 200
[2026-10-18 04:41:49,759.759 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:41:49,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:41:49,813.813 INFO    ] No update needed
[2026-10-18 04:41:49,816.816 INFO    ] Checking for camera pi updates...
[2026-10-18 04:41:49,851.851 INFO    ] 200
[2026-10-18 04:41:49,853.853 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:41:49,901.901 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:41:59,914.914 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:41:59,949.949 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:41:59,959.959 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:41:59,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:41:59,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:41:59,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:42:02,043.043 INFO    ] ================================================
[2026-10-18 04:42:02,078.078 INFO    ] Launching Daemon at Sun Oct 18 04:42:02 IST 2026
[2026-10-18 04:42:02,109.109 INFO    ] ================================================
[2026-10-18 04:42:02,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:42:02
[2026-10-18 04:42:03,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:42:03,752.752 INFO    ] Initializing speech engine...
[2026-10-18 04:42:03,758.758 INFO    ] 2026-10-18 04:42:03
[2026-10-18 04:42:04,037.037 INFO    ] 2026-10-18 04:42:04
[2026-10-18 04:42:04,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:42:04,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:42:04,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:42:04,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:42:04,496.496 INFO    ] time= 18/10/2026 04:42:04
[2026-10-18 04:42:04,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:42:04,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:42:04,664.664 INFO    ] No existing commands found in stream
[2026-10-18 04:42:09,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:42:09,677.677 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-18 04:42:12,994.994 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:42:12,997.997 INFO    ] Checking for system updates...
[2026-10-18 04:42:13,032.032 INFO    ] 200
[2026-10-18 04:42:13,035.035 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:42:13,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:42:13,093.093 INFO    ] No update needed
[2026-10-18 04:42:13,095.095 INFO    ] Checking for camera pi updates...
[2026-10-18 04:42:13,132.132 INFO    ] 200
[2026-10-18 04:42:13,135.135 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:42:13,178.178 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:42:23,193.193 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:42:23,229.229 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:42:23,239.239 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:42:23,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:42:23,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:42:23,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:42:25,291.291 INFO    ] ================================================
[2026-10-18 04:42:25,306.306 INFO    ] Launching Daemon at Sun Oct 18 04:42:25 IST 2026
[2026-10-18 04:42:25,317.317 INFO    ] ================================================
[2026-10-18 04:42:25,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:42:25
[2026-10-18 04:42:26,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:42:26,763.763 INFO    ] Initializing speech engine...
[2026-10-18 04:42:26,779.779 INFO    ] 2026-10-18 04:42:26
[2026-10-18 04:42:27,061.061 INFO    ] 2026-10-18 04:42:27
[2026-10-18 04:42:27,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:42:27,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:42:27,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:42:27,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:42:27,568.568 INFO    ] time= 18/10/2026 04:42:27
[2026-10-18 04:42:27,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:42:27,676.676 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:42:27,825.825 INFO    ] No existing commands found in stream
[2026-10-18 04:42:32,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:42:32,851.851 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-18 04:42:33,838.838 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:42:33,841.841 INFO    ] Checking for system updates...
[2026-10-18 04:42:33,876.876 INFO    ] 200
[2026-10-18 04:42:33,879.879 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:42:33,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:42:33,934.934 INFO    ] No update needed
[2026-10-18 04:42:33,936.936 INFO    ] Checking for camera pi updates...
[2026-10-18 04:42:33,970.970 INFO    ] 200
[2026-10-18 04:42:33,972.972 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:42:34,013.013 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:42:44,028.028 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:42:44,064.064 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:42:44,074.074 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:42:44,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:42:44,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:42:44,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:42:46,130.130 INFO    ] ================================================
[2026-10-18 04:42:46,146.146 INFO    ] Launching Daemon at Sun Oct 18 04:42:46 IST 2026
[2026-10-18 04:42:46,156.156 INFO    ] ================================================
[2026-10-18 04:42:46,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:42:46
[2026-10-18 04:42:47,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:42:47,569.569 INFO    ] Initializing speech engine...
[2026-10-18 04:42:47,593.593 INFO    ] 2026-10-18 04:42:47
[2026-10-18 04:42:47,862.862 INFO    ] 2026-10-18 04:42:47
[2026-10-18 04:42:47,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:42:48,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:42:48,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:42:48,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:42:48,372.372 INFO    ] time= 18/10/2026 04:42:48
[2026-10-18 04:42:48,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:42:48,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:42:48,619.619 INFO    ] No existing commands found in stream
[2026-10-18 04:42:53,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:42:53,647.647 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-18 04:42:55,052.052 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:42:55,055.055 INFO    ] Checking for system updates...
[2026-10-18 04:42:55,090.090 INFO    ] 200
[2026-10-18 04:42:55,093.093 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:42:55,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:42:55,148.148 INFO    ] No update needed
[2026-10-18 04:42:55,150.150 INFO    ] Checking for camera pi updates...
[2026-10-18 04:42:55,184.184 INFO    ] 200
[2026-10-18 04:42:55,186.186 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:42:55,230.230 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:43:05,246.246 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:43:05,281.281 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:43:05,291.291 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:43:05,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:43:05,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:43:05,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:43:07,343.343 INFO    ] ================================================
[2026-10-18 04:43:07,358.358 INFO    ] Launching Daemon at Sun Oct 18 04:43:07 IST 2026
[2026-10-18 04:43:07,369.369 INFO    ] ================================================
[2026-10-18 04:43:07,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:43:07
[2026-10-18 04:43:08,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:43:08,959.959 INFO    ] Initializing speech engine...
[2026-10-18 04:43:08,972.972 INFO    ] 2026-10-18 04:43:08
[2026-10-18 04:43:09,250.250 INFO    ] 2026-10-18 04:43:09
[2026-10-18 04:43:09,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:43:09,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:43:09,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:43:09,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:43:09,788.788 INFO    ] time= 18/10/2026 04:43:09
[2026-10-18 04:43:09,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:43:09,836.836 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:43:09,980.980 INFO    ] No existing commands found in stream
[2026-10-18 04:43:15,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:43:15,011.011 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-18 04:43:18,142.142 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:43:18,145.145 INFO    ] Checking for system updates...
[2026-10-18 04:43:18,185.185 INFO    ] 200
[2026-10-18 04:43:18,188.188 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:43:18,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:43:18,243.243 INFO    ] No update needed
[2026-10-18 04:43:18,246.246 INFO    ] Checking for camera pi updates...
[2026-10-18 04:43:18,280.280 INFO    ] 200
[2026-10-18 04:43:18,282.282 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:43:18,327.327 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:43:28,343.343 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:43:28,382.382 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:43:28,393.393 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:43:28,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:43:28,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:43:28,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:43:30,448.448 INFO    ] ================================================
[2026-10-18 04:43:30,463.463 INFO    ] Launching Daemon at Sun Oct 18 04:43:30 IST 2026
[2026-10-18 04:43:30,474.474 INFO    ] ================================================
[2026-10-18 04:43:31,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:43:31
[2026-10-18 04:43:31,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:43:32,184.184 INFO    ] Initializing speech engine...
[2026-10-18 04:43:32,194.194 INFO    ] 2026-10-18 04:43:32
[2026-10-18 04:43:32,486.486 INFO    ] 2026-10-18 04:43:32
[2026-10-18 04:43:32,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:43:32,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:43:32,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:43:33,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:43:33,041.041 INFO    ] time= 18/10/2026 04:43:33
[2026-10-18 04:43:33,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:43:33,090.090 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:43:33,240.240 INFO    ] No existing commands found in stream
[2026-10-18 04:43:38,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:43:38,273.273 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-18 04:43:40,598.598 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:43:40,601.601 INFO    ] Checking for system updates...
[2026-10-18 04:43:40,641.641 INFO    ] 200
[2026-10-18 04:43:40,645.645 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:43:40,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:43:40,707.707 INFO    ] No update needed
[2026-10-18 04:43:40,710.710 INFO    ] Checking for camera pi updates...
[2026-10-18 04:43:40,744.744 INFO    ] 200
[2026-10-18 04:43:40,747.747 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:43:40,789.789 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:43:50,805.805 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:43:50,844.844 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:43:50,855.855 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:43:50,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:43:50,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:43:50,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:43:52,909.909 INFO    ] ================================================
[2026-10-18 04:43:52,925.925 INFO    ] Launching Daemon at Sun Oct 18 04:43:52 IST 2026
[2026-10-18 04:43:52,937.937 INFO    ] ================================================
[2026-10-18 04:43:53,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:43:53
[2026-10-18 04:43:54,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:43:54,353.353 INFO    ] Initializing speech engine...
[2026-10-18 04:43:54,374.374 INFO    ] 2026-10-18 04:43:54
[2026-10-18 04:43:54,645.645 INFO    ] 2026-10-18 04:43:54
[2026-10-18 04:43:54,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:43:54,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:43:54,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:43:55,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:43:55,117.117 INFO    ] time= 18/10/2026 04:43:55
[2026-10-18 04:43:55,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:43:55,186.186 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:43:55,301.301 INFO    ] No existing commands found in stream
[2026-10-18 04:44:00,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:44:00,328.328 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-18 04:44:01,200.200 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:44:01,202.202 INFO    ] Checking for system updates...
[2026-10-18 04:44:01,238.238 INFO    ] 200
[2026-10-18 04:44:01,240.240 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:44:01,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:44:01,296.296 INFO    ] No update needed
[2026-10-18 04:44:01,298.298 INFO    ] Checking for camera pi updates...
[2026-10-18 04:44:01,331.331 INFO    ] 200
[2026-10-18 04:44:01,334.334 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:44:01,374.374 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:44:11,386.386 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d35150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:44:11,421.421 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:44:11,431.431 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:44:11,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:44:11,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:44:11,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:44:13,483.483 INFO    ] ================================================
[2026-10-18 04:44:13,498.498 INFO    ] Launching Daemon at Sun Oct 18 04:44:13 IST 2026
[2026-10-18 04:44:13,508.508 INFO    ] ================================================
[2026-10-18 04:44:14,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:44:14
[2026-10-18 04:44:14,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:44:14,927.927 INFO    ] Initializing speech engine...
[2026-10-18 04:44:14,936.936 INFO    ] 2026-10-18 04:44:14
[2026-10-18 04:44:15,181.181 INFO    ] 2026-10-18 04:44:15
[2026-10-18 04:44:15,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:44:15,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:44:15,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:44:15,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:44:15,671.671 INFO    ] time= 18/10/2026 04:44:15
[2026-10-18 04:44:15,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:44:15,741.741 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:44:15,870.870 INFO    ] No existing commands found in stream
[2026-10-18 04:44:20,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:44:20,900.900 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-18 04:44:25,308.308 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:44:25,310.310 INFO    ] Checking for system updates...
[2026-10-18 04:44:25,347.347 INFO    ] 200
[2026-10-18 04:44:25,349.349 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:44:25,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:44:25,403.403 INFO    ] No update needed
[2026-10-18 04:44:25,405.405 INFO    ] Checking for camera pi updates...
[2026-10-18 04:44:25,438.438 INFO    ] 200
[2026-10-18 04:44:25,441.441 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:44:25,482.482 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:44:35,494.494 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:44:35,528.528 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:44:35,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:44:35,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:44:35,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:44:35,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:44:37,589.589 INFO    ] ================================================
[2026-10-18 04:44:37,604.604 INFO    ] Launching Daemon at Sun Oct 18 04:44:37 IST 2026
[2026-10-18 04:44:37,614.614 INFO    ] ================================================
[2026-10-18 04:44:38,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:44:38
[2026-10-18 04:44:38,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:44:39,026.026 INFO    ] Initializing speech engine...
[2026-10-18 04:44:39,035.035 INFO    ] 2026-10-18 04:44:39
[2026-10-18 04:44:39,287.287 INFO    ] 2026-10-18 04:44:39
[2026-10-18 04:44:39,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:44:39,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:44:39,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:44:39,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:44:39,820.820 INFO    ] time= 18/10/2026 04:44:39
[2026-10-18 04:44:39,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:44:39,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:44:39,982.982 INFO    ] No existing commands found in stream
[2026-10-18 04:44:44,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:44:44,999.999 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-18 04:44:48,694.694 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:44:48,697.697 INFO    ] Checking for system updates...
[2026-10-18 04:44:48,733.733 INFO    ] 200
[2026-10-18 04:44:48,736.736 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:44:48,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:44:48,791.791 INFO    ] No update needed
[2026-10-18 04:44:48,793.793 INFO    ] Checking for camera pi updates...
[2026-10-18 04:44:48,826.826 INFO    ] 200
[2026-10-18 04:44:48,829.829 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:44:48,869.869 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:44:58,885.885 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:44:58,919.919 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:44:58,929.929 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:44:58,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:44:58,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:44:58,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:45:00,981.981 INFO    ] ================================================
[2026-10-18 04:45:01,996.996 INFO    ] Launching Daemon at Sun Oct 18 04:45:00 IST 2026
[2026-10-18 04:45:01,007.007 INFO    ] ================================================
[2026-10-18 04:45:01,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:45:01
[2026-10-18 04:45:02,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:45:03,145.145 INFO    ] Initializing speech engine...
[2026-10-18 04:45:03,149.149 INFO    ] 2026-10-18 04:45:03
[2026-10-18 04:45:03,444.444 INFO    ] 2026-10-18 04:45:03
[2026-10-18 04:45:03,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:45:03,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:45:03,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:45:03,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:45:03,988.988 INFO    ] time= 18/10/2026 04:45:03
[2026-10-18 04:45:03,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:45:04,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:45:04,142.142 INFO    ] No existing commands found in stream
[2026-10-18 04:45:09,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:45:09,180.180 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-18 04:45:10,334.334 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:45:10,337.337 INFO    ] Checking for system updates...
[2026-10-18 04:45:10,374.374 INFO    ] 200
[2026-10-18 04:45:10,377.377 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:45:10,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:45:10,434.434 INFO    ] No update needed
[2026-10-18 04:45:10,437.437 INFO    ] Checking for camera pi updates...
[2026-10-18 04:45:10,471.471 INFO    ] 200
[2026-10-18 04:45:10,474.474 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:45:10,520.520 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:45:20,537.537 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:45:20,577.577 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:45:20,588.588 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:45:20,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:45:20,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:45:20,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:45:22,644.644 INFO    ] ================================================
[2026-10-18 04:45:22,660.660 INFO    ] Launching Daemon at Sun Oct 18 04:45:22 IST 2026
[2026-10-18 04:45:22,671.671 INFO    ] ================================================
[2026-10-18 04:45:23,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:45:23
[2026-10-18 04:45:23,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:45:24,232.232 INFO    ] Initializing speech engine...
[2026-10-18 04:45:24,244.244 INFO    ] 2026-10-18 04:45:24
[2026-10-18 04:45:24,535.535 INFO    ] 2026-10-18 04:45:24
[2026-10-18 04:45:24,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:45:24,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:45:24,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:45:25,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:45:25,121.121 INFO    ] time= 18/10/2026 04:45:25
[2026-10-18 04:45:25,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:45:25,140.140 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:45:25,293.293 INFO    ] No existing commands found in stream
[2026-10-18 04:45:30,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:45:30,333.333 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-18 04:45:31,504.504 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:45:31,507.507 INFO    ] Checking for system updates...
[2026-10-18 04:45:31,548.548 INFO    ] 200
[2026-10-18 04:45:31,551.551 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:45:31,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:45:31,621.621 INFO    ] No update needed
[2026-10-18 04:45:31,623.623 INFO    ] Checking for camera pi updates...
[2026-10-18 04:45:31,658.658 INFO    ] 200
[2026-10-18 04:45:31,661.661 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:45:31,702.702 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:45:41,718.718 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:45:41,752.752 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:45:41,766.766 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:45:41,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:45:41,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:45:41,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:45:43,823.823 INFO    ] ================================================
[2026-10-18 04:45:43,840.840 INFO    ] Launching Daemon at Sun Oct 18 04:45:43 IST 2026
[2026-10-18 04:45:43,851.851 INFO    ] ================================================
[2026-10-18 04:45:44,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:45:44
[2026-10-18 04:45:45,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:45:45,414.414 INFO    ] Initializing speech engine...
[2026-10-18 04:45:45,420.420 INFO    ] 2026-10-18 04:45:45
[2026-10-18 04:45:45,669.669 INFO    ] 2026-10-18 04:45:45
[2026-10-18 04:45:45,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:45:45,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:45:45,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:45:46,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:45:46,237.237 INFO    ] time= 18/10/2026 04:45:46
[2026-10-18 04:45:46,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:45:46,263.263 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:45:46,369.369 INFO    ] No existing commands found in stream
[2026-10-18 04:45:51,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:45:51,405.405 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-18 04:45:55,605.605 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:45:55,607.607 INFO    ] Checking for system updates...
[2026-10-18 04:45:55,644.644 INFO    ] 200
[2026-10-18 04:45:55,646.646 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:45:55,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:45:55,703.703 INFO    ] No update needed
[2026-10-18 04:45:55,705.705 INFO    ] Checking for camera pi updates...
[2026-10-18 04:45:55,739.739 INFO    ] 200
[2026-10-18 04:45:55,741.741 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:45:55,782.782 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:46:05,797.797 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:46:05,832.832 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:46:05,842.842 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:46:05,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:46:05,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:46:05,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:46:07,894.894 INFO    ] ================================================
[2026-10-18 04:46:07,909.909 INFO    ] Launching Daemon at Sun Oct 18 04:46:07 IST 2026
[2026-10-18 04:46:07,921.921 INFO    ] ================================================
[2026-10-18 04:46:08,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:46:08
[2026-10-18 04:46:09,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:46:09,377.377 INFO    ] Initializing speech engine...
[2026-10-18 04:46:09,386.386 INFO    ] 2026-10-18 04:46:09
[2026-10-18 04:46:09,645.645 INFO    ] 2026-10-18 04:46:09
[2026-10-18 04:46:09,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:46:09,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:46:09,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:46:10,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:46:10,190.190 INFO    ] time= 18/10/2026 04:46:10
[2026-10-18 04:46:10,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:46:10,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:46:10,359.359 INFO    ] No existing commands found in stream
[2026-10-18 04:46:15,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:46:15,399.399 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-18 04:46:19,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:46:19,541.541 INFO    ] Checking for system updates...
[2026-10-18 04:46:19,580.580 INFO    ] 200
[2026-10-18 04:46:19,583.583 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:46:19,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:46:19,644.644 INFO    ] No update needed
[2026-10-18 04:46:19,647.647 INFO    ] Checking for camera pi updates...
[2026-10-18 04:46:19,685.685 INFO    ] 200
[2026-10-18 04:46:19,688.688 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:46:19,729.729 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:46:29,746.746 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:46:29,788.788 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:46:29,799.799 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:46:29,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:46:29,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:46:29,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:46:31,858.858 INFO    ] ================================================
[2026-10-18 04:46:31,875.875 INFO    ] Launching Daemon at Sun Oct 18 04:46:31 IST 2026
[2026-10-18 04:46:31,887.887 INFO    ] ================================================
[2026-10-18 04:46:32,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:46:32
[2026-10-18 04:46:33,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:46:33,401.401 INFO    ] Initializing speech engine...
[2026-10-18 04:46:33,413.413 INFO    ] 2026-10-18 04:46:33
[2026-10-18 04:46:33,693.693 INFO    ] 2026-10-18 04:46:33
[2026-10-18 04:46:33,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:46:33,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:46:33,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:46:34,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:46:34,255.255 INFO    ] time= 18/10/2026 04:46:34
[2026-10-18 04:46:34,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:46:34,304.304 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:46:34,442.442 INFO    ] No existing commands found in stream
[2026-10-18 04:46:39,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:46:39,482.482 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-18 04:46:41,415.415 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:46:41,419.419 INFO    ] Checking for system updates...
[2026-10-18 04:46:41,456.456 INFO    ] 200
[2026-10-18 04:46:41,459.459 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:46:41,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:46:41,517.517 INFO    ] No update needed
[2026-10-18 04:46:41,520.520 INFO    ] Checking for camera pi updates...
[2026-10-18 04:46:41,557.557 INFO    ] 200
[2026-10-18 04:46:41,560.560 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:46:41,601.601 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:46:51,617.617 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:46:51,651.651 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:46:51,661.661 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:46:51,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:46:51,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:46:51,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:46:53,716.716 INFO    ] ================================================
[2026-10-18 04:46:53,732.732 INFO    ] Launching Daemon at Sun Oct 18 04:46:53 IST 2026
[2026-10-18 04:46:53,743.743 INFO    ] ================================================
[2026-10-18 04:46:54,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:46:54
[2026-10-18 04:46:54,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:46:55,158.158 INFO    ] Initializing speech engine...
[2026-10-18 04:46:55,164.164 INFO    ] 2026-10-18 04:46:55
[2026-10-18 04:46:55,437.437 INFO    ] 2026-10-18 04:46:55
[2026-10-18 04:46:55,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:46:55,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:46:55,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:46:55,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:46:55,936.936 INFO    ] time= 18/10/2026 04:46:55
[2026-10-18 04:46:55,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:46:56,004.004 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:46:56,140.140 INFO    ] No existing commands found in stream
[2026-10-18 04:47:01,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:47:01,163.163 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-18 04:47:02,245.245 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:47:02,248.248 INFO    ] Checking for system updates...
[2026-10-18 04:47:02,289.289 INFO    ] 200
[2026-10-18 04:47:02,293.293 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:47:02,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:47:02,408.408 INFO    ] No update needed
[2026-10-18 04:47:02,414.414 INFO    ] Checking for camera pi updates...
[2026-10-18 04:47:02,473.473 INFO    ] 200
[2026-10-18 04:47:02,478.478 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:47:02,560.560 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:47:12,578.578 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:47:12,619.619 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:47:12,631.631 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:47:12,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:47:12,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:47:12,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:47:14,689.689 INFO    ] ================================================
[2026-10-18 04:47:14,705.705 INFO    ] Launching Daemon at Sun Oct 18 04:47:14 IST 2026
[2026-10-18 04:47:14,716.716 INFO    ] ================================================
[2026-10-18 04:47:15,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:47:15
[2026-10-18 04:47:16,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:47:16,323.323 INFO    ] Initializing speech engine...
[2026-10-18 04:47:16,343.343 INFO    ] 2026-10-18 04:47:16
[2026-10-18 04:47:16,593.593 INFO    ] 2026-10-18 04:47:16
[2026-10-18 04:47:16,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:47:16,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:47:16,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:47:17,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:47:17,092.092 INFO    ] time= 18/10/2026 04:47:17
[2026-10-18 04:47:17,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:47:17,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:47:17,313.313 INFO    ] No existing commands found in stream
[2026-10-18 04:47:22,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:47:22,331.331 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-18 04:47:23,347.347 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:47:23,350.350 INFO    ] Checking for system updates...
[2026-10-18 04:47:23,389.389 INFO    ] 200
[2026-10-18 04:47:23,392.392 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:47:23,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:47:23,446.446 INFO    ] No update needed
[2026-10-18 04:47:23,448.448 INFO    ] Checking for camera pi updates...
[2026-10-18 04:47:23,493.493 INFO    ] 200
[2026-10-18 04:47:23,496.496 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:47:23,538.538 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:47:33,553.553 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:47:33,593.593 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:47:33,605.605 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:47:33,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:47:33,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:47:33,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:47:35,662.662 INFO    ] ================================================
[2026-10-18 04:47:35,678.678 INFO    ] Launching Daemon at Sun Oct 18 04:47:35 IST 2026
[2026-10-18 04:47:35,690.690 INFO    ] ================================================
[2026-10-18 04:47:36,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:47:36
[2026-10-18 04:47:36,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:47:37,141.141 INFO    ] Initializing speech engine...
[2026-10-18 04:47:37,151.151 INFO    ] 2026-10-18 04:47:37
[2026-10-18 04:47:37,412.412 INFO    ] 2026-10-18 04:47:37
[2026-10-18 04:47:37,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:47:37,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:47:37,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:47:37,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:47:37,957.957 INFO    ] time= 18/10/2026 04:47:37
[2026-10-18 04:47:37,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:47:37,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:47:38,088.088 INFO    ] No existing commands found in stream
[2026-10-18 04:47:43,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:47:43,118.118 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-18 04:47:46,826.826 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:47:46,829.829 INFO    ] Checking for system updates...
[2026-10-18 04:47:46,865.865 INFO    ] 200
[2026-10-18 04:47:46,868.868 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:47:46,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:47:46,923.923 INFO    ] No update needed
[2026-10-18 04:47:46,926.926 INFO    ] Checking for camera pi updates...
[2026-10-18 04:47:46,960.960 INFO    ] 200
[2026-10-18 04:47:46,962.962 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:47:47,003.003 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:47:57,019.019 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:47:57,059.059 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:47:57,071.071 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:47:57,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:47:57,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:47:57,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:47:59,127.127 INFO    ] ================================================
[2026-10-18 04:47:59,143.143 INFO    ] Launching Daemon at Sun Oct 18 04:47:59 IST 2026
[2026-10-18 04:47:59,154.154 INFO    ] ================================================
[2026-10-18 04:47:59,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:47:59
[2026-10-18 04:48:00,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:48:00,684.684 INFO    ] Initializing speech engine...
[2026-10-18 04:48:00,705.705 INFO    ] 2026-10-18 04:48:00
[2026-10-18 04:48:00,968.968 INFO    ] 2026-10-18 04:48:00
[2026-10-18 04:48:01,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:48:01,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:48:01,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:48:01,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:48:01,473.473 INFO    ] time= 18/10/2026 04:48:01
[2026-10-18 04:48:01,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:48:01,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:48:01,702.702 INFO    ] No existing commands found in stream
[2026-10-18 04:48:06,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:48:06,716.716 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-18 04:48:10,105.105 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:48:10,108.108 INFO    ] Checking for system updates...
[2026-10-18 04:48:10,145.145 INFO    ] 200
[2026-10-18 04:48:10,148.148 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:48:10,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:48:10,206.206 INFO    ] No update needed
[2026-10-18 04:48:10,209.209 INFO    ] Checking for camera pi updates...
[2026-10-18 04:48:10,244.244 INFO    ] 200
[2026-10-18 04:48:10,247.247 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:48:10,289.289 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:48:20,306.306 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:48:20,347.347 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:48:20,358.358 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:48:20,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:48:20,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:48:20,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:48:22,413.413 INFO    ] ================================================
[2026-10-18 04:48:22,430.430 INFO    ] Launching Daemon at Sun Oct 18 04:48:22 IST 2026
[2026-10-18 04:48:22,441.441 INFO    ] ================================================
[2026-10-18 04:48:23,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:48:23
[2026-10-18 04:48:23,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:48:23,949.949 INFO    ] Initializing speech engine...
[2026-10-18 04:48:23,965.965 INFO    ] 2026-10-18 04:48:23
[2026-10-18 04:48:24,242.242 INFO    ] 2026-10-18 04:48:24
[2026-10-18 04:48:24,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:48:24,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:48:24,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:48:24,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:48:24,777.777 INFO    ] time= 18/10/2026 04:48:24
[2026-10-18 04:48:24,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:48:24,892.892 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:48:24,973.973 INFO    ] No existing commands found in stream
[2026-10-18 04:48:30,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:48:30,011.011 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-18 04:48:31,830.830 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:48:31,833.833 INFO    ] Checking for system updates...
[2026-10-18 04:48:31,875.875 INFO    ] 200
[2026-10-18 04:48:31,878.878 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:48:31,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:48:31,937.937 INFO    ] No update needed
[2026-10-18 04:48:31,940.940 INFO    ] Checking for camera pi updates...
[2026-10-18 04:48:31,980.980 INFO    ] 200
[2026-10-18 04:48:31,983.983 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:48:32,031.031 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:48:42,046.046 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:48:42,082.082 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:48:42,091.091 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:48:42,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:48:42,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:48:42,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:48:44,143.143 INFO    ] ================================================
[2026-10-18 04:48:44,158.158 INFO    ] Launching Daemon at Sun Oct 18 04:48:44 IST 2026
[2026-10-18 04:48:44,170.170 INFO    ] ================================================
[2026-10-18 04:48:44,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:48:44
[2026-10-18 04:48:45,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:48:45,623.623 INFO    ] Initializing speech engine...
[2026-10-18 04:48:45,632.632 INFO    ] 2026-10-18 04:48:45
[2026-10-18 04:48:45,895.895 INFO    ] 2026-10-18 04:48:45
[2026-10-18 04:48:45,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:48:46,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:48:46,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:48:46,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:48:46,437.437 INFO    ] time= 18/10/2026 04:48:46
[2026-10-18 04:48:46,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:48:46,461.461 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:48:46,593.593 INFO    ] No existing commands found in stream
[2026-10-18 04:48:51,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:48:51,619.619 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-18 04:48:56,103.103 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:48:56,106.106 INFO    ] Checking for system updates...
[2026-10-18 04:48:56,141.141 INFO    ] 200
[2026-10-18 04:48:56,144.144 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:48:56,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:48:56,198.198 INFO    ] No update needed
[2026-10-18 04:48:56,201.201 INFO    ] Checking for camera pi updates...
[2026-10-18 04:48:56,239.239 INFO    ] 200
[2026-10-18 04:48:56,241.241 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:48:56,282.282 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:49:06,297.297 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:49:06,333.333 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:49:06,343.343 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:49:06,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:49:06,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:49:06,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:49:08,396.396 INFO    ] ================================================
[2026-10-18 04:49:08,412.412 INFO    ] Launching Daemon at Sun Oct 18 04:49:08 IST 2026
[2026-10-18 04:49:08,423.423 INFO    ] ================================================
[2026-10-18 04:49:09,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:49:09
[2026-10-18 04:49:09,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:49:10,017.017 INFO    ] Initializing speech engine...
[2026-10-18 04:49:10,026.026 INFO    ] 2026-10-18 04:49:10
[2026-10-18 04:49:10,286.286 INFO    ] 2026-10-18 04:49:10
[2026-10-18 04:49:10,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:49:10,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:49:10,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:49:10,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:49:10,830.830 INFO    ] time= 18/10/2026 04:49:10
[2026-10-18 04:49:10,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:49:10,870.870 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:49:10,984.984 INFO    ] No existing commands found in stream
[2026-10-18 04:49:16,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:49:16,017.017 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-18 04:49:19,707.707 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:49:19,710.710 INFO    ] Checking for system updates...
[2026-10-18 04:49:19,746.746 INFO    ] 200
[2026-10-18 04:49:19,749.749 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:49:19,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:49:19,804.804 INFO    ] No update needed
[2026-10-18 04:49:19,807.807 INFO    ] Checking for camera pi updates...
[2026-10-18 04:49:19,841.841 INFO    ] 200
[2026-10-18 04:49:19,843.843 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:49:19,884.884 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:49:29,898.898 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:49:29,934.934 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:49:29,944.944 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:49:29,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:49:29,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:49:29,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:49:32,000.000 INFO    ] ================================================
[2026-10-18 04:49:32,018.018 INFO    ] Launching Daemon at Sun Oct 18 04:49:32 IST 2026
[2026-10-18 04:49:32,030.030 INFO    ] ================================================
[2026-10-18 04:49:32,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:49:32
[2026-10-18 04:49:33,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:49:33,634.634 INFO    ] Initializing speech engine...
[2026-10-18 04:49:33,641.641 INFO    ] 2026-10-18 04:49:33
[2026-10-18 04:49:33,916.916 INFO    ] 2026-10-18 04:49:33
[2026-10-18 04:49:33,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:49:34,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:49:34,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:49:34,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:49:34,442.442 INFO    ] time= 18/10/2026 04:49:34
[2026-10-18 04:49:34,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:49:34,488.488 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:49:34,597.597 INFO    ] No existing commands found in stream
[2026-10-18 04:49:39,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:49:39,623.623 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-18 04:49:41,762.762 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:49:41,765.765 INFO    ] Checking for system updates...
[2026-10-18 04:49:41,801.801 INFO    ] 200
[2026-10-18 04:49:41,803.803 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:49:41,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:49:41,859.859 INFO    ] No update needed
[2026-10-18 04:49:41,862.862 INFO    ] Checking for camera pi updates...
[2026-10-18 04:49:41,895.895 INFO    ] 200
[2026-10-18 04:49:41,898.898 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:49:41,938.938 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:49:51,953.953 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:49:51,993.993 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:49:52,003.003 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:49:52,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:49:52,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:49:52,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:49:54,061.061 INFO    ] ================================================
[2026-10-18 04:49:54,077.077 INFO    ] Launching Daemon at Sun Oct 18 04:49:54 IST 2026
[2026-10-18 04:49:54,088.088 INFO    ] ================================================
[2026-10-18 04:49:54,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:49:54
[2026-10-18 04:49:55,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:49:55,488.488 INFO    ] Initializing speech engine...
[2026-10-18 04:49:55,501.501 INFO    ] 2026-10-18 04:49:55
[2026-10-18 04:49:55,766.766 INFO    ] 2026-10-18 04:49:55
[2026-10-18 04:49:55,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:49:56,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:49:56,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:49:56,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:49:56,330.330 INFO    ] time= 18/10/2026 04:49:56
[2026-10-18 04:49:56,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:49:56,354.354 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:49:56,489.489 INFO    ] No existing commands found in stream
[2026-10-18 04:50:01,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:50:01,515.515 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-18 04:50:07,787.787 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:50:07,789.789 INFO    ] Checking for system updates...
[2026-10-18 04:50:07,834.834 INFO    ] 200
[2026-10-18 04:50:07,837.837 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:50:07,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:50:07,903.903 INFO    ] No update needed
[2026-10-18 04:50:07,906.906 INFO    ] Checking for camera pi updates...
[2026-10-18 04:50:07,941.941 INFO    ] 200
[2026-10-18 04:50:07,944.944 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:50:07,985.985 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:50:18,000.000 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:50:18,034.034 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:50:18,044.044 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:50:18,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:50:18,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:50:18,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:50:20,099.099 INFO    ] ================================================
[2026-10-18 04:50:20,114.114 INFO    ] Launching Daemon at Sun Oct 18 04:50:20 IST 2026
[2026-10-18 04:50:20,126.126 INFO    ] ================================================
[2026-10-18 04:50:20,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:50:20
[2026-10-18 04:50:21,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:50:21,557.557 INFO    ] Initializing speech engine...
[2026-10-18 04:50:21,566.566 INFO    ] 2026-10-18 04:50:21
[2026-10-18 04:50:21,862.862 INFO    ] 2026-10-18 04:50:21
[2026-10-18 04:50:21,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:50:22,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:50:22,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:50:22,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:50:22,343.343 INFO    ] time= 18/10/2026 04:50:22
[2026-10-18 04:50:22,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:50:22,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:50:22,577.577 INFO    ] No existing commands found in stream
[2026-10-18 04:50:27,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:50:27,595.595 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-18 04:50:30,935.935 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:50:30,937.937 INFO    ] Checking for system updates...
[2026-10-18 04:50:30,975.975 INFO    ] 200
[2026-10-18 04:50:30,978.978 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:50:31,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:50:31,035.035 INFO    ] No update needed
[2026-10-18 04:50:31,038.038 INFO    ] Checking for camera pi updates...
[2026-10-18 04:50:31,072.072 INFO    ] 200
[2026-10-18 04:50:31,075.075 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:50:31,117.117 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:50:41,134.134 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:50:41,176.176 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:50:41,187.187 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:50:41,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:50:41,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:50:41,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:50:43,244.244 INFO    ] ================================================
[2026-10-18 04:50:43,259.259 INFO    ] Launching Daemon at Sun Oct 18 04:50:43 IST 2026
[2026-10-18 04:50:43,270.270 INFO    ] ================================================
[2026-10-18 04:50:43,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:50:43
[2026-10-18 04:50:44,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:50:44,951.951 INFO    ] Initializing speech engine...
[2026-10-18 04:50:44,963.963 INFO    ] 2026-10-18 04:50:44
[2026-10-18 04:50:45,249.249 INFO    ] 2026-10-18 04:50:45
[2026-10-18 04:50:45,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:50:45,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:50:45,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:50:45,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:50:45,789.789 INFO    ] time= 18/10/2026 04:50:45
[2026-10-18 04:50:45,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:50:45,824.824 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:50:45,930.930 INFO    ] No existing commands found in stream
[2026-10-18 04:50:50,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:50:50,950.950 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-18 04:50:51,468.468 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:50:51,471.471 INFO    ] Checking for system updates...
[2026-10-18 04:50:51,508.508 INFO    ] 200
[2026-10-18 04:50:51,511.511 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:50:51,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:50:51,569.569 INFO    ] No update needed
[2026-10-18 04:50:51,572.572 INFO    ] Checking for camera pi updates...
[2026-10-18 04:50:51,612.612 INFO    ] 200
[2026-10-18 04:50:51,615.615 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:50:51,663.663 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:51:01,679.679 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:51:01,718.718 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:51:01,729.729 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:51:01,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:51:01,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:51:01,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:51:03,786.786 INFO    ] ================================================
[2026-10-18 04:51:03,801.801 INFO    ] Launching Daemon at Sun Oct 18 04:51:03 IST 2026
[2026-10-18 04:51:03,812.812 INFO    ] ================================================
[2026-10-18 04:51:04,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:51:04
[2026-10-18 04:51:04,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:51:05,219.219 INFO    ] Initializing speech engine...
[2026-10-18 04:51:05,226.226 INFO    ] 2026-10-18 04:51:05
[2026-10-18 04:51:05,514.514 INFO    ] 2026-10-18 04:51:05
[2026-10-18 04:51:05,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:51:05,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:51:05,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:51:05,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:51:06,029.029 INFO    ] time= 18/10/2026 04:51:05
[2026-10-18 04:51:06,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:51:06,140.140 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:51:06,278.278 INFO    ] No existing commands found in stream
[2026-10-18 04:51:11,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:51:11,316.316 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-18 04:51:15,754.754 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:51:15,757.757 INFO    ] Checking for system updates...
[2026-10-18 04:51:15,793.793 INFO    ] 200
[2026-10-18 04:51:15,796.796 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:51:15,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:51:15,858.858 INFO    ] No update needed
[2026-10-18 04:51:15,861.861 INFO    ] Checking for camera pi updates...
[2026-10-18 04:51:15,899.899 INFO    ] 200
[2026-10-18 04:51:15,902.902 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:51:15,947.947 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:51:25,966.966 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:51:26,005.005 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:51:26,016.016 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:51:26,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:51:26,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:51:26,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:51:28,070.070 INFO    ] ================================================
[2026-10-18 04:51:28,086.086 INFO    ] Launching Daemon at Sun Oct 18 04:51:28 IST 2026
[2026-10-18 04:51:28,101.101 INFO    ] ================================================
[2026-10-18 04:51:28,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:51:28
[2026-10-18 04:51:29,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:51:29,532.532 INFO    ] Initializing speech engine...
[2026-10-18 04:51:29,548.548 INFO    ] 2026-10-18 04:51:29
[2026-10-18 04:51:29,832.832 INFO    ] 2026-10-18 04:51:29
[2026-10-18 04:51:29,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:51:30,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:51:30,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:51:30,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:51:30,355.355 INFO    ] time= 18/10/2026 04:51:30
[2026-10-18 04:51:30,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:51:30,459.459 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:51:30,595.595 INFO    ] No existing commands found in stream
[2026-10-18 04:51:35,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:51:35,618.618 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-18 04:51:36,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:51:36,574.574 INFO    ] Checking for system updates...
[2026-10-18 04:51:36,610.610 INFO    ] 200
[2026-10-18 04:51:36,612.612 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:51:36,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:51:36,671.671 INFO    ] No update needed
[2026-10-18 04:51:36,674.674 INFO    ] Checking for camera pi updates...
[2026-10-18 04:51:36,707.707 INFO    ] 200
[2026-10-18 04:51:36,710.710 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:51:36,749.749 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:51:46,762.762 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:51:46,802.802 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:51:46,813.813 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:51:46,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:51:46,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:51:46,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:51:48,867.867 INFO    ] ================================================
[2026-10-18 04:51:48,882.882 INFO    ] Launching Daemon at Sun Oct 18 04:51:48 IST 2026
[2026-10-18 04:51:48,893.893 INFO    ] ================================================
[2026-10-18 04:51:49,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:51:49
[2026-10-18 04:51:50,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:51:50,316.316 INFO    ] Initializing speech engine...
[2026-10-18 04:51:50,325.325 INFO    ] 2026-10-18 04:51:50
[2026-10-18 04:51:50,576.576 INFO    ] 2026-10-18 04:51:50
[2026-10-18 04:51:50,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:51:50,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:51:50,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:51:51,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:51:51,076.076 INFO    ] time= 18/10/2026 04:51:51
[2026-10-18 04:51:51,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:51:51,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:51:51,259.259 INFO    ] No existing commands found in stream
[2026-10-18 04:51:56,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:51:56,289.289 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-18 04:51:57,460.460 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:51:57,463.463 INFO    ] Checking for system updates...
[2026-10-18 04:51:57,499.499 INFO    ] 200
[2026-10-18 04:51:57,501.501 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:51:57,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:51:57,557.557 INFO    ] No update needed
[2026-10-18 04:51:57,559.559 INFO    ] Checking for camera pi updates...
[2026-10-18 04:51:57,592.592 INFO    ] 200
[2026-10-18 04:51:57,595.595 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:51:57,636.636 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:52:07,649.649 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:52:07,684.684 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:52:07,694.694 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:52:07,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:52:07,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:52:07,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:52:09,746.746 INFO    ] ================================================
[2026-10-18 04:52:09,761.761 INFO    ] Launching Daemon at Sun Oct 18 04:52:09 IST 2026
[2026-10-18 04:52:09,772.772 INFO    ] ================================================
[2026-10-18 04:52:10,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:52:10
[2026-10-18 04:52:11,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:52:11,330.330 INFO    ] Initializing speech engine...
[2026-10-18 04:52:11,338.338 INFO    ] 2026-10-18 04:52:11
[2026-10-18 04:52:11,621.621 INFO    ] 2026-10-18 04:52:11
[2026-10-18 04:52:11,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:52:11,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:52:11,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:52:12,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:52:12,169.169 INFO    ] time= 18/10/2026 04:52:12
[2026-10-18 04:52:12,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:52:12,206.206 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:52:12,331.331 INFO    ] No existing commands found in stream
[2026-10-18 04:52:17,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:52:17,361.361 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-18 04:52:18,455.455 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:52:18,458.458 INFO    ] Checking for system updates...
[2026-10-18 04:52:18,496.496 INFO    ] 200
[2026-10-18 04:52:18,499.499 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:52:18,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:52:18,566.566 INFO    ] No update needed
[2026-10-18 04:52:18,569.569 INFO    ] Checking for camera pi updates...
[2026-10-18 04:52:18,611.611 INFO    ] 200
[2026-10-18 04:52:18,615.615 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:52:18,663.663 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:52:28,679.679 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:52:28,714.714 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:52:28,724.724 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:52:28,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:52:28,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:52:28,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:52:30,776.776 INFO    ] ================================================
[2026-10-18 04:52:30,791.791 INFO    ] Launching Daemon at Sun Oct 18 04:52:30 IST 2026
[2026-10-18 04:52:30,801.801 INFO    ] ================================================
[2026-10-18 04:52:31,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:52:31
[2026-10-18 04:52:32,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:52:32,336.336 INFO    ] Initializing speech engine...
[2026-10-18 04:52:32,343.343 INFO    ] 2026-10-18 04:52:32
[2026-10-18 04:52:32,633.633 INFO    ] 2026-10-18 04:52:32
[2026-10-18 04:52:32,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:52:32,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:52:32,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:52:33,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:52:33,122.122 INFO    ] time= 18/10/2026 04:52:33
[2026-10-18 04:52:33,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:52:33,190.190 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:52:33,337.337 INFO    ] No existing commands found in stream
[2026-10-18 04:52:38,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:52:38,362.362 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-18 04:52:40,157.157 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:52:40,160.160 INFO    ] Checking for system updates...
[2026-10-18 04:52:40,196.196 INFO    ] 200
[2026-10-18 04:52:40,199.199 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:52:40,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:52:40,253.253 INFO    ] No update needed
[2026-10-18 04:52:40,255.255 INFO    ] Checking for camera pi updates...
[2026-10-18 04:52:40,289.289 INFO    ] 200
[2026-10-18 04:52:40,292.292 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:52:40,331.331 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:52:50,347.347 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:52:50,381.381 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:52:50,392.392 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:52:50,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:52:50,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:52:50,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:52:52,445.445 INFO    ] ================================================
[2026-10-18 04:52:52,459.459 INFO    ] Launching Daemon at Sun Oct 18 04:52:52 IST 2026
[2026-10-18 04:52:52,470.470 INFO    ] ================================================
[2026-10-18 04:52:53,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:52:53
[2026-10-18 04:52:53,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:52:54,031.031 INFO    ] Initializing speech engine...
[2026-10-18 04:52:54,039.039 INFO    ] 2026-10-18 04:52:54
[2026-10-18 04:52:54,340.340 INFO    ] 2026-10-18 04:52:54
[2026-10-18 04:52:54,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:52:54,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:52:54,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:52:54,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:52:54,902.902 INFO    ] time= 18/10/2026 04:52:54
[2026-10-18 04:52:54,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:52:54,930.930 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:52:55,055.055 INFO    ] No existing commands found in stream
[2026-10-18 04:53:00,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:53:00,078.078 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-18 04:53:00,836.836 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:53:00,839.839 INFO    ] Checking for system updates...
[2026-10-18 04:53:00,878.878 INFO    ] 200
[2026-10-18 04:53:00,881.881 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:53:00,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:53:00,942.942 INFO    ] No update needed
[2026-10-18 04:53:00,945.945 INFO    ] Checking for camera pi updates...
[2026-10-18 04:53:00,978.978 INFO    ] 200
[2026-10-18 04:53:00,981.981 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:53:01,025.025 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:53:11,041.041 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:53:11,080.080 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:53:11,091.091 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:53:11,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:53:11,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:53:11,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:53:13,146.146 INFO    ] ================================================
[2026-10-18 04:53:13,161.161 INFO    ] Launching Daemon at Sun Oct 18 04:53:13 IST 2026
[2026-10-18 04:53:13,172.172 INFO    ] ================================================
[2026-10-18 04:53:13,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:53:13
[2026-10-18 04:53:14,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:53:14,761.761 INFO    ] Initializing speech engine...
[2026-10-18 04:53:14,770.770 INFO    ] 2026-10-18 04:53:14
[2026-10-18 04:53:15,053.053 INFO    ] 2026-10-18 04:53:15
[2026-10-18 04:53:15,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:53:15,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:53:15,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:53:15,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:53:15,608.608 INFO    ] time= 18/10/2026 04:53:15
[2026-10-18 04:53:15,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:53:15,646.646 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:53:15,749.749 INFO    ] No existing commands found in stream
[2026-10-18 04:53:20,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:53:20,781.781 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-18 04:53:22,301.301 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:53:22,304.304 INFO    ] Checking for system updates...
[2026-10-18 04:53:22,341.341 INFO    ] 200
[2026-10-18 04:53:22,344.344 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:53:22,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:53:22,400.400 INFO    ] No update needed
[2026-10-18 04:53:22,403.403 INFO    ] Checking for camera pi updates...
[2026-10-18 04:53:22,437.437 INFO    ] 200
[2026-10-18 04:53:22,440.440 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:53:22,482.482 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:53:32,496.496 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:53:32,539.539 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:53:32,550.550 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:53:32,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:53:32,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:53:32,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:53:34,604.604 INFO    ] ================================================
[2026-10-18 04:53:34,620.620 INFO    ] Launching Daemon at Sun Oct 18 04:53:34 IST 2026
[2026-10-18 04:53:34,631.631 INFO    ] ================================================
[2026-10-18 04:53:35,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:53:35
[2026-10-18 04:53:35,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:53:36,083.083 INFO    ] Initializing speech engine...
[2026-10-18 04:53:36,090.090 INFO    ] 2026-10-18 04:53:36
[2026-10-18 04:53:36,382.382 INFO    ] 2026-10-18 04:53:36
[2026-10-18 04:53:36,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:53:36,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:53:36,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:53:36,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:53:36,883.883 INFO    ] time= 18/10/2026 04:53:36
[2026-10-18 04:53:36,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:53:37,002.002 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:53:37,140.140 INFO    ] No existing commands found in stream
[2026-10-18 04:53:42,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:53:42,160.160 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-18 04:53:43,957.957 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:53:43,960.960 INFO    ] Checking for system updates...
[2026-10-18 04:53:44,000.000 INFO    ] 200
[2026-10-18 04:53:44,004.004 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:53:44,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:53:44,063.063 INFO    ] No update needed
[2026-10-18 04:53:44,066.066 INFO    ] Checking for camera pi updates...
[2026-10-18 04:53:44,101.101 INFO    ] 200
[2026-10-18 04:53:44,103.103 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:53:44,145.145 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:53:54,160.160 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:53:54,199.199 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:53:54,223.223 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:53:54,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:53:54,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:53:54,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:53:56,280.280 INFO    ] ================================================
[2026-10-18 04:53:56,296.296 INFO    ] Launching Daemon at Sun Oct 18 04:53:56 IST 2026
[2026-10-18 04:53:56,307.307 INFO    ] ================================================
[2026-10-18 04:53:56,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:53:56
[2026-10-18 04:53:57,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:53:57,789.789 INFO    ] Initializing speech engine...
[2026-10-18 04:53:57,798.798 INFO    ] 2026-10-18 04:53:57
[2026-10-18 04:53:58,048.048 INFO    ] 2026-10-18 04:53:58
[2026-10-18 04:53:58,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:53:58,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:53:58,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:53:58,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:53:58,550.550 INFO    ] time= 18/10/2026 04:53:58
[2026-10-18 04:53:58,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:53:58,622.622 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:53:58,775.775 INFO    ] No existing commands found in stream
[2026-10-18 04:54:03,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:54:03,797.797 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-18 04:54:06,026.026 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:54:06,029.029 INFO    ] Checking for system updates...
[2026-10-18 04:54:06,067.067 INFO    ] 200
[2026-10-18 04:54:06,070.070 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:54:06,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:54:06,131.131 INFO    ] No update needed
[2026-10-18 04:54:06,133.133 INFO    ] Checking for camera pi updates...
[2026-10-18 04:54:06,167.167 INFO    ] 200
[2026-10-18 04:54:06,169.169 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:54:06,212.212 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:54:16,227.227 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:54:16,267.267 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:54:16,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:54:16,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:54:16,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:54:16,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:54:18,336.336 INFO    ] ================================================
[2026-10-18 04:54:18,352.352 INFO    ] Launching Daemon at Sun Oct 18 04:54:18 IST 2026
[2026-10-18 04:54:18,364.364 INFO    ] ================================================
[2026-10-18 04:54:18,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:54:18
[2026-10-18 04:54:19,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:54:19,918.918 INFO    ] Initializing speech engine...
[2026-10-18 04:54:19,930.930 INFO    ] 2026-10-18 04:54:19
[2026-10-18 04:54:20,231.231 INFO    ] 2026-10-18 04:54:20
[2026-10-18 04:54:20,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:54:20,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:54:21,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:54:21,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:54:21,227.227 INFO    ] time= 18/10/2026 04:54:21
[2026-10-18 04:54:21,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:54:21,234.234 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:54:21,346.346 INFO    ] No existing commands found in stream
[2026-10-18 04:54:26,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:54:26,380.380 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-18 04:54:27,483.483 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 04:54:27,486.486 INFO    ] Checking for system updates...
[2026-10-18 04:54:27,523.523 INFO    ] 200
[2026-10-18 04:54:27,526.526 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:54:27,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:54:27,585.585 INFO    ] No update needed
[2026-10-18 04:54:27,589.589 INFO    ] Checking for camera pi updates...
[2026-10-18 04:54:27,625.625 INFO    ] 200
[2026-10-18 04:54:27,628.628 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:54:27,669.669 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:54:37,685.685 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:54:37,726.726 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:54:37,738.738 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:54:37,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:54:37,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:54:37,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:54:39,794.794 INFO    ] ================================================
[2026-10-18 04:54:39,809.809 INFO    ] Launching Daemon at Sun Oct 18 04:54:39 IST 2026
[2026-10-18 04:54:39,820.820 INFO    ] ================================================
[2026-10-18 04:54:40,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:54:40
[2026-10-18 04:54:41,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:54:41,488.488 INFO    ] Initializing speech engine...
[2026-10-18 04:54:41,502.502 INFO    ] 2026-10-18 04:54:41
[2026-10-18 04:54:41,768.768 INFO    ] 2026-10-18 04:54:41
[2026-10-18 04:54:41,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:54:42,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:54:42,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:54:42,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:54:42,274.274 INFO    ] time= 18/10/2026 04:54:42
[2026-10-18 04:54:42,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:54:42,372.372 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:54:42,478.478 INFO    ] No existing commands found in stream
[2026-10-18 04:54:47,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:54:47,493.493 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-18 04:54:48,990.990 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:54:48,992.992 INFO    ] Checking for system updates...
[2026-10-18 04:54:49,028.028 INFO    ] 200
[2026-10-18 04:54:49,030.030 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:54:49,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:54:49,087.087 INFO    ] No update needed
[2026-10-18 04:54:49,089.089 INFO    ] Checking for camera pi updates...
[2026-10-18 04:54:49,127.127 INFO    ] 200
[2026-10-18 04:54:49,129.129 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:54:49,169.169 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:54:59,184.184 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:54:59,219.219 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:54:59,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:54:59,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:54:59,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:54:59,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:55:01,280.280 INFO    ] ================================================
[2026-10-18 04:55:01,296.296 INFO    ] Launching Daemon at Sun Oct 18 04:55:01 IST 2026
[2026-10-18 04:55:01,306.306 INFO    ] ================================================
[2026-10-18 04:55:01,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:55:01
[2026-10-18 04:55:02,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:55:03,405.405 INFO    ] Initializing speech engine...
[2026-10-18 04:55:03,424.424 INFO    ] 2026-10-18 04:55:03
[2026-10-18 04:55:03,740.740 INFO    ] 2026-10-18 04:55:03
[2026-10-18 04:55:03,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:55:03,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:55:03,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:55:04,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:55:04,191.191 INFO    ] time= 18/10/2026 04:55:04
[2026-10-18 04:55:04,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:55:04,267.267 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:55:04,331.331 INFO    ] No existing commands found in stream
[2026-10-18 04:55:09,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:55:09,346.346 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-18 04:55:10,463.463 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:55:10,465.465 INFO    ] Checking for system updates...
[2026-10-18 04:55:10,501.501 INFO    ] 200
[2026-10-18 04:55:10,503.503 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:55:10,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:55:10,559.559 INFO    ] No update needed
[2026-10-18 04:55:10,561.561 INFO    ] Checking for camera pi updates...
[2026-10-18 04:55:10,594.594 INFO    ] 200
[2026-10-18 04:55:10,597.597 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:55:10,642.642 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:55:20,657.657 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:55:20,692.692 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:55:20,701.701 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:55:20,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:55:20,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:55:20,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:55:22,754.754 INFO    ] ================================================
[2026-10-18 04:55:22,769.769 INFO    ] Launching Daemon at Sun Oct 18 04:55:22 IST 2026
[2026-10-18 04:55:22,779.779 INFO    ] ================================================
[2026-10-18 04:55:23,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:55:23
[2026-10-18 04:55:23,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:55:24,219.219 INFO    ] Initializing speech engine...
[2026-10-18 04:55:24,228.228 INFO    ] 2026-10-18 04:55:24
[2026-10-18 04:55:24,486.486 INFO    ] 2026-10-18 04:55:24
[2026-10-18 04:55:24,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:55:24,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:55:24,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:55:24,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:55:25,028.028 INFO    ] time= 18/10/2026 04:55:24
[2026-10-18 04:55:25,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:55:25,054.054 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:55:25,186.186 INFO    ] No existing commands found in stream
[2026-10-18 04:55:30,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:55:30,216.216 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-18 04:55:31,823.823 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:55:31,826.826 INFO    ] Checking for system updates...
[2026-10-18 04:55:31,861.861 INFO    ] 200
[2026-10-18 04:55:31,863.863 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:55:31,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:55:31,918.918 INFO    ] No update needed
[2026-10-18 04:55:31,920.920 INFO    ] Checking for camera pi updates...
[2026-10-18 04:55:31,953.953 INFO    ] 200
[2026-10-18 04:55:31,956.956 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:55:31,997.997 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:55:42,013.013 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:55:42,047.047 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:55:42,057.057 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:55:42,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:55:42,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:55:42,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:55:44,109.109 INFO    ] ================================================
[2026-10-18 04:55:44,124.124 INFO    ] Launching Daemon at Sun Oct 18 04:55:44 IST 2026
[2026-10-18 04:55:44,135.135 INFO    ] ================================================
[2026-10-18 04:55:44,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:55:44
[2026-10-18 04:55:45,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:55:45,729.729 INFO    ] Initializing speech engine...
[2026-10-18 04:55:45,737.737 INFO    ] 2026-10-18 04:55:45
[2026-10-18 04:55:45,987.987 INFO    ] 2026-10-18 04:55:45
[2026-10-18 04:55:46,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:55:46,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:55:46,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:55:46,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:55:46,476.476 INFO    ] time= 18/10/2026 04:55:46
[2026-10-18 04:55:46,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:55:46,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:55:46,689.689 INFO    ] No existing commands found in stream
[2026-10-18 04:55:51,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:55:51,711.711 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-18 04:55:52,627.627 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:55:52,631.631 INFO    ] Checking for system updates...
[2026-10-18 04:55:52,671.671 INFO    ] 200
[2026-10-18 04:55:52,674.674 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:55:52,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:55:52,737.737 INFO    ] No update needed
[2026-10-18 04:55:52,740.740 INFO    ] Checking for camera pi updates...
[2026-10-18 04:55:52,780.780 INFO    ] 200
[2026-10-18 04:55:52,783.783 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:55:52,824.824 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:56:02,839.839 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:56:02,879.879 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:56:02,890.890 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:56:02,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:56:02,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:56:02,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:56:04,949.949 INFO    ] ================================================
[2026-10-18 04:56:04,964.964 INFO    ] Launching Daemon at Sun Oct 18 04:56:04 IST 2026
[2026-10-18 04:56:04,975.975 INFO    ] ================================================
[2026-10-18 04:56:05,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:56:05
[2026-10-18 04:56:06,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:56:06,557.557 INFO    ] Initializing speech engine...
[2026-10-18 04:56:06,567.567 INFO    ] 2026-10-18 04:56:06
[2026-10-18 04:56:06,850.850 INFO    ] 2026-10-18 04:56:06
[2026-10-18 04:56:06,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:56:07,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:56:07,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:56:07,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:56:07,380.380 INFO    ] time= 18/10/2026 04:56:07
[2026-10-18 04:56:07,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:56:07,431.431 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:56:07,536.536 INFO    ] No existing commands found in stream
[2026-10-18 04:56:12,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:56:12,569.569 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-18 04:56:13,933.933 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 04:56:13,937.937 INFO    ] Checking for system updates...
[2026-10-18 04:56:13,974.974 INFO    ] 200
[2026-10-18 04:56:13,977.977 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:56:14,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:56:14,034.034 INFO    ] No update needed
[2026-10-18 04:56:14,037.037 INFO    ] Checking for camera pi updates...
[2026-10-18 04:56:14,072.072 INFO    ] 200
[2026-10-18 04:56:14,075.075 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:56:14,117.117 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:56:24,132.132 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:56:24,168.168 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:56:24,178.178 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:56:24,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:56:24,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:56:24,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:56:26,231.231 INFO    ] ================================================
[2026-10-18 04:56:26,246.246 INFO    ] Launching Daemon at Sun Oct 18 04:56:26 IST 2026
[2026-10-18 04:56:26,256.256 INFO    ] ================================================
[2026-10-18 04:56:26,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:56:26
[2026-10-18 04:56:27,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:56:27,654.654 INFO    ] Initializing speech engine...
[2026-10-18 04:56:27,663.663 INFO    ] 2026-10-18 04:56:27
[2026-10-18 04:56:27,969.969 INFO    ] 2026-10-18 04:56:27
[2026-10-18 04:56:28,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:56:28,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:56:28,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:56:28,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:56:28,370.370 INFO    ] time= 18/10/2026 04:56:28
[2026-10-18 04:56:28,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:56:28,383.383 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:56:28,500.500 INFO    ] No existing commands found in stream
[2026-10-18 04:56:33,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:56:33,515.515 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-18 04:56:37,651.651 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:56:37,654.654 INFO    ] Checking for system updates...
[2026-10-18 04:56:37,689.689 INFO    ] 200
[2026-10-18 04:56:37,691.691 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:56:37,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:56:37,747.747 INFO    ] No update needed
[2026-10-18 04:56:37,749.749 INFO    ] Checking for camera pi updates...
[2026-10-18 04:56:37,782.782 INFO    ] 200
[2026-10-18 04:56:37,784.784 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:56:37,824.824 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:56:47,837.837 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:56:47,872.872 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:56:47,881.881 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:56:47,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:56:47,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:56:47,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:56:49,933.933 INFO    ] ================================================
[2026-10-18 04:56:49,948.948 INFO    ] Launching Daemon at Sun Oct 18 04:56:49 IST 2026
[2026-10-18 04:56:49,959.959 INFO    ] ================================================
[2026-10-18 04:56:50,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:56:50
[2026-10-18 04:56:51,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:56:51,409.409 INFO    ] Initializing speech engine...
[2026-10-18 04:56:51,414.414 INFO    ] 2026-10-18 04:56:51
[2026-10-18 04:56:51,664.664 INFO    ] 2026-10-18 04:56:51
[2026-10-18 04:56:51,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:56:51,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:56:51,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:56:52,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:56:52,108.108 INFO    ] time= 18/10/2026 04:56:52
[2026-10-18 04:56:52,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:56:52,124.124 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:56:52,203.203 INFO    ] No existing commands found in stream
[2026-10-18 04:56:57,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:56:57,221.221 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-18 04:56:57,771.771 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:56:57,773.773 INFO    ] Checking for system updates...
[2026-10-18 04:56:57,809.809 INFO    ] 200
[2026-10-18 04:56:57,812.812 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:56:57,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:56:57,867.867 INFO    ] No update needed
[2026-10-18 04:56:57,870.870 INFO    ] Checking for camera pi updates...
[2026-10-18 04:56:57,903.903 INFO    ] 200
[2026-10-18 04:56:57,905.905 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:56:57,945.945 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:57:07,960.960 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:57:07,996.996 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:57:08,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:57:08,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:57:08,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:57:08,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:57:10,060.060 INFO    ] ================================================
[2026-10-18 04:57:10,076.076 INFO    ] Launching Daemon at Sun Oct 18 04:57:10 IST 2026
[2026-10-18 04:57:10,087.087 INFO    ] ================================================
[2026-10-18 04:57:10,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:57:10
[2026-10-18 04:57:11,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:57:11,551.551 INFO    ] Initializing speech engine...
[2026-10-18 04:57:11,556.556 INFO    ] 2026-10-18 04:57:11
[2026-10-18 04:57:11,811.811 INFO    ] 2026-10-18 04:57:11
[2026-10-18 04:57:11,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:57:12,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:57:12,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:57:12,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:57:12,288.288 INFO    ] time= 18/10/2026 04:57:12
[2026-10-18 04:57:12,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:57:12,363.363 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:57:12,481.481 INFO    ] No existing commands found in stream
[2026-10-18 04:57:17,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:57:17,509.509 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-18 04:57:19,312.312 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:57:19,315.315 INFO    ] Checking for system updates...
[2026-10-18 04:57:19,352.352 INFO    ] 200
[2026-10-18 04:57:19,354.354 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:57:19,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:57:19,409.409 INFO    ] No update needed
[2026-10-18 04:57:19,411.411 INFO    ] Checking for camera pi updates...
[2026-10-18 04:57:19,445.445 INFO    ] 200
[2026-10-18 04:57:19,447.447 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:57:19,488.488 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:57:29,503.503 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:57:29,538.538 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:57:29,548.548 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:57:29,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:57:29,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:57:29,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:57:31,601.601 INFO    ] ================================================
[2026-10-18 04:57:31,616.616 INFO    ] Launching Daemon at Sun Oct 18 04:57:31 IST 2026
[2026-10-18 04:57:31,626.626 INFO    ] ================================================
[2026-10-18 04:57:32,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:57:32
[2026-10-18 04:57:32,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:57:33,130.130 INFO    ] Initializing speech engine...
[2026-10-18 04:57:33,140.140 INFO    ] 2026-10-18 04:57:33
[2026-10-18 04:57:33,406.406 INFO    ] 2026-10-18 04:57:33
[2026-10-18 04:57:33,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:57:33,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:57:33,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:57:33,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:57:33,954.954 INFO    ] time= 18/10/2026 04:57:33
[2026-10-18 04:57:33,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:57:33,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:57:34,110.110 INFO    ] No existing commands found in stream
[2026-10-18 04:57:39,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:57:39,137.137 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-18 04:57:40,251.251 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 04:57:40,253.253 INFO    ] Checking for system updates...
[2026-10-18 04:57:40,289.289 INFO    ] 200
[2026-10-18 04:57:40,292.292 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:57:40,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:57:40,347.347 INFO    ] No update needed
[2026-10-18 04:57:40,349.349 INFO    ] Checking for camera pi updates...
[2026-10-18 04:57:40,383.383 INFO    ] 200
[2026-10-18 04:57:40,385.385 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:57:40,425.425 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:57:50,440.440 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:57:50,475.475 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:57:50,484.484 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:57:50,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:57:50,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:57:50,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:57:52,538.538 INFO    ] ================================================
[2026-10-18 04:57:52,553.553 INFO    ] Launching Daemon at Sun Oct 18 04:57:52 IST 2026
[2026-10-18 04:57:52,564.564 INFO    ] ================================================
[2026-10-18 04:57:53,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:57:53
[2026-10-18 04:57:53,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:57:54,213.213 INFO    ] Initializing speech engine...
[2026-10-18 04:57:54,227.227 INFO    ] 2026-10-18 04:57:54
[2026-10-18 04:57:54,538.538 INFO    ] 2026-10-18 04:57:54
[2026-10-18 04:57:54,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:57:54,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:57:54,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:57:55,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:57:55,078.078 INFO    ] time= 18/10/2026 04:57:55
[2026-10-18 04:57:55,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:57:55,122.122 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:57:55,230.230 INFO    ] No existing commands found in stream
[2026-10-18 04:58:00,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:58:00,264.264 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-18 04:58:00,946.946 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:58:00,949.949 INFO    ] Checking for system updates...
[2026-10-18 04:58:00,985.985 INFO    ] 200
[2026-10-18 04:58:00,987.987 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:58:01,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:58:01,043.043 INFO    ] No update needed
[2026-10-18 04:58:01,045.045 INFO    ] Checking for camera pi updates...
[2026-10-18 04:58:01,079.079 INFO    ] 200
[2026-10-18 04:58:01,081.081 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:58:01,123.123 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:58:11,138.138 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73dae150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:58:11,175.175 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:58:11,184.184 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:58:11,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:58:11,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:58:11,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:58:13,238.238 INFO    ] ================================================
[2026-10-18 04:58:13,253.253 INFO    ] Launching Daemon at Sun Oct 18 04:58:13 IST 2026
[2026-10-18 04:58:13,264.264 INFO    ] ================================================
[2026-10-18 04:58:13,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:58:13
[2026-10-18 04:58:14,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:58:14,687.687 INFO    ] Initializing speech engine...
[2026-10-18 04:58:14,696.696 INFO    ] 2026-10-18 04:58:14
[2026-10-18 04:58:14,948.948 INFO    ] 2026-10-18 04:58:14
[2026-10-18 04:58:14,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:58:15,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:58:15,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:58:15,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:58:15,409.409 INFO    ] time= 18/10/2026 04:58:15
[2026-10-18 04:58:15,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:58:15,525.525 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:58:15,668.668 INFO    ] No existing commands found in stream
[2026-10-18 04:58:20,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:58:20,692.692 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-18 04:58:21,769.769 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:58:21,772.772 INFO    ] Checking for system updates...
[2026-10-18 04:58:21,807.807 INFO    ] 200
[2026-10-18 04:58:21,810.810 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:58:21,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:58:21,866.866 INFO    ] No update needed
[2026-10-18 04:58:21,868.868 INFO    ] Checking for camera pi updates...
[2026-10-18 04:58:21,903.903 INFO    ] 200
[2026-10-18 04:58:21,905.905 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:58:21,945.945 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:58:31,958.958 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:58:31,995.995 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:58:32,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:58:32,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:58:32,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:58:32,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:58:34,064.064 INFO    ] ================================================
[2026-10-18 04:58:34,079.079 INFO    ] Launching Daemon at Sun Oct 18 04:58:34 IST 2026
[2026-10-18 04:58:34,091.091 INFO    ] ================================================
[2026-10-18 04:58:34,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:58:34
[2026-10-18 04:58:35,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:58:35,637.637 INFO    ] Initializing speech engine...
[2026-10-18 04:58:35,645.645 INFO    ] 2026-10-18 04:58:35
[2026-10-18 04:58:35,904.904 INFO    ] 2026-10-18 04:58:35
[2026-10-18 04:58:35,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:58:36,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:58:36,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:58:36,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:58:36,448.448 INFO    ] time= 18/10/2026 04:58:36
[2026-10-18 04:58:36,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:58:36,473.473 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:58:36,602.602 INFO    ] No existing commands found in stream
[2026-10-18 04:58:41,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:58:41,627.627 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-18 04:58:42,989.989 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 04:58:42,992.992 INFO    ] Checking for system updates...
[2026-10-18 04:58:43,028.028 INFO    ] 200
[2026-10-18 04:58:43,031.031 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:58:43,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:58:43,085.085 INFO    ] No update needed
[2026-10-18 04:58:43,088.088 INFO    ] Checking for camera pi updates...
[2026-10-18 04:58:43,121.121 INFO    ] 200
[2026-10-18 04:58:43,123.123 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:58:43,173.173 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:58:53,188.188 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:58:53,224.224 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:58:53,234.234 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:58:53,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:58:53,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:58:53,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:58:55,288.288 INFO    ] ================================================
[2026-10-18 04:58:55,304.304 INFO    ] Launching Daemon at Sun Oct 18 04:58:55 IST 2026
[2026-10-18 04:58:55,315.315 INFO    ] ================================================
[2026-10-18 04:58:55,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:58:55
[2026-10-18 04:58:56,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:58:56,820.820 INFO    ] Initializing speech engine...
[2026-10-18 04:58:56,829.829 INFO    ] 2026-10-18 04:58:56
[2026-10-18 04:58:57,115.115 INFO    ] 2026-10-18 04:58:57
[2026-10-18 04:58:57,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:58:57,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:58:57,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:58:57,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:58:57,899.899 INFO    ] time= 18/10/2026 04:58:57
[2026-10-18 04:58:57,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:58:58,010.010 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:58:58,193.193 INFO    ] No existing commands found in stream
[2026-10-18 04:59:03,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:59:03,229.229 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-18 04:59:05,976.976 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:59:05,979.979 INFO    ] Checking for system updates...
[2026-10-18 04:59:06,015.015 INFO    ] 200
[2026-10-18 04:59:06,017.017 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:59:06,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:59:06,072.072 INFO    ] No update needed
[2026-10-18 04:59:06,074.074 INFO    ] Checking for camera pi updates...
[2026-10-18 04:59:06,107.107 INFO    ] 200
[2026-10-18 04:59:06,110.110 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:59:06,159.159 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:59:16,173.173 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:59:16,208.208 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:59:16,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:59:16,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:59:16,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:59:16,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:59:18,271.271 INFO    ] ================================================
[2026-10-18 04:59:18,287.287 INFO    ] Launching Daemon at Sun Oct 18 04:59:18 IST 2026
[2026-10-18 04:59:18,298.298 INFO    ] ================================================
[2026-10-18 04:59:18,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:59:18
[2026-10-18 04:59:19,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:59:19,937.937 INFO    ] Initializing speech engine...
[2026-10-18 04:59:19,950.950 INFO    ] 2026-10-18 04:59:19
[2026-10-18 04:59:20,239.239 INFO    ] 2026-10-18 04:59:20
[2026-10-18 04:59:20,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:59:20,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:59:20,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:59:20,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:59:20,786.786 INFO    ] time= 18/10/2026 04:59:20
[2026-10-18 04:59:20,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:59:20,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:59:20,947.947 INFO    ] No existing commands found in stream
[2026-10-18 04:59:25,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:59:25,975.975 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-18 04:59:29,979.979 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 04:59:29,983.983 INFO    ] Checking for system updates...
[2026-10-18 04:59:30,023.023 INFO    ] 200
[2026-10-18 04:59:30,027.027 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:59:30,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 04:59:30,085.085 INFO    ] No update needed
[2026-10-18 04:59:30,088.088 INFO    ] Checking for camera pi updates...
[2026-10-18 04:59:30,123.123 INFO    ] 200
[2026-10-18 04:59:30,126.126 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:59:30,172.172 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 04:59:40,184.184 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 04:59:40,219.219 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 04:59:40,229.229 INFO    ] Script finished. Safe exiting...
[2026-10-18 04:59:40,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 04:59:40,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 04:59:40,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 04:59:42,281.281 INFO    ] ================================================
[2026-10-18 04:59:42,297.297 INFO    ] Launching Daemon at Sun Oct 18 04:59:42 IST 2026
[2026-10-18 04:59:42,308.308 INFO    ] ================================================
[2026-10-18 04:59:42,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 04:59:42
[2026-10-18 04:59:43,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 04:59:43,771.771 INFO    ] Initializing speech engine...
[2026-10-18 04:59:43,791.791 INFO    ] 2026-10-18 04:59:43
[2026-10-18 04:59:44,061.061 INFO    ] 2026-10-18 04:59:44
[2026-10-18 04:59:44,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 04:59:44,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 04:59:44,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 04:59:44,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 04:59:44,561.561 INFO    ] time= 18/10/2026 04:59:44
[2026-10-18 04:59:44,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 04:59:44,670.670 INFO    ] Checking for existing commands in stream...
[2026-10-18 04:59:44,765.765 INFO    ] No existing commands found in stream
[2026-10-18 04:59:49,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 04:59:49,780.780 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-18 04:59:50,285.285 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 04:59:50,288.288 INFO    ] Checking for system updates...
[2026-10-18 04:59:50,324.324 INFO    ] 200
[2026-10-18 04:59:50,327.327 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:59:50,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 04:59:50,388.388 INFO    ] No update needed
[2026-10-18 04:59:50,391.391 INFO    ] Checking for camera pi updates...
[2026-10-18 04:59:50,429.429 INFO    ] 200
[2026-10-18 04:59:50,432.432 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 04:59:50,476.476 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:00:00,491.491 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:00:00,527.527 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:00:00,537.537 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:00:00,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:00:00,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:00:00,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:00:02,604.604 INFO    ] ================================================
[2026-10-18 05:00:02,759.759 INFO    ] Launching Daemon at Sun Oct 18 05:00:02 IST 2026
[2026-10-18 05:00:02,839.839 INFO    ] ================================================
[2026-10-18 05:00:04,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:00:04
[2026-10-18 05:00:06,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:00:07,005.005 INFO    ] Initializing speech engine...
[2026-10-18 05:00:07,013.013 INFO    ] 2026-10-18 05:00:07
[2026-10-18 05:00:07,315.315 INFO    ] 2026-10-18 05:00:07
[2026-10-18 05:00:07,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:00:07,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:00:07,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:00:07,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:00:07,832.832 INFO    ] time= 18/10/2026 05:00:07
[2026-10-18 05:00:07,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:00:07,902.902 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:00:08,046.046 INFO    ] No existing commands found in stream
[2026-10-18 05:00:13,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:00:13,078.078 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-18 05:00:16,754.754 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:00:16,756.756 INFO    ] Checking for system updates...
[2026-10-18 05:00:16,793.793 INFO    ] 200
[2026-10-18 05:00:16,796.796 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:00:16,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:00:16,852.852 INFO    ] No update needed
[2026-10-18 05:00:16,855.855 INFO    ] Checking for camera pi updates...
[2026-10-18 05:00:16,889.889 INFO    ] 200
[2026-10-18 05:00:16,891.891 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:00:16,937.937 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:00:26,952.952 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:00:26,988.988 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:00:26,998.998 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:00:27,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:00:27,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:00:27,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:00:29,051.051 INFO    ] ================================================
[2026-10-18 05:00:29,067.067 INFO    ] Launching Daemon at Sun Oct 18 05:00:29 IST 2026
[2026-10-18 05:00:29,078.078 INFO    ] ================================================
[2026-10-18 05:00:29,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:00:29
[2026-10-18 05:00:30,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:00:30,527.527 INFO    ] Initializing speech engine...
[2026-10-18 05:00:30,536.536 INFO    ] 2026-10-18 05:00:30
[2026-10-18 05:00:30,787.787 INFO    ] 2026-10-18 05:00:30
[2026-10-18 05:00:30,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:00:31,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:00:31,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:00:31,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:00:31,212.212 INFO    ] time= 18/10/2026 05:00:31
[2026-10-18 05:00:31,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:00:31,288.288 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:00:31,417.417 INFO    ] No existing commands found in stream
[2026-10-18 05:00:36,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:00:36,432.432 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-18 05:00:37,338.338 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:00:37,340.340 INFO    ] Checking for system updates...
[2026-10-18 05:00:37,376.376 INFO    ] 200
[2026-10-18 05:00:37,379.379 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:00:37,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:00:37,438.438 INFO    ] No update needed
[2026-10-18 05:00:37,440.440 INFO    ] Checking for camera pi updates...
[2026-10-18 05:00:37,474.474 INFO    ] 200
[2026-10-18 05:00:37,476.476 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:00:37,522.522 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:00:47,536.536 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:00:47,571.571 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:00:47,580.580 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:00:47,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:00:47,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:00:47,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:00:49,635.635 INFO    ] ================================================
[2026-10-18 05:00:49,650.650 INFO    ] Launching Daemon at Sun Oct 18 05:00:49 IST 2026
[2026-10-18 05:00:49,662.662 INFO    ] ================================================
[2026-10-18 05:00:50,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:00:50
[2026-10-18 05:00:50,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:00:51,119.119 INFO    ] Initializing speech engine...
[2026-10-18 05:00:51,145.145 INFO    ] 2026-10-18 05:00:51
[2026-10-18 05:00:51,430.430 INFO    ] 2026-10-18 05:00:51
[2026-10-18 05:00:51,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:00:51,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:00:51,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:00:51,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:00:51,976.976 INFO    ] time= 18/10/2026 05:00:51
[2026-10-18 05:00:51,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:00:52,000.000 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:00:52,115.115 INFO    ] No existing commands found in stream
[2026-10-18 05:00:57,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:00:57,143.143 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-18 05:00:57,835.835 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:00:57,838.838 INFO    ] Checking for system updates...
[2026-10-18 05:00:57,881.881 INFO    ] 200
[2026-10-18 05:00:57,883.883 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:00:57,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:00:57,938.938 INFO    ] No update needed
[2026-10-18 05:00:57,941.941 INFO    ] Checking for camera pi updates...
[2026-10-18 05:00:57,974.974 INFO    ] 200
[2026-10-18 05:00:57,977.977 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:00:58,022.022 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:01:08,035.035 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:01:08,071.071 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:01:08,080.080 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:01:08,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:01:08,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:01:08,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:01:10,133.133 INFO    ] ================================================
[2026-10-18 05:01:10,149.149 INFO    ] Launching Daemon at Sun Oct 18 05:01:10 IST 2026
[2026-10-18 05:01:10,161.161 INFO    ] ================================================
[2026-10-18 05:01:10,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:01:10
[2026-10-18 05:01:11,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:01:11,617.617 INFO    ] Initializing speech engine...
[2026-10-18 05:01:11,626.626 INFO    ] 2026-10-18 05:01:11
[2026-10-18 05:01:11,888.888 INFO    ] 2026-10-18 05:01:11
[2026-10-18 05:01:11,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:01:12,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:01:12,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:01:12,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:01:12,617.617 INFO    ] time= 18/10/2026 05:01:12
[2026-10-18 05:01:12,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:01:12,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:01:12,846.846 INFO    ] No existing commands found in stream
[2026-10-18 05:01:17,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:01:17,880.880 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-18 05:01:21,874.874 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:01:21,876.876 INFO    ] Checking for system updates...
[2026-10-18 05:01:21,916.916 INFO    ] 200
[2026-10-18 05:01:21,918.918 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:01:21,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:01:21,973.973 INFO    ] No update needed
[2026-10-18 05:01:21,976.976 INFO    ] Checking for camera pi updates...
[2026-10-18 05:01:22,009.009 INFO    ] 200
[2026-10-18 05:01:22,012.012 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:01:22,052.052 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:01:32,068.068 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:01:32,105.105 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:01:32,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:01:32,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:01:32,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:01:32,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:01:34,171.171 INFO    ] ================================================
[2026-10-18 05:01:34,187.187 INFO    ] Launching Daemon at Sun Oct 18 05:01:34 IST 2026
[2026-10-18 05:01:34,198.198 INFO    ] ================================================
[2026-10-18 05:01:34,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:01:34
[2026-10-18 05:01:35,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:01:35,789.789 INFO    ] Initializing speech engine...
[2026-10-18 05:01:35,798.798 INFO    ] 2026-10-18 05:01:35
[2026-10-18 05:01:36,068.068 INFO    ] 2026-10-18 05:01:36
[2026-10-18 05:01:36,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:01:36,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:01:36,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:01:36,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:01:36,618.618 INFO    ] time= 18/10/2026 05:01:36
[2026-10-18 05:01:36,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:01:36,666.666 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:01:36,782.782 INFO    ] No existing commands found in stream
[2026-10-18 05:01:41,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:01:41,817.817 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-18 05:01:44,355.355 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 05:01:44,358.358 INFO    ] Checking for system updates...
[2026-10-18 05:01:44,395.395 INFO    ] 200
[2026-10-18 05:01:44,398.398 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:01:44,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:01:44,460.460 INFO    ] No update needed
[2026-10-18 05:01:44,463.463 INFO    ] Checking for camera pi updates...
[2026-10-18 05:01:44,497.497 INFO    ] 200
[2026-10-18 05:01:44,500.500 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:01:44,541.541 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:01:54,557.557 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:01:54,597.597 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:01:54,608.608 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:01:54,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:01:54,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:01:54,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:01:56,663.663 INFO    ] ================================================
[2026-10-18 05:01:56,679.679 INFO    ] Launching Daemon at Sun Oct 18 05:01:56 IST 2026
[2026-10-18 05:01:56,689.689 INFO    ] ================================================
[2026-10-18 05:01:57,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:01:57
[2026-10-18 05:01:57,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:01:58,152.152 INFO    ] Initializing speech engine...
[2026-10-18 05:01:58,158.158 INFO    ] 2026-10-18 05:01:58
[2026-10-18 05:01:58,422.422 INFO    ] 2026-10-18 05:01:58
[2026-10-18 05:01:58,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:01:58,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:01:58,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:01:58,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:01:58,966.966 INFO    ] time= 18/10/2026 05:01:58
[2026-10-18 05:01:58,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:01:58,990.990 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:01:59,101.101 INFO    ] No existing commands found in stream
[2026-10-18 05:02:04,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:02:04,131.131 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-18 05:02:08,139.139 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:02:08,141.141 INFO    ] Checking for system updates...
[2026-10-18 05:02:08,177.177 INFO    ] 200
[2026-10-18 05:02:08,180.180 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:02:08,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:02:08,241.241 INFO    ] No update needed
[2026-10-18 05:02:08,243.243 INFO    ] Checking for camera pi updates...
[2026-10-18 05:02:08,277.277 INFO    ] 200
[2026-10-18 05:02:08,279.279 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:02:08,320.320 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:02:18,335.335 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:02:18,371.371 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:02:18,380.380 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:02:18,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:02:18,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:02:18,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:02:20,433.433 INFO    ] ================================================
[2026-10-18 05:02:20,449.449 INFO    ] Launching Daemon at Sun Oct 18 05:02:20 IST 2026
[2026-10-18 05:02:20,460.460 INFO    ] ================================================
[2026-10-18 05:02:21,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:02:21
[2026-10-18 05:02:21,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:02:21,916.916 INFO    ] Initializing speech engine...
[2026-10-18 05:02:21,925.925 INFO    ] 2026-10-18 05:02:21
[2026-10-18 05:02:22,180.180 INFO    ] 2026-10-18 05:02:22
[2026-10-18 05:02:22,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:02:22,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:02:22,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:02:22,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:02:22,729.729 INFO    ] time= 18/10/2026 05:02:22
[2026-10-18 05:02:22,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:02:22,753.753 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:02:22,885.885 INFO    ] No existing commands found in stream
[2026-10-18 05:02:27,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:02:27,906.906 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-18 05:02:29,340.340 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 05:02:29,343.343 INFO    ] Checking for system updates...
[2026-10-18 05:02:29,383.383 INFO    ] 200
[2026-10-18 05:02:29,385.385 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:02:29,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:02:29,441.441 INFO    ] No update needed
[2026-10-18 05:02:29,443.443 INFO    ] Checking for camera pi updates...
[2026-10-18 05:02:29,480.480 INFO    ] 200
[2026-10-18 05:02:29,482.482 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:02:29,527.527 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:02:39,541.541 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:02:39,577.577 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:02:39,587.587 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:02:39,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:02:39,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:02:39,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:02:41,641.641 INFO    ] ================================================
[2026-10-18 05:02:41,656.656 INFO    ] Launching Daemon at Sun Oct 18 05:02:41 IST 2026
[2026-10-18 05:02:41,668.668 INFO    ] ================================================
[2026-10-18 05:02:42,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:02:42
[2026-10-18 05:02:42,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:02:43,100.100 INFO    ] Initializing speech engine...
[2026-10-18 05:02:43,109.109 INFO    ] 2026-10-18 05:02:43
[2026-10-18 05:02:43,356.356 INFO    ] 2026-10-18 05:02:43
[2026-10-18 05:02:43,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:02:43,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:02:43,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:02:43,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:02:43,913.913 INFO    ] time= 18/10/2026 05:02:43
[2026-10-18 05:02:43,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:02:43,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:02:44,062.062 INFO    ] No existing commands found in stream
[2026-10-18 05:02:49,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:02:49,079.079 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-18 05:02:51,590.590 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 05:02:51,593.593 INFO    ] Checking for system updates...
[2026-10-18 05:02:51,633.633 INFO    ] 200
[2026-10-18 05:02:51,635.635 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:02:51,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:02:51,690.690 INFO    ] No update needed
[2026-10-18 05:02:51,692.692 INFO    ] Checking for camera pi updates...
[2026-10-18 05:02:51,727.727 INFO    ] 200
[2026-10-18 05:02:51,729.729 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:02:51,786.786 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:03:01,798.798 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:03:01,842.842 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:03:01,853.853 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:03:01,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:03:01,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:03:01,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:03:03,911.911 INFO    ] ================================================
[2026-10-18 05:03:03,926.926 INFO    ] Launching Daemon at Sun Oct 18 05:03:03 IST 2026
[2026-10-18 05:03:03,937.937 INFO    ] ================================================
[2026-10-18 05:03:04,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:03:04
[2026-10-18 05:03:05,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:03:05,429.429 INFO    ] Initializing speech engine...
[2026-10-18 05:03:05,437.437 INFO    ] 2026-10-18 05:03:05
[2026-10-18 05:03:05,718.718 INFO    ] 2026-10-18 05:03:05
[2026-10-18 05:03:05,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:03:05,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:03:06,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:03:06,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:03:06,252.252 INFO    ] time= 18/10/2026 05:03:06
[2026-10-18 05:03:06,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:03:06,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:03:06,475.475 INFO    ] No existing commands found in stream
[2026-10-18 05:03:11,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:03:11,500.500 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-18 05:03:13,262.262 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:03:13,265.265 INFO    ] Checking for system updates...
[2026-10-18 05:03:13,301.301 INFO    ] 200
[2026-10-18 05:03:13,303.303 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:03:13,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:03:13,366.366 INFO    ] No update needed
[2026-10-18 05:03:13,369.369 INFO    ] Checking for camera pi updates...
[2026-10-18 05:03:13,402.402 INFO    ] 200
[2026-10-18 05:03:13,405.405 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:03:13,445.445 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:03:23,460.460 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:03:23,496.496 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:03:23,506.506 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:03:23,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:03:23,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:03:23,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:03:25,559.559 INFO    ] ================================================
[2026-10-18 05:03:25,574.574 INFO    ] Launching Daemon at Sun Oct 18 05:03:25 IST 2026
[2026-10-18 05:03:25,585.585 INFO    ] ================================================
[2026-10-18 05:03:26,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:03:26
[2026-10-18 05:03:26,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:03:27,099.099 INFO    ] Initializing speech engine...
[2026-10-18 05:03:27,106.106 INFO    ] 2026-10-18 05:03:27
[2026-10-18 05:03:27,373.373 INFO    ] 2026-10-18 05:03:27
[2026-10-18 05:03:27,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:03:27,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:03:27,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:03:27,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:03:27,855.855 INFO    ] time= 18/10/2026 05:03:27
[2026-10-18 05:03:27,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:03:27,954.954 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:03:28,016.016 INFO    ] No existing commands found in stream
[2026-10-18 05:03:33,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:03:33,039.039 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-18 05:03:37,191.191 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:03:37,194.194 INFO    ] Checking for system updates...
[2026-10-18 05:03:37,234.234 INFO    ] 200
[2026-10-18 05:03:37,236.236 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:03:37,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:03:37,298.298 INFO    ] No update needed
[2026-10-18 05:03:37,301.301 INFO    ] Checking for camera pi updates...
[2026-10-18 05:03:37,338.338 INFO    ] 200
[2026-10-18 05:03:37,341.341 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:03:37,386.386 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:03:47,400.400 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:03:47,435.435 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:03:47,445.445 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:03:47,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:03:47,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:03:47,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:03:49,497.497 INFO    ] ================================================
[2026-10-18 05:03:49,512.512 INFO    ] Launching Daemon at Sun Oct 18 05:03:49 IST 2026
[2026-10-18 05:03:49,523.523 INFO    ] ================================================
[2026-10-18 05:03:50,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:03:50
[2026-10-18 05:03:50,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:03:50,937.937 INFO    ] Initializing speech engine...
[2026-10-18 05:03:50,945.945 INFO    ] 2026-10-18 05:03:50
[2026-10-18 05:03:51,251.251 INFO    ] 2026-10-18 05:03:51
[2026-10-18 05:03:51,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:03:51,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:03:51,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:03:51,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:03:51,758.758 INFO    ] time= 18/10/2026 05:03:51
[2026-10-18 05:03:51,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:03:51,851.851 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:03:51,984.984 INFO    ] No existing commands found in stream
[2026-10-18 05:03:57,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:03:57,012.012 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-18 05:04:00,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:04:00,541.541 INFO    ] Checking for system updates...
[2026-10-18 05:04:00,581.581 INFO    ] 200
[2026-10-18 05:04:00,584.584 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:04:00,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:04:00,639.639 INFO    ] No update needed
[2026-10-18 05:04:00,642.642 INFO    ] Checking for camera pi updates...
[2026-10-18 05:04:00,675.675 INFO    ] 200
[2026-10-18 05:04:00,678.678 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:04:00,722.722 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:04:10,736.736 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:04:10,771.771 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:04:10,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:04:10,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:04:10,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:04:10,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:04:12,833.833 INFO    ] ================================================
[2026-10-18 05:04:12,848.848 INFO    ] Launching Daemon at Sun Oct 18 05:04:12 IST 2026
[2026-10-18 05:04:12,859.859 INFO    ] ================================================
[2026-10-18 05:04:13,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:04:13
[2026-10-18 05:04:14,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:04:14,338.338 INFO    ] Initializing speech engine...
[2026-10-18 05:04:14,357.357 INFO    ] 2026-10-18 05:04:14
[2026-10-18 05:04:14,632.632 INFO    ] 2026-10-18 05:04:14
[2026-10-18 05:04:14,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:04:14,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:04:14,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:04:15,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:04:15,165.165 INFO    ] time= 18/10/2026 05:04:15
[2026-10-18 05:04:15,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:04:15,190.190 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:04:15,312.312 INFO    ] No existing commands found in stream
[2026-10-18 05:04:20,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:04:20,331.331 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-18 05:04:23,172.172 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:04:23,174.174 INFO    ] Checking for system updates...
[2026-10-18 05:04:23,214.214 INFO    ] 200
[2026-10-18 05:04:23,217.217 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:04:23,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:04:23,278.278 INFO    ] No update needed
[2026-10-18 05:04:23,280.280 INFO    ] Checking for camera pi updates...
[2026-10-18 05:04:23,317.317 INFO    ] 200
[2026-10-18 05:04:23,320.320 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:04:23,364.364 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:04:33,377.377 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:04:33,412.412 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:04:33,421.421 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:04:33,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:04:33,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:04:33,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:04:35,473.473 INFO    ] ================================================
[2026-10-18 05:04:35,489.489 INFO    ] Launching Daemon at Sun Oct 18 05:04:35 IST 2026
[2026-10-18 05:04:35,499.499 INFO    ] ================================================
[2026-10-18 05:04:36,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:04:36
[2026-10-18 05:04:36,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:04:36,952.952 INFO    ] Initializing speech engine...
[2026-10-18 05:04:36,966.966 INFO    ] 2026-10-18 05:04:36
[2026-10-18 05:04:37,222.222 INFO    ] 2026-10-18 05:04:37
[2026-10-18 05:04:37,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:04:37,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:04:37,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:04:37,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:04:37,647.647 INFO    ] time= 18/10/2026 05:04:37
[2026-10-18 05:04:37,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:04:37,730.730 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:04:37,830.830 INFO    ] No existing commands found in stream
[2026-10-18 05:04:42,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:04:42,853.853 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-18 05:04:44,199.199 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:04:44,201.201 INFO    ] Checking for system updates...
[2026-10-18 05:04:44,240.240 INFO    ] 200
[2026-10-18 05:04:44,242.242 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:04:44,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:04:44,303.303 INFO    ] No update needed
[2026-10-18 05:04:44,305.305 INFO    ] Checking for camera pi updates...
[2026-10-18 05:04:44,338.338 INFO    ] 200
[2026-10-18 05:04:44,341.341 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:04:44,384.384 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:04:54,399.399 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:04:54,434.434 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:04:54,443.443 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:04:54,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:04:54,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:04:54,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:04:56,495.495 INFO    ] ================================================
[2026-10-18 05:04:56,510.510 INFO    ] Launching Daemon at Sun Oct 18 05:04:56 IST 2026
[2026-10-18 05:04:56,521.521 INFO    ] ================================================
[2026-10-18 05:04:57,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:04:57
[2026-10-18 05:04:57,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:04:57,940.940 INFO    ] Initializing speech engine...
[2026-10-18 05:04:57,948.948 INFO    ] 2026-10-18 05:04:57
[2026-10-18 05:04:58,195.195 INFO    ] 2026-10-18 05:04:58
[2026-10-18 05:04:58,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:04:58,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:04:58,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:04:58,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:04:58,715.715 INFO    ] time= 18/10/2026 05:04:58
[2026-10-18 05:04:58,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:04:58,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:04:58,916.916 INFO    ] No existing commands found in stream
[2026-10-18 05:05:03,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:05:03,931.931 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-18 05:05:07,119.119 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:05:07,122.122 INFO    ] Checking for system updates...
[2026-10-18 05:05:07,162.162 INFO    ] 200
[2026-10-18 05:05:07,165.165 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:05:07,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:05:07,230.230 INFO    ] No update needed
[2026-10-18 05:05:07,233.233 INFO    ] Checking for camera pi updates...
[2026-10-18 05:05:07,271.271 INFO    ] 200
[2026-10-18 05:05:07,274.274 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:05:07,326.326 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:05:17,342.342 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:05:17,382.382 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:05:17,398.398 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:05:17,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:05:17,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:05:17,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:05:19,455.455 INFO    ] ================================================
[2026-10-18 05:05:19,470.470 INFO    ] Launching Daemon at Sun Oct 18 05:05:19 IST 2026
[2026-10-18 05:05:19,482.482 INFO    ] ================================================
[2026-10-18 05:05:20,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:05:20
[2026-10-18 05:05:20,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:05:20,929.929 INFO    ] Initializing speech engine...
[2026-10-18 05:05:20,937.937 INFO    ] 2026-10-18 05:05:20
[2026-10-18 05:05:21,233.233 INFO    ] 2026-10-18 05:05:21
[2026-10-18 05:05:21,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:05:21,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:05:21,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:05:21,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:05:21,658.658 INFO    ] time= 18/10/2026 05:05:21
[2026-10-18 05:05:21,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:05:21,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:05:21,816.816 INFO    ] No existing commands found in stream
[2026-10-18 05:05:26,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:05:26,844.844 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-18 05:05:31,158.158 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:05:31,160.160 INFO    ] Checking for system updates...
[2026-10-18 05:05:31,196.196 INFO    ] 200
[2026-10-18 05:05:31,198.198 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:05:31,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:05:31,255.255 INFO    ] No update needed
[2026-10-18 05:05:31,257.257 INFO    ] Checking for camera pi updates...
[2026-10-18 05:05:31,295.295 INFO    ] 200
[2026-10-18 05:05:31,297.297 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:05:31,342.342 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:05:41,358.358 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:05:41,393.393 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:05:41,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:05:41,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:05:41,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:05:41,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:05:43,456.456 INFO    ] ================================================
[2026-10-18 05:05:43,471.471 INFO    ] Launching Daemon at Sun Oct 18 05:05:43 IST 2026
[2026-10-18 05:05:43,483.483 INFO    ] ================================================
[2026-10-18 05:05:44,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:05:44
[2026-10-18 05:05:44,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:05:44,903.903 INFO    ] Initializing speech engine...
[2026-10-18 05:05:44,928.928 INFO    ] 2026-10-18 05:05:44
[2026-10-18 05:05:45,198.198 INFO    ] 2026-10-18 05:05:45
[2026-10-18 05:05:45,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:05:45,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:05:45,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:05:45,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:05:45,615.615 INFO    ] time= 18/10/2026 05:05:45
[2026-10-18 05:05:45,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:05:45,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:05:45,798.798 INFO    ] No existing commands found in stream
[2026-10-18 05:05:50,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:05:50,826.826 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-18 05:05:54,802.802 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 05:05:54,805.805 INFO    ] Checking for system updates...
[2026-10-18 05:05:54,841.841 INFO    ] 200
[2026-10-18 05:05:54,843.843 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:05:54,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:05:54,904.904 INFO    ] No update needed
[2026-10-18 05:05:54,906.906 INFO    ] Checking for camera pi updates...
[2026-10-18 05:05:54,940.940 INFO    ] 200
[2026-10-18 05:05:54,943.943 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:05:54,988.988 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:06:05,003.003 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:06:05,038.038 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:06:05,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:06:05,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:06:05,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:06:05,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:06:07,100.100 INFO    ] ================================================
[2026-10-18 05:06:07,117.117 INFO    ] Launching Daemon at Sun Oct 18 05:06:07 IST 2026
[2026-10-18 05:06:07,128.128 INFO    ] ================================================
[2026-10-18 05:06:07,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:06:07
[2026-10-18 05:06:08,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:06:08,569.569 INFO    ] Initializing speech engine...
[2026-10-18 05:06:08,578.578 INFO    ] 2026-10-18 05:06:08
[2026-10-18 05:06:08,837.837 INFO    ] 2026-10-18 05:06:08
[2026-10-18 05:06:08,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:06:09,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:06:09,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:06:09,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:06:09,379.379 INFO    ] time= 18/10/2026 05:06:09
[2026-10-18 05:06:09,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:06:09,401.401 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:06:09,529.529 INFO    ] No existing commands found in stream
[2026-10-18 05:06:14,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:06:14,548.548 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-18 05:06:18,945.945 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:06:18,948.948 INFO    ] Checking for system updates...
[2026-10-18 05:06:18,984.984 INFO    ] 200
[2026-10-18 05:06:18,987.987 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:06:19,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:06:19,051.051 INFO    ] No update needed
[2026-10-18 05:06:19,054.054 INFO    ] Checking for camera pi updates...
[2026-10-18 05:06:19,090.090 INFO    ] 200
[2026-10-18 05:06:19,093.093 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:06:19,134.134 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:06:29,152.152 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:06:29,193.193 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:06:29,204.204 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:06:29,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:06:29,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:06:29,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:06:31,260.260 INFO    ] ================================================
[2026-10-18 05:06:31,276.276 INFO    ] Launching Daemon at Sun Oct 18 05:06:31 IST 2026
[2026-10-18 05:06:31,287.287 INFO    ] ================================================
[2026-10-18 05:06:31,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:06:31
[2026-10-18 05:06:32,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:06:33,066.066 INFO    ] Initializing speech engine...
[2026-10-18 05:06:33,076.076 INFO    ] 2026-10-18 05:06:33
[2026-10-18 05:06:33,354.354 INFO    ] 2026-10-18 05:06:33
[2026-10-18 05:06:33,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:06:33,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:06:33,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:06:33,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:06:33,785.785 INFO    ] time= 18/10/2026 05:06:33
[2026-10-18 05:06:33,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:06:33,847.847 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:06:33,947.947 INFO    ] No existing commands found in stream
[2026-10-18 05:06:38,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:06:38,971.971 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-18 05:06:42,839.839 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:06:42,841.841 INFO    ] Checking for system updates...
[2026-10-18 05:06:42,877.877 INFO    ] 200
[2026-10-18 05:06:42,879.879 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:06:42,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:06:42,934.934 INFO    ] No update needed
[2026-10-18 05:06:42,937.937 INFO    ] Checking for camera pi updates...
[2026-10-18 05:06:42,975.975 INFO    ] 200
[2026-10-18 05:06:42,978.978 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:06:43,024.024 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:06:53,038.038 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:06:53,073.073 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:06:53,082.082 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:06:53,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:06:53,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:06:53,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:06:55,135.135 INFO    ] ================================================
[2026-10-18 05:06:55,152.152 INFO    ] Launching Daemon at Sun Oct 18 05:06:55 IST 2026
[2026-10-18 05:06:55,164.164 INFO    ] ================================================
[2026-10-18 05:06:55,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:06:55
[2026-10-18 05:06:56,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:06:56,850.850 INFO    ] Initializing speech engine...
[2026-10-18 05:06:56,859.859 INFO    ] 2026-10-18 05:06:56
[2026-10-18 05:06:57,135.135 INFO    ] 2026-10-18 05:06:57
[2026-10-18 05:06:57,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:06:57,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:06:57,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:06:57,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:06:57,646.646 INFO    ] time= 18/10/2026 05:06:57
[2026-10-18 05:06:57,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:06:57,714.714 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:06:57,848.848 INFO    ] No existing commands found in stream
[2026-10-18 05:07:02,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:07:02,866.866 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-18 05:07:05,047.047 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:07:05,050.050 INFO    ] Checking for system updates...
[2026-10-18 05:07:05,088.088 INFO    ] 200
[2026-10-18 05:07:05,091.091 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:07:05,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:07:05,156.156 INFO    ] No update needed
[2026-10-18 05:07:05,159.159 INFO    ] Checking for camera pi updates...
[2026-10-18 05:07:05,196.196 INFO    ] 200
[2026-10-18 05:07:05,199.199 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:07:05,240.240 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:07:15,255.255 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:07:15,290.290 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:07:15,299.299 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:07:15,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:07:15,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:07:15,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:07:17,351.351 INFO    ] ================================================
[2026-10-18 05:07:17,367.367 INFO    ] Launching Daemon at Sun Oct 18 05:07:17 IST 2026
[2026-10-18 05:07:17,378.378 INFO    ] ================================================
[2026-10-18 05:07:17,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:07:17
[2026-10-18 05:07:18,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:07:18,979.979 INFO    ] Initializing speech engine...
[2026-10-18 05:07:18,990.990 INFO    ] 2026-10-18 05:07:18
[2026-10-18 05:07:19,276.276 INFO    ] 2026-10-18 05:07:19
[2026-10-18 05:07:19,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:07:19,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:07:19,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:07:19,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:07:19,842.842 INFO    ] time= 18/10/2026 05:07:19
[2026-10-18 05:07:19,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:07:19,880.880 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:07:19,991.991 INFO    ] No existing commands found in stream
[2026-10-18 05:07:25,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:07:25,023.023 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-18 05:07:26,309.309 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:07:26,312.312 INFO    ] Checking for system updates...
[2026-10-18 05:07:26,348.348 INFO    ] 200
[2026-10-18 05:07:26,351.351 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:07:26,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:07:26,410.410 INFO    ] No update needed
[2026-10-18 05:07:26,413.413 INFO    ] Checking for camera pi updates...
[2026-10-18 05:07:26,447.447 INFO    ] 200
[2026-10-18 05:07:26,449.449 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:07:26,489.489 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:07:36,504.504 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:07:36,539.539 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:07:36,548.548 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:07:36,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:07:36,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:07:36,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:07:38,600.600 INFO    ] ================================================
[2026-10-18 05:07:38,616.616 INFO    ] Launching Daemon at Sun Oct 18 05:07:38 IST 2026
[2026-10-18 05:07:38,627.627 INFO    ] ================================================
[2026-10-18 05:07:39,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:07:39
[2026-10-18 05:07:39,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:07:40,280.280 INFO    ] Initializing speech engine...
[2026-10-18 05:07:40,289.289 INFO    ] 2026-10-18 05:07:40
[2026-10-18 05:07:40,584.584 INFO    ] 2026-10-18 05:07:40
[2026-10-18 05:07:40,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:07:40,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:07:40,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:07:41,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:07:41,132.132 INFO    ] time= 18/10/2026 05:07:41
[2026-10-18 05:07:41,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:07:41,173.173 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:07:41,300.300 INFO    ] No existing commands found in stream
[2026-10-18 05:07:46,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:07:46,334.334 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-18 05:07:48,068.068 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:07:48,077.077 INFO    ] Checking for system updates...
[2026-10-18 05:07:48,119.119 INFO    ] 200
[2026-10-18 05:07:48,122.122 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:07:48,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:07:48,181.181 INFO    ] No update needed
[2026-10-18 05:07:48,183.183 INFO    ] Checking for camera pi updates...
[2026-10-18 05:07:48,228.228 INFO    ] 200
[2026-10-18 05:07:48,231.231 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:07:48,281.281 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:07:58,296.296 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:07:58,332.332 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:07:58,342.342 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:07:58,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:07:58,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:07:58,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:08:00,395.395 INFO    ] ================================================
[2026-10-18 05:08:00,411.411 INFO    ] Launching Daemon at Sun Oct 18 05:08:00 IST 2026
[2026-10-18 05:08:00,422.422 INFO    ] ================================================
[2026-10-18 05:08:00,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:08:00
[2026-10-18 05:08:01,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:08:01,880.880 INFO    ] Initializing speech engine...
[2026-10-18 05:08:01,909.909 INFO    ] 2026-10-18 05:08:01
[2026-10-18 05:08:02,313.313 INFO    ] 2026-10-18 05:08:02
[2026-10-18 05:08:02,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:08:02,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:08:02,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:08:02,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:08:02,760.760 INFO    ] time= 18/10/2026 05:08:02
[2026-10-18 05:08:02,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:08:02,869.869 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:08:03,007.007 INFO    ] No existing commands found in stream
[2026-10-18 05:08:08,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:08:08,024.024 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-18 05:08:10,386.386 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:08:10,390.390 INFO    ] Checking for system updates...
[2026-10-18 05:08:10,440.440 INFO    ] 200
[2026-10-18 05:08:10,443.443 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:08:10,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:08:10,508.508 INFO    ] No update needed
[2026-10-18 05:08:10,511.511 INFO    ] Checking for camera pi updates...
[2026-10-18 05:08:10,573.573 INFO    ] 200
[2026-10-18 05:08:10,576.576 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:08:10,617.617 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:08:20,634.634 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:08:20,674.674 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:08:20,685.685 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:08:20,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:08:20,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:08:20,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:08:22,741.741 INFO    ] ================================================
[2026-10-18 05:08:22,757.757 INFO    ] Launching Daemon at Sun Oct 18 05:08:22 IST 2026
[2026-10-18 05:08:22,768.768 INFO    ] ================================================
[2026-10-18 05:08:23,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:08:23
[2026-10-18 05:08:23,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:08:24,199.199 INFO    ] Initializing speech engine...
[2026-10-18 05:08:24,212.212 INFO    ] 2026-10-18 05:08:24
[2026-10-18 05:08:24,474.474 INFO    ] 2026-10-18 05:08:24
[2026-10-18 05:08:24,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:08:24,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:08:24,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:08:24,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:08:24,954.954 INFO    ] time= 18/10/2026 05:08:24
[2026-10-18 05:08:24,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:08:25,016.016 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:08:25,130.130 INFO    ] No existing commands found in stream
[2026-10-18 05:08:30,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:08:30,143.143 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-18 05:08:30,738.738 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:08:30,741.741 INFO    ] Checking for system updates...
[2026-10-18 05:08:30,776.776 INFO    ] 200
[2026-10-18 05:08:30,779.779 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:08:30,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:08:30,833.833 INFO    ] No update needed
[2026-10-18 05:08:30,836.836 INFO    ] Checking for camera pi updates...
[2026-10-18 05:08:30,869.869 INFO    ] 200
[2026-10-18 05:08:30,872.872 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:08:30,912.912 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:08:40,927.927 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:08:40,961.961 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:08:40,971.971 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:08:40,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:08:40,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:08:40,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:08:43,024.024 INFO    ] ================================================
[2026-10-18 05:08:43,039.039 INFO    ] Launching Daemon at Sun Oct 18 05:08:43 IST 2026
[2026-10-18 05:08:43,049.049 INFO    ] ================================================
[2026-10-18 05:08:43,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:08:43
[2026-10-18 05:08:44,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:08:44,455.455 INFO    ] Initializing speech engine...
[2026-10-18 05:08:44,461.461 INFO    ] 2026-10-18 05:08:44
[2026-10-18 05:08:44,761.761 INFO    ] 2026-10-18 05:08:44
[2026-10-18 05:08:44,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:08:45,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:08:45,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:08:45,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:08:45,265.265 INFO    ] time= 18/10/2026 05:08:45
[2026-10-18 05:08:45,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:08:45,358.358 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:08:45,477.477 INFO    ] No existing commands found in stream
[2026-10-18 05:08:50,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:08:50,491.491 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-18 05:08:54,319.319 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:08:54,322.322 INFO    ] Checking for system updates...
[2026-10-18 05:08:54,357.357 INFO    ] 200
[2026-10-18 05:08:54,360.360 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:08:54,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:08:54,414.414 INFO    ] No update needed
[2026-10-18 05:08:54,417.417 INFO    ] Checking for camera pi updates...
[2026-10-18 05:08:54,451.451 INFO    ] 200
[2026-10-18 05:08:54,453.453 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:08:54,499.499 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:09:04,513.513 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:09:04,547.547 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:09:04,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:09:04,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:09:04,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:09:04,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:09:06,610.610 INFO    ] ================================================
[2026-10-18 05:09:06,625.625 INFO    ] Launching Daemon at Sun Oct 18 05:09:06 IST 2026
[2026-10-18 05:09:06,636.636 INFO    ] ================================================
[2026-10-18 05:09:07,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:09:07
[2026-10-18 05:09:07,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:09:08,300.300 INFO    ] Initializing speech engine...
[2026-10-18 05:09:08,306.306 INFO    ] 2026-10-18 05:09:08
[2026-10-18 05:09:08,604.604 INFO    ] 2026-10-18 05:09:08
[2026-10-18 05:09:08,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:09:08,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:09:08,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:09:09,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:09:09,152.152 INFO    ] time= 18/10/2026 05:09:09
[2026-10-18 05:09:09,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:09:09,201.201 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:09:09,343.343 INFO    ] No existing commands found in stream
[2026-10-18 05:09:14,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:09:14,378.378 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-18 05:09:18,554.554 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:09:18,557.557 INFO    ] Checking for system updates...
[2026-10-18 05:09:18,599.599 INFO    ] 200
[2026-10-18 05:09:18,602.602 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:09:18,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:09:18,663.663 INFO    ] No update needed
[2026-10-18 05:09:18,666.666 INFO    ] Checking for camera pi updates...
[2026-10-18 05:09:18,702.702 INFO    ] 200
[2026-10-18 05:09:18,705.705 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:09:18,747.747 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:09:28,762.762 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:09:28,803.803 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:09:28,814.814 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:09:28,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:09:28,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:09:28,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:09:30,870.870 INFO    ] ================================================
[2026-10-18 05:09:30,885.885 INFO    ] Launching Daemon at Sun Oct 18 05:09:30 IST 2026
[2026-10-18 05:09:30,896.896 INFO    ] ================================================
[2026-10-18 05:09:31,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:09:31
[2026-10-18 05:09:32,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:09:32,652.652 INFO    ] Initializing speech engine...
[2026-10-18 05:09:32,664.664 INFO    ] 2026-10-18 05:09:32
[2026-10-18 05:09:32,929.929 INFO    ] 2026-10-18 05:09:32
[2026-10-18 05:09:32,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:09:33,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:09:33,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:09:33,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:09:33,419.419 INFO    ] time= 18/10/2026 05:09:33
[2026-10-18 05:09:33,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:09:33,513.513 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:09:33,629.629 INFO    ] No existing commands found in stream
[2026-10-18 05:09:38,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:09:38,641.641 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-18 05:09:39,635.635 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:09:39,638.638 INFO    ] Checking for system updates...
[2026-10-18 05:09:39,679.679 INFO    ] 200
[2026-10-18 05:09:39,682.682 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:09:39,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:09:39,745.745 INFO    ] No update needed
[2026-10-18 05:09:39,748.748 INFO    ] Checking for camera pi updates...
[2026-10-18 05:09:39,781.781 INFO    ] 200
[2026-10-18 05:09:39,783.783 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:09:39,823.823 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:09:49,838.838 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:09:49,873.873 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:09:49,882.882 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:09:49,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:09:49,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:09:49,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:09:51,937.937 INFO    ] ================================================
[2026-10-18 05:09:51,952.952 INFO    ] Launching Daemon at Sun Oct 18 05:09:51 IST 2026
[2026-10-18 05:09:51,963.963 INFO    ] ================================================
[2026-10-18 05:09:52,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:09:52
[2026-10-18 05:09:53,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:09:53,389.389 INFO    ] Initializing speech engine...
[2026-10-18 05:09:53,398.398 INFO    ] 2026-10-18 05:09:53
[2026-10-18 05:09:53,650.650 INFO    ] 2026-10-18 05:09:53
[2026-10-18 05:09:53,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:09:53,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:09:53,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:09:54,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:09:54,126.126 INFO    ] time= 18/10/2026 05:09:54
[2026-10-18 05:09:54,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:09:54,226.226 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:09:54,352.352 INFO    ] No existing commands found in stream
[2026-10-18 05:09:59,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:09:59,380.380 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-18 05:10:07,192.192 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:10:07,195.195 INFO    ] Checking for system updates...
[2026-10-18 05:10:07,230.230 INFO    ] 200
[2026-10-18 05:10:07,233.233 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:10:07,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:10:07,287.287 INFO    ] No update needed
[2026-10-18 05:10:07,289.289 INFO    ] Checking for camera pi updates...
[2026-10-18 05:10:07,326.326 INFO    ] 200
[2026-10-18 05:10:07,328.328 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:10:07,368.368 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:10:17,383.383 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:10:17,417.417 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:10:17,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:10:17,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:10:17,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:10:17,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:10:19,481.481 INFO    ] ================================================
[2026-10-18 05:10:19,496.496 INFO    ] Launching Daemon at Sun Oct 18 05:10:19 IST 2026
[2026-10-18 05:10:19,506.506 INFO    ] ================================================
[2026-10-18 05:10:20,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:10:20
[2026-10-18 05:10:20,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:10:21,122.122 INFO    ] Initializing speech engine...
[2026-10-18 05:10:21,130.130 INFO    ] 2026-10-18 05:10:21
[2026-10-18 05:10:21,419.419 INFO    ] 2026-10-18 05:10:21
[2026-10-18 05:10:21,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:10:21,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:10:21,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:10:21,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:10:21,973.973 INFO    ] time= 18/10/2026 05:10:21
[2026-10-18 05:10:21,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:10:22,023.023 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:10:22,138.138 INFO    ] No existing commands found in stream
[2026-10-18 05:10:27,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:10:27,181.181 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-18 05:10:28,802.802 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:10:28,808.808 INFO    ] Checking for system updates...
[2026-10-18 05:10:28,852.852 INFO    ] 200
[2026-10-18 05:10:28,854.854 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:10:28,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:10:28,909.909 INFO    ] No update needed
[2026-10-18 05:10:28,911.911 INFO    ] Checking for camera pi updates...
[2026-10-18 05:10:28,947.947 INFO    ] 200
[2026-10-18 05:10:28,950.950 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:10:28,994.994 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:10:39,007.007 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:10:39,042.042 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:10:39,051.051 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:10:39,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:10:39,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:10:39,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:10:41,107.107 INFO    ] ================================================
[2026-10-18 05:10:41,121.121 INFO    ] Launching Daemon at Sun Oct 18 05:10:41 IST 2026
[2026-10-18 05:10:41,132.132 INFO    ] ================================================
[2026-10-18 05:10:41,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:10:41
[2026-10-18 05:10:42,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:10:42,729.729 INFO    ] Initializing speech engine...
[2026-10-18 05:10:42,740.740 INFO    ] 2026-10-18 05:10:42
[2026-10-18 05:10:43,024.024 INFO    ] 2026-10-18 05:10:43
[2026-10-18 05:10:43,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:10:43,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:10:43,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:10:43,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:10:43,544.544 INFO    ] time= 18/10/2026 05:10:43
[2026-10-18 05:10:43,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:10:43,585.585 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:10:43,713.713 INFO    ] No existing commands found in stream
[2026-10-18 05:10:48,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:10:48,746.746 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-18 05:10:50,781.781 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 05:10:50,783.783 INFO    ] Checking for system updates...
[2026-10-18 05:10:50,819.819 INFO    ] 200
[2026-10-18 05:10:50,821.821 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:10:50,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:10:50,878.878 INFO    ] No update needed
[2026-10-18 05:10:50,880.880 INFO    ] Checking for camera pi updates...
[2026-10-18 05:10:50,916.916 INFO    ] 200
[2026-10-18 05:10:50,919.919 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:10:50,960.960 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:11:00,977.977 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:11:01,017.017 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:11:01,028.028 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:11:01,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:11:01,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:11:01,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:11:03,086.086 INFO    ] ================================================
[2026-10-18 05:11:03,106.106 INFO    ] Launching Daemon at Sun Oct 18 05:11:03 IST 2026
[2026-10-18 05:11:03,119.119 INFO    ] ================================================
[2026-10-18 05:11:03,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:11:03
[2026-10-18 05:11:04,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:11:04,605.605 INFO    ] Initializing speech engine...
[2026-10-18 05:11:04,614.614 INFO    ] 2026-10-18 05:11:04
[2026-10-18 05:11:04,877.877 INFO    ] 2026-10-18 05:11:04
[2026-10-18 05:11:04,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:11:05,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:11:05,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:11:05,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:11:05,423.423 INFO    ] time= 18/10/2026 05:11:05
[2026-10-18 05:11:05,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:11:05,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:11:05,586.586 INFO    ] No existing commands found in stream
[2026-10-18 05:11:10,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:11:10,619.619 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-18 05:11:11,741.741 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:11:11,744.744 INFO    ] Checking for system updates...
[2026-10-18 05:11:11,783.783 INFO    ] 200
[2026-10-18 05:11:11,786.786 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:11:11,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:11:11,841.841 INFO    ] No update needed
[2026-10-18 05:11:11,844.844 INFO    ] Checking for camera pi updates...
[2026-10-18 05:11:11,878.878 INFO    ] 200
[2026-10-18 05:11:11,880.880 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:11:11,920.920 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:11:21,936.936 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:11:21,971.971 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:11:21,981.981 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:11:21,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:11:21,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:11:21,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:11:24,036.036 INFO    ] ================================================
[2026-10-18 05:11:24,052.052 INFO    ] Launching Daemon at Sun Oct 18 05:11:24 IST 2026
[2026-10-18 05:11:24,089.089 INFO    ] ================================================
[2026-10-18 05:11:24,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:11:24
[2026-10-18 05:11:25,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:11:25,568.568 INFO    ] Initializing speech engine...
[2026-10-18 05:11:25,573.573 INFO    ] 2026-10-18 05:11:25
[2026-10-18 05:11:25,838.838 INFO    ] 2026-10-18 05:11:25
[2026-10-18 05:11:25,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:11:26,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:11:26,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:11:26,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:11:26,326.326 INFO    ] time= 18/10/2026 05:11:26
[2026-10-18 05:11:26,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:11:26,396.396 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:11:26,542.542 INFO    ] No existing commands found in stream
[2026-10-18 05:11:31,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:11:31,560.560 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-18 05:11:32,579.579 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:11:32,581.581 INFO    ] Checking for system updates...
[2026-10-18 05:11:32,623.623 INFO    ] 200
[2026-10-18 05:11:32,627.627 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:11:32,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:11:32,688.688 INFO    ] No update needed
[2026-10-18 05:11:32,690.690 INFO    ] Checking for camera pi updates...
[2026-10-18 05:11:32,725.725 INFO    ] 200
[2026-10-18 05:11:32,728.728 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:11:32,769.769 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:11:42,785.785 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:11:42,825.825 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:11:42,836.836 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:11:42,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:11:42,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:11:42,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:11:44,890.890 INFO    ] ================================================
[2026-10-18 05:11:44,906.906 INFO    ] Launching Daemon at Sun Oct 18 05:11:44 IST 2026
[2026-10-18 05:11:44,917.917 INFO    ] ================================================
[2026-10-18 05:11:45,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:11:45
[2026-10-18 05:11:46,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:11:46,552.552 INFO    ] Initializing speech engine...
[2026-10-18 05:11:46,566.566 INFO    ] 2026-10-18 05:11:46
[2026-10-18 05:11:46,877.877 INFO    ] 2026-10-18 05:11:46
[2026-10-18 05:11:46,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:11:47,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:11:47,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:11:47,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:11:47,383.383 INFO    ] time= 18/10/2026 05:11:47
[2026-10-18 05:11:47,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:11:47,425.425 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:11:47,553.553 INFO    ] No existing commands found in stream
[2026-10-18 05:11:52,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:11:52,593.593 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-18 05:11:56,945.945 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:11:56,949.949 INFO    ] Checking for system updates...
[2026-10-18 05:11:56,990.990 INFO    ] 200
[2026-10-18 05:11:56,993.993 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:11:57,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:11:57,061.061 INFO    ] No update needed
[2026-10-18 05:11:57,064.064 INFO    ] Checking for camera pi updates...
[2026-10-18 05:11:57,104.104 INFO    ] 200
[2026-10-18 05:11:57,106.106 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:11:57,158.158 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:12:07,174.174 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:12:07,213.213 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:12:07,224.224 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:12:07,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:12:07,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:12:07,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:12:09,279.279 INFO    ] ================================================
[2026-10-18 05:12:09,299.299 INFO    ] Launching Daemon at Sun Oct 18 05:12:09 IST 2026
[2026-10-18 05:12:09,310.310 INFO    ] ================================================
[2026-10-18 05:12:09,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:12:09
[2026-10-18 05:12:10,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:12:10,907.907 INFO    ] Initializing speech engine...
[2026-10-18 05:12:10,915.915 INFO    ] 2026-10-18 05:12:10
[2026-10-18 05:12:11,198.198 INFO    ] 2026-10-18 05:12:11
[2026-10-18 05:12:11,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:12:11,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:12:11,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:12:11,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:12:11,752.752 INFO    ] time= 18/10/2026 05:12:11
[2026-10-18 05:12:11,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:12:11,791.791 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:12:11,898.898 INFO    ] No existing commands found in stream
[2026-10-18 05:12:16,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:12:16,931.931 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-18 05:12:18,923.923 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:12:18,926.926 INFO    ] Checking for system updates...
[2026-10-18 05:12:18,962.962 INFO    ] 200
[2026-10-18 05:12:18,965.965 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:12:19,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:12:19,027.027 INFO    ] No update needed
[2026-10-18 05:12:19,030.030 INFO    ] Checking for camera pi updates...
[2026-10-18 05:12:19,064.064 INFO    ] 200
[2026-10-18 05:12:19,068.068 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:12:19,109.109 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:12:29,126.126 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:12:29,166.166 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:12:29,177.177 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:12:29,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:12:29,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:12:29,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:12:31,231.231 INFO    ] ================================================
[2026-10-18 05:12:31,247.247 INFO    ] Launching Daemon at Sun Oct 18 05:12:31 IST 2026
[2026-10-18 05:12:31,257.257 INFO    ] ================================================
[2026-10-18 05:12:31,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:12:31
[2026-10-18 05:12:32,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:12:32,741.741 INFO    ] Initializing speech engine...
[2026-10-18 05:12:32,755.755 INFO    ] 2026-10-18 05:12:32
[2026-10-18 05:12:33,024.024 INFO    ] 2026-10-18 05:12:33
[2026-10-18 05:12:33,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:12:33,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:12:33,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:12:33,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:12:33,581.581 INFO    ] time= 18/10/2026 05:12:33
[2026-10-18 05:12:33,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:12:33,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:12:33,737.737 INFO    ] No existing commands found in stream
[2026-10-18 05:12:38,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:12:38,763.763 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-18 05:12:41,177.177 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:12:41,179.179 INFO    ] Checking for system updates...
[2026-10-18 05:12:41,219.219 INFO    ] 200
[2026-10-18 05:12:41,221.221 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:12:41,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:12:41,275.275 INFO    ] No update needed
[2026-10-18 05:12:41,278.278 INFO    ] Checking for camera pi updates...
[2026-10-18 05:12:41,311.311 INFO    ] 200
[2026-10-18 05:12:41,313.313 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:12:41,353.353 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:12:51,368.368 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:12:51,402.402 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:12:51,412.412 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:12:51,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:12:51,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:12:51,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:12:53,464.464 INFO    ] ================================================
[2026-10-18 05:12:53,480.480 INFO    ] Launching Daemon at Sun Oct 18 05:12:53 IST 2026
[2026-10-18 05:12:53,491.491 INFO    ] ================================================
[2026-10-18 05:12:54,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:12:54
[2026-10-18 05:12:54,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:12:54,927.927 INFO    ] Initializing speech engine...
[2026-10-18 05:12:54,935.935 INFO    ] 2026-10-18 05:12:54
[2026-10-18 05:12:55,192.192 INFO    ] 2026-10-18 05:12:55
[2026-10-18 05:12:55,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:12:55,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:12:55,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:12:55,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:12:55,731.731 INFO    ] time= 18/10/2026 05:12:55
[2026-10-18 05:12:55,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:12:55,757.757 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:12:55,875.875 INFO    ] No existing commands found in stream
[2026-10-18 05:13:00,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:13:00,898.898 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-18 05:13:04,703.703 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:13:04,706.706 INFO    ] Checking for system updates...
[2026-10-18 05:13:04,744.744 INFO    ] 200
[2026-10-18 05:13:04,747.747 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:13:04,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:13:04,802.802 INFO    ] No update needed
[2026-10-18 05:13:04,804.804 INFO    ] Checking for camera pi updates...
[2026-10-18 05:13:04,840.840 INFO    ] 200
[2026-10-18 05:13:04,842.842 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:13:04,882.882 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:13:14,897.897 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:13:14,932.932 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:13:14,942.942 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:13:14,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:13:14,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:13:14,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:13:17,994.994 INFO    ] ================================================
[2026-10-18 05:13:17,010.010 INFO    ] Launching Daemon at Sun Oct 18 05:13:17 IST 2026
[2026-10-18 05:13:17,021.021 INFO    ] ================================================
[2026-10-18 05:13:17,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:13:17
[2026-10-18 05:13:18,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:13:18,454.454 INFO    ] Initializing speech engine...
[2026-10-18 05:13:18,466.466 INFO    ] 2026-10-18 05:13:18
[2026-10-18 05:13:18,715.715 INFO    ] 2026-10-18 05:13:18
[2026-10-18 05:13:18,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:13:18,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:13:18,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:13:19,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:13:19,217.217 INFO    ] time= 18/10/2026 05:13:19
[2026-10-18 05:13:19,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:13:19,280.280 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:13:19,422.422 INFO    ] No existing commands found in stream
[2026-10-18 05:13:24,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:13:24,440.440 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-18 05:13:24,946.946 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:13:24,948.948 INFO    ] Checking for system updates...
[2026-10-18 05:13:24,984.984 INFO    ] 200
[2026-10-18 05:13:24,986.986 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:13:25,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:13:25,041.041 INFO    ] No update needed
[2026-10-18 05:13:25,043.043 INFO    ] Checking for camera pi updates...
[2026-10-18 05:13:25,077.077 INFO    ] 200
[2026-10-18 05:13:25,079.079 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:13:25,119.119 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:13:35,134.134 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:13:35,169.169 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:13:35,179.179 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:13:35,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:13:35,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:13:35,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:13:37,233.233 INFO    ] ================================================
[2026-10-18 05:13:37,248.248 INFO    ] Launching Daemon at Sun Oct 18 05:13:37 IST 2026
[2026-10-18 05:13:37,259.259 INFO    ] ================================================
[2026-10-18 05:13:37,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:13:37
[2026-10-18 05:13:38,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:13:38,872.872 INFO    ] Initializing speech engine...
[2026-10-18 05:13:38,884.884 INFO    ] 2026-10-18 05:13:38
[2026-10-18 05:13:39,173.173 INFO    ] 2026-10-18 05:13:39
[2026-10-18 05:13:39,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:13:39,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:13:39,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:13:39,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:13:39,738.738 INFO    ] time= 18/10/2026 05:13:39
[2026-10-18 05:13:39,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:13:39,776.776 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:13:39,953.953 INFO    ] No existing commands found in stream
[2026-10-18 05:13:44,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:13:44,990.990 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-18 05:13:45,540.540 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:13:45,542.542 INFO    ] Checking for system updates...
[2026-10-18 05:13:45,581.581 INFO    ] 200
[2026-10-18 05:13:45,583.583 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:13:45,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:13:45,638.638 INFO    ] No update needed
[2026-10-18 05:13:45,640.640 INFO    ] Checking for camera pi updates...
[2026-10-18 05:13:45,677.677 INFO    ] 200
[2026-10-18 05:13:45,679.679 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:13:45,723.723 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:13:55,745.745 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:13:55,780.780 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:13:55,789.789 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:13:55,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:13:55,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:13:55,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:13:57,841.841 INFO    ] ================================================
[2026-10-18 05:13:57,856.856 INFO    ] Launching Daemon at Sun Oct 18 05:13:57 IST 2026
[2026-10-18 05:13:57,867.867 INFO    ] ================================================
[2026-10-18 05:13:58,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:13:58
[2026-10-18 05:13:59,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:13:59,314.314 INFO    ] Initializing speech engine...
[2026-10-18 05:13:59,323.323 INFO    ] 2026-10-18 05:13:59
[2026-10-18 05:13:59,583.583 INFO    ] 2026-10-18 05:13:59
[2026-10-18 05:13:59,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:13:59,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:13:59,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:14:00,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:14:00,129.129 INFO    ] time= 18/10/2026 05:14:00
[2026-10-18 05:14:00,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:14:00,153.153 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:14:00,261.261 INFO    ] No existing commands found in stream
[2026-10-18 05:14:05,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:14:05,291.291 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-18 05:14:06,053.053 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:14:06,055.055 INFO    ] Checking for system updates...
[2026-10-18 05:14:06,092.092 INFO    ] 200
[2026-10-18 05:14:06,094.094 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:14:06,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:14:06,150.150 INFO    ] No update needed
[2026-10-18 05:14:06,153.153 INFO    ] Checking for camera pi updates...
[2026-10-18 05:14:06,196.196 INFO    ] 200
[2026-10-18 05:14:06,198.198 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:14:06,239.239 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:14:16,253.253 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:14:16,289.289 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:14:16,299.299 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:14:16,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:14:16,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:14:16,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:14:18,353.353 INFO    ] ================================================
[2026-10-18 05:14:18,369.369 INFO    ] Launching Daemon at Sun Oct 18 05:14:18 IST 2026
[2026-10-18 05:14:18,380.380 INFO    ] ================================================
[2026-10-18 05:14:18,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:14:18
[2026-10-18 05:14:19,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:14:19,842.842 INFO    ] Initializing speech engine...
[2026-10-18 05:14:19,849.849 INFO    ] 2026-10-18 05:14:19
[2026-10-18 05:14:20,111.111 INFO    ] 2026-10-18 05:14:20
[2026-10-18 05:14:20,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:14:20,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:14:20,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:14:20,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:14:20,656.656 INFO    ] time= 18/10/2026 05:14:20
[2026-10-18 05:14:20,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:14:20,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:14:20,810.810 INFO    ] No existing commands found in stream
[2026-10-18 05:14:25,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:14:25,835.835 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-18 05:14:30,304.304 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 05:14:30,307.307 INFO    ] Checking for system updates...
[2026-10-18 05:14:30,343.343 INFO    ] 200
[2026-10-18 05:14:30,346.346 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:14:30,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:14:30,401.401 INFO    ] No update needed
[2026-10-18 05:14:30,404.404 INFO    ] Checking for camera pi updates...
[2026-10-18 05:14:30,438.438 INFO    ] 200
[2026-10-18 05:14:30,440.440 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:14:30,481.481 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:14:40,494.494 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:14:40,530.530 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:14:40,540.540 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:14:40,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:14:40,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:14:40,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:14:42,593.593 INFO    ] ================================================
[2026-10-18 05:14:42,609.609 INFO    ] Launching Daemon at Sun Oct 18 05:14:42 IST 2026
[2026-10-18 05:14:42,620.620 INFO    ] ================================================
[2026-10-18 05:14:43,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:14:43
[2026-10-18 05:14:43,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:14:44,068.068 INFO    ] Initializing speech engine...
[2026-10-18 05:14:44,075.075 INFO    ] 2026-10-18 05:14:44
[2026-10-18 05:14:44,336.336 INFO    ] 2026-10-18 05:14:44
[2026-10-18 05:14:44,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:14:44,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:14:44,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:14:44,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:14:44,875.875 INFO    ] time= 18/10/2026 05:14:44
[2026-10-18 05:14:44,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:14:44,902.902 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:14:45,026.026 INFO    ] No existing commands found in stream
[2026-10-18 05:14:50,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:14:50,045.045 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-18 05:14:51,701.701 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:14:51,703.703 INFO    ] Checking for system updates...
[2026-10-18 05:14:51,739.739 INFO    ] 200
[2026-10-18 05:14:51,742.742 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:14:51,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:14:51,796.796 INFO    ] No update needed
[2026-10-18 05:14:51,799.799 INFO    ] Checking for camera pi updates...
[2026-10-18 05:14:51,837.837 INFO    ] 200
[2026-10-18 05:14:51,840.840 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:14:51,880.880 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:15:01,896.896 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:15:01,972.972 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:15:01,988.988 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:15:01,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:15:02,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:15:02,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:15:04,051.051 INFO    ] ================================================
[2026-10-18 05:15:04,067.067 INFO    ] Launching Daemon at Sun Oct 18 05:15:04 IST 2026
[2026-10-18 05:15:04,078.078 INFO    ] ================================================
[2026-10-18 05:15:04,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:15:04
[2026-10-18 05:15:05,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:15:05,546.546 INFO    ] Initializing speech engine...
[2026-10-18 05:15:05,552.552 INFO    ] 2026-10-18 05:15:05
[2026-10-18 05:15:05,813.813 INFO    ] 2026-10-18 05:15:05
[2026-10-18 05:15:05,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:15:06,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:15:06,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:15:06,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:15:06,357.357 INFO    ] time= 18/10/2026 05:15:06
[2026-10-18 05:15:06,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:15:06,381.381 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:15:06,512.512 INFO    ] No existing commands found in stream
[2026-10-18 05:15:11,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:15:11,530.530 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-18 05:15:13,763.763 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:15:13,766.766 INFO    ] Checking for system updates...
[2026-10-18 05:15:13,802.802 INFO    ] 200
[2026-10-18 05:15:13,805.805 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:15:13,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:15:13,868.868 INFO    ] No update needed
[2026-10-18 05:15:13,871.871 INFO    ] Checking for camera pi updates...
[2026-10-18 05:15:13,908.908 INFO    ] 200
[2026-10-18 05:15:13,910.910 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:15:13,955.955 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:15:23,971.971 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:15:24,007.007 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:15:24,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:15:24,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:15:24,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:15:24,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:15:26,072.072 INFO    ] ================================================
[2026-10-18 05:15:26,088.088 INFO    ] Launching Daemon at Sun Oct 18 05:15:26 IST 2026
[2026-10-18 05:15:26,099.099 INFO    ] ================================================
[2026-10-18 05:15:26,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:15:26
[2026-10-18 05:15:27,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:15:27,508.508 INFO    ] Initializing speech engine...
[2026-10-18 05:15:27,521.521 INFO    ] 2026-10-18 05:15:27
[2026-10-18 05:15:27,808.808 INFO    ] 2026-10-18 05:15:27
[2026-10-18 05:15:27,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:15:28,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:15:28,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:15:28,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:15:28,197.197 INFO    ] time= 18/10/2026 05:15:28
[2026-10-18 05:15:28,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:15:28,228.228 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:15:28,322.322 INFO    ] No existing commands found in stream
[2026-10-18 05:15:33,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:15:33,361.361 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-18 05:15:34,035.035 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:15:34,038.038 INFO    ] Checking for system updates...
[2026-10-18 05:15:34,073.073 INFO    ] 200
[2026-10-18 05:15:34,076.076 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:15:34,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:15:34,131.131 INFO    ] No update needed
[2026-10-18 05:15:34,133.133 INFO    ] Checking for camera pi updates...
[2026-10-18 05:15:34,166.166 INFO    ] 200
[2026-10-18 05:15:34,169.169 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:15:34,208.208 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:15:44,223.223 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:15:44,258.258 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:15:44,268.268 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:15:44,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:15:44,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:15:44,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:15:46,320.320 INFO    ] ================================================
[2026-10-18 05:15:46,336.336 INFO    ] Launching Daemon at Sun Oct 18 05:15:46 IST 2026
[2026-10-18 05:15:46,347.347 INFO    ] ================================================
[2026-10-18 05:15:46,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:15:46
[2026-10-18 05:15:47,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:15:47,806.806 INFO    ] Initializing speech engine...
[2026-10-18 05:15:47,813.813 INFO    ] 2026-10-18 05:15:47
[2026-10-18 05:15:48,074.074 INFO    ] 2026-10-18 05:15:48
[2026-10-18 05:15:48,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:15:48,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:15:48,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:15:48,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:15:48,616.616 INFO    ] time= 18/10/2026 05:15:48
[2026-10-18 05:15:48,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:15:48,641.641 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:15:48,768.768 INFO    ] No existing commands found in stream
[2026-10-18 05:15:53,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:15:53,786.786 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-18 05:15:54,975.975 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:15:54,978.978 INFO    ] Checking for system updates...
[2026-10-18 05:15:55,017.017 INFO    ] 200
[2026-10-18 05:15:55,020.020 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:15:55,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:15:55,075.075 INFO    ] No update needed
[2026-10-18 05:15:55,077.077 INFO    ] Checking for camera pi updates...
[2026-10-18 05:15:55,114.114 INFO    ] 200
[2026-10-18 05:15:55,117.117 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:15:55,161.161 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:16:05,176.176 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:16:05,212.212 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:16:05,222.222 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:16:05,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:16:05,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:16:05,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:16:07,279.279 INFO    ] ================================================
[2026-10-18 05:16:07,295.295 INFO    ] Launching Daemon at Sun Oct 18 05:16:07 IST 2026
[2026-10-18 05:16:07,307.307 INFO    ] ================================================
[2026-10-18 05:16:07,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:16:07
[2026-10-18 05:16:08,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:16:08,925.925 INFO    ] Initializing speech engine...
[2026-10-18 05:16:08,939.939 INFO    ] 2026-10-18 05:16:08
[2026-10-18 05:16:09,247.247 INFO    ] 2026-10-18 05:16:09
[2026-10-18 05:16:09,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:16:09,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:16:09,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:16:09,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:16:09,753.753 INFO    ] time= 18/10/2026 05:16:09
[2026-10-18 05:16:09,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:16:09,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:16:09,906.906 INFO    ] No existing commands found in stream
[2026-10-18 05:16:14,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:16:14,921.921 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-18 05:16:18,881.881 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:16:18,884.884 INFO    ] Checking for system updates...
[2026-10-18 05:16:18,921.921 INFO    ] 200
[2026-10-18 05:16:18,924.924 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:16:18,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:16:18,987.987 INFO    ] No update needed
[2026-10-18 05:16:18,989.989 INFO    ] Checking for camera pi updates...
[2026-10-18 05:16:19,027.027 INFO    ] 200
[2026-10-18 05:16:19,029.029 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:16:19,075.075 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:16:29,090.090 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:16:29,125.125 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:16:29,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:16:29,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:16:29,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:16:29,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:16:31,187.187 INFO    ] ================================================
[2026-10-18 05:16:31,202.202 INFO    ] Launching Daemon at Sun Oct 18 05:16:31 IST 2026
[2026-10-18 05:16:31,214.214 INFO    ] ================================================
[2026-10-18 05:16:31,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:16:31
[2026-10-18 05:16:32,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:16:32,801.801 INFO    ] Initializing speech engine...
[2026-10-18 05:16:32,811.811 INFO    ] 2026-10-18 05:16:32
[2026-10-18 05:16:33,103.103 INFO    ] 2026-10-18 05:16:33
[2026-10-18 05:16:33,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:16:33,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:16:33,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:16:33,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:16:33,652.652 INFO    ] time= 18/10/2026 05:16:33
[2026-10-18 05:16:33,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:16:33,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:16:33,879.879 INFO    ] No existing commands found in stream
[2026-10-18 05:16:38,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:16:38,919.919 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-18 05:16:41,886.886 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:16:41,889.889 INFO    ] Checking for system updates...
[2026-10-18 05:16:41,927.927 INFO    ] 200
[2026-10-18 05:16:41,930.930 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:16:41,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:16:41,985.985 INFO    ] No update needed
[2026-10-18 05:16:41,988.988 INFO    ] Checking for camera pi updates...
[2026-10-18 05:16:42,026.026 INFO    ] 200
[2026-10-18 05:16:42,029.029 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:16:42,069.069 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:16:52,081.081 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:16:52,116.116 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:16:52,126.126 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:16:52,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:16:52,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:16:52,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:16:54,181.181 INFO    ] ================================================
[2026-10-18 05:16:54,201.201 INFO    ] Launching Daemon at Sun Oct 18 05:16:54 IST 2026
[2026-10-18 05:16:54,212.212 INFO    ] ================================================
[2026-10-18 05:16:54,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:16:54
[2026-10-18 05:16:55,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:16:55,619.619 INFO    ] Initializing speech engine...
[2026-10-18 05:16:55,625.625 INFO    ] 2026-10-18 05:16:55
[2026-10-18 05:16:55,901.901 INFO    ] 2026-10-18 05:16:55
[2026-10-18 05:16:55,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:16:56,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:16:56,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:16:56,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:16:56,470.470 INFO    ] time= 18/10/2026 05:16:56
[2026-10-18 05:16:56,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:16:56,499.499 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:16:56,638.638 INFO    ] No existing commands found in stream
[2026-10-18 05:17:01,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:17:01,667.667 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-18 05:17:03,154.154 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:17:03,157.157 INFO    ] Checking for system updates...
[2026-10-18 05:17:03,219.219 INFO    ] 200
[2026-10-18 05:17:03,222.222 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:17:03,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:17:03,304.304 INFO    ] No update needed
[2026-10-18 05:17:03,307.307 INFO    ] Checking for camera pi updates...
[2026-10-18 05:17:03,357.357 INFO    ] 200
[2026-10-18 05:17:03,360.360 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:17:03,412.412 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:17:13,428.428 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:17:13,464.464 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:17:13,474.474 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:17:13,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:17:13,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:17:13,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:17:15,527.527 INFO    ] ================================================
[2026-10-18 05:17:15,542.542 INFO    ] Launching Daemon at Sun Oct 18 05:17:15 IST 2026
[2026-10-18 05:17:15,553.553 INFO    ] ================================================
[2026-10-18 05:17:16,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:17:16
[2026-10-18 05:17:16,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:17:16,997.997 INFO    ] Initializing speech engine...
[2026-10-18 05:17:17,014.014 INFO    ] 2026-10-18 05:17:17
[2026-10-18 05:17:17,270.270 INFO    ] 2026-10-18 05:17:17
[2026-10-18 05:17:17,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:17:17,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:17:17,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:17:17,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:17:17,828.828 INFO    ] time= 18/10/2026 05:17:17
[2026-10-18 05:17:17,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:17:17,852.852 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:17:17,984.984 INFO    ] No existing commands found in stream
[2026-10-18 05:17:22,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:17:23,002.002 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-18 05:17:25,927.927 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:17:25,929.929 INFO    ] Checking for system updates...
[2026-10-18 05:17:25,970.970 INFO    ] 200
[2026-10-18 05:17:25,973.973 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:17:26,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:17:26,040.040 INFO    ] No update needed
[2026-10-18 05:17:26,043.043 INFO    ] Checking for camera pi updates...
[2026-10-18 05:17:26,081.081 INFO    ] 200
[2026-10-18 05:17:26,084.084 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:17:26,130.130 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:17:36,148.148 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:17:36,188.188 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:17:36,199.199 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:17:36,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:17:36,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:17:36,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:17:38,255.255 INFO    ] ================================================
[2026-10-18 05:17:38,270.270 INFO    ] Launching Daemon at Sun Oct 18 05:17:38 IST 2026
[2026-10-18 05:17:38,281.281 INFO    ] ================================================
[2026-10-18 05:17:38,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:17:38
[2026-10-18 05:17:39,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:17:39,707.707 INFO    ] Initializing speech engine...
[2026-10-18 05:17:39,713.713 INFO    ] 2026-10-18 05:17:39
[2026-10-18 05:17:39,959.959 INFO    ] 2026-10-18 05:17:39
[2026-10-18 05:17:39,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:17:40,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:17:40,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:17:40,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:17:40,455.455 INFO    ] time= 18/10/2026 05:17:40
[2026-10-18 05:17:40,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:17:40,524.524 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:17:40,649.649 INFO    ] No existing commands found in stream
[2026-10-18 05:17:45,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:17:45,677.677 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-18 05:17:46,327.327 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 05:17:46,331.331 INFO    ] Checking for system updates...
[2026-10-18 05:17:46,368.368 INFO    ] 200
[2026-10-18 05:17:46,371.371 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:17:46,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:17:46,435.435 INFO    ] No update needed
[2026-10-18 05:17:46,439.439 INFO    ] Checking for camera pi updates...
[2026-10-18 05:17:46,478.478 INFO    ] 200
[2026-10-18 05:17:46,481.481 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:17:46,527.527 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:17:56,543.543 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:17:56,587.587 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:17:56,600.600 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:17:56,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:17:56,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:17:56,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:17:58,658.658 INFO    ] ================================================
[2026-10-18 05:17:58,673.673 INFO    ] Launching Daemon at Sun Oct 18 05:17:58 IST 2026
[2026-10-18 05:17:58,684.684 INFO    ] ================================================
[2026-10-18 05:17:59,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:17:59
[2026-10-18 05:17:59,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:18:00,143.143 INFO    ] Initializing speech engine...
[2026-10-18 05:18:00,152.152 INFO    ] 2026-10-18 05:18:00
[2026-10-18 05:18:00,412.412 INFO    ] 2026-10-18 05:18:00
[2026-10-18 05:18:00,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:18:00,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:18:00,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:18:00,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:18:00,955.955 INFO    ] time= 18/10/2026 05:18:00
[2026-10-18 05:18:00,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:18:00,980.980 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:18:01,107.107 INFO    ] No existing commands found in stream
[2026-10-18 05:18:06,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:18:06,124.124 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-18 05:18:06,813.813 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:18:06,816.816 INFO    ] Checking for system updates...
[2026-10-18 05:18:06,851.851 INFO    ] 200
[2026-10-18 05:18:06,853.853 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:18:06,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:18:06,919.919 INFO    ] No update needed
[2026-10-18 05:18:06,921.921 INFO    ] Checking for camera pi updates...
[2026-10-18 05:18:06,955.955 INFO    ] 200
[2026-10-18 05:18:06,958.958 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:18:06,998.998 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:18:17,013.013 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:18:17,049.049 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:18:17,059.059 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:18:17,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:18:17,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:18:17,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:18:19,112.112 INFO    ] ================================================
[2026-10-18 05:18:19,128.128 INFO    ] Launching Daemon at Sun Oct 18 05:18:19 IST 2026
[2026-10-18 05:18:19,139.139 INFO    ] ================================================
[2026-10-18 05:18:19,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:18:19
[2026-10-18 05:18:20,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:18:20,784.784 INFO    ] Initializing speech engine...
[2026-10-18 05:18:20,803.803 INFO    ] 2026-10-18 05:18:20
[2026-10-18 05:18:21,091.091 INFO    ] 2026-10-18 05:18:21
[2026-10-18 05:18:21,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:18:21,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:18:21,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:18:21,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:18:21,660.660 INFO    ] time= 18/10/2026 05:18:21
[2026-10-18 05:18:21,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:18:21,698.698 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:18:21,830.830 INFO    ] No existing commands found in stream
[2026-10-18 05:18:26,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:18:26,864.864 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-18 05:18:28,625.625 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:18:28,628.628 INFO    ] Checking for system updates...
[2026-10-18 05:18:28,664.664 INFO    ] 200
[2026-10-18 05:18:28,666.666 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:18:28,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:18:28,724.724 INFO    ] No update needed
[2026-10-18 05:18:28,727.727 INFO    ] Checking for camera pi updates...
[2026-10-18 05:18:28,765.765 INFO    ] 200
[2026-10-18 05:18:28,768.768 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:18:28,808.808 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:18:38,823.823 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:18:38,864.864 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:18:38,875.875 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:18:38,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:18:38,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:18:38,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:18:40,931.931 INFO    ] ================================================
[2026-10-18 05:18:40,946.946 INFO    ] Launching Daemon at Sun Oct 18 05:18:40 IST 2026
[2026-10-18 05:18:40,957.957 INFO    ] ================================================
[2026-10-18 05:18:41,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:18:41
[2026-10-18 05:18:42,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:18:42,418.418 INFO    ] Initializing speech engine...
[2026-10-18 05:18:42,429.429 INFO    ] 2026-10-18 05:18:42
[2026-10-18 05:18:42,690.690 INFO    ] 2026-10-18 05:18:42
[2026-10-18 05:18:42,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:18:42,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:18:42,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:18:43,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:18:43,175.175 INFO    ] time= 18/10/2026 05:18:43
[2026-10-18 05:18:43,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:18:43,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:18:43,379.379 INFO    ] No existing commands found in stream
[2026-10-18 05:18:48,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:18:48,403.403 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-18 05:18:49,305.305 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:18:49,308.308 INFO    ] Checking for system updates...
[2026-10-18 05:18:49,348.348 INFO    ] 200
[2026-10-18 05:18:49,351.351 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:18:49,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:18:49,405.405 INFO    ] No update needed
[2026-10-18 05:18:49,408.408 INFO    ] Checking for camera pi updates...
[2026-10-18 05:18:49,441.441 INFO    ] 200
[2026-10-18 05:18:49,444.444 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:18:49,485.485 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:18:59,504.504 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:18:59,540.540 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:18:59,550.550 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:18:59,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:18:59,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:18:59,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:19:01,608.608 INFO    ] ================================================
[2026-10-18 05:19:01,630.630 INFO    ] Launching Daemon at Sun Oct 18 05:19:01 IST 2026
[2026-10-18 05:19:01,646.646 INFO    ] ================================================
[2026-10-18 05:19:02,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:19:02
[2026-10-18 05:19:03,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:19:03,372.372 INFO    ] Initializing speech engine...
[2026-10-18 05:19:03,379.379 INFO    ] 2026-10-18 05:19:03
[2026-10-18 05:19:03,642.642 INFO    ] 2026-10-18 05:19:03
[2026-10-18 05:19:03,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:19:03,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:19:03,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:19:04,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:19:04,133.133 INFO    ] time= 18/10/2026 05:19:04
[2026-10-18 05:19:04,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:19:04,227.227 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:19:04,333.333 INFO    ] No existing commands found in stream
[2026-10-18 05:19:09,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:19:09,348.348 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-18 05:19:12,843.843 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:19:12,846.846 INFO    ] Checking for system updates...
[2026-10-18 05:19:12,882.882 INFO    ] 200
[2026-10-18 05:19:12,884.884 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:19:12,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:19:12,943.943 INFO    ] No update needed
[2026-10-18 05:19:12,946.946 INFO    ] Checking for camera pi updates...
[2026-10-18 05:19:12,980.980 INFO    ] 200
[2026-10-18 05:19:12,982.982 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:19:13,027.027 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:19:23,039.039 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:19:23,075.075 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:19:23,085.085 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:19:23,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:19:23,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:19:23,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:19:25,138.138 INFO    ] ================================================
[2026-10-18 05:19:25,154.154 INFO    ] Launching Daemon at Sun Oct 18 05:19:25 IST 2026
[2026-10-18 05:19:25,165.165 INFO    ] ================================================
[2026-10-18 05:19:25,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:19:25
[2026-10-18 05:19:26,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:19:26,602.602 INFO    ] Initializing speech engine...
[2026-10-18 05:19:26,608.608 INFO    ] 2026-10-18 05:19:26
[2026-10-18 05:19:26,900.900 INFO    ] 2026-10-18 05:19:26
[2026-10-18 05:19:26,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:19:27,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:19:27,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:19:27,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:19:27,405.405 INFO    ] time= 18/10/2026 05:19:27
[2026-10-18 05:19:27,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:19:27,514.514 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:19:27,680.680 INFO    ] No existing commands found in stream
[2026-10-18 05:19:32,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:19:32,708.708 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-18 05:19:35,451.451 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:19:35,453.453 INFO    ] Checking for system updates...
[2026-10-18 05:19:35,493.493 INFO    ] 200
[2026-10-18 05:19:35,495.495 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:19:35,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:19:35,550.550 INFO    ] No update needed
[2026-10-18 05:19:35,552.552 INFO    ] Checking for camera pi updates...
[2026-10-18 05:19:35,589.589 INFO    ] 200
[2026-10-18 05:19:35,591.591 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:19:35,631.631 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:19:45,646.646 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:19:45,681.681 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:19:45,690.690 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:19:45,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:19:45,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:19:45,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:19:47,743.743 INFO    ] ================================================
[2026-10-18 05:19:47,759.759 INFO    ] Launching Daemon at Sun Oct 18 05:19:47 IST 2026
[2026-10-18 05:19:47,770.770 INFO    ] ================================================
[2026-10-18 05:19:48,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:19:48
[2026-10-18 05:19:48,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:19:49,179.179 INFO    ] Initializing speech engine...
[2026-10-18 05:19:49,185.185 INFO    ] 2026-10-18 05:19:49
[2026-10-18 05:19:49,476.476 INFO    ] 2026-10-18 05:19:49
[2026-10-18 05:19:49,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:19:49,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:19:49,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:19:49,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:19:49,968.968 INFO    ] time= 18/10/2026 05:19:49
[2026-10-18 05:19:50,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:19:50,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:19:50,238.238 INFO    ] No existing commands found in stream
[2026-10-18 05:19:55,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:19:55,271.271 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-18 05:19:57,080.080 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:19:57,082.082 INFO    ] Checking for system updates...
[2026-10-18 05:19:57,117.117 INFO    ] 200
[2026-10-18 05:19:57,120.120 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:19:57,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:19:57,180.180 INFO    ] No update needed
[2026-10-18 05:19:57,182.182 INFO    ] Checking for camera pi updates...
[2026-10-18 05:19:57,218.218 INFO    ] 200
[2026-10-18 05:19:57,221.221 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:19:57,260.260 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:20:07,275.275 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:20:07,311.311 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:20:07,321.321 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:20:07,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:20:07,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:20:07,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:20:09,374.374 INFO    ] ================================================
[2026-10-18 05:20:09,390.390 INFO    ] Launching Daemon at Sun Oct 18 05:20:09 IST 2026
[2026-10-18 05:20:09,401.401 INFO    ] ================================================
[2026-10-18 05:20:09,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:20:09
[2026-10-18 05:20:10,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:20:10,828.828 INFO    ] Initializing speech engine...
[2026-10-18 05:20:10,835.835 INFO    ] 2026-10-18 05:20:10
[2026-10-18 05:20:11,085.085 INFO    ] 2026-10-18 05:20:11
[2026-10-18 05:20:11,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:20:11,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:20:11,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:20:11,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:20:11,631.631 INFO    ] time= 18/10/2026 05:20:11
[2026-10-18 05:20:11,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:20:11,677.677 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:20:11,811.811 INFO    ] No existing commands found in stream
[2026-10-18 05:20:16,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:20:16,836.836 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-18 05:20:20,490.490 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:20:20,492.492 INFO    ] Checking for system updates...
[2026-10-18 05:20:20,532.532 INFO    ] 200
[2026-10-18 05:20:20,534.534 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:20:20,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:20:20,595.595 INFO    ] No update needed
[2026-10-18 05:20:20,598.598 INFO    ] Checking for camera pi updates...
[2026-10-18 05:20:20,631.631 INFO    ] 200
[2026-10-18 05:20:20,633.633 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:20:20,673.673 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:20:30,688.688 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:20:30,724.724 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:20:30,733.733 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:20:30,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:20:30,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:20:30,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:20:32,789.789 INFO    ] ================================================
[2026-10-18 05:20:32,804.804 INFO    ] Launching Daemon at Sun Oct 18 05:20:32 IST 2026
[2026-10-18 05:20:32,815.815 INFO    ] ================================================
[2026-10-18 05:20:33,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:20:33
[2026-10-18 05:20:33,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:20:34,237.237 INFO    ] Initializing speech engine...
[2026-10-18 05:20:34,247.247 INFO    ] 2026-10-18 05:20:34
[2026-10-18 05:20:34,544.544 INFO    ] 2026-10-18 05:20:34
[2026-10-18 05:20:34,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:20:34,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:20:34,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:20:35,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:20:35,077.077 INFO    ] time= 18/10/2026 05:20:35
[2026-10-18 05:20:35,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:20:35,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:20:35,251.251 INFO    ] No existing commands found in stream
[2026-10-18 05:20:40,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:20:40,266.266 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-18 05:20:41,834.834 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:20:41,838.838 INFO    ] Checking for system updates...
[2026-10-18 05:20:41,878.878 INFO    ] 200
[2026-10-18 05:20:41,881.881 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:20:41,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:20:41,941.941 INFO    ] No update needed
[2026-10-18 05:20:41,944.944 INFO    ] Checking for camera pi updates...
[2026-10-18 05:20:41,979.979 INFO    ] 200
[2026-10-18 05:20:41,982.982 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:20:42,028.028 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:20:52,044.044 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:20:52,085.085 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:20:52,096.096 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:20:52,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:20:52,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:20:52,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:20:54,152.152 INFO    ] ================================================
[2026-10-18 05:20:54,168.168 INFO    ] Launching Daemon at Sun Oct 18 05:20:54 IST 2026
[2026-10-18 05:20:54,179.179 INFO    ] ================================================
[2026-10-18 05:20:54,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:20:54
[2026-10-18 05:20:55,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:20:55,639.639 INFO    ] Initializing speech engine...
[2026-10-18 05:20:55,648.648 INFO    ] 2026-10-18 05:20:55
[2026-10-18 05:20:55,910.910 INFO    ] 2026-10-18 05:20:55
[2026-10-18 05:20:55,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:20:56,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:20:56,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:20:56,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:20:56,453.453 INFO    ] time= 18/10/2026 05:20:56
[2026-10-18 05:20:56,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:20:56,478.478 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:20:56,622.622 INFO    ] No existing commands found in stream
[2026-10-18 05:21:01,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:21:01,662.662 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-18 05:21:04,502.502 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:21:04,504.504 INFO    ] Checking for system updates...
[2026-10-18 05:21:04,540.540 INFO    ] 200
[2026-10-18 05:21:04,542.542 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:21:04,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:21:04,598.598 INFO    ] No update needed
[2026-10-18 05:21:04,601.601 INFO    ] Checking for camera pi updates...
[2026-10-18 05:21:04,634.634 INFO    ] 200
[2026-10-18 05:21:04,637.637 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:21:04,682.682 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:21:14,697.697 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:21:14,733.733 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:21:14,743.743 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:21:14,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:21:14,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:21:14,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:21:16,797.797 INFO    ] ================================================
[2026-10-18 05:21:16,814.814 INFO    ] Launching Daemon at Sun Oct 18 05:21:16 IST 2026
[2026-10-18 05:21:16,825.825 INFO    ] ================================================
[2026-10-18 05:21:17,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:21:17
[2026-10-18 05:21:18,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:21:18,500.500 INFO    ] Initializing speech engine...
[2026-10-18 05:21:18,507.507 INFO    ] 2026-10-18 05:21:18
[2026-10-18 05:21:18,785.785 INFO    ] 2026-10-18 05:21:18
[2026-10-18 05:21:18,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:21:19,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:21:19,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:21:19,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:21:19,359.359 INFO    ] time= 18/10/2026 05:21:19
[2026-10-18 05:21:19,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:21:19,385.385 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:21:19,522.522 INFO    ] No existing commands found in stream
[2026-10-18 05:21:24,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:21:24,546.546 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-18 05:21:26,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:21:26,311.311 INFO    ] Checking for system updates...
[2026-10-18 05:21:26,352.352 INFO    ] 200
[2026-10-18 05:21:26,355.355 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:21:26,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:21:26,420.420 INFO    ] No update needed
[2026-10-18 05:21:26,423.423 INFO    ] Checking for camera pi updates...
[2026-10-18 05:21:26,463.463 INFO    ] 200
[2026-10-18 05:21:26,466.466 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:21:26,508.508 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:21:36,525.525 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:21:36,566.566 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:21:36,577.577 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:21:36,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:21:36,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:21:36,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:21:38,635.635 INFO    ] ================================================
[2026-10-18 05:21:38,650.650 INFO    ] Launching Daemon at Sun Oct 18 05:21:38 IST 2026
[2026-10-18 05:21:38,662.662 INFO    ] ================================================
[2026-10-18 05:21:39,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:21:39
[2026-10-18 05:21:39,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:21:40,073.073 INFO    ] Initializing speech engine...
[2026-10-18 05:21:40,088.088 INFO    ] 2026-10-18 05:21:40
[2026-10-18 05:21:40,351.351 INFO    ] 2026-10-18 05:21:40
[2026-10-18 05:21:40,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:21:40,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:21:40,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:21:40,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:21:40,907.907 INFO    ] time= 18/10/2026 05:21:40
[2026-10-18 05:21:40,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:21:40,934.934 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:21:41,063.063 INFO    ] No existing commands found in stream
[2026-10-18 05:21:46,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:21:46,081.081 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-18 05:21:47,269.269 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:21:47,272.272 INFO    ] Checking for system updates...
[2026-10-18 05:21:47,308.308 INFO    ] 200
[2026-10-18 05:21:47,310.310 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:21:47,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:21:47,364.364 INFO    ] No update needed
[2026-10-18 05:21:47,367.367 INFO    ] Checking for camera pi updates...
[2026-10-18 05:21:47,405.405 INFO    ] 200
[2026-10-18 05:21:47,408.408 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:21:47,448.448 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:21:57,462.462 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:21:57,498.498 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:21:57,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:21:57,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:21:57,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:21:57,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:21:59,562.562 INFO    ] ================================================
[2026-10-18 05:21:59,578.578 INFO    ] Launching Daemon at Sun Oct 18 05:21:59 IST 2026
[2026-10-18 05:21:59,589.589 INFO    ] ================================================
[2026-10-18 05:22:00,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:22:00
[2026-10-18 05:22:00,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:22:01,262.262 INFO    ] Initializing speech engine...
[2026-10-18 05:22:01,271.271 INFO    ] 2026-10-18 05:22:01
[2026-10-18 05:22:01,562.562 INFO    ] 2026-10-18 05:22:01
[2026-10-18 05:22:01,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:22:01,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:22:01,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:22:02,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:22:02,036.036 INFO    ] time= 18/10/2026 05:22:02
[2026-10-18 05:22:02,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:22:02,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:22:02,193.193 INFO    ] No existing commands found in stream
[2026-10-18 05:22:07,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:22:07,209.209 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-18 05:22:11,162.162 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:22:11,165.165 INFO    ] Checking for system updates...
[2026-10-18 05:22:11,200.200 INFO    ] 200
[2026-10-18 05:22:11,203.203 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:22:11,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:22:11,265.265 INFO    ] No update needed
[2026-10-18 05:22:11,268.268 INFO    ] Checking for camera pi updates...
[2026-10-18 05:22:11,305.305 INFO    ] 200
[2026-10-18 05:22:11,308.308 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:22:11,353.353 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:22:21,369.369 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:22:21,404.404 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:22:21,415.415 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:22:21,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:22:21,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:22:21,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:22:23,468.468 INFO    ] ================================================
[2026-10-18 05:22:23,483.483 INFO    ] Launching Daemon at Sun Oct 18 05:22:23 IST 2026
[2026-10-18 05:22:23,495.495 INFO    ] ================================================
[2026-10-18 05:22:24,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:22:24
[2026-10-18 05:22:24,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:22:24,977.977 INFO    ] Initializing speech engine...
[2026-10-18 05:22:24,984.984 INFO    ] 2026-10-18 05:22:24
[2026-10-18 05:22:25,246.246 INFO    ] 2026-10-18 05:22:25
[2026-10-18 05:22:25,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:22:25,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:22:25,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:22:25,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:22:25,788.788 INFO    ] time= 18/10/2026 05:22:25
[2026-10-18 05:22:25,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:22:25,818.818 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:22:25,944.944 INFO    ] No existing commands found in stream
[2026-10-18 05:22:30,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:22:30,963.963 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-18 05:22:34,964.964 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:22:34,967.967 INFO    ] Checking for system updates...
[2026-10-18 05:22:35,004.004 INFO    ] 200
[2026-10-18 05:22:35,007.007 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:22:35,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:22:35,063.063 INFO    ] No update needed
[2026-10-18 05:22:35,065.065 INFO    ] Checking for camera pi updates...
[2026-10-18 05:22:35,099.099 INFO    ] 200
[2026-10-18 05:22:35,102.102 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:22:35,142.142 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:22:45,158.158 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:22:45,193.193 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:22:45,203.203 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:22:45,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:22:45,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:22:45,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:22:47,256.256 INFO    ] ================================================
[2026-10-18 05:22:47,274.274 INFO    ] Launching Daemon at Sun Oct 18 05:22:47 IST 2026
[2026-10-18 05:22:47,286.286 INFO    ] ================================================
[2026-10-18 05:22:47,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:22:47
[2026-10-18 05:22:48,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:22:48,919.919 INFO    ] Initializing speech engine...
[2026-10-18 05:22:48,930.930 INFO    ] 2026-10-18 05:22:48
[2026-10-18 05:22:49,217.217 INFO    ] 2026-10-18 05:22:49
[2026-10-18 05:22:49,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:22:49,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:22:49,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:22:49,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:22:49,804.804 INFO    ] time= 18/10/2026 05:22:49
[2026-10-18 05:22:49,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:22:49,905.905 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:22:50,017.017 INFO    ] No existing commands found in stream
[2026-10-18 05:22:55,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:22:55,051.051 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-18 05:22:58,876.876 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:22:58,879.879 INFO    ] Checking for system updates...
[2026-10-18 05:22:58,915.915 INFO    ] 200
[2026-10-18 05:22:58,918.918 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:22:58,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:22:58,974.974 INFO    ] No update needed
[2026-10-18 05:22:58,976.976 INFO    ] Checking for camera pi updates...
[2026-10-18 05:22:59,015.015 INFO    ] 200
[2026-10-18 05:22:59,018.018 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:22:59,062.062 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:23:09,082.082 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:23:09,123.123 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:23:09,134.134 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:23:09,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:23:09,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:23:09,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:23:11,189.189 INFO    ] ================================================
[2026-10-18 05:23:11,206.206 INFO    ] Launching Daemon at Sun Oct 18 05:23:11 IST 2026
[2026-10-18 05:23:11,217.217 INFO    ] ================================================
[2026-10-18 05:23:11,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:23:11
[2026-10-18 05:23:12,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:23:12,666.666 INFO    ] Initializing speech engine...
[2026-10-18 05:23:12,677.677 INFO    ] 2026-10-18 05:23:12
[2026-10-18 05:23:12,954.954 INFO    ] 2026-10-18 05:23:12
[2026-10-18 05:23:12,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:23:13,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:23:13,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:23:13,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:23:13,548.548 INFO    ] time= 18/10/2026 05:23:13
[2026-10-18 05:23:13,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:23:13,576.576 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:23:13,690.690 INFO    ] No existing commands found in stream
[2026-10-18 05:23:18,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:23:18,718.718 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-18 05:23:21,928.928 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:23:21,930.930 INFO    ] Checking for system updates...
[2026-10-18 05:23:21,965.965 INFO    ] 200
[2026-10-18 05:23:21,968.968 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:23:22,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:23:22,022.022 INFO    ] No update needed
[2026-10-18 05:23:22,024.024 INFO    ] Checking for camera pi updates...
[2026-10-18 05:23:22,057.057 INFO    ] 200
[2026-10-18 05:23:22,060.060 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:23:22,099.099 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:23:32,114.114 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:23:32,151.151 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:23:32,161.161 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:23:32,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:23:32,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:23:32,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:23:34,217.217 INFO    ] ================================================
[2026-10-18 05:23:34,233.233 INFO    ] Launching Daemon at Sun Oct 18 05:23:34 IST 2026
[2026-10-18 05:23:34,244.244 INFO    ] ================================================
[2026-10-18 05:23:34,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:23:34
[2026-10-18 05:23:35,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:23:35,860.860 INFO    ] Initializing speech engine...
[2026-10-18 05:23:35,871.871 INFO    ] 2026-10-18 05:23:35
[2026-10-18 05:23:36,148.148 INFO    ] 2026-10-18 05:23:36
[2026-10-18 05:23:36,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:23:36,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:23:36,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:23:36,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:23:36,653.653 INFO    ] time= 18/10/2026 05:23:36
[2026-10-18 05:23:36,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:23:36,741.741 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:23:36,848.848 INFO    ] No existing commands found in stream
[2026-10-18 05:23:41,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:23:41,886.886 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-18 05:23:46,284.284 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:23:46,287.287 INFO    ] Checking for system updates...
[2026-10-18 05:23:46,322.322 INFO    ] 200
[2026-10-18 05:23:46,324.324 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:23:46,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:23:46,379.379 INFO    ] No update needed
[2026-10-18 05:23:46,381.381 INFO    ] Checking for camera pi updates...
[2026-10-18 05:23:46,414.414 INFO    ] 200
[2026-10-18 05:23:46,416.416 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:23:46,456.456 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:23:56,471.471 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:23:56,506.506 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:23:56,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:23:56,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:23:56,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:23:56,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:23:58,568.568 INFO    ] ================================================
[2026-10-18 05:23:58,584.584 INFO    ] Launching Daemon at Sun Oct 18 05:23:58 IST 2026
[2026-10-18 05:23:58,596.596 INFO    ] ================================================
[2026-10-18 05:23:59,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:23:59
[2026-10-18 05:23:59,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:24:00,033.033 INFO    ] Initializing speech engine...
[2026-10-18 05:24:00,041.041 INFO    ] 2026-10-18 05:24:00
[2026-10-18 05:24:00,334.334 INFO    ] 2026-10-18 05:24:00
[2026-10-18 05:24:00,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:24:00,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:24:00,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:24:00,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:24:00,794.794 INFO    ] time= 18/10/2026 05:24:00
[2026-10-18 05:24:00,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:24:00,912.912 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:24:01,048.048 INFO    ] No existing commands found in stream
[2026-10-18 05:24:06,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:24:06,076.076 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-18 05:24:06,743.743 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 05:24:06,746.746 INFO    ] Checking for system updates...
[2026-10-18 05:24:06,781.781 INFO    ] 200
[2026-10-18 05:24:06,784.784 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:24:06,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:24:06,838.838 INFO    ] No update needed
[2026-10-18 05:24:06,841.841 INFO    ] Checking for camera pi updates...
[2026-10-18 05:24:06,873.873 INFO    ] 200
[2026-10-18 05:24:06,876.876 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:24:06,921.921 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:24:16,935.935 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:24:16,970.970 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:24:16,979.979 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:24:16,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:24:16,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:24:16,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:24:19,031.031 INFO    ] ================================================
[2026-10-18 05:24:19,048.048 INFO    ] Launching Daemon at Sun Oct 18 05:24:19 IST 2026
[2026-10-18 05:24:19,058.058 INFO    ] ================================================
[2026-10-18 05:24:19,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:24:19
[2026-10-18 05:24:20,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:24:20,661.661 INFO    ] Initializing speech engine...
[2026-10-18 05:24:20,669.669 INFO    ] 2026-10-18 05:24:20
[2026-10-18 05:24:20,940.940 INFO    ] 2026-10-18 05:24:20
[2026-10-18 05:24:20,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:24:21,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:24:21,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:24:21,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:24:21,470.470 INFO    ] time= 18/10/2026 05:24:21
[2026-10-18 05:24:21,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:24:21,504.504 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:24:21,659.659 INFO    ] No existing commands found in stream
[2026-10-18 05:24:26,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:24:26,691.691 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-18 05:24:30,863.863 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:24:30,866.866 INFO    ] Checking for system updates...
[2026-10-18 05:24:30,901.901 INFO    ] 200
[2026-10-18 05:24:30,904.904 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:24:30,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:24:30,960.960 INFO    ] No update needed
[2026-10-18 05:24:30,962.962 INFO    ] Checking for camera pi updates...
[2026-10-18 05:24:30,999.999 INFO    ] 200
[2026-10-18 05:24:31,001.001 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:24:31,041.041 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:24:41,056.056 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:24:41,092.092 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:24:41,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:24:41,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:24:41,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:24:41,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:24:43,155.155 INFO    ] ================================================
[2026-10-18 05:24:43,171.171 INFO    ] Launching Daemon at Sun Oct 18 05:24:43 IST 2026
[2026-10-18 05:24:43,182.182 INFO    ] ================================================
[2026-10-18 05:24:43,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:24:43
[2026-10-18 05:24:44,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:24:44,601.601 INFO    ] Initializing speech engine...
[2026-10-18 05:24:44,611.611 INFO    ] 2026-10-18 05:24:44
[2026-10-18 05:24:44,870.870 INFO    ] 2026-10-18 05:24:44
[2026-10-18 05:24:44,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:24:45,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:24:45,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:24:45,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:24:45,336.336 INFO    ] time= 18/10/2026 05:24:45
[2026-10-18 05:24:45,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:24:45,419.419 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:24:45,523.523 INFO    ] No existing commands found in stream
[2026-10-18 05:24:50,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:24:50,553.553 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-18 05:24:51,748.748 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:24:51,750.750 INFO    ] Checking for system updates...
[2026-10-18 05:24:51,786.786 INFO    ] 200
[2026-10-18 05:24:51,789.789 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:24:51,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:24:51,844.844 INFO    ] No update needed
[2026-10-18 05:24:51,847.847 INFO    ] Checking for camera pi updates...
[2026-10-18 05:24:51,880.880 INFO    ] 200
[2026-10-18 05:24:51,883.883 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:24:51,923.923 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:25:01,960.960 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:25:02,049.049 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:25:02,070.070 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:25:02,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:25:02,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:25:02,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:25:04,133.133 INFO    ] ================================================
[2026-10-18 05:25:04,152.152 INFO    ] Launching Daemon at Sun Oct 18 05:25:04 IST 2026
[2026-10-18 05:25:04,164.164 INFO    ] ================================================
[2026-10-18 05:25:04,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:25:04
[2026-10-18 05:25:05,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:25:05,569.569 INFO    ] Initializing speech engine...
[2026-10-18 05:25:05,593.593 INFO    ] 2026-10-18 05:25:05
[2026-10-18 05:25:05,847.847 INFO    ] 2026-10-18 05:25:05
[2026-10-18 05:25:05,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:25:06,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:25:06,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:25:06,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:25:06,321.321 INFO    ] time= 18/10/2026 05:25:06
[2026-10-18 05:25:06,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:25:06,427.427 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:25:06,585.585 INFO    ] No existing commands found in stream
[2026-10-18 05:25:11,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:25:11,603.603 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-18 05:25:12,543.543 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:25:12,546.546 INFO    ] Checking for system updates...
[2026-10-18 05:25:12,583.583 INFO    ] 200
[2026-10-18 05:25:12,585.585 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:25:12,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:25:12,639.639 INFO    ] No update needed
[2026-10-18 05:25:12,642.642 INFO    ] Checking for camera pi updates...
[2026-10-18 05:25:12,675.675 INFO    ] 200
[2026-10-18 05:25:12,678.678 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:25:12,722.722 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:25:22,734.734 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:25:22,769.769 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:25:22,779.779 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:25:22,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:25:22,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:25:22,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:25:24,830.830 INFO    ] ================================================
[2026-10-18 05:25:24,846.846 INFO    ] Launching Daemon at Sun Oct 18 05:25:24 IST 2026
[2026-10-18 05:25:24,858.858 INFO    ] ================================================
[2026-10-18 05:25:25,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:25:25
[2026-10-18 05:25:26,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:25:26,460.460 INFO    ] Initializing speech engine...
[2026-10-18 05:25:26,471.471 INFO    ] 2026-10-18 05:25:26
[2026-10-18 05:25:26,760.760 INFO    ] 2026-10-18 05:25:26
[2026-10-18 05:25:26,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:25:27,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:25:27,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:25:27,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:25:27,300.300 INFO    ] time= 18/10/2026 05:25:27
[2026-10-18 05:25:27,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:25:27,328.328 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:25:27,457.457 INFO    ] No existing commands found in stream
[2026-10-18 05:25:32,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:25:32,481.481 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-18 05:25:35,540.540 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:25:35,543.543 INFO    ] Checking for system updates...
[2026-10-18 05:25:35,579.579 INFO    ] 200
[2026-10-18 05:25:35,582.582 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:25:35,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:25:35,643.643 INFO    ] No update needed
[2026-10-18 05:25:35,646.646 INFO    ] Checking for camera pi updates...
[2026-10-18 05:25:35,681.681 INFO    ] 200
[2026-10-18 05:25:35,683.683 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:25:35,724.724 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:25:45,741.741 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:25:45,780.780 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:25:45,791.791 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:25:45,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:25:45,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:25:45,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:25:47,845.845 INFO    ] ================================================
[2026-10-18 05:25:47,861.861 INFO    ] Launching Daemon at Sun Oct 18 05:25:47 IST 2026
[2026-10-18 05:25:47,871.871 INFO    ] ================================================
[2026-10-18 05:25:48,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:25:48
[2026-10-18 05:25:49,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:25:49,277.277 INFO    ] Initializing speech engine...
[2026-10-18 05:25:49,292.292 INFO    ] 2026-10-18 05:25:49
[2026-10-18 05:25:49,573.573 INFO    ] 2026-10-18 05:25:49
[2026-10-18 05:25:49,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:25:49,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:25:49,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:25:49,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:25:49,990.990 INFO    ] time= 18/10/2026 05:25:49
[2026-10-18 05:25:49,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:25:50,009.009 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:25:50,144.144 INFO    ] No existing commands found in stream
[2026-10-18 05:25:55,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:25:55,172.172 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-18 05:25:59,604.604 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:25:59,606.606 INFO    ] Checking for system updates...
[2026-10-18 05:25:59,645.645 INFO    ] 200
[2026-10-18 05:25:59,647.647 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:25:59,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:25:59,708.708 INFO    ] No update needed
[2026-10-18 05:25:59,710.710 INFO    ] Checking for camera pi updates...
[2026-10-18 05:25:59,744.744 INFO    ] 200
[2026-10-18 05:25:59,746.746 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:25:59,787.787 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:26:09,802.802 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:26:09,837.837 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:26:09,846.846 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:26:09,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:26:09,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:26:09,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:26:11,899.899 INFO    ] ================================================
[2026-10-18 05:26:11,914.914 INFO    ] Launching Daemon at Sun Oct 18 05:26:11 IST 2026
[2026-10-18 05:26:11,926.926 INFO    ] ================================================
[2026-10-18 05:26:12,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:26:12
[2026-10-18 05:26:13,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:26:13,539.539 INFO    ] Initializing speech engine...
[2026-10-18 05:26:13,548.548 INFO    ] 2026-10-18 05:26:13
[2026-10-18 05:26:13,821.821 INFO    ] 2026-10-18 05:26:13
[2026-10-18 05:26:13,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:26:14,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:26:14,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:26:14,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:26:14,302.302 INFO    ] time= 18/10/2026 05:26:14
[2026-10-18 05:26:14,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:26:14,400.400 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:26:14,567.567 INFO    ] No existing commands found in stream
[2026-10-18 05:26:19,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:26:19,596.596 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-18 05:26:22,200.200 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:26:22,203.203 INFO    ] Checking for system updates...
[2026-10-18 05:26:22,239.239 INFO    ] 200
[2026-10-18 05:26:22,242.242 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:26:22,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:26:22,299.299 INFO    ] No update needed
[2026-10-18 05:26:22,301.301 INFO    ] Checking for camera pi updates...
[2026-10-18 05:26:22,340.340 INFO    ] 200
[2026-10-18 05:26:22,343.343 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:26:22,395.395 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:26:32,412.412 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:26:32,460.460 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:26:32,472.472 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:26:32,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:26:32,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:26:32,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:26:34,530.530 INFO    ] ================================================
[2026-10-18 05:26:34,546.546 INFO    ] Launching Daemon at Sun Oct 18 05:26:34 IST 2026
[2026-10-18 05:26:34,557.557 INFO    ] ================================================
[2026-10-18 05:26:35,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:26:35
[2026-10-18 05:26:35,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:26:36,182.182 INFO    ] Initializing speech engine...
[2026-10-18 05:26:36,195.195 INFO    ] 2026-10-18 05:26:36
[2026-10-18 05:26:36,478.478 INFO    ] 2026-10-18 05:26:36
[2026-10-18 05:26:36,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:26:36,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:26:36,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:26:37,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:26:37,027.027 INFO    ] time= 18/10/2026 05:26:37
[2026-10-18 05:26:37,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:26:37,076.076 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:26:37,187.187 INFO    ] No existing commands found in stream
[2026-10-18 05:26:42,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:26:42,219.219 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-18 05:26:45,010.010 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:26:45,013.013 INFO    ] Checking for system updates...
[2026-10-18 05:26:45,050.050 INFO    ] 200
[2026-10-18 05:26:45,053.053 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:26:45,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:26:45,108.108 INFO    ] No update needed
[2026-10-18 05:26:45,111.111 INFO    ] Checking for camera pi updates...
[2026-10-18 05:26:45,148.148 INFO    ] 200
[2026-10-18 05:26:45,151.151 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:26:45,204.204 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:26:55,219.219 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:26:55,258.258 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:26:55,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:26:55,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:26:55,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:26:55,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:26:57,324.324 INFO    ] ================================================
[2026-10-18 05:26:57,339.339 INFO    ] Launching Daemon at Sun Oct 18 05:26:57 IST 2026
[2026-10-18 05:26:57,350.350 INFO    ] ================================================
[2026-10-18 05:26:57,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:26:57
[2026-10-18 05:26:58,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:26:58,809.809 INFO    ] Initializing speech engine...
[2026-10-18 05:26:58,818.818 INFO    ] 2026-10-18 05:26:58
[2026-10-18 05:26:59,106.106 INFO    ] 2026-10-18 05:26:59
[2026-10-18 05:26:59,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:26:59,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:26:59,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:26:59,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:26:59,663.663 INFO    ] time= 18/10/2026 05:26:59
[2026-10-18 05:26:59,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:26:59,711.711 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:26:59,841.841 INFO    ] No existing commands found in stream
[2026-10-18 05:27:04,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:27:04,881.881 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-18 05:27:06,641.641 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:27:06,644.644 INFO    ] Checking for system updates...
[2026-10-18 05:27:06,680.680 INFO    ] 200
[2026-10-18 05:27:06,683.683 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:27:06,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:27:06,739.739 INFO    ] No update needed
[2026-10-18 05:27:06,741.741 INFO    ] Checking for camera pi updates...
[2026-10-18 05:27:06,774.774 INFO    ] 200
[2026-10-18 05:27:06,777.777 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:27:06,817.817 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:27:16,832.832 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2e150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:27:16,867.867 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:27:16,876.876 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:27:16,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:27:16,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:27:16,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:27:18,929.929 INFO    ] ================================================
[2026-10-18 05:27:18,945.945 INFO    ] Launching Daemon at Sun Oct 18 05:27:18 IST 2026
[2026-10-18 05:27:18,955.955 INFO    ] ================================================
[2026-10-18 05:27:19,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:27:19
[2026-10-18 05:27:20,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:27:20,427.427 INFO    ] Initializing speech engine...
[2026-10-18 05:27:20,436.436 INFO    ] 2026-10-18 05:27:20
[2026-10-18 05:27:20,684.684 INFO    ] 2026-10-18 05:27:20
[2026-10-18 05:27:20,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:27:20,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:27:20,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:27:21,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:27:21,239.239 INFO    ] time= 18/10/2026 05:27:21
[2026-10-18 05:27:21,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:27:21,262.262 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:27:21,378.378 INFO    ] No existing commands found in stream
[2026-10-18 05:27:26,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:27:26,405.405 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-18 05:27:29,652.652 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 05:27:29,655.655 INFO    ] Checking for system updates...
[2026-10-18 05:27:29,691.691 INFO    ] 200
[2026-10-18 05:27:29,694.694 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:27:29,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:27:29,757.757 INFO    ] No update needed
[2026-10-18 05:27:29,759.759 INFO    ] Checking for camera pi updates...
[2026-10-18 05:27:29,792.792 INFO    ] 200
[2026-10-18 05:27:29,794.794 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:27:29,834.834 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:27:39,848.848 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:27:39,883.883 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:27:39,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:27:39,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:27:39,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:27:39,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:27:41,947.947 INFO    ] ================================================
[2026-10-18 05:27:41,963.963 INFO    ] Launching Daemon at Sun Oct 18 05:27:41 IST 2026
[2026-10-18 05:27:41,974.974 INFO    ] ================================================
[2026-10-18 05:27:42,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:27:42
[2026-10-18 05:27:43,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:27:43,402.402 INFO    ] Initializing speech engine...
[2026-10-18 05:27:43,411.411 INFO    ] 2026-10-18 05:27:43
[2026-10-18 05:27:43,662.662 INFO    ] 2026-10-18 05:27:43
[2026-10-18 05:27:43,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:27:43,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:27:43,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:27:44,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:27:44,220.220 INFO    ] time= 18/10/2026 05:27:44
[2026-10-18 05:27:44,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:27:44,261.261 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:27:44,409.409 INFO    ] No existing commands found in stream
[2026-10-18 05:27:49,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:27:49,443.443 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-18 05:27:50,462.462 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:27:50,466.466 INFO    ] Checking for system updates...
[2026-10-18 05:27:50,502.502 INFO    ] 200
[2026-10-18 05:27:50,505.505 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:27:50,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:27:50,561.561 INFO    ] No update needed
[2026-10-18 05:27:50,564.564 INFO    ] Checking for camera pi updates...
[2026-10-18 05:27:50,602.602 INFO    ] 200
[2026-10-18 05:27:50,605.605 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:27:50,651.651 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:28:00,668.668 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:28:00,708.708 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:28:00,720.720 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:28:00,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:28:00,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:28:00,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:28:02,788.788 INFO    ] ================================================
[2026-10-18 05:28:02,805.805 INFO    ] Launching Daemon at Sun Oct 18 05:28:02 IST 2026
[2026-10-18 05:28:02,821.821 INFO    ] ================================================
[2026-10-18 05:28:03,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:28:03
[2026-10-18 05:28:04,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:28:04,373.373 INFO    ] Initializing speech engine...
[2026-10-18 05:28:04,381.381 INFO    ] 2026-10-18 05:28:04
[2026-10-18 05:28:04,678.678 INFO    ] 2026-10-18 05:28:04
[2026-10-18 05:28:04,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:28:04,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:28:04,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:28:05,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:28:05,106.106 INFO    ] time= 18/10/2026 05:28:05
[2026-10-18 05:28:05,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:28:05,144.144 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:28:05,275.275 INFO    ] No existing commands found in stream
[2026-10-18 05:28:10,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:28:10,303.303 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-18 05:28:12,464.464 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:28:12,466.466 INFO    ] Checking for system updates...
[2026-10-18 05:28:12,501.501 INFO    ] 200
[2026-10-18 05:28:12,504.504 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:28:12,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:28:12,558.558 INFO    ] No update needed
[2026-10-18 05:28:12,560.560 INFO    ] Checking for camera pi updates...
[2026-10-18 05:28:12,594.594 INFO    ] 200
[2026-10-18 05:28:12,597.597 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:28:12,640.640 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:28:22,655.655 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:28:22,690.690 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:28:22,700.700 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:28:22,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:28:22,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:28:22,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:28:24,752.752 INFO    ] ================================================
[2026-10-18 05:28:24,767.767 INFO    ] Launching Daemon at Sun Oct 18 05:28:24 IST 2026
[2026-10-18 05:28:24,778.778 INFO    ] ================================================
[2026-10-18 05:28:25,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:28:25
[2026-10-18 05:28:25,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:28:26,180.180 INFO    ] Initializing speech engine...
[2026-10-18 05:28:26,186.186 INFO    ] 2026-10-18 05:28:26
[2026-10-18 05:28:26,464.464 INFO    ] 2026-10-18 05:28:26
[2026-10-18 05:28:26,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:28:26,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:28:26,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:28:26,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:28:26,972.972 INFO    ] time= 18/10/2026 05:28:26
[2026-10-18 05:28:27,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:28:27,057.057 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:28:27,199.199 INFO    ] No existing commands found in stream
[2026-10-18 05:28:32,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:28:32,221.221 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-18 05:28:36,623.623 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 05:28:36,625.625 INFO    ] Checking for system updates...
[2026-10-18 05:28:36,662.662 INFO    ] 200
[2026-10-18 05:28:36,666.666 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:28:36,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:28:36,733.733 INFO    ] No update needed
[2026-10-18 05:28:36,736.736 INFO    ] Checking for camera pi updates...
[2026-10-18 05:28:36,771.771 INFO    ] 200
[2026-10-18 05:28:36,774.774 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:28:36,821.821 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:28:46,840.840 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:28:46,881.881 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:28:46,893.893 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:28:46,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:28:46,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:28:46,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:28:48,948.948 INFO    ] ================================================
[2026-10-18 05:28:48,971.971 INFO    ] Launching Daemon at Sun Oct 18 05:28:48 IST 2026
[2026-10-18 05:28:48,982.982 INFO    ] ================================================
[2026-10-18 05:28:49,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:28:49
[2026-10-18 05:28:50,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:28:50,437.437 INFO    ] Initializing speech engine...
[2026-10-18 05:28:50,457.457 INFO    ] 2026-10-18 05:28:50
[2026-10-18 05:28:50,731.731 INFO    ] 2026-10-18 05:28:50
[2026-10-18 05:28:50,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:28:50,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:28:51,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:28:51,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:28:51,162.162 INFO    ] time= 18/10/2026 05:28:51
[2026-10-18 05:28:51,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:28:51,172.172 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:28:51,247.247 INFO    ] No existing commands found in stream
[2026-10-18 05:28:56,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:28:56,263.263 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-18 05:28:57,287.287 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:28:57,290.290 INFO    ] Checking for system updates...
[2026-10-18 05:28:57,327.327 INFO    ] 200
[2026-10-18 05:28:57,330.330 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:28:57,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:28:57,393.393 INFO    ] No update needed
[2026-10-18 05:28:57,395.395 INFO    ] Checking for camera pi updates...
[2026-10-18 05:28:57,428.428 INFO    ] 200
[2026-10-18 05:28:57,430.430 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:28:57,470.470 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:29:07,485.485 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:29:07,520.520 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:29:07,529.529 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:29:07,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:29:07,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:29:07,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:29:09,581.581 INFO    ] ================================================
[2026-10-18 05:29:09,596.596 INFO    ] Launching Daemon at Sun Oct 18 05:29:09 IST 2026
[2026-10-18 05:29:09,607.607 INFO    ] ================================================
[2026-10-18 05:29:10,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:29:10
[2026-10-18 05:29:10,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:29:11,029.029 INFO    ] Initializing speech engine...
[2026-10-18 05:29:11,050.050 INFO    ] 2026-10-18 05:29:11
[2026-10-18 05:29:11,331.331 INFO    ] 2026-10-18 05:29:11
[2026-10-18 05:29:11,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:29:11,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:29:11,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:29:11,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:29:11,764.764 INFO    ] time= 18/10/2026 05:29:11
[2026-10-18 05:29:11,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:29:11,802.802 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:29:11,914.914 INFO    ] No existing commands found in stream
[2026-10-18 05:29:16,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:29:16,942.942 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-18 05:29:18,078.078 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:29:18,081.081 INFO    ] Checking for system updates...
[2026-10-18 05:29:18,117.117 INFO    ] 200
[2026-10-18 05:29:18,120.120 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:29:18,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:29:18,176.176 INFO    ] No update needed
[2026-10-18 05:29:18,178.178 INFO    ] Checking for camera pi updates...
[2026-10-18 05:29:18,211.211 INFO    ] 200
[2026-10-18 05:29:18,214.214 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:29:18,255.255 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:29:28,266.266 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:29:28,301.301 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:29:28,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:29:28,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:29:28,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:29:28,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:29:30,363.363 INFO    ] ================================================
[2026-10-18 05:29:30,379.379 INFO    ] Launching Daemon at Sun Oct 18 05:29:30 IST 2026
[2026-10-18 05:29:30,389.389 INFO    ] ================================================
[2026-10-18 05:29:30,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:29:30
[2026-10-18 05:29:31,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:29:31,846.846 INFO    ] Initializing speech engine...
[2026-10-18 05:29:31,858.858 INFO    ] 2026-10-18 05:29:31
[2026-10-18 05:29:32,140.140 INFO    ] 2026-10-18 05:29:32
[2026-10-18 05:29:32,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:29:32,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:29:32,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:29:32,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:29:32,663.663 INFO    ] time= 18/10/2026 05:29:32
[2026-10-18 05:29:32,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:29:32,735.735 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:29:32,888.888 INFO    ] No existing commands found in stream
[2026-10-18 05:29:37,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:29:37,919.919 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-18 05:29:40,682.682 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:29:40,685.685 INFO    ] Checking for system updates...
[2026-10-18 05:29:40,721.721 INFO    ] 200
[2026-10-18 05:29:40,723.723 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:29:40,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:29:40,777.777 INFO    ] No update needed
[2026-10-18 05:29:40,780.780 INFO    ] Checking for camera pi updates...
[2026-10-18 05:29:40,813.813 INFO    ] 200
[2026-10-18 05:29:40,816.816 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:29:40,862.862 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:29:50,879.879 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:29:50,919.919 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:29:50,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:29:50,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:29:50,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:29:50,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:29:52,988.988 INFO    ] ================================================
[2026-10-18 05:29:53,003.003 INFO    ] Launching Daemon at Sun Oct 18 05:29:52 IST 2026
[2026-10-18 05:29:53,014.014 INFO    ] ================================================
[2026-10-18 05:29:53,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:29:53
[2026-10-18 05:29:54,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:29:54,419.419 INFO    ] Initializing speech engine...
[2026-10-18 05:29:54,426.426 INFO    ] 2026-10-18 05:29:54
[2026-10-18 05:29:54,721.721 INFO    ] 2026-10-18 05:29:54
[2026-10-18 05:29:54,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:29:54,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:29:54,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:29:55,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:29:55,148.148 INFO    ] time= 18/10/2026 05:29:55
[2026-10-18 05:29:55,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:29:55,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:29:55,236.236 INFO    ] No existing commands found in stream
[2026-10-18 05:30:00,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:30:00,264.264 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-18 05:30:09,098.098 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 05:30:09,101.101 INFO    ] Checking for system updates...
[2026-10-18 05:30:09,140.140 INFO    ] 200
[2026-10-18 05:30:09,143.143 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:30:09,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:30:09,204.204 INFO    ] No update needed
[2026-10-18 05:30:09,207.207 INFO    ] Checking for camera pi updates...
[2026-10-18 05:30:09,244.244 INFO    ] 200
[2026-10-18 05:30:09,247.247 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:30:09,288.288 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:30:19,303.303 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:30:19,339.339 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:30:19,353.353 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:30:19,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:30:19,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:30:19,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:30:21,405.405 INFO    ] ================================================
[2026-10-18 05:30:21,421.421 INFO    ] Launching Daemon at Sun Oct 18 05:30:21 IST 2026
[2026-10-18 05:30:21,431.431 INFO    ] ================================================
[2026-10-18 05:30:22,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:30:22
[2026-10-18 05:30:22,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:30:23,160.160 INFO    ] Initializing speech engine...
[2026-10-18 05:30:23,172.172 INFO    ] 2026-10-18 05:30:23
[2026-10-18 05:30:23,479.479 INFO    ] 2026-10-18 05:30:23
[2026-10-18 05:30:23,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:30:23,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:30:23,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:30:23,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:30:24,009.009 INFO    ] time= 18/10/2026 05:30:23
[2026-10-18 05:30:24,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:30:24,107.107 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:30:24,245.245 INFO    ] No existing commands found in stream
[2026-10-18 05:30:29,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:30:29,264.264 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-18 05:30:30,225.225 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:30:30,227.227 INFO    ] Checking for system updates...
[2026-10-18 05:30:30,263.263 INFO    ] 200
[2026-10-18 05:30:30,266.266 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:30:30,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:30:30,320.320 INFO    ] No update needed
[2026-10-18 05:30:30,322.322 INFO    ] Checking for camera pi updates...
[2026-10-18 05:30:30,356.356 INFO    ] 200
[2026-10-18 05:30:30,359.359 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:30:30,399.399 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:30:40,414.414 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:30:40,449.449 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:30:40,459.459 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:30:40,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:30:40,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:30:40,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:30:42,512.512 INFO    ] ================================================
[2026-10-18 05:30:42,527.527 INFO    ] Launching Daemon at Sun Oct 18 05:30:42 IST 2026
[2026-10-18 05:30:42,538.538 INFO    ] ================================================
[2026-10-18 05:30:43,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:30:43
[2026-10-18 05:30:43,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:30:43,985.985 INFO    ] Initializing speech engine...
[2026-10-18 05:30:44,001.001 INFO    ] 2026-10-18 05:30:43
[2026-10-18 05:30:44,293.293 INFO    ] 2026-10-18 05:30:44
[2026-10-18 05:30:44,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:30:44,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:30:44,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:30:44,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:30:44,726.726 INFO    ] time= 18/10/2026 05:30:44
[2026-10-18 05:30:44,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:30:44,761.761 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:30:44,883.883 INFO    ] No existing commands found in stream
[2026-10-18 05:30:49,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:30:49,911.911 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-18 05:30:53,218.218 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:30:53,220.220 INFO    ] Checking for system updates...
[2026-10-18 05:30:53,257.257 INFO    ] 200
[2026-10-18 05:30:53,259.259 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:30:53,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:30:53,321.321 INFO    ] No update needed
[2026-10-18 05:30:53,323.323 INFO    ] Checking for camera pi updates...
[2026-10-18 05:30:53,356.356 INFO    ] 200
[2026-10-18 05:30:53,358.358 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:30:53,406.406 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:31:03,420.420 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:31:03,455.455 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:31:03,464.464 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:31:03,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:31:03,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:31:03,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:31:05,517.517 INFO    ] ================================================
[2026-10-18 05:31:05,532.532 INFO    ] Launching Daemon at Sun Oct 18 05:31:05 IST 2026
[2026-10-18 05:31:05,543.543 INFO    ] ================================================
[2026-10-18 05:31:06,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:31:06
[2026-10-18 05:31:06,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:31:07,006.006 INFO    ] Initializing speech engine...
[2026-10-18 05:31:07,013.013 INFO    ] 2026-10-18 05:31:07
[2026-10-18 05:31:07,261.261 INFO    ] 2026-10-18 05:31:07
[2026-10-18 05:31:07,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:31:07,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:31:07,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:31:07,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:31:07,758.758 INFO    ] time= 18/10/2026 05:31:07
[2026-10-18 05:31:07,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:31:07,834.834 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:31:07,968.968 INFO    ] No existing commands found in stream
[2026-10-18 05:31:12,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:31:12,995.995 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-18 05:31:14,483.483 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:31:14,486.486 INFO    ] Checking for system updates...
[2026-10-18 05:31:14,525.525 INFO    ] 200
[2026-10-18 05:31:14,528.528 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:31:14,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:31:14,600.600 INFO    ] No update needed
[2026-10-18 05:31:14,603.603 INFO    ] Checking for camera pi updates...
[2026-10-18 05:31:14,637.637 INFO    ] 200
[2026-10-18 05:31:14,639.639 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:31:14,681.681 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:31:24,697.697 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:31:24,731.731 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:31:24,741.741 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:31:24,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:31:24,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:31:24,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:31:26,793.793 INFO    ] ================================================
[2026-10-18 05:31:26,809.809 INFO    ] Launching Daemon at Sun Oct 18 05:31:26 IST 2026
[2026-10-18 05:31:26,819.819 INFO    ] ================================================
[2026-10-18 05:31:27,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:31:27
[2026-10-18 05:31:28,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:31:28,280.280 INFO    ] Initializing speech engine...
[2026-10-18 05:31:28,288.288 INFO    ] 2026-10-18 05:31:28
[2026-10-18 05:31:28,539.539 INFO    ] 2026-10-18 05:31:28
[2026-10-18 05:31:28,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:31:28,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:31:28,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:31:29,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:31:29,096.096 INFO    ] time= 18/10/2026 05:31:29
[2026-10-18 05:31:29,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:31:29,121.121 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:31:29,272.272 INFO    ] No existing commands found in stream
[2026-10-18 05:31:34,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:31:34,305.305 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-18 05:31:38,811.811 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:31:38,814.814 INFO    ] Checking for system updates...
[2026-10-18 05:31:38,850.850 INFO    ] 200
[2026-10-18 05:31:38,853.853 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:31:38,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:31:38,914.914 INFO    ] No update needed
[2026-10-18 05:31:38,917.917 INFO    ] Checking for camera pi updates...
[2026-10-18 05:31:38,950.950 INFO    ] 200
[2026-10-18 05:31:38,953.953 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:31:38,997.997 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:31:49,013.013 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:31:49,049.049 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:31:49,059.059 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:31:49,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:31:49,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:31:49,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:31:51,112.112 INFO    ] ================================================
[2026-10-18 05:31:51,127.127 INFO    ] Launching Daemon at Sun Oct 18 05:31:51 IST 2026
[2026-10-18 05:31:51,138.138 INFO    ] ================================================
[2026-10-18 05:31:51,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:31:51
[2026-10-18 05:31:52,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:31:52,563.563 INFO    ] Initializing speech engine...
[2026-10-18 05:31:52,570.570 INFO    ] 2026-10-18 05:31:52
[2026-10-18 05:31:52,822.822 INFO    ] 2026-10-18 05:31:52
[2026-10-18 05:31:52,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:31:53,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:31:53,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:31:53,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:31:53,326.326 INFO    ] time= 18/10/2026 05:31:53
[2026-10-18 05:31:53,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:31:53,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:31:53,526.526 INFO    ] No existing commands found in stream
[2026-10-18 05:31:58,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:31:58,553.553 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-18 05:32:01,634.634 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:32:01,638.638 INFO    ] Checking for system updates...
[2026-10-18 05:32:01,687.687 INFO    ] 200
[2026-10-18 05:32:01,691.691 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:32:01,823.823 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:32:01,827.827 INFO    ] No update needed
[2026-10-18 05:32:01,831.831 INFO    ] Checking for camera pi updates...
[2026-10-18 05:32:01,879.879 INFO    ] 200
[2026-10-18 05:32:01,882.882 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:32:01,929.929 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:32:11,944.944 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:32:11,979.979 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:32:11,988.988 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:32:11,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:32:12,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:32:12,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:32:14,049.049 INFO    ] ================================================
[2026-10-18 05:32:14,064.064 INFO    ] Launching Daemon at Sun Oct 18 05:32:14 IST 2026
[2026-10-18 05:32:14,075.075 INFO    ] ================================================
[2026-10-18 05:32:14,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:32:14
[2026-10-18 05:32:15,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:32:15,540.540 INFO    ] Initializing speech engine...
[2026-10-18 05:32:15,549.549 INFO    ] 2026-10-18 05:32:15
[2026-10-18 05:32:15,817.817 INFO    ] 2026-10-18 05:32:15
[2026-10-18 05:32:15,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:32:16,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:32:16,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:32:16,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:32:16,290.290 INFO    ] time= 18/10/2026 05:32:16
[2026-10-18 05:32:16,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:32:16,414.414 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:32:16,566.566 INFO    ] No existing commands found in stream
[2026-10-18 05:32:21,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:32:21,583.583 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-18 05:32:25,644.644 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:32:25,646.646 INFO    ] Checking for system updates...
[2026-10-18 05:32:25,683.683 INFO    ] 200
[2026-10-18 05:32:25,686.686 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:32:25,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:32:25,741.741 INFO    ] No update needed
[2026-10-18 05:32:25,743.743 INFO    ] Checking for camera pi updates...
[2026-10-18 05:32:25,777.777 INFO    ] 200
[2026-10-18 05:32:25,780.780 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:32:25,820.820 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:32:35,834.834 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:32:35,870.870 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:32:35,880.880 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:32:35,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:32:35,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:32:35,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:32:37,932.932 INFO    ] ================================================
[2026-10-18 05:32:37,947.947 INFO    ] Launching Daemon at Sun Oct 18 05:32:37 IST 2026
[2026-10-18 05:32:37,958.958 INFO    ] ================================================
[2026-10-18 05:32:38,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:32:38
[2026-10-18 05:32:39,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:32:39,413.413 INFO    ] Initializing speech engine...
[2026-10-18 05:32:39,428.428 INFO    ] 2026-10-18 05:32:39
[2026-10-18 05:32:39,695.695 INFO    ] 2026-10-18 05:32:39
[2026-10-18 05:32:39,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:32:39,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:32:39,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:32:40,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:32:40,264.264 INFO    ] time= 18/10/2026 05:32:40
[2026-10-18 05:32:40,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:32:40,288.288 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:32:40,407.407 INFO    ] No existing commands found in stream
[2026-10-18 05:32:45,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:32:45,434.434 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-18 05:32:47,372.372 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:32:47,375.375 INFO    ] Checking for system updates...
[2026-10-18 05:32:47,411.411 INFO    ] 200
[2026-10-18 05:32:47,413.413 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:32:47,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:32:47,469.469 INFO    ] No update needed
[2026-10-18 05:32:47,471.471 INFO    ] Checking for camera pi updates...
[2026-10-18 05:32:47,504.504 INFO    ] 200
[2026-10-18 05:32:47,507.507 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:32:47,552.552 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:32:57,567.567 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:32:57,602.602 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:32:57,611.611 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:32:57,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:32:57,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:32:57,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:32:59,664.664 INFO    ] ================================================
[2026-10-18 05:32:59,679.679 INFO    ] Launching Daemon at Sun Oct 18 05:32:59 IST 2026
[2026-10-18 05:32:59,690.690 INFO    ] ================================================
[2026-10-18 05:33:00,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:33:00
[2026-10-18 05:33:00,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:33:01,146.146 INFO    ] Initializing speech engine...
[2026-10-18 05:33:01,153.153 INFO    ] 2026-10-18 05:33:01
[2026-10-18 05:33:01,423.423 INFO    ] 2026-10-18 05:33:01
[2026-10-18 05:33:01,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:33:01,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:33:01,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:33:01,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:33:01,971.971 INFO    ] time= 18/10/2026 05:33:01
[2026-10-18 05:33:01,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:33:02,017.017 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:33:02,111.111 INFO    ] No existing commands found in stream
[2026-10-18 05:33:07,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:33:07,130.130 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-18 05:33:10,381.381 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:33:10,383.383 INFO    ] Checking for system updates...
[2026-10-18 05:33:10,420.420 INFO    ] 200
[2026-10-18 05:33:10,423.423 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:33:10,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:33:10,478.478 INFO    ] No update needed
[2026-10-18 05:33:10,480.480 INFO    ] Checking for camera pi updates...
[2026-10-18 05:33:10,517.517 INFO    ] 200
[2026-10-18 05:33:10,520.520 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:33:10,559.559 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:33:20,575.575 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:33:20,609.609 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:33:20,619.619 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:33:20,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:33:20,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:33:20,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:33:22,671.671 INFO    ] ================================================
[2026-10-18 05:33:22,686.686 INFO    ] Launching Daemon at Sun Oct 18 05:33:22 IST 2026
[2026-10-18 05:33:22,696.696 INFO    ] ================================================
[2026-10-18 05:33:23,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:33:23
[2026-10-18 05:33:23,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:33:24,112.112 INFO    ] Initializing speech engine...
[2026-10-18 05:33:24,122.122 INFO    ] 2026-10-18 05:33:24
[2026-10-18 05:33:24,384.384 INFO    ] 2026-10-18 05:33:24
[2026-10-18 05:33:24,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:33:24,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:33:24,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:33:24,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:33:24,923.923 INFO    ] time= 18/10/2026 05:33:24
[2026-10-18 05:33:24,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:33:24,947.947 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:33:25,072.072 INFO    ] No existing commands found in stream
[2026-10-18 05:33:30,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:33:30,089.089 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-18 05:33:33,739.739 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:33:33,741.741 INFO    ] Checking for system updates...
[2026-10-18 05:33:33,779.779 INFO    ] 200
[2026-10-18 05:33:33,781.781 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:33:33,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:33:33,836.836 INFO    ] No update needed
[2026-10-18 05:33:33,838.838 INFO    ] Checking for camera pi updates...
[2026-10-18 05:33:33,873.873 INFO    ] 200
[2026-10-18 05:33:33,876.876 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:33:33,916.916 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:33:43,931.931 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:33:43,966.966 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:33:43,976.976 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:33:43,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:33:43,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:33:43,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:33:46,028.028 INFO    ] ================================================
[2026-10-18 05:33:46,043.043 INFO    ] Launching Daemon at Sun Oct 18 05:33:46 IST 2026
[2026-10-18 05:33:46,054.054 INFO    ] ================================================
[2026-10-18 05:33:46,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:33:46
[2026-10-18 05:33:47,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:33:47,484.484 INFO    ] Initializing speech engine...
[2026-10-18 05:33:47,491.491 INFO    ] 2026-10-18 05:33:47
[2026-10-18 05:33:47,749.749 INFO    ] 2026-10-18 05:33:47
[2026-10-18 05:33:47,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:33:48,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:33:48,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:33:48,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:33:48,237.237 INFO    ] time= 18/10/2026 05:33:48
[2026-10-18 05:33:48,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:33:48,300.300 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:33:48,446.446 INFO    ] No existing commands found in stream
[2026-10-18 05:33:53,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:33:53,460.460 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-18 05:33:55,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:33:55,249.249 INFO    ] Checking for system updates...
[2026-10-18 05:33:55,285.285 INFO    ] 200
[2026-10-18 05:33:55,287.287 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:33:55,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:33:55,342.342 INFO    ] No update needed
[2026-10-18 05:33:55,345.345 INFO    ] Checking for camera pi updates...
[2026-10-18 05:33:55,378.378 INFO    ] 200
[2026-10-18 05:33:55,380.380 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:33:55,423.423 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:34:05,439.439 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:34:05,478.478 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:34:05,488.488 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:34:05,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:34:05,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:34:05,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:34:07,540.540 INFO    ] ================================================
[2026-10-18 05:34:07,556.556 INFO    ] Launching Daemon at Sun Oct 18 05:34:07 IST 2026
[2026-10-18 05:34:07,567.567 INFO    ] ================================================
[2026-10-18 05:34:08,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:34:08
[2026-10-18 05:34:08,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:34:09,025.025 INFO    ] Initializing speech engine...
[2026-10-18 05:34:09,041.041 INFO    ] 2026-10-18 05:34:09
[2026-10-18 05:34:09,312.312 INFO    ] 2026-10-18 05:34:09
[2026-10-18 05:34:09,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:34:09,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:34:09,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:34:09,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:34:09,725.725 INFO    ] time= 18/10/2026 05:34:09
[2026-10-18 05:34:09,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:34:09,765.765 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:34:09,919.919 INFO    ] No existing commands found in stream
[2026-10-18 05:34:14,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:34:14,947.947 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-18 05:34:16,458.458 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:34:16,460.460 INFO    ] Checking for system updates...
[2026-10-18 05:34:16,497.497 INFO    ] 200
[2026-10-18 05:34:16,499.499 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:34:16,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:34:16,557.557 INFO    ] No update needed
[2026-10-18 05:34:16,560.560 INFO    ] Checking for camera pi updates...
[2026-10-18 05:34:16,594.594 INFO    ] 200
[2026-10-18 05:34:16,597.597 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:34:16,643.643 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:34:26,659.659 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:34:26,694.694 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:34:26,704.704 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:34:26,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:34:26,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:34:26,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:34:28,758.758 INFO    ] ================================================
[2026-10-18 05:34:28,774.774 INFO    ] Launching Daemon at Sun Oct 18 05:34:28 IST 2026
[2026-10-18 05:34:28,786.786 INFO    ] ================================================
[2026-10-18 05:34:29,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:34:29
[2026-10-18 05:34:29,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:34:30,192.192 INFO    ] Initializing speech engine...
[2026-10-18 05:34:30,201.201 INFO    ] 2026-10-18 05:34:30
[2026-10-18 05:34:30,491.491 INFO    ] 2026-10-18 05:34:30
[2026-10-18 05:34:30,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:34:30,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:34:30,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:34:30,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:34:30,902.902 INFO    ] time= 18/10/2026 05:34:30
[2026-10-18 05:34:30,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:34:30,957.957 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:34:31,088.088 INFO    ] No existing commands found in stream
[2026-10-18 05:34:36,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:34:36,121.121 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-18 05:34:40,147.147 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:34:40,150.150 INFO    ] Checking for system updates...
[2026-10-18 05:34:40,186.186 INFO    ] 200
[2026-10-18 05:34:40,188.188 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:34:40,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:34:40,247.247 INFO    ] No update needed
[2026-10-18 05:34:40,250.250 INFO    ] Checking for camera pi updates...
[2026-10-18 05:34:40,286.286 INFO    ] 200
[2026-10-18 05:34:40,289.289 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:34:40,329.329 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:34:50,344.344 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:34:50,379.379 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:34:50,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:34:50,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:34:50,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:34:50,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:34:52,442.442 INFO    ] ================================================
[2026-10-18 05:34:52,457.457 INFO    ] Launching Daemon at Sun Oct 18 05:34:52 IST 2026
[2026-10-18 05:34:52,469.469 INFO    ] ================================================
[2026-10-18 05:34:53,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:34:53
[2026-10-18 05:34:53,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:34:54,053.053 INFO    ] Initializing speech engine...
[2026-10-18 05:34:54,060.060 INFO    ] 2026-10-18 05:34:54
[2026-10-18 05:34:54,333.333 INFO    ] 2026-10-18 05:34:54
[2026-10-18 05:34:54,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:34:54,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:34:54,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:34:54,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:34:54,890.890 INFO    ] time= 18/10/2026 05:34:54
[2026-10-18 05:34:54,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:34:54,931.931 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:34:55,046.046 INFO    ] No existing commands found in stream
[2026-10-18 05:35:00,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:35:00,074.074 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-18 05:35:02,723.723 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:35:02,728.728 INFO    ] Checking for system updates...
[2026-10-18 05:35:02,775.775 INFO    ] 200
[2026-10-18 05:35:02,778.778 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:35:02,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:35:02,855.855 INFO    ] No update needed
[2026-10-18 05:35:02,858.858 INFO    ] Checking for camera pi updates...
[2026-10-18 05:35:02,900.900 INFO    ] 200
[2026-10-18 05:35:02,903.903 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:35:02,955.955 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:35:12,970.970 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:35:13,005.005 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:35:13,014.014 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:35:13,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:35:13,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:35:13,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:35:15,066.066 INFO    ] ================================================
[2026-10-18 05:35:15,083.083 INFO    ] Launching Daemon at Sun Oct 18 05:35:15 IST 2026
[2026-10-18 05:35:15,094.094 INFO    ] ================================================
[2026-10-18 05:35:15,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:35:15
[2026-10-18 05:35:16,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:35:16,701.701 INFO    ] Initializing speech engine...
[2026-10-18 05:35:16,708.708 INFO    ] 2026-10-18 05:35:16
[2026-10-18 05:35:16,980.980 INFO    ] 2026-10-18 05:35:16
[2026-10-18 05:35:17,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:35:17,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:35:17,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:35:17,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:35:17,549.549 INFO    ] time= 18/10/2026 05:35:17
[2026-10-18 05:35:17,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:35:17,585.585 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:35:17,733.733 INFO    ] No existing commands found in stream
[2026-10-18 05:35:22,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:35:22,762.762 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-18 05:35:23,800.800 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:35:23,803.803 INFO    ] Checking for system updates...
[2026-10-18 05:35:23,843.843 INFO    ] 200
[2026-10-18 05:35:23,846.846 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:35:23,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:35:23,908.908 INFO    ] No update needed
[2026-10-18 05:35:23,911.911 INFO    ] Checking for camera pi updates...
[2026-10-18 05:35:23,946.946 INFO    ] 200
[2026-10-18 05:35:23,949.949 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:35:23,994.994 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:35:34,009.009 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:35:34,050.050 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:35:34,061.061 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:35:34,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:35:34,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:35:34,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:35:36,118.118 INFO    ] ================================================
[2026-10-18 05:35:36,134.134 INFO    ] Launching Daemon at Sun Oct 18 05:35:36 IST 2026
[2026-10-18 05:35:36,145.145 INFO    ] ================================================
[2026-10-18 05:35:36,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:35:36
[2026-10-18 05:35:37,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:35:37,807.807 INFO    ] Initializing speech engine...
[2026-10-18 05:35:37,818.818 INFO    ] 2026-10-18 05:35:37
[2026-10-18 05:35:38,099.099 INFO    ] 2026-10-18 05:35:38
[2026-10-18 05:35:38,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:35:38,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:35:38,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:35:38,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:35:38,640.640 INFO    ] time= 18/10/2026 05:35:38
[2026-10-18 05:35:38,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:35:38,676.676 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:35:38,796.796 INFO    ] No existing commands found in stream
[2026-10-18 05:35:43,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:35:43,822.822 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-18 05:35:45,764.764 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:35:45,767.767 INFO    ] Checking for system updates...
[2026-10-18 05:35:45,809.809 INFO    ] 200
[2026-10-18 05:35:45,812.812 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:35:45,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:35:45,869.869 INFO    ] No update needed
[2026-10-18 05:35:45,871.871 INFO    ] Checking for camera pi updates...
[2026-10-18 05:35:45,907.907 INFO    ] 200
[2026-10-18 05:35:45,910.910 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:35:45,951.951 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:35:55,968.968 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:35:56,008.008 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:35:56,020.020 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:35:56,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:35:56,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:35:56,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:35:58,076.076 INFO    ] ================================================
[2026-10-18 05:35:58,092.092 INFO    ] Launching Daemon at Sun Oct 18 05:35:58 IST 2026
[2026-10-18 05:35:58,103.103 INFO    ] ================================================
[2026-10-18 05:35:58,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:35:58
[2026-10-18 05:35:59,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:35:59,603.603 INFO    ] Initializing speech engine...
[2026-10-18 05:35:59,611.611 INFO    ] 2026-10-18 05:35:59
[2026-10-18 05:35:59,889.889 INFO    ] 2026-10-18 05:35:59
[2026-10-18 05:35:59,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:36:00,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:36:00,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:36:00,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:36:00,439.439 INFO    ] time= 18/10/2026 05:36:00
[2026-10-18 05:36:00,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:36:00,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:36:00,599.599 INFO    ] No existing commands found in stream
[2026-10-18 05:36:05,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:36:05,631.631 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-18 05:36:12,385.385 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:36:12,388.388 INFO    ] Checking for system updates...
[2026-10-18 05:36:12,430.430 INFO    ] 200
[2026-10-18 05:36:12,433.433 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:36:12,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:36:12,493.493 INFO    ] No update needed
[2026-10-18 05:36:12,496.496 INFO    ] Checking for camera pi updates...
[2026-10-18 05:36:12,535.535 INFO    ] 200
[2026-10-18 05:36:12,539.539 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:36:12,581.581 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:36:22,598.598 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:36:22,639.639 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:36:22,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:36:22,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:36:22,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:36:22,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:36:24,707.707 INFO    ] ================================================
[2026-10-18 05:36:24,722.722 INFO    ] Launching Daemon at Sun Oct 18 05:36:24 IST 2026
[2026-10-18 05:36:24,733.733 INFO    ] ================================================
[2026-10-18 05:36:25,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:36:25
[2026-10-18 05:36:26,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:36:26,343.343 INFO    ] Initializing speech engine...
[2026-10-18 05:36:26,357.357 INFO    ] 2026-10-18 05:36:26
[2026-10-18 05:36:26,636.636 INFO    ] 2026-10-18 05:36:26
[2026-10-18 05:36:26,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:36:26,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:36:26,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:36:27,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:36:27,173.173 INFO    ] time= 18/10/2026 05:36:27
[2026-10-18 05:36:27,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:36:27,200.200 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:36:27,351.351 INFO    ] No existing commands found in stream
[2026-10-18 05:36:32,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:36:32,389.389 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-10-18 05:36:36,964.964 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:36:36,967.967 INFO    ] Checking for system updates...
[2026-10-18 05:36:37,004.004 INFO    ] 200
[2026-10-18 05:36:37,007.007 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:36:37,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:36:37,068.068 INFO    ] No update needed
[2026-10-18 05:36:37,070.070 INFO    ] Checking for camera pi updates...
[2026-10-18 05:36:37,105.105 INFO    ] 200
[2026-10-18 05:36:37,108.108 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:36:37,150.150 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:36:47,162.162 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:36:47,203.203 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:36:47,215.215 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:36:47,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:36:47,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:36:47,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:36:49,271.271 INFO    ] ================================================
[2026-10-18 05:36:49,286.286 INFO    ] Launching Daemon at Sun Oct 18 05:36:49 IST 2026
[2026-10-18 05:36:49,298.298 INFO    ] ================================================
[2026-10-18 05:36:49,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:36:49
[2026-10-18 05:36:50,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:36:50,954.954 INFO    ] Initializing speech engine...
[2026-10-18 05:36:50,968.968 INFO    ] 2026-10-18 05:36:50
[2026-10-18 05:36:51,239.239 INFO    ] 2026-10-18 05:36:51
[2026-10-18 05:36:51,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:36:51,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:36:51,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:36:51,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:36:51,776.776 INFO    ] time= 18/10/2026 05:36:51
[2026-10-18 05:36:51,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:36:51,802.802 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:36:51,934.934 INFO    ] No existing commands found in stream
[2026-10-18 05:36:56,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:36:56,962.962 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-18 05:36:58,348.348 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:36:58,351.351 INFO    ] Checking for system updates...
[2026-10-18 05:36:58,386.386 INFO    ] 200
[2026-10-18 05:36:58,388.388 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:36:58,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:36:58,443.443 INFO    ] No update needed
[2026-10-18 05:36:58,450.450 INFO    ] Checking for camera pi updates...
[2026-10-18 05:36:58,483.483 INFO    ] 200
[2026-10-18 05:36:58,485.485 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:36:58,525.525 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:37:08,538.538 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:37:08,575.575 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:37:08,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:37:08,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:37:08,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:37:08,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:37:10,639.639 INFO    ] ================================================
[2026-10-18 05:37:10,656.656 INFO    ] Launching Daemon at Sun Oct 18 05:37:10 IST 2026
[2026-10-18 05:37:10,667.667 INFO    ] ================================================
[2026-10-18 05:37:11,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:37:11
[2026-10-18 05:37:11,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:37:12,112.112 INFO    ] Initializing speech engine...
[2026-10-18 05:37:12,119.119 INFO    ] 2026-10-18 05:37:12
[2026-10-18 05:37:12,378.378 INFO    ] 2026-10-18 05:37:12
[2026-10-18 05:37:12,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:37:12,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:37:12,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:37:12,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:37:12,922.922 INFO    ] time= 18/10/2026 05:37:12
[2026-10-18 05:37:12,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:37:12,947.947 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:37:13,073.073 INFO    ] No existing commands found in stream
[2026-10-18 05:37:18,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:37:18,091.091 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-18 05:37:19,645.645 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:37:19,648.648 INFO    ] Checking for system updates...
[2026-10-18 05:37:19,684.684 INFO    ] 200
[2026-10-18 05:37:19,686.686 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:37:19,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:37:19,742.742 INFO    ] No update needed
[2026-10-18 05:37:19,744.744 INFO    ] Checking for camera pi updates...
[2026-10-18 05:37:19,782.782 INFO    ] 200
[2026-10-18 05:37:19,784.784 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:37:19,825.825 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:37:29,840.840 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:37:29,875.875 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:37:29,885.885 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:37:29,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:37:29,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:37:29,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:37:31,941.941 INFO    ] ================================================
[2026-10-18 05:37:31,959.959 INFO    ] Launching Daemon at Sun Oct 18 05:37:31 IST 2026
[2026-10-18 05:37:31,970.970 INFO    ] ================================================
[2026-10-18 05:37:32,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:37:32
[2026-10-18 05:37:33,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:37:33,484.484 INFO    ] Initializing speech engine...
[2026-10-18 05:37:33,498.498 INFO    ] 2026-10-18 05:37:33
[2026-10-18 05:37:33,785.785 INFO    ] 2026-10-18 05:37:33
[2026-10-18 05:37:33,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:37:34,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:37:34,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:37:34,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:37:34,235.235 INFO    ] time= 18/10/2026 05:37:34
[2026-10-18 05:37:34,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:37:34,340.340 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:37:34,479.479 INFO    ] No existing commands found in stream
[2026-10-18 05:37:39,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:37:39,507.507 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-18 05:37:43,484.484 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 05:37:43,486.486 INFO    ] Checking for system updates...
[2026-10-18 05:37:43,522.522 INFO    ] 200
[2026-10-18 05:37:43,524.524 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:37:43,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:37:43,579.579 INFO    ] No update needed
[2026-10-18 05:37:43,581.581 INFO    ] Checking for camera pi updates...
[2026-10-18 05:37:43,614.614 INFO    ] 200
[2026-10-18 05:37:43,617.617 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:37:43,658.658 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:37:53,673.673 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:37:53,707.707 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:37:53,717.717 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:37:53,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:37:53,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:37:53,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:37:55,769.769 INFO    ] ================================================
[2026-10-18 05:37:55,784.784 INFO    ] Launching Daemon at Sun Oct 18 05:37:55 IST 2026
[2026-10-18 05:37:55,795.795 INFO    ] ================================================
[2026-10-18 05:37:56,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:37:56
[2026-10-18 05:37:57,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:37:57,494.494 INFO    ] Initializing speech engine...
[2026-10-18 05:37:57,507.507 INFO    ] 2026-10-18 05:37:57
[2026-10-18 05:37:57,799.799 INFO    ] 2026-10-18 05:37:57
[2026-10-18 05:37:57,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:37:58,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:37:58,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:37:58,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:37:58,340.340 INFO    ] time= 18/10/2026 05:37:58
[2026-10-18 05:37:58,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:37:58,364.364 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:37:58,489.489 INFO    ] No existing commands found in stream
[2026-10-18 05:38:03,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:38:03,512.512 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-18 05:38:07,366.366 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:38:07,368.368 INFO    ] Checking for system updates...
[2026-10-18 05:38:07,408.408 INFO    ] 200
[2026-10-18 05:38:07,410.410 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:38:07,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:38:07,465.465 INFO    ] No update needed
[2026-10-18 05:38:07,468.468 INFO    ] Checking for camera pi updates...
[2026-10-18 05:38:07,505.505 INFO    ] 200
[2026-10-18 05:38:07,508.508 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:38:07,553.553 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:38:17,568.568 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:38:17,602.602 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:38:17,611.611 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:38:17,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:38:17,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:38:17,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:38:19,666.666 INFO    ] ================================================
[2026-10-18 05:38:19,681.681 INFO    ] Launching Daemon at Sun Oct 18 05:38:19 IST 2026
[2026-10-18 05:38:19,692.692 INFO    ] ================================================
[2026-10-18 05:38:20,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:38:20
[2026-10-18 05:38:20,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:38:21,120.120 INFO    ] Initializing speech engine...
[2026-10-18 05:38:21,127.127 INFO    ] 2026-10-18 05:38:21
[2026-10-18 05:38:21,392.392 INFO    ] 2026-10-18 05:38:21
[2026-10-18 05:38:21,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:38:21,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:38:21,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:38:21,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:38:21,907.907 INFO    ] time= 18/10/2026 05:38:21
[2026-10-18 05:38:21,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:38:21,960.960 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:38:22,088.088 INFO    ] No existing commands found in stream
[2026-10-18 05:38:27,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:38:27,116.116 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-18 05:38:28,646.646 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:38:28,648.648 INFO    ] Checking for system updates...
[2026-10-18 05:38:28,684.684 INFO    ] 200
[2026-10-18 05:38:28,687.687 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:38:28,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:38:28,742.742 INFO    ] No update needed
[2026-10-18 05:38:28,744.744 INFO    ] Checking for camera pi updates...
[2026-10-18 05:38:28,778.778 INFO    ] 200
[2026-10-18 05:38:28,781.781 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:38:28,821.821 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:38:38,834.834 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:38:38,869.869 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:38:38,879.879 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:38:38,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:38:38,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:38:38,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:38:40,932.932 INFO    ] ================================================
[2026-10-18 05:38:40,948.948 INFO    ] Launching Daemon at Sun Oct 18 05:38:40 IST 2026
[2026-10-18 05:38:40,958.958 INFO    ] ================================================
[2026-10-18 05:38:41,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:38:41
[2026-10-18 05:38:42,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:38:42,363.363 INFO    ] Initializing speech engine...
[2026-10-18 05:38:42,369.369 INFO    ] 2026-10-18 05:38:42
[2026-10-18 05:38:42,664.664 INFO    ] 2026-10-18 05:38:42
[2026-10-18 05:38:42,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:38:42,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:38:42,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:38:43,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:38:43,086.086 INFO    ] time= 18/10/2026 05:38:43
[2026-10-18 05:38:43,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:38:43,141.141 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:38:43,267.267 INFO    ] No existing commands found in stream
[2026-10-18 05:38:48,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:38:48,290.290 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-18 05:38:51,519.519 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 05:38:51,521.521 INFO    ] Checking for system updates...
[2026-10-18 05:38:51,561.561 INFO    ] 200
[2026-10-18 05:38:51,563.563 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:38:51,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:38:51,618.618 INFO    ] No update needed
[2026-10-18 05:38:51,620.620 INFO    ] Checking for camera pi updates...
[2026-10-18 05:38:51,654.654 INFO    ] 200
[2026-10-18 05:38:51,656.656 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:38:51,697.697 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:39:01,712.712 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:39:01,759.759 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:39:01,775.775 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:39:01,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:39:01,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:39:01,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:39:03,843.843 INFO    ] ================================================
[2026-10-18 05:39:03,858.858 INFO    ] Launching Daemon at Sun Oct 18 05:39:03 IST 2026
[2026-10-18 05:39:03,869.869 INFO    ] ================================================
[2026-10-18 05:39:04,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:39:04
[2026-10-18 05:39:05,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:39:05,454.454 INFO    ] Initializing speech engine...
[2026-10-18 05:39:05,466.466 INFO    ] 2026-10-18 05:39:05
[2026-10-18 05:39:05,744.744 INFO    ] 2026-10-18 05:39:05
[2026-10-18 05:39:05,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:39:06,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:39:06,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:39:06,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:39:06,294.294 INFO    ] time= 18/10/2026 05:39:06
[2026-10-18 05:39:06,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:39:06,332.332 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:39:06,446.446 INFO    ] No existing commands found in stream
[2026-10-18 05:39:11,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:39:11,479.479 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-18 05:39:14,767.767 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:39:14,770.770 INFO    ] Checking for system updates...
[2026-10-18 05:39:14,806.806 INFO    ] 200
[2026-10-18 05:39:14,809.809 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:39:14,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:39:14,868.868 INFO    ] No update needed
[2026-10-18 05:39:14,870.870 INFO    ] Checking for camera pi updates...
[2026-10-18 05:39:14,907.907 INFO    ] 200
[2026-10-18 05:39:14,909.909 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:39:14,951.951 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:39:24,966.966 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:39:25,005.005 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:39:25,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:39:25,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:39:25,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:39:25,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:39:27,073.073 INFO    ] ================================================
[2026-10-18 05:39:27,089.089 INFO    ] Launching Daemon at Sun Oct 18 05:39:27 IST 2026
[2026-10-18 05:39:27,100.100 INFO    ] ================================================
[2026-10-18 05:39:27,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:39:27
[2026-10-18 05:39:28,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:39:28,559.559 INFO    ] Initializing speech engine...
[2026-10-18 05:39:28,565.565 INFO    ] 2026-10-18 05:39:28
[2026-10-18 05:39:28,827.827 INFO    ] 2026-10-18 05:39:28
[2026-10-18 05:39:28,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:39:29,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:39:29,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:39:29,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:39:29,328.328 INFO    ] time= 18/10/2026 05:39:29
[2026-10-18 05:39:29,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:39:29,382.382 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:39:29,524.524 INFO    ] No existing commands found in stream
[2026-10-18 05:39:34,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:39:34,542.542 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-18 05:39:37,138.138 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:39:37,141.141 INFO    ] Checking for system updates...
[2026-10-18 05:39:37,180.180 INFO    ] 200
[2026-10-18 05:39:37,183.183 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:39:37,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:39:37,243.243 INFO    ] No update needed
[2026-10-18 05:39:37,246.246 INFO    ] Checking for camera pi updates...
[2026-10-18 05:39:37,280.280 INFO    ] 200
[2026-10-18 05:39:37,282.282 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:39:37,326.326 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:39:47,342.342 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:39:47,377.377 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:39:47,387.387 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:39:47,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:39:47,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:39:47,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:39:49,441.441 INFO    ] ================================================
[2026-10-18 05:39:49,457.457 INFO    ] Launching Daemon at Sun Oct 18 05:39:49 IST 2026
[2026-10-18 05:39:49,468.468 INFO    ] ================================================
[2026-10-18 05:39:50,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:39:50
[2026-10-18 05:39:50,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:39:51,115.115 INFO    ] Initializing speech engine...
[2026-10-18 05:39:51,124.124 INFO    ] 2026-10-18 05:39:51
[2026-10-18 05:39:51,414.414 INFO    ] 2026-10-18 05:39:51
[2026-10-18 05:39:51,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:39:51,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:39:51,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:39:51,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:39:51,966.966 INFO    ] time= 18/10/2026 05:39:51
[2026-10-18 05:39:51,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:39:51,994.994 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:39:52,132.132 INFO    ] No existing commands found in stream
[2026-10-18 05:39:57,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:39:57,168.168 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-18 05:40:00,607.607 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:40:00,610.610 INFO    ] Checking for system updates...
[2026-10-18 05:40:00,647.647 INFO    ] 200
[2026-10-18 05:40:00,650.650 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:40:00,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:40:00,706.706 INFO    ] No update needed
[2026-10-18 05:40:00,709.709 INFO    ] Checking for camera pi updates...
[2026-10-18 05:40:00,747.747 INFO    ] 200
[2026-10-18 05:40:00,749.749 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:40:00,789.789 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:40:10,804.804 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:40:10,839.839 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:40:10,848.848 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:40:10,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:40:10,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:40:10,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:40:12,906.906 INFO    ] ================================================
[2026-10-18 05:40:12,926.926 INFO    ] Launching Daemon at Sun Oct 18 05:40:12 IST 2026
[2026-10-18 05:40:12,940.940 INFO    ] ================================================
[2026-10-18 05:40:13,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:40:13
[2026-10-18 05:40:14,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:40:14,496.496 INFO    ] Initializing speech engine...
[2026-10-18 05:40:14,504.504 INFO    ] 2026-10-18 05:40:14
[2026-10-18 05:40:14,764.764 INFO    ] 2026-10-18 05:40:14
[2026-10-18 05:40:14,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:40:15,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:40:15,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:40:15,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:40:15,237.237 INFO    ] time= 18/10/2026 05:40:15
[2026-10-18 05:40:15,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:40:15,315.315 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:40:15,456.456 INFO    ] No existing commands found in stream
[2026-10-18 05:40:20,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:40:20,471.471 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-18 05:40:21,486.486 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:40:21,489.489 INFO    ] Checking for system updates...
[2026-10-18 05:40:21,528.528 INFO    ] 200
[2026-10-18 05:40:21,531.531 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:40:21,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:40:21,592.592 INFO    ] No update needed
[2026-10-18 05:40:21,595.595 INFO    ] Checking for camera pi updates...
[2026-10-18 05:40:21,631.631 INFO    ] 200
[2026-10-18 05:40:21,634.634 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:40:21,678.678 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:40:31,693.693 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:40:31,728.728 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:40:31,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:40:31,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:40:31,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:40:31,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:40:33,790.790 INFO    ] ================================================
[2026-10-18 05:40:33,805.805 INFO    ] Launching Daemon at Sun Oct 18 05:40:33 IST 2026
[2026-10-18 05:40:33,815.815 INFO    ] ================================================
[2026-10-18 05:40:34,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:40:34
[2026-10-18 05:40:34,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:40:35,220.220 INFO    ] Initializing speech engine...
[2026-10-18 05:40:35,229.229 INFO    ] 2026-10-18 05:40:35
[2026-10-18 05:40:35,519.519 INFO    ] 2026-10-18 05:40:35
[2026-10-18 05:40:35,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:40:35,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:40:35,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:40:35,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:40:35,935.935 INFO    ] time= 18/10/2026 05:40:35
[2026-10-18 05:40:35,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:40:35,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:40:36,112.112 INFO    ] No existing commands found in stream
[2026-10-18 05:40:41,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:40:41,145.145 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-18 05:40:44,847.847 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:40:44,850.850 INFO    ] Checking for system updates...
[2026-10-18 05:40:44,886.886 INFO    ] 200
[2026-10-18 05:40:44,888.888 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:40:44,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:40:44,942.942 INFO    ] No update needed
[2026-10-18 05:40:44,944.944 INFO    ] Checking for camera pi updates...
[2026-10-18 05:40:44,981.981 INFO    ] 200
[2026-10-18 05:40:44,984.984 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:40:45,024.024 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:40:55,040.040 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:40:55,074.074 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:40:55,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:40:55,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:40:55,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:40:55,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:40:57,136.136 INFO    ] ================================================
[2026-10-18 05:40:57,151.151 INFO    ] Launching Daemon at Sun Oct 18 05:40:57 IST 2026
[2026-10-18 05:40:57,162.162 INFO    ] ================================================
[2026-10-18 05:40:57,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:40:57
[2026-10-18 05:40:58,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:40:58,719.719 INFO    ] Initializing speech engine...
[2026-10-18 05:40:58,732.732 INFO    ] 2026-10-18 05:40:58
[2026-10-18 05:40:59,016.016 INFO    ] 2026-10-18 05:40:58
[2026-10-18 05:40:59,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:40:59,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:40:59,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:40:59,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:40:59,568.568 INFO    ] time= 18/10/2026 05:40:59
[2026-10-18 05:40:59,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:40:59,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:40:59,746.746 INFO    ] No existing commands found in stream
[2026-10-18 05:41:04,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:41:04,775.775 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-18 05:41:06,045.045 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:41:06,049.049 INFO    ] Checking for system updates...
[2026-10-18 05:41:06,086.086 INFO    ] 200
[2026-10-18 05:41:06,088.088 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:41:06,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:41:06,150.150 INFO    ] No update needed
[2026-10-18 05:41:06,153.153 INFO    ] Checking for camera pi updates...
[2026-10-18 05:41:06,186.186 INFO    ] 200
[2026-10-18 05:41:06,189.189 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:41:06,230.230 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:41:16,245.245 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:41:16,280.280 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:41:16,289.289 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:41:16,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:41:16,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:41:16,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:41:18,342.342 INFO    ] ================================================
[2026-10-18 05:41:18,357.357 INFO    ] Launching Daemon at Sun Oct 18 05:41:18 IST 2026
[2026-10-18 05:41:18,368.368 INFO    ] ================================================
[2026-10-18 05:41:18,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:41:18
[2026-10-18 05:41:19,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:41:19,801.801 INFO    ] Initializing speech engine...
[2026-10-18 05:41:19,809.809 INFO    ] 2026-10-18 05:41:19
[2026-10-18 05:41:20,056.056 INFO    ] 2026-10-18 05:41:20
[2026-10-18 05:41:20,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:41:20,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:41:20,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:41:20,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:41:20,540.540 INFO    ] time= 18/10/2026 05:41:20
[2026-10-18 05:41:20,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:41:20,618.618 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:41:20,739.739 INFO    ] No existing commands found in stream
[2026-10-18 05:41:25,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:41:25,772.772 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-18 05:41:29,388.388 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:41:29,390.390 INFO    ] Checking for system updates...
[2026-10-18 05:41:29,426.426 INFO    ] 200
[2026-10-18 05:41:29,429.429 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:41:29,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:41:29,491.491 INFO    ] No update needed
[2026-10-18 05:41:29,493.493 INFO    ] Checking for camera pi updates...
[2026-10-18 05:41:29,531.531 INFO    ] 200
[2026-10-18 05:41:29,533.533 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:41:29,579.579 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:41:39,594.594 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:41:39,629.629 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:41:39,639.639 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:41:39,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:41:39,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:41:39,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:41:41,692.692 INFO    ] ================================================
[2026-10-18 05:41:41,708.708 INFO    ] Launching Daemon at Sun Oct 18 05:41:41 IST 2026
[2026-10-18 05:41:41,719.719 INFO    ] ================================================
[2026-10-18 05:41:42,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:41:42
[2026-10-18 05:41:43,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:41:43,320.320 INFO    ] Initializing speech engine...
[2026-10-18 05:41:43,328.328 INFO    ] 2026-10-18 05:41:43
[2026-10-18 05:41:43,573.573 INFO    ] 2026-10-18 05:41:43
[2026-10-18 05:41:43,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:41:43,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:41:43,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:41:44,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:41:44,141.141 INFO    ] time= 18/10/2026 05:41:44
[2026-10-18 05:41:44,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:41:44,175.175 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:41:44,312.312 INFO    ] No existing commands found in stream
[2026-10-18 05:41:49,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:41:49,339.339 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-18 05:41:53,804.804 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:41:53,807.807 INFO    ] Checking for system updates...
[2026-10-18 05:41:53,843.843 INFO    ] 200
[2026-10-18 05:41:53,846.846 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:41:53,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:41:53,901.901 INFO    ] No update needed
[2026-10-18 05:41:53,903.903 INFO    ] Checking for camera pi updates...
[2026-10-18 05:41:53,941.941 INFO    ] 200
[2026-10-18 05:41:53,943.943 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:41:53,984.984 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:42:03,998.998 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:42:04,033.033 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:42:04,043.043 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:42:04,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:42:04,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:42:04,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:42:06,096.096 INFO    ] ================================================
[2026-10-18 05:42:06,111.111 INFO    ] Launching Daemon at Sun Oct 18 05:42:06 IST 2026
[2026-10-18 05:42:06,122.122 INFO    ] ================================================
[2026-10-18 05:42:06,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:42:06
[2026-10-18 05:42:07,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:42:07,765.765 INFO    ] Initializing speech engine...
[2026-10-18 05:42:07,771.771 INFO    ] 2026-10-18 05:42:07
[2026-10-18 05:42:08,056.056 INFO    ] 2026-10-18 05:42:08
[2026-10-18 05:42:08,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:42:08,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:42:08,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:42:08,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:42:08,607.607 INFO    ] time= 18/10/2026 05:42:08
[2026-10-18 05:42:08,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:42:08,649.649 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:42:08,763.763 INFO    ] No existing commands found in stream
[2026-10-18 05:42:13,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:42:13,791.791 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-18 05:42:15,281.281 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:42:15,284.284 INFO    ] Checking for system updates...
[2026-10-18 05:42:15,323.323 INFO    ] 200
[2026-10-18 05:42:15,326.326 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:42:15,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:42:15,390.390 INFO    ] No update needed
[2026-10-18 05:42:15,393.393 INFO    ] Checking for camera pi updates...
[2026-10-18 05:42:15,427.427 INFO    ] 200
[2026-10-18 05:42:15,429.429 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:42:15,470.470 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:42:25,486.486 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:42:25,521.521 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:42:25,531.531 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:42:25,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:42:25,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:42:25,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:42:27,584.584 INFO    ] ================================================
[2026-10-18 05:42:27,599.599 INFO    ] Launching Daemon at Sun Oct 18 05:42:27 IST 2026
[2026-10-18 05:42:27,610.610 INFO    ] ================================================
[2026-10-18 05:42:28,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:42:28
[2026-10-18 05:42:28,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:42:29,097.097 INFO    ] Initializing speech engine...
[2026-10-18 05:42:29,122.122 INFO    ] 2026-10-18 05:42:29
[2026-10-18 05:42:29,398.398 INFO    ] 2026-10-18 05:42:29
[2026-10-18 05:42:29,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:42:29,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:42:29,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:42:29,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:42:29,823.823 INFO    ] time= 18/10/2026 05:42:29
[2026-10-18 05:42:29,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:42:29,851.851 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:42:29,989.989 INFO    ] No existing commands found in stream
[2026-10-18 05:42:35,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:42:35,013.013 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-18 05:42:38,400.400 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:42:38,402.402 INFO    ] Checking for system updates...
[2026-10-18 05:42:38,441.441 INFO    ] 200
[2026-10-18 05:42:38,444.444 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:42:38,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:42:38,505.505 INFO    ] No update needed
[2026-10-18 05:42:38,507.507 INFO    ] Checking for camera pi updates...
[2026-10-18 05:42:38,544.544 INFO    ] 200
[2026-10-18 05:42:38,547.547 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:42:38,591.591 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:42:48,607.607 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:42:48,641.641 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:42:48,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:42:48,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:42:48,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:42:48,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:42:50,704.704 INFO    ] ================================================
[2026-10-18 05:42:50,719.719 INFO    ] Launching Daemon at Sun Oct 18 05:42:50 IST 2026
[2026-10-18 05:42:50,730.730 INFO    ] ================================================
[2026-10-18 05:42:51,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:42:51
[2026-10-18 05:42:51,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:42:52,190.190 INFO    ] Initializing speech engine...
[2026-10-18 05:42:52,196.196 INFO    ] 2026-10-18 05:42:52
[2026-10-18 05:42:52,458.458 INFO    ] 2026-10-18 05:42:52
[2026-10-18 05:42:52,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:42:52,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:42:52,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:42:52,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:42:52,945.945 INFO    ] time= 18/10/2026 05:42:52
[2026-10-18 05:42:53,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:42:53,029.029 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:42:53,185.185 INFO    ] No existing commands found in stream
[2026-10-18 05:42:58,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:42:58,220.220 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-18 05:42:59,391.391 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:42:59,393.393 INFO    ] Checking for system updates...
[2026-10-18 05:42:59,431.431 INFO    ] 200
[2026-10-18 05:42:59,434.434 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:42:59,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:42:59,489.489 INFO    ] No update needed
[2026-10-18 05:42:59,492.492 INFO    ] Checking for camera pi updates...
[2026-10-18 05:42:59,530.530 INFO    ] 200
[2026-10-18 05:42:59,533.533 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:42:59,580.580 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:43:09,595.595 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:43:09,635.635 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:43:09,647.647 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:43:09,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:43:09,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:43:09,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:43:11,702.702 INFO    ] ================================================
[2026-10-18 05:43:11,717.717 INFO    ] Launching Daemon at Sun Oct 18 05:43:11 IST 2026
[2026-10-18 05:43:11,728.728 INFO    ] ================================================
[2026-10-18 05:43:12,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:43:12
[2026-10-18 05:43:12,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:43:13,228.228 INFO    ] Initializing speech engine...
[2026-10-18 05:43:13,240.240 INFO    ] 2026-10-18 05:43:13
[2026-10-18 05:43:13,526.526 INFO    ] 2026-10-18 05:43:13
[2026-10-18 05:43:13,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:43:13,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:43:13,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:43:14,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:43:14,093.093 INFO    ] time= 18/10/2026 05:43:14
[2026-10-18 05:43:14,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:43:14,129.129 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:43:14,239.239 INFO    ] No existing commands found in stream
[2026-10-18 05:43:19,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:43:19,260.260 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-18 05:43:20,999.999 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:43:21,002.002 INFO    ] Checking for system updates...
[2026-10-18 05:43:21,040.040 INFO    ] 200
[2026-10-18 05:43:21,042.042 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:43:21,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:43:21,099.099 INFO    ] No update needed
[2026-10-18 05:43:21,101.101 INFO    ] Checking for camera pi updates...
[2026-10-18 05:43:21,136.136 INFO    ] 200
[2026-10-18 05:43:21,139.139 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:43:21,186.186 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:43:31,203.203 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:43:31,248.248 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:43:31,260.260 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:43:31,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:43:31,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:43:31,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:43:33,321.321 INFO    ] ================================================
[2026-10-18 05:43:33,337.337 INFO    ] Launching Daemon at Sun Oct 18 05:43:33 IST 2026
[2026-10-18 05:43:33,348.348 INFO    ] ================================================
[2026-10-18 05:43:33,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:43:33
[2026-10-18 05:43:34,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:43:34,812.812 INFO    ] Initializing speech engine...
[2026-10-18 05:43:34,821.821 INFO    ] 2026-10-18 05:43:34
[2026-10-18 05:43:35,072.072 INFO    ] 2026-10-18 05:43:35
[2026-10-18 05:43:35,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:43:35,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:43:35,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:43:35,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:43:35,579.579 INFO    ] time= 18/10/2026 05:43:35
[2026-10-18 05:43:35,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:43:35,638.638 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:43:35,769.769 INFO    ] No existing commands found in stream
[2026-10-18 05:43:40,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:43:40,794.794 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-18 05:43:44,505.505 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:43:44,508.508 INFO    ] Checking for system updates...
[2026-10-18 05:43:44,549.549 INFO    ] 200
[2026-10-18 05:43:44,551.551 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:43:44,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:43:44,614.614 INFO    ] No update needed
[2026-10-18 05:43:44,616.616 INFO    ] Checking for camera pi updates...
[2026-10-18 05:43:44,654.654 INFO    ] 200
[2026-10-18 05:43:44,657.657 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:43:44,703.703 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:43:54,718.718 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:43:54,754.754 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:43:54,764.764 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:43:54,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:43:54,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:43:54,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:43:56,818.818 INFO    ] ================================================
[2026-10-18 05:43:56,834.834 INFO    ] Launching Daemon at Sun Oct 18 05:43:56 IST 2026
[2026-10-18 05:43:56,844.844 INFO    ] ================================================
[2026-10-18 05:43:57,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:43:57
[2026-10-18 05:43:58,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:43:58,292.292 INFO    ] Initializing speech engine...
[2026-10-18 05:43:58,298.298 INFO    ] 2026-10-18 05:43:58
[2026-10-18 05:43:58,602.602 INFO    ] 2026-10-18 05:43:58
[2026-10-18 05:43:58,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:43:58,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:43:58,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:43:59,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:43:59,029.029 INFO    ] time= 18/10/2026 05:43:59
[2026-10-18 05:43:59,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:43:59,045.045 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:43:59,123.123 INFO    ] No existing commands found in stream
[2026-10-18 05:44:04,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:44:04,151.151 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-18 05:44:06,310.310 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:44:06,313.313 INFO    ] Checking for system updates...
[2026-10-18 05:44:06,348.348 INFO    ] 200
[2026-10-18 05:44:06,351.351 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:44:06,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:44:06,405.405 INFO    ] No update needed
[2026-10-18 05:44:06,408.408 INFO    ] Checking for camera pi updates...
[2026-10-18 05:44:06,441.441 INFO    ] 200
[2026-10-18 05:44:06,444.444 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:44:06,484.484 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:44:16,497.497 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:44:16,534.534 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:44:16,544.544 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:44:16,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:44:16,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:44:16,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:44:18,597.597 INFO    ] ================================================
[2026-10-18 05:44:18,612.612 INFO    ] Launching Daemon at Sun Oct 18 05:44:18 IST 2026
[2026-10-18 05:44:18,623.623 INFO    ] ================================================
[2026-10-18 05:44:19,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:44:19
[2026-10-18 05:44:19,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:44:20,059.059 INFO    ] Initializing speech engine...
[2026-10-18 05:44:20,063.063 INFO    ] 2026-10-18 05:44:20
[2026-10-18 05:44:20,327.327 INFO    ] 2026-10-18 05:44:20
[2026-10-18 05:44:20,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:44:20,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:44:20,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:44:20,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:44:20,872.872 INFO    ] time= 18/10/2026 05:44:20
[2026-10-18 05:44:20,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:44:20,892.892 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:44:21,006.006 INFO    ] No existing commands found in stream
[2026-10-18 05:44:26,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:44:26,036.036 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-18 05:44:27,606.606 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 05:44:27,609.609 INFO    ] Checking for system updates...
[2026-10-18 05:44:27,646.646 INFO    ] 200
[2026-10-18 05:44:27,649.649 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:44:27,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:44:27,704.704 INFO    ] No update needed
[2026-10-18 05:44:27,707.707 INFO    ] Checking for camera pi updates...
[2026-10-18 05:44:27,742.742 INFO    ] 200
[2026-10-18 05:44:27,745.745 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:44:27,786.786 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:44:37,801.801 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:44:37,841.841 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:44:37,852.852 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:44:37,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:44:37,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:44:37,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:44:39,909.909 INFO    ] ================================================
[2026-10-18 05:44:39,925.925 INFO    ] Launching Daemon at Sun Oct 18 05:44:39 IST 2026
[2026-10-18 05:44:39,936.936 INFO    ] ================================================
[2026-10-18 05:44:40,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:44:40
[2026-10-18 05:44:41,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:44:41,356.356 INFO    ] Initializing speech engine...
[2026-10-18 05:44:41,365.365 INFO    ] 2026-10-18 05:44:41
[2026-10-18 05:44:41,616.616 INFO    ] 2026-10-18 05:44:41
[2026-10-18 05:44:41,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:44:41,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:44:41,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:44:42,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:44:42,153.153 INFO    ] time= 18/10/2026 05:44:42
[2026-10-18 05:44:42,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:44:42,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:44:42,341.341 INFO    ] No existing commands found in stream
[2026-10-18 05:44:47,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:44:47,358.358 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-18 05:44:47,907.907 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:44:47,910.910 INFO    ] Checking for system updates...
[2026-10-18 05:44:47,944.944 INFO    ] 200
[2026-10-18 05:44:47,947.947 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:44:47,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:44:48,001.001 INFO    ] No update needed
[2026-10-18 05:44:48,003.003 INFO    ] Checking for camera pi updates...
[2026-10-18 05:44:48,040.040 INFO    ] 200
[2026-10-18 05:44:48,043.043 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:44:48,088.088 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:44:58,103.103 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:44:58,138.138 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:44:58,147.147 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:44:58,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:44:58,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:44:58,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:45:00,209.209 INFO    ] ================================================
[2026-10-18 05:45:00,225.225 INFO    ] Launching Daemon at Sun Oct 18 05:45:00 IST 2026
[2026-10-18 05:45:00,236.236 INFO    ] ================================================
[2026-10-18 05:45:00,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:45:00
[2026-10-18 05:45:02,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:45:02,484.484 INFO    ] Initializing speech engine...
[2026-10-18 05:45:02,509.509 INFO    ] 2026-10-18 05:45:02
[2026-10-18 05:45:02,828.828 INFO    ] 2026-10-18 05:45:02
[2026-10-18 05:45:02,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:45:03,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:45:03,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:45:03,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:45:03,404.404 INFO    ] time= 18/10/2026 05:45:03
[2026-10-18 05:45:03,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:45:03,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:45:03,585.585 INFO    ] No existing commands found in stream
[2026-10-18 05:45:08,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:45:08,600.600 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-18 05:45:12,115.115 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:45:12,118.118 INFO    ] Checking for system updates...
[2026-10-18 05:45:12,154.154 INFO    ] 200
[2026-10-18 05:45:12,157.157 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:45:12,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:45:12,211.211 INFO    ] No update needed
[2026-10-18 05:45:12,214.214 INFO    ] Checking for camera pi updates...
[2026-10-18 05:45:12,247.247 INFO    ] 200
[2026-10-18 05:45:12,250.250 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:45:12,290.290 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:45:22,305.305 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:45:22,341.341 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:45:22,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:45:22,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:45:22,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:45:22,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:45:24,405.405 INFO    ] ================================================
[2026-10-18 05:45:24,420.420 INFO    ] Launching Daemon at Sun Oct 18 05:45:24 IST 2026
[2026-10-18 05:45:24,432.432 INFO    ] ================================================
[2026-10-18 05:45:25,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:45:25
[2026-10-18 05:45:25,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:45:26,051.051 INFO    ] Initializing speech engine...
[2026-10-18 05:45:26,059.059 INFO    ] 2026-10-18 05:45:26
[2026-10-18 05:45:26,330.330 INFO    ] 2026-10-18 05:45:26
[2026-10-18 05:45:26,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:45:26,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:45:26,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:45:26,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:45:26,817.817 INFO    ] time= 18/10/2026 05:45:26
[2026-10-18 05:45:26,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:45:26,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:45:27,049.049 INFO    ] No existing commands found in stream
[2026-10-18 05:45:32,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:45:32,071.071 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-18 05:45:33,085.085 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:45:33,089.089 INFO    ] Checking for system updates...
[2026-10-18 05:45:33,128.128 INFO    ] 200
[2026-10-18 05:45:33,130.130 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:45:33,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:45:33,187.187 INFO    ] No update needed
[2026-10-18 05:45:33,190.190 INFO    ] Checking for camera pi updates...
[2026-10-18 05:45:33,224.224 INFO    ] 200
[2026-10-18 05:45:33,226.226 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:45:33,267.267 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:45:43,282.282 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:45:43,317.317 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:45:43,327.327 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:45:43,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:45:43,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:45:43,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:45:45,389.389 INFO    ] ================================================
[2026-10-18 05:45:45,405.405 INFO    ] Launching Daemon at Sun Oct 18 05:45:45 IST 2026
[2026-10-18 05:45:45,416.416 INFO    ] ================================================
[2026-10-18 05:45:45,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:45:45
[2026-10-18 05:45:46,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:45:46,837.837 INFO    ] Initializing speech engine...
[2026-10-18 05:45:46,856.856 INFO    ] 2026-10-18 05:45:46
[2026-10-18 05:45:47,106.106 INFO    ] 2026-10-18 05:45:47
[2026-10-18 05:45:47,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:45:47,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:45:47,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:45:47,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:45:47,653.653 INFO    ] time= 18/10/2026 05:45:47
[2026-10-18 05:45:47,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:45:47,684.684 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:45:47,835.835 INFO    ] No existing commands found in stream
[2026-10-18 05:45:52,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:45:52,860.860 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-18 05:45:53,511.511 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:45:53,514.514 INFO    ] Checking for system updates...
[2026-10-18 05:45:53,567.567 INFO    ] 200
[2026-10-18 05:45:53,570.570 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 05:45:53,572.572 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-18 05:45:53,575.575 INFO    ] Checking for camera pi updates...
[2026-10-18 05:45:53,610.610 INFO    ] 200
[2026-10-18 05:45:53,612.612 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 05:45:53,616.616 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-18 05:45:53,620.620 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:45:53,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:45:53,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:45:53,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:45:55,677.677 INFO    ] ================================================
[2026-10-18 05:45:55,693.693 INFO    ] Launching Daemon at Sun Oct 18 05:45:55 IST 2026
[2026-10-18 05:45:55,705.705 INFO    ] ================================================
[2026-10-18 05:45:56,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:45:56
[2026-10-18 05:45:56,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:45:57,167.167 INFO    ] Initializing speech engine...
[2026-10-18 05:45:57,174.174 INFO    ] 2026-10-18 05:45:57
[2026-10-18 05:45:57,433.433 INFO    ] 2026-10-18 05:45:57
[2026-10-18 05:45:57,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:45:57,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:45:57,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:45:57,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:45:57,987.987 INFO    ] time= 18/10/2026 05:45:57
[2026-10-18 05:45:57,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:45:58,012.012 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:45:58,147.147 INFO    ] No existing commands found in stream
[2026-10-18 05:46:03,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:46:03,171.171 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-18 05:46:06,583.583 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:46:06,586.586 INFO    ] Checking for system updates...
[2026-10-18 05:46:06,622.622 INFO    ] 200
[2026-10-18 05:46:06,626.626 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:46:06,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:46:06,690.690 INFO    ] No update needed
[2026-10-18 05:46:06,693.693 INFO    ] Checking for camera pi updates...
[2026-10-18 05:46:06,732.732 INFO    ] 200
[2026-10-18 05:46:06,735.735 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:46:06,781.781 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:46:16,797.797 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:46:16,838.838 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:46:16,849.849 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:46:16,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:46:16,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:46:16,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:46:18,906.906 INFO    ] ================================================
[2026-10-18 05:46:18,922.922 INFO    ] Launching Daemon at Sun Oct 18 05:46:18 IST 2026
[2026-10-18 05:46:18,933.933 INFO    ] ================================================
[2026-10-18 05:46:19,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:46:19
[2026-10-18 05:46:20,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:46:20,379.379 INFO    ] Initializing speech engine...
[2026-10-18 05:46:20,403.403 INFO    ] 2026-10-18 05:46:20
[2026-10-18 05:46:20,679.679 INFO    ] 2026-10-18 05:46:20
[2026-10-18 05:46:20,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:46:20,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:46:20,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:46:21,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:46:21,181.181 INFO    ] time= 18/10/2026 05:46:21
[2026-10-18 05:46:21,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:46:21,308.308 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:46:21,467.467 INFO    ] No existing commands found in stream
[2026-10-18 05:46:26,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:46:26,490.490 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-18 05:46:30,532.532 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:46:30,535.535 INFO    ] Checking for system updates...
[2026-10-18 05:46:30,574.574 INFO    ] 200
[2026-10-18 05:46:30,577.577 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:46:30,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:46:30,642.642 INFO    ] No update needed
[2026-10-18 05:46:30,645.645 INFO    ] Checking for camera pi updates...
[2026-10-18 05:46:30,681.681 INFO    ] 200
[2026-10-18 05:46:30,684.684 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:46:30,729.729 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:46:40,744.744 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:46:40,780.780 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:46:40,790.790 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:46:40,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:46:40,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:46:40,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:46:42,842.842 INFO    ] ================================================
[2026-10-18 05:46:42,858.858 INFO    ] Launching Daemon at Sun Oct 18 05:46:42 IST 2026
[2026-10-18 05:46:42,868.868 INFO    ] ================================================
[2026-10-18 05:46:43,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:46:43
[2026-10-18 05:46:44,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:46:44,468.468 INFO    ] Initializing speech engine...
[2026-10-18 05:46:44,476.476 INFO    ] 2026-10-18 05:46:44
[2026-10-18 05:46:44,760.760 INFO    ] 2026-10-18 05:46:44
[2026-10-18 05:46:44,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:46:45,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:46:45,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:46:45,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:46:45,311.311 INFO    ] time= 18/10/2026 05:46:45
[2026-10-18 05:46:45,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:46:45,347.347 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:46:45,469.469 INFO    ] No existing commands found in stream
[2026-10-18 05:46:50,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:46:50,503.503 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-18 05:46:53,395.395 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 05:46:53,398.398 INFO    ] Checking for system updates...
[2026-10-18 05:46:53,435.435 INFO    ] 200
[2026-10-18 05:46:53,438.438 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:46:53,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:46:53,493.493 INFO    ] No update needed
[2026-10-18 05:46:53,496.496 INFO    ] Checking for camera pi updates...
[2026-10-18 05:46:53,530.530 INFO    ] 200
[2026-10-18 05:46:53,533.533 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:46:53,579.579 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:47:03,592.592 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:47:03,640.640 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:47:03,659.659 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:47:03,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:47:03,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:47:03,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:47:05,719.719 INFO    ] ================================================
[2026-10-18 05:47:05,735.735 INFO    ] Launching Daemon at Sun Oct 18 05:47:05 IST 2026
[2026-10-18 05:47:05,746.746 INFO    ] ================================================
[2026-10-18 05:47:06,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:47:06
[2026-10-18 05:47:06,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:47:07,187.187 INFO    ] Initializing speech engine...
[2026-10-18 05:47:07,196.196 INFO    ] 2026-10-18 05:47:07
[2026-10-18 05:47:07,460.460 INFO    ] 2026-10-18 05:47:07
[2026-10-18 05:47:07,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:47:07,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:47:07,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:47:07,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:47:07,878.878 INFO    ] time= 18/10/2026 05:47:07
[2026-10-18 05:47:07,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:47:07,952.952 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:47:08,074.074 INFO    ] No existing commands found in stream
[2026-10-18 05:47:13,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:47:13,101.101 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-18 05:47:14,605.605 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:47:14,608.608 INFO    ] Checking for system updates...
[2026-10-18 05:47:14,647.647 INFO    ] 200
[2026-10-18 05:47:14,649.649 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:47:14,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:47:14,703.703 INFO    ] No update needed
[2026-10-18 05:47:14,706.706 INFO    ] Checking for camera pi updates...
[2026-10-18 05:47:14,739.739 INFO    ] 200
[2026-10-18 05:47:14,742.742 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:47:14,782.782 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:47:24,797.797 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:47:24,832.832 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:47:24,842.842 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:47:24,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:47:24,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:47:24,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:47:26,894.894 INFO    ] ================================================
[2026-10-18 05:47:26,910.910 INFO    ] Launching Daemon at Sun Oct 18 05:47:26 IST 2026
[2026-10-18 05:47:26,920.920 INFO    ] ================================================
[2026-10-18 05:47:27,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:47:27
[2026-10-18 05:47:28,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:47:28,519.519 INFO    ] Initializing speech engine...
[2026-10-18 05:47:28,527.527 INFO    ] 2026-10-18 05:47:28
[2026-10-18 05:47:28,815.815 INFO    ] 2026-10-18 05:47:28
[2026-10-18 05:47:28,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:47:29,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:47:29,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:47:29,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:47:29,379.379 INFO    ] time= 18/10/2026 05:47:29
[2026-10-18 05:47:29,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:47:29,419.419 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:47:29,556.556 INFO    ] No existing commands found in stream
[2026-10-18 05:47:34,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:47:34,585.585 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-18 05:47:36,579.579 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 05:47:36,582.582 INFO    ] Checking for system updates...
[2026-10-18 05:47:36,618.618 INFO    ] 200
[2026-10-18 05:47:36,621.621 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:47:36,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:47:36,678.678 INFO    ] No update needed
[2026-10-18 05:47:36,681.681 INFO    ] Checking for camera pi updates...
[2026-10-18 05:47:36,716.716 INFO    ] 200
[2026-10-18 05:47:36,719.719 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:47:36,760.760 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:47:46,776.776 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:47:46,816.816 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:47:46,827.827 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:47:46,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:47:46,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:47:46,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:47:48,881.881 INFO    ] ================================================
[2026-10-18 05:47:48,897.897 INFO    ] Launching Daemon at Sun Oct 18 05:47:48 IST 2026
[2026-10-18 05:47:48,908.908 INFO    ] ================================================
[2026-10-18 05:47:49,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:47:49
[2026-10-18 05:47:50,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:47:50,340.340 INFO    ] Initializing speech engine...
[2026-10-18 05:47:50,350.350 INFO    ] 2026-10-18 05:47:50
[2026-10-18 05:47:50,599.599 INFO    ] 2026-10-18 05:47:50
[2026-10-18 05:47:50,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:47:50,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:47:50,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:47:51,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:47:51,166.166 INFO    ] time= 18/10/2026 05:47:51
[2026-10-18 05:47:51,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:47:51,194.194 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:47:51,327.327 INFO    ] No existing commands found in stream
[2026-10-18 05:47:56,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:47:56,343.343 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-18 05:47:57,383.383 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:47:57,386.386 INFO    ] Checking for system updates...
[2026-10-18 05:47:57,422.422 INFO    ] 200
[2026-10-18 05:47:57,425.425 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:47:57,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:47:57,483.483 INFO    ] No update needed
[2026-10-18 05:47:57,486.486 INFO    ] Checking for camera pi updates...
[2026-10-18 05:47:57,520.520 INFO    ] 200
[2026-10-18 05:47:57,523.523 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:47:57,564.564 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:48:07,581.581 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:48:07,621.621 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:48:07,631.631 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:48:07,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:48:07,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:48:07,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:48:09,688.688 INFO    ] ================================================
[2026-10-18 05:48:09,703.703 INFO    ] Launching Daemon at Sun Oct 18 05:48:09 IST 2026
[2026-10-18 05:48:09,714.714 INFO    ] ================================================
[2026-10-18 05:48:10,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:48:10
[2026-10-18 05:48:10,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:48:11,134.134 INFO    ] Initializing speech engine...
[2026-10-18 05:48:11,140.140 INFO    ] 2026-10-18 05:48:11
[2026-10-18 05:48:11,431.431 INFO    ] 2026-10-18 05:48:11
[2026-10-18 05:48:11,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:48:11,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:48:11,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:48:11,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:48:11,934.934 INFO    ] time= 18/10/2026 05:48:11
[2026-10-18 05:48:12,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:48:12,054.054 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:48:12,173.173 INFO    ] No existing commands found in stream
[2026-10-18 05:48:17,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:48:17,201.201 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-18 05:48:20,714.714 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:48:20,716.716 INFO    ] Checking for system updates...
[2026-10-18 05:48:20,756.756 INFO    ] 200
[2026-10-18 05:48:20,758.758 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:48:20,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:48:20,812.812 INFO    ] No update needed
[2026-10-18 05:48:20,815.815 INFO    ] Checking for camera pi updates...
[2026-10-18 05:48:20,848.848 INFO    ] 200
[2026-10-18 05:48:20,850.850 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:48:20,890.890 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:48:30,906.906 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:48:30,940.940 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:48:30,950.950 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:48:30,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:48:30,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:48:30,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:48:33,004.004 INFO    ] ================================================
[2026-10-18 05:48:33,021.021 INFO    ] Launching Daemon at Sun Oct 18 05:48:33 IST 2026
[2026-10-18 05:48:33,034.034 INFO    ] ================================================
[2026-10-18 05:48:33,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:48:33
[2026-10-18 05:48:34,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:48:34,641.641 INFO    ] Initializing speech engine...
[2026-10-18 05:48:34,655.655 INFO    ] 2026-10-18 05:48:34
[2026-10-18 05:48:34,934.934 INFO    ] 2026-10-18 05:48:34
[2026-10-18 05:48:34,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:48:35,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:48:35,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:48:35,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:48:35,492.492 INFO    ] time= 18/10/2026 05:48:35
[2026-10-18 05:48:35,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:48:35,529.529 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:48:35,632.632 INFO    ] No existing commands found in stream
[2026-10-18 05:48:40,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:48:40,659.659 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-18 05:48:42,492.492 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 05:48:42,495.495 INFO    ] Checking for system updates...
[2026-10-18 05:48:42,533.533 INFO    ] 200
[2026-10-18 05:48:42,535.535 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:48:42,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:48:42,590.590 INFO    ] No update needed
[2026-10-18 05:48:42,593.593 INFO    ] Checking for camera pi updates...
[2026-10-18 05:48:42,627.627 INFO    ] 200
[2026-10-18 05:48:42,629.629 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:48:42,670.670 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:48:52,686.686 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:48:52,722.722 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:48:52,732.732 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:48:52,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:48:52,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:48:52,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:48:54,785.785 INFO    ] ================================================
[2026-10-18 05:48:54,801.801 INFO    ] Launching Daemon at Sun Oct 18 05:48:54 IST 2026
[2026-10-18 05:48:54,812.812 INFO    ] ================================================
[2026-10-18 05:48:55,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:48:55
[2026-10-18 05:48:56,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:48:56,424.424 INFO    ] Initializing speech engine...
[2026-10-18 05:48:56,430.430 INFO    ] 2026-10-18 05:48:56
[2026-10-18 05:48:56,714.714 INFO    ] 2026-10-18 05:48:56
[2026-10-18 05:48:56,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:48:57,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:48:57,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:48:57,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:48:57,246.246 INFO    ] time= 18/10/2026 05:48:57
[2026-10-18 05:48:57,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:48:57,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:48:57,421.421 INFO    ] No existing commands found in stream
[2026-10-18 05:49:02,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:49:02,451.451 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-18 05:49:05,438.438 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:49:05,441.441 INFO    ] Checking for system updates...
[2026-10-18 05:49:05,476.476 INFO    ] 200
[2026-10-18 05:49:05,479.479 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:49:05,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:49:05,534.534 INFO    ] No update needed
[2026-10-18 05:49:05,536.536 INFO    ] Checking for camera pi updates...
[2026-10-18 05:49:05,569.569 INFO    ] 200
[2026-10-18 05:49:05,572.572 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:49:05,611.611 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:49:15,626.626 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:49:15,661.661 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:49:15,671.671 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:49:15,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:49:15,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:49:15,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:49:17,724.724 INFO    ] ================================================
[2026-10-18 05:49:17,739.739 INFO    ] Launching Daemon at Sun Oct 18 05:49:17 IST 2026
[2026-10-18 05:49:17,750.750 INFO    ] ================================================
[2026-10-18 05:49:18,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:49:18
[2026-10-18 05:49:18,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:49:19,203.203 INFO    ] Initializing speech engine...
[2026-10-18 05:49:19,210.210 INFO    ] 2026-10-18 05:49:19
[2026-10-18 05:49:19,476.476 INFO    ] 2026-10-18 05:49:19
[2026-10-18 05:49:19,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:49:19,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:49:19,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:49:19,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:49:20,002.002 INFO    ] time= 18/10/2026 05:49:19
[2026-10-18 05:49:20,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:49:20,105.105 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:49:20,240.240 INFO    ] No existing commands found in stream
[2026-10-18 05:49:25,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:49:25,275.275 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-18 05:49:26,878.878 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:49:26,880.880 INFO    ] Checking for system updates...
[2026-10-18 05:49:26,920.920 INFO    ] 200
[2026-10-18 05:49:26,922.922 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:49:26,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:49:26,976.976 INFO    ] No update needed
[2026-10-18 05:49:26,979.979 INFO    ] Checking for camera pi updates...
[2026-10-18 05:49:27,012.012 INFO    ] 200
[2026-10-18 05:49:27,015.015 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:49:27,055.055 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:49:37,069.069 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:49:37,105.105 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:49:37,115.115 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:49:37,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:49:37,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:49:37,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:49:39,167.167 INFO    ] ================================================
[2026-10-18 05:49:39,182.182 INFO    ] Launching Daemon at Sun Oct 18 05:49:39 IST 2026
[2026-10-18 05:49:39,193.193 INFO    ] ================================================
[2026-10-18 05:49:39,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:49:39
[2026-10-18 05:49:40,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:49:40,641.641 INFO    ] Initializing speech engine...
[2026-10-18 05:49:40,648.648 INFO    ] 2026-10-18 05:49:40
[2026-10-18 05:49:40,944.944 INFO    ] 2026-10-18 05:49:40
[2026-10-18 05:49:40,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:49:41,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:49:41,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:49:41,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:49:41,371.371 INFO    ] time= 18/10/2026 05:49:41
[2026-10-18 05:49:41,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:49:41,383.383 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:49:41,521.521 INFO    ] No existing commands found in stream
[2026-10-18 05:49:46,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:49:46,549.549 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-18 05:49:50,713.713 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:49:50,716.716 INFO    ] Checking for system updates...
[2026-10-18 05:49:50,756.756 INFO    ] 200
[2026-10-18 05:49:50,759.759 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:49:50,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:49:50,813.813 INFO    ] No update needed
[2026-10-18 05:49:50,815.815 INFO    ] Checking for camera pi updates...
[2026-10-18 05:49:50,853.853 INFO    ] 200
[2026-10-18 05:49:50,855.855 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:49:50,895.895 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:50:00,910.910 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:50:00,947.947 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:50:00,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:50:00,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:50:00,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:50:00,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:50:03,021.021 INFO    ] ================================================
[2026-10-18 05:50:03,048.048 INFO    ] Launching Daemon at Sun Oct 18 05:50:03 IST 2026
[2026-10-18 05:50:03,065.065 INFO    ] ================================================
[2026-10-18 05:50:03,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:50:03
[2026-10-18 05:50:04,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:50:04,685.685 INFO    ] Initializing speech engine...
[2026-10-18 05:50:04,691.691 INFO    ] 2026-10-18 05:50:04
[2026-10-18 05:50:04,952.952 INFO    ] 2026-10-18 05:50:04
[2026-10-18 05:50:04,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:50:05,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:50:05,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:50:05,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:50:05,360.360 INFO    ] time= 18/10/2026 05:50:05
[2026-10-18 05:50:05,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:50:05,414.414 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:50:05,545.545 INFO    ] No existing commands found in stream
[2026-10-18 05:50:10,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:50:10,573.573 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-18 05:50:12,125.125 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:50:12,128.128 INFO    ] Checking for system updates...
[2026-10-18 05:50:12,163.163 INFO    ] 200
[2026-10-18 05:50:12,167.167 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:50:12,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:50:12,222.222 INFO    ] No update needed
[2026-10-18 05:50:12,224.224 INFO    ] Checking for camera pi updates...
[2026-10-18 05:50:12,261.261 INFO    ] 200
[2026-10-18 05:50:12,263.263 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:50:12,303.303 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:50:22,318.318 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:50:22,356.356 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:50:22,367.367 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:50:22,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:50:22,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:50:22,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:50:24,423.423 INFO    ] ================================================
[2026-10-18 05:50:24,439.439 INFO    ] Launching Daemon at Sun Oct 18 05:50:24 IST 2026
[2026-10-18 05:50:24,450.450 INFO    ] ================================================
[2026-10-18 05:50:25,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:50:25
[2026-10-18 05:50:25,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:50:25,861.861 INFO    ] Initializing speech engine...
[2026-10-18 05:50:25,870.870 INFO    ] 2026-10-18 05:50:25
[2026-10-18 05:50:26,161.161 INFO    ] 2026-10-18 05:50:26
[2026-10-18 05:50:26,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:50:26,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:50:26,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:50:26,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:50:26,679.679 INFO    ] time= 18/10/2026 05:50:26
[2026-10-18 05:50:26,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:50:26,783.783 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:50:26,915.915 INFO    ] No existing commands found in stream
[2026-10-18 05:50:31,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:50:31,943.943 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-18 05:50:34,298.298 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:50:34,300.300 INFO    ] Checking for system updates...
[2026-10-18 05:50:34,341.341 INFO    ] 200
[2026-10-18 05:50:34,343.343 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:50:34,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:50:34,405.405 INFO    ] No update needed
[2026-10-18 05:50:34,408.408 INFO    ] Checking for camera pi updates...
[2026-10-18 05:50:34,445.445 INFO    ] 200
[2026-10-18 05:50:34,448.448 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:50:34,494.494 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:50:44,510.510 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:50:44,550.550 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:50:44,561.561 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:50:44,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:50:44,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:50:44,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:50:46,615.615 INFO    ] ================================================
[2026-10-18 05:50:46,631.631 INFO    ] Launching Daemon at Sun Oct 18 05:50:46 IST 2026
[2026-10-18 05:50:46,642.642 INFO    ] ================================================
[2026-10-18 05:50:47,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:50:47
[2026-10-18 05:50:47,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:50:48,101.101 INFO    ] Initializing speech engine...
[2026-10-18 05:50:48,107.107 INFO    ] 2026-10-18 05:50:48
[2026-10-18 05:50:48,382.382 INFO    ] 2026-10-18 05:50:48
[2026-10-18 05:50:48,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:50:48,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:50:48,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:50:48,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:50:48,916.916 INFO    ] time= 18/10/2026 05:50:48
[2026-10-18 05:50:48,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:50:48,951.951 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:50:49,071.071 INFO    ] No existing commands found in stream
[2026-10-18 05:50:54,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:50:54,098.098 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-18 05:50:56,044.044 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:50:56,047.047 INFO    ] Checking for system updates...
[2026-10-18 05:50:56,087.087 INFO    ] 200
[2026-10-18 05:50:56,089.089 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:50:56,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:50:56,144.144 INFO    ] No update needed
[2026-10-18 05:50:56,146.146 INFO    ] Checking for camera pi updates...
[2026-10-18 05:50:56,180.180 INFO    ] 200
[2026-10-18 05:50:56,183.183 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:50:56,222.222 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:51:06,238.238 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:51:06,273.273 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:51:06,283.283 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:51:06,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:51:06,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:51:06,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:51:08,338.338 INFO    ] ================================================
[2026-10-18 05:51:08,354.354 INFO    ] Launching Daemon at Sun Oct 18 05:51:08 IST 2026
[2026-10-18 05:51:08,365.365 INFO    ] ================================================
[2026-10-18 05:51:08,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:51:08
[2026-10-18 05:51:09,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:51:09,797.797 INFO    ] Initializing speech engine...
[2026-10-18 05:51:09,807.807 INFO    ] 2026-10-18 05:51:09
[2026-10-18 05:51:10,053.053 INFO    ] 2026-10-18 05:51:10
[2026-10-18 05:51:10,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:51:10,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:51:10,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:51:10,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:51:10,611.611 INFO    ] time= 18/10/2026 05:51:10
[2026-10-18 05:51:10,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:51:10,639.639 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:51:10,777.777 INFO    ] No existing commands found in stream
[2026-10-18 05:51:15,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:51:15,795.795 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-18 05:51:17,788.788 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:51:17,791.791 INFO    ] Checking for system updates...
[2026-10-18 05:51:17,826.826 INFO    ] 200
[2026-10-18 05:51:17,829.829 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:51:17,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:51:17,883.883 INFO    ] No update needed
[2026-10-18 05:51:17,886.886 INFO    ] Checking for camera pi updates...
[2026-10-18 05:51:17,922.922 INFO    ] 200
[2026-10-18 05:51:17,925.925 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:51:17,966.966 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:51:27,982.982 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:51:28,016.016 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:51:28,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:51:28,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:51:28,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:51:28,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:51:30,079.079 INFO    ] ================================================
[2026-10-18 05:51:30,095.095 INFO    ] Launching Daemon at Sun Oct 18 05:51:30 IST 2026
[2026-10-18 05:51:30,106.106 INFO    ] ================================================
[2026-10-18 05:51:30,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:51:30
[2026-10-18 05:51:31,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:51:31,541.541 INFO    ] Initializing speech engine...
[2026-10-18 05:51:31,548.548 INFO    ] 2026-10-18 05:51:31
[2026-10-18 05:51:31,863.863 INFO    ] 2026-10-18 05:51:31
[2026-10-18 05:51:31,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:51:32,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:51:32,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:51:32,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:51:32,323.323 INFO    ] time= 18/10/2026 05:51:32
[2026-10-18 05:51:32,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:51:32,354.354 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:51:32,489.489 INFO    ] No existing commands found in stream
[2026-10-18 05:51:37,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:51:37,518.518 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-18 05:51:38,729.729 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:51:38,731.731 INFO    ] Checking for system updates...
[2026-10-18 05:51:38,771.771 INFO    ] 200
[2026-10-18 05:51:38,774.774 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:51:38,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:51:38,828.828 INFO    ] No update needed
[2026-10-18 05:51:38,831.831 INFO    ] Checking for camera pi updates...
[2026-10-18 05:51:38,868.868 INFO    ] 200
[2026-10-18 05:51:38,870.870 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:51:38,910.910 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:51:48,925.925 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:51:48,960.960 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:51:48,970.970 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:51:48,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:51:48,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:51:48,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:51:51,023.023 INFO    ] ================================================
[2026-10-18 05:51:51,039.039 INFO    ] Launching Daemon at Sun Oct 18 05:51:51 IST 2026
[2026-10-18 05:51:51,051.051 INFO    ] ================================================
[2026-10-18 05:51:51,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:51:51
[2026-10-18 05:51:52,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:51:52,512.512 INFO    ] Initializing speech engine...
[2026-10-18 05:51:52,518.518 INFO    ] 2026-10-18 05:51:52
[2026-10-18 05:51:52,772.772 INFO    ] 2026-10-18 05:51:52
[2026-10-18 05:51:52,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:51:53,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:51:53,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:51:53,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:51:53,322.322 INFO    ] time= 18/10/2026 05:51:53
[2026-10-18 05:51:53,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:51:53,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:51:53,473.473 INFO    ] No existing commands found in stream
[2026-10-18 05:51:58,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:51:58,489.489 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-18 05:52:01,888.888 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:52:01,891.891 INFO    ] Checking for system updates...
[2026-10-18 05:52:01,934.934 INFO    ] 200
[2026-10-18 05:52:01,937.937 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:52:02,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:52:02,013.013 INFO    ] No update needed
[2026-10-18 05:52:02,016.016 INFO    ] Checking for camera pi updates...
[2026-10-18 05:52:02,069.069 INFO    ] 200
[2026-10-18 05:52:02,073.073 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:52:02,130.130 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:52:12,148.148 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:52:12,187.187 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:52:12,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:52:12,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:52:12,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:52:12,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:52:14,253.253 INFO    ] ================================================
[2026-10-18 05:52:14,269.269 INFO    ] Launching Daemon at Sun Oct 18 05:52:14 IST 2026
[2026-10-18 05:52:14,280.280 INFO    ] ================================================
[2026-10-18 05:52:14,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:52:14
[2026-10-18 05:52:15,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:52:15,707.707 INFO    ] Initializing speech engine...
[2026-10-18 05:52:15,716.716 INFO    ] 2026-10-18 05:52:15
[2026-10-18 05:52:15,974.974 INFO    ] 2026-10-18 05:52:15
[2026-10-18 05:52:16,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:52:16,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:52:16,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:52:16,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:52:16,441.441 INFO    ] time= 18/10/2026 05:52:16
[2026-10-18 05:52:16,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:52:16,526.526 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:52:16,646.646 INFO    ] No existing commands found in stream
[2026-10-18 05:52:21,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:52:21,680.680 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-18 05:52:24,770.770 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:52:24,772.772 INFO    ] Checking for system updates...
[2026-10-18 05:52:24,807.807 INFO    ] 200
[2026-10-18 05:52:24,810.810 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:52:24,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:52:24,874.874 INFO    ] No update needed
[2026-10-18 05:52:24,877.877 INFO    ] Checking for camera pi updates...
[2026-10-18 05:52:24,915.915 INFO    ] 200
[2026-10-18 05:52:24,917.917 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:52:24,959.959 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:52:34,973.973 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:52:35,012.012 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:52:35,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:52:35,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:52:35,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:52:35,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:52:37,078.078 INFO    ] ================================================
[2026-10-18 05:52:37,094.094 INFO    ] Launching Daemon at Sun Oct 18 05:52:37 IST 2026
[2026-10-18 05:52:37,105.105 INFO    ] ================================================
[2026-10-18 05:52:37,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:52:37
[2026-10-18 05:52:38,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:52:38,604.604 INFO    ] Initializing speech engine...
[2026-10-18 05:52:38,614.614 INFO    ] 2026-10-18 05:52:38
[2026-10-18 05:52:38,874.874 INFO    ] 2026-10-18 05:52:38
[2026-10-18 05:52:38,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:52:39,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:52:39,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:52:39,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:52:39,416.416 INFO    ] time= 18/10/2026 05:52:39
[2026-10-18 05:52:39,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:52:39,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:52:39,571.571 INFO    ] No existing commands found in stream
[2026-10-18 05:52:44,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:52:44,594.594 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-18 05:52:45,600.600 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:52:45,603.603 INFO    ] Checking for system updates...
[2026-10-18 05:52:45,640.640 INFO    ] 200
[2026-10-18 05:52:45,644.644 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:52:45,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:52:45,712.712 INFO    ] No update needed
[2026-10-18 05:52:45,714.714 INFO    ] Checking for camera pi updates...
[2026-10-18 05:52:45,750.750 INFO    ] 200
[2026-10-18 05:52:45,752.752 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:52:45,792.792 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:52:55,807.807 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:52:55,843.843 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:52:55,853.853 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:52:55,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:52:55,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:52:55,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:52:57,905.905 INFO    ] ================================================
[2026-10-18 05:52:57,921.921 INFO    ] Launching Daemon at Sun Oct 18 05:52:57 IST 2026
[2026-10-18 05:52:57,932.932 INFO    ] ================================================
[2026-10-18 05:52:58,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:52:58
[2026-10-18 05:52:59,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:52:59,325.325 INFO    ] Initializing speech engine...
[2026-10-18 05:52:59,333.333 INFO    ] 2026-10-18 05:52:59
[2026-10-18 05:52:59,606.606 INFO    ] 2026-10-18 05:52:59
[2026-10-18 05:52:59,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:52:59,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:52:59,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:53:00,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:53:00,104.104 INFO    ] time= 18/10/2026 05:53:00
[2026-10-18 05:53:00,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:53:00,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:53:00,303.303 INFO    ] No existing commands found in stream
[2026-10-18 05:53:05,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:53:05,331.331 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-18 05:53:09,314.314 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:53:09,317.317 INFO    ] Checking for system updates...
[2026-10-18 05:53:09,353.353 INFO    ] 200
[2026-10-18 05:53:09,355.355 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:53:09,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:53:09,417.417 INFO    ] No update needed
[2026-10-18 05:53:09,419.419 INFO    ] Checking for camera pi updates...
[2026-10-18 05:53:09,455.455 INFO    ] 200
[2026-10-18 05:53:09,458.458 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:53:09,497.497 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:53:19,513.513 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:53:19,547.547 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:53:19,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:53:19,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:53:19,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:53:19,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:53:21,611.611 INFO    ] ================================================
[2026-10-18 05:53:21,626.626 INFO    ] Launching Daemon at Sun Oct 18 05:53:21 IST 2026
[2026-10-18 05:53:21,637.637 INFO    ] ================================================
[2026-10-18 05:53:22,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:53:22
[2026-10-18 05:53:22,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:53:23,247.247 INFO    ] Initializing speech engine...
[2026-10-18 05:53:23,258.258 INFO    ] 2026-10-18 05:53:23
[2026-10-18 05:53:23,546.546 INFO    ] 2026-10-18 05:53:23
[2026-10-18 05:53:23,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:53:23,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:53:23,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:53:24,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:53:24,098.098 INFO    ] time= 18/10/2026 05:53:24
[2026-10-18 05:53:24,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:53:24,134.134 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:53:24,259.259 INFO    ] No existing commands found in stream
[2026-10-18 05:53:29,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:53:29,288.288 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-18 05:53:31,221.221 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:53:31,224.224 INFO    ] Checking for system updates...
[2026-10-18 05:53:31,261.261 INFO    ] 200
[2026-10-18 05:53:31,263.263 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:53:31,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:53:31,319.319 INFO    ] No update needed
[2026-10-18 05:53:31,321.321 INFO    ] Checking for camera pi updates...
[2026-10-18 05:53:31,355.355 INFO    ] 200
[2026-10-18 05:53:31,358.358 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:53:31,407.407 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:53:41,424.424 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:53:41,463.463 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:53:41,475.475 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:53:41,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:53:41,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:53:41,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:53:43,529.529 INFO    ] ================================================
[2026-10-18 05:53:43,544.544 INFO    ] Launching Daemon at Sun Oct 18 05:53:43 IST 2026
[2026-10-18 05:53:43,555.555 INFO    ] ================================================
[2026-10-18 05:53:44,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:53:44
[2026-10-18 05:53:44,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:53:45,165.165 INFO    ] Initializing speech engine...
[2026-10-18 05:53:45,176.176 INFO    ] 2026-10-18 05:53:45
[2026-10-18 05:53:45,483.483 INFO    ] 2026-10-18 05:53:45
[2026-10-18 05:53:45,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:53:45,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:53:45,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:53:45,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:53:46,000.000 INFO    ] time= 18/10/2026 05:53:45
[2026-10-18 05:53:46,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:53:46,038.038 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:53:46,161.161 INFO    ] No existing commands found in stream
[2026-10-18 05:53:51,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:53:51,201.201 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-18 05:53:52,038.038 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:53:52,041.041 INFO    ] Checking for system updates...
[2026-10-18 05:53:52,080.080 INFO    ] 200
[2026-10-18 05:53:52,082.082 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:53:52,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:53:52,138.138 INFO    ] No update needed
[2026-10-18 05:53:52,140.140 INFO    ] Checking for camera pi updates...
[2026-10-18 05:53:52,179.179 INFO    ] 200
[2026-10-18 05:53:52,181.181 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:53:52,221.221 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:54:02,237.237 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:54:02,278.278 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:54:02,289.289 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:54:02,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:54:02,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:54:02,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:54:04,348.348 INFO    ] ================================================
[2026-10-18 05:54:04,363.363 INFO    ] Launching Daemon at Sun Oct 18 05:54:04 IST 2026
[2026-10-18 05:54:04,375.375 INFO    ] ================================================
[2026-10-18 05:54:04,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:54:04
[2026-10-18 05:54:05,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:54:05,809.809 INFO    ] Initializing speech engine...
[2026-10-18 05:54:05,817.817 INFO    ] 2026-10-18 05:54:05
[2026-10-18 05:54:06,112.112 INFO    ] 2026-10-18 05:54:06
[2026-10-18 05:54:06,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:54:06,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:54:06,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:54:06,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:54:06,638.638 INFO    ] time= 18/10/2026 05:54:06
[2026-10-18 05:54:06,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:54:06,737.737 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:54:06,878.878 INFO    ] No existing commands found in stream
[2026-10-18 05:54:11,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:54:11,903.903 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-18 05:54:15,361.361 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:54:15,363.363 INFO    ] Checking for system updates...
[2026-10-18 05:54:15,399.399 INFO    ] 200
[2026-10-18 05:54:15,401.401 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:54:15,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:54:15,456.456 INFO    ] No update needed
[2026-10-18 05:54:15,458.458 INFO    ] Checking for camera pi updates...
[2026-10-18 05:54:15,492.492 INFO    ] 200
[2026-10-18 05:54:15,494.494 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:54:15,541.541 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:54:25,556.556 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:54:25,592.592 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:54:25,601.601 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:54:25,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:54:25,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:54:25,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:54:27,655.655 INFO    ] ================================================
[2026-10-18 05:54:27,670.670 INFO    ] Launching Daemon at Sun Oct 18 05:54:27 IST 2026
[2026-10-18 05:54:27,681.681 INFO    ] ================================================
[2026-10-18 05:54:28,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:54:28
[2026-10-18 05:54:28,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:54:29,129.129 INFO    ] Initializing speech engine...
[2026-10-18 05:54:29,135.135 INFO    ] 2026-10-18 05:54:29
[2026-10-18 05:54:29,436.436 INFO    ] 2026-10-18 05:54:29
[2026-10-18 05:54:29,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:54:29,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:54:29,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:54:29,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:54:29,954.954 INFO    ] time= 18/10/2026 05:54:29
[2026-10-18 05:54:30,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:54:30,062.062 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:54:30,219.219 INFO    ] No existing commands found in stream
[2026-10-18 05:54:35,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:54:35,250.250 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-18 05:54:38,311.311 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:54:38,314.314 INFO    ] Checking for system updates...
[2026-10-18 05:54:38,353.353 INFO    ] 200
[2026-10-18 05:54:38,356.356 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:54:38,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:54:38,418.418 INFO    ] No update needed
[2026-10-18 05:54:38,420.420 INFO    ] Checking for camera pi updates...
[2026-10-18 05:54:38,453.453 INFO    ] 200
[2026-10-18 05:54:38,456.456 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:54:38,496.496 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:54:48,512.512 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:54:48,548.548 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:54:48,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:54:48,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:54:48,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:54:48,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:54:50,612.612 INFO    ] ================================================
[2026-10-18 05:54:50,629.629 INFO    ] Launching Daemon at Sun Oct 18 05:54:50 IST 2026
[2026-10-18 05:54:50,646.646 INFO    ] ================================================
[2026-10-18 05:54:51,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:54:51
[2026-10-18 05:54:51,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:54:52,081.081 INFO    ] Initializing speech engine...
[2026-10-18 05:54:52,087.087 INFO    ] 2026-10-18 05:54:52
[2026-10-18 05:54:52,385.385 INFO    ] 2026-10-18 05:54:52
[2026-10-18 05:54:52,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:54:52,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:54:52,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:54:52,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:54:52,807.807 INFO    ] time= 18/10/2026 05:54:52
[2026-10-18 05:54:52,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:54:52,818.818 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:54:52,896.896 INFO    ] No existing commands found in stream
[2026-10-18 05:54:57,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:54:57,923.923 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-18 05:55:00,268.268 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:55:00,271.271 INFO    ] Checking for system updates...
[2026-10-18 05:55:00,313.313 INFO    ] 200
[2026-10-18 05:55:00,316.316 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:55:00,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:55:00,373.373 INFO    ] No update needed
[2026-10-18 05:55:00,375.375 INFO    ] Checking for camera pi updates...
[2026-10-18 05:55:00,409.409 INFO    ] 200
[2026-10-18 05:55:00,412.412 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:55:00,452.452 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:55:10,466.466 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:55:10,504.504 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:55:10,514.514 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:55:10,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:55:10,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:55:10,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:55:12,567.567 INFO    ] ================================================
[2026-10-18 05:55:12,582.582 INFO    ] Launching Daemon at Sun Oct 18 05:55:12 IST 2026
[2026-10-18 05:55:12,593.593 INFO    ] ================================================
[2026-10-18 05:55:13,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:55:13
[2026-10-18 05:55:13,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:55:14,024.024 INFO    ] Initializing speech engine...
[2026-10-18 05:55:14,032.032 INFO    ] 2026-10-18 05:55:14
[2026-10-18 05:55:14,288.288 INFO    ] 2026-10-18 05:55:14
[2026-10-18 05:55:14,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:55:14,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:55:14,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:55:14,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:55:14,840.840 INFO    ] time= 18/10/2026 05:55:14
[2026-10-18 05:55:14,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:55:14,865.865 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:55:15,000.000 INFO    ] No existing commands found in stream
[2026-10-18 05:55:20,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:55:20,022.022 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-18 05:55:22,193.193 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 05:55:22,196.196 INFO    ] Checking for system updates...
[2026-10-18 05:55:22,231.231 INFO    ] 200
[2026-10-18 05:55:22,233.233 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:55:22,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:55:22,287.287 INFO    ] No update needed
[2026-10-18 05:55:22,289.289 INFO    ] Checking for camera pi updates...
[2026-10-18 05:55:22,323.323 INFO    ] 200
[2026-10-18 05:55:22,325.325 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:55:22,366.366 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:55:32,380.380 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:55:32,416.416 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:55:32,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:55:32,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:55:32,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:55:32,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:55:34,482.482 INFO    ] ================================================
[2026-10-18 05:55:34,497.497 INFO    ] Launching Daemon at Sun Oct 18 05:55:34 IST 2026
[2026-10-18 05:55:34,507.507 INFO    ] ================================================
[2026-10-18 05:55:35,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:55:35
[2026-10-18 05:55:35,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:55:35,933.933 INFO    ] Initializing speech engine...
[2026-10-18 05:55:35,939.939 INFO    ] 2026-10-18 05:55:35
[2026-10-18 05:55:36,232.232 INFO    ] 2026-10-18 05:55:36
[2026-10-18 05:55:36,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:55:36,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:55:36,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:55:36,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:55:36,837.837 INFO    ] time= 18/10/2026 05:55:36
[2026-10-18 05:55:36,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:55:36,891.891 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:55:37,046.046 INFO    ] No existing commands found in stream
[2026-10-18 05:55:42,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:55:42,064.064 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-18 05:55:44,121.121 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:55:44,124.124 INFO    ] Checking for system updates...
[2026-10-18 05:55:44,164.164 INFO    ] 200
[2026-10-18 05:55:44,167.167 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:55:44,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:55:44,228.228 INFO    ] No update needed
[2026-10-18 05:55:44,230.230 INFO    ] Checking for camera pi updates...
[2026-10-18 05:55:44,267.267 INFO    ] 200
[2026-10-18 05:55:44,269.269 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:55:44,311.311 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:55:54,327.327 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:55:54,362.362 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:55:54,372.372 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:55:54,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:55:54,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:55:54,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:55:56,426.426 INFO    ] ================================================
[2026-10-18 05:55:56,441.441 INFO    ] Launching Daemon at Sun Oct 18 05:55:56 IST 2026
[2026-10-18 05:55:56,453.453 INFO    ] ================================================
[2026-10-18 05:55:57,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:55:57
[2026-10-18 05:55:57,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:55:57,898.898 INFO    ] Initializing speech engine...
[2026-10-18 05:55:57,904.904 INFO    ] 2026-10-18 05:55:57
[2026-10-18 05:55:58,201.201 INFO    ] 2026-10-18 05:55:58
[2026-10-18 05:55:58,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:55:58,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:55:58,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:55:58,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:55:58,734.734 INFO    ] time= 18/10/2026 05:55:58
[2026-10-18 05:55:58,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:55:58,843.843 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:55:58,970.970 INFO    ] No existing commands found in stream
[2026-10-18 05:56:03,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:56:03,990.990 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-18 05:56:05,671.671 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:56:05,674.674 INFO    ] Checking for system updates...
[2026-10-18 05:56:05,712.712 INFO    ] 200
[2026-10-18 05:56:05,715.715 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:56:05,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:56:05,769.769 INFO    ] No update needed
[2026-10-18 05:56:05,772.772 INFO    ] Checking for camera pi updates...
[2026-10-18 05:56:05,807.807 INFO    ] 200
[2026-10-18 05:56:05,809.809 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:56:05,854.854 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:56:15,869.869 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:56:15,905.905 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:56:15,915.915 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:56:15,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:56:15,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:56:15,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:56:17,968.968 INFO    ] ================================================
[2026-10-18 05:56:17,983.983 INFO    ] Launching Daemon at Sun Oct 18 05:56:17 IST 2026
[2026-10-18 05:56:17,994.994 INFO    ] ================================================
[2026-10-18 05:56:18,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:56:18
[2026-10-18 05:56:19,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:56:19,441.441 INFO    ] Initializing speech engine...
[2026-10-18 05:56:19,458.458 INFO    ] 2026-10-18 05:56:19
[2026-10-18 05:56:19,708.708 INFO    ] 2026-10-18 05:56:19
[2026-10-18 05:56:19,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:56:19,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:56:20,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:56:20,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:56:20,198.198 INFO    ] time= 18/10/2026 05:56:20
[2026-10-18 05:56:20,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:56:20,276.276 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:56:20,416.416 INFO    ] No existing commands found in stream
[2026-10-18 05:56:25,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:56:25,435.435 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-18 05:56:27,658.658 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:56:27,661.661 INFO    ] Checking for system updates...
[2026-10-18 05:56:27,699.699 INFO    ] 200
[2026-10-18 05:56:27,702.702 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:56:27,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:56:27,758.758 INFO    ] No update needed
[2026-10-18 05:56:27,761.761 INFO    ] Checking for camera pi updates...
[2026-10-18 05:56:27,794.794 INFO    ] 200
[2026-10-18 05:56:27,797.797 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:56:27,837.837 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:56:37,853.853 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:56:37,888.888 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:56:37,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:56:37,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:56:37,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:56:37,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:56:39,952.952 INFO    ] ================================================
[2026-10-18 05:56:39,967.967 INFO    ] Launching Daemon at Sun Oct 18 05:56:39 IST 2026
[2026-10-18 05:56:39,978.978 INFO    ] ================================================
[2026-10-18 05:56:40,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:56:40
[2026-10-18 05:56:41,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:56:41,435.435 INFO    ] Initializing speech engine...
[2026-10-18 05:56:41,441.441 INFO    ] 2026-10-18 05:56:41
[2026-10-18 05:56:41,703.703 INFO    ] 2026-10-18 05:56:41
[2026-10-18 05:56:41,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:56:41,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:56:41,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:56:42,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:56:42,251.251 INFO    ] time= 18/10/2026 05:56:42
[2026-10-18 05:56:42,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:56:42,278.278 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:56:42,407.407 INFO    ] No existing commands found in stream
[2026-10-18 05:56:47,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:56:47,430.430 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-18 05:56:51,698.698 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:56:51,701.701 INFO    ] Checking for system updates...
[2026-10-18 05:56:51,736.736 INFO    ] 200
[2026-10-18 05:56:51,739.739 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:56:51,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:56:51,794.794 INFO    ] No update needed
[2026-10-18 05:56:51,796.796 INFO    ] Checking for camera pi updates...
[2026-10-18 05:56:51,833.833 INFO    ] 200
[2026-10-18 05:56:51,835.835 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:56:51,880.880 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:57:01,895.895 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:57:01,953.953 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:57:01,966.966 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:57:01,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:57:01,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:57:01,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:57:04,031.031 INFO    ] ================================================
[2026-10-18 05:57:04,047.047 INFO    ] Launching Daemon at Sun Oct 18 05:57:04 IST 2026
[2026-10-18 05:57:04,058.058 INFO    ] ================================================
[2026-10-18 05:57:04,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:57:04
[2026-10-18 05:57:05,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:57:05,520.520 INFO    ] Initializing speech engine...
[2026-10-18 05:57:05,530.530 INFO    ] 2026-10-18 05:57:05
[2026-10-18 05:57:05,792.792 INFO    ] 2026-10-18 05:57:05
[2026-10-18 05:57:05,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:57:06,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:57:06,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:57:06,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:57:06,335.335 INFO    ] time= 18/10/2026 05:57:06
[2026-10-18 05:57:06,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:57:06,362.362 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:57:06,487.487 INFO    ] No existing commands found in stream
[2026-10-18 05:57:11,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:57:11,505.505 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-18 05:57:15,137.137 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:57:15,140.140 INFO    ] Checking for system updates...
[2026-10-18 05:57:15,176.176 INFO    ] 200
[2026-10-18 05:57:15,178.178 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:57:15,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:57:15,232.232 INFO    ] No update needed
[2026-10-18 05:57:15,234.234 INFO    ] Checking for camera pi updates...
[2026-10-18 05:57:15,271.271 INFO    ] 200
[2026-10-18 05:57:15,274.274 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:57:15,314.314 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:57:25,330.330 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:57:25,364.364 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:57:25,374.374 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:57:25,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:57:25,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:57:25,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:57:27,427.427 INFO    ] ================================================
[2026-10-18 05:57:27,444.444 INFO    ] Launching Daemon at Sun Oct 18 05:57:27 IST 2026
[2026-10-18 05:57:27,455.455 INFO    ] ================================================
[2026-10-18 05:57:28,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:57:28
[2026-10-18 05:57:28,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:57:28,859.859 INFO    ] Initializing speech engine...
[2026-10-18 05:57:28,881.881 INFO    ] 2026-10-18 05:57:28
[2026-10-18 05:57:29,134.134 INFO    ] 2026-10-18 05:57:29
[2026-10-18 05:57:29,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:57:29,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:57:29,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:57:29,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:57:29,693.693 INFO    ] time= 18/10/2026 05:57:29
[2026-10-18 05:57:29,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:57:29,718.718 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:57:29,848.848 INFO    ] No existing commands found in stream
[2026-10-18 05:57:34,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:57:34,880.880 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-18 05:57:38,756.756 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:57:38,759.759 INFO    ] Checking for system updates...
[2026-10-18 05:57:38,796.796 INFO    ] 200
[2026-10-18 05:57:38,799.799 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:57:38,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:57:38,860.860 INFO    ] No update needed
[2026-10-18 05:57:38,863.863 INFO    ] Checking for camera pi updates...
[2026-10-18 05:57:38,897.897 INFO    ] 200
[2026-10-18 05:57:38,900.900 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:57:38,941.941 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:57:48,958.958 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:57:48,998.998 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:57:49,010.010 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:57:49,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:57:49,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:57:49,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:57:51,065.065 INFO    ] ================================================
[2026-10-18 05:57:51,081.081 INFO    ] Launching Daemon at Sun Oct 18 05:57:51 IST 2026
[2026-10-18 05:57:51,093.093 INFO    ] ================================================
[2026-10-18 05:57:51,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:57:51
[2026-10-18 05:57:52,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:57:52,515.515 INFO    ] Initializing speech engine...
[2026-10-18 05:57:52,536.536 INFO    ] 2026-10-18 05:57:52
[2026-10-18 05:57:52,818.818 INFO    ] 2026-10-18 05:57:52
[2026-10-18 05:57:52,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:57:53,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:57:53,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:57:53,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:57:53,254.254 INFO    ] time= 18/10/2026 05:57:53
[2026-10-18 05:57:53,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:57:53,292.292 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:57:53,424.424 INFO    ] No existing commands found in stream
[2026-10-18 05:57:58,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:57:58,457.457 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-18 05:58:01,635.635 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:58:01,638.638 INFO    ] Checking for system updates...
[2026-10-18 05:58:01,679.679 INFO    ] 200
[2026-10-18 05:58:01,681.681 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:58:01,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:58:01,834.834 INFO    ] No update needed
[2026-10-18 05:58:01,839.839 INFO    ] Checking for camera pi updates...
[2026-10-18 05:58:01,896.896 INFO    ] 200
[2026-10-18 05:58:01,899.899 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:58:02,005.005 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:58:12,021.021 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:58:12,065.065 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:58:12,076.076 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:58:12,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:58:12,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:58:12,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:58:14,132.132 INFO    ] ================================================
[2026-10-18 05:58:14,148.148 INFO    ] Launching Daemon at Sun Oct 18 05:58:14 IST 2026
[2026-10-18 05:58:14,159.159 INFO    ] ================================================
[2026-10-18 05:58:14,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:58:14
[2026-10-18 05:58:15,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:58:15,596.596 INFO    ] Initializing speech engine...
[2026-10-18 05:58:15,602.602 INFO    ] 2026-10-18 05:58:15
[2026-10-18 05:58:15,862.862 INFO    ] 2026-10-18 05:58:15
[2026-10-18 05:58:15,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:58:16,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:58:16,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:58:16,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:58:16,342.342 INFO    ] time= 18/10/2026 05:58:16
[2026-10-18 05:58:16,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:58:16,417.417 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:58:16,565.565 INFO    ] No existing commands found in stream
[2026-10-18 05:58:21,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:58:21,587.587 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-18 05:58:24,379.379 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 05:58:24,382.382 INFO    ] Checking for system updates...
[2026-10-18 05:58:24,421.421 INFO    ] 200
[2026-10-18 05:58:24,423.423 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:58:24,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:58:24,478.478 INFO    ] No update needed
[2026-10-18 05:58:24,480.480 INFO    ] Checking for camera pi updates...
[2026-10-18 05:58:24,514.514 INFO    ] 200
[2026-10-18 05:58:24,516.516 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:58:24,558.558 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:58:34,573.573 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:58:34,609.609 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:58:34,619.619 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:58:34,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:58:34,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:58:34,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:58:36,672.672 INFO    ] ================================================
[2026-10-18 05:58:36,688.688 INFO    ] Launching Daemon at Sun Oct 18 05:58:36 IST 2026
[2026-10-18 05:58:36,699.699 INFO    ] ================================================
[2026-10-18 05:58:37,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:58:37
[2026-10-18 05:58:38,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:58:38,300.300 INFO    ] Initializing speech engine...
[2026-10-18 05:58:38,311.311 INFO    ] 2026-10-18 05:58:38
[2026-10-18 05:58:38,584.584 INFO    ] 2026-10-18 05:58:38
[2026-10-18 05:58:38,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:58:38,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:58:38,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:58:39,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:58:39,155.155 INFO    ] time= 18/10/2026 05:58:39
[2026-10-18 05:58:39,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:58:39,204.204 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:58:39,339.339 INFO    ] No existing commands found in stream
[2026-10-18 05:58:44,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:58:44,379.379 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-18 05:58:45,433.433 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 05:58:45,436.436 INFO    ] Checking for system updates...
[2026-10-18 05:58:45,476.476 INFO    ] 200
[2026-10-18 05:58:45,479.479 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:58:45,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:58:45,533.533 INFO    ] No update needed
[2026-10-18 05:58:45,536.536 INFO    ] Checking for camera pi updates...
[2026-10-18 05:58:45,569.569 INFO    ] 200
[2026-10-18 05:58:45,572.572 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:58:45,612.612 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:58:55,627.627 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:58:55,663.663 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:58:55,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:58:55,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:58:55,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:58:55,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:58:57,726.726 INFO    ] ================================================
[2026-10-18 05:58:57,741.741 INFO    ] Launching Daemon at Sun Oct 18 05:58:57 IST 2026
[2026-10-18 05:58:57,753.753 INFO    ] ================================================
[2026-10-18 05:58:58,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:58:58
[2026-10-18 05:58:58,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:58:59,211.211 INFO    ] Initializing speech engine...
[2026-10-18 05:58:59,220.220 INFO    ] 2026-10-18 05:58:59
[2026-10-18 05:58:59,490.490 INFO    ] 2026-10-18 05:58:59
[2026-10-18 05:58:59,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:58:59,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:58:59,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:59:00,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:59:00,119.119 INFO    ] time= 18/10/2026 05:59:00
[2026-10-18 05:59:00,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:59:00,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:59:00,255.255 INFO    ] No existing commands found in stream
[2026-10-18 05:59:05,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:59:05,280.280 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-18 05:59:08,905.905 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 05:59:08,908.908 INFO    ] Checking for system updates...
[2026-10-18 05:59:08,947.947 INFO    ] 200
[2026-10-18 05:59:08,950.950 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:59:09,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 05:59:09,005.005 INFO    ] No update needed
[2026-10-18 05:59:09,008.008 INFO    ] Checking for camera pi updates...
[2026-10-18 05:59:09,042.042 INFO    ] 200
[2026-10-18 05:59:09,045.045 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:59:09,086.086 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:59:19,101.101 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:59:19,137.137 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:59:19,147.147 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:59:19,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:59:19,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:59:19,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:59:21,199.199 INFO    ] ================================================
[2026-10-18 05:59:21,215.215 INFO    ] Launching Daemon at Sun Oct 18 05:59:21 IST 2026
[2026-10-18 05:59:21,226.226 INFO    ] ================================================
[2026-10-18 05:59:21,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:59:21
[2026-10-18 05:59:22,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:59:22,743.743 INFO    ] Initializing speech engine...
[2026-10-18 05:59:22,752.752 INFO    ] 2026-10-18 05:59:22
[2026-10-18 05:59:23,007.007 INFO    ] 2026-10-18 05:59:23
[2026-10-18 05:59:23,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:59:23,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:59:23,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:59:23,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:59:23,556.556 INFO    ] time= 18/10/2026 05:59:23
[2026-10-18 05:59:23,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:59:23,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:59:23,738.738 INFO    ] No existing commands found in stream
[2026-10-18 05:59:28,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:59:28,766.766 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-18 05:59:30,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 05:59:30,203.203 INFO    ] Checking for system updates...
[2026-10-18 05:59:30,239.239 INFO    ] 200
[2026-10-18 05:59:30,241.241 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:59:30,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:59:30,296.296 INFO    ] No update needed
[2026-10-18 05:59:30,298.298 INFO    ] Checking for camera pi updates...
[2026-10-18 05:59:30,343.343 INFO    ] 200
[2026-10-18 05:59:30,346.346 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:59:30,385.385 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 05:59:40,401.401 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 05:59:40,436.436 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 05:59:40,445.445 INFO    ] Script finished. Safe exiting...
[2026-10-18 05:59:40,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 05:59:40,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 05:59:40,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 05:59:42,499.499 INFO    ] ================================================
[2026-10-18 05:59:42,514.514 INFO    ] Launching Daemon at Sun Oct 18 05:59:42 IST 2026
[2026-10-18 05:59:42,526.526 INFO    ] ================================================
[2026-10-18 05:59:43,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 05:59:43
[2026-10-18 05:59:43,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 05:59:43,982.982 INFO    ] Initializing speech engine...
[2026-10-18 05:59:43,991.991 INFO    ] 2026-10-18 05:59:43
[2026-10-18 05:59:44,236.236 INFO    ] 2026-10-18 05:59:44
[2026-10-18 05:59:44,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 05:59:44,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 05:59:44,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 05:59:44,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 05:59:44,788.788 INFO    ] time= 18/10/2026 05:59:44
[2026-10-18 05:59:44,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 05:59:44,813.813 INFO    ] Checking for existing commands in stream...
[2026-10-18 05:59:44,958.958 INFO    ] No existing commands found in stream
[2026-10-18 05:59:49,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 05:59:49,993.993 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-18 05:59:52,185.185 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 05:59:52,188.188 INFO    ] Checking for system updates...
[2026-10-18 05:59:52,223.223 INFO    ] 200
[2026-10-18 05:59:52,226.226 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:59:52,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 05:59:52,280.280 INFO    ] No update needed
[2026-10-18 05:59:52,282.282 INFO    ] Checking for camera pi updates...
[2026-10-18 05:59:52,319.319 INFO    ] 200
[2026-10-18 05:59:52,322.322 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 05:59:52,361.361 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:00:02,379.379 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:00:02,973.973 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:00:03,027.027 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:00:03,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:00:03,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:00:03,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:00:05,279.279 INFO    ] ================================================
[2026-10-18 06:00:05,347.347 INFO    ] Launching Daemon at Sun Oct 18 06:00:05 IST 2026
[2026-10-18 06:00:05,419.419 INFO    ] ================================================
[2026-10-18 06:00:06,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:00:06
[2026-10-18 06:00:07,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:00:07,610.610 INFO    ] Initializing speech engine...
[2026-10-18 06:00:07,620.620 INFO    ] 2026-10-18 06:00:07
[2026-10-18 06:00:07,871.871 INFO    ] 2026-10-18 06:00:07
[2026-10-18 06:00:07,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:00:08,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:00:08,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:00:08,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:00:08,431.431 INFO    ] time= 18/10/2026 06:00:08
[2026-10-18 06:00:08,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:00:08,456.456 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:00:08,579.579 INFO    ] No existing commands found in stream
[2026-10-18 06:00:13,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:00:13,599.599 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-18 06:00:15,610.610 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:00:15,613.613 INFO    ] Checking for system updates...
[2026-10-18 06:00:15,652.652 INFO    ] 200
[2026-10-18 06:00:15,654.654 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:00:15,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:00:15,714.714 INFO    ] No update needed
[2026-10-18 06:00:15,716.716 INFO    ] Checking for camera pi updates...
[2026-10-18 06:00:15,753.753 INFO    ] 200
[2026-10-18 06:00:15,756.756 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:00:15,795.795 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:00:25,811.811 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:00:25,846.846 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:00:25,856.856 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:00:25,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:00:25,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:00:25,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:00:27,909.909 INFO    ] ================================================
[2026-10-18 06:00:27,924.924 INFO    ] Launching Daemon at Sun Oct 18 06:00:27 IST 2026
[2026-10-18 06:00:27,935.935 INFO    ] ================================================
[2026-10-18 06:00:28,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:00:28
[2026-10-18 06:00:29,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:00:29,400.400 INFO    ] Initializing speech engine...
[2026-10-18 06:00:29,407.407 INFO    ] 2026-10-18 06:00:29
[2026-10-18 06:00:29,666.666 INFO    ] 2026-10-18 06:00:29
[2026-10-18 06:00:29,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:00:29,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:00:29,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:00:30,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:00:30,216.216 INFO    ] time= 18/10/2026 06:00:30
[2026-10-18 06:00:30,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:00:30,241.241 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:00:30,376.376 INFO    ] No existing commands found in stream
[2026-10-18 06:00:35,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:00:35,404.404 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-18 06:00:39,087.087 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:00:39,090.090 INFO    ] Checking for system updates...
[2026-10-18 06:00:39,131.131 INFO    ] 200
[2026-10-18 06:00:39,134.134 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:00:39,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:00:39,192.192 INFO    ] No update needed
[2026-10-18 06:00:39,195.195 INFO    ] Checking for camera pi updates...
[2026-10-18 06:00:39,233.233 INFO    ] 200
[2026-10-18 06:00:39,236.236 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:00:39,288.288 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:00:49,304.304 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:00:49,345.345 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:00:49,357.357 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:00:49,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:00:49,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:00:49,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:00:51,415.415 INFO    ] ================================================
[2026-10-18 06:00:51,431.431 INFO    ] Launching Daemon at Sun Oct 18 06:00:51 IST 2026
[2026-10-18 06:00:51,442.442 INFO    ] ================================================
[2026-10-18 06:00:52,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:00:52
[2026-10-18 06:00:52,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:00:52,886.886 INFO    ] Initializing speech engine...
[2026-10-18 06:00:52,894.894 INFO    ] 2026-10-18 06:00:52
[2026-10-18 06:00:53,195.195 INFO    ] 2026-10-18 06:00:53
[2026-10-18 06:00:53,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:00:53,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:00:53,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:00:53,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:00:53,623.623 INFO    ] time= 18/10/2026 06:00:53
[2026-10-18 06:00:53,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:00:53,682.682 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:00:53,805.805 INFO    ] No existing commands found in stream
[2026-10-18 06:00:58,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:00:58,833.833 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-18 06:01:02,135.135 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:01:02,139.139 INFO    ] Checking for system updates...
[2026-10-18 06:01:02,181.181 INFO    ] 200
[2026-10-18 06:01:02,184.184 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:01:02,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:01:02,247.247 INFO    ] No update needed
[2026-10-18 06:01:02,250.250 INFO    ] Checking for camera pi updates...
[2026-10-18 06:01:02,291.291 INFO    ] 200
[2026-10-18 06:01:02,294.294 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:01:02,352.352 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:01:12,370.370 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:01:12,414.414 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:01:12,424.424 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:01:12,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:01:12,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:01:12,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:01:14,479.479 INFO    ] ================================================
[2026-10-18 06:01:14,496.496 INFO    ] Launching Daemon at Sun Oct 18 06:01:14 IST 2026
[2026-10-18 06:01:14,508.508 INFO    ] ================================================
[2026-10-18 06:01:15,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:01:15
[2026-10-18 06:01:15,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:01:16,288.288 INFO    ] Initializing speech engine...
[2026-10-18 06:01:16,297.297 INFO    ] 2026-10-18 06:01:16
[2026-10-18 06:01:16,590.590 INFO    ] 2026-10-18 06:01:16
[2026-10-18 06:01:16,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:01:16,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:01:16,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:01:17,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:01:17,132.132 INFO    ] time= 18/10/2026 06:01:17
[2026-10-18 06:01:17,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:01:17,181.181 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:01:17,289.289 INFO    ] No existing commands found in stream
[2026-10-18 06:01:22,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:01:22,327.327 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-18 06:01:24,111.111 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:01:24,114.114 INFO    ] Checking for system updates...
[2026-10-18 06:01:24,155.155 INFO    ] 200
[2026-10-18 06:01:24,159.159 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:01:24,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:01:24,223.223 INFO    ] No update needed
[2026-10-18 06:01:24,226.226 INFO    ] Checking for camera pi updates...
[2026-10-18 06:01:24,265.265 INFO    ] 200
[2026-10-18 06:01:24,268.268 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:01:24,315.315 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:01:34,331.331 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:01:34,373.373 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:01:34,384.384 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:01:34,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:01:34,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:01:34,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:01:36,443.443 INFO    ] ================================================
[2026-10-18 06:01:36,458.458 INFO    ] Launching Daemon at Sun Oct 18 06:01:36 IST 2026
[2026-10-18 06:01:36,470.470 INFO    ] ================================================
[2026-10-18 06:01:37,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:01:37
[2026-10-18 06:01:37,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:01:37,899.899 INFO    ] Initializing speech engine...
[2026-10-18 06:01:37,908.908 INFO    ] 2026-10-18 06:01:37
[2026-10-18 06:01:38,160.160 INFO    ] 2026-10-18 06:01:38
[2026-10-18 06:01:38,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:01:38,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:01:38,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:01:38,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:01:38,590.590 INFO    ] time= 18/10/2026 06:01:38
[2026-10-18 06:01:38,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:01:38,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:01:38,716.716 INFO    ] No existing commands found in stream
[2026-10-18 06:01:43,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:01:43,749.749 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-18 06:01:47,532.532 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:01:47,534.534 INFO    ] Checking for system updates...
[2026-10-18 06:01:47,574.574 INFO    ] 200
[2026-10-18 06:01:47,577.577 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:01:47,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:01:47,632.632 INFO    ] No update needed
[2026-10-18 06:01:47,635.635 INFO    ] Checking for camera pi updates...
[2026-10-18 06:01:47,669.669 INFO    ] 200
[2026-10-18 06:01:47,672.672 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:01:47,714.714 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:01:57,729.729 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:01:57,770.770 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:01:57,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:01:57,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:01:57,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:01:57,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:01:59,838.838 INFO    ] ================================================
[2026-10-18 06:01:59,854.854 INFO    ] Launching Daemon at Sun Oct 18 06:01:59 IST 2026
[2026-10-18 06:01:59,866.866 INFO    ] ================================================
[2026-10-18 06:02:00,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:02:00
[2026-10-18 06:02:01,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:02:01,503.503 INFO    ] Initializing speech engine...
[2026-10-18 06:02:01,512.512 INFO    ] 2026-10-18 06:02:01
[2026-10-18 06:02:01,800.800 INFO    ] 2026-10-18 06:02:01
[2026-10-18 06:02:01,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:02:02,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:02:02,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:02:02,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:02:02,307.307 INFO    ] time= 18/10/2026 06:02:02
[2026-10-18 06:02:02,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:02:02,335.335 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:02:02,418.418 INFO    ] No existing commands found in stream
[2026-10-18 06:02:07,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:02:07,431.431 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-18 06:02:10,934.934 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:02:10,937.937 INFO    ] Checking for system updates...
[2026-10-18 06:02:10,972.972 INFO    ] 200
[2026-10-18 06:02:10,975.975 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:02:11,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:02:11,031.031 INFO    ] No update needed
[2026-10-18 06:02:11,033.033 INFO    ] Checking for camera pi updates...
[2026-10-18 06:02:11,067.067 INFO    ] 200
[2026-10-18 06:02:11,069.069 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:02:11,110.110 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:02:21,126.126 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:02:21,161.161 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:02:21,171.171 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:02:21,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:02:21,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:02:21,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:02:23,222.222 INFO    ] ================================================
[2026-10-18 06:02:23,238.238 INFO    ] Launching Daemon at Sun Oct 18 06:02:23 IST 2026
[2026-10-18 06:02:23,249.249 INFO    ] ================================================
[2026-10-18 06:02:23,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:02:23
[2026-10-18 06:02:24,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:02:24,761.761 INFO    ] Initializing speech engine...
[2026-10-18 06:02:24,770.770 INFO    ] 2026-10-18 06:02:24
[2026-10-18 06:02:25,052.052 INFO    ] 2026-10-18 06:02:25
[2026-10-18 06:02:25,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:02:25,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:02:25,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:02:25,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:02:25,525.525 INFO    ] time= 18/10/2026 06:02:25
[2026-10-18 06:02:25,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:02:25,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:02:25,747.747 INFO    ] No existing commands found in stream
[2026-10-18 06:02:30,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:02:30,769.769 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-18 06:02:32,137.137 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:02:32,141.141 INFO    ] Checking for system updates...
[2026-10-18 06:02:32,182.182 INFO    ] 200
[2026-10-18 06:02:32,185.185 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:02:32,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:02:32,259.259 INFO    ] No update needed
[2026-10-18 06:02:32,262.262 INFO    ] Checking for camera pi updates...
[2026-10-18 06:02:32,303.303 INFO    ] 200
[2026-10-18 06:02:32,306.306 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:02:32,349.349 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:02:42,364.364 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:02:42,400.400 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:02:42,410.410 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:02:42,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:02:42,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:02:42,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:02:44,463.463 INFO    ] ================================================
[2026-10-18 06:02:44,479.479 INFO    ] Launching Daemon at Sun Oct 18 06:02:44 IST 2026
[2026-10-18 06:02:44,490.490 INFO    ] ================================================
[2026-10-18 06:02:45,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:02:45
[2026-10-18 06:02:45,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:02:45,911.911 INFO    ] Initializing speech engine...
[2026-10-18 06:02:45,920.920 INFO    ] 2026-10-18 06:02:45
[2026-10-18 06:02:46,166.166 INFO    ] 2026-10-18 06:02:46
[2026-10-18 06:02:46,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:02:46,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:02:46,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:02:46,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:02:46,655.655 INFO    ] time= 18/10/2026 06:02:46
[2026-10-18 06:02:46,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:02:46,729.729 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:02:46,877.877 INFO    ] No existing commands found in stream
[2026-10-18 06:02:51,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:02:51,907.907 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-18 06:02:53,832.832 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:02:53,835.835 INFO    ] Checking for system updates...
[2026-10-18 06:02:53,874.874 INFO    ] 200
[2026-10-18 06:02:53,876.876 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:02:53,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:02:53,932.932 INFO    ] No update needed
[2026-10-18 06:02:53,934.934 INFO    ] Checking for camera pi updates...
[2026-10-18 06:02:53,967.967 INFO    ] 200
[2026-10-18 06:02:53,970.970 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:02:54,010.010 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:03:04,025.025 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:03:04,059.059 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:03:04,069.069 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:03:04,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:03:04,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:03:04,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:03:06,122.122 INFO    ] ================================================
[2026-10-18 06:03:06,138.138 INFO    ] Launching Daemon at Sun Oct 18 06:03:06 IST 2026
[2026-10-18 06:03:06,150.150 INFO    ] ================================================
[2026-10-18 06:03:06,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:03:06
[2026-10-18 06:03:07,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:03:07,586.586 INFO    ] Initializing speech engine...
[2026-10-18 06:03:07,593.593 INFO    ] 2026-10-18 06:03:07
[2026-10-18 06:03:07,840.840 INFO    ] 2026-10-18 06:03:07
[2026-10-18 06:03:07,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:03:08,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:03:08,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:03:08,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:03:08,395.395 INFO    ] time= 18/10/2026 06:03:08
[2026-10-18 06:03:08,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:03:08,419.419 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:03:08,553.553 INFO    ] No existing commands found in stream
[2026-10-18 06:03:13,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:03:13,579.579 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-18 06:03:14,879.879 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:03:14,882.882 INFO    ] Checking for system updates...
[2026-10-18 06:03:14,919.919 INFO    ] 200
[2026-10-18 06:03:14,922.922 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:03:14,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:03:14,979.979 INFO    ] No update needed
[2026-10-18 06:03:14,982.982 INFO    ] Checking for camera pi updates...
[2026-10-18 06:03:15,016.016 INFO    ] 200
[2026-10-18 06:03:15,019.019 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:03:15,065.065 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:03:25,082.082 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:03:25,121.121 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:03:25,132.132 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:03:25,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:03:25,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:03:25,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:03:27,189.189 INFO    ] ================================================
[2026-10-18 06:03:27,205.205 INFO    ] Launching Daemon at Sun Oct 18 06:03:27 IST 2026
[2026-10-18 06:03:27,216.216 INFO    ] ================================================
[2026-10-18 06:03:27,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:03:27
[2026-10-18 06:03:28,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:03:28,662.662 INFO    ] Initializing speech engine...
[2026-10-18 06:03:28,670.670 INFO    ] 2026-10-18 06:03:28
[2026-10-18 06:03:28,940.940 INFO    ] 2026-10-18 06:03:28
[2026-10-18 06:03:28,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:03:29,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:03:29,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:03:29,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:03:29,491.491 INFO    ] time= 18/10/2026 06:03:29
[2026-10-18 06:03:29,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:03:29,542.542 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:03:29,646.646 INFO    ] No existing commands found in stream
[2026-10-18 06:03:34,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:03:34,685.685 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-18 06:03:35,364.364 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:03:35,367.367 INFO    ] Checking for system updates...
[2026-10-18 06:03:35,407.407 INFO    ] 200
[2026-10-18 06:03:35,410.410 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:03:35,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:03:35,467.467 INFO    ] No update needed
[2026-10-18 06:03:35,469.469 INFO    ] Checking for camera pi updates...
[2026-10-18 06:03:35,504.504 INFO    ] 200
[2026-10-18 06:03:35,506.506 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:03:35,548.548 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:03:45,563.563 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:03:45,602.602 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:03:45,613.613 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:03:45,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:03:45,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:03:45,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:03:47,669.669 INFO    ] ================================================
[2026-10-18 06:03:47,684.684 INFO    ] Launching Daemon at Sun Oct 18 06:03:47 IST 2026
[2026-10-18 06:03:47,694.694 INFO    ] ================================================
[2026-10-18 06:03:48,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:03:48
[2026-10-18 06:03:48,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:03:49,127.127 INFO    ] Initializing speech engine...
[2026-10-18 06:03:49,135.135 INFO    ] 2026-10-18 06:03:49
[2026-10-18 06:03:49,428.428 INFO    ] 2026-10-18 06:03:49
[2026-10-18 06:03:49,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:03:49,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:03:49,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:03:49,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:03:49,841.841 INFO    ] time= 18/10/2026 06:03:49
[2026-10-18 06:03:49,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:03:49,904.904 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:03:50,024.024 INFO    ] No existing commands found in stream
[2026-10-18 06:03:55,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:03:55,062.062 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-18 06:03:58,605.605 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:03:58,608.608 INFO    ] Checking for system updates...
[2026-10-18 06:03:58,645.645 INFO    ] 200
[2026-10-18 06:03:58,648.648 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:03:58,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:03:58,704.704 INFO    ] No update needed
[2026-10-18 06:03:58,706.706 INFO    ] Checking for camera pi updates...
[2026-10-18 06:03:58,744.744 INFO    ] 200
[2026-10-18 06:03:58,747.747 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:03:58,794.794 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:04:08,810.810 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:04:08,848.848 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:04:08,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:04:08,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:04:08,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:04:08,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:04:10,912.912 INFO    ] ================================================
[2026-10-18 06:04:10,928.928 INFO    ] Launching Daemon at Sun Oct 18 06:04:10 IST 2026
[2026-10-18 06:04:10,938.938 INFO    ] ================================================
[2026-10-18 06:04:11,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:04:11
[2026-10-18 06:04:12,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:04:12,393.393 INFO    ] Initializing speech engine...
[2026-10-18 06:04:12,409.409 INFO    ] 2026-10-18 06:04:12
[2026-10-18 06:04:12,676.676 INFO    ] 2026-10-18 06:04:12
[2026-10-18 06:04:12,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:04:12,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:04:12,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:04:13,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:04:13,154.154 INFO    ] time= 18/10/2026 06:04:13
[2026-10-18 06:04:13,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:04:13,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:04:13,420.420 INFO    ] No existing commands found in stream
[2026-10-18 06:04:18,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:04:18,445.445 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-18 06:04:22,273.273 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:04:22,276.276 INFO    ] Checking for system updates...
[2026-10-18 06:04:22,312.312 INFO    ] 200
[2026-10-18 06:04:22,314.314 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:04:22,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:04:22,375.375 INFO    ] No update needed
[2026-10-18 06:04:22,378.378 INFO    ] Checking for camera pi updates...
[2026-10-18 06:04:22,411.411 INFO    ] 200
[2026-10-18 06:04:22,413.413 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:04:22,453.453 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:04:32,466.466 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:04:32,501.501 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:04:32,511.511 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:04:32,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:04:32,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:04:32,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:04:34,563.563 INFO    ] ================================================
[2026-10-18 06:04:34,578.578 INFO    ] Launching Daemon at Sun Oct 18 06:04:34 IST 2026
[2026-10-18 06:04:34,589.589 INFO    ] ================================================
[2026-10-18 06:04:35,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:04:35
[2026-10-18 06:04:35,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:04:36,153.153 INFO    ] Initializing speech engine...
[2026-10-18 06:04:36,162.162 INFO    ] 2026-10-18 06:04:36
[2026-10-18 06:04:36,446.446 INFO    ] 2026-10-18 06:04:36
[2026-10-18 06:04:36,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:04:36,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:04:36,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:04:36,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:04:36,995.995 INFO    ] time= 18/10/2026 06:04:36
[2026-10-18 06:04:37,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:04:37,031.031 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:04:37,155.155 INFO    ] No existing commands found in stream
[2026-10-18 06:04:42,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:04:42,173.173 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-18 06:04:45,276.276 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:04:45,279.279 INFO    ] Checking for system updates...
[2026-10-18 06:04:45,315.315 INFO    ] 200
[2026-10-18 06:04:45,318.318 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:04:45,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:04:45,375.375 INFO    ] No update needed
[2026-10-18 06:04:45,378.378 INFO    ] Checking for camera pi updates...
[2026-10-18 06:04:45,411.411 INFO    ] 200
[2026-10-18 06:04:45,414.414 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:04:45,458.458 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:04:55,473.473 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:04:55,515.515 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:04:55,524.524 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:04:55,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:04:55,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:04:55,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:04:57,577.577 INFO    ] ================================================
[2026-10-18 06:04:57,593.593 INFO    ] Launching Daemon at Sun Oct 18 06:04:57 IST 2026
[2026-10-18 06:04:57,605.605 INFO    ] ================================================
[2026-10-18 06:04:58,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:04:58
[2026-10-18 06:04:58,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:04:59,200.200 INFO    ] Initializing speech engine...
[2026-10-18 06:04:59,209.209 INFO    ] 2026-10-18 06:04:59
[2026-10-18 06:04:59,492.492 INFO    ] 2026-10-18 06:04:59
[2026-10-18 06:04:59,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:04:59,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:04:59,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:05:00,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:05:00,035.035 INFO    ] time= 18/10/2026 06:05:00
[2026-10-18 06:05:00,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:05:00,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:05:00,204.204 INFO    ] No existing commands found in stream
[2026-10-18 06:05:05,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:05:05,243.243 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-18 06:05:06,247.247 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:05:06,250.250 INFO    ] Checking for system updates...
[2026-10-18 06:05:06,286.286 INFO    ] 200
[2026-10-18 06:05:06,289.289 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:05:06,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:05:06,345.345 INFO    ] No update needed
[2026-10-18 06:05:06,348.348 INFO    ] Checking for camera pi updates...
[2026-10-18 06:05:06,382.382 INFO    ] 200
[2026-10-18 06:05:06,384.384 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:05:06,426.426 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:05:16,442.442 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:05:16,481.481 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:05:16,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:05:16,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:05:16,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:05:16,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:05:18,545.545 INFO    ] ================================================
[2026-10-18 06:05:18,561.561 INFO    ] Launching Daemon at Sun Oct 18 06:05:18 IST 2026
[2026-10-18 06:05:18,572.572 INFO    ] ================================================
[2026-10-18 06:05:19,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:05:19
[2026-10-18 06:05:19,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:05:20,001.001 INFO    ] Initializing speech engine...
[2026-10-18 06:05:20,010.010 INFO    ] 2026-10-18 06:05:20
[2026-10-18 06:05:20,274.274 INFO    ] 2026-10-18 06:05:20
[2026-10-18 06:05:20,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:05:20,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:05:20,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:05:20,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:05:20,763.763 INFO    ] time= 18/10/2026 06:05:20
[2026-10-18 06:05:20,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:05:20,863.863 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:05:20,965.965 INFO    ] No existing commands found in stream
[2026-10-18 06:05:25,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:05:25,980.980 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-18 06:05:27,335.335 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:05:27,338.338 INFO    ] Checking for system updates...
[2026-10-18 06:05:27,373.373 INFO    ] 200
[2026-10-18 06:05:27,375.375 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:05:27,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:05:27,435.435 INFO    ] No update needed
[2026-10-18 06:05:27,438.438 INFO    ] Checking for camera pi updates...
[2026-10-18 06:05:27,471.471 INFO    ] 200
[2026-10-18 06:05:27,473.473 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:05:27,512.512 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:05:37,526.526 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:05:37,560.560 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:05:37,570.570 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:05:37,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:05:37,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:05:37,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:05:39,622.622 INFO    ] ================================================
[2026-10-18 06:05:39,638.638 INFO    ] Launching Daemon at Sun Oct 18 06:05:39 IST 2026
[2026-10-18 06:05:39,649.649 INFO    ] ================================================
[2026-10-18 06:05:40,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:05:40
[2026-10-18 06:05:40,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:05:41,067.067 INFO    ] Initializing speech engine...
[2026-10-18 06:05:41,077.077 INFO    ] 2026-10-18 06:05:41
[2026-10-18 06:05:41,342.342 INFO    ] 2026-10-18 06:05:41
[2026-10-18 06:05:41,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:05:41,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:05:41,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:05:41,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:05:41,860.860 INFO    ] time= 18/10/2026 06:05:41
[2026-10-18 06:05:41,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:05:41,959.959 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:05:42,103.103 INFO    ] No existing commands found in stream
[2026-10-18 06:05:47,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:05:47,131.131 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-18 06:05:48,524.524 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:05:48,527.527 INFO    ] Checking for system updates...
[2026-10-18 06:05:48,562.562 INFO    ] 200
[2026-10-18 06:05:48,565.565 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:05:48,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:05:48,620.620 INFO    ] No update needed
[2026-10-18 06:05:48,622.622 INFO    ] Checking for camera pi updates...
[2026-10-18 06:05:48,655.655 INFO    ] 200
[2026-10-18 06:05:48,658.658 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:05:48,702.702 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:05:58,717.717 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:05:58,752.752 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:05:58,761.761 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:05:58,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:05:58,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:05:58,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:06:00,815.815 INFO    ] ================================================
[2026-10-18 06:06:00,831.831 INFO    ] Launching Daemon at Sun Oct 18 06:06:00 IST 2026
[2026-10-18 06:06:00,842.842 INFO    ] ================================================
[2026-10-18 06:06:01,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:06:01
[2026-10-18 06:06:02,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:06:02,649.649 INFO    ] Initializing speech engine...
[2026-10-18 06:06:02,665.665 INFO    ] 2026-10-18 06:06:02
[2026-10-18 06:06:02,990.990 INFO    ] 2026-10-18 06:06:02
[2026-10-18 06:06:03,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:06:03,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:06:03,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:06:03,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:06:03,518.518 INFO    ] time= 18/10/2026 06:06:03
[2026-10-18 06:06:03,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:06:03,632.632 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:06:03,729.729 INFO    ] No existing commands found in stream
[2026-10-18 06:06:08,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:06:08,744.744 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-18 06:06:09,444.444 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:06:09,446.446 INFO    ] Checking for system updates...
[2026-10-18 06:06:09,481.481 INFO    ] 200
[2026-10-18 06:06:09,484.484 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:06:09,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:06:09,549.549 INFO    ] No update needed
[2026-10-18 06:06:09,551.551 INFO    ] Checking for camera pi updates...
[2026-10-18 06:06:09,588.588 INFO    ] 200
[2026-10-18 06:06:09,591.591 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:06:09,632.632 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:06:19,647.647 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:06:19,681.681 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:06:19,691.691 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:06:19,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:06:19,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:06:19,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:06:21,746.746 INFO    ] ================================================
[2026-10-18 06:06:21,761.761 INFO    ] Launching Daemon at Sun Oct 18 06:06:21 IST 2026
[2026-10-18 06:06:21,773.773 INFO    ] ================================================
[2026-10-18 06:06:22,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:06:22
[2026-10-18 06:06:23,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:06:23,390.390 INFO    ] Initializing speech engine...
[2026-10-18 06:06:23,400.400 INFO    ] 2026-10-18 06:06:23
[2026-10-18 06:06:23,685.685 INFO    ] 2026-10-18 06:06:23
[2026-10-18 06:06:23,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:06:24,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:06:24,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:06:24,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:06:24,232.232 INFO    ] time= 18/10/2026 06:06:24
[2026-10-18 06:06:24,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:06:24,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:06:24,376.376 INFO    ] No existing commands found in stream
[2026-10-18 06:06:29,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:06:29,404.404 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-18 06:06:31,938.938 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:06:31,942.942 INFO    ] Checking for system updates...
[2026-10-18 06:06:31,983.983 INFO    ] 200
[2026-10-18 06:06:31,986.986 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:06:32,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:06:32,047.047 INFO    ] No update needed
[2026-10-18 06:06:32,050.050 INFO    ] Checking for camera pi updates...
[2026-10-18 06:06:32,088.088 INFO    ] 200
[2026-10-18 06:06:32,091.091 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:06:32,136.136 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:06:42,151.151 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:06:42,192.192 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:06:42,204.204 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:06:42,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:06:42,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:06:42,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:06:44,260.260 INFO    ] ================================================
[2026-10-18 06:06:44,276.276 INFO    ] Launching Daemon at Sun Oct 18 06:06:44 IST 2026
[2026-10-18 06:06:44,287.287 INFO    ] ================================================
[2026-10-18 06:06:44,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:06:44
[2026-10-18 06:06:45,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:06:45,715.715 INFO    ] Initializing speech engine...
[2026-10-18 06:06:45,724.724 INFO    ] 2026-10-18 06:06:45
[2026-10-18 06:06:45,990.990 INFO    ] 2026-10-18 06:06:45
[2026-10-18 06:06:46,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:06:46,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:06:46,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:06:46,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:06:46,538.538 INFO    ] time= 18/10/2026 06:06:46
[2026-10-18 06:06:46,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:06:46,560.560 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:06:46,696.696 INFO    ] No existing commands found in stream
[2026-10-18 06:06:51,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:06:51,720.720 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-18 06:06:55,080.080 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:06:55,082.082 INFO    ] Checking for system updates...
[2026-10-18 06:06:55,118.118 INFO    ] 200
[2026-10-18 06:06:55,120.120 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:06:55,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:06:55,181.181 INFO    ] No update needed
[2026-10-18 06:06:55,184.184 INFO    ] Checking for camera pi updates...
[2026-10-18 06:06:55,217.217 INFO    ] 200
[2026-10-18 06:06:55,219.219 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:06:55,260.260 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:07:05,274.274 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:07:05,308.308 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:07:05,318.318 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:07:05,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:07:05,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:07:05,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:07:07,371.371 INFO    ] ================================================
[2026-10-18 06:07:07,386.386 INFO    ] Launching Daemon at Sun Oct 18 06:07:07 IST 2026
[2026-10-18 06:07:07,398.398 INFO    ] ================================================
[2026-10-18 06:07:08,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:07:08
[2026-10-18 06:07:08,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:07:09,003.003 INFO    ] Initializing speech engine...
[2026-10-18 06:07:09,012.012 INFO    ] 2026-10-18 06:07:09
[2026-10-18 06:07:09,300.300 INFO    ] 2026-10-18 06:07:09
[2026-10-18 06:07:09,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:07:09,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:07:09,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:07:09,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:07:09,891.891 INFO    ] time= 18/10/2026 06:07:09
[2026-10-18 06:07:09,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:07:09,935.935 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:07:10,068.068 INFO    ] No existing commands found in stream
[2026-10-18 06:07:15,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:07:15,108.108 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-18 06:07:15,973.973 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:07:15,976.976 INFO    ] Checking for system updates...
[2026-10-18 06:07:16,017.017 INFO    ] 200
[2026-10-18 06:07:16,020.020 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:07:16,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:07:16,077.077 INFO    ] No update needed
[2026-10-18 06:07:16,080.080 INFO    ] Checking for camera pi updates...
[2026-10-18 06:07:16,114.114 INFO    ] 200
[2026-10-18 06:07:16,118.118 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:07:16,164.164 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:07:26,181.181 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:07:26,221.221 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:07:26,232.232 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:07:26,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:07:26,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:07:26,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:07:28,288.288 INFO    ] ================================================
[2026-10-18 06:07:28,304.304 INFO    ] Launching Daemon at Sun Oct 18 06:07:28 IST 2026
[2026-10-18 06:07:28,315.315 INFO    ] ================================================
[2026-10-18 06:07:28,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:07:28
[2026-10-18 06:07:29,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:07:29,933.933 INFO    ] Initializing speech engine...
[2026-10-18 06:07:29,945.945 INFO    ] 2026-10-18 06:07:29
[2026-10-18 06:07:30,211.211 INFO    ] 2026-10-18 06:07:30
[2026-10-18 06:07:30,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:07:30,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:07:30,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:07:30,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:07:30,747.747 INFO    ] time= 18/10/2026 06:07:30
[2026-10-18 06:07:30,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:07:30,792.792 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:07:30,901.901 INFO    ] No existing commands found in stream
[2026-10-18 06:07:35,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:07:35,932.932 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-18 06:07:38,328.328 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:07:38,331.331 INFO    ] Checking for system updates...
[2026-10-18 06:07:38,367.367 INFO    ] 200
[2026-10-18 06:07:38,369.369 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:07:38,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:07:38,432.432 INFO    ] No update needed
[2026-10-18 06:07:38,434.434 INFO    ] Checking for camera pi updates...
[2026-10-18 06:07:38,468.468 INFO    ] 200
[2026-10-18 06:07:38,471.471 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:07:38,511.511 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:07:48,526.526 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:07:48,564.564 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:07:48,574.574 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:07:48,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:07:48,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:07:48,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:07:50,629.629 INFO    ] ================================================
[2026-10-18 06:07:50,644.644 INFO    ] Launching Daemon at Sun Oct 18 06:07:50 IST 2026
[2026-10-18 06:07:50,655.655 INFO    ] ================================================
[2026-10-18 06:07:51,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:07:51
[2026-10-18 06:07:51,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:07:52,262.262 INFO    ] Initializing speech engine...
[2026-10-18 06:07:52,273.273 INFO    ] 2026-10-18 06:07:52
[2026-10-18 06:07:52,534.534 INFO    ] 2026-10-18 06:07:52
[2026-10-18 06:07:52,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:07:52,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:07:52,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:07:53,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:07:53,077.077 INFO    ] time= 18/10/2026 06:07:53
[2026-10-18 06:07:53,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:07:53,100.100 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:07:53,216.216 INFO    ] No existing commands found in stream
[2026-10-18 06:07:58,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:07:58,244.244 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-18 06:07:59,706.706 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:07:59,709.709 INFO    ] Checking for system updates...
[2026-10-18 06:07:59,745.745 INFO    ] 200
[2026-10-18 06:07:59,748.748 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:07:59,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:07:59,809.809 INFO    ] No update needed
[2026-10-18 06:07:59,812.812 INFO    ] Checking for camera pi updates...
[2026-10-18 06:07:59,847.847 INFO    ] 200
[2026-10-18 06:07:59,850.850 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:07:59,896.896 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:08:09,913.913 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:08:09,959.959 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:08:09,970.970 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:08:09,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:08:09,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:08:09,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:08:12,026.026 INFO    ] ================================================
[2026-10-18 06:08:12,042.042 INFO    ] Launching Daemon at Sun Oct 18 06:08:12 IST 2026
[2026-10-18 06:08:12,053.053 INFO    ] ================================================
[2026-10-18 06:08:12,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:08:12
[2026-10-18 06:08:13,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:08:13,490.490 INFO    ] Initializing speech engine...
[2026-10-18 06:08:13,499.499 INFO    ] 2026-10-18 06:08:13
[2026-10-18 06:08:13,764.764 INFO    ] 2026-10-18 06:08:13
[2026-10-18 06:08:13,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:08:14,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:08:14,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:08:14,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:08:14,310.310 INFO    ] time= 18/10/2026 06:08:14
[2026-10-18 06:08:14,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:08:14,337.337 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:08:14,467.467 INFO    ] No existing commands found in stream
[2026-10-18 06:08:19,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:08:19,489.489 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-18 06:08:22,783.783 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 06:08:22,786.786 INFO    ] Checking for system updates...
[2026-10-18 06:08:22,821.821 INFO    ] 200
[2026-10-18 06:08:22,824.824 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:08:22,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:08:22,882.882 INFO    ] No update needed
[2026-10-18 06:08:22,884.884 INFO    ] Checking for camera pi updates...
[2026-10-18 06:08:22,918.918 INFO    ] 200
[2026-10-18 06:08:22,920.920 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:08:22,961.961 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:08:32,974.974 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:08:33,012.012 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:08:33,025.025 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:08:33,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:08:33,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:08:33,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:08:35,088.088 INFO    ] ================================================
[2026-10-18 06:08:35,103.103 INFO    ] Launching Daemon at Sun Oct 18 06:08:35 IST 2026
[2026-10-18 06:08:35,114.114 INFO    ] ================================================
[2026-10-18 06:08:35,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:08:35
[2026-10-18 06:08:36,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:08:36,537.537 INFO    ] Initializing speech engine...
[2026-10-18 06:08:36,544.544 INFO    ] 2026-10-18 06:08:36
[2026-10-18 06:08:36,802.802 INFO    ] 2026-10-18 06:08:36
[2026-10-18 06:08:36,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:08:37,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:08:37,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:08:37,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:08:37,287.287 INFO    ] time= 18/10/2026 06:08:37
[2026-10-18 06:08:37,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:08:37,356.356 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:08:37,492.492 INFO    ] No existing commands found in stream
[2026-10-18 06:08:42,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:08:42,516.516 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-18 06:08:45,781.781 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:08:45,784.784 INFO    ] Checking for system updates...
[2026-10-18 06:08:45,819.819 INFO    ] 200
[2026-10-18 06:08:45,821.821 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:08:45,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:08:45,876.876 INFO    ] No update needed
[2026-10-18 06:08:45,878.878 INFO    ] Checking for camera pi updates...
[2026-10-18 06:08:45,915.915 INFO    ] 200
[2026-10-18 06:08:45,918.918 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:08:45,958.958 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:08:55,973.973 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:08:56,008.008 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:08:56,018.018 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:08:56,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:08:56,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:08:56,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:08:58,071.071 INFO    ] ================================================
[2026-10-18 06:08:58,088.088 INFO    ] Launching Daemon at Sun Oct 18 06:08:58 IST 2026
[2026-10-18 06:08:58,099.099 INFO    ] ================================================
[2026-10-18 06:08:58,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:08:58
[2026-10-18 06:08:59,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:08:59,750.750 INFO    ] Initializing speech engine...
[2026-10-18 06:08:59,758.758 INFO    ] 2026-10-18 06:08:59
[2026-10-18 06:09:00,052.052 INFO    ] 2026-10-18 06:09:00
[2026-10-18 06:09:00,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:09:00,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:09:00,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:09:00,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:09:00,627.627 INFO    ] time= 18/10/2026 06:09:00
[2026-10-18 06:09:00,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:09:00,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:09:00,772.772 INFO    ] No existing commands found in stream
[2026-10-18 06:09:05,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:09:05,791.791 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-18 06:09:07,476.476 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:09:07,479.479 INFO    ] Checking for system updates...
[2026-10-18 06:09:07,517.517 INFO    ] 200
[2026-10-18 06:09:07,520.520 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:09:07,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:09:07,577.577 INFO    ] No update needed
[2026-10-18 06:09:07,580.580 INFO    ] Checking for camera pi updates...
[2026-10-18 06:09:07,615.615 INFO    ] 200
[2026-10-18 06:09:07,618.618 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:09:07,659.659 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:09:17,673.673 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cee150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:09:17,713.713 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:09:17,725.725 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:09:17,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:09:17,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:09:17,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:09:19,780.780 INFO    ] ================================================
[2026-10-18 06:09:19,796.796 INFO    ] Launching Daemon at Sun Oct 18 06:09:19 IST 2026
[2026-10-18 06:09:19,807.807 INFO    ] ================================================
[2026-10-18 06:09:20,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:09:20
[2026-10-18 06:09:21,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:09:21,296.296 INFO    ] Initializing speech engine...
[2026-10-18 06:09:21,305.305 INFO    ] 2026-10-18 06:09:21
[2026-10-18 06:09:21,556.556 INFO    ] 2026-10-18 06:09:21
[2026-10-18 06:09:21,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:09:21,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:09:21,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:09:21,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:09:22,043.043 INFO    ] time= 18/10/2026 06:09:21
[2026-10-18 06:09:22,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:09:22,132.132 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:09:22,264.264 INFO    ] No existing commands found in stream
[2026-10-18 06:09:27,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:09:27,292.292 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-18 06:09:31,218.218 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:09:31,221.221 INFO    ] Checking for system updates...
[2026-10-18 06:09:31,256.256 INFO    ] 200
[2026-10-18 06:09:31,259.259 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:09:31,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:09:31,314.314 INFO    ] No update needed
[2026-10-18 06:09:31,317.317 INFO    ] Checking for camera pi updates...
[2026-10-18 06:09:31,351.351 INFO    ] 200
[2026-10-18 06:09:31,353.353 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:09:31,394.394 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:09:41,409.409 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:09:41,446.446 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:09:41,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:09:41,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:09:41,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:09:41,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:09:43,514.514 INFO    ] ================================================
[2026-10-18 06:09:43,529.529 INFO    ] Launching Daemon at Sun Oct 18 06:09:43 IST 2026
[2026-10-18 06:09:43,539.539 INFO    ] ================================================
[2026-10-18 06:09:44,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:09:44
[2026-10-18 06:09:44,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:09:44,983.983 INFO    ] Initializing speech engine...
[2026-10-18 06:09:44,993.993 INFO    ] 2026-10-18 06:09:44
[2026-10-18 06:09:45,291.291 INFO    ] 2026-10-18 06:09:45
[2026-10-18 06:09:45,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:09:45,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:09:45,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:09:45,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:09:45,717.717 INFO    ] time= 18/10/2026 06:09:45
[2026-10-18 06:09:45,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:09:45,737.737 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:09:45,884.884 INFO    ] No existing commands found in stream
[2026-10-18 06:09:50,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:09:50,917.917 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-18 06:09:54,266.266 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:09:54,269.269 INFO    ] Checking for system updates...
[2026-10-18 06:09:54,305.305 INFO    ] 200
[2026-10-18 06:09:54,308.308 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:09:54,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:09:54,362.362 INFO    ] No update needed
[2026-10-18 06:09:54,365.365 INFO    ] Checking for camera pi updates...
[2026-10-18 06:09:54,402.402 INFO    ] 200
[2026-10-18 06:09:54,405.405 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:09:54,444.444 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:10:04,458.458 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:10:04,492.492 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:10:04,502.502 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:10:04,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:10:04,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:10:04,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:10:06,555.555 INFO    ] ================================================
[2026-10-18 06:10:06,571.571 INFO    ] Launching Daemon at Sun Oct 18 06:10:06 IST 2026
[2026-10-18 06:10:06,582.582 INFO    ] ================================================
[2026-10-18 06:10:07,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:10:07
[2026-10-18 06:10:07,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:10:08,032.032 INFO    ] Initializing speech engine...
[2026-10-18 06:10:08,039.039 INFO    ] 2026-10-18 06:10:08
[2026-10-18 06:10:08,305.305 INFO    ] 2026-10-18 06:10:08
[2026-10-18 06:10:08,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:10:08,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:10:08,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:10:08,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:10:08,807.807 INFO    ] time= 18/10/2026 06:10:08
[2026-10-18 06:10:08,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:10:08,867.867 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:10:09,014.014 INFO    ] No existing commands found in stream
[2026-10-18 06:10:14,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:10:14,028.028 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-18 06:10:16,890.890 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:10:16,893.893 INFO    ] Checking for system updates...
[2026-10-18 06:10:16,929.929 INFO    ] 200
[2026-10-18 06:10:16,932.932 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:10:16,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:10:16,991.991 INFO    ] No update needed
[2026-10-18 06:10:16,993.993 INFO    ] Checking for camera pi updates...
[2026-10-18 06:10:17,030.030 INFO    ] 200
[2026-10-18 06:10:17,032.032 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:10:17,073.073 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:10:27,088.088 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:10:27,124.124 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:10:27,134.134 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:10:27,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:10:27,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:10:27,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:10:29,186.186 INFO    ] ================================================
[2026-10-18 06:10:29,202.202 INFO    ] Launching Daemon at Sun Oct 18 06:10:29 IST 2026
[2026-10-18 06:10:29,212.212 INFO    ] ================================================
[2026-10-18 06:10:29,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:10:29
[2026-10-18 06:10:30,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:10:30,638.638 INFO    ] Initializing speech engine...
[2026-10-18 06:10:30,649.649 INFO    ] 2026-10-18 06:10:30
[2026-10-18 06:10:30,897.897 INFO    ] 2026-10-18 06:10:30
[2026-10-18 06:10:30,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:10:31,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:10:31,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:10:31,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:10:31,376.376 INFO    ] time= 18/10/2026 06:10:31
[2026-10-18 06:10:31,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:10:31,470.470 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:10:31,606.606 INFO    ] No existing commands found in stream
[2026-10-18 06:10:36,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:10:36,635.635 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-18 06:10:39,285.285 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:10:39,287.287 INFO    ] Checking for system updates...
[2026-10-18 06:10:39,323.323 INFO    ] 200
[2026-10-18 06:10:39,326.326 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:10:39,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:10:39,381.381 INFO    ] No update needed
[2026-10-18 06:10:39,383.383 INFO    ] Checking for camera pi updates...
[2026-10-18 06:10:39,416.416 INFO    ] 200
[2026-10-18 06:10:39,419.419 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:10:39,466.466 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:10:49,481.481 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:10:49,515.515 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:10:49,525.525 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:10:49,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:10:49,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:10:49,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:10:51,578.578 INFO    ] ================================================
[2026-10-18 06:10:51,594.594 INFO    ] Launching Daemon at Sun Oct 18 06:10:51 IST 2026
[2026-10-18 06:10:51,605.605 INFO    ] ================================================
[2026-10-18 06:10:52,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:10:52
[2026-10-18 06:10:52,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:10:53,053.053 INFO    ] Initializing speech engine...
[2026-10-18 06:10:53,063.063 INFO    ] 2026-10-18 06:10:53
[2026-10-18 06:10:53,315.315 INFO    ] 2026-10-18 06:10:53
[2026-10-18 06:10:53,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:10:53,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:10:53,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:10:53,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:10:53,821.821 INFO    ] time= 18/10/2026 06:10:53
[2026-10-18 06:10:53,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:10:53,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:10:54,026.026 INFO    ] No existing commands found in stream
[2026-10-18 06:10:59,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:10:59,051.051 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-18 06:11:03,419.419 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:11:03,421.421 INFO    ] Checking for system updates...
[2026-10-18 06:11:03,460.460 INFO    ] 200
[2026-10-18 06:11:03,462.462 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:11:03,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:11:03,517.517 INFO    ] No update needed
[2026-10-18 06:11:03,520.520 INFO    ] Checking for camera pi updates...
[2026-10-18 06:11:03,552.552 INFO    ] 200
[2026-10-18 06:11:03,555.555 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:11:03,601.601 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:11:13,617.617 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:11:13,651.651 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:11:13,661.661 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:11:13,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:11:13,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:11:13,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:11:15,714.714 INFO    ] ================================================
[2026-10-18 06:11:15,730.730 INFO    ] Launching Daemon at Sun Oct 18 06:11:15 IST 2026
[2026-10-18 06:11:15,740.740 INFO    ] ================================================
[2026-10-18 06:11:16,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:11:16
[2026-10-18 06:11:16,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:11:17,204.204 INFO    ] Initializing speech engine...
[2026-10-18 06:11:17,211.211 INFO    ] 2026-10-18 06:11:17
[2026-10-18 06:11:17,472.472 INFO    ] 2026-10-18 06:11:17
[2026-10-18 06:11:17,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:11:17,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:11:17,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:11:17,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:11:18,014.014 INFO    ] time= 18/10/2026 06:11:17
[2026-10-18 06:11:18,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:11:18,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:11:18,158.158 INFO    ] No existing commands found in stream
[2026-10-18 06:11:23,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:11:23,182.182 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-18 06:11:27,110.110 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:11:27,112.112 INFO    ] Checking for system updates...
[2026-10-18 06:11:27,148.148 INFO    ] 200
[2026-10-18 06:11:27,150.150 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:11:27,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:11:27,206.206 INFO    ] No update needed
[2026-10-18 06:11:27,208.208 INFO    ] Checking for camera pi updates...
[2026-10-18 06:11:27,248.248 INFO    ] 200
[2026-10-18 06:11:27,250.250 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:11:27,295.295 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:11:37,312.312 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:11:37,352.352 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:11:37,363.363 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:11:37,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:11:37,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:11:37,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:11:39,419.419 INFO    ] ================================================
[2026-10-18 06:11:39,434.434 INFO    ] Launching Daemon at Sun Oct 18 06:11:39 IST 2026
[2026-10-18 06:11:39,445.445 INFO    ] ================================================
[2026-10-18 06:11:40,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:11:40
[2026-10-18 06:11:40,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:11:40,849.849 INFO    ] Initializing speech engine...
[2026-10-18 06:11:40,872.872 INFO    ] 2026-10-18 06:11:40
[2026-10-18 06:11:41,131.131 INFO    ] 2026-10-18 06:11:41
[2026-10-18 06:11:41,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:11:41,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:11:41,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:11:41,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:11:41,635.635 INFO    ] time= 18/10/2026 06:11:41
[2026-10-18 06:11:41,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:11:41,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:11:41,832.832 INFO    ] No existing commands found in stream
[2026-10-18 06:11:46,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:11:46,868.868 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-18 06:11:50,416.416 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:11:50,418.418 INFO    ] Checking for system updates...
[2026-10-18 06:11:50,457.457 INFO    ] 200
[2026-10-18 06:11:50,460.460 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:11:50,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:11:50,516.516 INFO    ] No update needed
[2026-10-18 06:11:50,518.518 INFO    ] Checking for camera pi updates...
[2026-10-18 06:11:50,552.552 INFO    ] 200
[2026-10-18 06:11:50,554.554 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:11:50,594.594 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:12:00,608.608 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:12:00,643.643 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:12:00,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:12:00,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:12:00,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:12:00,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:12:02,712.712 INFO    ] ================================================
[2026-10-18 06:12:02,727.727 INFO    ] Launching Daemon at Sun Oct 18 06:12:02 IST 2026
[2026-10-18 06:12:02,738.738 INFO    ] ================================================
[2026-10-18 06:12:03,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:12:03
[2026-10-18 06:12:03,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:12:04,189.189 INFO    ] Initializing speech engine...
[2026-10-18 06:12:04,198.198 INFO    ] 2026-10-18 06:12:04
[2026-10-18 06:12:04,490.490 INFO    ] 2026-10-18 06:12:04
[2026-10-18 06:12:04,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:12:04,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:12:04,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:12:04,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:12:04,914.914 INFO    ] time= 18/10/2026 06:12:04
[2026-10-18 06:12:04,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:12:04,958.958 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:12:05,103.103 INFO    ] No existing commands found in stream
[2026-10-18 06:12:10,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:12:10,136.136 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-18 06:12:10,954.954 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 06:12:10,956.956 INFO    ] Checking for system updates...
[2026-10-18 06:12:10,992.992 INFO    ] 200
[2026-10-18 06:12:10,995.995 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:12:11,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:12:11,063.063 INFO    ] No update needed
[2026-10-18 06:12:11,066.066 INFO    ] Checking for camera pi updates...
[2026-10-18 06:12:11,103.103 INFO    ] 200
[2026-10-18 06:12:11,105.105 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:12:11,146.146 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:12:21,161.161 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:12:21,196.196 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:12:21,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:12:21,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:12:21,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:12:21,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:12:23,257.257 INFO    ] ================================================
[2026-10-18 06:12:23,272.272 INFO    ] Launching Daemon at Sun Oct 18 06:12:23 IST 2026
[2026-10-18 06:12:23,283.283 INFO    ] ================================================
[2026-10-18 06:12:23,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:12:23
[2026-10-18 06:12:24,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:12:24,708.708 INFO    ] Initializing speech engine...
[2026-10-18 06:12:24,717.717 INFO    ] 2026-10-18 06:12:24
[2026-10-18 06:12:24,967.967 INFO    ] 2026-10-18 06:12:24
[2026-10-18 06:12:25,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:12:25,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:12:25,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:12:25,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:12:25,404.404 INFO    ] time= 18/10/2026 06:12:25
[2026-10-18 06:12:25,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:12:25,463.463 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:12:25,544.544 INFO    ] No existing commands found in stream
[2026-10-18 06:12:30,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:12:30,570.570 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-18 06:12:33,357.357 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:12:33,360.360 INFO    ] Checking for system updates...
[2026-10-18 06:12:33,403.403 INFO    ] 200
[2026-10-18 06:12:33,406.406 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:12:33,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:12:33,461.461 INFO    ] No update needed
[2026-10-18 06:12:33,463.463 INFO    ] Checking for camera pi updates...
[2026-10-18 06:12:33,500.500 INFO    ] 200
[2026-10-18 06:12:33,503.503 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:12:33,544.544 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:12:43,559.559 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:12:43,594.594 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:12:43,604.604 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:12:43,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:12:43,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:12:43,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:12:45,658.658 INFO    ] ================================================
[2026-10-18 06:12:45,674.674 INFO    ] Launching Daemon at Sun Oct 18 06:12:45 IST 2026
[2026-10-18 06:12:45,685.685 INFO    ] ================================================
[2026-10-18 06:12:46,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:12:46
[2026-10-18 06:12:47,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:12:47,332.332 INFO    ] Initializing speech engine...
[2026-10-18 06:12:47,343.343 INFO    ] 2026-10-18 06:12:47
[2026-10-18 06:12:47,633.633 INFO    ] 2026-10-18 06:12:47
[2026-10-18 06:12:47,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:12:47,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:12:47,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:12:48,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:12:48,168.168 INFO    ] time= 18/10/2026 06:12:48
[2026-10-18 06:12:48,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:12:48,194.194 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:12:48,329.329 INFO    ] No existing commands found in stream
[2026-10-18 06:12:53,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:12:53,361.361 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-18 06:12:54,626.626 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:12:54,629.629 INFO    ] Checking for system updates...
[2026-10-18 06:12:54,667.667 INFO    ] 200
[2026-10-18 06:12:54,669.669 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:12:54,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:12:54,727.727 INFO    ] No update needed
[2026-10-18 06:12:54,730.730 INFO    ] Checking for camera pi updates...
[2026-10-18 06:12:54,764.764 INFO    ] 200
[2026-10-18 06:12:54,767.767 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:12:54,808.808 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:13:04,824.824 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:13:04,864.864 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:13:04,875.875 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:13:04,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:13:04,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:13:04,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:13:06,931.931 INFO    ] ================================================
[2026-10-18 06:13:06,947.947 INFO    ] Launching Daemon at Sun Oct 18 06:13:06 IST 2026
[2026-10-18 06:13:06,958.958 INFO    ] ================================================
[2026-10-18 06:13:07,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:13:07
[2026-10-18 06:13:08,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:13:08,382.382 INFO    ] Initializing speech engine...
[2026-10-18 06:13:08,392.392 INFO    ] 2026-10-18 06:13:08
[2026-10-18 06:13:08,652.652 INFO    ] 2026-10-18 06:13:08
[2026-10-18 06:13:08,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:13:08,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:13:08,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:13:09,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:13:09,190.190 INFO    ] time= 18/10/2026 06:13:09
[2026-10-18 06:13:09,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:13:09,217.217 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:13:09,344.344 INFO    ] No existing commands found in stream
[2026-10-18 06:13:14,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:13:14,362.362 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-18 06:13:17,214.214 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:13:17,217.217 INFO    ] Checking for system updates...
[2026-10-18 06:13:17,257.257 INFO    ] 200
[2026-10-18 06:13:17,260.260 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:13:17,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:13:17,321.321 INFO    ] No update needed
[2026-10-18 06:13:17,324.324 INFO    ] Checking for camera pi updates...
[2026-10-18 06:13:17,358.358 INFO    ] 200
[2026-10-18 06:13:17,361.361 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:13:17,406.406 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:13:27,423.423 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:13:27,462.462 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:13:27,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:13:27,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:13:27,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:13:27,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:13:29,529.529 INFO    ] ================================================
[2026-10-18 06:13:29,545.545 INFO    ] Launching Daemon at Sun Oct 18 06:13:29 IST 2026
[2026-10-18 06:13:29,557.557 INFO    ] ================================================
[2026-10-18 06:13:30,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:13:30
[2026-10-18 06:13:30,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:13:31,163.163 INFO    ] Initializing speech engine...
[2026-10-18 06:13:31,173.173 INFO    ] 2026-10-18 06:13:31
[2026-10-18 06:13:31,464.464 INFO    ] 2026-10-18 06:13:31
[2026-10-18 06:13:31,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:13:31,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:13:31,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:13:31,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:13:31,947.947 INFO    ] time= 18/10/2026 06:13:31
[2026-10-18 06:13:31,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:13:32,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:13:32,145.145 INFO    ] No existing commands found in stream
[2026-10-18 06:13:37,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:13:37,159.159 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-18 06:13:37,645.645 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:13:37,648.648 INFO    ] Checking for system updates...
[2026-10-18 06:13:37,683.683 INFO    ] 200
[2026-10-18 06:13:37,685.685 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:13:37,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:13:37,741.741 INFO    ] No update needed
[2026-10-18 06:13:37,744.744 INFO    ] Checking for camera pi updates...
[2026-10-18 06:13:37,784.784 INFO    ] 200
[2026-10-18 06:13:37,786.786 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:13:37,826.826 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:13:47,841.841 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:13:47,877.877 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:13:47,888.888 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:13:47,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:13:47,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:13:47,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:13:49,941.941 INFO    ] ================================================
[2026-10-18 06:13:49,957.957 INFO    ] Launching Daemon at Sun Oct 18 06:13:49 IST 2026
[2026-10-18 06:13:49,968.968 INFO    ] ================================================
[2026-10-18 06:13:50,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:13:50
[2026-10-18 06:13:51,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:13:51,574.574 INFO    ] Initializing speech engine...
[2026-10-18 06:13:51,588.588 INFO    ] 2026-10-18 06:13:51
[2026-10-18 06:13:51,865.865 INFO    ] 2026-10-18 06:13:51
[2026-10-18 06:13:51,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:13:52,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:13:52,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:13:52,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:13:52,416.416 INFO    ] time= 18/10/2026 06:13:52
[2026-10-18 06:13:52,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:13:52,451.451 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:13:52,578.578 INFO    ] No existing commands found in stream
[2026-10-18 06:13:57,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:13:57,612.612 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-18 06:13:59,592.592 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:13:59,595.595 INFO    ] Checking for system updates...
[2026-10-18 06:13:59,635.635 INFO    ] 200
[2026-10-18 06:13:59,638.638 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:13:59,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:13:59,693.693 INFO    ] No update needed
[2026-10-18 06:13:59,696.696 INFO    ] Checking for camera pi updates...
[2026-10-18 06:13:59,731.731 INFO    ] 200
[2026-10-18 06:13:59,734.734 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:13:59,776.776 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:14:09,789.789 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:14:09,829.829 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:14:09,840.840 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:14:09,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:14:09,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:14:09,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:14:11,895.895 INFO    ] ================================================
[2026-10-18 06:14:11,910.910 INFO    ] Launching Daemon at Sun Oct 18 06:14:11 IST 2026
[2026-10-18 06:14:11,921.921 INFO    ] ================================================
[2026-10-18 06:14:12,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:14:12
[2026-10-18 06:14:13,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:14:13,522.522 INFO    ] Initializing speech engine...
[2026-10-18 06:14:13,535.535 INFO    ] 2026-10-18 06:14:13
[2026-10-18 06:14:13,821.821 INFO    ] 2026-10-18 06:14:13
[2026-10-18 06:14:13,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:14:14,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:14:14,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:14:14,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:14:14,351.351 INFO    ] time= 18/10/2026 06:14:14
[2026-10-18 06:14:14,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:14:14,400.400 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:14:14,530.530 INFO    ] No existing commands found in stream
[2026-10-18 06:14:19,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:14:19,564.564 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-18 06:14:21,719.719 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:14:21,722.722 INFO    ] Checking for system updates...
[2026-10-18 06:14:21,759.759 INFO    ] 200
[2026-10-18 06:14:21,762.762 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:14:21,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:14:21,818.818 INFO    ] No update needed
[2026-10-18 06:14:21,820.820 INFO    ] Checking for camera pi updates...
[2026-10-18 06:14:21,858.858 INFO    ] 200
[2026-10-18 06:14:21,861.861 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:14:21,903.903 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:14:31,919.919 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:14:31,962.962 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:14:31,974.974 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:14:31,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:14:31,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:14:31,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:14:34,031.031 INFO    ] ================================================
[2026-10-18 06:14:34,047.047 INFO    ] Launching Daemon at Sun Oct 18 06:14:34 IST 2026
[2026-10-18 06:14:34,058.058 INFO    ] ================================================
[2026-10-18 06:14:34,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:14:34
[2026-10-18 06:14:35,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:14:35,544.544 INFO    ] Initializing speech engine...
[2026-10-18 06:14:35,550.550 INFO    ] 2026-10-18 06:14:35
[2026-10-18 06:14:35,811.811 INFO    ] 2026-10-18 06:14:35
[2026-10-18 06:14:35,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:14:36,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:14:36,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:14:36,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:14:36,356.356 INFO    ] time= 18/10/2026 06:14:36
[2026-10-18 06:14:36,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:14:36,381.381 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:14:36,509.509 INFO    ] No existing commands found in stream
[2026-10-18 06:14:41,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:14:41,527.527 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-18 06:14:44,846.846 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:14:44,849.849 INFO    ] Checking for system updates...
[2026-10-18 06:14:44,884.884 INFO    ] 200
[2026-10-18 06:14:44,887.887 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:14:44,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:14:44,950.950 INFO    ] No update needed
[2026-10-18 06:14:44,952.952 INFO    ] Checking for camera pi updates...
[2026-10-18 06:14:44,986.986 INFO    ] 200
[2026-10-18 06:14:44,988.988 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:14:45,028.028 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:14:55,044.044 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:14:55,079.079 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:14:55,089.089 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:14:55,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:14:55,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:14:55,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:14:57,141.141 INFO    ] ================================================
[2026-10-18 06:14:57,157.157 INFO    ] Launching Daemon at Sun Oct 18 06:14:57 IST 2026
[2026-10-18 06:14:57,168.168 INFO    ] ================================================
[2026-10-18 06:14:57,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:14:57
[2026-10-18 06:14:58,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:14:58,620.620 INFO    ] Initializing speech engine...
[2026-10-18 06:14:58,645.645 INFO    ] 2026-10-18 06:14:58
[2026-10-18 06:14:58,918.918 INFO    ] 2026-10-18 06:14:58
[2026-10-18 06:14:58,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:14:59,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:14:59,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:14:59,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:14:59,456.456 INFO    ] time= 18/10/2026 06:14:59
[2026-10-18 06:14:59,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:14:59,532.532 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:14:59,654.654 INFO    ] No existing commands found in stream
[2026-10-18 06:15:04,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:15:04,687.687 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-18 06:15:07,736.736 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:15:07,739.739 INFO    ] Checking for system updates...
[2026-10-18 06:15:07,782.782 INFO    ] 200
[2026-10-18 06:15:07,785.785 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:15:07,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:15:07,840.840 INFO    ] No update needed
[2026-10-18 06:15:07,843.843 INFO    ] Checking for camera pi updates...
[2026-10-18 06:15:07,876.876 INFO    ] 200
[2026-10-18 06:15:07,879.879 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:15:07,920.920 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:15:17,935.935 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:15:17,971.971 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:15:17,981.981 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:15:17,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:15:17,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:15:17,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:15:20,034.034 INFO    ] ================================================
[2026-10-18 06:15:20,050.050 INFO    ] Launching Daemon at Sun Oct 18 06:15:20 IST 2026
[2026-10-18 06:15:20,061.061 INFO    ] ================================================
[2026-10-18 06:15:20,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:15:20
[2026-10-18 06:15:21,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:15:21,603.603 INFO    ] Initializing speech engine...
[2026-10-18 06:15:21,617.617 INFO    ] 2026-10-18 06:15:21
[2026-10-18 06:15:21,890.890 INFO    ] 2026-10-18 06:15:21
[2026-10-18 06:15:21,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:15:22,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:15:22,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:15:22,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:15:22,450.450 INFO    ] time= 18/10/2026 06:15:22
[2026-10-18 06:15:22,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:15:22,498.498 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:15:22,620.620 INFO    ] No existing commands found in stream
[2026-10-18 06:15:27,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:15:27,653.653 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-18 06:15:30,176.176 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:15:30,179.179 INFO    ] Checking for system updates...
[2026-10-18 06:15:30,216.216 INFO    ] 200
[2026-10-18 06:15:30,219.219 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:15:30,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:15:30,276.276 INFO    ] No update needed
[2026-10-18 06:15:30,279.279 INFO    ] Checking for camera pi updates...
[2026-10-18 06:15:30,313.313 INFO    ] 200
[2026-10-18 06:15:30,316.316 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:15:30,360.360 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:15:40,376.376 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:15:40,415.415 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:15:40,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:15:40,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:15:40,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:15:40,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:15:42,480.480 INFO    ] ================================================
[2026-10-18 06:15:42,496.496 INFO    ] Launching Daemon at Sun Oct 18 06:15:42 IST 2026
[2026-10-18 06:15:42,508.508 INFO    ] ================================================
[2026-10-18 06:15:43,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:15:43
[2026-10-18 06:15:43,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:15:43,971.971 INFO    ] Initializing speech engine...
[2026-10-18 06:15:43,980.980 INFO    ] 2026-10-18 06:15:43
[2026-10-18 06:15:44,237.237 INFO    ] 2026-10-18 06:15:44
[2026-10-18 06:15:44,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:15:44,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:15:44,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:15:44,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:15:44,737.737 INFO    ] time= 18/10/2026 06:15:44
[2026-10-18 06:15:44,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:15:44,795.795 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:15:44,941.941 INFO    ] No existing commands found in stream
[2026-10-18 06:15:49,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:15:49,955.955 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-18 06:15:51,895.895 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:15:51,898.898 INFO    ] Checking for system updates...
[2026-10-18 06:15:51,934.934 INFO    ] 200
[2026-10-18 06:15:51,936.936 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:15:51,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:15:51,992.992 INFO    ] No update needed
[2026-10-18 06:15:51,995.995 INFO    ] Checking for camera pi updates...
[2026-10-18 06:15:52,043.043 INFO    ] 200
[2026-10-18 06:15:52,046.046 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:15:52,087.087 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:16:02,102.102 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:16:02,153.153 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:16:02,165.165 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:16:02,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:16:02,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:16:02,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:16:04,224.224 INFO    ] ================================================
[2026-10-18 06:16:04,240.240 INFO    ] Launching Daemon at Sun Oct 18 06:16:04 IST 2026
[2026-10-18 06:16:04,251.251 INFO    ] ================================================
[2026-10-18 06:16:04,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:16:04
[2026-10-18 06:16:05,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:16:05,668.668 INFO    ] Initializing speech engine...
[2026-10-18 06:16:05,674.674 INFO    ] 2026-10-18 06:16:05
[2026-10-18 06:16:05,969.969 INFO    ] 2026-10-18 06:16:05
[2026-10-18 06:16:06,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:16:06,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:16:06,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:16:06,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:16:06,478.478 INFO    ] time= 18/10/2026 06:16:06
[2026-10-18 06:16:06,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:16:06,571.571 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:16:06,734.734 INFO    ] No existing commands found in stream
[2026-10-18 06:16:11,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:16:11,754.754 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-18 06:16:15,697.697 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:16:15,699.699 INFO    ] Checking for system updates...
[2026-10-18 06:16:15,736.736 INFO    ] 200
[2026-10-18 06:16:15,739.739 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:16:15,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:16:15,793.793 INFO    ] No update needed
[2026-10-18 06:16:15,795.795 INFO    ] Checking for camera pi updates...
[2026-10-18 06:16:15,829.829 INFO    ] 200
[2026-10-18 06:16:15,831.831 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:16:15,872.872 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:16:25,888.888 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:16:25,923.923 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:16:25,933.933 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:16:25,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:16:25,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:16:25,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:16:27,987.987 INFO    ] ================================================
[2026-10-18 06:16:28,002.002 INFO    ] Launching Daemon at Sun Oct 18 06:16:27 IST 2026
[2026-10-18 06:16:28,013.013 INFO    ] ================================================
[2026-10-18 06:16:28,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:16:28
[2026-10-18 06:16:29,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:16:29,467.467 INFO    ] Initializing speech engine...
[2026-10-18 06:16:29,477.477 INFO    ] 2026-10-18 06:16:29
[2026-10-18 06:16:29,737.737 INFO    ] 2026-10-18 06:16:29
[2026-10-18 06:16:29,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:16:30,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:16:30,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:16:30,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:16:30,216.216 INFO    ] time= 18/10/2026 06:16:30
[2026-10-18 06:16:30,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:16:30,286.286 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:16:30,425.425 INFO    ] No existing commands found in stream
[2026-10-18 06:16:35,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:16:35,447.447 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-18 06:16:38,126.126 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 06:16:38,129.129 INFO    ] Checking for system updates...
[2026-10-18 06:16:38,164.164 INFO    ] 200
[2026-10-18 06:16:38,167.167 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:16:38,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:16:38,230.230 INFO    ] No update needed
[2026-10-18 06:16:38,232.232 INFO    ] Checking for camera pi updates...
[2026-10-18 06:16:38,270.270 INFO    ] 200
[2026-10-18 06:16:38,272.272 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:16:38,313.313 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:16:48,325.325 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:16:48,361.361 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:16:48,371.371 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:16:48,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:16:48,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:16:48,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:16:50,426.426 INFO    ] ================================================
[2026-10-18 06:16:50,442.442 INFO    ] Launching Daemon at Sun Oct 18 06:16:50 IST 2026
[2026-10-18 06:16:50,453.453 INFO    ] ================================================
[2026-10-18 06:16:51,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:16:51
[2026-10-18 06:16:51,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:16:51,860.860 INFO    ] Initializing speech engine...
[2026-10-18 06:16:51,868.868 INFO    ] 2026-10-18 06:16:51
[2026-10-18 06:16:52,165.165 INFO    ] 2026-10-18 06:16:52
[2026-10-18 06:16:52,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:16:52,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:16:52,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:16:52,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:16:52,591.591 INFO    ] time= 18/10/2026 06:16:52
[2026-10-18 06:16:52,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:16:52,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:16:52,679.679 INFO    ] No existing commands found in stream
[2026-10-18 06:16:57,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:16:57,701.701 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-18 06:17:00,974.974 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:17:00,977.977 INFO    ] Checking for system updates...
[2026-10-18 06:17:01,013.013 INFO    ] 200
[2026-10-18 06:17:01,015.015 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:17:01,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:17:01,071.071 INFO    ] No update needed
[2026-10-18 06:17:01,073.073 INFO    ] Checking for camera pi updates...
[2026-10-18 06:17:01,114.114 INFO    ] 200
[2026-10-18 06:17:01,117.117 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:17:01,157.157 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:17:11,171.171 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:17:11,206.206 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:17:11,215.215 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:17:11,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:17:11,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:17:11,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:17:13,268.268 INFO    ] ================================================
[2026-10-18 06:17:13,284.284 INFO    ] Launching Daemon at Sun Oct 18 06:17:13 IST 2026
[2026-10-18 06:17:13,294.294 INFO    ] ================================================
[2026-10-18 06:17:13,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:17:13
[2026-10-18 06:17:14,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:17:14,693.693 INFO    ] Initializing speech engine...
[2026-10-18 06:17:14,702.702 INFO    ] 2026-10-18 06:17:14
[2026-10-18 06:17:14,975.975 INFO    ] 2026-10-18 06:17:14
[2026-10-18 06:17:15,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:17:15,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:17:15,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:17:15,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:17:15,488.488 INFO    ] time= 18/10/2026 06:17:15
[2026-10-18 06:17:15,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:17:15,554.554 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:17:15,687.687 INFO    ] No existing commands found in stream
[2026-10-18 06:17:20,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:17:20,713.713 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-18 06:17:24,431.431 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:17:24,433.433 INFO    ] Checking for system updates...
[2026-10-18 06:17:24,472.472 INFO    ] 200
[2026-10-18 06:17:24,475.475 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:17:24,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:17:24,531.531 INFO    ] No update needed
[2026-10-18 06:17:24,534.534 INFO    ] Checking for camera pi updates...
[2026-10-18 06:17:24,567.567 INFO    ] 200
[2026-10-18 06:17:24,569.569 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:17:24,609.609 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:17:34,622.622 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:17:34,657.657 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:17:34,666.666 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:17:34,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:17:34,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:17:34,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:17:36,720.720 INFO    ] ================================================
[2026-10-18 06:17:36,736.736 INFO    ] Launching Daemon at Sun Oct 18 06:17:36 IST 2026
[2026-10-18 06:17:36,747.747 INFO    ] ================================================
[2026-10-18 06:17:37,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:17:37
[2026-10-18 06:17:37,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:17:38,206.206 INFO    ] Initializing speech engine...
[2026-10-18 06:17:38,213.213 INFO    ] 2026-10-18 06:17:38
[2026-10-18 06:17:38,503.503 INFO    ] 2026-10-18 06:17:38
[2026-10-18 06:17:38,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:17:38,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:17:38,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:17:38,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:17:39,047.047 INFO    ] time= 18/10/2026 06:17:38
[2026-10-18 06:17:39,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:17:39,116.116 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:17:39,250.250 INFO    ] No existing commands found in stream
[2026-10-18 06:17:44,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:17:44,277.277 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-18 06:17:46,932.932 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 06:17:46,935.935 INFO    ] Checking for system updates...
[2026-10-18 06:17:46,972.972 INFO    ] 200
[2026-10-18 06:17:46,975.975 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:17:47,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:17:47,037.037 INFO    ] No update needed
[2026-10-18 06:17:47,040.040 INFO    ] Checking for camera pi updates...
[2026-10-18 06:17:47,079.079 INFO    ] 200
[2026-10-18 06:17:47,081.081 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:17:47,127.127 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:17:57,143.143 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:17:57,184.184 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:17:57,195.195 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:17:57,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:17:57,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:17:57,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:17:59,252.252 INFO    ] ================================================
[2026-10-18 06:17:59,268.268 INFO    ] Launching Daemon at Sun Oct 18 06:17:59 IST 2026
[2026-10-18 06:17:59,279.279 INFO    ] ================================================
[2026-10-18 06:17:59,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:17:59
[2026-10-18 06:18:00,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:18:00,747.747 INFO    ] Initializing speech engine...
[2026-10-18 06:18:00,755.755 INFO    ] 2026-10-18 06:18:00
[2026-10-18 06:18:01,008.008 INFO    ] 2026-10-18 06:18:00
[2026-10-18 06:18:01,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:18:01,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:18:01,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:18:01,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:18:01,484.484 INFO    ] time= 18/10/2026 06:18:01
[2026-10-18 06:18:01,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:18:01,523.523 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:18:01,659.659 INFO    ] No existing commands found in stream
[2026-10-18 06:18:06,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:18:06,693.693 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-18 06:18:10,085.085 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:18:10,088.088 INFO    ] Checking for system updates...
[2026-10-18 06:18:10,126.126 INFO    ] 200
[2026-10-18 06:18:10,128.128 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:18:10,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:18:10,188.188 INFO    ] No update needed
[2026-10-18 06:18:10,191.191 INFO    ] Checking for camera pi updates...
[2026-10-18 06:18:10,226.226 INFO    ] 200
[2026-10-18 06:18:10,228.228 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:18:10,270.270 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:18:20,285.285 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:18:20,320.320 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:18:20,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:18:20,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:18:20,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:18:20,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:18:22,383.383 INFO    ] ================================================
[2026-10-18 06:18:22,399.399 INFO    ] Launching Daemon at Sun Oct 18 06:18:22 IST 2026
[2026-10-18 06:18:22,410.410 INFO    ] ================================================
[2026-10-18 06:18:22,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:18:22
[2026-10-18 06:18:23,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:18:23,858.858 INFO    ] Initializing speech engine...
[2026-10-18 06:18:23,868.868 INFO    ] 2026-10-18 06:18:23
[2026-10-18 06:18:24,121.121 INFO    ] 2026-10-18 06:18:24
[2026-10-18 06:18:24,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:18:24,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:18:24,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:18:24,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:18:24,669.669 INFO    ] time= 18/10/2026 06:18:24
[2026-10-18 06:18:24,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:18:24,694.694 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:18:24,825.825 INFO    ] No existing commands found in stream
[2026-10-18 06:18:29,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:18:29,851.851 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-18 06:18:31,206.206 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:18:31,209.209 INFO    ] Checking for system updates...
[2026-10-18 06:18:31,244.244 INFO    ] 200
[2026-10-18 06:18:31,247.247 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:18:31,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:18:31,302.302 INFO    ] No update needed
[2026-10-18 06:18:31,304.304 INFO    ] Checking for camera pi updates...
[2026-10-18 06:18:31,338.338 INFO    ] 200
[2026-10-18 06:18:31,340.340 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:18:31,381.381 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:18:41,397.397 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:18:41,432.432 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:18:41,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:18:41,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:18:41,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:18:41,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:18:43,497.497 INFO    ] ================================================
[2026-10-18 06:18:43,513.513 INFO    ] Launching Daemon at Sun Oct 18 06:18:43 IST 2026
[2026-10-18 06:18:43,524.524 INFO    ] ================================================
[2026-10-18 06:18:44,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:18:44
[2026-10-18 06:18:44,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:18:44,946.946 INFO    ] Initializing speech engine...
[2026-10-18 06:18:44,955.955 INFO    ] 2026-10-18 06:18:44
[2026-10-18 06:18:45,204.204 INFO    ] 2026-10-18 06:18:45
[2026-10-18 06:18:45,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:18:45,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:18:45,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:18:45,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:18:45,707.707 INFO    ] time= 18/10/2026 06:18:45
[2026-10-18 06:18:45,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:18:45,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:18:45,917.917 INFO    ] No existing commands found in stream
[2026-10-18 06:18:50,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:18:50,930.930 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-18 06:18:52,378.378 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:18:52,380.380 INFO    ] Checking for system updates...
[2026-10-18 06:18:52,420.420 INFO    ] 200
[2026-10-18 06:18:52,423.423 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:18:52,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:18:52,477.477 INFO    ] No update needed
[2026-10-18 06:18:52,479.479 INFO    ] Checking for camera pi updates...
[2026-10-18 06:18:52,513.513 INFO    ] 200
[2026-10-18 06:18:52,516.516 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:18:52,556.556 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:19:02,572.572 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:19:02,610.610 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:19:02,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:19:02,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:19:02,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:19:02,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:19:04,677.677 INFO    ] ================================================
[2026-10-18 06:19:04,694.694 INFO    ] Launching Daemon at Sun Oct 18 06:19:04 IST 2026
[2026-10-18 06:19:04,704.704 INFO    ] ================================================
[2026-10-18 06:19:05,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:19:05
[2026-10-18 06:19:05,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:19:06,193.193 INFO    ] Initializing speech engine...
[2026-10-18 06:19:06,199.199 INFO    ] 2026-10-18 06:19:06
[2026-10-18 06:19:06,462.462 INFO    ] 2026-10-18 06:19:06
[2026-10-18 06:19:06,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:19:06,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:19:06,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:19:06,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:19:07,010.010 INFO    ] time= 18/10/2026 06:19:06
[2026-10-18 06:19:07,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:19:07,035.035 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:19:07,166.166 INFO    ] No existing commands found in stream
[2026-10-18 06:19:12,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:19:12,182.182 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-18 06:19:16,302.302 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:19:16,305.305 INFO    ] Checking for system updates...
[2026-10-18 06:19:16,341.341 INFO    ] 200
[2026-10-18 06:19:16,343.343 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:19:16,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:19:16,402.402 INFO    ] No update needed
[2026-10-18 06:19:16,404.404 INFO    ] Checking for camera pi updates...
[2026-10-18 06:19:16,442.442 INFO    ] 200
[2026-10-18 06:19:16,445.445 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:19:16,490.490 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:19:26,505.505 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:19:26,540.540 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:19:26,550.550 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:19:26,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:19:26,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:19:26,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:19:28,602.602 INFO    ] ================================================
[2026-10-18 06:19:28,617.617 INFO    ] Launching Daemon at Sun Oct 18 06:19:28 IST 2026
[2026-10-18 06:19:28,628.628 INFO    ] ================================================
[2026-10-18 06:19:29,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:19:29
[2026-10-18 06:19:29,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:19:30,062.062 INFO    ] Initializing speech engine...
[2026-10-18 06:19:30,071.071 INFO    ] 2026-10-18 06:19:30
[2026-10-18 06:19:30,318.318 INFO    ] 2026-10-18 06:19:30
[2026-10-18 06:19:30,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:19:30,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:19:30,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:19:30,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:19:30,819.819 INFO    ] time= 18/10/2026 06:19:30
[2026-10-18 06:19:30,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:19:30,882.882 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:19:31,024.024 INFO    ] No existing commands found in stream
[2026-10-18 06:19:36,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:19:36,043.043 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-18 06:19:38,432.432 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 06:19:38,435.435 INFO    ] Checking for system updates...
[2026-10-18 06:19:38,472.472 INFO    ] 200
[2026-10-18 06:19:38,475.475 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:19:38,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:19:38,538.538 INFO    ] No update needed
[2026-10-18 06:19:38,541.541 INFO    ] Checking for camera pi updates...
[2026-10-18 06:19:38,579.579 INFO    ] 200
[2026-10-18 06:19:38,582.582 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:19:38,624.624 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:19:48,641.641 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:19:48,681.681 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:19:48,692.692 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:19:48,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:19:48,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:19:48,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:19:50,747.747 INFO    ] ================================================
[2026-10-18 06:19:50,763.763 INFO    ] Launching Daemon at Sun Oct 18 06:19:50 IST 2026
[2026-10-18 06:19:50,773.773 INFO    ] ================================================
[2026-10-18 06:19:51,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:19:51
[2026-10-18 06:19:52,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:19:52,293.293 INFO    ] Initializing speech engine...
[2026-10-18 06:19:52,302.302 INFO    ] 2026-10-18 06:19:52
[2026-10-18 06:19:52,565.565 INFO    ] 2026-10-18 06:19:52
[2026-10-18 06:19:52,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:19:52,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:19:52,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:19:53,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:19:53,112.112 INFO    ] time= 18/10/2026 06:19:53
[2026-10-18 06:19:53,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:19:53,139.139 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:19:53,270.270 INFO    ] No existing commands found in stream
[2026-10-18 06:19:58,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:19:58,292.292 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-18 06:20:00,952.952 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:20:00,955.955 INFO    ] Checking for system updates...
[2026-10-18 06:20:00,991.991 INFO    ] 200
[2026-10-18 06:20:00,994.994 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:20:01,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:20:01,053.053 INFO    ] No update needed
[2026-10-18 06:20:01,056.056 INFO    ] Checking for camera pi updates...
[2026-10-18 06:20:01,093.093 INFO    ] 200
[2026-10-18 06:20:01,096.096 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:20:01,136.136 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:20:11,152.152 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:20:11,188.188 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:20:11,197.197 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:20:11,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:20:11,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:20:11,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:20:13,250.250 INFO    ] ================================================
[2026-10-18 06:20:13,266.266 INFO    ] Launching Daemon at Sun Oct 18 06:20:13 IST 2026
[2026-10-18 06:20:13,278.278 INFO    ] ================================================
[2026-10-18 06:20:13,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:20:13
[2026-10-18 06:20:14,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:20:14,906.906 INFO    ] Initializing speech engine...
[2026-10-18 06:20:14,920.920 INFO    ] 2026-10-18 06:20:14
[2026-10-18 06:20:15,176.176 INFO    ] 2026-10-18 06:20:15
[2026-10-18 06:20:15,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:20:15,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:20:15,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:20:15,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:20:15,740.740 INFO    ] time= 18/10/2026 06:20:15
[2026-10-18 06:20:15,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:20:15,776.776 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:20:15,917.917 INFO    ] No existing commands found in stream
[2026-10-18 06:20:20,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:20:20,955.955 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-18 06:20:22,462.462 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:20:22,465.465 INFO    ] Checking for system updates...
[2026-10-18 06:20:22,501.501 INFO    ] 200
[2026-10-18 06:20:22,504.504 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:20:22,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:20:22,560.560 INFO    ] No update needed
[2026-10-18 06:20:22,562.562 INFO    ] Checking for camera pi updates...
[2026-10-18 06:20:22,597.597 INFO    ] 200
[2026-10-18 06:20:22,600.600 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:20:22,641.641 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:20:32,656.656 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:20:32,694.694 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:20:32,705.705 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:20:32,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:20:32,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:20:32,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:20:34,762.762 INFO    ] ================================================
[2026-10-18 06:20:34,778.778 INFO    ] Launching Daemon at Sun Oct 18 06:20:34 IST 2026
[2026-10-18 06:20:34,788.788 INFO    ] ================================================
[2026-10-18 06:20:35,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:20:35
[2026-10-18 06:20:35,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:20:36,250.250 INFO    ] Initializing speech engine...
[2026-10-18 06:20:36,258.258 INFO    ] 2026-10-18 06:20:36
[2026-10-18 06:20:36,518.518 INFO    ] 2026-10-18 06:20:36
[2026-10-18 06:20:36,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:20:36,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:20:36,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:20:36,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:20:37,002.002 INFO    ] time= 18/10/2026 06:20:36
[2026-10-18 06:20:37,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:20:37,069.069 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:20:37,205.205 INFO    ] No existing commands found in stream
[2026-10-18 06:20:42,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:20:42,229.229 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-18 06:20:45,925.925 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:20:45,928.928 INFO    ] Checking for system updates...
[2026-10-18 06:20:45,970.970 INFO    ] 200
[2026-10-18 06:20:45,973.973 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:20:46,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:20:46,035.035 INFO    ] No update needed
[2026-10-18 06:20:46,038.038 INFO    ] Checking for camera pi updates...
[2026-10-18 06:20:46,075.075 INFO    ] 200
[2026-10-18 06:20:46,078.078 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:20:46,117.117 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:20:56,133.133 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:20:56,168.168 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:20:56,177.177 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:20:56,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:20:56,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:20:56,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:20:58,230.230 INFO    ] ================================================
[2026-10-18 06:20:58,245.245 INFO    ] Launching Daemon at Sun Oct 18 06:20:58 IST 2026
[2026-10-18 06:20:58,256.256 INFO    ] ================================================
[2026-10-18 06:20:58,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:20:58
[2026-10-18 06:20:59,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:20:59,681.681 INFO    ] Initializing speech engine...
[2026-10-18 06:20:59,705.705 INFO    ] 2026-10-18 06:20:59
[2026-10-18 06:20:59,981.981 INFO    ] 2026-10-18 06:20:59
[2026-10-18 06:21:00,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:21:00,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:21:00,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:21:00,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:21:00,388.388 INFO    ] time= 18/10/2026 06:21:00
[2026-10-18 06:21:00,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:21:00,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:21:00,589.589 INFO    ] No existing commands found in stream
[2026-10-18 06:21:05,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:21:05,602.602 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-18 06:21:08,482.482 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:21:08,485.485 INFO    ] Checking for system updates...
[2026-10-18 06:21:08,528.528 INFO    ] 200
[2026-10-18 06:21:08,531.531 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:21:08,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:21:08,595.595 INFO    ] No update needed
[2026-10-18 06:21:08,598.598 INFO    ] Checking for camera pi updates...
[2026-10-18 06:21:08,631.631 INFO    ] 200
[2026-10-18 06:21:08,633.633 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:21:08,682.682 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:21:18,698.698 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:21:18,732.732 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:21:18,742.742 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:21:18,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:21:18,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:21:18,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:21:20,794.794 INFO    ] ================================================
[2026-10-18 06:21:20,809.809 INFO    ] Launching Daemon at Sun Oct 18 06:21:20 IST 2026
[2026-10-18 06:21:20,820.820 INFO    ] ================================================
[2026-10-18 06:21:21,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:21:21
[2026-10-18 06:21:21,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:21:22,272.272 INFO    ] Initializing speech engine...
[2026-10-18 06:21:22,283.283 INFO    ] 2026-10-18 06:21:22
[2026-10-18 06:21:22,544.544 INFO    ] 2026-10-18 06:21:22
[2026-10-18 06:21:22,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:21:22,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:21:22,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:21:23,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:21:23,087.087 INFO    ] time= 18/10/2026 06:21:23
[2026-10-18 06:21:23,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:21:23,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:21:23,239.239 INFO    ] No existing commands found in stream
[2026-10-18 06:21:28,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:21:28,257.257 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-18 06:21:30,921.921 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:21:30,923.923 INFO    ] Checking for system updates...
[2026-10-18 06:21:30,959.959 INFO    ] 200
[2026-10-18 06:21:30,962.962 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:21:31,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:21:31,020.020 INFO    ] No update needed
[2026-10-18 06:21:31,022.022 INFO    ] Checking for camera pi updates...
[2026-10-18 06:21:31,056.056 INFO    ] 200
[2026-10-18 06:21:31,058.058 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:21:31,098.098 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:21:41,111.111 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:21:41,153.153 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:21:41,162.162 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:21:41,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:21:41,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:21:41,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:21:43,215.215 INFO    ] ================================================
[2026-10-18 06:21:43,230.230 INFO    ] Launching Daemon at Sun Oct 18 06:21:43 IST 2026
[2026-10-18 06:21:43,241.241 INFO    ] ================================================
[2026-10-18 06:21:43,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:21:43
[2026-10-18 06:21:44,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:21:44,684.684 INFO    ] Initializing speech engine...
[2026-10-18 06:21:44,693.693 INFO    ] 2026-10-18 06:21:44
[2026-10-18 06:21:44,979.979 INFO    ] 2026-10-18 06:21:44
[2026-10-18 06:21:45,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:21:45,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:21:45,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:21:45,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:21:45,476.476 INFO    ] time= 18/10/2026 06:21:45
[2026-10-18 06:21:45,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:21:45,546.546 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:21:45,674.674 INFO    ] No existing commands found in stream
[2026-10-18 06:21:50,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:21:50,705.705 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-18 06:21:54,848.848 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:21:54,851.851 INFO    ] Checking for system updates...
[2026-10-18 06:21:54,887.887 INFO    ] 200
[2026-10-18 06:21:54,889.889 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:21:54,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:21:54,946.946 INFO    ] No update needed
[2026-10-18 06:21:54,948.948 INFO    ] Checking for camera pi updates...
[2026-10-18 06:21:54,989.989 INFO    ] 200
[2026-10-18 06:21:54,991.991 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:21:55,035.035 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:22:05,049.049 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:22:05,084.084 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:22:05,094.094 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:22:05,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:22:05,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:22:05,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:22:07,147.147 INFO    ] ================================================
[2026-10-18 06:22:07,162.162 INFO    ] Launching Daemon at Sun Oct 18 06:22:07 IST 2026
[2026-10-18 06:22:07,173.173 INFO    ] ================================================
[2026-10-18 06:22:07,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:22:07
[2026-10-18 06:22:08,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:22:08,788.788 INFO    ] Initializing speech engine...
[2026-10-18 06:22:08,810.810 INFO    ] 2026-10-18 06:22:08
[2026-10-18 06:22:09,075.075 INFO    ] 2026-10-18 06:22:09
[2026-10-18 06:22:09,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:22:09,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:22:09,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:22:09,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:22:09,609.609 INFO    ] time= 18/10/2026 06:22:09
[2026-10-18 06:22:09,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:22:09,633.633 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:22:09,762.762 INFO    ] No existing commands found in stream
[2026-10-18 06:22:14,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:22:14,788.788 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-18 06:22:16,883.883 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:22:16,886.886 INFO    ] Checking for system updates...
[2026-10-18 06:22:16,923.923 INFO    ] 200
[2026-10-18 06:22:16,926.926 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:22:16,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:22:16,987.987 INFO    ] No update needed
[2026-10-18 06:22:16,990.990 INFO    ] Checking for camera pi updates...
[2026-10-18 06:22:17,023.023 INFO    ] 200
[2026-10-18 06:22:17,025.025 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:22:17,070.070 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:22:27,085.085 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:22:27,120.120 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:22:27,132.132 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:22:27,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:22:27,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:22:27,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:22:29,185.185 INFO    ] ================================================
[2026-10-18 06:22:29,201.201 INFO    ] Launching Daemon at Sun Oct 18 06:22:29 IST 2026
[2026-10-18 06:22:29,211.211 INFO    ] ================================================
[2026-10-18 06:22:29,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:22:29
[2026-10-18 06:22:30,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:22:30,733.733 INFO    ] Initializing speech engine...
[2026-10-18 06:22:30,742.742 INFO    ] 2026-10-18 06:22:30
[2026-10-18 06:22:30,992.992 INFO    ] 2026-10-18 06:22:30
[2026-10-18 06:22:31,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:22:31,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:22:31,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:22:31,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:22:31,556.556 INFO    ] time= 18/10/2026 06:22:31
[2026-10-18 06:22:31,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:22:31,580.580 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:22:31,716.716 INFO    ] No existing commands found in stream
[2026-10-18 06:22:36,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:22:36,732.732 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-18 06:22:38,462.462 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:22:38,464.464 INFO    ] Checking for system updates...
[2026-10-18 06:22:38,500.500 INFO    ] 200
[2026-10-18 06:22:38,503.503 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:22:38,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:22:38,557.557 INFO    ] No update needed
[2026-10-18 06:22:38,560.560 INFO    ] Checking for camera pi updates...
[2026-10-18 06:22:38,597.597 INFO    ] 200
[2026-10-18 06:22:38,600.600 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:22:38,641.641 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:22:48,656.656 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:22:48,690.690 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:22:48,700.700 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:22:48,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:22:48,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:22:48,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:22:50,752.752 INFO    ] ================================================
[2026-10-18 06:22:50,767.767 INFO    ] Launching Daemon at Sun Oct 18 06:22:50 IST 2026
[2026-10-18 06:22:50,778.778 INFO    ] ================================================
[2026-10-18 06:22:51,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:22:51
[2026-10-18 06:22:51,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:22:52,261.261 INFO    ] Initializing speech engine...
[2026-10-18 06:22:52,271.271 INFO    ] 2026-10-18 06:22:52
[2026-10-18 06:22:52,527.527 INFO    ] 2026-10-18 06:22:52
[2026-10-18 06:22:52,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:22:52,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:22:52,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:22:53,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:22:53,072.072 INFO    ] time= 18/10/2026 06:22:53
[2026-10-18 06:22:53,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:22:53,096.096 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:22:53,222.222 INFO    ] No existing commands found in stream
[2026-10-18 06:22:58,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:22:58,240.240 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-18 06:22:59,894.894 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 06:22:59,897.897 INFO    ] Checking for system updates...
[2026-10-18 06:22:59,937.937 INFO    ] 200
[2026-10-18 06:22:59,939.939 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:22:59,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:23:00,001.001 INFO    ] No update needed
[2026-10-18 06:23:00,003.003 INFO    ] Checking for camera pi updates...
[2026-10-18 06:23:00,041.041 INFO    ] 200
[2026-10-18 06:23:00,043.043 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:23:00,083.083 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:23:10,098.098 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:23:10,133.133 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:23:10,143.143 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:23:10,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:23:10,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:23:10,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:23:12,197.197 INFO    ] ================================================
[2026-10-18 06:23:12,212.212 INFO    ] Launching Daemon at Sun Oct 18 06:23:12 IST 2026
[2026-10-18 06:23:12,223.223 INFO    ] ================================================
[2026-10-18 06:23:12,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:23:12
[2026-10-18 06:23:13,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:23:13,650.650 INFO    ] Initializing speech engine...
[2026-10-18 06:23:13,657.657 INFO    ] 2026-10-18 06:23:13
[2026-10-18 06:23:13,916.916 INFO    ] 2026-10-18 06:23:13
[2026-10-18 06:23:13,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:23:14,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:23:14,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:23:14,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:23:14,456.456 INFO    ] time= 18/10/2026 06:23:14
[2026-10-18 06:23:14,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:23:14,484.484 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:23:14,600.600 INFO    ] No existing commands found in stream
[2026-10-18 06:23:19,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:23:19,627.627 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-18 06:23:24,012.012 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:23:24,014.014 INFO    ] Checking for system updates...
[2026-10-18 06:23:24,050.050 INFO    ] 200
[2026-10-18 06:23:24,053.053 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:23:24,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:23:24,119.119 INFO    ] No update needed
[2026-10-18 06:23:24,121.121 INFO    ] Checking for camera pi updates...
[2026-10-18 06:23:24,160.160 INFO    ] 200
[2026-10-18 06:23:24,162.162 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:23:24,213.213 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:23:34,227.227 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:23:34,264.264 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:23:34,274.274 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:23:34,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:23:34,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:23:34,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:23:36,330.330 INFO    ] ================================================
[2026-10-18 06:23:36,345.345 INFO    ] Launching Daemon at Sun Oct 18 06:23:36 IST 2026
[2026-10-18 06:23:36,356.356 INFO    ] ================================================
[2026-10-18 06:23:36,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:23:36
[2026-10-18 06:23:37,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:23:37,823.823 INFO    ] Initializing speech engine...
[2026-10-18 06:23:37,832.832 INFO    ] 2026-10-18 06:23:37
[2026-10-18 06:23:38,083.083 INFO    ] 2026-10-18 06:23:38
[2026-10-18 06:23:38,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:23:38,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:23:38,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:23:38,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:23:38,588.588 INFO    ] time= 18/10/2026 06:23:38
[2026-10-18 06:23:38,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:23:38,658.658 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:23:38,799.799 INFO    ] No existing commands found in stream
[2026-10-18 06:23:43,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:23:43,822.822 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-18 06:23:45,198.198 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 06:23:45,201.201 INFO    ] Checking for system updates...
[2026-10-18 06:23:45,241.241 INFO    ] 200
[2026-10-18 06:23:45,243.243 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:23:45,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:23:45,305.305 INFO    ] No update needed
[2026-10-18 06:23:45,308.308 INFO    ] Checking for camera pi updates...
[2026-10-18 06:23:45,346.346 INFO    ] 200
[2026-10-18 06:23:45,348.348 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:23:45,389.389 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:23:55,404.404 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:23:55,439.439 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:23:55,449.449 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:23:55,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:23:55,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:23:55,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:23:57,500.500 INFO    ] ================================================
[2026-10-18 06:23:57,516.516 INFO    ] Launching Daemon at Sun Oct 18 06:23:57 IST 2026
[2026-10-18 06:23:57,527.527 INFO    ] ================================================
[2026-10-18 06:23:58,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:23:58
[2026-10-18 06:23:58,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:23:59,197.197 INFO    ] Initializing speech engine...
[2026-10-18 06:23:59,201.201 INFO    ] 2026-10-18 06:23:59
[2026-10-18 06:23:59,451.451 INFO    ] 2026-10-18 06:23:59
[2026-10-18 06:23:59,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:23:59,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:23:59,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:23:59,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:23:59,927.927 INFO    ] time= 18/10/2026 06:23:59
[2026-10-18 06:23:59,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:24:00,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:24:00,180.180 INFO    ] No existing commands found in stream
[2026-10-18 06:24:05,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:24:05,206.206 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-18 06:24:06,942.942 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:24:06,944.944 INFO    ] Checking for system updates...
[2026-10-18 06:24:06,985.985 INFO    ] 200
[2026-10-18 06:24:06,987.987 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:24:07,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:24:07,049.049 INFO    ] No update needed
[2026-10-18 06:24:07,052.052 INFO    ] Checking for camera pi updates...
[2026-10-18 06:24:07,085.085 INFO    ] 200
[2026-10-18 06:24:07,088.088 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:24:07,128.128 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:24:17,140.140 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:24:17,174.174 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:24:17,184.184 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:24:17,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:24:17,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:24:17,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:24:19,236.236 INFO    ] ================================================
[2026-10-18 06:24:19,252.252 INFO    ] Launching Daemon at Sun Oct 18 06:24:19 IST 2026
[2026-10-18 06:24:19,263.263 INFO    ] ================================================
[2026-10-18 06:24:19,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:24:19
[2026-10-18 06:24:20,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:24:20,759.759 INFO    ] Initializing speech engine...
[2026-10-18 06:24:20,772.772 INFO    ] 2026-10-18 06:24:20
[2026-10-18 06:24:21,021.021 INFO    ] 2026-10-18 06:24:21
[2026-10-18 06:24:21,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:24:21,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:24:21,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:24:21,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:24:21,584.584 INFO    ] time= 18/10/2026 06:24:21
[2026-10-18 06:24:21,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:24:21,612.612 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:24:21,755.755 INFO    ] No existing commands found in stream
[2026-10-18 06:24:26,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:24:26,789.789 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-18 06:24:30,639.639 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:24:30,642.642 INFO    ] Checking for system updates...
[2026-10-18 06:24:30,682.682 INFO    ] 200
[2026-10-18 06:24:30,684.684 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:24:30,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:24:30,747.747 INFO    ] No update needed
[2026-10-18 06:24:30,750.750 INFO    ] Checking for camera pi updates...
[2026-10-18 06:24:30,789.789 INFO    ] 200
[2026-10-18 06:24:30,792.792 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:24:30,838.838 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:24:40,853.853 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:24:40,888.888 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:24:40,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:24:40,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:24:40,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:24:40,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:24:42,950.950 INFO    ] ================================================
[2026-10-18 06:24:42,966.966 INFO    ] Launching Daemon at Sun Oct 18 06:24:42 IST 2026
[2026-10-18 06:24:42,977.977 INFO    ] ================================================
[2026-10-18 06:24:43,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:24:43
[2026-10-18 06:24:44,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:24:44,423.423 INFO    ] Initializing speech engine...
[2026-10-18 06:24:44,430.430 INFO    ] 2026-10-18 06:24:44
[2026-10-18 06:24:44,732.732 INFO    ] 2026-10-18 06:24:44
[2026-10-18 06:24:44,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:24:45,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:24:45,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:24:45,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:24:45,230.230 INFO    ] time= 18/10/2026 06:24:45
[2026-10-18 06:24:45,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:24:45,357.357 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:24:45,487.487 INFO    ] No existing commands found in stream
[2026-10-18 06:24:50,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:24:50,518.518 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-18 06:24:54,683.683 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:24:54,686.686 INFO    ] Checking for system updates...
[2026-10-18 06:24:54,723.723 INFO    ] 200
[2026-10-18 06:24:54,726.726 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:24:54,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:24:54,790.790 INFO    ] No update needed
[2026-10-18 06:24:54,794.794 INFO    ] Checking for camera pi updates...
[2026-10-18 06:24:54,834.834 INFO    ] 200
[2026-10-18 06:24:54,838.838 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:24:54,885.885 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:25:04,900.900 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:25:04,940.940 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:25:04,952.952 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:25:04,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:25:04,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:25:04,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:25:07,007.007 INFO    ] ================================================
[2026-10-18 06:25:07,024.024 INFO    ] Launching Daemon at Sun Oct 18 06:25:07 IST 2026
[2026-10-18 06:25:07,036.036 INFO    ] ================================================
[2026-10-18 06:25:07,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:25:07
[2026-10-18 06:25:08,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:25:08,563.563 INFO    ] Initializing speech engine...
[2026-10-18 06:25:08,577.577 INFO    ] 2026-10-18 06:25:08
[2026-10-18 06:25:08,829.829 INFO    ] 2026-10-18 06:25:08
[2026-10-18 06:25:08,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:25:09,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:25:09,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:25:09,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:25:09,305.305 INFO    ] time= 18/10/2026 06:25:09
[2026-10-18 06:25:09,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:25:09,405.405 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:25:09,525.525 INFO    ] No existing commands found in stream
[2026-10-18 06:25:14,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:25:14,560.560 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-18 06:25:16,902.902 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:25:16,905.905 INFO    ] Checking for system updates...
[2026-10-18 06:25:16,948.948 INFO    ] 200
[2026-10-18 06:25:16,951.951 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:25:17,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:25:17,018.018 INFO    ] No update needed
[2026-10-18 06:25:17,021.021 INFO    ] Checking for camera pi updates...
[2026-10-18 06:25:17,057.057 INFO    ] 200
[2026-10-18 06:25:17,059.059 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:25:17,101.101 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:25:27,118.118 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:25:27,159.159 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:25:27,170.170 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:25:27,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:25:27,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:25:27,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:25:29,227.227 INFO    ] ================================================
[2026-10-18 06:25:29,242.242 INFO    ] Launching Daemon at Sun Oct 18 06:25:29 IST 2026
[2026-10-18 06:25:29,253.253 INFO    ] ================================================
[2026-10-18 06:25:29,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:25:29
[2026-10-18 06:25:30,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:25:30,660.660 INFO    ] Initializing speech engine...
[2026-10-18 06:25:30,668.668 INFO    ] 2026-10-18 06:25:30
[2026-10-18 06:25:30,966.966 INFO    ] 2026-10-18 06:25:30
[2026-10-18 06:25:31,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:25:31,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:25:31,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:25:31,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:25:31,457.457 INFO    ] time= 18/10/2026 06:25:31
[2026-10-18 06:25:31,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:25:31,534.534 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:25:31,684.684 INFO    ] No existing commands found in stream
[2026-10-18 06:25:36,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:25:36,702.702 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-18 06:25:38,724.724 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:25:38,727.727 INFO    ] Checking for system updates...
[2026-10-18 06:25:38,768.768 INFO    ] 200
[2026-10-18 06:25:38,770.770 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:25:38,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:25:38,833.833 INFO    ] No update needed
[2026-10-18 06:25:38,835.835 INFO    ] Checking for camera pi updates...
[2026-10-18 06:25:38,873.873 INFO    ] 200
[2026-10-18 06:25:38,876.876 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:25:38,922.922 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:25:48,940.940 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:25:48,980.980 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:25:48,990.990 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:25:48,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:25:48,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:25:49,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:25:51,043.043 INFO    ] ================================================
[2026-10-18 06:25:51,058.058 INFO    ] Launching Daemon at Sun Oct 18 06:25:51 IST 2026
[2026-10-18 06:25:51,069.069 INFO    ] ================================================
[2026-10-18 06:25:51,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:25:51
[2026-10-18 06:25:52,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:25:52,503.503 INFO    ] Initializing speech engine...
[2026-10-18 06:25:52,508.508 INFO    ] 2026-10-18 06:25:52
[2026-10-18 06:25:52,813.813 INFO    ] 2026-10-18 06:25:52
[2026-10-18 06:25:52,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:25:53,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:25:53,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:25:53,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:25:53,246.246 INFO    ] time= 18/10/2026 06:25:53
[2026-10-18 06:25:53,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:25:53,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:25:53,361.361 INFO    ] No existing commands found in stream
[2026-10-18 06:25:58,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:25:58,399.399 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-18 06:25:59,897.897 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:25:59,900.900 INFO    ] Checking for system updates...
[2026-10-18 06:25:59,937.937 INFO    ] 200
[2026-10-18 06:25:59,940.940 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:25:59,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:25:59,996.996 INFO    ] No update needed
[2026-10-18 06:25:59,999.999 INFO    ] Checking for camera pi updates...
[2026-10-18 06:26:00,034.034 INFO    ] 200
[2026-10-18 06:26:00,037.037 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:26:00,079.079 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:26:10,095.095 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:26:10,137.137 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:26:10,149.149 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:26:10,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:26:10,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:26:10,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:26:12,204.204 INFO    ] ================================================
[2026-10-18 06:26:12,220.220 INFO    ] Launching Daemon at Sun Oct 18 06:26:12 IST 2026
[2026-10-18 06:26:12,230.230 INFO    ] ================================================
[2026-10-18 06:26:12,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:26:12
[2026-10-18 06:26:13,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:26:13,691.691 INFO    ] Initializing speech engine...
[2026-10-18 06:26:13,697.697 INFO    ] 2026-10-18 06:26:13
[2026-10-18 06:26:13,946.946 INFO    ] 2026-10-18 06:26:13
[2026-10-18 06:26:13,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:26:14,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:26:14,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:26:14,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:26:14,435.435 INFO    ] time= 18/10/2026 06:26:14
[2026-10-18 06:26:14,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:26:14,522.522 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:26:14,678.678 INFO    ] No existing commands found in stream
[2026-10-18 06:26:19,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:26:19,705.705 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-18 06:26:23,492.492 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:26:23,495.495 INFO    ] Checking for system updates...
[2026-10-18 06:26:23,532.532 INFO    ] 200
[2026-10-18 06:26:23,535.535 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:26:23,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:26:23,592.592 INFO    ] No update needed
[2026-10-18 06:26:23,595.595 INFO    ] Checking for camera pi updates...
[2026-10-18 06:26:23,629.629 INFO    ] 200
[2026-10-18 06:26:23,632.632 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:26:23,674.674 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:26:33,690.690 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:26:33,731.731 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:26:33,743.743 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:26:33,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:26:33,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:26:33,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:26:35,802.802 INFO    ] ================================================
[2026-10-18 06:26:35,818.818 INFO    ] Launching Daemon at Sun Oct 18 06:26:35 IST 2026
[2026-10-18 06:26:35,829.829 INFO    ] ================================================
[2026-10-18 06:26:36,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:26:36
[2026-10-18 06:26:37,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:26:37,289.289 INFO    ] Initializing speech engine...
[2026-10-18 06:26:37,299.299 INFO    ] 2026-10-18 06:26:37
[2026-10-18 06:26:37,560.560 INFO    ] 2026-10-18 06:26:37
[2026-10-18 06:26:37,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:26:37,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:26:37,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:26:38,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:26:38,110.110 INFO    ] time= 18/10/2026 06:26:38
[2026-10-18 06:26:38,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:26:38,140.140 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:26:38,265.265 INFO    ] No existing commands found in stream
[2026-10-18 06:26:43,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:26:43,288.288 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-18 06:26:46,090.090 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:26:46,093.093 INFO    ] Checking for system updates...
[2026-10-18 06:26:46,130.130 INFO    ] 200
[2026-10-18 06:26:46,133.133 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:26:46,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:26:46,189.189 INFO    ] No update needed
[2026-10-18 06:26:46,192.192 INFO    ] Checking for camera pi updates...
[2026-10-18 06:26:46,230.230 INFO    ] 200
[2026-10-18 06:26:46,233.233 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:26:46,285.285 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:26:56,303.303 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:26:56,340.340 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:26:56,350.350 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:26:56,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:26:56,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:26:56,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:26:58,402.402 INFO    ] ================================================
[2026-10-18 06:26:58,417.417 INFO    ] Launching Daemon at Sun Oct 18 06:26:58 IST 2026
[2026-10-18 06:26:58,428.428 INFO    ] ================================================
[2026-10-18 06:26:59,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:26:59
[2026-10-18 06:26:59,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:26:59,902.902 INFO    ] Initializing speech engine...
[2026-10-18 06:26:59,911.911 INFO    ] 2026-10-18 06:26:59
[2026-10-18 06:27:00,166.166 INFO    ] 2026-10-18 06:27:00
[2026-10-18 06:27:00,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:27:00,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:27:00,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:27:00,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:27:00,680.680 INFO    ] time= 18/10/2026 06:27:00
[2026-10-18 06:27:00,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:27:00,748.748 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:27:00,882.882 INFO    ] No existing commands found in stream
[2026-10-18 06:27:05,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:27:05,912.912 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-18 06:27:07,967.967 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:27:07,970.970 INFO    ] Checking for system updates...
[2026-10-18 06:27:08,006.006 INFO    ] 200
[2026-10-18 06:27:08,008.008 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:27:08,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:27:08,063.063 INFO    ] No update needed
[2026-10-18 06:27:08,065.065 INFO    ] Checking for camera pi updates...
[2026-10-18 06:27:08,099.099 INFO    ] 200
[2026-10-18 06:27:08,101.101 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:27:08,141.141 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:27:18,156.156 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:27:18,191.191 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:27:18,200.200 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:27:18,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:27:18,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:27:18,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:27:20,253.253 INFO    ] ================================================
[2026-10-18 06:27:20,269.269 INFO    ] Launching Daemon at Sun Oct 18 06:27:20 IST 2026
[2026-10-18 06:27:20,280.280 INFO    ] ================================================
[2026-10-18 06:27:20,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:27:20
[2026-10-18 06:27:21,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:27:21,723.723 INFO    ] Initializing speech engine...
[2026-10-18 06:27:21,730.730 INFO    ] 2026-10-18 06:27:21
[2026-10-18 06:27:22,025.025 INFO    ] 2026-10-18 06:27:21
[2026-10-18 06:27:22,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:27:22,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:27:22,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:27:22,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:27:22,441.441 INFO    ] time= 18/10/2026 06:27:22
[2026-10-18 06:27:22,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:27:22,477.477 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:27:22,626.626 INFO    ] No existing commands found in stream
[2026-10-18 06:27:27,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:27:27,654.654 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-18 06:27:28,470.470 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:27:28,473.473 INFO    ] Checking for system updates...
[2026-10-18 06:27:28,511.511 INFO    ] 200
[2026-10-18 06:27:28,514.514 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:27:28,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:27:28,569.569 INFO    ] No update needed
[2026-10-18 06:27:28,572.572 INFO    ] Checking for camera pi updates...
[2026-10-18 06:27:28,605.605 INFO    ] 200
[2026-10-18 06:27:28,608.608 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:27:28,651.651 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:27:38,664.664 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:27:38,699.699 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:27:38,709.709 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:27:38,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:27:38,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:27:38,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:27:40,762.762 INFO    ] ================================================
[2026-10-18 06:27:40,778.778 INFO    ] Launching Daemon at Sun Oct 18 06:27:40 IST 2026
[2026-10-18 06:27:40,789.789 INFO    ] ================================================
[2026-10-18 06:27:41,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:27:41
[2026-10-18 06:27:41,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:27:42,194.194 INFO    ] Initializing speech engine...
[2026-10-18 06:27:42,214.214 INFO    ] 2026-10-18 06:27:42
[2026-10-18 06:27:42,472.472 INFO    ] 2026-10-18 06:27:42
[2026-10-18 06:27:42,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:27:42,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:27:42,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:27:42,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:27:42,947.947 INFO    ] time= 18/10/2026 06:27:42
[2026-10-18 06:27:42,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:27:43,046.046 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:27:43,200.200 INFO    ] No existing commands found in stream
[2026-10-18 06:27:48,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:27:48,218.218 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-18 06:27:50,260.260 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:27:50,263.263 INFO    ] Checking for system updates...
[2026-10-18 06:27:50,311.311 INFO    ] 200
[2026-10-18 06:27:50,313.313 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:27:50,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:27:50,370.370 INFO    ] No update needed
[2026-10-18 06:27:50,372.372 INFO    ] Checking for camera pi updates...
[2026-10-18 06:27:50,411.411 INFO    ] 200
[2026-10-18 06:27:50,413.413 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:27:50,460.460 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:28:00,475.475 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:28:00,515.515 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:28:00,526.526 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:28:00,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:28:00,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:28:00,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:28:02,590.590 INFO    ] ================================================
[2026-10-18 06:28:02,613.613 INFO    ] Launching Daemon at Sun Oct 18 06:28:02 IST 2026
[2026-10-18 06:28:02,632.632 INFO    ] ================================================
[2026-10-18 06:28:03,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:28:03
[2026-10-18 06:28:03,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:28:04,158.158 INFO    ] Initializing speech engine...
[2026-10-18 06:28:04,163.163 INFO    ] 2026-10-18 06:28:04
[2026-10-18 06:28:04,422.422 INFO    ] 2026-10-18 06:28:04
[2026-10-18 06:28:04,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:28:04,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:28:04,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:28:04,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:28:04,911.911 INFO    ] time= 18/10/2026 06:28:04
[2026-10-18 06:28:04,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:28:04,979.979 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:28:05,120.120 INFO    ] No existing commands found in stream
[2026-10-18 06:28:10,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:28:10,139.139 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-18 06:28:14,142.142 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:28:14,145.145 INFO    ] Checking for system updates...
[2026-10-18 06:28:14,180.180 INFO    ] 200
[2026-10-18 06:28:14,183.183 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:28:14,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:28:14,236.236 INFO    ] No update needed
[2026-10-18 06:28:14,239.239 INFO    ] Checking for camera pi updates...
[2026-10-18 06:28:14,272.272 INFO    ] 200
[2026-10-18 06:28:14,274.274 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:28:14,314.314 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:28:24,329.329 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:28:24,364.364 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:28:24,373.373 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:28:24,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:28:24,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:28:24,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:28:26,426.426 INFO    ] ================================================
[2026-10-18 06:28:26,442.442 INFO    ] Launching Daemon at Sun Oct 18 06:28:26 IST 2026
[2026-10-18 06:28:26,454.454 INFO    ] ================================================
[2026-10-18 06:28:27,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:28:27
[2026-10-18 06:28:27,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:28:27,882.882 INFO    ] Initializing speech engine...
[2026-10-18 06:28:27,890.890 INFO    ] 2026-10-18 06:28:27
[2026-10-18 06:28:28,159.159 INFO    ] 2026-10-18 06:28:28
[2026-10-18 06:28:28,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:28:28,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:28:28,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:28:28,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:28:28,585.585 INFO    ] time= 18/10/2026 06:28:28
[2026-10-18 06:28:28,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:28:28,618.618 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:28:28,757.757 INFO    ] No existing commands found in stream
[2026-10-18 06:28:33,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:28:33,784.784 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-18 06:28:35,001.001 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:28:35,003.003 INFO    ] Checking for system updates...
[2026-10-18 06:28:35,042.042 INFO    ] 200
[2026-10-18 06:28:35,045.045 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:28:35,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:28:35,101.101 INFO    ] No update needed
[2026-10-18 06:28:35,104.104 INFO    ] Checking for camera pi updates...
[2026-10-18 06:28:35,142.142 INFO    ] 200
[2026-10-18 06:28:35,145.145 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:28:35,188.188 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:28:45,204.204 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:28:45,244.244 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:28:45,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:28:45,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:28:45,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:28:45,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:28:47,311.311 INFO    ] ================================================
[2026-10-18 06:28:47,326.326 INFO    ] Launching Daemon at Sun Oct 18 06:28:47 IST 2026
[2026-10-18 06:28:47,337.337 INFO    ] ================================================
[2026-10-18 06:28:47,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:28:47
[2026-10-18 06:28:48,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:28:48,882.882 INFO    ] Initializing speech engine...
[2026-10-18 06:28:48,890.890 INFO    ] 2026-10-18 06:28:48
[2026-10-18 06:28:49,176.176 INFO    ] 2026-10-18 06:28:49
[2026-10-18 06:28:49,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:28:49,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:28:49,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:28:49,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:28:49,722.722 INFO    ] time= 18/10/2026 06:28:49
[2026-10-18 06:28:49,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:28:49,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:28:49,887.887 INFO    ] No existing commands found in stream
[2026-10-18 06:28:54,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:28:54,922.922 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-18 06:28:56,795.795 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:28:56,798.798 INFO    ] Checking for system updates...
[2026-10-18 06:28:56,835.835 INFO    ] 200
[2026-10-18 06:28:56,838.838 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:28:56,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:28:56,894.894 INFO    ] No update needed
[2026-10-18 06:28:56,897.897 INFO    ] Checking for camera pi updates...
[2026-10-18 06:28:56,935.935 INFO    ] 200
[2026-10-18 06:28:56,938.938 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:28:56,980.980 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:29:06,997.997 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:29:07,038.038 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:29:07,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:29:07,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:29:07,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:29:07,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:29:09,101.101 INFO    ] ================================================
[2026-10-18 06:29:09,117.117 INFO    ] Launching Daemon at Sun Oct 18 06:29:09 IST 2026
[2026-10-18 06:29:09,128.128 INFO    ] ================================================
[2026-10-18 06:29:09,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:29:09
[2026-10-18 06:29:10,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:29:10,547.547 INFO    ] Initializing speech engine...
[2026-10-18 06:29:10,556.556 INFO    ] 2026-10-18 06:29:10
[2026-10-18 06:29:10,817.817 INFO    ] 2026-10-18 06:29:10
[2026-10-18 06:29:10,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:29:11,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:29:11,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:29:11,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:29:11,310.310 INFO    ] time= 18/10/2026 06:29:11
[2026-10-18 06:29:11,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:29:11,367.367 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:29:11,514.514 INFO    ] No existing commands found in stream
[2026-10-18 06:29:16,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:29:16,539.539 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-18 06:29:18,950.950 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:29:18,953.953 INFO    ] Checking for system updates...
[2026-10-18 06:29:18,988.988 INFO    ] 200
[2026-10-18 06:29:18,991.991 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:29:19,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:29:19,051.051 INFO    ] No update needed
[2026-10-18 06:29:19,053.053 INFO    ] Checking for camera pi updates...
[2026-10-18 06:29:19,088.088 INFO    ] 200
[2026-10-18 06:29:19,090.090 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:29:19,130.130 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:29:29,142.142 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:29:29,177.177 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:29:29,187.187 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:29:29,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:29:29,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:29:29,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:29:31,239.239 INFO    ] ================================================
[2026-10-18 06:29:31,254.254 INFO    ] Launching Daemon at Sun Oct 18 06:29:31 IST 2026
[2026-10-18 06:29:31,266.266 INFO    ] ================================================
[2026-10-18 06:29:31,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:29:31
[2026-10-18 06:29:32,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:29:32,799.799 INFO    ] Initializing speech engine...
[2026-10-18 06:29:32,808.808 INFO    ] 2026-10-18 06:29:32
[2026-10-18 06:29:33,072.072 INFO    ] 2026-10-18 06:29:33
[2026-10-18 06:29:33,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:29:33,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:29:33,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:29:33,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:29:33,559.559 INFO    ] time= 18/10/2026 06:29:33
[2026-10-18 06:29:33,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:29:33,623.623 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:29:33,768.768 INFO    ] No existing commands found in stream
[2026-10-18 06:29:38,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:29:38,794.794 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-18 06:29:42,202.202 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:29:42,204.204 INFO    ] Checking for system updates...
[2026-10-18 06:29:42,244.244 INFO    ] 200
[2026-10-18 06:29:42,247.247 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:29:42,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:29:42,302.302 INFO    ] No update needed
[2026-10-18 06:29:42,304.304 INFO    ] Checking for camera pi updates...
[2026-10-18 06:29:42,346.346 INFO    ] 200
[2026-10-18 06:29:42,348.348 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:29:42,388.388 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:29:52,403.403 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:29:52,438.438 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:29:52,448.448 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:29:52,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:29:52,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:29:52,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:29:54,501.501 INFO    ] ================================================
[2026-10-18 06:29:54,516.516 INFO    ] Launching Daemon at Sun Oct 18 06:29:54 IST 2026
[2026-10-18 06:29:54,528.528 INFO    ] ================================================
[2026-10-18 06:29:55,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:29:55
[2026-10-18 06:29:55,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:29:56,087.087 INFO    ] Initializing speech engine...
[2026-10-18 06:29:56,107.107 INFO    ] 2026-10-18 06:29:56
[2026-10-18 06:29:56,370.370 INFO    ] 2026-10-18 06:29:56
[2026-10-18 06:29:56,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:29:56,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:29:56,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:29:56,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:29:56,896.896 INFO    ] time= 18/10/2026 06:29:56
[2026-10-18 06:29:56,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:29:56,955.955 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:29:57,107.107 INFO    ] No existing commands found in stream
[2026-10-18 06:30:02,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:30:02,160.160 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-18 06:30:08,031.031 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:30:08,034.034 INFO    ] Checking for system updates...
[2026-10-18 06:30:08,077.077 INFO    ] 200
[2026-10-18 06:30:08,080.080 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:30:08,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:30:08,143.143 INFO    ] No update needed
[2026-10-18 06:30:08,145.145 INFO    ] Checking for camera pi updates...
[2026-10-18 06:30:08,181.181 INFO    ] 200
[2026-10-18 06:30:08,184.184 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:30:08,233.233 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:30:18,250.250 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:30:18,291.291 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:30:18,302.302 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:30:18,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:30:18,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:30:18,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:30:20,359.359 INFO    ] ================================================
[2026-10-18 06:30:20,376.376 INFO    ] Launching Daemon at Sun Oct 18 06:30:20 IST 2026
[2026-10-18 06:30:20,387.387 INFO    ] ================================================
[2026-10-18 06:30:20,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:30:20
[2026-10-18 06:30:21,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:30:21,850.850 INFO    ] Initializing speech engine...
[2026-10-18 06:30:21,859.859 INFO    ] 2026-10-18 06:30:21
[2026-10-18 06:30:22,120.120 INFO    ] 2026-10-18 06:30:22
[2026-10-18 06:30:22,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:30:22,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:30:22,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:30:22,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:30:22,662.662 INFO    ] time= 18/10/2026 06:30:22
[2026-10-18 06:30:22,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:30:22,685.685 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:30:22,818.818 INFO    ] No existing commands found in stream
[2026-10-18 06:30:27,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:30:27,844.844 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-18 06:30:28,932.932 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:30:28,935.935 INFO    ] Checking for system updates...
[2026-10-18 06:30:28,970.970 INFO    ] 200
[2026-10-18 06:30:28,973.973 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:30:29,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:30:29,027.027 INFO    ] No update needed
[2026-10-18 06:30:29,030.030 INFO    ] Checking for camera pi updates...
[2026-10-18 06:30:29,069.069 INFO    ] 200
[2026-10-18 06:30:29,071.071 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:30:29,112.112 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:30:39,127.127 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:30:39,162.162 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:30:39,172.172 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:30:39,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:30:39,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:30:39,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:30:41,226.226 INFO    ] ================================================
[2026-10-18 06:30:41,242.242 INFO    ] Launching Daemon at Sun Oct 18 06:30:41 IST 2026
[2026-10-18 06:30:41,253.253 INFO    ] ================================================
[2026-10-18 06:30:41,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:30:41
[2026-10-18 06:30:42,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:30:42,666.666 INFO    ] Initializing speech engine...
[2026-10-18 06:30:42,681.681 INFO    ] 2026-10-18 06:30:42
[2026-10-18 06:30:42,942.942 INFO    ] 2026-10-18 06:30:42
[2026-10-18 06:30:42,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:30:43,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:30:43,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:30:43,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:30:43,421.421 INFO    ] time= 18/10/2026 06:30:43
[2026-10-18 06:30:43,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:30:43,532.532 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:30:43,683.683 INFO    ] No existing commands found in stream
[2026-10-18 06:30:48,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:30:48,707.707 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-18 06:30:52,602.602 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 06:30:52,604.604 INFO    ] Checking for system updates...
[2026-10-18 06:30:52,640.640 INFO    ] 200
[2026-10-18 06:30:52,643.643 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:30:52,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:30:52,698.698 INFO    ] No update needed
[2026-10-18 06:30:52,700.700 INFO    ] Checking for camera pi updates...
[2026-10-18 06:30:52,737.737 INFO    ] 200
[2026-10-18 06:30:52,740.740 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:30:52,780.780 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:31:02,793.793 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:31:02,833.833 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:31:02,845.845 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:31:02,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:31:02,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:31:02,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:31:04,901.901 INFO    ] ================================================
[2026-10-18 06:31:04,917.917 INFO    ] Launching Daemon at Sun Oct 18 06:31:04 IST 2026
[2026-10-18 06:31:04,929.929 INFO    ] ================================================
[2026-10-18 06:31:05,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:31:05
[2026-10-18 06:31:06,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:31:06,414.414 INFO    ] Initializing speech engine...
[2026-10-18 06:31:06,426.426 INFO    ] 2026-10-18 06:31:06
[2026-10-18 06:31:06,730.730 INFO    ] 2026-10-18 06:31:06
[2026-10-18 06:31:06,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:31:07,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:31:07,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:31:07,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:31:07,237.237 INFO    ] time= 18/10/2026 06:31:07
[2026-10-18 06:31:07,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:31:07,289.289 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:31:07,407.407 INFO    ] No existing commands found in stream
[2026-10-18 06:31:12,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:31:12,441.441 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-18 06:31:15,820.820 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:31:15,822.822 INFO    ] Checking for system updates...
[2026-10-18 06:31:15,858.858 INFO    ] 200
[2026-10-18 06:31:15,860.860 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:31:15,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:31:15,914.914 INFO    ] No update needed
[2026-10-18 06:31:15,917.917 INFO    ] Checking for camera pi updates...
[2026-10-18 06:31:15,950.950 INFO    ] 200
[2026-10-18 06:31:15,953.953 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:31:15,993.993 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:31:26,008.008 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:31:26,042.042 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:31:26,052.052 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:31:26,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:31:26,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:31:26,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:31:28,107.107 INFO    ] ================================================
[2026-10-18 06:31:28,123.123 INFO    ] Launching Daemon at Sun Oct 18 06:31:28 IST 2026
[2026-10-18 06:31:28,134.134 INFO    ] ================================================
[2026-10-18 06:31:28,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:31:28
[2026-10-18 06:31:29,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:31:29,823.823 INFO    ] Initializing speech engine...
[2026-10-18 06:31:29,830.830 INFO    ] 2026-10-18 06:31:29
[2026-10-18 06:31:30,142.142 INFO    ] 2026-10-18 06:31:30
[2026-10-18 06:31:30,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:31:30,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:31:30,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:31:30,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:31:30,651.651 INFO    ] time= 18/10/2026 06:31:30
[2026-10-18 06:31:30,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:31:30,692.692 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:31:30,826.826 INFO    ] No existing commands found in stream
[2026-10-18 06:31:35,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:31:35,855.855 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-18 06:31:37,147.147 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 06:31:37,150.150 INFO    ] Checking for system updates...
[2026-10-18 06:31:37,192.192 INFO    ] 200
[2026-10-18 06:31:37,195.195 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:31:37,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:31:37,261.261 INFO    ] No update needed
[2026-10-18 06:31:37,264.264 INFO    ] Checking for camera pi updates...
[2026-10-18 06:31:37,301.301 INFO    ] 200
[2026-10-18 06:31:37,303.303 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:31:37,343.343 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:31:47,356.356 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:31:47,392.392 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:31:47,402.402 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:31:47,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:31:47,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:31:47,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:31:49,455.455 INFO    ] ================================================
[2026-10-18 06:31:49,471.471 INFO    ] Launching Daemon at Sun Oct 18 06:31:49 IST 2026
[2026-10-18 06:31:49,482.482 INFO    ] ================================================
[2026-10-18 06:31:50,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:31:50
[2026-10-18 06:31:50,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:31:50,903.903 INFO    ] Initializing speech engine...
[2026-10-18 06:31:50,912.912 INFO    ] 2026-10-18 06:31:50
[2026-10-18 06:31:51,160.160 INFO    ] 2026-10-18 06:31:51
[2026-10-18 06:31:51,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:31:51,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:31:51,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:31:51,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:31:51,655.655 INFO    ] time= 18/10/2026 06:31:51
[2026-10-18 06:31:51,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:31:51,730.730 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:31:51,878.878 INFO    ] No existing commands found in stream
[2026-10-18 06:31:56,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:31:56,900.900 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-18 06:31:59,597.597 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:31:59,599.599 INFO    ] Checking for system updates...
[2026-10-18 06:31:59,639.639 INFO    ] 200
[2026-10-18 06:31:59,642.642 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:31:59,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:31:59,698.698 INFO    ] No update needed
[2026-10-18 06:31:59,701.701 INFO    ] Checking for camera pi updates...
[2026-10-18 06:31:59,733.733 INFO    ] 200
[2026-10-18 06:31:59,736.736 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:31:59,776.776 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:32:09,789.789 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:32:09,824.824 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:32:09,834.834 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:32:09,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:32:09,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:32:09,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:32:11,887.887 INFO    ] ================================================
[2026-10-18 06:32:11,903.903 INFO    ] Launching Daemon at Sun Oct 18 06:32:11 IST 2026
[2026-10-18 06:32:11,914.914 INFO    ] ================================================
[2026-10-18 06:32:12,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:32:12
[2026-10-18 06:32:13,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:32:13,380.380 INFO    ] Initializing speech engine...
[2026-10-18 06:32:13,388.388 INFO    ] 2026-10-18 06:32:13
[2026-10-18 06:32:13,651.651 INFO    ] 2026-10-18 06:32:13
[2026-10-18 06:32:13,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:32:13,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:32:13,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:32:14,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:32:14,139.139 INFO    ] time= 18/10/2026 06:32:14
[2026-10-18 06:32:14,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:32:14,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:32:14,349.349 INFO    ] No existing commands found in stream
[2026-10-18 06:32:19,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:32:19,385.385 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-18 06:32:23,432.432 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:32:23,435.435 INFO    ] Checking for system updates...
[2026-10-18 06:32:23,471.471 INFO    ] 200
[2026-10-18 06:32:23,473.473 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:32:23,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:32:23,533.533 INFO    ] No update needed
[2026-10-18 06:32:23,535.535 INFO    ] Checking for camera pi updates...
[2026-10-18 06:32:23,569.569 INFO    ] 200
[2026-10-18 06:32:23,572.572 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:32:23,618.618 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:32:33,631.631 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:32:33,667.667 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:32:33,677.677 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:32:33,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:32:33,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:32:33,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:32:35,732.732 INFO    ] ================================================
[2026-10-18 06:32:35,749.749 INFO    ] Launching Daemon at Sun Oct 18 06:32:35 IST 2026
[2026-10-18 06:32:35,760.760 INFO    ] ================================================
[2026-10-18 06:32:36,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:32:36
[2026-10-18 06:32:36,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:32:37,294.294 INFO    ] Initializing speech engine...
[2026-10-18 06:32:37,306.306 INFO    ] 2026-10-18 06:32:37
[2026-10-18 06:32:37,622.622 INFO    ] 2026-10-18 06:32:37
[2026-10-18 06:32:37,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:32:37,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:32:37,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:32:38,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:32:38,129.129 INFO    ] time= 18/10/2026 06:32:38
[2026-10-18 06:32:38,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:32:38,177.177 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:32:38,295.295 INFO    ] No existing commands found in stream
[2026-10-18 06:32:43,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:32:43,323.323 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-18 06:32:46,518.518 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 06:32:46,521.521 INFO    ] Checking for system updates...
[2026-10-18 06:32:46,559.559 INFO    ] 200
[2026-10-18 06:32:46,562.562 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:32:46,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:32:46,619.619 INFO    ] No update needed
[2026-10-18 06:32:46,622.622 INFO    ] Checking for camera pi updates...
[2026-10-18 06:32:46,663.663 INFO    ] 200
[2026-10-18 06:32:46,666.666 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:32:46,708.708 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:32:56,724.724 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2e150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:32:56,766.766 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:32:56,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:32:56,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:32:56,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:32:56,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:32:58,836.836 INFO    ] ================================================
[2026-10-18 06:32:58,852.852 INFO    ] Launching Daemon at Sun Oct 18 06:32:58 IST 2026
[2026-10-18 06:32:58,863.863 INFO    ] ================================================
[2026-10-18 06:32:59,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:32:59
[2026-10-18 06:33:00,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:33:00,322.322 INFO    ] Initializing speech engine...
[2026-10-18 06:33:00,329.329 INFO    ] 2026-10-18 06:33:00
[2026-10-18 06:33:00,590.590 INFO    ] 2026-10-18 06:33:00
[2026-10-18 06:33:00,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:33:00,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:33:00,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:33:01,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:33:01,068.068 INFO    ] time= 18/10/2026 06:33:01
[2026-10-18 06:33:01,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:33:01,140.140 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:33:01,248.248 INFO    ] No existing commands found in stream
[2026-10-18 06:33:06,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:33:06,272.272 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-18 06:33:07,344.344 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 06:33:07,347.347 INFO    ] Checking for system updates...
[2026-10-18 06:33:07,386.386 INFO    ] 200
[2026-10-18 06:33:07,389.389 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:33:07,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:33:07,451.451 INFO    ] No update needed
[2026-10-18 06:33:07,453.453 INFO    ] Checking for camera pi updates...
[2026-10-18 06:33:07,486.486 INFO    ] 200
[2026-10-18 06:33:07,489.489 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:33:07,530.530 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:33:17,545.545 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:33:17,580.580 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:33:17,589.589 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:33:17,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:33:17,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:33:17,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:33:19,641.641 INFO    ] ================================================
[2026-10-18 06:33:19,658.658 INFO    ] Launching Daemon at Sun Oct 18 06:33:19 IST 2026
[2026-10-18 06:33:19,670.670 INFO    ] ================================================
[2026-10-18 06:33:20,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:33:20
[2026-10-18 06:33:20,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:33:21,137.137 INFO    ] Initializing speech engine...
[2026-10-18 06:33:21,144.144 INFO    ] 2026-10-18 06:33:21
[2026-10-18 06:33:21,404.404 INFO    ] 2026-10-18 06:33:21
[2026-10-18 06:33:21,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:33:21,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:33:21,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:33:21,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:33:21,888.888 INFO    ] time= 18/10/2026 06:33:21
[2026-10-18 06:33:21,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:33:21,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:33:22,119.119 INFO    ] No existing commands found in stream
[2026-10-18 06:33:27,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:33:27,145.145 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-18 06:33:29,218.218 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 06:33:29,221.221 INFO    ] Checking for system updates...
[2026-10-18 06:33:29,257.257 INFO    ] 200
[2026-10-18 06:33:29,260.260 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:33:29,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:33:29,315.315 INFO    ] No update needed
[2026-10-18 06:33:29,318.318 INFO    ] Checking for camera pi updates...
[2026-10-18 06:33:29,351.351 INFO    ] 200
[2026-10-18 06:33:29,354.354 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:33:29,400.400 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:33:39,415.415 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:33:39,451.451 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:33:39,461.461 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:33:39,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:33:39,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:33:39,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:33:41,518.518 INFO    ] ================================================
[2026-10-18 06:33:41,534.534 INFO    ] Launching Daemon at Sun Oct 18 06:33:41 IST 2026
[2026-10-18 06:33:41,544.544 INFO    ] ================================================
[2026-10-18 06:33:42,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:33:42
[2026-10-18 06:33:42,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:33:42,994.994 INFO    ] Initializing speech engine...
[2026-10-18 06:33:43,002.002 INFO    ] 2026-10-18 06:33:42
[2026-10-18 06:33:43,255.255 INFO    ] 2026-10-18 06:33:43
[2026-10-18 06:33:43,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:33:43,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:33:43,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:33:43,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:33:43,742.742 INFO    ] time= 18/10/2026 06:33:43
[2026-10-18 06:33:43,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:33:43,832.832 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:33:43,986.986 INFO    ] No existing commands found in stream
[2026-10-18 06:33:48,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:33:49,001.001 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-18 06:33:52,467.467 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:33:52,470.470 INFO    ] Checking for system updates...
[2026-10-18 06:33:52,512.512 INFO    ] 200
[2026-10-18 06:33:52,515.515 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:33:52,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:33:52,579.579 INFO    ] No update needed
[2026-10-18 06:33:52,582.582 INFO    ] Checking for camera pi updates...
[2026-10-18 06:33:52,617.617 INFO    ] 200
[2026-10-18 06:33:52,620.620 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:33:52,666.666 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:34:02,684.684 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:34:02,732.732 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:34:02,745.745 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:34:02,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:34:02,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:34:02,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:34:04,813.813 INFO    ] ================================================
[2026-10-18 06:34:04,828.828 INFO    ] Launching Daemon at Sun Oct 18 06:34:04 IST 2026
[2026-10-18 06:34:04,839.839 INFO    ] ================================================
[2026-10-18 06:34:05,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:34:05
[2026-10-18 06:34:05,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:34:06,266.266 INFO    ] Initializing speech engine...
[2026-10-18 06:34:06,275.275 INFO    ] 2026-10-18 06:34:06
[2026-10-18 06:34:06,525.525 INFO    ] 2026-10-18 06:34:06
[2026-10-18 06:34:06,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:34:06,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:34:06,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:34:06,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:34:07,042.042 INFO    ] time= 18/10/2026 06:34:06
[2026-10-18 06:34:07,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:34:07,103.103 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:34:07,232.232 INFO    ] No existing commands found in stream
[2026-10-18 06:34:12,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:34:12,263.263 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-18 06:34:14,968.968 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:34:14,971.971 INFO    ] Checking for system updates...
[2026-10-18 06:34:15,014.014 INFO    ] 200
[2026-10-18 06:34:15,017.017 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:34:15,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:34:15,072.072 INFO    ] No update needed
[2026-10-18 06:34:15,075.075 INFO    ] Checking for camera pi updates...
[2026-10-18 06:34:15,112.112 INFO    ] 200
[2026-10-18 06:34:15,115.115 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:34:15,160.160 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:34:25,175.175 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:34:25,210.210 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:34:25,219.219 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:34:25,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:34:25,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:34:25,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:34:27,274.274 INFO    ] ================================================
[2026-10-18 06:34:27,289.289 INFO    ] Launching Daemon at Sun Oct 18 06:34:27 IST 2026
[2026-10-18 06:34:27,300.300 INFO    ] ================================================
[2026-10-18 06:34:27,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:34:27
[2026-10-18 06:34:28,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:34:28,727.727 INFO    ] Initializing speech engine...
[2026-10-18 06:34:28,736.736 INFO    ] 2026-10-18 06:34:28
[2026-10-18 06:34:28,996.996 INFO    ] 2026-10-18 06:34:28
[2026-10-18 06:34:29,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:34:29,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:34:29,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:34:29,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:34:29,488.488 INFO    ] time= 18/10/2026 06:34:29
[2026-10-18 06:34:29,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:34:29,546.546 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:34:29,692.692 INFO    ] No existing commands found in stream
[2026-10-18 06:34:34,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:34:34,714.714 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-18 06:34:37,295.295 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:34:37,298.298 INFO    ] Checking for system updates...
[2026-10-18 06:34:37,354.354 INFO    ] 200
[2026-10-18 06:34:37,357.357 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:34:37,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:34:37,426.426 INFO    ] No update needed
[2026-10-18 06:34:37,428.428 INFO    ] Checking for camera pi updates...
[2026-10-18 06:34:37,462.462 INFO    ] 200
[2026-10-18 06:34:37,464.464 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:34:37,509.509 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:34:47,525.525 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:34:47,560.560 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:34:47,570.570 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:34:47,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:34:47,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:34:47,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:34:49,624.624 INFO    ] ================================================
[2026-10-18 06:34:49,640.640 INFO    ] Launching Daemon at Sun Oct 18 06:34:49 IST 2026
[2026-10-18 06:34:49,651.651 INFO    ] ================================================
[2026-10-18 06:34:50,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:34:50
[2026-10-18 06:34:50,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:34:51,205.205 INFO    ] Initializing speech engine...
[2026-10-18 06:34:51,224.224 INFO    ] 2026-10-18 06:34:51
[2026-10-18 06:34:51,477.477 INFO    ] 2026-10-18 06:34:51
[2026-10-18 06:34:51,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:34:51,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:34:51,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:34:51,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:34:51,990.990 INFO    ] time= 18/10/2026 06:34:51
[2026-10-18 06:34:52,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:34:52,056.056 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:34:52,189.189 INFO    ] No existing commands found in stream
[2026-10-18 06:34:57,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:34:57,216.216 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-18 06:34:59,810.810 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:34:59,813.813 INFO    ] Checking for system updates...
[2026-10-18 06:34:59,848.848 INFO    ] 200
[2026-10-18 06:34:59,851.851 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:34:59,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:34:59,908.908 INFO    ] No update needed
[2026-10-18 06:34:59,911.911 INFO    ] Checking for camera pi updates...
[2026-10-18 06:34:59,947.947 INFO    ] 200
[2026-10-18 06:34:59,949.949 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:34:59,989.989 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:35:10,004.004 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:35:10,040.040 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:35:10,050.050 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:35:10,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:35:10,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:35:10,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:35:12,103.103 INFO    ] ================================================
[2026-10-18 06:35:12,118.118 INFO    ] Launching Daemon at Sun Oct 18 06:35:12 IST 2026
[2026-10-18 06:35:12,129.129 INFO    ] ================================================
[2026-10-18 06:35:12,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:35:12
[2026-10-18 06:35:13,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:35:13,592.592 INFO    ] Initializing speech engine...
[2026-10-18 06:35:13,601.601 INFO    ] 2026-10-18 06:35:13
[2026-10-18 06:35:13,863.863 INFO    ] 2026-10-18 06:35:13
[2026-10-18 06:35:13,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:35:14,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:35:14,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:35:14,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:35:14,405.405 INFO    ] time= 18/10/2026 06:35:14
[2026-10-18 06:35:14,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:35:14,449.449 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:35:14,589.589 INFO    ] No existing commands found in stream
[2026-10-18 06:35:19,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:35:19,617.617 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-18 06:35:20,465.465 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:35:20,468.468 INFO    ] Checking for system updates...
[2026-10-18 06:35:20,504.504 INFO    ] 200
[2026-10-18 06:35:20,507.507 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:35:20,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:35:20,562.562 INFO    ] No update needed
[2026-10-18 06:35:20,564.564 INFO    ] Checking for camera pi updates...
[2026-10-18 06:35:20,598.598 INFO    ] 200
[2026-10-18 06:35:20,600.600 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:35:20,645.645 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:35:30,658.658 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:35:30,693.693 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:35:30,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:35:30,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:35:30,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:35:30,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:35:32,756.756 INFO    ] ================================================
[2026-10-18 06:35:32,771.771 INFO    ] Launching Daemon at Sun Oct 18 06:35:32 IST 2026
[2026-10-18 06:35:32,782.782 INFO    ] ================================================
[2026-10-18 06:35:33,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:35:33
[2026-10-18 06:35:33,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:35:34,226.226 INFO    ] Initializing speech engine...
[2026-10-18 06:35:34,250.250 INFO    ] 2026-10-18 06:35:34
[2026-10-18 06:35:34,537.537 INFO    ] 2026-10-18 06:35:34
[2026-10-18 06:35:34,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:35:34,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:35:34,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:35:34,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:35:34,959.959 INFO    ] time= 18/10/2026 06:35:34
[2026-10-18 06:35:34,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:35:34,972.972 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:35:35,121.121 INFO    ] No existing commands found in stream
[2026-10-18 06:35:40,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:35:40,149.149 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-18 06:35:44,512.512 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:35:44,514.514 INFO    ] Checking for system updates...
[2026-10-18 06:35:44,550.550 INFO    ] 200
[2026-10-18 06:35:44,552.552 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:35:44,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:35:44,608.608 INFO    ] No update needed
[2026-10-18 06:35:44,610.610 INFO    ] Checking for camera pi updates...
[2026-10-18 06:35:44,643.643 INFO    ] 200
[2026-10-18 06:35:44,646.646 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:35:44,685.685 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:35:54,700.700 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:35:54,735.735 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:35:54,745.745 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:35:54,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:35:54,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:35:54,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:35:56,797.797 INFO    ] ================================================
[2026-10-18 06:35:56,812.812 INFO    ] Launching Daemon at Sun Oct 18 06:35:56 IST 2026
[2026-10-18 06:35:56,823.823 INFO    ] ================================================
[2026-10-18 06:35:57,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:35:57
[2026-10-18 06:35:58,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:35:58,455.455 INFO    ] Initializing speech engine...
[2026-10-18 06:35:58,469.469 INFO    ] 2026-10-18 06:35:58
[2026-10-18 06:35:58,755.755 INFO    ] 2026-10-18 06:35:58
[2026-10-18 06:35:58,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:35:59,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:35:59,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:35:59,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:35:59,308.308 INFO    ] time= 18/10/2026 06:35:59
[2026-10-18 06:35:59,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:35:59,333.333 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:35:59,469.469 INFO    ] No existing commands found in stream
[2026-10-18 06:36:04,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:36:04,497.497 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-18 06:36:08,655.655 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:36:08,658.658 INFO    ] Checking for system updates...
[2026-10-18 06:36:08,694.694 INFO    ] 200
[2026-10-18 06:36:08,697.697 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:36:08,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:36:08,753.753 INFO    ] No update needed
[2026-10-18 06:36:08,756.756 INFO    ] Checking for camera pi updates...
[2026-10-18 06:36:08,792.792 INFO    ] 200
[2026-10-18 06:36:08,795.795 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:36:08,839.839 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:36:18,854.854 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:36:18,889.889 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:36:18,899.899 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:36:18,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:36:18,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:36:18,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:36:20,951.951 INFO    ] ================================================
[2026-10-18 06:36:20,966.966 INFO    ] Launching Daemon at Sun Oct 18 06:36:20 IST 2026
[2026-10-18 06:36:20,977.977 INFO    ] ================================================
[2026-10-18 06:36:21,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:36:21
[2026-10-18 06:36:22,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:36:22,460.460 INFO    ] Initializing speech engine...
[2026-10-18 06:36:22,469.469 INFO    ] 2026-10-18 06:36:22
[2026-10-18 06:36:22,744.744 INFO    ] 2026-10-18 06:36:22
[2026-10-18 06:36:22,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:36:23,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:36:23,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:36:23,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:36:23,242.242 INFO    ] time= 18/10/2026 06:36:23
[2026-10-18 06:36:23,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:36:23,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:36:23,453.453 INFO    ] No existing commands found in stream
[2026-10-18 06:36:28,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:36:28,478.478 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-18 06:36:29,954.954 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:36:29,957.957 INFO    ] Checking for system updates...
[2026-10-18 06:36:29,993.993 INFO    ] 200
[2026-10-18 06:36:29,996.996 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:36:30,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:36:30,054.054 INFO    ] No update needed
[2026-10-18 06:36:30,057.057 INFO    ] Checking for camera pi updates...
[2026-10-18 06:36:30,090.090 INFO    ] 200
[2026-10-18 06:36:30,093.093 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:36:30,138.138 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:36:40,151.151 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:36:40,187.187 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:36:40,197.197 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:36:40,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:36:40,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:36:40,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:36:42,250.250 INFO    ] ================================================
[2026-10-18 06:36:42,265.265 INFO    ] Launching Daemon at Sun Oct 18 06:36:42 IST 2026
[2026-10-18 06:36:42,275.275 INFO    ] ================================================
[2026-10-18 06:36:42,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:36:42
[2026-10-18 06:36:43,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:36:43,697.697 INFO    ] Initializing speech engine...
[2026-10-18 06:36:43,706.706 INFO    ] 2026-10-18 06:36:43
[2026-10-18 06:36:43,965.965 INFO    ] 2026-10-18 06:36:43
[2026-10-18 06:36:43,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:36:44,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:36:44,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:36:44,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:36:44,437.437 INFO    ] time= 18/10/2026 06:36:44
[2026-10-18 06:36:44,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:36:44,513.513 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:36:44,659.659 INFO    ] No existing commands found in stream
[2026-10-18 06:36:49,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:36:49,677.677 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-18 06:36:51,392.392 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:36:51,395.395 INFO    ] Checking for system updates...
[2026-10-18 06:36:51,431.431 INFO    ] 200
[2026-10-18 06:36:51,434.434 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:36:51,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:36:51,496.496 INFO    ] No update needed
[2026-10-18 06:36:51,499.499 INFO    ] Checking for camera pi updates...
[2026-10-18 06:36:51,533.533 INFO    ] 200
[2026-10-18 06:36:51,536.536 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:36:51,578.578 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:37:01,597.597 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:37:01,664.664 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:37:01,682.682 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:37:01,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:37:01,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:37:01,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:37:03,747.747 INFO    ] ================================================
[2026-10-18 06:37:03,762.762 INFO    ] Launching Daemon at Sun Oct 18 06:37:03 IST 2026
[2026-10-18 06:37:03,773.773 INFO    ] ================================================
[2026-10-18 06:37:04,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:37:04
[2026-10-18 06:37:05,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:37:05,384.384 INFO    ] Initializing speech engine...
[2026-10-18 06:37:05,398.398 INFO    ] 2026-10-18 06:37:05
[2026-10-18 06:37:05,704.704 INFO    ] 2026-10-18 06:37:05
[2026-10-18 06:37:05,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:37:06,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:37:06,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:37:06,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:37:06,224.224 INFO    ] time= 18/10/2026 06:37:06
[2026-10-18 06:37:06,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:37:06,259.259 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:37:06,364.364 INFO    ] No existing commands found in stream
[2026-10-18 06:37:11,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:37:11,402.402 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-18 06:37:14,498.498 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:37:14,500.500 INFO    ] Checking for system updates...
[2026-10-18 06:37:14,540.540 INFO    ] 200
[2026-10-18 06:37:14,543.543 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:37:14,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:37:14,600.600 INFO    ] No update needed
[2026-10-18 06:37:14,603.603 INFO    ] Checking for camera pi updates...
[2026-10-18 06:37:14,641.641 INFO    ] 200
[2026-10-18 06:37:14,644.644 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:37:14,689.689 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:37:24,703.703 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:37:24,739.739 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:37:24,749.749 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:37:24,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:37:24,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:37:24,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:37:26,801.801 INFO    ] ================================================
[2026-10-18 06:37:26,816.816 INFO    ] Launching Daemon at Sun Oct 18 06:37:26 IST 2026
[2026-10-18 06:37:26,827.827 INFO    ] ================================================
[2026-10-18 06:37:27,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:37:27
[2026-10-18 06:37:28,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:37:28,278.278 INFO    ] Initializing speech engine...
[2026-10-18 06:37:28,283.283 INFO    ] 2026-10-18 06:37:28
[2026-10-18 06:37:28,531.531 INFO    ] 2026-10-18 06:37:28
[2026-10-18 06:37:28,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:37:28,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:37:28,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:37:28,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:37:29,028.028 INFO    ] time= 18/10/2026 06:37:28
[2026-10-18 06:37:29,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:37:29,094.094 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:37:29,237.237 INFO    ] No existing commands found in stream
[2026-10-18 06:37:34,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:37:34,255.255 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-18 06:37:34,990.990 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:37:34,992.992 INFO    ] Checking for system updates...
[2026-10-18 06:37:35,028.028 INFO    ] 200
[2026-10-18 06:37:35,031.031 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:37:35,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:37:35,092.092 INFO    ] No update needed
[2026-10-18 06:37:35,094.094 INFO    ] Checking for camera pi updates...
[2026-10-18 06:37:35,128.128 INFO    ] 200
[2026-10-18 06:37:35,130.130 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:37:35,174.174 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:37:45,190.190 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:37:45,226.226 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:37:45,235.235 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:37:45,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:37:45,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:37:45,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:37:47,288.288 INFO    ] ================================================
[2026-10-18 06:37:47,303.303 INFO    ] Launching Daemon at Sun Oct 18 06:37:47 IST 2026
[2026-10-18 06:37:47,314.314 INFO    ] ================================================
[2026-10-18 06:37:47,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:37:47
[2026-10-18 06:37:48,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:37:48,926.926 INFO    ] Initializing speech engine...
[2026-10-18 06:37:48,938.938 INFO    ] 2026-10-18 06:37:48
[2026-10-18 06:37:49,253.253 INFO    ] 2026-10-18 06:37:49
[2026-10-18 06:37:49,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:37:49,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:37:49,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:37:49,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:37:49,756.756 INFO    ] time= 18/10/2026 06:37:49
[2026-10-18 06:37:49,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:37:49,802.802 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:37:49,925.925 INFO    ] No existing commands found in stream
[2026-10-18 06:37:54,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:37:54,959.959 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-18 06:37:55,605.605 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 06:37:55,608.608 INFO    ] Checking for system updates...
[2026-10-18 06:37:55,646.646 INFO    ] 200
[2026-10-18 06:37:55,649.649 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:37:55,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:37:55,706.706 INFO    ] No update needed
[2026-10-18 06:37:55,708.708 INFO    ] Checking for camera pi updates...
[2026-10-18 06:37:55,742.742 INFO    ] 200
[2026-10-18 06:37:55,744.744 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:37:55,788.788 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:38:05,803.803 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:38:05,839.839 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:38:05,849.849 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:38:05,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:38:05,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:38:05,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:38:07,901.901 INFO    ] ================================================
[2026-10-18 06:38:07,917.917 INFO    ] Launching Daemon at Sun Oct 18 06:38:07 IST 2026
[2026-10-18 06:38:07,927.927 INFO    ] ================================================
[2026-10-18 06:38:08,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:38:08
[2026-10-18 06:38:09,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:38:09,354.354 INFO    ] Initializing speech engine...
[2026-10-18 06:38:09,363.363 INFO    ] 2026-10-18 06:38:09
[2026-10-18 06:38:09,608.608 INFO    ] 2026-10-18 06:38:09
[2026-10-18 06:38:09,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:38:09,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:38:09,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:38:10,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:38:10,150.150 INFO    ] time= 18/10/2026 06:38:10
[2026-10-18 06:38:10,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:38:10,185.185 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:38:10,315.315 INFO    ] No existing commands found in stream
[2026-10-18 06:38:15,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:38:15,330.330 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-18 06:38:16,613.613 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:38:16,616.616 INFO    ] Checking for system updates...
[2026-10-18 06:38:16,652.652 INFO    ] 200
[2026-10-18 06:38:16,654.654 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:38:16,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:38:16,710.710 INFO    ] No update needed
[2026-10-18 06:38:16,712.712 INFO    ] Checking for camera pi updates...
[2026-10-18 06:38:16,745.745 INFO    ] 200
[2026-10-18 06:38:16,748.748 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:38:16,796.796 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:38:26,812.812 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:38:26,847.847 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:38:26,856.856 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:38:26,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:38:26,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:38:26,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:38:28,910.910 INFO    ] ================================================
[2026-10-18 06:38:28,924.924 INFO    ] Launching Daemon at Sun Oct 18 06:38:28 IST 2026
[2026-10-18 06:38:28,935.935 INFO    ] ================================================
[2026-10-18 06:38:29,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:38:29
[2026-10-18 06:38:30,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:38:30,364.364 INFO    ] Initializing speech engine...
[2026-10-18 06:38:30,370.370 INFO    ] 2026-10-18 06:38:30
[2026-10-18 06:38:30,614.614 INFO    ] 2026-10-18 06:38:30
[2026-10-18 06:38:30,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:38:30,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:38:30,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:38:31,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:38:31,170.170 INFO    ] time= 18/10/2026 06:38:31
[2026-10-18 06:38:31,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:38:31,194.194 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:38:31,339.339 INFO    ] No existing commands found in stream
[2026-10-18 06:38:36,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:38:36,374.374 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-18 06:38:38,139.139 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:38:38,149.149 INFO    ] Checking for system updates...
[2026-10-18 06:38:38,196.196 INFO    ] 200
[2026-10-18 06:38:38,199.199 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:38:38,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:38:38,259.259 INFO    ] No update needed
[2026-10-18 06:38:38,261.261 INFO    ] Checking for camera pi updates...
[2026-10-18 06:38:38,295.295 INFO    ] 200
[2026-10-18 06:38:38,298.298 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:38:38,343.343 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:38:48,360.360 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:38:48,402.402 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:38:48,416.416 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:38:48,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:38:48,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:38:48,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:38:50,479.479 INFO    ] ================================================
[2026-10-18 06:38:50,494.494 INFO    ] Launching Daemon at Sun Oct 18 06:38:50 IST 2026
[2026-10-18 06:38:50,505.505 INFO    ] ================================================
[2026-10-18 06:38:51,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:38:51
[2026-10-18 06:38:51,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:38:51,935.935 INFO    ] Initializing speech engine...
[2026-10-18 06:38:51,941.941 INFO    ] 2026-10-18 06:38:51
[2026-10-18 06:38:52,217.217 INFO    ] 2026-10-18 06:38:52
[2026-10-18 06:38:52,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:38:52,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:38:52,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:38:52,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:38:52,721.721 INFO    ] time= 18/10/2026 06:38:52
[2026-10-18 06:38:52,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:38:52,791.791 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:38:52,942.942 INFO    ] No existing commands found in stream
[2026-10-18 06:38:57,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:38:57,960.960 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-18 06:39:01,163.163 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:39:01,166.166 INFO    ] Checking for system updates...
[2026-10-18 06:39:01,203.203 INFO    ] 200
[2026-10-18 06:39:01,205.205 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:39:01,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:39:01,268.268 INFO    ] No update needed
[2026-10-18 06:39:01,271.271 INFO    ] Checking for camera pi updates...
[2026-10-18 06:39:01,309.309 INFO    ] 200
[2026-10-18 06:39:01,312.312 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:39:01,407.407 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:39:11,447.447 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:39:11,486.486 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:39:11,498.498 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:39:11,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:39:11,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:39:11,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:39:13,553.553 INFO    ] ================================================
[2026-10-18 06:39:13,569.569 INFO    ] Launching Daemon at Sun Oct 18 06:39:13 IST 2026
[2026-10-18 06:39:13,581.581 INFO    ] ================================================
[2026-10-18 06:39:14,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:39:14
[2026-10-18 06:39:14,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:39:15,004.004 INFO    ] Initializing speech engine...
[2026-10-18 06:39:15,016.016 INFO    ] 2026-10-18 06:39:15
[2026-10-18 06:39:15,267.267 INFO    ] 2026-10-18 06:39:15
[2026-10-18 06:39:15,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:39:15,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:39:15,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:39:15,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:39:15,779.779 INFO    ] time= 18/10/2026 06:39:15
[2026-10-18 06:39:15,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:39:15,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:39:15,983.983 INFO    ] No existing commands found in stream
[2026-10-18 06:39:21,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:39:21,008.008 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-18 06:39:24,423.423 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:39:24,426.426 INFO    ] Checking for system updates...
[2026-10-18 06:39:24,461.461 INFO    ] 200
[2026-10-18 06:39:24,463.463 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:39:24,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:39:24,524.524 INFO    ] No update needed
[2026-10-18 06:39:24,527.527 INFO    ] Checking for camera pi updates...
[2026-10-18 06:39:24,560.560 INFO    ] 200
[2026-10-18 06:39:24,563.563 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:39:24,608.608 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:39:34,622.622 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:39:34,662.662 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:39:34,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:39:34,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:39:34,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:39:34,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:39:36,730.730 INFO    ] ================================================
[2026-10-18 06:39:36,746.746 INFO    ] Launching Daemon at Sun Oct 18 06:39:36 IST 2026
[2026-10-18 06:39:36,757.757 INFO    ] ================================================
[2026-10-18 06:39:37,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:39:37
[2026-10-18 06:39:37,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:39:38,165.165 INFO    ] Initializing speech engine...
[2026-10-18 06:39:38,172.172 INFO    ] 2026-10-18 06:39:38
[2026-10-18 06:39:38,451.451 INFO    ] 2026-10-18 06:39:38
[2026-10-18 06:39:38,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:39:38,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:39:38,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:39:38,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:39:38,940.940 INFO    ] time= 18/10/2026 06:39:38
[2026-10-18 06:39:38,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:39:39,038.038 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:39:39,142.142 INFO    ] No existing commands found in stream
[2026-10-18 06:39:44,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:39:44,158.158 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-18 06:39:48,486.486 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:39:48,489.489 INFO    ] Checking for system updates...
[2026-10-18 06:39:48,525.525 INFO    ] 200
[2026-10-18 06:39:48,528.528 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:39:48,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:39:48,591.591 INFO    ] No update needed
[2026-10-18 06:39:48,594.594 INFO    ] Checking for camera pi updates...
[2026-10-18 06:39:48,628.628 INFO    ] 200
[2026-10-18 06:39:48,631.631 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:39:48,672.672 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:39:58,688.688 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:39:58,728.728 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:39:58,739.739 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:39:58,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:39:58,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:39:58,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:40:00,795.795 INFO    ] ================================================
[2026-10-18 06:40:00,811.811 INFO    ] Launching Daemon at Sun Oct 18 06:40:00 IST 2026
[2026-10-18 06:40:00,822.822 INFO    ] ================================================
[2026-10-18 06:40:01,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:40:01
[2026-10-18 06:40:02,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:40:02,818.818 INFO    ] Initializing speech engine...
[2026-10-18 06:40:02,821.821 INFO    ] 2026-10-18 06:40:02
[2026-10-18 06:40:03,145.145 INFO    ] 2026-10-18 06:40:03
[2026-10-18 06:40:03,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:40:03,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:40:03,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:40:03,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:40:03,655.655 INFO    ] time= 18/10/2026 06:40:03
[2026-10-18 06:40:03,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:40:03,738.738 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:40:03,867.867 INFO    ] No existing commands found in stream
[2026-10-18 06:40:08,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:40:08,900.900 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-18 06:40:11,467.467 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:40:11,469.469 INFO    ] Checking for system updates...
[2026-10-18 06:40:11,509.509 INFO    ] 200
[2026-10-18 06:40:11,511.511 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:40:11,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:40:11,567.567 INFO    ] No update needed
[2026-10-18 06:40:11,569.569 INFO    ] Checking for camera pi updates...
[2026-10-18 06:40:11,603.603 INFO    ] 200
[2026-10-18 06:40:11,606.606 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:40:11,647.647 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:40:21,661.661 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:40:21,696.696 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:40:21,705.705 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:40:21,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:40:21,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:40:21,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:40:23,758.758 INFO    ] ================================================
[2026-10-18 06:40:23,774.774 INFO    ] Launching Daemon at Sun Oct 18 06:40:23 IST 2026
[2026-10-18 06:40:23,786.786 INFO    ] ================================================
[2026-10-18 06:40:24,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:40:24
[2026-10-18 06:40:24,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:40:25,303.303 INFO    ] Initializing speech engine...
[2026-10-18 06:40:25,316.316 INFO    ] 2026-10-18 06:40:25
[2026-10-18 06:40:25,628.628 INFO    ] 2026-10-18 06:40:25
[2026-10-18 06:40:25,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:40:25,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:40:25,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:40:26,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:40:26,146.146 INFO    ] time= 18/10/2026 06:40:26
[2026-10-18 06:40:26,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:40:26,182.182 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:40:26,323.323 INFO    ] No existing commands found in stream
[2026-10-18 06:40:31,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:40:31,352.352 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-18 06:40:32,730.730 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:40:32,733.733 INFO    ] Checking for system updates...
[2026-10-18 06:40:32,770.770 INFO    ] 200
[2026-10-18 06:40:32,773.773 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:40:32,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:40:32,837.837 INFO    ] No update needed
[2026-10-18 06:40:32,841.841 INFO    ] Checking for camera pi updates...
[2026-10-18 06:40:32,876.876 INFO    ] 200
[2026-10-18 06:40:32,879.879 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:40:32,920.920 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:40:42,937.937 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:40:42,977.977 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:40:42,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:40:42,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:40:42,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:40:43,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:40:45,046.046 INFO    ] ================================================
[2026-10-18 06:40:45,063.063 INFO    ] Launching Daemon at Sun Oct 18 06:40:45 IST 2026
[2026-10-18 06:40:45,075.075 INFO    ] ================================================
[2026-10-18 06:40:45,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:40:45
[2026-10-18 06:40:46,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:40:46,724.724 INFO    ] Initializing speech engine...
[2026-10-18 06:40:46,739.739 INFO    ] 2026-10-18 06:40:46
[2026-10-18 06:40:47,011.011 INFO    ] 2026-10-18 06:40:47
[2026-10-18 06:40:47,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:40:47,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:40:47,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:40:47,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:40:47,577.577 INFO    ] time= 18/10/2026 06:40:47
[2026-10-18 06:40:47,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:40:47,603.603 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:40:47,744.744 INFO    ] No existing commands found in stream
[2026-10-18 06:40:52,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:40:52,774.774 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-18 06:40:55,407.407 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:40:55,410.410 INFO    ] Checking for system updates...
[2026-10-18 06:40:55,446.446 INFO    ] 200
[2026-10-18 06:40:55,449.449 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:40:55,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:40:55,504.504 INFO    ] No update needed
[2026-10-18 06:40:55,506.506 INFO    ] Checking for camera pi updates...
[2026-10-18 06:40:55,542.542 INFO    ] 200
[2026-10-18 06:40:55,545.545 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:40:55,586.586 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:41:05,600.600 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:41:05,634.634 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:41:05,644.644 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:41:05,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:41:05,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:41:05,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:41:07,698.698 INFO    ] ================================================
[2026-10-18 06:41:07,714.714 INFO    ] Launching Daemon at Sun Oct 18 06:41:07 IST 2026
[2026-10-18 06:41:07,726.726 INFO    ] ================================================
[2026-10-18 06:41:08,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:41:08
[2026-10-18 06:41:08,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:41:09,156.156 INFO    ] Initializing speech engine...
[2026-10-18 06:41:09,165.165 INFO    ] 2026-10-18 06:41:09
[2026-10-18 06:41:09,415.415 INFO    ] 2026-10-18 06:41:09
[2026-10-18 06:41:09,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:41:09,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:41:09,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:41:09,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:41:09,966.966 INFO    ] time= 18/10/2026 06:41:09
[2026-10-18 06:41:09,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:41:09,995.995 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:41:10,139.139 INFO    ] No existing commands found in stream
[2026-10-18 06:41:15,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:41:15,160.160 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-18 06:41:19,197.197 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:41:19,200.200 INFO    ] Checking for system updates...
[2026-10-18 06:41:19,235.235 INFO    ] 200
[2026-10-18 06:41:19,238.238 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:41:19,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:41:19,300.300 INFO    ] No update needed
[2026-10-18 06:41:19,302.302 INFO    ] Checking for camera pi updates...
[2026-10-18 06:41:19,336.336 INFO    ] 200
[2026-10-18 06:41:19,338.338 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:41:19,379.379 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:41:29,394.394 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:41:29,429.429 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:41:29,439.439 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:41:29,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:41:29,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:41:29,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:41:31,491.491 INFO    ] ================================================
[2026-10-18 06:41:31,507.507 INFO    ] Launching Daemon at Sun Oct 18 06:41:31 IST 2026
[2026-10-18 06:41:31,519.519 INFO    ] ================================================
[2026-10-18 06:41:32,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:41:32
[2026-10-18 06:41:32,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:41:33,039.039 INFO    ] Initializing speech engine...
[2026-10-18 06:41:33,047.047 INFO    ] 2026-10-18 06:41:33
[2026-10-18 06:41:33,375.375 INFO    ] 2026-10-18 06:41:33
[2026-10-18 06:41:33,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:41:33,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:41:33,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:41:33,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:41:33,811.811 INFO    ] time= 18/10/2026 06:41:33
[2026-10-18 06:41:33,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:41:33,823.823 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:41:33,961.961 INFO    ] No existing commands found in stream
[2026-10-18 06:41:38,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:41:38,995.995 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-18 06:41:40,731.731 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:41:40,734.734 INFO    ] Checking for system updates...
[2026-10-18 06:41:40,770.770 INFO    ] 200
[2026-10-18 06:41:40,773.773 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:41:40,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:41:40,829.829 INFO    ] No update needed
[2026-10-18 06:41:40,832.832 INFO    ] Checking for camera pi updates...
[2026-10-18 06:41:40,867.867 INFO    ] 200
[2026-10-18 06:41:40,870.870 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:41:40,910.910 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:41:50,926.926 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:41:50,960.960 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:41:50,970.970 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:41:50,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:41:50,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:41:50,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:41:53,022.022 INFO    ] ================================================
[2026-10-18 06:41:53,038.038 INFO    ] Launching Daemon at Sun Oct 18 06:41:53 IST 2026
[2026-10-18 06:41:53,050.050 INFO    ] ================================================
[2026-10-18 06:41:53,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:41:53
[2026-10-18 06:41:54,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:41:54,521.521 INFO    ] Initializing speech engine...
[2026-10-18 06:41:54,529.529 INFO    ] 2026-10-18 06:41:54
[2026-10-18 06:41:54,789.789 INFO    ] 2026-10-18 06:41:54
[2026-10-18 06:41:54,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:41:55,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:41:55,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:41:55,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:41:55,334.334 INFO    ] time= 18/10/2026 06:41:55
[2026-10-18 06:41:55,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:41:55,354.354 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:41:55,487.487 INFO    ] No existing commands found in stream
[2026-10-18 06:42:00,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:42:00,504.504 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-18 06:42:04,808.808 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:42:04,811.811 INFO    ] Checking for system updates...
[2026-10-18 06:42:04,847.847 INFO    ] 200
[2026-10-18 06:42:04,849.849 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:42:04,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:42:04,912.912 INFO    ] No update needed
[2026-10-18 06:42:04,915.915 INFO    ] Checking for camera pi updates...
[2026-10-18 06:42:04,953.953 INFO    ] 200
[2026-10-18 06:42:04,955.955 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:42:05,001.001 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:42:15,017.017 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:42:15,053.053 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:42:15,063.063 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:42:15,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:42:15,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:42:15,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:42:17,117.117 INFO    ] ================================================
[2026-10-18 06:42:17,133.133 INFO    ] Launching Daemon at Sun Oct 18 06:42:17 IST 2026
[2026-10-18 06:42:17,144.144 INFO    ] ================================================
[2026-10-18 06:42:17,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:42:17
[2026-10-18 06:42:18,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:42:18,811.811 INFO    ] Initializing speech engine...
[2026-10-18 06:42:18,819.819 INFO    ] 2026-10-18 06:42:18
[2026-10-18 06:42:19,098.098 INFO    ] 2026-10-18 06:42:19
[2026-10-18 06:42:19,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:42:19,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:42:19,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:42:19,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:42:19,661.661 INFO    ] time= 18/10/2026 06:42:19
[2026-10-18 06:42:19,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:42:19,688.688 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:42:19,820.820 INFO    ] No existing commands found in stream
[2026-10-18 06:42:24,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:42:24,835.835 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-18 06:42:26,510.510 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:42:26,512.512 INFO    ] Checking for system updates...
[2026-10-18 06:42:26,548.548 INFO    ] 200
[2026-10-18 06:42:26,550.550 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:42:26,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:42:26,604.604 INFO    ] No update needed
[2026-10-18 06:42:26,607.607 INFO    ] Checking for camera pi updates...
[2026-10-18 06:42:26,640.640 INFO    ] 200
[2026-10-18 06:42:26,642.642 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:42:26,689.689 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:42:36,704.704 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:42:36,740.740 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:42:36,750.750 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:42:36,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:42:36,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:42:36,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:42:38,807.807 INFO    ] ================================================
[2026-10-18 06:42:38,823.823 INFO    ] Launching Daemon at Sun Oct 18 06:42:38 IST 2026
[2026-10-18 06:42:38,834.834 INFO    ] ================================================
[2026-10-18 06:42:39,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:42:39
[2026-10-18 06:42:40,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:42:40,298.298 INFO    ] Initializing speech engine...
[2026-10-18 06:42:40,308.308 INFO    ] 2026-10-18 06:42:40
[2026-10-18 06:42:40,567.567 INFO    ] 2026-10-18 06:42:40
[2026-10-18 06:42:40,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:42:40,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:42:40,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:42:41,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:42:41,115.115 INFO    ] time= 18/10/2026 06:42:41
[2026-10-18 06:42:41,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:42:41,161.161 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:42:41,279.279 INFO    ] No existing commands found in stream
[2026-10-18 06:42:46,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:42:46,311.311 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-18 06:42:47,872.872 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:42:47,874.874 INFO    ] Checking for system updates...
[2026-10-18 06:42:47,911.911 INFO    ] 200
[2026-10-18 06:42:47,914.914 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:42:47,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:42:47,970.970 INFO    ] No update needed
[2026-10-18 06:42:47,972.972 INFO    ] Checking for camera pi updates...
[2026-10-18 06:42:48,008.008 INFO    ] 200
[2026-10-18 06:42:48,010.010 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:42:48,050.050 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:42:58,066.066 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:42:58,102.102 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:42:58,111.111 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:42:58,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:42:58,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:42:58,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:43:00,164.164 INFO    ] ================================================
[2026-10-18 06:43:00,180.180 INFO    ] Launching Daemon at Sun Oct 18 06:43:00 IST 2026
[2026-10-18 06:43:00,191.191 INFO    ] ================================================
[2026-10-18 06:43:00,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:43:00
[2026-10-18 06:43:01,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:43:01,614.614 INFO    ] Initializing speech engine...
[2026-10-18 06:43:01,633.633 INFO    ] 2026-10-18 06:43:01
[2026-10-18 06:43:01,904.904 INFO    ] 2026-10-18 06:43:01
[2026-10-18 06:43:02,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:43:02,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:43:02,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:43:02,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:43:02,449.449 INFO    ] time= 18/10/2026 06:43:02
[2026-10-18 06:43:02,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:43:02,498.498 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:43:02,600.600 INFO    ] No existing commands found in stream
[2026-10-18 06:43:07,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:43:07,644.644 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-18 06:43:11,164.164 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:43:11,167.167 INFO    ] Checking for system updates...
[2026-10-18 06:43:11,208.208 INFO    ] 200
[2026-10-18 06:43:11,211.211 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:43:11,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:43:11,273.273 INFO    ] No update needed
[2026-10-18 06:43:11,275.275 INFO    ] Checking for camera pi updates...
[2026-10-18 06:43:11,308.308 INFO    ] 200
[2026-10-18 06:43:11,311.311 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:43:11,357.357 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:43:21,372.372 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:43:21,407.407 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:43:21,417.417 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:43:21,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:43:21,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:43:21,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:43:23,469.469 INFO    ] ================================================
[2026-10-18 06:43:23,484.484 INFO    ] Launching Daemon at Sun Oct 18 06:43:23 IST 2026
[2026-10-18 06:43:23,500.500 INFO    ] ================================================
[2026-10-18 06:43:24,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:43:24
[2026-10-18 06:43:24,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:43:25,050.050 INFO    ] Initializing speech engine...
[2026-10-18 06:43:25,064.064 INFO    ] 2026-10-18 06:43:25
[2026-10-18 06:43:25,350.350 INFO    ] 2026-10-18 06:43:25
[2026-10-18 06:43:25,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:43:25,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:43:25,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:43:25,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:43:25,771.771 INFO    ] time= 18/10/2026 06:43:25
[2026-10-18 06:43:25,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:43:25,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:43:25,968.968 INFO    ] No existing commands found in stream
[2026-10-18 06:43:30,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:43:30,996.996 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-18 06:43:33,344.344 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 06:43:33,347.347 INFO    ] Checking for system updates...
[2026-10-18 06:43:33,387.387 INFO    ] 200
[2026-10-18 06:43:33,390.390 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:43:33,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:43:33,451.451 INFO    ] No update needed
[2026-10-18 06:43:33,454.454 INFO    ] Checking for camera pi updates...
[2026-10-18 06:43:33,491.491 INFO    ] 200
[2026-10-18 06:43:33,493.493 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:43:33,534.534 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:43:43,550.550 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:43:43,584.584 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:43:43,594.594 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:43:43,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:43:43,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:43:43,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:43:45,646.646 INFO    ] ================================================
[2026-10-18 06:43:45,661.661 INFO    ] Launching Daemon at Sun Oct 18 06:43:45 IST 2026
[2026-10-18 06:43:45,673.673 INFO    ] ================================================
[2026-10-18 06:43:46,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:43:46
[2026-10-18 06:43:46,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:43:47,302.302 INFO    ] Initializing speech engine...
[2026-10-18 06:43:47,314.314 INFO    ] 2026-10-18 06:43:47
[2026-10-18 06:43:47,627.627 INFO    ] 2026-10-18 06:43:47
[2026-10-18 06:43:47,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:43:47,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:43:47,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:43:48,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:43:48,155.155 INFO    ] time= 18/10/2026 06:43:48
[2026-10-18 06:43:48,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:43:48,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:43:48,318.318 INFO    ] No existing commands found in stream
[2026-10-18 06:43:53,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:43:53,352.352 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-18 06:43:56,415.415 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:43:56,418.418 INFO    ] Checking for system updates...
[2026-10-18 06:43:56,462.462 INFO    ] 200
[2026-10-18 06:43:56,465.465 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:43:56,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:43:56,536.536 INFO    ] No update needed
[2026-10-18 06:43:56,539.539 INFO    ] Checking for camera pi updates...
[2026-10-18 06:43:56,574.574 INFO    ] 200
[2026-10-18 06:43:56,577.577 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:43:56,618.618 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:44:06,634.634 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:44:06,669.669 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:44:06,678.678 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:44:06,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:44:06,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:44:06,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:44:08,730.730 INFO    ] ================================================
[2026-10-18 06:44:08,746.746 INFO    ] Launching Daemon at Sun Oct 18 06:44:08 IST 2026
[2026-10-18 06:44:08,757.757 INFO    ] ================================================
[2026-10-18 06:44:09,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:44:09
[2026-10-18 06:44:10,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:44:10,384.384 INFO    ] Initializing speech engine...
[2026-10-18 06:44:10,397.397 INFO    ] 2026-10-18 06:44:10
[2026-10-18 06:44:10,676.676 INFO    ] 2026-10-18 06:44:10
[2026-10-18 06:44:10,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:44:11,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:44:11,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:44:11,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:44:11,212.212 INFO    ] time= 18/10/2026 06:44:11
[2026-10-18 06:44:11,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:44:11,258.258 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:44:11,366.366 INFO    ] No existing commands found in stream
[2026-10-18 06:44:16,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:44:16,391.391 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-18 06:44:18,046.046 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:44:18,049.049 INFO    ] Checking for system updates...
[2026-10-18 06:44:18,090.090 INFO    ] 200
[2026-10-18 06:44:18,092.092 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:44:18,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:44:18,154.154 INFO    ] No update needed
[2026-10-18 06:44:18,156.156 INFO    ] Checking for camera pi updates...
[2026-10-18 06:44:18,190.190 INFO    ] 200
[2026-10-18 06:44:18,193.193 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:44:18,238.238 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:44:28,249.249 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:44:28,284.284 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:44:28,294.294 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:44:28,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:44:28,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:44:28,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:44:30,347.347 INFO    ] ================================================
[2026-10-18 06:44:30,362.362 INFO    ] Launching Daemon at Sun Oct 18 06:44:30 IST 2026
[2026-10-18 06:44:30,373.373 INFO    ] ================================================
[2026-10-18 06:44:30,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:44:30
[2026-10-18 06:44:31,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:44:31,933.933 INFO    ] Initializing speech engine...
[2026-10-18 06:44:31,952.952 INFO    ] 2026-10-18 06:44:31
[2026-10-18 06:44:32,233.233 INFO    ] 2026-10-18 06:44:32
[2026-10-18 06:44:32,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:44:32,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:44:32,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:44:32,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:44:32,828.828 INFO    ] time= 18/10/2026 06:44:32
[2026-10-18 06:44:32,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:44:32,866.866 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:44:33,036.036 INFO    ] No existing commands found in stream
[2026-10-18 06:44:38,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:44:38,073.073 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-18 06:44:39,231.231 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 06:44:39,234.234 INFO    ] Checking for system updates...
[2026-10-18 06:44:39,271.271 INFO    ] 200
[2026-10-18 06:44:39,274.274 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:44:39,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:44:39,332.332 INFO    ] No update needed
[2026-10-18 06:44:39,335.335 INFO    ] Checking for camera pi updates...
[2026-10-18 06:44:39,369.369 INFO    ] 200
[2026-10-18 06:44:39,372.372 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:44:39,412.412 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:44:49,427.427 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:44:49,462.462 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:44:49,472.472 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:44:49,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:44:49,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:44:49,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:44:51,524.524 INFO    ] ================================================
[2026-10-18 06:44:51,540.540 INFO    ] Launching Daemon at Sun Oct 18 06:44:51 IST 2026
[2026-10-18 06:44:51,551.551 INFO    ] ================================================
[2026-10-18 06:44:52,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:44:52
[2026-10-18 06:44:52,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:44:53,171.171 INFO    ] Initializing speech engine...
[2026-10-18 06:44:53,183.183 INFO    ] 2026-10-18 06:44:53
[2026-10-18 06:44:53,493.493 INFO    ] 2026-10-18 06:44:53
[2026-10-18 06:44:53,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:44:53,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:44:53,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:44:53,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:44:54,003.003 INFO    ] time= 18/10/2026 06:44:53
[2026-10-18 06:44:54,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:44:54,032.032 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:44:54,163.163 INFO    ] No existing commands found in stream
[2026-10-18 06:44:59,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:44:59,195.195 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-18 06:45:00,897.897 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:45:00,900.900 INFO    ] Checking for system updates...
[2026-10-18 06:45:00,940.940 INFO    ] 200
[2026-10-18 06:45:00,942.942 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:45:01,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:45:01,005.005 INFO    ] No update needed
[2026-10-18 06:45:01,007.007 INFO    ] Checking for camera pi updates...
[2026-10-18 06:45:01,045.045 INFO    ] 200
[2026-10-18 06:45:01,048.048 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:45:01,094.094 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:45:11,108.108 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:45:11,143.143 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:45:11,152.152 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:45:11,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:45:11,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:45:11,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:45:13,205.205 INFO    ] ================================================
[2026-10-18 06:45:13,221.221 INFO    ] Launching Daemon at Sun Oct 18 06:45:13 IST 2026
[2026-10-18 06:45:13,232.232 INFO    ] ================================================
[2026-10-18 06:45:13,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:45:13
[2026-10-18 06:45:14,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:45:14,694.694 INFO    ] Initializing speech engine...
[2026-10-18 06:45:14,703.703 INFO    ] 2026-10-18 06:45:14
[2026-10-18 06:45:14,947.947 INFO    ] 2026-10-18 06:45:14
[2026-10-18 06:45:14,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:45:15,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:45:15,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:45:15,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:45:15,457.457 INFO    ] time= 18/10/2026 06:45:15
[2026-10-18 06:45:15,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:45:15,514.514 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:45:15,658.658 INFO    ] No existing commands found in stream
[2026-10-18 06:45:20,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:45:20,674.674 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-18 06:45:24,093.093 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:45:24,095.095 INFO    ] Checking for system updates...
[2026-10-18 06:45:24,131.131 INFO    ] 200
[2026-10-18 06:45:24,133.133 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:45:24,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:45:24,187.187 INFO    ] No update needed
[2026-10-18 06:45:24,190.190 INFO    ] Checking for camera pi updates...
[2026-10-18 06:45:24,224.224 INFO    ] 200
[2026-10-18 06:45:24,226.226 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:45:24,268.268 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:45:34,283.283 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:45:34,320.320 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:45:34,331.331 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:45:34,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:45:34,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:45:34,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:45:36,386.386 INFO    ] ================================================
[2026-10-18 06:45:36,403.403 INFO    ] Launching Daemon at Sun Oct 18 06:45:36 IST 2026
[2026-10-18 06:45:36,414.414 INFO    ] ================================================
[2026-10-18 06:45:37,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:45:36
[2026-10-18 06:45:37,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:45:37,868.868 INFO    ] Initializing speech engine...
[2026-10-18 06:45:37,873.873 INFO    ] 2026-10-18 06:45:37
[2026-10-18 06:45:38,163.163 INFO    ] 2026-10-18 06:45:38
[2026-10-18 06:45:38,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:45:38,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:45:38,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:45:38,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:45:38,661.661 INFO    ] time= 18/10/2026 06:45:38
[2026-10-18 06:45:38,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:45:38,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:45:38,906.906 INFO    ] No existing commands found in stream
[2026-10-18 06:45:43,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:45:43,921.921 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-18 06:45:44,571.571 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:45:44,573.573 INFO    ] Checking for system updates...
[2026-10-18 06:45:44,612.612 INFO    ] 200
[2026-10-18 06:45:44,614.614 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:45:44,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:45:44,678.678 INFO    ] No update needed
[2026-10-18 06:45:44,681.681 INFO    ] Checking for camera pi updates...
[2026-10-18 06:45:44,717.717 INFO    ] 200
[2026-10-18 06:45:44,720.720 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:45:44,760.760 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:45:54,776.776 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:45:54,811.811 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:45:54,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:45:54,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:45:54,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:45:54,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:45:56,874.874 INFO    ] ================================================
[2026-10-18 06:45:56,890.890 INFO    ] Launching Daemon at Sun Oct 18 06:45:56 IST 2026
[2026-10-18 06:45:56,901.901 INFO    ] ================================================
[2026-10-18 06:45:57,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:45:57
[2026-10-18 06:45:58,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:45:58,315.315 INFO    ] Initializing speech engine...
[2026-10-18 06:45:58,328.328 INFO    ] 2026-10-18 06:45:58
[2026-10-18 06:45:58,610.610 INFO    ] 2026-10-18 06:45:58
[2026-10-18 06:45:58,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:45:58,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:45:58,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:45:59,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:45:59,101.101 INFO    ] time= 18/10/2026 06:45:59
[2026-10-18 06:45:59,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:45:59,187.187 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:45:59,304.304 INFO    ] No existing commands found in stream
[2026-10-18 06:46:04,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:46:04,318.318 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-18 06:46:05,359.359 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:46:05,362.362 INFO    ] Checking for system updates...
[2026-10-18 06:46:05,397.397 INFO    ] 200
[2026-10-18 06:46:05,400.400 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:46:05,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:46:05,460.460 INFO    ] No update needed
[2026-10-18 06:46:05,462.462 INFO    ] Checking for camera pi updates...
[2026-10-18 06:46:05,500.500 INFO    ] 200
[2026-10-18 06:46:05,502.502 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:46:05,543.543 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:46:15,558.558 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:46:15,593.593 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:46:15,603.603 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:46:15,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:46:15,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:46:15,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:46:17,655.655 INFO    ] ================================================
[2026-10-18 06:46:17,670.670 INFO    ] Launching Daemon at Sun Oct 18 06:46:17 IST 2026
[2026-10-18 06:46:17,681.681 INFO    ] ================================================
[2026-10-18 06:46:18,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:46:18
[2026-10-18 06:46:18,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:46:19,146.146 INFO    ] Initializing speech engine...
[2026-10-18 06:46:19,151.151 INFO    ] 2026-10-18 06:46:19
[2026-10-18 06:46:19,414.414 INFO    ] 2026-10-18 06:46:19
[2026-10-18 06:46:19,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:46:19,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:46:19,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:46:19,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:46:19,958.958 INFO    ] time= 18/10/2026 06:46:19
[2026-10-18 06:46:19,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:46:19,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:46:20,110.110 INFO    ] No existing commands found in stream
[2026-10-18 06:46:25,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:46:25,128.128 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-18 06:46:25,763.763 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:46:25,766.766 INFO    ] Checking for system updates...
[2026-10-18 06:46:25,807.807 INFO    ] 200
[2026-10-18 06:46:25,810.810 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:46:25,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:46:25,883.883 INFO    ] No update needed
[2026-10-18 06:46:25,885.885 INFO    ] Checking for camera pi updates...
[2026-10-18 06:46:25,924.924 INFO    ] 200
[2026-10-18 06:46:25,926.926 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:46:25,977.977 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:46:35,994.994 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:46:36,034.034 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:46:36,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:46:36,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:46:36,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:46:36,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:46:38,100.100 INFO    ] ================================================
[2026-10-18 06:46:38,116.116 INFO    ] Launching Daemon at Sun Oct 18 06:46:38 IST 2026
[2026-10-18 06:46:38,127.127 INFO    ] ================================================
[2026-10-18 06:46:38,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:46:38
[2026-10-18 06:46:39,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:46:39,734.734 INFO    ] Initializing speech engine...
[2026-10-18 06:46:39,743.743 INFO    ] 2026-10-18 06:46:39
[2026-10-18 06:46:40,028.028 INFO    ] 2026-10-18 06:46:40
[2026-10-18 06:46:40,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:46:40,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:46:40,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:46:40,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:46:40,566.566 INFO    ] time= 18/10/2026 06:46:40
[2026-10-18 06:46:40,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:46:40,590.590 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:46:40,723.723 INFO    ] No existing commands found in stream
[2026-10-18 06:46:45,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:46:45,754.754 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-18 06:46:49,491.491 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:46:49,494.494 INFO    ] Checking for system updates...
[2026-10-18 06:46:49,534.534 INFO    ] 200
[2026-10-18 06:46:49,538.538 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:46:49,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:46:49,600.600 INFO    ] No update needed
[2026-10-18 06:46:49,603.603 INFO    ] Checking for camera pi updates...
[2026-10-18 06:46:49,642.642 INFO    ] 200
[2026-10-18 06:46:49,644.644 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:46:49,692.692 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:46:59,706.706 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:46:59,746.746 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:46:59,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:46:59,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:46:59,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:46:59,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:47:01,834.834 INFO    ] ================================================
[2026-10-18 06:47:01,889.889 INFO    ] Launching Daemon at Sun Oct 18 06:47:01 IST 2026
[2026-10-18 06:47:01,917.917 INFO    ] ================================================
[2026-10-18 06:47:02,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:47:02
[2026-10-18 06:47:03,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:47:03,845.845 INFO    ] Initializing speech engine...
[2026-10-18 06:47:03,853.853 INFO    ] 2026-10-18 06:47:03
[2026-10-18 06:47:04,135.135 INFO    ] 2026-10-18 06:47:04
[2026-10-18 06:47:04,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:47:04,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:47:04,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:47:04,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:47:04,707.707 INFO    ] time= 18/10/2026 06:47:04
[2026-10-18 06:47:04,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:47:04,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:47:04,872.872 INFO    ] No existing commands found in stream
[2026-10-18 06:47:09,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:47:09,888.888 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-18 06:47:11,568.568 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 06:47:11,570.570 INFO    ] Checking for system updates...
[2026-10-18 06:47:11,612.612 INFO    ] 200
[2026-10-18 06:47:11,615.615 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:47:11,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:47:11,681.681 INFO    ] No update needed
[2026-10-18 06:47:11,684.684 INFO    ] Checking for camera pi updates...
[2026-10-18 06:47:11,722.722 INFO    ] 200
[2026-10-18 06:47:11,725.725 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:47:11,771.771 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:47:21,787.787 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:47:21,827.827 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:47:21,838.838 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:47:21,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:47:21,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:47:21,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:47:23,894.894 INFO    ] ================================================
[2026-10-18 06:47:23,909.909 INFO    ] Launching Daemon at Sun Oct 18 06:47:23 IST 2026
[2026-10-18 06:47:23,919.919 INFO    ] ================================================
[2026-10-18 06:47:24,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:47:24
[2026-10-18 06:47:25,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:47:25,377.377 INFO    ] Initializing speech engine...
[2026-10-18 06:47:25,386.386 INFO    ] 2026-10-18 06:47:25
[2026-10-18 06:47:25,643.643 INFO    ] 2026-10-18 06:47:25
[2026-10-18 06:47:25,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:47:25,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:47:25,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:47:26,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:47:26,132.132 INFO    ] time= 18/10/2026 06:47:26
[2026-10-18 06:47:26,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:47:26,196.196 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:47:26,337.337 INFO    ] No existing commands found in stream
[2026-10-18 06:47:31,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:47:31,355.355 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-18 06:47:34,317.317 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 06:47:34,319.319 INFO    ] Checking for system updates...
[2026-10-18 06:47:34,360.360 INFO    ] 200
[2026-10-18 06:47:34,363.363 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:47:34,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:47:34,423.423 INFO    ] No update needed
[2026-10-18 06:47:34,426.426 INFO    ] Checking for camera pi updates...
[2026-10-18 06:47:34,464.464 INFO    ] 200
[2026-10-18 06:47:34,467.467 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:47:34,512.512 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:47:44,528.528 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:47:44,572.572 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:47:44,583.583 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:47:44,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:47:44,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:47:44,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:47:46,639.639 INFO    ] ================================================
[2026-10-18 06:47:46,654.654 INFO    ] Launching Daemon at Sun Oct 18 06:47:46 IST 2026
[2026-10-18 06:47:46,665.665 INFO    ] ================================================
[2026-10-18 06:47:47,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:47:47
[2026-10-18 06:47:47,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:47:48,282.282 INFO    ] Initializing speech engine...
[2026-10-18 06:47:48,292.292 INFO    ] 2026-10-18 06:47:48
[2026-10-18 06:47:48,564.564 INFO    ] 2026-10-18 06:47:48
[2026-10-18 06:47:48,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:47:48,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:47:48,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:47:49,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:47:49,116.116 INFO    ] time= 18/10/2026 06:47:49
[2026-10-18 06:47:49,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:47:49,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:47:49,323.323 INFO    ] No existing commands found in stream
[2026-10-18 06:47:54,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:47:54,352.352 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-18 06:47:56,014.014 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:47:56,018.018 INFO    ] Checking for system updates...
[2026-10-18 06:47:56,054.054 INFO    ] 200
[2026-10-18 06:47:56,057.057 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:47:56,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:47:56,113.113 INFO    ] No update needed
[2026-10-18 06:47:56,115.115 INFO    ] Checking for camera pi updates...
[2026-10-18 06:47:56,150.150 INFO    ] 200
[2026-10-18 06:47:56,153.153 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:47:56,193.193 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:48:06,210.210 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:48:06,250.250 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:48:06,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:48:06,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:48:06,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:48:06,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:48:08,314.314 INFO    ] ================================================
[2026-10-18 06:48:08,330.330 INFO    ] Launching Daemon at Sun Oct 18 06:48:08 IST 2026
[2026-10-18 06:48:08,342.342 INFO    ] ================================================
[2026-10-18 06:48:08,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:48:08
[2026-10-18 06:48:09,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:48:09,813.813 INFO    ] Initializing speech engine...
[2026-10-18 06:48:09,821.821 INFO    ] 2026-10-18 06:48:09
[2026-10-18 06:48:10,092.092 INFO    ] 2026-10-18 06:48:10
[2026-10-18 06:48:10,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:48:10,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:48:10,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:48:10,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:48:10,492.492 INFO    ] time= 18/10/2026 06:48:10
[2026-10-18 06:48:10,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:48:10,561.561 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:48:10,686.686 INFO    ] No existing commands found in stream
[2026-10-18 06:48:15,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:48:15,701.701 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-18 06:48:16,296.296 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:48:17,168.168 INFO    ] Checking for system updates...
[2026-10-18 06:48:17,208.208 INFO    ] 200
[2026-10-18 06:48:17,210.210 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:48:17,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:48:17,268.268 INFO    ] No update needed
[2026-10-18 06:48:17,271.271 INFO    ] Checking for camera pi updates...
[2026-10-18 06:48:17,308.308 INFO    ] 200
[2026-10-18 06:48:17,310.310 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:48:17,351.351 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:48:27,366.366 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:48:28,790.790 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:48:28,800.800 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:48:28,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:48:28,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:48:28,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:48:30,853.853 INFO    ] ================================================
[2026-10-18 06:48:30,869.869 INFO    ] Launching Daemon at Sun Oct 18 06:48:30 IST 2026
[2026-10-18 06:48:30,880.880 INFO    ] ================================================
[2026-10-18 06:48:31,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:48:31
[2026-10-18 06:48:32,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:48:32,562.562 INFO    ] Initializing speech engine...
[2026-10-18 06:48:32,575.575 INFO    ] 2026-10-18 06:48:32
[2026-10-18 06:48:32,866.866 INFO    ] 2026-10-18 06:48:32
[2026-10-18 06:48:32,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:48:33,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:48:33,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:48:33,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:48:33,398.398 INFO    ] time= 18/10/2026 06:48:33
[2026-10-18 06:48:33,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:48:33,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:48:33,566.566 INFO    ] No existing commands found in stream
[2026-10-18 06:48:38,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:48:38,607.607 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-18 06:48:41,401.401 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:48:41,404.404 INFO    ] Checking for system updates...
[2026-10-18 06:48:41,444.444 INFO    ] 200
[2026-10-18 06:48:41,448.448 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:48:41,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:48:41,509.509 INFO    ] No update needed
[2026-10-18 06:48:41,512.512 INFO    ] Checking for camera pi updates...
[2026-10-18 06:48:41,553.553 INFO    ] 200
[2026-10-18 06:48:41,555.555 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:48:41,595.595 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:48:51,610.610 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:48:51,645.645 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:48:51,655.655 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:48:51,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:48:51,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:48:51,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:48:53,707.707 INFO    ] ================================================
[2026-10-18 06:48:53,723.723 INFO    ] Launching Daemon at Sun Oct 18 06:48:53 IST 2026
[2026-10-18 06:48:53,734.734 INFO    ] ================================================
[2026-10-18 06:48:54,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:48:54
[2026-10-18 06:48:55,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:48:55,379.379 INFO    ] Initializing speech engine...
[2026-10-18 06:48:55,390.390 INFO    ] 2026-10-18 06:48:55
[2026-10-18 06:48:55,661.661 INFO    ] 2026-10-18 06:48:55
[2026-10-18 06:48:55,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:48:56,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:48:56,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:48:56,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:48:56,226.226 INFO    ] time= 18/10/2026 06:48:56
[2026-10-18 06:48:56,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:48:56,275.275 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:48:56,430.430 INFO    ] No existing commands found in stream
[2026-10-18 06:49:01,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:49:01,473.473 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-18 06:49:04,809.809 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:49:04,812.812 INFO    ] Checking for system updates...
[2026-10-18 06:49:04,849.849 INFO    ] 200
[2026-10-18 06:49:04,852.852 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:49:04,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:49:04,908.908 INFO    ] No update needed
[2026-10-18 06:49:04,911.911 INFO    ] Checking for camera pi updates...
[2026-10-18 06:49:04,949.949 INFO    ] 200
[2026-10-18 06:49:04,951.951 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:49:04,992.992 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:49:15,007.007 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:49:15,042.042 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:49:15,052.052 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:49:15,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:49:15,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:49:15,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:49:17,106.106 INFO    ] ================================================
[2026-10-18 06:49:17,122.122 INFO    ] Launching Daemon at Sun Oct 18 06:49:17 IST 2026
[2026-10-18 06:49:17,133.133 INFO    ] ================================================
[2026-10-18 06:49:17,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:49:17
[2026-10-18 06:49:18,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:49:18,779.779 INFO    ] Initializing speech engine...
[2026-10-18 06:49:18,793.793 INFO    ] 2026-10-18 06:49:18
[2026-10-18 06:49:19,106.106 INFO    ] 2026-10-18 06:49:19
[2026-10-18 06:49:19,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:49:19,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:49:19,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:49:19,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:49:19,638.638 INFO    ] time= 18/10/2026 06:49:19
[2026-10-18 06:49:19,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:49:19,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:49:19,809.809 INFO    ] No existing commands found in stream
[2026-10-18 06:49:24,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:49:24,849.849 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-18 06:49:27,454.454 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:49:27,458.458 INFO    ] Checking for system updates...
[2026-10-18 06:49:27,499.499 INFO    ] 200
[2026-10-18 06:49:27,502.502 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:49:27,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:49:27,565.565 INFO    ] No update needed
[2026-10-18 06:49:27,567.567 INFO    ] Checking for camera pi updates...
[2026-10-18 06:49:27,606.606 INFO    ] 200
[2026-10-18 06:49:27,608.608 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:49:27,654.654 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:49:37,669.669 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:49:37,703.703 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:49:37,713.713 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:49:37,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:49:37,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:49:37,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:49:39,766.766 INFO    ] ================================================
[2026-10-18 06:49:39,781.781 INFO    ] Launching Daemon at Sun Oct 18 06:49:39 IST 2026
[2026-10-18 06:49:39,793.793 INFO    ] ================================================
[2026-10-18 06:49:40,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:49:40
[2026-10-18 06:49:40,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:49:41,256.256 INFO    ] Initializing speech engine...
[2026-10-18 06:49:41,262.262 INFO    ] 2026-10-18 06:49:41
[2026-10-18 06:49:41,523.523 INFO    ] 2026-10-18 06:49:41
[2026-10-18 06:49:41,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:49:41,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:49:41,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:49:41,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:49:42,013.013 INFO    ] time= 18/10/2026 06:49:41
[2026-10-18 06:49:42,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:49:42,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:49:42,221.221 INFO    ] No existing commands found in stream
[2026-10-18 06:49:47,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:49:47,238.238 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-18 06:49:48,314.314 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:49:48,317.317 INFO    ] Checking for system updates...
[2026-10-18 06:49:48,358.358 INFO    ] 200
[2026-10-18 06:49:48,360.360 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:49:48,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:49:48,417.417 INFO    ] No update needed
[2026-10-18 06:49:48,419.419 INFO    ] Checking for camera pi updates...
[2026-10-18 06:49:48,459.459 INFO    ] 200
[2026-10-18 06:49:48,462.462 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:49:48,502.502 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:49:58,517.517 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:49:58,553.553 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:49:58,563.563 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:49:58,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:49:58,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:49:58,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:50:00,617.617 INFO    ] ================================================
[2026-10-18 06:50:00,632.632 INFO    ] Launching Daemon at Sun Oct 18 06:50:00 IST 2026
[2026-10-18 06:50:00,643.643 INFO    ] ================================================
[2026-10-18 06:50:01,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:50:01
[2026-10-18 06:50:02,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:50:02,701.701 INFO    ] Initializing speech engine...
[2026-10-18 06:50:02,705.705 INFO    ] 2026-10-18 06:50:02
[2026-10-18 06:50:03,059.059 INFO    ] 2026-10-18 06:50:03
[2026-10-18 06:50:03,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:50:03,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:50:03,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:50:03,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:50:03,492.492 INFO    ] time= 18/10/2026 06:50:03
[2026-10-18 06:50:03,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:50:03,554.554 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:50:03,664.664 INFO    ] No existing commands found in stream
[2026-10-18 06:50:08,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:50:08,682.682 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-18 06:50:09,937.937 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:50:09,940.940 INFO    ] Checking for system updates...
[2026-10-18 06:50:09,975.975 INFO    ] 200
[2026-10-18 06:50:09,978.978 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:50:10,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:50:10,031.031 INFO    ] No update needed
[2026-10-18 06:50:10,034.034 INFO    ] Checking for camera pi updates...
[2026-10-18 06:50:10,071.071 INFO    ] 200
[2026-10-18 06:50:10,073.073 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:50:10,119.119 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:50:20,134.134 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:50:20,169.169 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:50:20,178.178 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:50:20,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:50:20,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:50:20,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:50:22,230.230 INFO    ] ================================================
[2026-10-18 06:50:22,246.246 INFO    ] Launching Daemon at Sun Oct 18 06:50:22 IST 2026
[2026-10-18 06:50:22,256.256 INFO    ] ================================================
[2026-10-18 06:50:22,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:50:22
[2026-10-18 06:50:23,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:50:23,914.914 INFO    ] Initializing speech engine...
[2026-10-18 06:50:23,927.927 INFO    ] 2026-10-18 06:50:23
[2026-10-18 06:50:24,215.215 INFO    ] 2026-10-18 06:50:24
[2026-10-18 06:50:24,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:50:24,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:50:24,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:50:24,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:50:24,760.760 INFO    ] time= 18/10/2026 06:50:24
[2026-10-18 06:50:24,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:50:24,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:50:24,929.929 INFO    ] No existing commands found in stream
[2026-10-18 06:50:29,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:50:29,959.959 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-18 06:50:31,615.615 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:50:31,619.619 INFO    ] Checking for system updates...
[2026-10-18 06:50:31,664.664 INFO    ] 200
[2026-10-18 06:50:31,667.667 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:50:31,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:50:31,742.742 INFO    ] No update needed
[2026-10-18 06:50:31,746.746 INFO    ] Checking for camera pi updates...
[2026-10-18 06:50:31,788.788 INFO    ] 200
[2026-10-18 06:50:31,791.791 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:50:31,845.845 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:50:41,860.860 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:50:41,895.895 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:50:41,905.905 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:50:41,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:50:41,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:50:41,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:50:43,958.958 INFO    ] ================================================
[2026-10-18 06:50:43,974.974 INFO    ] Launching Daemon at Sun Oct 18 06:50:43 IST 2026
[2026-10-18 06:50:43,985.985 INFO    ] ================================================
[2026-10-18 06:50:44,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:50:44
[2026-10-18 06:50:45,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:50:45,439.439 INFO    ] Initializing speech engine...
[2026-10-18 06:50:45,449.449 INFO    ] 2026-10-18 06:50:45
[2026-10-18 06:50:45,710.710 INFO    ] 2026-10-18 06:50:45
[2026-10-18 06:50:45,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:50:45,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:50:45,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:50:46,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:50:46,251.251 INFO    ] time= 18/10/2026 06:50:46
[2026-10-18 06:50:46,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:50:46,279.279 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:50:46,429.429 INFO    ] No existing commands found in stream
[2026-10-18 06:50:51,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:50:51,457.457 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-18 06:50:55,620.620 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:50:55,623.623 INFO    ] Checking for system updates...
[2026-10-18 06:50:55,663.663 INFO    ] 200
[2026-10-18 06:50:55,665.665 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:50:55,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:50:55,721.721 INFO    ] No update needed
[2026-10-18 06:50:55,724.724 INFO    ] Checking for camera pi updates...
[2026-10-18 06:50:55,763.763 INFO    ] 200
[2026-10-18 06:50:55,765.765 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:50:55,818.818 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:51:05,834.834 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:51:05,870.870 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:51:05,879.879 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:51:05,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:51:05,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:51:05,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:51:07,932.932 INFO    ] ================================================
[2026-10-18 06:51:07,947.947 INFO    ] Launching Daemon at Sun Oct 18 06:51:07 IST 2026
[2026-10-18 06:51:07,957.957 INFO    ] ================================================
[2026-10-18 06:51:08,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:51:08
[2026-10-18 06:51:09,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:51:09,375.375 INFO    ] Initializing speech engine...
[2026-10-18 06:51:09,394.394 INFO    ] 2026-10-18 06:51:09
[2026-10-18 06:51:09,659.659 INFO    ] 2026-10-18 06:51:09
[2026-10-18 06:51:09,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:51:09,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:51:09,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:51:10,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:51:10,113.113 INFO    ] time= 18/10/2026 06:51:10
[2026-10-18 06:51:10,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:51:10,228.228 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:51:10,408.408 INFO    ] No existing commands found in stream
[2026-10-18 06:51:15,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:51:15,443.443 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-18 06:51:17,476.476 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:51:17,479.479 INFO    ] Checking for system updates...
[2026-10-18 06:51:17,517.517 INFO    ] 200
[2026-10-18 06:51:17,520.520 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:51:17,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:51:17,575.575 INFO    ] No update needed
[2026-10-18 06:51:17,578.578 INFO    ] Checking for camera pi updates...
[2026-10-18 06:51:17,615.615 INFO    ] 200
[2026-10-18 06:51:17,618.618 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:51:17,659.659 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:51:27,675.675 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:51:27,714.714 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:51:27,725.725 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:51:27,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:51:27,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:51:27,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:51:29,779.779 INFO    ] ================================================
[2026-10-18 06:51:29,796.796 INFO    ] Launching Daemon at Sun Oct 18 06:51:29 IST 2026
[2026-10-18 06:51:29,808.808 INFO    ] ================================================
[2026-10-18 06:51:30,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:51:30
[2026-10-18 06:51:30,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:51:31,245.245 INFO    ] Initializing speech engine...
[2026-10-18 06:51:31,258.258 INFO    ] 2026-10-18 06:51:31
[2026-10-18 06:51:31,523.523 INFO    ] 2026-10-18 06:51:31
[2026-10-18 06:51:31,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:51:31,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:51:31,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:51:32,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:51:32,110.110 INFO    ] time= 18/10/2026 06:51:32
[2026-10-18 06:51:32,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:51:32,157.157 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:51:32,287.287 INFO    ] No existing commands found in stream
[2026-10-18 06:51:37,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:51:37,316.316 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-18 06:51:41,239.239 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:51:41,242.242 INFO    ] Checking for system updates...
[2026-10-18 06:51:41,282.282 INFO    ] 200
[2026-10-18 06:51:41,285.285 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:51:41,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:51:41,347.347 INFO    ] No update needed
[2026-10-18 06:51:41,349.349 INFO    ] Checking for camera pi updates...
[2026-10-18 06:51:41,383.383 INFO    ] 200
[2026-10-18 06:51:41,386.386 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:51:41,428.428 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:51:51,443.443 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:51:51,483.483 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:51:51,495.495 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:51:51,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:51:51,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:51:51,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:51:53,553.553 INFO    ] ================================================
[2026-10-18 06:51:53,569.569 INFO    ] Launching Daemon at Sun Oct 18 06:51:53 IST 2026
[2026-10-18 06:51:53,581.581 INFO    ] ================================================
[2026-10-18 06:51:54,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:51:54
[2026-10-18 06:51:54,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:51:55,040.040 INFO    ] Initializing speech engine...
[2026-10-18 06:51:55,050.050 INFO    ] 2026-10-18 06:51:55
[2026-10-18 06:51:55,302.302 INFO    ] 2026-10-18 06:51:55
[2026-10-18 06:51:55,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:51:55,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:51:55,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:51:55,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:51:55,783.783 INFO    ] time= 18/10/2026 06:51:55
[2026-10-18 06:51:55,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:51:55,874.874 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:51:56,024.024 INFO    ] No existing commands found in stream
[2026-10-18 06:52:01,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:52:01,045.045 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-18 06:52:02,148.148 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:52:02,152.152 INFO    ] Checking for system updates...
[2026-10-18 06:52:02,206.206 INFO    ] 200
[2026-10-18 06:52:02,209.209 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:52:02,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:52:02,285.285 INFO    ] No update needed
[2026-10-18 06:52:02,288.288 INFO    ] Checking for camera pi updates...
[2026-10-18 06:52:02,326.326 INFO    ] 200
[2026-10-18 06:52:02,329.329 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:52:02,376.376 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:52:12,396.396 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:52:12,431.431 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:52:12,441.441 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:52:12,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:52:12,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:52:12,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:52:14,494.494 INFO    ] ================================================
[2026-10-18 06:52:14,510.510 INFO    ] Launching Daemon at Sun Oct 18 06:52:14 IST 2026
[2026-10-18 06:52:14,522.522 INFO    ] ================================================
[2026-10-18 06:52:15,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:52:15
[2026-10-18 06:52:15,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:52:15,933.933 INFO    ] Initializing speech engine...
[2026-10-18 06:52:15,939.939 INFO    ] 2026-10-18 06:52:15
[2026-10-18 06:52:16,233.233 INFO    ] 2026-10-18 06:52:16
[2026-10-18 06:52:16,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:52:16,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:52:16,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:52:16,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:52:16,646.646 INFO    ] time= 18/10/2026 06:52:16
[2026-10-18 06:52:16,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:52:16,695.695 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:52:16,832.832 INFO    ] No existing commands found in stream
[2026-10-18 06:52:21,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:52:21,870.870 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-18 06:52:26,118.118 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:52:26,120.120 INFO    ] Checking for system updates...
[2026-10-18 06:52:26,156.156 INFO    ] 200
[2026-10-18 06:52:26,159.159 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:52:26,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:52:26,214.214 INFO    ] No update needed
[2026-10-18 06:52:26,216.216 INFO    ] Checking for camera pi updates...
[2026-10-18 06:52:26,249.249 INFO    ] 200
[2026-10-18 06:52:26,252.252 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:52:26,291.291 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:52:36,307.307 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:52:36,341.341 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:52:36,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:52:36,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:52:36,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:52:36,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:52:38,403.403 INFO    ] ================================================
[2026-10-18 06:52:38,419.419 INFO    ] Launching Daemon at Sun Oct 18 06:52:38 IST 2026
[2026-10-18 06:52:38,430.430 INFO    ] ================================================
[2026-10-18 06:52:39,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:52:39
[2026-10-18 06:52:39,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:52:40,002.002 INFO    ] Initializing speech engine...
[2026-10-18 06:52:40,010.010 INFO    ] 2026-10-18 06:52:40
[2026-10-18 06:52:40,266.266 INFO    ] 2026-10-18 06:52:40
[2026-10-18 06:52:40,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:52:40,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:52:40,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:52:40,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:52:40,808.808 INFO    ] time= 18/10/2026 06:52:40
[2026-10-18 06:52:40,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:52:40,832.832 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:52:40,964.964 INFO    ] No existing commands found in stream
[2026-10-18 06:52:45,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:52:45,989.989 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-18 06:52:49,049.049 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:52:49,052.052 INFO    ] Checking for system updates...
[2026-10-18 06:52:49,087.087 INFO    ] 200
[2026-10-18 06:52:49,090.090 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:52:49,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:52:49,144.144 INFO    ] No update needed
[2026-10-18 06:52:49,146.146 INFO    ] Checking for camera pi updates...
[2026-10-18 06:52:49,183.183 INFO    ] 200
[2026-10-18 06:52:49,185.185 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:52:49,229.229 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:52:59,244.244 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:52:59,278.278 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:52:59,288.288 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:52:59,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:52:59,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:52:59,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:53:01,340.340 INFO    ] ================================================
[2026-10-18 06:53:01,356.356 INFO    ] Launching Daemon at Sun Oct 18 06:53:01 IST 2026
[2026-10-18 06:53:01,367.367 INFO    ] ================================================
[2026-10-18 06:53:02,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:53:02
[2026-10-18 06:53:02,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:53:03,271.271 INFO    ] Initializing speech engine...
[2026-10-18 06:53:03,279.279 INFO    ] 2026-10-18 06:53:03
[2026-10-18 06:53:03,572.572 INFO    ] 2026-10-18 06:53:03
[2026-10-18 06:53:03,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:53:03,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:53:03,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:53:03,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:53:03,989.989 INFO    ] time= 18/10/2026 06:53:03
[2026-10-18 06:53:03,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:53:04,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:53:04,142.142 INFO    ] No existing commands found in stream
[2026-10-18 06:53:09,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:53:09,164.164 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-18 06:53:10,942.942 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:53:10,945.945 INFO    ] Checking for system updates...
[2026-10-18 06:53:10,984.984 INFO    ] 200
[2026-10-18 06:53:10,987.987 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:53:11,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:53:11,047.047 INFO    ] No update needed
[2026-10-18 06:53:11,050.050 INFO    ] Checking for camera pi updates...
[2026-10-18 06:53:11,083.083 INFO    ] 200
[2026-10-18 06:53:11,085.085 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:53:11,129.129 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:53:21,144.144 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:53:21,179.179 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:53:21,189.189 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:53:21,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:53:21,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:53:21,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:53:23,241.241 INFO    ] ================================================
[2026-10-18 06:53:23,257.257 INFO    ] Launching Daemon at Sun Oct 18 06:53:23 IST 2026
[2026-10-18 06:53:23,269.269 INFO    ] ================================================
[2026-10-18 06:53:23,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:53:23
[2026-10-18 06:53:24,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:53:24,697.697 INFO    ] Initializing speech engine...
[2026-10-18 06:53:24,705.705 INFO    ] 2026-10-18 06:53:24
[2026-10-18 06:53:24,964.964 INFO    ] 2026-10-18 06:53:24
[2026-10-18 06:53:24,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:53:25,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:53:25,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:53:25,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:53:25,466.466 INFO    ] time= 18/10/2026 06:53:25
[2026-10-18 06:53:25,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:53:25,536.536 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:53:25,656.656 INFO    ] No existing commands found in stream
[2026-10-18 06:53:30,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:53:30,689.689 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-18 06:53:32,622.622 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 06:53:32,626.626 INFO    ] Checking for system updates...
[2026-10-18 06:53:32,667.667 INFO    ] 200
[2026-10-18 06:53:32,670.670 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:53:32,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:53:32,734.734 INFO    ] No update needed
[2026-10-18 06:53:32,737.737 INFO    ] Checking for camera pi updates...
[2026-10-18 06:53:32,770.770 INFO    ] 200
[2026-10-18 06:53:32,772.772 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:53:32,812.812 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:53:42,827.827 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:53:42,862.862 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:53:42,872.872 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:53:42,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:53:42,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:53:42,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:53:44,925.925 INFO    ] ================================================
[2026-10-18 06:53:44,941.941 INFO    ] Launching Daemon at Sun Oct 18 06:53:44 IST 2026
[2026-10-18 06:53:44,952.952 INFO    ] ================================================
[2026-10-18 06:53:45,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:53:45
[2026-10-18 06:53:46,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:53:46,358.358 INFO    ] Initializing speech engine...
[2026-10-18 06:53:46,363.363 INFO    ] 2026-10-18 06:53:46
[2026-10-18 06:53:46,658.658 INFO    ] 2026-10-18 06:53:46
[2026-10-18 06:53:46,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:53:46,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:53:46,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:53:47,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:53:47,071.071 INFO    ] time= 18/10/2026 06:53:47
[2026-10-18 06:53:47,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:53:47,100.100 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:53:47,246.246 INFO    ] No existing commands found in stream
[2026-10-18 06:53:52,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:53:52,274.274 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-18 06:53:53,599.599 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:53:53,601.601 INFO    ] Checking for system updates...
[2026-10-18 06:53:53,637.637 INFO    ] 200
[2026-10-18 06:53:53,639.639 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:53:53,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:53:53,694.694 INFO    ] No update needed
[2026-10-18 06:53:53,697.697 INFO    ] Checking for camera pi updates...
[2026-10-18 06:53:53,733.733 INFO    ] 200
[2026-10-18 06:53:53,736.736 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:53:53,779.779 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:54:03,793.793 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:54:03,828.828 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:54:03,837.837 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:54:03,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:54:03,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:54:03,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:54:05,891.891 INFO    ] ================================================
[2026-10-18 06:54:05,907.907 INFO    ] Launching Daemon at Sun Oct 18 06:54:05 IST 2026
[2026-10-18 06:54:05,918.918 INFO    ] ================================================
[2026-10-18 06:54:06,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:54:06
[2026-10-18 06:54:07,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:54:07,561.561 INFO    ] Initializing speech engine...
[2026-10-18 06:54:07,569.569 INFO    ] 2026-10-18 06:54:07
[2026-10-18 06:54:07,854.854 INFO    ] 2026-10-18 06:54:07
[2026-10-18 06:54:07,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:54:08,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:54:08,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:54:08,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:54:08,389.389 INFO    ] time= 18/10/2026 06:54:08
[2026-10-18 06:54:08,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:54:08,414.414 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:54:08,540.540 INFO    ] No existing commands found in stream
[2026-10-18 06:54:13,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:54:13,560.560 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-18 06:54:17,889.889 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:54:17,892.892 INFO    ] Checking for system updates...
[2026-10-18 06:54:17,934.934 INFO    ] 200
[2026-10-18 06:54:17,937.937 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:54:17,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:54:18,000.000 INFO    ] No update needed
[2026-10-18 06:54:18,003.003 INFO    ] Checking for camera pi updates...
[2026-10-18 06:54:18,038.038 INFO    ] 200
[2026-10-18 06:54:18,041.041 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:54:18,082.082 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:54:28,094.094 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:54:28,134.134 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:54:28,145.145 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:54:28,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:54:28,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:54:28,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:54:30,200.200 INFO    ] ================================================
[2026-10-18 06:54:30,216.216 INFO    ] Launching Daemon at Sun Oct 18 06:54:30 IST 2026
[2026-10-18 06:54:30,227.227 INFO    ] ================================================
[2026-10-18 06:54:30,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:54:30
[2026-10-18 06:54:31,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:54:31,676.676 INFO    ] Initializing speech engine...
[2026-10-18 06:54:31,684.684 INFO    ] 2026-10-18 06:54:31
[2026-10-18 06:54:32,025.025 INFO    ] 2026-10-18 06:54:31
[2026-10-18 06:54:32,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:54:32,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:54:32,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:54:32,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:54:32,558.558 INFO    ] time= 18/10/2026 06:54:32
[2026-10-18 06:54:32,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:54:32,606.606 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:54:32,766.766 INFO    ] No existing commands found in stream
[2026-10-18 06:54:37,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:54:37,793.793 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-18 06:54:39,744.744 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:54:39,747.747 INFO    ] Checking for system updates...
[2026-10-18 06:54:39,784.784 INFO    ] 200
[2026-10-18 06:54:39,788.788 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:54:39,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:54:39,842.842 INFO    ] No update needed
[2026-10-18 06:54:39,845.845 INFO    ] Checking for camera pi updates...
[2026-10-18 06:54:39,878.878 INFO    ] 200
[2026-10-18 06:54:39,881.881 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:54:39,926.926 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:54:49,941.941 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:54:49,976.976 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:54:49,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:54:49,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:54:49,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:54:49,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:54:52,040.040 INFO    ] ================================================
[2026-10-18 06:54:52,056.056 INFO    ] Launching Daemon at Sun Oct 18 06:54:52 IST 2026
[2026-10-18 06:54:52,066.066 INFO    ] ================================================
[2026-10-18 06:54:52,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:54:52
[2026-10-18 06:54:53,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:54:53,529.529 INFO    ] Initializing speech engine...
[2026-10-18 06:54:53,536.536 INFO    ] 2026-10-18 06:54:53
[2026-10-18 06:54:53,796.796 INFO    ] 2026-10-18 06:54:53
[2026-10-18 06:54:53,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:54:54,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:54:54,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:54:54,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:54:54,339.339 INFO    ] time= 18/10/2026 06:54:54
[2026-10-18 06:54:54,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:54:54,363.363 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:54:54,494.494 INFO    ] No existing commands found in stream
[2026-10-18 06:54:59,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:54:59,517.517 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-18 06:55:03,537.537 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 06:55:03,541.541 INFO    ] Checking for system updates...
[2026-10-18 06:55:03,590.590 INFO    ] 200
[2026-10-18 06:55:03,593.593 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:55:03,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:55:03,649.649 INFO    ] No update needed
[2026-10-18 06:55:03,652.652 INFO    ] Checking for camera pi updates...
[2026-10-18 06:55:03,686.686 INFO    ] 200
[2026-10-18 06:55:03,689.689 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:55:03,729.729 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:55:13,744.744 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:55:13,780.780 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:55:13,790.790 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:55:13,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:55:13,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:55:13,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:55:15,843.843 INFO    ] ================================================
[2026-10-18 06:55:15,859.859 INFO    ] Launching Daemon at Sun Oct 18 06:55:15 IST 2026
[2026-10-18 06:55:15,871.871 INFO    ] ================================================
[2026-10-18 06:55:16,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:55:16
[2026-10-18 06:55:17,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:55:17,334.334 INFO    ] Initializing speech engine...
[2026-10-18 06:55:17,341.341 INFO    ] 2026-10-18 06:55:17
[2026-10-18 06:55:17,602.602 INFO    ] 2026-10-18 06:55:17
[2026-10-18 06:55:17,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:55:17,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:55:17,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:55:18,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:55:18,142.142 INFO    ] time= 18/10/2026 06:55:18
[2026-10-18 06:55:18,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:55:18,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:55:18,298.298 INFO    ] No existing commands found in stream
[2026-10-18 06:55:23,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:55:23,317.317 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-18 06:55:26,914.914 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:55:26,917.917 INFO    ] Checking for system updates...
[2026-10-18 06:55:26,953.953 INFO    ] 200
[2026-10-18 06:55:26,955.955 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:55:27,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:55:27,010.010 INFO    ] No update needed
[2026-10-18 06:55:27,012.012 INFO    ] Checking for camera pi updates...
[2026-10-18 06:55:27,046.046 INFO    ] 200
[2026-10-18 06:55:27,048.048 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:55:27,089.089 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:55:37,105.105 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:55:37,141.141 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:55:37,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:55:37,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:55:37,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:55:37,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:55:39,203.203 INFO    ] ================================================
[2026-10-18 06:55:39,219.219 INFO    ] Launching Daemon at Sun Oct 18 06:55:39 IST 2026
[2026-10-18 06:55:39,230.230 INFO    ] ================================================
[2026-10-18 06:55:39,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:55:39
[2026-10-18 06:55:40,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:55:40,842.842 INFO    ] Initializing speech engine...
[2026-10-18 06:55:40,851.851 INFO    ] 2026-10-18 06:55:40
[2026-10-18 06:55:41,100.100 INFO    ] 2026-10-18 06:55:41
[2026-10-18 06:55:41,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:55:41,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:55:41,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:55:41,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:55:41,641.641 INFO    ] time= 18/10/2026 06:55:41
[2026-10-18 06:55:41,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:55:41,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:55:41,810.810 INFO    ] No existing commands found in stream
[2026-10-18 06:55:46,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:55:46,828.828 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-18 06:55:47,799.799 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:55:47,802.802 INFO    ] Checking for system updates...
[2026-10-18 06:55:47,838.838 INFO    ] 200
[2026-10-18 06:55:47,840.840 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:55:47,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:55:47,902.902 INFO    ] No update needed
[2026-10-18 06:55:47,905.905 INFO    ] Checking for camera pi updates...
[2026-10-18 06:55:47,939.939 INFO    ] 200
[2026-10-18 06:55:47,941.941 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:55:47,986.986 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:55:58,002.002 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:55:58,036.036 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:55:58,046.046 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:55:58,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:55:58,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:55:58,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:56:00,098.098 INFO    ] ================================================
[2026-10-18 06:56:00,113.113 INFO    ] Launching Daemon at Sun Oct 18 06:56:00 IST 2026
[2026-10-18 06:56:00,124.124 INFO    ] ================================================
[2026-10-18 06:56:00,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:56:00
[2026-10-18 06:56:01,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:56:01,564.564 INFO    ] Initializing speech engine...
[2026-10-18 06:56:01,587.587 INFO    ] 2026-10-18 06:56:01
[2026-10-18 06:56:02,113.113 INFO    ] 2026-10-18 06:56:02
[2026-10-18 06:56:02,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:56:02,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:56:02,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:56:02,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:56:02,695.695 INFO    ] time= 18/10/2026 06:56:02
[2026-10-18 06:56:02,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:56:02,744.744 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:56:02,934.934 INFO    ] No existing commands found in stream
[2026-10-18 06:56:07,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:56:07,974.974 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-18 06:56:09,884.884 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 06:56:09,887.887 INFO    ] Checking for system updates...
[2026-10-18 06:56:09,927.927 INFO    ] 200
[2026-10-18 06:56:09,930.930 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:56:09,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:56:09,992.992 INFO    ] No update needed
[2026-10-18 06:56:09,994.994 INFO    ] Checking for camera pi updates...
[2026-10-18 06:56:10,031.031 INFO    ] 200
[2026-10-18 06:56:10,034.034 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:56:10,075.075 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:56:20,093.093 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:56:20,130.130 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:56:20,140.140 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:56:20,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:56:20,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:56:20,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:56:22,194.194 INFO    ] ================================================
[2026-10-18 06:56:22,210.210 INFO    ] Launching Daemon at Sun Oct 18 06:56:22 IST 2026
[2026-10-18 06:56:22,220.220 INFO    ] ================================================
[2026-10-18 06:56:22,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:56:22
[2026-10-18 06:56:23,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:56:23,627.627 INFO    ] Initializing speech engine...
[2026-10-18 06:56:23,652.652 INFO    ] 2026-10-18 06:56:23
[2026-10-18 06:56:23,909.909 INFO    ] 2026-10-18 06:56:23
[2026-10-18 06:56:23,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:56:24,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:56:24,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:56:24,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:56:24,416.416 INFO    ] time= 18/10/2026 06:56:24
[2026-10-18 06:56:24,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:56:24,488.488 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:56:24,631.631 INFO    ] No existing commands found in stream
[2026-10-18 06:56:29,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:56:29,650.650 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-18 06:56:33,470.470 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:56:33,472.472 INFO    ] Checking for system updates...
[2026-10-18 06:56:33,508.508 INFO    ] 200
[2026-10-18 06:56:33,510.510 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:56:33,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:56:33,564.564 INFO    ] No update needed
[2026-10-18 06:56:33,567.567 INFO    ] Checking for camera pi updates...
[2026-10-18 06:56:33,601.601 INFO    ] 200
[2026-10-18 06:56:33,603.603 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:56:33,643.643 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:56:43,658.658 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:56:43,692.692 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:56:43,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:56:43,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:56:43,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:56:43,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:56:45,754.754 INFO    ] ================================================
[2026-10-18 06:56:45,770.770 INFO    ] Launching Daemon at Sun Oct 18 06:56:45 IST 2026
[2026-10-18 06:56:45,781.781 INFO    ] ================================================
[2026-10-18 06:56:46,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:56:46
[2026-10-18 06:56:46,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:56:47,242.242 INFO    ] Initializing speech engine...
[2026-10-18 06:56:47,253.253 INFO    ] 2026-10-18 06:56:47
[2026-10-18 06:56:47,515.515 INFO    ] 2026-10-18 06:56:47
[2026-10-18 06:56:47,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:56:47,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:56:47,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:56:48,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:56:48,056.056 INFO    ] time= 18/10/2026 06:56:48
[2026-10-18 06:56:48,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:56:48,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:56:48,211.211 INFO    ] No existing commands found in stream
[2026-10-18 06:56:53,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:56:53,233.233 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-18 06:56:53,931.931 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:56:53,933.933 INFO    ] Checking for system updates...
[2026-10-18 06:56:53,970.970 INFO    ] 200
[2026-10-18 06:56:53,972.972 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:56:54,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:56:54,034.034 INFO    ] No update needed
[2026-10-18 06:56:54,036.036 INFO    ] Checking for camera pi updates...
[2026-10-18 06:56:54,070.070 INFO    ] 200
[2026-10-18 06:56:54,073.073 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:56:54,119.119 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:57:04,131.131 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:57:04,166.166 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:57:04,176.176 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:57:04,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:57:04,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:57:04,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:57:06,228.228 INFO    ] ================================================
[2026-10-18 06:57:06,244.244 INFO    ] Launching Daemon at Sun Oct 18 06:57:06 IST 2026
[2026-10-18 06:57:06,255.255 INFO    ] ================================================
[2026-10-18 06:57:06,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:57:06
[2026-10-18 06:57:07,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:57:07,659.659 INFO    ] Initializing speech engine...
[2026-10-18 06:57:07,682.682 INFO    ] 2026-10-18 06:57:07
[2026-10-18 06:57:07,933.933 INFO    ] 2026-10-18 06:57:07
[2026-10-18 06:57:07,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:57:08,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:57:08,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:57:08,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:57:08,422.422 INFO    ] time= 18/10/2026 06:57:08
[2026-10-18 06:57:08,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:57:08,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:57:08,635.635 INFO    ] No existing commands found in stream
[2026-10-18 06:57:13,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:57:13,653.653 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-18 06:57:15,443.443 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:57:15,445.445 INFO    ] Checking for system updates...
[2026-10-18 06:57:15,485.485 INFO    ] 200
[2026-10-18 06:57:15,487.487 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:57:15,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:57:15,548.548 INFO    ] No update needed
[2026-10-18 06:57:15,550.550 INFO    ] Checking for camera pi updates...
[2026-10-18 06:57:15,587.587 INFO    ] 200
[2026-10-18 06:57:15,590.590 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:57:15,630.630 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:57:25,647.647 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:57:25,688.688 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:57:25,699.699 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:57:25,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:57:25,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:57:25,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:57:27,756.756 INFO    ] ================================================
[2026-10-18 06:57:27,772.772 INFO    ] Launching Daemon at Sun Oct 18 06:57:27 IST 2026
[2026-10-18 06:57:27,783.783 INFO    ] ================================================
[2026-10-18 06:57:28,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:57:28
[2026-10-18 06:57:29,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:57:29,401.401 INFO    ] Initializing speech engine...
[2026-10-18 06:57:29,410.410 INFO    ] 2026-10-18 06:57:29
[2026-10-18 06:57:29,731.731 INFO    ] 2026-10-18 06:57:29
[2026-10-18 06:57:29,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:57:30,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:57:30,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:57:30,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:57:30,259.259 INFO    ] time= 18/10/2026 06:57:30
[2026-10-18 06:57:30,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:57:30,300.300 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:57:30,467.467 INFO    ] No existing commands found in stream
[2026-10-18 06:57:35,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:57:35,501.501 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-18 06:57:38,504.504 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:57:38,508.508 INFO    ] Checking for system updates...
[2026-10-18 06:57:38,545.545 INFO    ] 200
[2026-10-18 06:57:38,548.548 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:57:38,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:57:38,604.604 INFO    ] No update needed
[2026-10-18 06:57:38,606.606 INFO    ] Checking for camera pi updates...
[2026-10-18 06:57:38,641.641 INFO    ] 200
[2026-10-18 06:57:38,643.643 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:57:38,684.684 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:57:48,700.700 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:57:48,740.740 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:57:48,751.751 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:57:48,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:57:48,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:57:48,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:57:50,809.809 INFO    ] ================================================
[2026-10-18 06:57:50,826.826 INFO    ] Launching Daemon at Sun Oct 18 06:57:50 IST 2026
[2026-10-18 06:57:50,836.836 INFO    ] ================================================
[2026-10-18 06:57:51,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:57:51
[2026-10-18 06:57:52,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:57:52,283.283 INFO    ] Initializing speech engine...
[2026-10-18 06:57:52,299.299 INFO    ] 2026-10-18 06:57:52
[2026-10-18 06:57:52,588.588 INFO    ] 2026-10-18 06:57:52
[2026-10-18 06:57:52,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:57:52,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:57:52,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:57:52,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:57:53,005.005 INFO    ] time= 18/10/2026 06:57:52
[2026-10-18 06:57:53,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:57:53,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:57:53,202.202 INFO    ] No existing commands found in stream
[2026-10-18 06:57:58,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:57:58,236.236 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-18 06:58:02,498.498 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 06:58:02,502.502 INFO    ] Checking for system updates...
[2026-10-18 06:58:02,547.547 INFO    ] 200
[2026-10-18 06:58:02,551.551 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:58:02,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:58:02,624.624 INFO    ] No update needed
[2026-10-18 06:58:02,627.627 INFO    ] Checking for camera pi updates...
[2026-10-18 06:58:02,669.669 INFO    ] 200
[2026-10-18 06:58:02,672.672 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:58:02,727.727 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:58:12,743.743 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:58:12,778.778 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:58:12,787.787 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:58:12,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:58:12,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:58:12,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:58:14,840.840 INFO    ] ================================================
[2026-10-18 06:58:14,856.856 INFO    ] Launching Daemon at Sun Oct 18 06:58:14 IST 2026
[2026-10-18 06:58:14,871.871 INFO    ] ================================================
[2026-10-18 06:58:15,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:58:15
[2026-10-18 06:58:16,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:58:16,271.271 INFO    ] Initializing speech engine...
[2026-10-18 06:58:16,285.285 INFO    ] 2026-10-18 06:58:16
[2026-10-18 06:58:16,560.560 INFO    ] 2026-10-18 06:58:16
[2026-10-18 06:58:16,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:58:16,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:58:16,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:58:17,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:58:17,087.087 INFO    ] time= 18/10/2026 06:58:17
[2026-10-18 06:58:17,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:58:17,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:58:17,306.306 INFO    ] No existing commands found in stream
[2026-10-18 06:58:22,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:58:22,341.341 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-18 06:58:25,168.168 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:58:25,171.171 INFO    ] Checking for system updates...
[2026-10-18 06:58:25,214.214 INFO    ] 200
[2026-10-18 06:58:25,217.217 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:58:25,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:58:25,285.285 INFO    ] No update needed
[2026-10-18 06:58:25,289.289 INFO    ] Checking for camera pi updates...
[2026-10-18 06:58:25,328.328 INFO    ] 200
[2026-10-18 06:58:25,331.331 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:58:25,382.382 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:58:35,398.398 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:58:35,438.438 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:58:35,450.450 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:58:35,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:58:35,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:58:35,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:58:37,505.505 INFO    ] ================================================
[2026-10-18 06:58:37,520.520 INFO    ] Launching Daemon at Sun Oct 18 06:58:37 IST 2026
[2026-10-18 06:58:37,531.531 INFO    ] ================================================
[2026-10-18 06:58:38,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:58:38
[2026-10-18 06:58:38,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:58:39,129.129 INFO    ] Initializing speech engine...
[2026-10-18 06:58:39,137.137 INFO    ] 2026-10-18 06:58:39
[2026-10-18 06:58:39,408.408 INFO    ] 2026-10-18 06:58:39
[2026-10-18 06:58:39,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:58:39,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:58:39,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:58:39,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:58:39,906.906 INFO    ] time= 18/10/2026 06:58:39
[2026-10-18 06:58:39,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:58:39,964.964 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:58:40,109.109 INFO    ] No existing commands found in stream
[2026-10-18 06:58:45,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:58:45,144.144 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-18 06:58:47,393.393 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 06:58:47,396.396 INFO    ] Checking for system updates...
[2026-10-18 06:58:47,436.436 INFO    ] 200
[2026-10-18 06:58:47,439.439 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:58:47,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:58:47,493.493 INFO    ] No update needed
[2026-10-18 06:58:47,495.495 INFO    ] Checking for camera pi updates...
[2026-10-18 06:58:47,528.528 INFO    ] 200
[2026-10-18 06:58:47,531.531 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:58:47,571.571 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:58:57,586.586 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:58:57,620.620 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:58:57,630.630 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:58:57,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:58:57,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:58:57,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:58:59,683.683 INFO    ] ================================================
[2026-10-18 06:58:59,699.699 INFO    ] Launching Daemon at Sun Oct 18 06:58:59 IST 2026
[2026-10-18 06:58:59,710.710 INFO    ] ================================================
[2026-10-18 06:59:00,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:59:00
[2026-10-18 06:59:00,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:59:01,122.122 INFO    ] Initializing speech engine...
[2026-10-18 06:59:01,129.129 INFO    ] 2026-10-18 06:59:01
[2026-10-18 06:59:01,422.422 INFO    ] 2026-10-18 06:59:01
[2026-10-18 06:59:01,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:59:01,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:59:01,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:59:02,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:59:02,012.012 INFO    ] time= 18/10/2026 06:59:02
[2026-10-18 06:59:02,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:59:02,024.024 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:59:02,100.100 INFO    ] No existing commands found in stream
[2026-10-18 06:59:07,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:59:07,112.112 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-18 06:59:08,093.093 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:59:08,096.096 INFO    ] Checking for system updates...
[2026-10-18 06:59:08,132.132 INFO    ] 200
[2026-10-18 06:59:08,135.135 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:59:08,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:59:08,197.197 INFO    ] No update needed
[2026-10-18 06:59:08,199.199 INFO    ] Checking for camera pi updates...
[2026-10-18 06:59:08,232.232 INFO    ] 200
[2026-10-18 06:59:08,234.234 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:59:08,279.279 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:59:18,293.293 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:59:18,328.328 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:59:18,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:59:18,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:59:18,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:59:18,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:59:20,390.390 INFO    ] ================================================
[2026-10-18 06:59:20,406.406 INFO    ] Launching Daemon at Sun Oct 18 06:59:20 IST 2026
[2026-10-18 06:59:20,418.418 INFO    ] ================================================
[2026-10-18 06:59:20,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:59:20
[2026-10-18 06:59:21,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:59:21,918.918 INFO    ] Initializing speech engine...
[2026-10-18 06:59:21,927.927 INFO    ] 2026-10-18 06:59:21
[2026-10-18 06:59:22,208.208 INFO    ] 2026-10-18 06:59:22
[2026-10-18 06:59:22,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:59:22,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:59:22,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:59:22,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:59:22,790.790 INFO    ] time= 18/10/2026 06:59:22
[2026-10-18 06:59:22,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:59:22,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:59:22,967.967 INFO    ] No existing commands found in stream
[2026-10-18 06:59:27,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:59:28,001.001 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-18 06:59:30,932.932 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 06:59:30,935.935 INFO    ] Checking for system updates...
[2026-10-18 06:59:30,972.972 INFO    ] 200
[2026-10-18 06:59:30,974.974 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:59:31,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 06:59:31,039.039 INFO    ] No update needed
[2026-10-18 06:59:31,042.042 INFO    ] Checking for camera pi updates...
[2026-10-18 06:59:31,080.080 INFO    ] 200
[2026-10-18 06:59:31,083.083 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:59:31,124.124 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 06:59:41,140.140 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 06:59:41,180.180 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 06:59:41,191.191 INFO    ] Script finished. Safe exiting...
[2026-10-18 06:59:41,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 06:59:41,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 06:59:41,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 06:59:43,247.247 INFO    ] ================================================
[2026-10-18 06:59:43,263.263 INFO    ] Launching Daemon at Sun Oct 18 06:59:43 IST 2026
[2026-10-18 06:59:43,275.275 INFO    ] ================================================
[2026-10-18 06:59:43,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 06:59:43
[2026-10-18 06:59:44,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 06:59:44,677.677 INFO    ] Initializing speech engine...
[2026-10-18 06:59:44,700.700 INFO    ] 2026-10-18 06:59:44
[2026-10-18 06:59:44,954.954 INFO    ] 2026-10-18 06:59:44
[2026-10-18 06:59:44,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 06:59:45,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 06:59:45,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 06:59:45,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 06:59:45,427.427 INFO    ] time= 18/10/2026 06:59:45
[2026-10-18 06:59:45,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 06:59:45,533.533 INFO    ] Checking for existing commands in stream...
[2026-10-18 06:59:45,670.670 INFO    ] No existing commands found in stream
[2026-10-18 06:59:50,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 06:59:50,698.698 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-18 06:59:53,295.295 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 06:59:53,298.298 INFO    ] Checking for system updates...
[2026-10-18 06:59:53,333.333 INFO    ] 200
[2026-10-18 06:59:53,336.336 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:59:53,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 06:59:53,397.397 INFO    ] No update needed
[2026-10-18 06:59:53,400.400 INFO    ] Checking for camera pi updates...
[2026-10-18 06:59:53,437.437 INFO    ] 200
[2026-10-18 06:59:53,439.439 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 06:59:53,479.479 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:00:03,495.495 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:00:03,616.616 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:00:03,648.648 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:00:03,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:00:03,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:00:03,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:00:05,814.814 INFO    ] ================================================
[2026-10-18 07:00:06,959.959 INFO    ] Launching Daemon at Sun Oct 18 07:00:05 IST 2026
[2026-10-18 07:00:06,047.047 INFO    ] ================================================
[2026-10-18 07:00:06,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:00:06
[2026-10-18 07:00:07,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:00:07,824.824 INFO    ] Initializing speech engine...
[2026-10-18 07:00:07,832.832 INFO    ] 2026-10-18 07:00:07
[2026-10-18 07:00:08,100.100 INFO    ] 2026-10-18 07:00:08
[2026-10-18 07:00:08,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:00:08,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:00:08,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:00:08,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:00:08,651.651 INFO    ] time= 18/10/2026 07:00:08
[2026-10-18 07:00:08,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:00:08,678.678 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:00:08,828.828 INFO    ] No existing commands found in stream
[2026-10-18 07:00:13,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:00:13,862.862 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-18 07:00:16,232.232 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:00:16,235.235 INFO    ] Checking for system updates...
[2026-10-18 07:00:16,271.271 INFO    ] 200
[2026-10-18 07:00:16,274.274 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:00:16,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:00:16,334.334 INFO    ] No update needed
[2026-10-18 07:00:16,337.337 INFO    ] Checking for camera pi updates...
[2026-10-18 07:00:16,372.372 INFO    ] 200
[2026-10-18 07:00:16,374.374 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:00:16,417.417 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:00:26,433.433 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:00:26,471.471 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:00:26,482.482 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:00:26,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:00:26,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:00:26,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:00:28,538.538 INFO    ] ================================================
[2026-10-18 07:00:28,553.553 INFO    ] Launching Daemon at Sun Oct 18 07:00:28 IST 2026
[2026-10-18 07:00:28,563.563 INFO    ] ================================================
[2026-10-18 07:00:29,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:00:29
[2026-10-18 07:00:29,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:00:30,007.007 INFO    ] Initializing speech engine...
[2026-10-18 07:00:30,015.015 INFO    ] 2026-10-18 07:00:30
[2026-10-18 07:00:30,274.274 INFO    ] 2026-10-18 07:00:30
[2026-10-18 07:00:30,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:00:30,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:00:30,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:00:30,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:00:30,820.820 INFO    ] time= 18/10/2026 07:00:30
[2026-10-18 07:00:30,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:00:30,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:00:30,975.975 INFO    ] No existing commands found in stream
[2026-10-18 07:00:35,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:00:35,993.993 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-18 07:00:40,225.225 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:00:40,228.228 INFO    ] Checking for system updates...
[2026-10-18 07:00:40,264.264 INFO    ] 200
[2026-10-18 07:00:40,266.266 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:00:40,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:00:40,321.321 INFO    ] No update needed
[2026-10-18 07:00:40,323.323 INFO    ] Checking for camera pi updates...
[2026-10-18 07:00:40,359.359 INFO    ] 200
[2026-10-18 07:00:40,362.362 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:00:40,406.406 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:00:50,422.422 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:00:50,457.457 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:00:50,467.467 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:00:50,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:00:50,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:00:50,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:00:52,520.520 INFO    ] ================================================
[2026-10-18 07:00:52,535.535 INFO    ] Launching Daemon at Sun Oct 18 07:00:52 IST 2026
[2026-10-18 07:00:52,546.546 INFO    ] ================================================
[2026-10-18 07:00:53,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:00:53
[2026-10-18 07:00:53,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:00:53,952.952 INFO    ] Initializing speech engine...
[2026-10-18 07:00:53,958.958 INFO    ] 2026-10-18 07:00:53
[2026-10-18 07:00:54,247.247 INFO    ] 2026-10-18 07:00:54
[2026-10-18 07:00:54,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:00:54,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:00:54,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:00:54,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:00:54,761.761 INFO    ] time= 18/10/2026 07:00:54
[2026-10-18 07:00:54,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:00:54,865.865 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:00:55,012.012 INFO    ] No existing commands found in stream
[2026-10-18 07:01:00,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:01:00,046.046 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-18 07:01:02,236.236 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:01:02,240.240 INFO    ] Checking for system updates...
[2026-10-18 07:01:02,282.282 INFO    ] 200
[2026-10-18 07:01:02,285.285 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:01:02,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:01:02,369.369 INFO    ] No update needed
[2026-10-18 07:01:02,372.372 INFO    ] Checking for camera pi updates...
[2026-10-18 07:01:02,411.411 INFO    ] 200
[2026-10-18 07:01:02,415.415 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:01:02,462.462 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:01:12,478.478 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:01:12,513.513 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:01:12,523.523 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:01:12,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:01:12,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:01:12,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:01:14,577.577 INFO    ] ================================================
[2026-10-18 07:01:14,592.592 INFO    ] Launching Daemon at Sun Oct 18 07:01:14 IST 2026
[2026-10-18 07:01:14,602.602 INFO    ] ================================================
[2026-10-18 07:01:15,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:01:15
[2026-10-18 07:01:15,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:01:16,013.013 INFO    ] Initializing speech engine...
[2026-10-18 07:01:16,021.021 INFO    ] 2026-10-18 07:01:16
[2026-10-18 07:01:16,312.312 INFO    ] 2026-10-18 07:01:16
[2026-10-18 07:01:16,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:01:16,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:01:16,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:01:16,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:01:16,728.728 INFO    ] time= 18/10/2026 07:01:16
[2026-10-18 07:01:16,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:01:16,738.738 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:01:16,849.849 INFO    ] No existing commands found in stream
[2026-10-18 07:01:21,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:01:21,877.877 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-18 07:01:25,348.348 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:01:25,350.350 INFO    ] Checking for system updates...
[2026-10-18 07:01:25,387.387 INFO    ] 200
[2026-10-18 07:01:25,390.390 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:01:25,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:01:25,450.450 INFO    ] No update needed
[2026-10-18 07:01:25,452.452 INFO    ] Checking for camera pi updates...
[2026-10-18 07:01:25,486.486 INFO    ] 200
[2026-10-18 07:01:25,489.489 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:01:25,531.531 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:01:35,546.546 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:01:35,582.582 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:01:35,592.592 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:01:35,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:01:35,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:01:35,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:01:37,645.645 INFO    ] ================================================
[2026-10-18 07:01:37,661.661 INFO    ] Launching Daemon at Sun Oct 18 07:01:37 IST 2026
[2026-10-18 07:01:37,672.672 INFO    ] ================================================
[2026-10-18 07:01:38,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:01:38
[2026-10-18 07:01:39,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:01:39,352.352 INFO    ] Initializing speech engine...
[2026-10-18 07:01:39,364.364 INFO    ] 2026-10-18 07:01:39
[2026-10-18 07:01:39,658.658 INFO    ] 2026-10-18 07:01:39
[2026-10-18 07:01:39,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:01:39,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:01:39,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:01:40,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:01:40,206.206 INFO    ] time= 18/10/2026 07:01:40
[2026-10-18 07:01:40,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:01:40,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:01:40,377.377 INFO    ] No existing commands found in stream
[2026-10-18 07:01:45,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:01:45,405.405 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-18 07:01:49,716.716 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:01:49,719.719 INFO    ] Checking for system updates...
[2026-10-18 07:01:49,761.761 INFO    ] 200
[2026-10-18 07:01:49,764.764 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:01:49,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:01:49,828.828 INFO    ] No update needed
[2026-10-18 07:01:49,831.831 INFO    ] Checking for camera pi updates...
[2026-10-18 07:01:49,870.870 INFO    ] 200
[2026-10-18 07:01:49,873.873 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:01:49,923.923 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:01:59,939.939 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:01:59,980.980 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:01:59,991.991 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:01:59,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:02:00,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:02:00,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:02:02,050.050 INFO    ] ================================================
[2026-10-18 07:02:02,077.077 INFO    ] Launching Daemon at Sun Oct 18 07:02:02 IST 2026
[2026-10-18 07:02:02,100.100 INFO    ] ================================================
[2026-10-18 07:02:02,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:02:02
[2026-10-18 07:02:03,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:02:03,746.746 INFO    ] Initializing speech engine...
[2026-10-18 07:02:03,772.772 INFO    ] 2026-10-18 07:02:03
[2026-10-18 07:02:04,053.053 INFO    ] 2026-10-18 07:02:04
[2026-10-18 07:02:04,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:02:04,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:02:04,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:02:04,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:02:04,598.598 INFO    ] time= 18/10/2026 07:02:04
[2026-10-18 07:02:04,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:02:04,633.633 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:02:04,763.763 INFO    ] No existing commands found in stream
[2026-10-18 07:02:09,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:02:09,782.782 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-18 07:02:11,095.095 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:02:11,098.098 INFO    ] Checking for system updates...
[2026-10-18 07:02:11,134.134 INFO    ] 200
[2026-10-18 07:02:11,136.136 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:02:11,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:02:11,193.193 INFO    ] No update needed
[2026-10-18 07:02:11,196.196 INFO    ] Checking for camera pi updates...
[2026-10-18 07:02:11,231.231 INFO    ] 200
[2026-10-18 07:02:11,233.233 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:02:11,274.274 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:02:21,289.289 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:02:21,325.325 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:02:21,335.335 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:02:21,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:02:21,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:02:21,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:02:23,389.389 INFO    ] ================================================
[2026-10-18 07:02:23,404.404 INFO    ] Launching Daemon at Sun Oct 18 07:02:23 IST 2026
[2026-10-18 07:02:23,415.415 INFO    ] ================================================
[2026-10-18 07:02:24,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:02:24
[2026-10-18 07:02:24,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:02:24,878.878 INFO    ] Initializing speech engine...
[2026-10-18 07:02:24,888.888 INFO    ] 2026-10-18 07:02:24
[2026-10-18 07:02:25,150.150 INFO    ] 2026-10-18 07:02:25
[2026-10-18 07:02:25,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:02:25,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:02:25,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:02:25,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:02:25,590.590 INFO    ] time= 18/10/2026 07:02:25
[2026-10-18 07:02:25,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:02:25,694.694 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:02:25,799.799 INFO    ] No existing commands found in stream
[2026-10-18 07:02:30,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:02:30,813.813 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-18 07:02:32,939.939 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:02:33,015.015 INFO    ] Checking for system updates...
[2026-10-18 07:02:33,063.063 INFO    ] 200
[2026-10-18 07:02:33,067.067 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:02:33,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:02:33,125.125 INFO    ] No update needed
[2026-10-18 07:02:33,128.128 INFO    ] Checking for camera pi updates...
[2026-10-18 07:02:33,166.166 INFO    ] 200
[2026-10-18 07:02:33,169.169 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:02:33,211.211 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:02:43,226.226 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:02:43,261.261 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:02:43,271.271 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:02:43,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:02:43,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:02:43,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:02:45,326.326 INFO    ] ================================================
[2026-10-18 07:02:45,342.342 INFO    ] Launching Daemon at Sun Oct 18 07:02:45 IST 2026
[2026-10-18 07:02:45,353.353 INFO    ] ================================================
[2026-10-18 07:02:45,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:02:45
[2026-10-18 07:02:46,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:02:46,800.800 INFO    ] Initializing speech engine...
[2026-10-18 07:02:46,811.811 INFO    ] 2026-10-18 07:02:46
[2026-10-18 07:02:47,091.091 INFO    ] 2026-10-18 07:02:47
[2026-10-18 07:02:47,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:02:47,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:02:47,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:02:47,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:02:47,521.521 INFO    ] time= 18/10/2026 07:02:47
[2026-10-18 07:02:47,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:02:47,571.571 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:02:47,704.704 INFO    ] No existing commands found in stream
[2026-10-18 07:02:52,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:02:52,732.732 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-18 07:02:56,963.963 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:02:56,966.966 INFO    ] Checking for system updates...
[2026-10-18 07:02:57,006.006 INFO    ] 200
[2026-10-18 07:02:57,009.009 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:02:57,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:02:57,070.070 INFO    ] No update needed
[2026-10-18 07:02:57,073.073 INFO    ] Checking for camera pi updates...
[2026-10-18 07:02:57,106.106 INFO    ] 200
[2026-10-18 07:02:57,108.108 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:02:57,148.148 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:03:07,164.164 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:03:07,200.200 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:03:07,210.210 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:03:07,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:03:07,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:03:07,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:03:09,263.263 INFO    ] ================================================
[2026-10-18 07:03:09,278.278 INFO    ] Launching Daemon at Sun Oct 18 07:03:09 IST 2026
[2026-10-18 07:03:09,289.289 INFO    ] ================================================
[2026-10-18 07:03:09,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:03:09
[2026-10-18 07:03:10,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:03:10,724.724 INFO    ] Initializing speech engine...
[2026-10-18 07:03:10,731.731 INFO    ] 2026-10-18 07:03:10
[2026-10-18 07:03:10,985.985 INFO    ] 2026-10-18 07:03:10
[2026-10-18 07:03:11,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:03:11,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:03:11,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:03:11,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:03:11,465.465 INFO    ] time= 18/10/2026 07:03:11
[2026-10-18 07:03:11,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:03:11,559.559 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:03:11,708.708 INFO    ] No existing commands found in stream
[2026-10-18 07:03:16,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:03:16,724.724 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-18 07:03:17,452.452 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:03:17,454.454 INFO    ] Checking for system updates...
[2026-10-18 07:03:17,494.494 INFO    ] 200
[2026-10-18 07:03:17,497.497 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:03:17,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:03:17,558.558 INFO    ] No update needed
[2026-10-18 07:03:17,561.561 INFO    ] Checking for camera pi updates...
[2026-10-18 07:03:17,594.594 INFO    ] 200
[2026-10-18 07:03:17,597.597 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:03:17,646.646 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:03:27,662.662 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:03:27,696.696 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:03:27,706.706 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:03:27,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:03:27,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:03:27,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:03:29,759.759 INFO    ] ================================================
[2026-10-18 07:03:29,774.774 INFO    ] Launching Daemon at Sun Oct 18 07:03:29 IST 2026
[2026-10-18 07:03:29,785.785 INFO    ] ================================================
[2026-10-18 07:03:30,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:03:30
[2026-10-18 07:03:30,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:03:31,239.239 INFO    ] Initializing speech engine...
[2026-10-18 07:03:31,264.264 INFO    ] 2026-10-18 07:03:31
[2026-10-18 07:03:31,542.542 INFO    ] 2026-10-18 07:03:31
[2026-10-18 07:03:31,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:03:31,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:03:31,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:03:32,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:03:32,094.094 INFO    ] time= 18/10/2026 07:03:32
[2026-10-18 07:03:32,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:03:32,183.183 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:03:32,330.330 INFO    ] No existing commands found in stream
[2026-10-18 07:03:37,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:03:37,351.351 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-18 07:03:40,078.078 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:03:40,081.081 INFO    ] Checking for system updates...
[2026-10-18 07:03:40,120.120 INFO    ] 200
[2026-10-18 07:03:40,122.122 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:03:40,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:03:40,177.177 INFO    ] No update needed
[2026-10-18 07:03:40,179.179 INFO    ] Checking for camera pi updates...
[2026-10-18 07:03:40,212.212 INFO    ] 200
[2026-10-18 07:03:40,215.215 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:03:40,261.261 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:03:50,276.276 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:03:50,310.310 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:03:50,320.320 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:03:50,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:03:50,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:03:50,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:03:52,373.373 INFO    ] ================================================
[2026-10-18 07:03:52,389.389 INFO    ] Launching Daemon at Sun Oct 18 07:03:52 IST 2026
[2026-10-18 07:03:52,400.400 INFO    ] ================================================
[2026-10-18 07:03:52,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:03:52
[2026-10-18 07:03:53,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:03:53,854.854 INFO    ] Initializing speech engine...
[2026-10-18 07:03:53,862.862 INFO    ] 2026-10-18 07:03:53
[2026-10-18 07:03:54,127.127 INFO    ] 2026-10-18 07:03:54
[2026-10-18 07:03:54,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:03:54,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:03:54,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:03:54,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:03:54,674.674 INFO    ] time= 18/10/2026 07:03:54
[2026-10-18 07:03:54,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:03:54,701.701 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:03:54,828.828 INFO    ] No existing commands found in stream
[2026-10-18 07:03:59,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:03:59,844.844 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-18 07:04:03,541.541 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:04:03,543.543 INFO    ] Checking for system updates...
[2026-10-18 07:04:03,606.606 INFO    ] 200
[2026-10-18 07:04:03,608.608 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:04:03,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:04:03,671.671 INFO    ] No update needed
[2026-10-18 07:04:03,673.673 INFO    ] Checking for camera pi updates...
[2026-10-18 07:04:03,708.708 INFO    ] 200
[2026-10-18 07:04:03,710.710 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:04:03,760.760 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:04:13,777.777 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:04:13,817.817 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:04:13,828.828 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:04:13,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:04:13,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:04:13,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:04:15,883.883 INFO    ] ================================================
[2026-10-18 07:04:15,898.898 INFO    ] Launching Daemon at Sun Oct 18 07:04:15 IST 2026
[2026-10-18 07:04:15,909.909 INFO    ] ================================================
[2026-10-18 07:04:16,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:04:16
[2026-10-18 07:04:17,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:04:17,333.333 INFO    ] Initializing speech engine...
[2026-10-18 07:04:17,340.340 INFO    ] 2026-10-18 07:04:17
[2026-10-18 07:04:17,598.598 INFO    ] 2026-10-18 07:04:17
[2026-10-18 07:04:17,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:04:17,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:04:17,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:04:18,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:04:18,085.085 INFO    ] time= 18/10/2026 07:04:18
[2026-10-18 07:04:18,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:04:18,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:04:18,292.292 INFO    ] No existing commands found in stream
[2026-10-18 07:04:23,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:04:23,309.309 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-18 07:04:25,993.993 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:04:25,995.995 INFO    ] Checking for system updates...
[2026-10-18 07:04:26,031.031 INFO    ] 200
[2026-10-18 07:04:26,033.033 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:04:26,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:04:26,097.097 INFO    ] No update needed
[2026-10-18 07:04:26,100.100 INFO    ] Checking for camera pi updates...
[2026-10-18 07:04:26,136.136 INFO    ] 200
[2026-10-18 07:04:26,139.139 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:04:26,183.183 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:04:36,199.199 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:04:36,233.233 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:04:36,243.243 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:04:36,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:04:36,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:04:36,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:04:38,295.295 INFO    ] ================================================
[2026-10-18 07:04:38,310.310 INFO    ] Launching Daemon at Sun Oct 18 07:04:38 IST 2026
[2026-10-18 07:04:38,321.321 INFO    ] ================================================
[2026-10-18 07:04:38,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:04:38
[2026-10-18 07:04:39,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:04:39,743.743 INFO    ] Initializing speech engine...
[2026-10-18 07:04:39,751.751 INFO    ] 2026-10-18 07:04:39
[2026-10-18 07:04:39,999.999 INFO    ] 2026-10-18 07:04:39
[2026-10-18 07:04:40,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:04:40,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:04:40,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:04:40,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:04:40,516.516 INFO    ] time= 18/10/2026 07:04:40
[2026-10-18 07:04:40,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:04:40,563.563 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:04:40,707.707 INFO    ] No existing commands found in stream
[2026-10-18 07:04:45,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:04:45,723.723 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-18 07:04:50,224.224 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:04:50,227.227 INFO    ] Checking for system updates...
[2026-10-18 07:04:50,267.267 INFO    ] 200
[2026-10-18 07:04:50,270.270 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:04:50,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:04:50,326.326 INFO    ] No update needed
[2026-10-18 07:04:50,329.329 INFO    ] Checking for camera pi updates...
[2026-10-18 07:04:50,363.363 INFO    ] 200
[2026-10-18 07:04:50,366.366 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:04:50,411.411 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:05:00,427.427 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:05:00,461.461 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:05:00,471.471 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:05:00,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:05:00,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:05:00,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:05:02,525.525 INFO    ] ================================================
[2026-10-18 07:05:02,546.546 INFO    ] Launching Daemon at Sun Oct 18 07:05:02 IST 2026
[2026-10-18 07:05:02,562.562 INFO    ] ================================================
[2026-10-18 07:05:03,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:05:03
[2026-10-18 07:05:03,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:05:04,113.113 INFO    ] Initializing speech engine...
[2026-10-18 07:05:04,120.120 INFO    ] 2026-10-18 07:05:04
[2026-10-18 07:05:04,420.420 INFO    ] 2026-10-18 07:05:04
[2026-10-18 07:05:04,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:05:04,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:05:04,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:05:04,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:05:04,928.928 INFO    ] time= 18/10/2026 07:05:04
[2026-10-18 07:05:04,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:05:04,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:05:05,129.129 INFO    ] No existing commands found in stream
[2026-10-18 07:05:10,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:05:10,149.149 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-18 07:05:13,669.669 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:05:13,671.671 INFO    ] Checking for system updates...
[2026-10-18 07:05:13,706.706 INFO    ] 200
[2026-10-18 07:05:13,709.709 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:05:13,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:05:13,768.768 INFO    ] No update needed
[2026-10-18 07:05:13,770.770 INFO    ] Checking for camera pi updates...
[2026-10-18 07:05:13,807.807 INFO    ] 200
[2026-10-18 07:05:13,809.809 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:05:13,853.853 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:05:23,868.868 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:05:23,903.903 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:05:23,913.913 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:05:23,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:05:23,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:05:23,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:05:25,967.967 INFO    ] ================================================
[2026-10-18 07:05:25,982.982 INFO    ] Launching Daemon at Sun Oct 18 07:05:25 IST 2026
[2026-10-18 07:05:25,993.993 INFO    ] ================================================
[2026-10-18 07:05:26,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:05:26
[2026-10-18 07:05:27,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:05:27,418.418 INFO    ] Initializing speech engine...
[2026-10-18 07:05:27,426.426 INFO    ] 2026-10-18 07:05:27
[2026-10-18 07:05:27,681.681 INFO    ] 2026-10-18 07:05:27
[2026-10-18 07:05:27,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:05:27,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:05:27,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:05:28,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:05:28,223.223 INFO    ] time= 18/10/2026 07:05:28
[2026-10-18 07:05:28,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:05:28,247.247 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:05:28,372.372 INFO    ] No existing commands found in stream
[2026-10-18 07:05:33,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:05:33,390.390 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-18 07:05:37,267.267 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:05:37,270.270 INFO    ] Checking for system updates...
[2026-10-18 07:05:37,308.308 INFO    ] 200
[2026-10-18 07:05:37,310.310 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:05:37,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:05:37,370.370 INFO    ] No update needed
[2026-10-18 07:05:37,372.372 INFO    ] Checking for camera pi updates...
[2026-10-18 07:05:37,408.408 INFO    ] 200
[2026-10-18 07:05:37,410.410 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:05:37,451.451 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:05:47,466.466 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:05:47,501.501 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:05:47,511.511 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:05:47,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:05:47,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:05:47,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:05:49,564.564 INFO    ] ================================================
[2026-10-18 07:05:49,579.579 INFO    ] Launching Daemon at Sun Oct 18 07:05:49 IST 2026
[2026-10-18 07:05:49,589.589 INFO    ] ================================================
[2026-10-18 07:05:50,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:05:50
[2026-10-18 07:05:50,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:05:51,141.141 INFO    ] Initializing speech engine...
[2026-10-18 07:05:51,165.165 INFO    ] 2026-10-18 07:05:51
[2026-10-18 07:05:51,429.429 INFO    ] 2026-10-18 07:05:51
[2026-10-18 07:05:51,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:05:51,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:05:51,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:05:51,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:05:51,929.929 INFO    ] time= 18/10/2026 07:05:51
[2026-10-18 07:05:51,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:05:51,999.999 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:05:52,143.143 INFO    ] No existing commands found in stream
[2026-10-18 07:05:57,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:05:57,161.161 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-18 07:05:57,781.781 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 07:05:57,784.784 INFO    ] Checking for system updates...
[2026-10-18 07:05:57,820.820 INFO    ] 200
[2026-10-18 07:05:57,823.823 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:05:57,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:05:57,881.881 INFO    ] No update needed
[2026-10-18 07:05:57,884.884 INFO    ] Checking for camera pi updates...
[2026-10-18 07:05:57,917.917 INFO    ] 200
[2026-10-18 07:05:57,920.920 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:05:57,966.966 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:06:07,980.980 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:06:08,016.016 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:06:08,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:06:08,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:06:08,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:06:08,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:06:10,078.078 INFO    ] ================================================
[2026-10-18 07:06:10,093.093 INFO    ] Launching Daemon at Sun Oct 18 07:06:10 IST 2026
[2026-10-18 07:06:10,104.104 INFO    ] ================================================
[2026-10-18 07:06:10,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:06:10
[2026-10-18 07:06:11,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:06:11,666.666 INFO    ] Initializing speech engine...
[2026-10-18 07:06:11,675.675 INFO    ] 2026-10-18 07:06:11
[2026-10-18 07:06:11,973.973 INFO    ] 2026-10-18 07:06:11
[2026-10-18 07:06:12,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:06:12,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:06:12,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:06:12,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:06:12,554.554 INFO    ] time= 18/10/2026 07:06:12
[2026-10-18 07:06:12,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:06:12,584.584 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:06:12,743.743 INFO    ] No existing commands found in stream
[2026-10-18 07:06:17,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:06:17,772.772 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-18 07:06:21,021.021 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:06:21,024.024 INFO    ] Checking for system updates...
[2026-10-18 07:06:21,068.068 INFO    ] 200
[2026-10-18 07:06:21,071.071 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:06:21,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:06:21,137.137 INFO    ] No update needed
[2026-10-18 07:06:21,140.140 INFO    ] Checking for camera pi updates...
[2026-10-18 07:06:21,181.181 INFO    ] 200
[2026-10-18 07:06:21,184.184 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:06:21,237.237 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:06:31,256.256 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:06:31,299.299 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:06:31,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:06:31,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:06:31,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:06:31,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:06:33,374.374 INFO    ] ================================================
[2026-10-18 07:06:33,389.389 INFO    ] Launching Daemon at Sun Oct 18 07:06:33 IST 2026
[2026-10-18 07:06:33,400.400 INFO    ] ================================================
[2026-10-18 07:06:33,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:06:33
[2026-10-18 07:06:34,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:06:34,819.819 INFO    ] Initializing speech engine...
[2026-10-18 07:06:34,838.838 INFO    ] 2026-10-18 07:06:34
[2026-10-18 07:06:35,084.084 INFO    ] 2026-10-18 07:06:35
[2026-10-18 07:06:35,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:06:35,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:06:35,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:06:35,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:06:35,580.580 INFO    ] time= 18/10/2026 07:06:35
[2026-10-18 07:06:35,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:06:35,648.648 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:06:35,817.817 INFO    ] No existing commands found in stream
[2026-10-18 07:06:40,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:06:40,850.850 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-18 07:06:42,851.851 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:06:42,853.853 INFO    ] Checking for system updates...
[2026-10-18 07:06:42,899.899 INFO    ] 200
[2026-10-18 07:06:42,901.901 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:06:42,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:06:42,957.957 INFO    ] No update needed
[2026-10-18 07:06:42,959.959 INFO    ] Checking for camera pi updates...
[2026-10-18 07:06:42,993.993 INFO    ] 200
[2026-10-18 07:06:42,996.996 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:06:43,036.036 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:06:53,049.049 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:06:53,084.084 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:06:53,093.093 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:06:53,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:06:53,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:06:53,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:06:55,148.148 INFO    ] ================================================
[2026-10-18 07:06:55,164.164 INFO    ] Launching Daemon at Sun Oct 18 07:06:55 IST 2026
[2026-10-18 07:06:55,174.174 INFO    ] ================================================
[2026-10-18 07:06:55,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:06:55
[2026-10-18 07:06:56,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:06:56,758.758 INFO    ] Initializing speech engine...
[2026-10-18 07:06:56,767.767 INFO    ] 2026-10-18 07:06:56
[2026-10-18 07:06:57,026.026 INFO    ] 2026-10-18 07:06:57
[2026-10-18 07:06:57,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:06:57,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:06:57,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:06:57,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:06:57,589.589 INFO    ] time= 18/10/2026 07:06:57
[2026-10-18 07:06:57,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:06:57,641.641 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:06:57,808.808 INFO    ] No existing commands found in stream
[2026-10-18 07:07:02,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:07:02,849.849 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-18 07:07:05,375.375 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:07:05,378.378 INFO    ] Checking for system updates...
[2026-10-18 07:07:05,414.414 INFO    ] 200
[2026-10-18 07:07:05,417.417 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:07:05,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:07:05,472.472 INFO    ] No update needed
[2026-10-18 07:07:05,474.474 INFO    ] Checking for camera pi updates...
[2026-10-18 07:07:05,508.508 INFO    ] 200
[2026-10-18 07:07:05,510.510 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:07:05,557.557 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:07:15,572.572 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:07:15,608.608 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:07:15,617.617 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:07:15,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:07:15,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:07:15,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:07:17,670.670 INFO    ] ================================================
[2026-10-18 07:07:17,685.685 INFO    ] Launching Daemon at Sun Oct 18 07:07:17 IST 2026
[2026-10-18 07:07:17,697.697 INFO    ] ================================================
[2026-10-18 07:07:18,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:07:18
[2026-10-18 07:07:18,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:07:19,136.136 INFO    ] Initializing speech engine...
[2026-10-18 07:07:19,146.146 INFO    ] 2026-10-18 07:07:19
[2026-10-18 07:07:19,403.403 INFO    ] 2026-10-18 07:07:19
[2026-10-18 07:07:19,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:07:19,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:07:19,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:07:19,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:07:19,909.909 INFO    ] time= 18/10/2026 07:07:19
[2026-10-18 07:07:19,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:07:19,975.975 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:07:20,132.132 INFO    ] No existing commands found in stream
[2026-10-18 07:07:25,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:07:25,168.168 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-18 07:07:28,186.186 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:07:28,189.189 INFO    ] Checking for system updates...
[2026-10-18 07:07:28,232.232 INFO    ] 200
[2026-10-18 07:07:28,234.234 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:07:28,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:07:28,290.290 INFO    ] No update needed
[2026-10-18 07:07:28,293.293 INFO    ] Checking for camera pi updates...
[2026-10-18 07:07:28,327.327 INFO    ] 200
[2026-10-18 07:07:28,329.329 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:07:28,369.369 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:07:38,382.382 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:07:38,417.417 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:07:38,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:07:38,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:07:38,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:07:38,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:07:40,479.479 INFO    ] ================================================
[2026-10-18 07:07:40,494.494 INFO    ] Launching Daemon at Sun Oct 18 07:07:40 IST 2026
[2026-10-18 07:07:40,505.505 INFO    ] ================================================
[2026-10-18 07:07:41,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:07:41
[2026-10-18 07:07:41,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:07:41,933.933 INFO    ] Initializing speech engine...
[2026-10-18 07:07:41,946.946 INFO    ] 2026-10-18 07:07:41
[2026-10-18 07:07:42,192.192 INFO    ] 2026-10-18 07:07:42
[2026-10-18 07:07:42,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:07:42,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:07:42,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:07:42,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:07:42,648.648 INFO    ] time= 18/10/2026 07:07:42
[2026-10-18 07:07:42,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:07:42,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:07:42,903.903 INFO    ] No existing commands found in stream
[2026-10-18 07:07:47,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:07:47,918.918 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-18 07:07:52,760.760 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:07:52,763.763 INFO    ] Checking for system updates...
[2026-10-18 07:07:52,798.798 INFO    ] 200
[2026-10-18 07:07:52,800.800 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:07:52,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:07:52,863.863 INFO    ] No update needed
[2026-10-18 07:07:52,866.866 INFO    ] Checking for camera pi updates...
[2026-10-18 07:07:52,904.904 INFO    ] 200
[2026-10-18 07:07:52,907.907 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:07:52,953.953 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:08:02,966.966 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:08:03,001.001 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:08:03,011.011 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:08:03,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:08:03,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:08:03,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:08:05,067.067 INFO    ] ================================================
[2026-10-18 07:08:05,083.083 INFO    ] Launching Daemon at Sun Oct 18 07:08:05 IST 2026
[2026-10-18 07:08:05,093.093 INFO    ] ================================================
[2026-10-18 07:08:05,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:08:05
[2026-10-18 07:08:06,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:08:06,557.557 INFO    ] Initializing speech engine...
[2026-10-18 07:08:06,568.568 INFO    ] 2026-10-18 07:08:06
[2026-10-18 07:08:06,817.817 INFO    ] 2026-10-18 07:08:06
[2026-10-18 07:08:06,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:08:07,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:08:07,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:08:07,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:08:07,303.303 INFO    ] time= 18/10/2026 07:08:07
[2026-10-18 07:08:07,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:08:07,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:08:07,522.522 INFO    ] No existing commands found in stream
[2026-10-18 07:08:12,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:08:12,549.549 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-18 07:08:15,984.984 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:08:15,987.987 INFO    ] Checking for system updates...
[2026-10-18 07:08:16,026.026 INFO    ] 200
[2026-10-18 07:08:16,029.029 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:08:16,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:08:16,090.090 INFO    ] No update needed
[2026-10-18 07:08:16,092.092 INFO    ] Checking for camera pi updates...
[2026-10-18 07:08:16,125.125 INFO    ] 200
[2026-10-18 07:08:16,128.128 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:08:16,167.167 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:08:26,182.182 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:08:26,217.217 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:08:26,226.226 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:08:26,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:08:26,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:08:26,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:08:28,279.279 INFO    ] ================================================
[2026-10-18 07:08:28,294.294 INFO    ] Launching Daemon at Sun Oct 18 07:08:28 IST 2026
[2026-10-18 07:08:28,304.304 INFO    ] ================================================
[2026-10-18 07:08:28,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:08:28
[2026-10-18 07:08:29,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:08:29,723.723 INFO    ] Initializing speech engine...
[2026-10-18 07:08:29,732.732 INFO    ] 2026-10-18 07:08:29
[2026-10-18 07:08:30,029.029 INFO    ] 2026-10-18 07:08:29
[2026-10-18 07:08:30,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:08:30,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:08:30,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:08:30,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:08:30,527.527 INFO    ] time= 18/10/2026 07:08:30
[2026-10-18 07:08:30,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:08:30,615.615 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:08:30,737.737 INFO    ] No existing commands found in stream
[2026-10-18 07:08:35,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:08:35,748.748 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-18 07:08:38,889.889 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:08:38,892.892 INFO    ] Checking for system updates...
[2026-10-18 07:08:38,927.927 INFO    ] 200
[2026-10-18 07:08:38,930.930 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:08:38,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:08:38,991.991 INFO    ] No update needed
[2026-10-18 07:08:38,993.993 INFO    ] Checking for camera pi updates...
[2026-10-18 07:08:39,030.030 INFO    ] 200
[2026-10-18 07:08:39,032.032 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:08:39,073.073 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:08:49,088.088 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:08:49,123.123 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:08:49,132.132 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:08:49,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:08:49,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:08:49,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:08:51,186.186 INFO    ] ================================================
[2026-10-18 07:08:51,200.200 INFO    ] Launching Daemon at Sun Oct 18 07:08:51 IST 2026
[2026-10-18 07:08:51,211.211 INFO    ] ================================================
[2026-10-18 07:08:51,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:08:51
[2026-10-18 07:08:52,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:08:52,631.631 INFO    ] Initializing speech engine...
[2026-10-18 07:08:52,637.637 INFO    ] 2026-10-18 07:08:52
[2026-10-18 07:08:52,935.935 INFO    ] 2026-10-18 07:08:52
[2026-10-18 07:08:52,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:08:53,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:08:53,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:08:53,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:08:53,357.357 INFO    ] time= 18/10/2026 07:08:53
[2026-10-18 07:08:53,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:08:53,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:08:53,546.546 INFO    ] No existing commands found in stream
[2026-10-18 07:08:58,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:08:58,569.569 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-18 07:09:00,838.838 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 07:09:00,841.841 INFO    ] Checking for system updates...
[2026-10-18 07:09:00,876.876 INFO    ] 200
[2026-10-18 07:09:00,879.879 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:09:00,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:09:00,940.940 INFO    ] No update needed
[2026-10-18 07:09:00,942.942 INFO    ] Checking for camera pi updates...
[2026-10-18 07:09:00,979.979 INFO    ] 200
[2026-10-18 07:09:00,982.982 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:09:01,027.027 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:09:11,041.041 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:09:11,077.077 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:09:11,087.087 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:09:11,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:09:11,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:09:11,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:09:13,139.139 INFO    ] ================================================
[2026-10-18 07:09:13,154.154 INFO    ] Launching Daemon at Sun Oct 18 07:09:13 IST 2026
[2026-10-18 07:09:13,165.165 INFO    ] ================================================
[2026-10-18 07:09:13,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:09:13
[2026-10-18 07:09:14,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:09:14,744.744 INFO    ] Initializing speech engine...
[2026-10-18 07:09:14,752.752 INFO    ] 2026-10-18 07:09:14
[2026-10-18 07:09:15,041.041 INFO    ] 2026-10-18 07:09:15
[2026-10-18 07:09:15,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:09:15,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:09:15,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:09:15,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:09:15,599.599 INFO    ] time= 18/10/2026 07:09:15
[2026-10-18 07:09:15,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:09:15,623.623 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:09:15,724.724 INFO    ] No existing commands found in stream
[2026-10-18 07:09:20,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:09:20,741.741 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-18 07:09:25,022.022 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:09:25,025.025 INFO    ] Checking for system updates...
[2026-10-18 07:09:25,065.065 INFO    ] 200
[2026-10-18 07:09:25,068.068 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:09:25,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:09:25,130.130 INFO    ] No update needed
[2026-10-18 07:09:25,132.132 INFO    ] Checking for camera pi updates...
[2026-10-18 07:09:25,167.167 INFO    ] 200
[2026-10-18 07:09:25,169.169 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:09:25,214.214 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:09:35,229.229 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:09:35,268.268 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:09:35,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:09:35,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:09:35,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:09:35,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:09:37,333.333 INFO    ] ================================================
[2026-10-18 07:09:37,348.348 INFO    ] Launching Daemon at Sun Oct 18 07:09:37 IST 2026
[2026-10-18 07:09:37,359.359 INFO    ] ================================================
[2026-10-18 07:09:37,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:09:37
[2026-10-18 07:09:38,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:09:38,767.767 INFO    ] Initializing speech engine...
[2026-10-18 07:09:38,776.776 INFO    ] 2026-10-18 07:09:38
[2026-10-18 07:09:39,064.064 INFO    ] 2026-10-18 07:09:39
[2026-10-18 07:09:39,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:09:39,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:09:39,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:09:39,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:09:39,585.585 INFO    ] time= 18/10/2026 07:09:39
[2026-10-18 07:09:39,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:09:39,678.678 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:09:39,815.815 INFO    ] No existing commands found in stream
[2026-10-18 07:09:44,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:09:44,840.840 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-18 07:09:47,751.751 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:09:47,753.753 INFO    ] Checking for system updates...
[2026-10-18 07:09:47,790.790 INFO    ] 200
[2026-10-18 07:09:47,793.793 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:09:47,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:09:47,853.853 INFO    ] No update needed
[2026-10-18 07:09:47,856.856 INFO    ] Checking for camera pi updates...
[2026-10-18 07:09:47,893.893 INFO    ] 200
[2026-10-18 07:09:47,896.896 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:09:47,938.938 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:09:57,954.954 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:09:57,994.994 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:09:58,004.004 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:09:58,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:09:58,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:09:58,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:10:00,059.059 INFO    ] ================================================
[2026-10-18 07:10:00,074.074 INFO    ] Launching Daemon at Sun Oct 18 07:10:00 IST 2026
[2026-10-18 07:10:00,085.085 INFO    ] ================================================
[2026-10-18 07:10:00,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:10:00
[2026-10-18 07:10:01,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:10:02,374.374 INFO    ] Initializing speech engine...
[2026-10-18 07:10:02,395.395 INFO    ] 2026-10-18 07:10:02
[2026-10-18 07:10:02,641.641 INFO    ] 2026-10-18 07:10:02
[2026-10-18 07:10:02,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:10:02,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:10:02,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:10:03,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:10:03,233.233 INFO    ] time= 18/10/2026 07:10:03
[2026-10-18 07:10:03,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:10:03,335.335 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:10:03,468.468 INFO    ] No existing commands found in stream
[2026-10-18 07:10:08,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:10:08,504.504 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-18 07:10:09,248.248 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:10:09,251.251 INFO    ] Checking for system updates...
[2026-10-18 07:10:09,287.287 INFO    ] 200
[2026-10-18 07:10:09,290.290 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:10:09,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:10:09,345.345 INFO    ] No update needed
[2026-10-18 07:10:09,347.347 INFO    ] Checking for camera pi updates...
[2026-10-18 07:10:09,381.381 INFO    ] 200
[2026-10-18 07:10:09,384.384 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:10:09,424.424 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:10:19,439.439 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:10:19,474.474 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:10:19,484.484 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:10:19,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:10:19,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:10:19,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:10:21,536.536 INFO    ] ================================================
[2026-10-18 07:10:21,552.552 INFO    ] Launching Daemon at Sun Oct 18 07:10:21 IST 2026
[2026-10-18 07:10:21,563.563 INFO    ] ================================================
[2026-10-18 07:10:22,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:10:22
[2026-10-18 07:10:22,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:10:22,966.966 INFO    ] Initializing speech engine...
[2026-10-18 07:10:22,975.975 INFO    ] 2026-10-18 07:10:22
[2026-10-18 07:10:23,265.265 INFO    ] 2026-10-18 07:10:23
[2026-10-18 07:10:23,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:10:23,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:10:23,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:10:23,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:10:23,787.787 INFO    ] time= 18/10/2026 07:10:23
[2026-10-18 07:10:23,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:10:23,891.891 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:10:24,052.052 INFO    ] No existing commands found in stream
[2026-10-18 07:10:29,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:10:29,081.081 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-18 07:10:31,701.701 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:10:31,704.704 INFO    ] Checking for system updates...
[2026-10-18 07:10:31,741.741 INFO    ] 200
[2026-10-18 07:10:31,744.744 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:10:31,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:10:31,807.807 INFO    ] No update needed
[2026-10-18 07:10:31,809.809 INFO    ] Checking for camera pi updates...
[2026-10-18 07:10:31,849.849 INFO    ] 200
[2026-10-18 07:10:31,852.852 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:10:31,900.900 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:10:41,915.915 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:10:41,950.950 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:10:41,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:10:41,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:10:41,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:10:41,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:10:44,012.012 INFO    ] ================================================
[2026-10-18 07:10:44,027.027 INFO    ] Launching Daemon at Sun Oct 18 07:10:44 IST 2026
[2026-10-18 07:10:44,038.038 INFO    ] ================================================
[2026-10-18 07:10:44,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:10:44
[2026-10-18 07:10:45,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:10:45,468.468 INFO    ] Initializing speech engine...
[2026-10-18 07:10:45,478.478 INFO    ] 2026-10-18 07:10:45
[2026-10-18 07:10:45,723.723 INFO    ] 2026-10-18 07:10:45
[2026-10-18 07:10:45,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:10:46,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:10:46,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:10:46,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:10:46,202.202 INFO    ] time= 18/10/2026 07:10:46
[2026-10-18 07:10:46,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:10:46,283.283 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:10:46,432.432 INFO    ] No existing commands found in stream
[2026-10-18 07:10:51,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:10:51,450.450 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-18 07:10:54,053.053 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:10:54,055.055 INFO    ] Checking for system updates...
[2026-10-18 07:10:54,090.090 INFO    ] 200
[2026-10-18 07:10:54,093.093 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:10:54,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:10:54,153.153 INFO    ] No update needed
[2026-10-18 07:10:54,156.156 INFO    ] Checking for camera pi updates...
[2026-10-18 07:10:54,189.189 INFO    ] 200
[2026-10-18 07:10:54,192.192 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:10:54,236.236 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:11:04,250.250 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:11:04,284.284 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:11:04,294.294 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:11:04,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:11:04,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:11:04,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:11:06,348.348 INFO    ] ================================================
[2026-10-18 07:11:06,363.363 INFO    ] Launching Daemon at Sun Oct 18 07:11:06 IST 2026
[2026-10-18 07:11:06,374.374 INFO    ] ================================================
[2026-10-18 07:11:06,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:11:06
[2026-10-18 07:11:07,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:11:07,787.787 INFO    ] Initializing speech engine...
[2026-10-18 07:11:07,791.791 INFO    ] 2026-10-18 07:11:07
[2026-10-18 07:11:08,093.093 INFO    ] 2026-10-18 07:11:08
[2026-10-18 07:11:08,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:11:08,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:11:08,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:11:08,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:11:08,524.524 INFO    ] time= 18/10/2026 07:11:08
[2026-10-18 07:11:08,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:11:08,536.536 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:11:08,613.613 INFO    ] No existing commands found in stream
[2026-10-18 07:11:13,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:11:13,635.635 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-18 07:11:15,565.565 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:11:15,567.567 INFO    ] Checking for system updates...
[2026-10-18 07:11:15,607.607 INFO    ] 200
[2026-10-18 07:11:15,610.610 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:11:15,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:11:15,664.664 INFO    ] No update needed
[2026-10-18 07:11:15,667.667 INFO    ] Checking for camera pi updates...
[2026-10-18 07:11:15,701.701 INFO    ] 200
[2026-10-18 07:11:15,703.703 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:11:15,745.745 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:11:25,762.762 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:11:25,803.803 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:11:25,814.814 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:11:25,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:11:25,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:11:25,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:11:27,870.870 INFO    ] ================================================
[2026-10-18 07:11:27,885.885 INFO    ] Launching Daemon at Sun Oct 18 07:11:27 IST 2026
[2026-10-18 07:11:27,896.896 INFO    ] ================================================
[2026-10-18 07:11:28,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:11:28
[2026-10-18 07:11:29,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:11:29,463.463 INFO    ] Initializing speech engine...
[2026-10-18 07:11:29,476.476 INFO    ] 2026-10-18 07:11:29
[2026-10-18 07:11:29,786.786 INFO    ] 2026-10-18 07:11:29
[2026-10-18 07:11:29,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:11:30,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:11:30,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:11:30,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:11:30,299.299 INFO    ] time= 18/10/2026 07:11:30
[2026-10-18 07:11:30,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:11:30,347.347 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:11:30,495.495 INFO    ] No existing commands found in stream
[2026-10-18 07:11:35,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:11:35,530.530 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-18 07:11:37,171.171 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 07:11:37,174.174 INFO    ] Checking for system updates...
[2026-10-18 07:11:37,212.212 INFO    ] 200
[2026-10-18 07:11:37,215.215 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:11:37,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:11:37,273.273 INFO    ] No update needed
[2026-10-18 07:11:37,276.276 INFO    ] Checking for camera pi updates...
[2026-10-18 07:11:37,311.311 INFO    ] 200
[2026-10-18 07:11:37,314.314 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:11:37,355.355 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:11:47,371.371 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:11:47,413.413 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:11:47,425.425 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:11:47,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:11:47,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:11:47,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:11:49,481.481 INFO    ] ================================================
[2026-10-18 07:11:49,497.497 INFO    ] Launching Daemon at Sun Oct 18 07:11:49 IST 2026
[2026-10-18 07:11:49,508.508 INFO    ] ================================================
[2026-10-18 07:11:50,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:11:50
[2026-10-18 07:11:50,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:11:51,129.129 INFO    ] Initializing speech engine...
[2026-10-18 07:11:51,138.138 INFO    ] 2026-10-18 07:11:51
[2026-10-18 07:11:51,384.384 INFO    ] 2026-10-18 07:11:51
[2026-10-18 07:11:51,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:11:51,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:11:51,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:11:51,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:11:51,891.891 INFO    ] time= 18/10/2026 07:11:51
[2026-10-18 07:11:51,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:11:51,950.950 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:11:52,098.098 INFO    ] No existing commands found in stream
[2026-10-18 07:11:57,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:11:57,123.123 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-18 07:11:58,757.757 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:11:58,760.760 INFO    ] Checking for system updates...
[2026-10-18 07:11:58,796.796 INFO    ] 200
[2026-10-18 07:11:58,799.799 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:11:58,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:11:58,863.863 INFO    ] No update needed
[2026-10-18 07:11:58,865.865 INFO    ] Checking for camera pi updates...
[2026-10-18 07:11:58,899.899 INFO    ] 200
[2026-10-18 07:11:58,901.901 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:11:58,952.952 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:12:08,967.967 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:12:09,002.002 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:12:09,012.012 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:12:09,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:12:09,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:12:09,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:12:11,066.066 INFO    ] ================================================
[2026-10-18 07:12:11,081.081 INFO    ] Launching Daemon at Sun Oct 18 07:12:11 IST 2026
[2026-10-18 07:12:11,092.092 INFO    ] ================================================
[2026-10-18 07:12:11,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:12:11
[2026-10-18 07:12:12,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:12:12,525.525 INFO    ] Initializing speech engine...
[2026-10-18 07:12:12,533.533 INFO    ] 2026-10-18 07:12:12
[2026-10-18 07:12:12,791.791 INFO    ] 2026-10-18 07:12:12
[2026-10-18 07:12:12,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:12:13,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:12:13,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:12:13,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:12:13,278.278 INFO    ] time= 18/10/2026 07:12:13
[2026-10-18 07:12:13,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:12:13,341.341 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:12:13,484.484 INFO    ] No existing commands found in stream
[2026-10-18 07:12:18,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:12:18,504.504 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-18 07:12:19,183.183 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:12:19,186.186 INFO    ] Checking for system updates...
[2026-10-18 07:12:19,225.225 INFO    ] 200
[2026-10-18 07:12:19,228.228 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:12:19,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:12:19,283.283 INFO    ] No update needed
[2026-10-18 07:12:19,289.289 INFO    ] Checking for camera pi updates...
[2026-10-18 07:12:19,323.323 INFO    ] 200
[2026-10-18 07:12:19,326.326 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:12:19,366.366 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:12:29,381.381 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:12:29,416.416 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:12:29,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:12:29,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:12:29,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:12:29,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:12:31,478.478 INFO    ] ================================================
[2026-10-18 07:12:31,493.493 INFO    ] Launching Daemon at Sun Oct 18 07:12:31 IST 2026
[2026-10-18 07:12:31,504.504 INFO    ] ================================================
[2026-10-18 07:12:32,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:12:32
[2026-10-18 07:12:32,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:12:33,020.020 INFO    ] Initializing speech engine...
[2026-10-18 07:12:33,030.030 INFO    ] 2026-10-18 07:12:33
[2026-10-18 07:12:33,288.288 INFO    ] 2026-10-18 07:12:33
[2026-10-18 07:12:33,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:12:33,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:12:33,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:12:33,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:12:33,786.786 INFO    ] time= 18/10/2026 07:12:33
[2026-10-18 07:12:33,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:12:33,874.874 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:12:34,000.000 INFO    ] No existing commands found in stream
[2026-10-18 07:12:39,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:12:39,034.034 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-18 07:12:40,545.545 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:12:40,548.548 INFO    ] Checking for system updates...
[2026-10-18 07:12:40,583.583 INFO    ] 200
[2026-10-18 07:12:40,586.586 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:12:40,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:12:40,641.641 INFO    ] No update needed
[2026-10-18 07:12:40,644.644 INFO    ] Checking for camera pi updates...
[2026-10-18 07:12:40,677.677 INFO    ] 200
[2026-10-18 07:12:40,680.680 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:12:40,719.719 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:12:50,734.734 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:12:50,769.769 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:12:50,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:12:50,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:12:50,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:12:50,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:12:52,830.830 INFO    ] ================================================
[2026-10-18 07:12:52,846.846 INFO    ] Launching Daemon at Sun Oct 18 07:12:52 IST 2026
[2026-10-18 07:12:52,857.857 INFO    ] ================================================
[2026-10-18 07:12:53,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:12:53
[2026-10-18 07:12:54,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:12:54,260.260 INFO    ] Initializing speech engine...
[2026-10-18 07:12:54,283.283 INFO    ] 2026-10-18 07:12:54
[2026-10-18 07:12:54,537.537 INFO    ] 2026-10-18 07:12:54
[2026-10-18 07:12:54,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:12:54,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:12:54,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:12:54,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:12:54,917.917 INFO    ] time= 18/10/2026 07:12:54
[2026-10-18 07:12:54,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:12:54,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:12:55,109.109 INFO    ] No existing commands found in stream
[2026-10-18 07:13:00,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:13:00,128.128 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-18 07:13:01,421.421 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 07:13:01,423.423 INFO    ] Checking for system updates...
[2026-10-18 07:13:01,462.462 INFO    ] 200
[2026-10-18 07:13:01,465.465 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:13:01,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:13:01,529.529 INFO    ] No update needed
[2026-10-18 07:13:01,532.532 INFO    ] Checking for camera pi updates...
[2026-10-18 07:13:01,601.601 INFO    ] 200
[2026-10-18 07:13:01,605.605 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:13:01,694.694 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:13:11,716.716 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:13:11,751.751 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:13:11,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:13:11,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:13:11,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:13:11,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:13:13,813.813 INFO    ] ================================================
[2026-10-18 07:13:13,830.830 INFO    ] Launching Daemon at Sun Oct 18 07:13:13 IST 2026
[2026-10-18 07:13:13,841.841 INFO    ] ================================================
[2026-10-18 07:13:14,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:13:14
[2026-10-18 07:13:15,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:13:15,437.437 INFO    ] Initializing speech engine...
[2026-10-18 07:13:15,450.450 INFO    ] 2026-10-18 07:13:15
[2026-10-18 07:13:15,762.762 INFO    ] 2026-10-18 07:13:15
[2026-10-18 07:13:15,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:13:16,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:13:16,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:13:16,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:13:16,270.270 INFO    ] time= 18/10/2026 07:13:16
[2026-10-18 07:13:16,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:13:16,318.318 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:13:16,450.450 INFO    ] No existing commands found in stream
[2026-10-18 07:13:21,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:13:21,489.489 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-18 07:13:22,476.476 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 07:13:22,479.479 INFO    ] Checking for system updates...
[2026-10-18 07:13:22,518.518 INFO    ] 200
[2026-10-18 07:13:22,521.521 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:13:22,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:13:22,583.583 INFO    ] No update needed
[2026-10-18 07:13:22,586.586 INFO    ] Checking for camera pi updates...
[2026-10-18 07:13:22,623.623 INFO    ] 200
[2026-10-18 07:13:22,626.626 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:13:22,668.668 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:13:32,684.684 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:13:32,726.726 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:13:32,739.739 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:13:32,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:13:32,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:13:32,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:13:34,798.798 INFO    ] ================================================
[2026-10-18 07:13:34,814.814 INFO    ] Launching Daemon at Sun Oct 18 07:13:34 IST 2026
[2026-10-18 07:13:34,826.826 INFO    ] ================================================
[2026-10-18 07:13:35,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:13:35
[2026-10-18 07:13:36,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:13:36,407.407 INFO    ] Initializing speech engine...
[2026-10-18 07:13:36,421.421 INFO    ] 2026-10-18 07:13:36
[2026-10-18 07:13:36,702.702 INFO    ] 2026-10-18 07:13:36
[2026-10-18 07:13:36,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:13:36,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:13:36,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:13:37,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:13:37,194.194 INFO    ] time= 18/10/2026 07:13:37
[2026-10-18 07:13:37,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:13:37,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:13:37,404.404 INFO    ] No existing commands found in stream
[2026-10-18 07:13:42,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:13:42,431.431 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-18 07:13:45,610.610 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:13:45,613.613 INFO    ] Checking for system updates...
[2026-10-18 07:13:45,650.650 INFO    ] 200
[2026-10-18 07:13:45,652.652 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:13:45,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:13:45,709.709 INFO    ] No update needed
[2026-10-18 07:13:45,712.712 INFO    ] Checking for camera pi updates...
[2026-10-18 07:13:45,746.746 INFO    ] 200
[2026-10-18 07:13:45,749.749 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:13:45,791.791 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:13:55,807.807 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:13:55,847.847 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:13:55,858.858 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:13:55,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:13:55,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:13:55,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:13:57,918.918 INFO    ] ================================================
[2026-10-18 07:13:57,934.934 INFO    ] Launching Daemon at Sun Oct 18 07:13:57 IST 2026
[2026-10-18 07:13:57,945.945 INFO    ] ================================================
[2026-10-18 07:13:58,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:13:58
[2026-10-18 07:13:59,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:13:59,354.354 INFO    ] Initializing speech engine...
[2026-10-18 07:13:59,370.370 INFO    ] 2026-10-18 07:13:59
[2026-10-18 07:13:59,621.621 INFO    ] 2026-10-18 07:13:59
[2026-10-18 07:13:59,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:13:59,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:13:59,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:14:00,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:14:00,161.161 INFO    ] time= 18/10/2026 07:14:00
[2026-10-18 07:14:00,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:14:00,184.184 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:14:00,330.330 INFO    ] No existing commands found in stream
[2026-10-18 07:14:05,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:14:05,348.348 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-18 07:14:06,315.315 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:14:06,318.318 INFO    ] Checking for system updates...
[2026-10-18 07:14:06,370.370 INFO    ] 200
[2026-10-18 07:14:06,373.373 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:14:06,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:14:06,431.431 INFO    ] No update needed
[2026-10-18 07:14:06,434.434 INFO    ] Checking for camera pi updates...
[2026-10-18 07:14:06,472.472 INFO    ] 200
[2026-10-18 07:14:06,474.474 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:14:06,519.519 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:14:16,532.532 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:14:16,568.568 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:14:16,578.578 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:14:16,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:14:16,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:14:16,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:14:18,631.631 INFO    ] ================================================
[2026-10-18 07:14:18,647.647 INFO    ] Launching Daemon at Sun Oct 18 07:14:18 IST 2026
[2026-10-18 07:14:18,658.658 INFO    ] ================================================
[2026-10-18 07:14:19,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:14:19
[2026-10-18 07:14:19,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:14:20,099.099 INFO    ] Initializing speech engine...
[2026-10-18 07:14:20,111.111 INFO    ] 2026-10-18 07:14:20
[2026-10-18 07:14:20,359.359 INFO    ] 2026-10-18 07:14:20
[2026-10-18 07:14:20,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:14:20,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:14:20,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:14:20,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:14:20,826.826 INFO    ] time= 18/10/2026 07:14:20
[2026-10-18 07:14:20,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:14:20,937.937 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:14:21,090.090 INFO    ] No existing commands found in stream
[2026-10-18 07:14:26,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:14:26,106.106 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-18 07:14:30,123.123 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:14:30,126.126 INFO    ] Checking for system updates...
[2026-10-18 07:14:30,162.162 INFO    ] 200
[2026-10-18 07:14:30,164.164 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:14:30,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:14:30,218.218 INFO    ] No update needed
[2026-10-18 07:14:30,221.221 INFO    ] Checking for camera pi updates...
[2026-10-18 07:14:30,254.254 INFO    ] 200
[2026-10-18 07:14:30,257.257 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:14:30,297.297 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:14:40,311.311 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:14:40,346.346 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:14:40,356.356 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:14:40,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:14:40,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:14:40,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:14:42,410.410 INFO    ] ================================================
[2026-10-18 07:14:42,427.427 INFO    ] Launching Daemon at Sun Oct 18 07:14:42 IST 2026
[2026-10-18 07:14:42,439.439 INFO    ] ================================================
[2026-10-18 07:14:43,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:14:43
[2026-10-18 07:14:43,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:14:43,838.838 INFO    ] Initializing speech engine...
[2026-10-18 07:14:43,857.857 INFO    ] 2026-10-18 07:14:43
[2026-10-18 07:14:44,117.117 INFO    ] 2026-10-18 07:14:44
[2026-10-18 07:14:44,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:14:44,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:14:44,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:14:44,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:14:44,671.671 INFO    ] time= 18/10/2026 07:14:44
[2026-10-18 07:14:44,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:14:44,706.706 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:14:44,838.838 INFO    ] No existing commands found in stream
[2026-10-18 07:14:49,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:14:49,854.854 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-18 07:14:52,903.903 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:14:52,906.906 INFO    ] Checking for system updates...
[2026-10-18 07:14:52,941.941 INFO    ] 200
[2026-10-18 07:14:52,944.944 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:14:52,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:14:52,999.999 INFO    ] No update needed
[2026-10-18 07:14:53,002.002 INFO    ] Checking for camera pi updates...
[2026-10-18 07:14:53,036.036 INFO    ] 200
[2026-10-18 07:14:53,038.038 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:14:53,078.078 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:15:03,094.094 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:15:03,132.132 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:15:03,143.143 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:15:03,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:15:03,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:15:03,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:15:05,200.200 INFO    ] ================================================
[2026-10-18 07:15:05,215.215 INFO    ] Launching Daemon at Sun Oct 18 07:15:05 IST 2026
[2026-10-18 07:15:05,227.227 INFO    ] ================================================
[2026-10-18 07:15:05,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:15:05
[2026-10-18 07:15:06,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:15:06,652.652 INFO    ] Initializing speech engine...
[2026-10-18 07:15:06,658.658 INFO    ] 2026-10-18 07:15:06
[2026-10-18 07:15:06,963.963 INFO    ] 2026-10-18 07:15:06
[2026-10-18 07:15:07,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:15:07,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:15:07,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:15:07,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:15:07,390.390 INFO    ] time= 18/10/2026 07:15:07
[2026-10-18 07:15:07,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:15:07,402.402 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:15:07,536.536 INFO    ] No existing commands found in stream
[2026-10-18 07:15:12,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:15:12,563.563 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-18 07:15:15,736.736 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:15:15,739.739 INFO    ] Checking for system updates...
[2026-10-18 07:15:15,778.778 INFO    ] 200
[2026-10-18 07:15:15,781.781 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:15:15,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:15:15,836.836 INFO    ] No update needed
[2026-10-18 07:15:15,838.838 INFO    ] Checking for camera pi updates...
[2026-10-18 07:15:15,872.872 INFO    ] 200
[2026-10-18 07:15:15,874.874 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:15:15,914.914 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:15:25,928.928 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:15:25,964.964 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:15:25,974.974 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:15:25,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:15:25,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:15:25,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:15:28,031.031 INFO    ] ================================================
[2026-10-18 07:15:28,047.047 INFO    ] Launching Daemon at Sun Oct 18 07:15:28 IST 2026
[2026-10-18 07:15:28,060.060 INFO    ] ================================================
[2026-10-18 07:15:28,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:15:28
[2026-10-18 07:15:29,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:15:29,528.528 INFO    ] Initializing speech engine...
[2026-10-18 07:15:29,541.541 INFO    ] 2026-10-18 07:15:29
[2026-10-18 07:15:29,809.809 INFO    ] 2026-10-18 07:15:29
[2026-10-18 07:15:29,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:15:30,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:15:30,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:15:30,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:15:30,331.331 INFO    ] time= 18/10/2026 07:15:30
[2026-10-18 07:15:30,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:15:30,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:15:30,541.541 INFO    ] No existing commands found in stream
[2026-10-18 07:15:35,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:15:35,557.557 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-18 07:15:39,980.980 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:15:39,982.982 INFO    ] Checking for system updates...
[2026-10-18 07:15:40,019.019 INFO    ] 200
[2026-10-18 07:15:40,022.022 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:15:40,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:15:40,079.079 INFO    ] No update needed
[2026-10-18 07:15:40,082.082 INFO    ] Checking for camera pi updates...
[2026-10-18 07:15:40,117.117 INFO    ] 200
[2026-10-18 07:15:40,120.120 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:15:40,166.166 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:15:50,179.179 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:15:50,227.227 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:15:50,238.238 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:15:50,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:15:50,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:15:50,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:15:52,295.295 INFO    ] ================================================
[2026-10-18 07:15:52,311.311 INFO    ] Launching Daemon at Sun Oct 18 07:15:52 IST 2026
[2026-10-18 07:15:52,322.322 INFO    ] ================================================
[2026-10-18 07:15:52,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:15:52
[2026-10-18 07:15:53,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:15:53,787.787 INFO    ] Initializing speech engine...
[2026-10-18 07:15:53,796.796 INFO    ] 2026-10-18 07:15:53
[2026-10-18 07:15:54,053.053 INFO    ] 2026-10-18 07:15:54
[2026-10-18 07:15:54,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:15:54,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:15:54,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:15:54,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:15:54,597.597 INFO    ] time= 18/10/2026 07:15:54
[2026-10-18 07:15:54,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:15:54,620.620 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:15:54,752.752 INFO    ] No existing commands found in stream
[2026-10-18 07:15:59,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:15:59,774.774 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-18 07:16:01,828.828 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:16:01,838.838 INFO    ] Checking for system updates...
[2026-10-18 07:16:01,905.905 INFO    ] 200
[2026-10-18 07:16:01,909.909 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:16:01,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:16:01,974.974 INFO    ] No update needed
[2026-10-18 07:16:01,977.977 INFO    ] Checking for camera pi updates...
[2026-10-18 07:16:02,016.016 INFO    ] 200
[2026-10-18 07:16:02,019.019 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:16:02,067.067 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:16:12,083.083 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:16:12,122.122 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:16:12,133.133 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:16:12,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:16:12,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:16:12,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:16:14,188.188 INFO    ] ================================================
[2026-10-18 07:16:14,203.203 INFO    ] Launching Daemon at Sun Oct 18 07:16:14 IST 2026
[2026-10-18 07:16:14,215.215 INFO    ] ================================================
[2026-10-18 07:16:14,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:16:14
[2026-10-18 07:16:15,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:16:15,626.626 INFO    ] Initializing speech engine...
[2026-10-18 07:16:15,645.645 INFO    ] 2026-10-18 07:16:15
[2026-10-18 07:16:15,893.893 INFO    ] 2026-10-18 07:16:15
[2026-10-18 07:16:15,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:16:16,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:16:16,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:16:16,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:16:16,443.443 INFO    ] time= 18/10/2026 07:16:16
[2026-10-18 07:16:16,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:16:16,470.470 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:16:16,579.579 INFO    ] No existing commands found in stream
[2026-10-18 07:16:21,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:16:21,608.608 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-18 07:16:22,617.617 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:16:22,619.619 INFO    ] Checking for system updates...
[2026-10-18 07:16:22,658.658 INFO    ] 200
[2026-10-18 07:16:22,660.660 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:16:22,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:16:22,715.715 INFO    ] No update needed
[2026-10-18 07:16:22,717.717 INFO    ] Checking for camera pi updates...
[2026-10-18 07:16:22,750.750 INFO    ] 200
[2026-10-18 07:16:22,752.752 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:16:22,792.792 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:16:32,805.805 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:16:32,840.840 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:16:32,850.850 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:16:32,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:16:32,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:16:32,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:16:34,902.902 INFO    ] ================================================
[2026-10-18 07:16:34,917.917 INFO    ] Launching Daemon at Sun Oct 18 07:16:34 IST 2026
[2026-10-18 07:16:34,928.928 INFO    ] ================================================
[2026-10-18 07:16:35,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:16:35
[2026-10-18 07:16:36,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:16:36,497.497 INFO    ] Initializing speech engine...
[2026-10-18 07:16:36,506.506 INFO    ] 2026-10-18 07:16:36
[2026-10-18 07:16:36,778.778 INFO    ] 2026-10-18 07:16:36
[2026-10-18 07:16:36,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:16:37,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:16:37,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:16:37,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:16:37,290.290 INFO    ] time= 18/10/2026 07:16:37
[2026-10-18 07:16:37,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:16:37,351.351 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:16:37,497.497 INFO    ] No existing commands found in stream
[2026-10-18 07:16:42,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:16:42,516.516 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-18 07:16:43,884.884 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:16:43,887.887 INFO    ] Checking for system updates...
[2026-10-18 07:16:43,930.930 INFO    ] 200
[2026-10-18 07:16:43,933.933 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:16:43,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:16:43,989.989 INFO    ] No update needed
[2026-10-18 07:16:43,991.991 INFO    ] Checking for camera pi updates...
[2026-10-18 07:16:44,025.025 INFO    ] 200
[2026-10-18 07:16:44,028.028 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:16:44,069.069 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:16:54,082.082 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:16:54,117.117 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:16:54,126.126 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:16:54,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:16:54,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:16:54,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:16:56,179.179 INFO    ] ================================================
[2026-10-18 07:16:56,195.195 INFO    ] Launching Daemon at Sun Oct 18 07:16:56 IST 2026
[2026-10-18 07:16:56,207.207 INFO    ] ================================================
[2026-10-18 07:16:56,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:16:56
[2026-10-18 07:16:57,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:16:57,636.636 INFO    ] Initializing speech engine...
[2026-10-18 07:16:57,650.650 INFO    ] 2026-10-18 07:16:57
[2026-10-18 07:16:57,910.910 INFO    ] 2026-10-18 07:16:57
[2026-10-18 07:16:57,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:16:58,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:16:58,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:16:58,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:16:58,383.383 INFO    ] time= 18/10/2026 07:16:58
[2026-10-18 07:16:58,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:16:58,454.454 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:16:58,576.576 INFO    ] No existing commands found in stream
[2026-10-18 07:17:03,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:17:03,591.591 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-18 07:17:05,261.261 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:17:05,263.263 INFO    ] Checking for system updates...
[2026-10-18 07:17:05,301.301 INFO    ] 200
[2026-10-18 07:17:05,303.303 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:17:05,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:17:05,360.360 INFO    ] No update needed
[2026-10-18 07:17:05,363.363 INFO    ] Checking for camera pi updates...
[2026-10-18 07:17:05,401.401 INFO    ] 200
[2026-10-18 07:17:05,403.403 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:17:05,447.447 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:17:15,463.463 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:17:15,503.503 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:17:15,514.514 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:17:15,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:17:15,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:17:15,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:17:17,569.569 INFO    ] ================================================
[2026-10-18 07:17:17,585.585 INFO    ] Launching Daemon at Sun Oct 18 07:17:17 IST 2026
[2026-10-18 07:17:17,597.597 INFO    ] ================================================
[2026-10-18 07:17:18,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:17:18
[2026-10-18 07:17:18,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:17:19,006.006 INFO    ] Initializing speech engine...
[2026-10-18 07:17:19,012.012 INFO    ] 2026-10-18 07:17:19
[2026-10-18 07:17:19,308.308 INFO    ] 2026-10-18 07:17:19
[2026-10-18 07:17:19,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:17:19,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:17:19,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:17:19,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:17:19,861.861 INFO    ] time= 18/10/2026 07:17:19
[2026-10-18 07:17:19,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:17:19,886.886 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:17:20,017.017 INFO    ] No existing commands found in stream
[2026-10-18 07:17:25,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:17:25,039.039 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-18 07:17:27,020.020 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:17:27,023.023 INFO    ] Checking for system updates...
[2026-10-18 07:17:27,059.059 INFO    ] 200
[2026-10-18 07:17:27,061.061 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:17:27,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:17:27,117.117 INFO    ] No update needed
[2026-10-18 07:17:27,120.120 INFO    ] Checking for camera pi updates...
[2026-10-18 07:17:27,153.153 INFO    ] 200
[2026-10-18 07:17:27,156.156 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:17:27,196.196 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:17:37,212.212 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:17:37,247.247 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:17:37,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:17:37,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:17:37,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:17:37,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:17:39,310.310 INFO    ] ================================================
[2026-10-18 07:17:39,326.326 INFO    ] Launching Daemon at Sun Oct 18 07:17:39 IST 2026
[2026-10-18 07:17:39,337.337 INFO    ] ================================================
[2026-10-18 07:17:39,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:17:39
[2026-10-18 07:17:40,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:17:40,974.974 INFO    ] Initializing speech engine...
[2026-10-18 07:17:40,983.983 INFO    ] 2026-10-18 07:17:40
[2026-10-18 07:17:41,298.298 INFO    ] 2026-10-18 07:17:41
[2026-10-18 07:17:41,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:17:41,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:17:41,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:17:41,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:17:41,824.824 INFO    ] time= 18/10/2026 07:17:41
[2026-10-18 07:17:41,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:17:41,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:17:41,985.985 INFO    ] No existing commands found in stream
[2026-10-18 07:17:47,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:17:47,014.014 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-18 07:17:50,110.110 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:17:50,114.114 INFO    ] Checking for system updates...
[2026-10-18 07:17:50,157.157 INFO    ] 200
[2026-10-18 07:17:50,160.160 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:17:50,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:17:50,222.222 INFO    ] No update needed
[2026-10-18 07:17:50,225.225 INFO    ] Checking for camera pi updates...
[2026-10-18 07:17:50,266.266 INFO    ] 200
[2026-10-18 07:17:50,269.269 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:17:50,315.315 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:18:00,331.331 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:18:00,372.372 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:18:00,383.383 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:18:00,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:18:00,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:18:00,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:18:02,447.447 INFO    ] ================================================
[2026-10-18 07:18:02,468.468 INFO    ] Launching Daemon at Sun Oct 18 07:18:02 IST 2026
[2026-10-18 07:18:02,484.484 INFO    ] ================================================
[2026-10-18 07:18:03,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:18:03
[2026-10-18 07:18:03,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:18:04,132.132 INFO    ] Initializing speech engine...
[2026-10-18 07:18:04,145.145 INFO    ] 2026-10-18 07:18:04
[2026-10-18 07:18:04,410.410 INFO    ] 2026-10-18 07:18:04
[2026-10-18 07:18:04,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:18:04,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:18:04,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:18:04,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:18:04,906.906 INFO    ] time= 18/10/2026 07:18:04
[2026-10-18 07:18:04,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:18:04,949.949 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:18:05,073.073 INFO    ] No existing commands found in stream
[2026-10-18 07:18:10,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:18:10,106.106 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-18 07:18:13,734.734 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:18:13,737.737 INFO    ] Checking for system updates...
[2026-10-18 07:18:13,773.773 INFO    ] 200
[2026-10-18 07:18:13,775.775 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:18:13,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:18:13,830.830 INFO    ] No update needed
[2026-10-18 07:18:13,833.833 INFO    ] Checking for camera pi updates...
[2026-10-18 07:18:13,867.867 INFO    ] 200
[2026-10-18 07:18:13,870.870 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:18:13,911.911 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:18:23,927.927 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:18:23,967.967 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:18:23,979.979 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:18:23,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:18:23,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:18:23,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:18:26,034.034 INFO    ] ================================================
[2026-10-18 07:18:26,049.049 INFO    ] Launching Daemon at Sun Oct 18 07:18:26 IST 2026
[2026-10-18 07:18:26,059.059 INFO    ] ================================================
[2026-10-18 07:18:26,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:18:26
[2026-10-18 07:18:27,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:18:27,462.462 INFO    ] Initializing speech engine...
[2026-10-18 07:18:27,483.483 INFO    ] 2026-10-18 07:18:27
[2026-10-18 07:18:27,744.744 INFO    ] 2026-10-18 07:18:27
[2026-10-18 07:18:27,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:18:28,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:18:28,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:18:28,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:18:28,310.310 INFO    ] time= 18/10/2026 07:18:28
[2026-10-18 07:18:28,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:18:28,335.335 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:18:28,473.473 INFO    ] No existing commands found in stream
[2026-10-18 07:18:33,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:18:33,501.501 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-18 07:18:37,060.060 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:18:37,063.063 INFO    ] Checking for system updates...
[2026-10-18 07:18:37,098.098 INFO    ] 200
[2026-10-18 07:18:37,101.101 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:18:37,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:18:37,156.156 INFO    ] No update needed
[2026-10-18 07:18:37,158.158 INFO    ] Checking for camera pi updates...
[2026-10-18 07:18:37,196.196 INFO    ] 200
[2026-10-18 07:18:37,198.198 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:18:37,243.243 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:18:47,258.258 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:18:47,293.293 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:18:47,302.302 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:18:47,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:18:47,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:18:47,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:18:49,357.357 INFO    ] ================================================
[2026-10-18 07:18:49,372.372 INFO    ] Launching Daemon at Sun Oct 18 07:18:49 IST 2026
[2026-10-18 07:18:49,383.383 INFO    ] ================================================
[2026-10-18 07:18:49,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:18:49
[2026-10-18 07:18:50,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:18:50,809.809 INFO    ] Initializing speech engine...
[2026-10-18 07:18:50,829.829 INFO    ] 2026-10-18 07:18:50
[2026-10-18 07:18:51,079.079 INFO    ] 2026-10-18 07:18:51
[2026-10-18 07:18:51,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:18:51,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:18:51,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:18:51,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:18:51,556.556 INFO    ] time= 18/10/2026 07:18:51
[2026-10-18 07:18:51,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:18:51,655.655 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:18:51,752.752 INFO    ] No existing commands found in stream
[2026-10-18 07:18:56,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:18:56,767.767 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-18 07:18:58,199.199 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:18:58,202.202 INFO    ] Checking for system updates...
[2026-10-18 07:18:58,241.241 INFO    ] 200
[2026-10-18 07:18:58,244.244 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:18:58,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:18:58,300.300 INFO    ] No update needed
[2026-10-18 07:18:58,302.302 INFO    ] Checking for camera pi updates...
[2026-10-18 07:18:58,341.341 INFO    ] 200
[2026-10-18 07:18:58,344.344 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:18:58,387.387 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:19:08,403.403 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:19:08,446.446 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:19:08,458.458 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:19:08,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:19:08,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:19:08,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:19:10,518.518 INFO    ] ================================================
[2026-10-18 07:19:10,534.534 INFO    ] Launching Daemon at Sun Oct 18 07:19:10 IST 2026
[2026-10-18 07:19:10,545.545 INFO    ] ================================================
[2026-10-18 07:19:11,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:19:11
[2026-10-18 07:19:11,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:19:11,965.965 INFO    ] Initializing speech engine...
[2026-10-18 07:19:11,974.974 INFO    ] 2026-10-18 07:19:11
[2026-10-18 07:19:12,233.233 INFO    ] 2026-10-18 07:19:12
[2026-10-18 07:19:12,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:19:12,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:19:12,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:19:12,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:19:12,715.715 INFO    ] time= 18/10/2026 07:19:12
[2026-10-18 07:19:12,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:19:12,732.732 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:19:12,820.820 INFO    ] No existing commands found in stream
[2026-10-18 07:19:17,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:19:17,839.839 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-18 07:19:21,273.273 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:19:21,276.276 INFO    ] Checking for system updates...
[2026-10-18 07:19:21,312.312 INFO    ] 200
[2026-10-18 07:19:21,315.315 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:19:21,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:19:21,373.373 INFO    ] No update needed
[2026-10-18 07:19:21,375.375 INFO    ] Checking for camera pi updates...
[2026-10-18 07:19:21,415.415 INFO    ] 200
[2026-10-18 07:19:21,418.418 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:19:21,464.464 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:19:31,482.482 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:19:31,562.562 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:19:31,574.574 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:19:31,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:19:31,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:19:31,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:19:33,635.635 INFO    ] ================================================
[2026-10-18 07:19:33,651.651 INFO    ] Launching Daemon at Sun Oct 18 07:19:33 IST 2026
[2026-10-18 07:19:33,662.662 INFO    ] ================================================
[2026-10-18 07:19:34,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:19:34
[2026-10-18 07:19:34,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:19:35,303.303 INFO    ] Initializing speech engine...
[2026-10-18 07:19:35,311.311 INFO    ] 2026-10-18 07:19:35
[2026-10-18 07:19:35,596.596 INFO    ] 2026-10-18 07:19:35
[2026-10-18 07:19:35,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:19:35,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:19:35,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:19:36,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:19:36,135.135 INFO    ] time= 18/10/2026 07:19:36
[2026-10-18 07:19:36,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:19:36,185.185 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:19:36,319.319 INFO    ] No existing commands found in stream
[2026-10-18 07:19:41,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:19:41,359.359 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-18 07:19:43,504.504 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:19:43,508.508 INFO    ] Checking for system updates...
[2026-10-18 07:19:43,548.548 INFO    ] 200
[2026-10-18 07:19:43,551.551 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:19:43,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:19:43,606.606 INFO    ] No update needed
[2026-10-18 07:19:43,608.608 INFO    ] Checking for camera pi updates...
[2026-10-18 07:19:43,641.641 INFO    ] 200
[2026-10-18 07:19:43,644.644 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:19:43,685.685 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:19:53,700.700 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:19:53,735.735 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:19:53,744.744 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:19:53,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:19:53,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:19:53,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:19:55,796.796 INFO    ] ================================================
[2026-10-18 07:19:55,812.812 INFO    ] Launching Daemon at Sun Oct 18 07:19:55 IST 2026
[2026-10-18 07:19:55,822.822 INFO    ] ================================================
[2026-10-18 07:19:56,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:19:56
[2026-10-18 07:19:56,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:19:57,241.241 INFO    ] Initializing speech engine...
[2026-10-18 07:19:57,250.250 INFO    ] 2026-10-18 07:19:57
[2026-10-18 07:19:57,495.495 INFO    ] 2026-10-18 07:19:57
[2026-10-18 07:19:57,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:19:57,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:19:57,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:19:57,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:19:57,974.974 INFO    ] time= 18/10/2026 07:19:57
[2026-10-18 07:19:58,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:19:58,079.079 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:19:58,159.159 INFO    ] No existing commands found in stream
[2026-10-18 07:20:03,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:20:03,192.192 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-18 07:20:08,018.018 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:20:08,020.020 INFO    ] Checking for system updates...
[2026-10-18 07:20:08,056.056 INFO    ] 200
[2026-10-18 07:20:08,058.058 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:20:08,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:20:08,112.112 INFO    ] No update needed
[2026-10-18 07:20:08,115.115 INFO    ] Checking for camera pi updates...
[2026-10-18 07:20:08,148.148 INFO    ] 200
[2026-10-18 07:20:08,150.150 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:20:08,195.195 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:20:18,211.211 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:20:18,246.246 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:20:18,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:20:18,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:20:18,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:20:18,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:20:20,309.309 INFO    ] ================================================
[2026-10-18 07:20:20,324.324 INFO    ] Launching Daemon at Sun Oct 18 07:20:20 IST 2026
[2026-10-18 07:20:20,336.336 INFO    ] ================================================
[2026-10-18 07:20:20,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:20:20
[2026-10-18 07:20:21,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:20:21,968.968 INFO    ] Initializing speech engine...
[2026-10-18 07:20:21,982.982 INFO    ] 2026-10-18 07:20:21
[2026-10-18 07:20:22,270.270 INFO    ] 2026-10-18 07:20:22
[2026-10-18 07:20:22,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:20:22,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:20:22,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:20:22,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:20:22,801.801 INFO    ] time= 18/10/2026 07:20:22
[2026-10-18 07:20:22,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:20:22,837.837 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:20:22,961.961 INFO    ] No existing commands found in stream
[2026-10-18 07:20:28,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:20:28,006.006 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-18 07:20:28,884.884 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:20:28,887.887 INFO    ] Checking for system updates...
[2026-10-18 07:20:28,924.924 INFO    ] 200
[2026-10-18 07:20:28,928.928 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:20:28,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:20:28,983.983 INFO    ] No update needed
[2026-10-18 07:20:28,986.986 INFO    ] Checking for camera pi updates...
[2026-10-18 07:20:29,023.023 INFO    ] 200
[2026-10-18 07:20:29,025.025 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:20:29,070.070 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:20:39,084.084 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:20:39,119.119 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:20:39,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:20:39,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:20:39,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:20:39,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:20:41,181.181 INFO    ] ================================================
[2026-10-18 07:20:41,196.196 INFO    ] Launching Daemon at Sun Oct 18 07:20:41 IST 2026
[2026-10-18 07:20:41,207.207 INFO    ] ================================================
[2026-10-18 07:20:41,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:20:41
[2026-10-18 07:20:42,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:20:42,634.634 INFO    ] Initializing speech engine...
[2026-10-18 07:20:42,643.643 INFO    ] 2026-10-18 07:20:42
[2026-10-18 07:20:42,889.889 INFO    ] 2026-10-18 07:20:42
[2026-10-18 07:20:42,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:20:43,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:20:43,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:20:43,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:20:43,446.446 INFO    ] time= 18/10/2026 07:20:43
[2026-10-18 07:20:43,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:20:43,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:20:43,597.597 INFO    ] No existing commands found in stream
[2026-10-18 07:20:48,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:20:48,614.614 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-18 07:20:50,681.681 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:20:50,684.684 INFO    ] Checking for system updates...
[2026-10-18 07:20:50,720.720 INFO    ] 200
[2026-10-18 07:20:50,722.722 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:20:50,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:20:50,778.778 INFO    ] No update needed
[2026-10-18 07:20:50,780.780 INFO    ] Checking for camera pi updates...
[2026-10-18 07:20:50,814.814 INFO    ] 200
[2026-10-18 07:20:50,817.817 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:20:50,857.857 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:21:00,872.872 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:21:00,908.908 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:21:00,918.918 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:21:00,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:21:00,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:21:00,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:21:02,987.987 INFO    ] ================================================
[2026-10-18 07:21:03,003.003 INFO    ] Launching Daemon at Sun Oct 18 07:21:02 IST 2026
[2026-10-18 07:21:03,015.015 INFO    ] ================================================
[2026-10-18 07:21:03,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:21:03
[2026-10-18 07:21:04,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:21:04,490.490 INFO    ] Initializing speech engine...
[2026-10-18 07:21:04,496.496 INFO    ] 2026-10-18 07:21:04
[2026-10-18 07:21:04,792.792 INFO    ] 2026-10-18 07:21:04
[2026-10-18 07:21:04,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:21:05,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:21:05,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:21:05,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:21:05,297.297 INFO    ] time= 18/10/2026 07:21:05
[2026-10-18 07:21:05,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:21:05,416.416 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:21:05,518.518 INFO    ] No existing commands found in stream
[2026-10-18 07:21:10,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:21:10,557.557 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-18 07:21:14,119.119 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:21:14,121.121 INFO    ] Checking for system updates...
[2026-10-18 07:21:14,158.158 INFO    ] 200
[2026-10-18 07:21:14,160.160 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:21:14,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:21:14,217.217 INFO    ] No update needed
[2026-10-18 07:21:14,220.220 INFO    ] Checking for camera pi updates...
[2026-10-18 07:21:14,255.255 INFO    ] 200
[2026-10-18 07:21:14,257.257 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:21:14,299.299 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:21:24,315.315 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:21:24,355.355 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:21:24,367.367 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:21:24,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:21:24,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:21:24,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:21:26,426.426 INFO    ] ================================================
[2026-10-18 07:21:26,442.442 INFO    ] Launching Daemon at Sun Oct 18 07:21:26 IST 2026
[2026-10-18 07:21:26,453.453 INFO    ] ================================================
[2026-10-18 07:21:27,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:21:27
[2026-10-18 07:21:27,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:21:28,093.093 INFO    ] Initializing speech engine...
[2026-10-18 07:21:28,106.106 INFO    ] 2026-10-18 07:21:28
[2026-10-18 07:21:28,418.418 INFO    ] 2026-10-18 07:21:28
[2026-10-18 07:21:28,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:21:28,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:21:28,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:21:28,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:21:28,923.923 INFO    ] time= 18/10/2026 07:21:28
[2026-10-18 07:21:28,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:21:28,973.973 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:21:29,135.135 INFO    ] No existing commands found in stream
[2026-10-18 07:21:34,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:21:34,169.169 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-18 07:21:36,289.289 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:21:36,292.292 INFO    ] Checking for system updates...
[2026-10-18 07:21:36,333.333 INFO    ] 200
[2026-10-18 07:21:36,335.335 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:21:36,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:21:36,397.397 INFO    ] No update needed
[2026-10-18 07:21:36,399.399 INFO    ] Checking for camera pi updates...
[2026-10-18 07:21:36,437.437 INFO    ] 200
[2026-10-18 07:21:36,439.439 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:21:36,479.479 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:21:46,491.491 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:21:46,527.527 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:21:46,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:21:46,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:21:46,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:21:46,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:21:48,591.591 INFO    ] ================================================
[2026-10-18 07:21:48,607.607 INFO    ] Launching Daemon at Sun Oct 18 07:21:48 IST 2026
[2026-10-18 07:21:48,618.618 INFO    ] ================================================
[2026-10-18 07:21:49,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:21:49
[2026-10-18 07:21:49,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:21:50,054.054 INFO    ] Initializing speech engine...
[2026-10-18 07:21:50,069.069 INFO    ] 2026-10-18 07:21:50
[2026-10-18 07:21:50,341.341 INFO    ] 2026-10-18 07:21:50
[2026-10-18 07:21:50,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:21:50,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:21:50,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:21:50,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:21:50,760.760 INFO    ] time= 18/10/2026 07:21:50
[2026-10-18 07:21:50,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:21:50,820.820 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:21:50,968.968 INFO    ] No existing commands found in stream
[2026-10-18 07:21:55,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:21:55,994.994 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-18 07:21:58,609.609 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:21:58,611.611 INFO    ] Checking for system updates...
[2026-10-18 07:21:58,647.647 INFO    ] 200
[2026-10-18 07:21:58,649.649 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:21:58,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:21:58,704.704 INFO    ] No update needed
[2026-10-18 07:21:58,707.707 INFO    ] Checking for camera pi updates...
[2026-10-18 07:21:58,740.740 INFO    ] 200
[2026-10-18 07:21:58,742.742 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:21:58,782.782 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:22:08,796.796 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:22:08,830.830 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:22:08,840.840 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:22:08,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:22:08,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:22:08,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:22:10,891.891 INFO    ] ================================================
[2026-10-18 07:22:10,907.907 INFO    ] Launching Daemon at Sun Oct 18 07:22:10 IST 2026
[2026-10-18 07:22:10,918.918 INFO    ] ================================================
[2026-10-18 07:22:11,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:22:11
[2026-10-18 07:22:12,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:22:12,484.484 INFO    ] Initializing speech engine...
[2026-10-18 07:22:12,491.491 INFO    ] 2026-10-18 07:22:12
[2026-10-18 07:22:12,759.759 INFO    ] 2026-10-18 07:22:12
[2026-10-18 07:22:12,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:22:13,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:22:13,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:22:13,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:22:13,338.338 INFO    ] time= 18/10/2026 07:22:13
[2026-10-18 07:22:13,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:22:13,366.366 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:22:13,500.500 INFO    ] No existing commands found in stream
[2026-10-18 07:22:18,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:22:18,523.523 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-18 07:22:19,195.195 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:22:19,198.198 INFO    ] Checking for system updates...
[2026-10-18 07:22:19,234.234 INFO    ] 200
[2026-10-18 07:22:19,237.237 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:22:19,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:22:19,292.292 INFO    ] No update needed
[2026-10-18 07:22:19,295.295 INFO    ] Checking for camera pi updates...
[2026-10-18 07:22:19,328.328 INFO    ] 200
[2026-10-18 07:22:19,330.330 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:22:19,370.370 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:22:29,386.386 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:22:29,424.424 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:22:29,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:22:29,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:22:29,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:22:29,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:22:31,491.491 INFO    ] ================================================
[2026-10-18 07:22:31,508.508 INFO    ] Launching Daemon at Sun Oct 18 07:22:31 IST 2026
[2026-10-18 07:22:31,520.520 INFO    ] ================================================
[2026-10-18 07:22:32,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:22:32
[2026-10-18 07:22:32,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:22:33,026.026 INFO    ] Initializing speech engine...
[2026-10-18 07:22:33,040.040 INFO    ] 2026-10-18 07:22:33
[2026-10-18 07:22:33,319.319 INFO    ] 2026-10-18 07:22:33
[2026-10-18 07:22:33,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:22:33,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:22:33,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:22:33,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:22:33,855.855 INFO    ] time= 18/10/2026 07:22:33
[2026-10-18 07:22:33,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:22:33,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:22:34,014.014 INFO    ] No existing commands found in stream
[2026-10-18 07:22:39,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:22:39,047.047 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-18 07:22:43,421.421 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:22:43,423.423 INFO    ] Checking for system updates...
[2026-10-18 07:22:43,465.465 INFO    ] 200
[2026-10-18 07:22:43,468.468 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:22:43,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:22:43,524.524 INFO    ] No update needed
[2026-10-18 07:22:43,526.526 INFO    ] Checking for camera pi updates...
[2026-10-18 07:22:43,560.560 INFO    ] 200
[2026-10-18 07:22:43,562.562 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:22:43,610.610 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:22:53,625.625 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:22:53,659.659 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:22:53,669.669 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:22:53,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:22:53,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:22:53,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:22:55,721.721 INFO    ] ================================================
[2026-10-18 07:22:55,737.737 INFO    ] Launching Daemon at Sun Oct 18 07:22:55 IST 2026
[2026-10-18 07:22:55,748.748 INFO    ] ================================================
[2026-10-18 07:22:56,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:22:56
[2026-10-18 07:22:57,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:22:57,335.335 INFO    ] Initializing speech engine...
[2026-10-18 07:22:57,342.342 INFO    ] 2026-10-18 07:22:57
[2026-10-18 07:22:57,654.654 INFO    ] 2026-10-18 07:22:57
[2026-10-18 07:22:57,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:22:57,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:22:57,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:22:58,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:22:58,159.159 INFO    ] time= 18/10/2026 07:22:58
[2026-10-18 07:22:58,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:22:58,209.209 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:22:58,347.347 INFO    ] No existing commands found in stream
[2026-10-18 07:23:03,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:23:03,381.381 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-18 07:23:06,700.700 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:23:06,703.703 INFO    ] Checking for system updates...
[2026-10-18 07:23:06,744.744 INFO    ] 200
[2026-10-18 07:23:06,747.747 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:23:06,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:23:06,809.809 INFO    ] No update needed
[2026-10-18 07:23:06,812.812 INFO    ] Checking for camera pi updates...
[2026-10-18 07:23:06,849.849 INFO    ] 200
[2026-10-18 07:23:06,852.852 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:23:06,892.892 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:23:16,907.907 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:23:16,942.942 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:23:16,951.951 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:23:16,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:23:16,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:23:16,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:23:19,003.003 INFO    ] ================================================
[2026-10-18 07:23:19,019.019 INFO    ] Launching Daemon at Sun Oct 18 07:23:19 IST 2026
[2026-10-18 07:23:19,031.031 INFO    ] ================================================
[2026-10-18 07:23:19,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:23:19
[2026-10-18 07:23:20,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:23:20,442.442 INFO    ] Initializing speech engine...
[2026-10-18 07:23:20,456.456 INFO    ] 2026-10-18 07:23:20
[2026-10-18 07:23:20,738.738 INFO    ] 2026-10-18 07:23:20
[2026-10-18 07:23:20,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:23:20,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:23:20,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:23:21,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:23:21,160.160 INFO    ] time= 18/10/2026 07:23:21
[2026-10-18 07:23:21,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:23:21,233.233 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:23:21,368.368 INFO    ] No existing commands found in stream
[2026-10-18 07:23:26,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:23:26,390.390 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-18 07:23:29,005.005 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:23:29,008.008 INFO    ] Checking for system updates...
[2026-10-18 07:23:29,043.043 INFO    ] 200
[2026-10-18 07:23:29,046.046 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:23:29,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:23:29,101.101 INFO    ] No update needed
[2026-10-18 07:23:29,103.103 INFO    ] Checking for camera pi updates...
[2026-10-18 07:23:29,140.140 INFO    ] 200
[2026-10-18 07:23:29,142.142 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:23:29,187.187 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:23:39,202.202 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:23:39,237.237 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:23:39,246.246 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:23:39,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:23:39,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:23:39,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:23:41,299.299 INFO    ] ================================================
[2026-10-18 07:23:41,314.314 INFO    ] Launching Daemon at Sun Oct 18 07:23:41 IST 2026
[2026-10-18 07:23:41,325.325 INFO    ] ================================================
[2026-10-18 07:23:41,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:23:41
[2026-10-18 07:23:42,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:23:42,947.947 INFO    ] Initializing speech engine...
[2026-10-18 07:23:42,960.960 INFO    ] 2026-10-18 07:23:42
[2026-10-18 07:23:43,268.268 INFO    ] 2026-10-18 07:23:43
[2026-10-18 07:23:43,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:23:43,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:23:43,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:23:43,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:23:43,816.816 INFO    ] time= 18/10/2026 07:23:43
[2026-10-18 07:23:43,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:23:43,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:23:44,024.024 INFO    ] No existing commands found in stream
[2026-10-18 07:23:49,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:23:49,041.041 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-18 07:23:49,947.947 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:23:49,950.950 INFO    ] Checking for system updates...
[2026-10-18 07:23:49,988.988 INFO    ] 200
[2026-10-18 07:23:49,991.991 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:23:50,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:23:50,047.047 INFO    ] No update needed
[2026-10-18 07:23:50,049.049 INFO    ] Checking for camera pi updates...
[2026-10-18 07:23:50,087.087 INFO    ] 200
[2026-10-18 07:23:50,089.089 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:23:50,130.130 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:24:00,144.144 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:24:00,180.180 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:24:00,189.189 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:24:00,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:24:00,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:24:00,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:24:02,254.254 INFO    ] ================================================
[2026-10-18 07:24:02,274.274 INFO    ] Launching Daemon at Sun Oct 18 07:24:02 IST 2026
[2026-10-18 07:24:02,290.290 INFO    ] ================================================
[2026-10-18 07:24:02,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:24:02
[2026-10-18 07:24:03,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:24:03,799.799 INFO    ] Initializing speech engine...
[2026-10-18 07:24:03,821.821 INFO    ] 2026-10-18 07:24:03
[2026-10-18 07:24:04,074.074 INFO    ] 2026-10-18 07:24:04
[2026-10-18 07:24:04,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:24:04,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:24:04,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:24:04,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:24:04,555.555 INFO    ] time= 18/10/2026 07:24:04
[2026-10-18 07:24:04,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:24:04,642.642 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:24:04,770.770 INFO    ] No existing commands found in stream
[2026-10-18 07:24:09,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:24:09,800.800 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-18 07:24:12,000.000 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:24:12,002.002 INFO    ] Checking for system updates...
[2026-10-18 07:24:12,038.038 INFO    ] 200
[2026-10-18 07:24:12,040.040 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:24:12,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:24:12,094.094 INFO    ] No update needed
[2026-10-18 07:24:12,097.097 INFO    ] Checking for camera pi updates...
[2026-10-18 07:24:12,134.134 INFO    ] 200
[2026-10-18 07:24:12,137.137 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:24:12,181.181 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:24:22,192.192 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:24:22,232.232 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:24:22,243.243 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:24:22,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:24:22,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:24:22,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:24:24,300.300 INFO    ] ================================================
[2026-10-18 07:24:24,315.315 INFO    ] Launching Daemon at Sun Oct 18 07:24:24 IST 2026
[2026-10-18 07:24:24,325.325 INFO    ] ================================================
[2026-10-18 07:24:24,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:24:24
[2026-10-18 07:24:25,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:24:25,812.812 INFO    ] Initializing speech engine...
[2026-10-18 07:24:25,822.822 INFO    ] 2026-10-18 07:24:25
[2026-10-18 07:24:26,093.093 INFO    ] 2026-10-18 07:24:26
[2026-10-18 07:24:26,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:24:26,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:24:26,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:24:26,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:24:26,514.514 INFO    ] time= 18/10/2026 07:24:26
[2026-10-18 07:24:26,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:24:26,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:24:26,697.697 INFO    ] No existing commands found in stream
[2026-10-18 07:24:31,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:24:31,721.721 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-18 07:24:36,026.026 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:24:36,028.028 INFO    ] Checking for system updates...
[2026-10-18 07:24:36,064.064 INFO    ] 200
[2026-10-18 07:24:36,066.066 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:24:36,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:24:36,128.128 INFO    ] No update needed
[2026-10-18 07:24:36,131.131 INFO    ] Checking for camera pi updates...
[2026-10-18 07:24:36,168.168 INFO    ] 200
[2026-10-18 07:24:36,170.170 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:24:36,215.215 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:24:46,230.230 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:24:46,266.266 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:24:46,276.276 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:24:46,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:24:46,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:24:46,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:24:48,330.330 INFO    ] ================================================
[2026-10-18 07:24:48,345.345 INFO    ] Launching Daemon at Sun Oct 18 07:24:48 IST 2026
[2026-10-18 07:24:48,356.356 INFO    ] ================================================
[2026-10-18 07:24:48,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:24:48
[2026-10-18 07:24:49,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:24:49,816.816 INFO    ] Initializing speech engine...
[2026-10-18 07:24:49,823.823 INFO    ] 2026-10-18 07:24:49
[2026-10-18 07:24:50,083.083 INFO    ] 2026-10-18 07:24:50
[2026-10-18 07:24:50,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:24:50,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:24:50,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:24:50,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:24:50,558.558 INFO    ] time= 18/10/2026 07:24:50
[2026-10-18 07:24:50,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:24:50,638.638 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:24:50,774.774 INFO    ] No existing commands found in stream
[2026-10-18 07:24:55,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:24:55,798.798 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-18 07:24:58,685.685 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:24:58,688.688 INFO    ] Checking for system updates...
[2026-10-18 07:24:58,725.725 INFO    ] 200
[2026-10-18 07:24:58,728.728 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:24:58,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:24:58,784.784 INFO    ] No update needed
[2026-10-18 07:24:58,787.787 INFO    ] Checking for camera pi updates...
[2026-10-18 07:24:58,824.824 INFO    ] 200
[2026-10-18 07:24:58,827.827 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:24:58,868.868 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:25:08,880.880 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:25:08,916.916 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:25:08,926.926 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:25:08,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:25:08,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:25:08,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:25:10,979.979 INFO    ] ================================================
[2026-10-18 07:25:10,994.994 INFO    ] Launching Daemon at Sun Oct 18 07:25:10 IST 2026
[2026-10-18 07:25:11,004.004 INFO    ] ================================================
[2026-10-18 07:25:11,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:25:11
[2026-10-18 07:25:12,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:25:12,419.419 INFO    ] Initializing speech engine...
[2026-10-18 07:25:12,428.428 INFO    ] 2026-10-18 07:25:12
[2026-10-18 07:25:12,673.673 INFO    ] 2026-10-18 07:25:12
[2026-10-18 07:25:12,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:25:12,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:25:12,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:25:13,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:25:13,199.199 INFO    ] time= 18/10/2026 07:25:13
[2026-10-18 07:25:13,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:25:13,237.237 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:25:13,387.387 INFO    ] No existing commands found in stream
[2026-10-18 07:25:18,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:25:18,420.420 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-18 07:25:21,893.893 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:25:21,895.895 INFO    ] Checking for system updates...
[2026-10-18 07:25:21,933.933 INFO    ] 200
[2026-10-18 07:25:21,936.936 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:25:21,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:25:21,994.994 INFO    ] No update needed
[2026-10-18 07:25:21,997.997 INFO    ] Checking for camera pi updates...
[2026-10-18 07:25:22,030.030 INFO    ] 200
[2026-10-18 07:25:22,032.032 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:25:22,073.073 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:25:32,088.088 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:25:32,125.125 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:25:32,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:25:32,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:25:32,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:25:32,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:25:34,191.191 INFO    ] ================================================
[2026-10-18 07:25:34,206.206 INFO    ] Launching Daemon at Sun Oct 18 07:25:34 IST 2026
[2026-10-18 07:25:34,216.216 INFO    ] ================================================
[2026-10-18 07:25:34,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:25:34
[2026-10-18 07:25:35,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:25:35,674.674 INFO    ] Initializing speech engine...
[2026-10-18 07:25:35,681.681 INFO    ] 2026-10-18 07:25:35
[2026-10-18 07:25:35,942.942 INFO    ] 2026-10-18 07:25:35
[2026-10-18 07:25:35,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:25:36,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:25:36,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:25:36,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:25:36,486.486 INFO    ] time= 18/10/2026 07:25:36
[2026-10-18 07:25:36,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:25:36,513.513 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:25:36,661.661 INFO    ] No existing commands found in stream
[2026-10-18 07:25:41,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:25:41,695.695 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-18 07:25:42,648.648 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:25:42,650.650 INFO    ] Checking for system updates...
[2026-10-18 07:25:42,686.686 INFO    ] 200
[2026-10-18 07:25:42,688.688 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:25:42,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:25:42,749.749 INFO    ] No update needed
[2026-10-18 07:25:42,752.752 INFO    ] Checking for camera pi updates...
[2026-10-18 07:25:42,788.788 INFO    ] 200
[2026-10-18 07:25:42,790.790 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:25:42,838.838 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:25:52,853.853 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:25:52,888.888 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:25:52,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:25:52,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:25:52,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:25:52,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:25:54,949.949 INFO    ] ================================================
[2026-10-18 07:25:54,964.964 INFO    ] Launching Daemon at Sun Oct 18 07:25:54 IST 2026
[2026-10-18 07:25:54,975.975 INFO    ] ================================================
[2026-10-18 07:25:55,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:25:55
[2026-10-18 07:25:56,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:25:56,426.426 INFO    ] Initializing speech engine...
[2026-10-18 07:25:56,437.437 INFO    ] 2026-10-18 07:25:56
[2026-10-18 07:25:56,698.698 INFO    ] 2026-10-18 07:25:56
[2026-10-18 07:25:56,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:25:56,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:25:56,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:25:57,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:25:57,243.243 INFO    ] time= 18/10/2026 07:25:57
[2026-10-18 07:25:57,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:25:57,279.279 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:25:57,397.397 INFO    ] No existing commands found in stream
[2026-10-18 07:26:02,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:26:02,421.421 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-18 07:26:06,784.784 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:26:06,786.786 INFO    ] Checking for system updates...
[2026-10-18 07:26:06,827.827 INFO    ] 200
[2026-10-18 07:26:06,829.829 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:26:06,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:26:06,897.897 INFO    ] No update needed
[2026-10-18 07:26:06,900.900 INFO    ] Checking for camera pi updates...
[2026-10-18 07:26:06,933.933 INFO    ] 200
[2026-10-18 07:26:06,935.935 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:26:06,976.976 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:26:16,990.990 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:26:17,026.026 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:26:17,036.036 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:26:17,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:26:17,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:26:17,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:26:19,088.088 INFO    ] ================================================
[2026-10-18 07:26:19,103.103 INFO    ] Launching Daemon at Sun Oct 18 07:26:19 IST 2026
[2026-10-18 07:26:19,114.114 INFO    ] ================================================
[2026-10-18 07:26:19,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:26:19
[2026-10-18 07:26:20,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:26:20,598.598 INFO    ] Initializing speech engine...
[2026-10-18 07:26:20,607.607 INFO    ] 2026-10-18 07:26:20
[2026-10-18 07:26:20,854.854 INFO    ] 2026-10-18 07:26:20
[2026-10-18 07:26:20,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:26:21,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:26:21,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:26:21,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:26:21,343.343 INFO    ] time= 18/10/2026 07:26:21
[2026-10-18 07:26:21,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:26:21,417.417 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:26:21,552.552 INFO    ] No existing commands found in stream
[2026-10-18 07:26:26,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:26:26,576.576 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-18 07:26:29,913.913 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:26:29,916.916 INFO    ] Checking for system updates...
[2026-10-18 07:26:29,951.951 INFO    ] 200
[2026-10-18 07:26:29,954.954 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:26:30,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:26:30,015.015 INFO    ] No update needed
[2026-10-18 07:26:30,017.017 INFO    ] Checking for camera pi updates...
[2026-10-18 07:26:30,055.055 INFO    ] 200
[2026-10-18 07:26:30,057.057 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:26:30,102.102 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:26:40,115.115 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:26:40,150.150 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:26:40,159.159 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:26:40,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:26:40,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:26:40,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:26:42,213.213 INFO    ] ================================================
[2026-10-18 07:26:42,230.230 INFO    ] Launching Daemon at Sun Oct 18 07:26:42 IST 2026
[2026-10-18 07:26:42,241.241 INFO    ] ================================================
[2026-10-18 07:26:42,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:26:42
[2026-10-18 07:26:43,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:26:43,870.870 INFO    ] Initializing speech engine...
[2026-10-18 07:26:43,881.881 INFO    ] 2026-10-18 07:26:43
[2026-10-18 07:26:44,190.190 INFO    ] 2026-10-18 07:26:44
[2026-10-18 07:26:44,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:26:44,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:26:44,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:26:44,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:26:44,701.701 INFO    ] time= 18/10/2026 07:26:44
[2026-10-18 07:26:44,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:26:44,737.737 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:26:44,858.858 INFO    ] No existing commands found in stream
[2026-10-18 07:26:49,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:26:49,880.880 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-18 07:26:53,297.297 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:26:53,300.300 INFO    ] Checking for system updates...
[2026-10-18 07:26:53,338.338 INFO    ] 200
[2026-10-18 07:26:53,341.341 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:26:53,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:26:53,397.397 INFO    ] No update needed
[2026-10-18 07:26:53,400.400 INFO    ] Checking for camera pi updates...
[2026-10-18 07:26:53,433.433 INFO    ] 200
[2026-10-18 07:26:53,436.436 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:26:53,481.481 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:27:03,493.493 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:27:03,529.529 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:27:03,539.539 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:27:03,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:27:03,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:27:03,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:27:05,593.593 INFO    ] ================================================
[2026-10-18 07:27:05,609.609 INFO    ] Launching Daemon at Sun Oct 18 07:27:05 IST 2026
[2026-10-18 07:27:05,620.620 INFO    ] ================================================
[2026-10-18 07:27:06,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:27:06
[2026-10-18 07:27:06,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:27:07,030.030 INFO    ] Initializing speech engine...
[2026-10-18 07:27:07,046.046 INFO    ] 2026-10-18 07:27:07
[2026-10-18 07:27:07,330.330 INFO    ] 2026-10-18 07:27:07
[2026-10-18 07:27:07,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:27:07,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:27:07,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:27:07,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:27:07,750.750 INFO    ] time= 18/10/2026 07:27:07
[2026-10-18 07:27:07,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:27:07,783.783 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:27:07,921.921 INFO    ] No existing commands found in stream
[2026-10-18 07:27:12,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:27:12,954.954 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-18 07:27:15,032.032 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:27:15,035.035 INFO    ] Checking for system updates...
[2026-10-18 07:27:15,078.078 INFO    ] 200
[2026-10-18 07:27:15,081.081 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:27:15,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:27:15,143.143 INFO    ] No update needed
[2026-10-18 07:27:15,145.145 INFO    ] Checking for camera pi updates...
[2026-10-18 07:27:15,183.183 INFO    ] 200
[2026-10-18 07:27:15,186.186 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:27:15,226.226 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:27:25,241.241 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:27:25,277.277 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:27:25,287.287 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:27:25,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:27:25,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:27:25,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:27:27,340.340 INFO    ] ================================================
[2026-10-18 07:27:27,357.357 INFO    ] Launching Daemon at Sun Oct 18 07:27:27 IST 2026
[2026-10-18 07:27:27,368.368 INFO    ] ================================================
[2026-10-18 07:27:28,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:27:28
[2026-10-18 07:27:28,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:27:29,032.032 INFO    ] Initializing speech engine...
[2026-10-18 07:27:29,041.041 INFO    ] 2026-10-18 07:27:29
[2026-10-18 07:27:29,346.346 INFO    ] 2026-10-18 07:27:29
[2026-10-18 07:27:29,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:27:29,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:27:29,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:27:29,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:27:29,864.864 INFO    ] time= 18/10/2026 07:27:29
[2026-10-18 07:27:29,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:27:29,900.900 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:27:30,039.039 INFO    ] No existing commands found in stream
[2026-10-18 07:27:35,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:27:35,078.078 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-18 07:27:36,254.254 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:27:36,257.257 INFO    ] Checking for system updates...
[2026-10-18 07:27:36,294.294 INFO    ] 200
[2026-10-18 07:27:36,297.297 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:27:36,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:27:36,356.356 INFO    ] No update needed
[2026-10-18 07:27:36,359.359 INFO    ] Checking for camera pi updates...
[2026-10-18 07:27:36,392.392 INFO    ] 200
[2026-10-18 07:27:36,395.395 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:27:36,441.441 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:27:46,458.458 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:27:46,499.499 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:27:46,511.511 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:27:46,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:27:46,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:27:46,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:27:48,566.566 INFO    ] ================================================
[2026-10-18 07:27:48,582.582 INFO    ] Launching Daemon at Sun Oct 18 07:27:48 IST 2026
[2026-10-18 07:27:48,594.594 INFO    ] ================================================
[2026-10-18 07:27:49,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:27:49
[2026-10-18 07:27:49,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:27:50,010.010 INFO    ] Initializing speech engine...
[2026-10-18 07:27:50,020.020 INFO    ] 2026-10-18 07:27:50
[2026-10-18 07:27:50,266.266 INFO    ] 2026-10-18 07:27:50
[2026-10-18 07:27:50,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:27:50,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:27:50,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:27:50,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:27:50,769.769 INFO    ] time= 18/10/2026 07:27:50
[2026-10-18 07:27:50,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:27:50,837.837 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:27:50,973.973 INFO    ] No existing commands found in stream
[2026-10-18 07:27:55,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:27:55,999.999 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-18 07:27:56,513.513 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:27:56,516.516 INFO    ] Checking for system updates...
[2026-10-18 07:27:56,557.557 INFO    ] 200
[2026-10-18 07:27:56,560.560 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:27:56,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:27:56,623.623 INFO    ] No update needed
[2026-10-18 07:27:56,626.626 INFO    ] Checking for camera pi updates...
[2026-10-18 07:27:56,661.661 INFO    ] 200
[2026-10-18 07:27:56,664.664 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:27:56,705.705 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:28:06,722.722 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:28:06,761.761 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:28:06,772.772 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:28:06,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:28:06,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:28:06,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:28:08,828.828 INFO    ] ================================================
[2026-10-18 07:28:08,843.843 INFO    ] Launching Daemon at Sun Oct 18 07:28:08 IST 2026
[2026-10-18 07:28:08,854.854 INFO    ] ================================================
[2026-10-18 07:28:09,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:28:09
[2026-10-18 07:28:10,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:28:10,278.278 INFO    ] Initializing speech engine...
[2026-10-18 07:28:10,286.286 INFO    ] 2026-10-18 07:28:10
[2026-10-18 07:28:10,536.536 INFO    ] 2026-10-18 07:28:10
[2026-10-18 07:28:10,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:28:10,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:28:10,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:28:11,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:28:11,101.101 INFO    ] time= 18/10/2026 07:28:11
[2026-10-18 07:28:11,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:28:11,126.126 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:28:11,264.264 INFO    ] No existing commands found in stream
[2026-10-18 07:28:16,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:28:16,281.281 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-18 07:28:19,255.255 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:28:19,258.258 INFO    ] Checking for system updates...
[2026-10-18 07:28:19,297.297 INFO    ] 200
[2026-10-18 07:28:19,299.299 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:28:19,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:28:19,354.354 INFO    ] No update needed
[2026-10-18 07:28:19,357.357 INFO    ] Checking for camera pi updates...
[2026-10-18 07:28:19,391.391 INFO    ] 200
[2026-10-18 07:28:19,393.393 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:28:19,434.434 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:28:29,449.449 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:28:29,485.485 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:28:29,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:28:29,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:28:29,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:28:29,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:28:31,550.550 INFO    ] ================================================
[2026-10-18 07:28:31,566.566 INFO    ] Launching Daemon at Sun Oct 18 07:28:31 IST 2026
[2026-10-18 07:28:31,579.579 INFO    ] ================================================
[2026-10-18 07:28:32,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:28:32
[2026-10-18 07:28:32,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:28:33,133.133 INFO    ] Initializing speech engine...
[2026-10-18 07:28:33,140.140 INFO    ] 2026-10-18 07:28:33
[2026-10-18 07:28:33,433.433 INFO    ] 2026-10-18 07:28:33
[2026-10-18 07:28:33,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:28:33,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:28:33,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:28:33,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:28:33,923.923 INFO    ] time= 18/10/2026 07:28:33
[2026-10-18 07:28:33,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:28:34,027.027 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:28:34,150.150 INFO    ] No existing commands found in stream
[2026-10-18 07:28:39,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:28:39,162.162 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-18 07:28:42,148.148 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:28:42,151.151 INFO    ] Checking for system updates...
[2026-10-18 07:28:42,188.188 INFO    ] 200
[2026-10-18 07:28:42,191.191 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:28:42,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:28:42,248.248 INFO    ] No update needed
[2026-10-18 07:28:42,251.251 INFO    ] Checking for camera pi updates...
[2026-10-18 07:28:42,285.285 INFO    ] 200
[2026-10-18 07:28:42,288.288 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:28:42,329.329 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:28:52,345.345 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:28:52,384.384 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:28:52,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:28:52,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:28:52,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:28:52,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:28:54,449.449 INFO    ] ================================================
[2026-10-18 07:28:54,465.465 INFO    ] Launching Daemon at Sun Oct 18 07:28:54 IST 2026
[2026-10-18 07:28:54,477.477 INFO    ] ================================================
[2026-10-18 07:28:55,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:28:55
[2026-10-18 07:28:55,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:28:55,896.896 INFO    ] Initializing speech engine...
[2026-10-18 07:28:55,905.905 INFO    ] 2026-10-18 07:28:55
[2026-10-18 07:28:56,156.156 INFO    ] 2026-10-18 07:28:56
[2026-10-18 07:28:56,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:28:56,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:28:56,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:28:56,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:28:56,622.622 INFO    ] time= 18/10/2026 07:28:56
[2026-10-18 07:28:56,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:28:56,712.712 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:28:56,836.836 INFO    ] No existing commands found in stream
[2026-10-18 07:29:01,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:29:01,868.868 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-18 07:29:05,154.154 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:29:05,156.156 INFO    ] Checking for system updates...
[2026-10-18 07:29:05,196.196 INFO    ] 200
[2026-10-18 07:29:05,199.199 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:29:05,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:29:05,266.266 INFO    ] No update needed
[2026-10-18 07:29:05,270.270 INFO    ] Checking for camera pi updates...
[2026-10-18 07:29:05,304.304 INFO    ] 200
[2026-10-18 07:29:05,307.307 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:29:05,349.349 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:29:15,365.365 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:29:15,404.404 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:29:15,415.415 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:29:15,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:29:15,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:29:15,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:29:17,475.475 INFO    ] ================================================
[2026-10-18 07:29:17,490.490 INFO    ] Launching Daemon at Sun Oct 18 07:29:17 IST 2026
[2026-10-18 07:29:17,502.502 INFO    ] ================================================
[2026-10-18 07:29:18,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:29:18
[2026-10-18 07:29:18,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:29:18,912.912 INFO    ] Initializing speech engine...
[2026-10-18 07:29:18,932.932 INFO    ] 2026-10-18 07:29:18
[2026-10-18 07:29:19,180.180 INFO    ] 2026-10-18 07:29:19
[2026-10-18 07:29:19,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:29:19,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:29:19,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:29:19,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:29:19,748.748 INFO    ] time= 18/10/2026 07:29:19
[2026-10-18 07:29:19,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:29:19,772.772 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:29:19,900.900 INFO    ] No existing commands found in stream
[2026-10-18 07:29:24,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:29:24,921.921 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-18 07:29:28,176.176 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:29:28,178.178 INFO    ] Checking for system updates...
[2026-10-18 07:29:28,219.219 INFO    ] 200
[2026-10-18 07:29:28,222.222 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:29:28,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:29:28,284.284 INFO    ] No update needed
[2026-10-18 07:29:28,287.287 INFO    ] Checking for camera pi updates...
[2026-10-18 07:29:28,326.326 INFO    ] 200
[2026-10-18 07:29:28,329.329 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:29:28,375.375 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:29:38,390.390 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:29:38,430.430 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:29:38,441.441 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:29:38,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:29:38,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:29:38,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:29:40,496.496 INFO    ] ================================================
[2026-10-18 07:29:40,513.513 INFO    ] Launching Daemon at Sun Oct 18 07:29:40 IST 2026
[2026-10-18 07:29:40,529.529 INFO    ] ================================================
[2026-10-18 07:29:41,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:29:41
[2026-10-18 07:29:41,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:29:41,946.946 INFO    ] Initializing speech engine...
[2026-10-18 07:29:41,956.956 INFO    ] 2026-10-18 07:29:41
[2026-10-18 07:29:42,215.215 INFO    ] 2026-10-18 07:29:42
[2026-10-18 07:29:42,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:29:42,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:29:42,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:29:42,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:29:42,758.758 INFO    ] time= 18/10/2026 07:29:42
[2026-10-18 07:29:42,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:29:42,783.783 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:29:42,914.914 INFO    ] No existing commands found in stream
[2026-10-18 07:29:47,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:29:47,940.940 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-18 07:29:50,442.442 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:29:50,445.445 INFO    ] Checking for system updates...
[2026-10-18 07:29:50,481.481 INFO    ] 200
[2026-10-18 07:29:50,483.483 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:29:50,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:29:50,538.538 INFO    ] No update needed
[2026-10-18 07:29:50,541.541 INFO    ] Checking for camera pi updates...
[2026-10-18 07:29:50,592.592 INFO    ] 200
[2026-10-18 07:29:50,594.594 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:29:50,634.634 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:30:00,648.648 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:30:00,683.683 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:30:00,693.693 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:30:00,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:30:00,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:30:00,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:30:02,768.768 INFO    ] ================================================
[2026-10-18 07:30:02,791.791 INFO    ] Launching Daemon at Sun Oct 18 07:30:02 IST 2026
[2026-10-18 07:30:02,808.808 INFO    ] ================================================
[2026-10-18 07:30:03,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:30:03
[2026-10-18 07:30:04,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:30:04,382.382 INFO    ] Initializing speech engine...
[2026-10-18 07:30:04,389.389 INFO    ] 2026-10-18 07:30:04
[2026-10-18 07:30:04,686.686 INFO    ] 2026-10-18 07:30:04
[2026-10-18 07:30:04,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:30:04,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:30:04,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:30:05,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:30:05,116.116 INFO    ] time= 18/10/2026 07:30:05
[2026-10-18 07:30:05,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:30:05,129.129 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:30:05,283.283 INFO    ] No existing commands found in stream
[2026-10-18 07:30:10,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:30:10,311.311 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-18 07:30:11,706.706 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 07:30:11,708.708 INFO    ] Checking for system updates...
[2026-10-18 07:30:11,748.748 INFO    ] 200
[2026-10-18 07:30:11,751.751 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:30:11,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:30:11,806.806 INFO    ] No update needed
[2026-10-18 07:30:11,809.809 INFO    ] Checking for camera pi updates...
[2026-10-18 07:30:11,843.843 INFO    ] 200
[2026-10-18 07:30:11,845.845 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:30:11,885.885 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:30:21,901.901 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:30:21,936.936 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:30:21,946.946 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:30:21,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:30:21,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:30:21,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:30:24,999.999 INFO    ] ================================================
[2026-10-18 07:30:24,014.014 INFO    ] Launching Daemon at Sun Oct 18 07:30:24 IST 2026
[2026-10-18 07:30:24,026.026 INFO    ] ================================================
[2026-10-18 07:30:24,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:30:24
[2026-10-18 07:30:25,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:30:25,448.448 INFO    ] Initializing speech engine...
[2026-10-18 07:30:25,468.468 INFO    ] 2026-10-18 07:30:25
[2026-10-18 07:30:25,713.713 INFO    ] 2026-10-18 07:30:25
[2026-10-18 07:30:25,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:30:25,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:30:26,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:30:26,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:30:26,217.217 INFO    ] time= 18/10/2026 07:30:26
[2026-10-18 07:30:26,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:30:26,280.280 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:30:26,421.421 INFO    ] No existing commands found in stream
[2026-10-18 07:30:31,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:30:31,439.439 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-18 07:30:33,612.612 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:30:33,615.615 INFO    ] Checking for system updates...
[2026-10-18 07:30:33,650.650 INFO    ] 200
[2026-10-18 07:30:33,653.653 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:30:33,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:30:33,707.707 INFO    ] No update needed
[2026-10-18 07:30:33,710.710 INFO    ] Checking for camera pi updates...
[2026-10-18 07:30:33,743.743 INFO    ] 200
[2026-10-18 07:30:33,746.746 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:30:33,786.786 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:30:43,802.802 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:30:43,836.836 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:30:43,846.846 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:30:43,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:30:43,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:30:43,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:30:45,899.899 INFO    ] ================================================
[2026-10-18 07:30:45,914.914 INFO    ] Launching Daemon at Sun Oct 18 07:30:45 IST 2026
[2026-10-18 07:30:45,925.925 INFO    ] ================================================
[2026-10-18 07:30:46,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:30:46
[2026-10-18 07:30:47,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:30:47,407.407 INFO    ] Initializing speech engine...
[2026-10-18 07:30:47,416.416 INFO    ] 2026-10-18 07:30:47
[2026-10-18 07:30:47,662.662 INFO    ] 2026-10-18 07:30:47
[2026-10-18 07:30:47,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:30:47,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:30:47,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:30:48,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:30:48,158.158 INFO    ] time= 18/10/2026 07:30:48
[2026-10-18 07:30:48,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:30:48,225.225 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:30:48,363.363 INFO    ] No existing commands found in stream
[2026-10-18 07:30:53,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:30:53,388.388 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-18 07:30:54,603.603 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:30:54,606.606 INFO    ] Checking for system updates...
[2026-10-18 07:30:54,643.643 INFO    ] 200
[2026-10-18 07:30:54,646.646 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:30:54,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:30:54,702.702 INFO    ] No update needed
[2026-10-18 07:30:54,705.705 INFO    ] Checking for camera pi updates...
[2026-10-18 07:30:54,740.740 INFO    ] 200
[2026-10-18 07:30:54,743.743 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:30:54,784.784 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:31:04,800.800 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:31:04,839.839 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:31:04,850.850 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:31:04,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:31:04,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:31:04,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:31:06,906.906 INFO    ] ================================================
[2026-10-18 07:31:06,921.921 INFO    ] Launching Daemon at Sun Oct 18 07:31:06 IST 2026
[2026-10-18 07:31:06,932.932 INFO    ] ================================================
[2026-10-18 07:31:07,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:31:07
[2026-10-18 07:31:08,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:31:08,360.360 INFO    ] Initializing speech engine...
[2026-10-18 07:31:08,369.369 INFO    ] 2026-10-18 07:31:08
[2026-10-18 07:31:08,616.616 INFO    ] 2026-10-18 07:31:08
[2026-10-18 07:31:08,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:31:08,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:31:08,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:31:09,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:31:09,158.158 INFO    ] time= 18/10/2026 07:31:09
[2026-10-18 07:31:09,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:31:09,192.192 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:31:09,324.324 INFO    ] No existing commands found in stream
[2026-10-18 07:31:14,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:31:14,341.341 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-18 07:31:17,081.081 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:31:17,083.083 INFO    ] Checking for system updates...
[2026-10-18 07:31:17,122.122 INFO    ] 200
[2026-10-18 07:31:17,124.124 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:31:17,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:31:17,185.185 INFO    ] No update needed
[2026-10-18 07:31:17,188.188 INFO    ] Checking for camera pi updates...
[2026-10-18 07:31:17,224.224 INFO    ] 200
[2026-10-18 07:31:17,227.227 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:31:17,271.271 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:31:27,287.287 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:31:27,322.322 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:31:27,332.332 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:31:27,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:31:27,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:31:27,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:31:29,384.384 INFO    ] ================================================
[2026-10-18 07:31:29,399.399 INFO    ] Launching Daemon at Sun Oct 18 07:31:29 IST 2026
[2026-10-18 07:31:29,410.410 INFO    ] ================================================
[2026-10-18 07:31:29,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:31:29
[2026-10-18 07:31:30,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:31:30,838.838 INFO    ] Initializing speech engine...
[2026-10-18 07:31:30,844.844 INFO    ] 2026-10-18 07:31:30
[2026-10-18 07:31:31,092.092 INFO    ] 2026-10-18 07:31:31
[2026-10-18 07:31:31,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:31:31,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:31:31,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:31:31,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:31:31,644.644 INFO    ] time= 18/10/2026 07:31:31
[2026-10-18 07:31:31,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:31:31,675.675 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:31:31,765.765 INFO    ] No existing commands found in stream
[2026-10-18 07:31:36,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:31:36,788.788 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-18 07:31:37,364.364 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:31:37,367.367 INFO    ] Checking for system updates...
[2026-10-18 07:31:37,407.407 INFO    ] 200
[2026-10-18 07:31:37,409.409 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:31:37,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:31:37,464.464 INFO    ] No update needed
[2026-10-18 07:31:37,466.466 INFO    ] Checking for camera pi updates...
[2026-10-18 07:31:37,499.499 INFO    ] 200
[2026-10-18 07:31:37,502.502 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:31:37,542.542 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:31:47,555.555 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:31:47,591.591 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:31:47,601.601 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:31:47,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:31:47,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:31:47,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:31:49,657.657 INFO    ] ================================================
[2026-10-18 07:31:49,672.672 INFO    ] Launching Daemon at Sun Oct 18 07:31:49 IST 2026
[2026-10-18 07:31:49,683.683 INFO    ] ================================================
[2026-10-18 07:31:50,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:31:50
[2026-10-18 07:31:50,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:31:51,109.109 INFO    ] Initializing speech engine...
[2026-10-18 07:31:51,118.118 INFO    ] 2026-10-18 07:31:51
[2026-10-18 07:31:51,372.372 INFO    ] 2026-10-18 07:31:51
[2026-10-18 07:31:51,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:31:51,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:31:51,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:31:51,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:31:51,928.928 INFO    ] time= 18/10/2026 07:31:51
[2026-10-18 07:31:51,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:31:51,962.962 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:31:52,100.100 INFO    ] No existing commands found in stream
[2026-10-18 07:31:57,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:31:57,118.118 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-18 07:32:01,025.025 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:32:01,028.028 INFO    ] Checking for system updates...
[2026-10-18 07:32:01,068.068 INFO    ] 200
[2026-10-18 07:32:01,071.071 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:32:01,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:32:01,126.126 INFO    ] No update needed
[2026-10-18 07:32:01,129.129 INFO    ] Checking for camera pi updates...
[2026-10-18 07:32:01,162.162 INFO    ] 200
[2026-10-18 07:32:01,164.164 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:32:01,207.207 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:32:11,221.221 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:32:11,261.261 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:32:11,271.271 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:32:11,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:32:11,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:32:11,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:32:13,325.325 INFO    ] ================================================
[2026-10-18 07:32:13,340.340 INFO    ] Launching Daemon at Sun Oct 18 07:32:13 IST 2026
[2026-10-18 07:32:13,351.351 INFO    ] ================================================
[2026-10-18 07:32:13,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:32:13
[2026-10-18 07:32:14,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:32:14,821.821 INFO    ] Initializing speech engine...
[2026-10-18 07:32:14,831.831 INFO    ] 2026-10-18 07:32:14
[2026-10-18 07:32:15,089.089 INFO    ] 2026-10-18 07:32:15
[2026-10-18 07:32:15,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:32:15,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:32:15,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:32:15,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:32:15,511.511 INFO    ] time= 18/10/2026 07:32:15
[2026-10-18 07:32:15,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:32:15,526.526 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:32:15,662.662 INFO    ] No existing commands found in stream
[2026-10-18 07:32:20,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:32:20,676.676 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-18 07:32:22,674.674 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:32:22,677.677 INFO    ] Checking for system updates...
[2026-10-18 07:32:22,716.716 INFO    ] 200
[2026-10-18 07:32:22,718.718 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:32:22,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:32:22,778.778 INFO    ] No update needed
[2026-10-18 07:32:22,780.780 INFO    ] Checking for camera pi updates...
[2026-10-18 07:32:22,814.814 INFO    ] 200
[2026-10-18 07:32:22,817.817 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:32:22,862.862 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:32:32,875.875 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:32:32,912.912 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:32:32,922.922 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:32:32,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:32:32,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:32:32,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:32:34,975.975 INFO    ] ================================================
[2026-10-18 07:32:34,991.991 INFO    ] Launching Daemon at Sun Oct 18 07:32:34 IST 2026
[2026-10-18 07:32:35,001.001 INFO    ] ================================================
[2026-10-18 07:32:35,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:32:35
[2026-10-18 07:32:36,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:32:36,520.520 INFO    ] Initializing speech engine...
[2026-10-18 07:32:36,529.529 INFO    ] 2026-10-18 07:32:36
[2026-10-18 07:32:36,820.820 INFO    ] 2026-10-18 07:32:36
[2026-10-18 07:32:36,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:32:37,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:32:37,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:32:37,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:32:37,306.306 INFO    ] time= 18/10/2026 07:32:37
[2026-10-18 07:32:37,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:32:37,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:32:37,503.503 INFO    ] No existing commands found in stream
[2026-10-18 07:32:42,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:32:42,518.518 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-18 07:32:44,270.270 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:32:44,273.273 INFO    ] Checking for system updates...
[2026-10-18 07:32:44,312.312 INFO    ] 200
[2026-10-18 07:32:44,315.315 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:32:44,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:32:44,371.371 INFO    ] No update needed
[2026-10-18 07:32:44,374.374 INFO    ] Checking for camera pi updates...
[2026-10-18 07:32:44,407.407 INFO    ] 200
[2026-10-18 07:32:44,410.410 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:32:44,451.451 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:32:54,467.467 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:32:54,505.505 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:32:54,515.515 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:32:54,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:32:54,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:32:54,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:32:56,571.571 INFO    ] ================================================
[2026-10-18 07:32:56,586.586 INFO    ] Launching Daemon at Sun Oct 18 07:32:56 IST 2026
[2026-10-18 07:32:56,596.596 INFO    ] ================================================
[2026-10-18 07:32:57,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:32:57
[2026-10-18 07:32:57,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:32:58,053.053 INFO    ] Initializing speech engine...
[2026-10-18 07:32:58,060.060 INFO    ] 2026-10-18 07:32:58
[2026-10-18 07:32:58,321.321 INFO    ] 2026-10-18 07:32:58
[2026-10-18 07:32:58,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:32:58,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:32:58,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:32:58,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:32:58,861.861 INFO    ] time= 18/10/2026 07:32:58
[2026-10-18 07:32:58,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:32:58,885.885 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:32:59,016.016 INFO    ] No existing commands found in stream
[2026-10-18 07:33:04,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:33:04,033.033 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-18 07:33:05,961.961 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:33:05,963.963 INFO    ] Checking for system updates...
[2026-10-18 07:33:05,999.999 INFO    ] 200
[2026-10-18 07:33:06,001.001 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:33:06,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:33:06,061.061 INFO    ] No update needed
[2026-10-18 07:33:06,063.063 INFO    ] Checking for camera pi updates...
[2026-10-18 07:33:06,100.100 INFO    ] 200
[2026-10-18 07:33:06,102.102 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:33:06,146.146 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:33:16,161.161 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:33:16,196.196 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:33:16,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:33:16,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:33:16,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:33:16,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:33:18,258.258 INFO    ] ================================================
[2026-10-18 07:33:18,274.274 INFO    ] Launching Daemon at Sun Oct 18 07:33:18 IST 2026
[2026-10-18 07:33:18,284.284 INFO    ] ================================================
[2026-10-18 07:33:18,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:33:18
[2026-10-18 07:33:19,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:33:19,735.735 INFO    ] Initializing speech engine...
[2026-10-18 07:33:19,756.756 INFO    ] 2026-10-18 07:33:19
[2026-10-18 07:33:20,021.021 INFO    ] 2026-10-18 07:33:20
[2026-10-18 07:33:20,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:33:20,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:33:20,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:33:20,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:33:20,501.501 INFO    ] time= 18/10/2026 07:33:20
[2026-10-18 07:33:20,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:33:20,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:33:20,754.754 INFO    ] No existing commands found in stream
[2026-10-18 07:33:25,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:33:25,782.782 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-18 07:33:29,153.153 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:33:29,157.157 INFO    ] Checking for system updates...
[2026-10-18 07:33:29,192.192 INFO    ] 200
[2026-10-18 07:33:29,195.195 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:33:29,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:33:29,250.250 INFO    ] No update needed
[2026-10-18 07:33:29,252.252 INFO    ] Checking for camera pi updates...
[2026-10-18 07:33:29,285.285 INFO    ] 200
[2026-10-18 07:33:29,288.288 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:33:29,328.328 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:33:39,343.343 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:33:39,377.377 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:33:39,387.387 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:33:39,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:33:39,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:33:39,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:33:41,441.441 INFO    ] ================================================
[2026-10-18 07:33:41,456.456 INFO    ] Launching Daemon at Sun Oct 18 07:33:41 IST 2026
[2026-10-18 07:33:41,467.467 INFO    ] ================================================
[2026-10-18 07:33:42,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:33:42
[2026-10-18 07:33:42,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:33:42,933.933 INFO    ] Initializing speech engine...
[2026-10-18 07:33:42,938.938 INFO    ] 2026-10-18 07:33:42
[2026-10-18 07:33:43,201.201 INFO    ] 2026-10-18 07:33:43
[2026-10-18 07:33:43,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:33:43,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:33:43,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:33:43,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:33:43,736.736 INFO    ] time= 18/10/2026 07:33:43
[2026-10-18 07:33:43,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:33:43,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:33:43,902.902 INFO    ] No existing commands found in stream
[2026-10-18 07:33:48,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:33:48,932.932 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-18 07:33:51,214.214 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 07:33:51,217.217 INFO    ] Checking for system updates...
[2026-10-18 07:33:51,257.257 INFO    ] 200
[2026-10-18 07:33:51,259.259 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:33:51,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:33:51,318.318 INFO    ] No update needed
[2026-10-18 07:33:51,321.321 INFO    ] Checking for camera pi updates...
[2026-10-18 07:33:51,358.358 INFO    ] 200
[2026-10-18 07:33:51,361.361 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:33:51,402.402 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:34:01,420.420 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:34:01,508.508 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:34:01,521.521 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:34:01,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:34:01,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:34:01,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:34:03,589.589 INFO    ] ================================================
[2026-10-18 07:34:03,604.604 INFO    ] Launching Daemon at Sun Oct 18 07:34:03 IST 2026
[2026-10-18 07:34:03,615.615 INFO    ] ================================================
[2026-10-18 07:34:04,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:34:04
[2026-10-18 07:34:04,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:34:05,067.067 INFO    ] Initializing speech engine...
[2026-10-18 07:34:05,083.083 INFO    ] 2026-10-18 07:34:05
[2026-10-18 07:34:05,368.368 INFO    ] 2026-10-18 07:34:05
[2026-10-18 07:34:05,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:34:05,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:34:05,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:34:05,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:34:05,883.883 INFO    ] time= 18/10/2026 07:34:05
[2026-10-18 07:34:05,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:34:05,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:34:06,160.160 INFO    ] No existing commands found in stream
[2026-10-18 07:34:11,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:34:11,188.188 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-18 07:34:13,406.406 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:34:13,408.408 INFO    ] Checking for system updates...
[2026-10-18 07:34:13,444.444 INFO    ] 200
[2026-10-18 07:34:13,447.447 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:34:13,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:34:13,508.508 INFO    ] No update needed
[2026-10-18 07:34:13,510.510 INFO    ] Checking for camera pi updates...
[2026-10-18 07:34:13,548.548 INFO    ] 200
[2026-10-18 07:34:13,550.550 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:34:13,595.595 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:34:23,609.609 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:34:23,644.644 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:34:23,654.654 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:34:23,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:34:23,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:34:23,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:34:25,706.706 INFO    ] ================================================
[2026-10-18 07:34:25,722.722 INFO    ] Launching Daemon at Sun Oct 18 07:34:25 IST 2026
[2026-10-18 07:34:25,732.732 INFO    ] ================================================
[2026-10-18 07:34:26,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:34:26
[2026-10-18 07:34:26,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:34:27,143.143 INFO    ] Initializing speech engine...
[2026-10-18 07:34:27,152.152 INFO    ] 2026-10-18 07:34:27
[2026-10-18 07:34:27,447.447 INFO    ] 2026-10-18 07:34:27
[2026-10-18 07:34:27,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:34:27,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:34:27,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:34:27,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:34:27,868.868 INFO    ] time= 18/10/2026 07:34:27
[2026-10-18 07:34:27,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:34:27,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:34:27,955.955 INFO    ] No existing commands found in stream
[2026-10-18 07:34:32,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:34:32,981.981 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-18 07:34:34,926.926 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:34:34,928.928 INFO    ] Checking for system updates...
[2026-10-18 07:34:34,965.965 INFO    ] 200
[2026-10-18 07:34:34,968.968 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:34:35,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:34:35,023.023 INFO    ] No update needed
[2026-10-18 07:34:35,026.026 INFO    ] Checking for camera pi updates...
[2026-10-18 07:34:35,060.060 INFO    ] 200
[2026-10-18 07:34:35,062.062 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:34:35,101.101 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:34:45,117.117 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:34:45,151.151 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:34:45,161.161 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:34:45,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:34:45,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:34:45,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:34:47,213.213 INFO    ] ================================================
[2026-10-18 07:34:47,229.229 INFO    ] Launching Daemon at Sun Oct 18 07:34:47 IST 2026
[2026-10-18 07:34:47,239.239 INFO    ] ================================================
[2026-10-18 07:34:47,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:34:47
[2026-10-18 07:34:48,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:34:48,669.669 INFO    ] Initializing speech engine...
[2026-10-18 07:34:48,679.679 INFO    ] 2026-10-18 07:34:48
[2026-10-18 07:34:48,929.929 INFO    ] 2026-10-18 07:34:48
[2026-10-18 07:34:48,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:34:49,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:34:49,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:34:49,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:34:49,480.480 INFO    ] time= 18/10/2026 07:34:49
[2026-10-18 07:34:49,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:34:49,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:34:49,676.676 INFO    ] No existing commands found in stream
[2026-10-18 07:34:54,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:34:54,705.705 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-18 07:34:58,386.386 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:34:58,389.389 INFO    ] Checking for system updates...
[2026-10-18 07:34:58,426.426 INFO    ] 200
[2026-10-18 07:34:58,429.429 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:34:58,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:34:58,486.486 INFO    ] No update needed
[2026-10-18 07:34:58,489.489 INFO    ] Checking for camera pi updates...
[2026-10-18 07:34:58,523.523 INFO    ] 200
[2026-10-18 07:34:58,526.526 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:34:58,568.568 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:35:08,584.584 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:35:08,625.625 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:35:08,637.637 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:35:08,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:35:08,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:35:08,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:35:10,692.692 INFO    ] ================================================
[2026-10-18 07:35:10,708.708 INFO    ] Launching Daemon at Sun Oct 18 07:35:10 IST 2026
[2026-10-18 07:35:10,719.719 INFO    ] ================================================
[2026-10-18 07:35:11,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:35:11
[2026-10-18 07:35:11,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:35:12,230.230 INFO    ] Initializing speech engine...
[2026-10-18 07:35:12,240.240 INFO    ] 2026-10-18 07:35:12
[2026-10-18 07:35:12,528.528 INFO    ] 2026-10-18 07:35:12
[2026-10-18 07:35:12,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:35:12,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:35:12,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:35:13,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:35:13,067.067 INFO    ] time= 18/10/2026 07:35:13
[2026-10-18 07:35:13,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:35:13,092.092 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:35:13,223.223 INFO    ] No existing commands found in stream
[2026-10-18 07:35:18,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:35:18,242.242 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-18 07:35:22,339.339 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:35:22,342.342 INFO    ] Checking for system updates...
[2026-10-18 07:35:22,381.381 INFO    ] 200
[2026-10-18 07:35:22,383.383 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:35:22,442.442 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:35:22,444.444 INFO    ] No update needed
[2026-10-18 07:35:22,446.446 INFO    ] Checking for camera pi updates...
[2026-10-18 07:35:22,481.481 INFO    ] 200
[2026-10-18 07:35:22,483.483 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:35:22,523.523 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:35:32,539.539 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2e150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:35:32,575.575 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:35:32,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:35:32,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:35:32,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:35:32,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:35:34,641.641 INFO    ] ================================================
[2026-10-18 07:35:34,657.657 INFO    ] Launching Daemon at Sun Oct 18 07:35:34 IST 2026
[2026-10-18 07:35:34,668.668 INFO    ] ================================================
[2026-10-18 07:35:35,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:35:35
[2026-10-18 07:35:35,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:35:36,078.078 INFO    ] Initializing speech engine...
[2026-10-18 07:35:36,093.093 INFO    ] 2026-10-18 07:35:36
[2026-10-18 07:35:36,356.356 INFO    ] 2026-10-18 07:35:36
[2026-10-18 07:35:36,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:35:36,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:35:36,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:35:36,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:35:36,928.928 INFO    ] time= 18/10/2026 07:35:36
[2026-10-18 07:35:36,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:35:36,953.953 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:35:37,089.089 INFO    ] No existing commands found in stream
[2026-10-18 07:35:42,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:35:42,108.108 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-18 07:35:42,872.872 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:35:42,875.875 INFO    ] Checking for system updates...
[2026-10-18 07:35:42,912.912 INFO    ] 200
[2026-10-18 07:35:42,915.915 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:35:42,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:35:42,972.972 INFO    ] No update needed
[2026-10-18 07:35:42,975.975 INFO    ] Checking for camera pi updates...
[2026-10-18 07:35:43,010.010 INFO    ] 200
[2026-10-18 07:35:43,012.012 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:35:43,053.053 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:35:53,067.067 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:35:53,102.102 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:35:53,112.112 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:35:53,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:35:53,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:35:53,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:35:55,166.166 INFO    ] ================================================
[2026-10-18 07:35:55,181.181 INFO    ] Launching Daemon at Sun Oct 18 07:35:55 IST 2026
[2026-10-18 07:35:55,192.192 INFO    ] ================================================
[2026-10-18 07:35:55,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:35:55
[2026-10-18 07:35:56,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:35:56,618.618 INFO    ] Initializing speech engine...
[2026-10-18 07:35:56,628.628 INFO    ] 2026-10-18 07:35:56
[2026-10-18 07:35:56,876.876 INFO    ] 2026-10-18 07:35:56
[2026-10-18 07:35:56,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:35:57,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:35:57,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:35:57,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:35:57,418.418 INFO    ] time= 18/10/2026 07:35:57
[2026-10-18 07:35:57,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:35:57,455.455 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:35:57,619.619 INFO    ] No existing commands found in stream
[2026-10-18 07:36:02,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:36:02,660.660 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-18 07:36:06,448.448 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 07:36:06,451.451 INFO    ] Checking for system updates...
[2026-10-18 07:36:06,487.487 INFO    ] 200
[2026-10-18 07:36:06,489.489 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:36:06,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:36:06,545.545 INFO    ] No update needed
[2026-10-18 07:36:06,548.548 INFO    ] Checking for camera pi updates...
[2026-10-18 07:36:06,581.581 INFO    ] 200
[2026-10-18 07:36:06,584.584 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:36:06,624.624 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:36:16,639.639 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:36:16,673.673 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:36:16,683.683 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:36:16,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:36:16,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:36:16,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:36:18,736.736 INFO    ] ================================================
[2026-10-18 07:36:18,751.751 INFO    ] Launching Daemon at Sun Oct 18 07:36:18 IST 2026
[2026-10-18 07:36:18,762.762 INFO    ] ================================================
[2026-10-18 07:36:19,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:36:19
[2026-10-18 07:36:19,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:36:20,187.187 INFO    ] Initializing speech engine...
[2026-10-18 07:36:20,196.196 INFO    ] 2026-10-18 07:36:20
[2026-10-18 07:36:20,447.447 INFO    ] 2026-10-18 07:36:20
[2026-10-18 07:36:20,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:36:20,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:36:20,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:36:20,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:36:20,999.999 INFO    ] time= 18/10/2026 07:36:20
[2026-10-18 07:36:21,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:36:21,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:36:21,170.170 INFO    ] No existing commands found in stream
[2026-10-18 07:36:26,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:36:26,187.187 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-18 07:36:30,065.065 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:36:30,068.068 INFO    ] Checking for system updates...
[2026-10-18 07:36:30,107.107 INFO    ] 200
[2026-10-18 07:36:30,110.110 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:36:30,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:36:30,171.171 INFO    ] No update needed
[2026-10-18 07:36:30,173.173 INFO    ] Checking for camera pi updates...
[2026-10-18 07:36:30,207.207 INFO    ] 200
[2026-10-18 07:36:30,209.209 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:36:30,250.250 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:36:40,264.264 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:36:40,299.299 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:36:40,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:36:40,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:36:40,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:36:40,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:36:42,362.362 INFO    ] ================================================
[2026-10-18 07:36:42,377.377 INFO    ] Launching Daemon at Sun Oct 18 07:36:42 IST 2026
[2026-10-18 07:36:42,392.392 INFO    ] ================================================
[2026-10-18 07:36:42,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:36:42
[2026-10-18 07:36:43,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:36:43,801.801 INFO    ] Initializing speech engine...
[2026-10-18 07:36:43,824.824 INFO    ] 2026-10-18 07:36:43
[2026-10-18 07:36:44,079.079 INFO    ] 2026-10-18 07:36:44
[2026-10-18 07:36:44,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:36:44,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:36:44,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:36:44,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:36:44,625.625 INFO    ] time= 18/10/2026 07:36:44
[2026-10-18 07:36:44,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:36:44,666.666 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:36:44,832.832 INFO    ] No existing commands found in stream
[2026-10-18 07:36:49,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:36:49,866.866 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-18 07:36:54,048.048 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:36:54,051.051 INFO    ] Checking for system updates...
[2026-10-18 07:36:54,088.088 INFO    ] 200
[2026-10-18 07:36:54,090.090 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:36:54,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:36:54,146.146 INFO    ] No update needed
[2026-10-18 07:36:54,148.148 INFO    ] Checking for camera pi updates...
[2026-10-18 07:36:54,182.182 INFO    ] 200
[2026-10-18 07:36:54,184.184 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:36:54,227.227 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:37:04,240.240 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:37:04,274.274 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:37:04,284.284 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:37:04,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:37:04,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:37:04,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:37:06,338.338 INFO    ] ================================================
[2026-10-18 07:37:06,353.353 INFO    ] Launching Daemon at Sun Oct 18 07:37:06 IST 2026
[2026-10-18 07:37:06,364.364 INFO    ] ================================================
[2026-10-18 07:37:06,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:37:06
[2026-10-18 07:37:07,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:37:07,789.789 INFO    ] Initializing speech engine...
[2026-10-18 07:37:07,795.795 INFO    ] 2026-10-18 07:37:07
[2026-10-18 07:37:08,039.039 INFO    ] 2026-10-18 07:37:08
[2026-10-18 07:37:08,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:37:08,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:37:08,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:37:08,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:37:08,540.540 INFO    ] time= 18/10/2026 07:37:08
[2026-10-18 07:37:08,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:37:08,603.603 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:37:08,751.751 INFO    ] No existing commands found in stream
[2026-10-18 07:37:13,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:37:13,781.781 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-18 07:37:15,575.575 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:37:15,577.577 INFO    ] Checking for system updates...
[2026-10-18 07:37:15,617.617 INFO    ] 200
[2026-10-18 07:37:15,620.620 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:37:15,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:37:15,675.675 INFO    ] No update needed
[2026-10-18 07:37:15,677.677 INFO    ] Checking for camera pi updates...
[2026-10-18 07:37:15,711.711 INFO    ] 200
[2026-10-18 07:37:15,714.714 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:37:15,754.754 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:37:25,769.769 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:37:25,804.804 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:37:25,814.814 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:37:25,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:37:25,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:37:25,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:37:27,867.867 INFO    ] ================================================
[2026-10-18 07:37:27,882.882 INFO    ] Launching Daemon at Sun Oct 18 07:37:27 IST 2026
[2026-10-18 07:37:27,893.893 INFO    ] ================================================
[2026-10-18 07:37:28,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:37:28
[2026-10-18 07:37:29,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:37:29,316.316 INFO    ] Initializing speech engine...
[2026-10-18 07:37:29,323.323 INFO    ] 2026-10-18 07:37:29
[2026-10-18 07:37:29,582.582 INFO    ] 2026-10-18 07:37:29
[2026-10-18 07:37:29,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:37:29,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:37:29,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:37:30,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:37:30,125.125 INFO    ] time= 18/10/2026 07:37:30
[2026-10-18 07:37:30,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:37:30,172.172 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:37:30,279.279 INFO    ] No existing commands found in stream
[2026-10-18 07:37:35,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:37:35,306.306 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-18 07:37:39,318.318 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 07:37:39,321.321 INFO    ] Checking for system updates...
[2026-10-18 07:37:39,361.361 INFO    ] 200
[2026-10-18 07:37:39,363.363 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:37:39,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:37:39,424.424 INFO    ] No update needed
[2026-10-18 07:37:39,427.427 INFO    ] Checking for camera pi updates...
[2026-10-18 07:37:39,461.461 INFO    ] 200
[2026-10-18 07:37:39,463.463 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:37:39,504.504 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:37:49,519.519 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:37:49,553.553 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:37:49,563.563 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:37:49,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:37:49,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:37:49,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:37:51,617.617 INFO    ] ================================================
[2026-10-18 07:37:51,632.632 INFO    ] Launching Daemon at Sun Oct 18 07:37:51 IST 2026
[2026-10-18 07:37:51,642.642 INFO    ] ================================================
[2026-10-18 07:37:52,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:37:52
[2026-10-18 07:37:52,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:37:53,050.050 INFO    ] Initializing speech engine...
[2026-10-18 07:37:53,065.065 INFO    ] 2026-10-18 07:37:53
[2026-10-18 07:37:53,332.332 INFO    ] 2026-10-18 07:37:53
[2026-10-18 07:37:53,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:37:53,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:37:53,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:37:53,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:37:53,729.729 INFO    ] time= 18/10/2026 07:37:53
[2026-10-18 07:37:53,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:37:53,804.804 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:37:53,937.937 INFO    ] No existing commands found in stream
[2026-10-18 07:37:58,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:37:58,959.959 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-18 07:38:02,408.408 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:38:02,412.412 INFO    ] Checking for system updates...
[2026-10-18 07:38:02,461.461 INFO    ] 200
[2026-10-18 07:38:02,464.464 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:38:02,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:38:02,529.529 INFO    ] No update needed
[2026-10-18 07:38:02,533.533 INFO    ] Checking for camera pi updates...
[2026-10-18 07:38:02,571.571 INFO    ] 200
[2026-10-18 07:38:02,574.574 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:38:02,632.632 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:38:12,648.648 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:38:12,684.684 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:38:12,694.694 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:38:12,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:38:12,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:38:12,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:38:14,751.751 INFO    ] ================================================
[2026-10-18 07:38:14,766.766 INFO    ] Launching Daemon at Sun Oct 18 07:38:14 IST 2026
[2026-10-18 07:38:14,777.777 INFO    ] ================================================
[2026-10-18 07:38:15,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:38:15
[2026-10-18 07:38:15,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:38:16,188.188 INFO    ] Initializing speech engine...
[2026-10-18 07:38:16,194.194 INFO    ] 2026-10-18 07:38:16
[2026-10-18 07:38:16,469.469 INFO    ] 2026-10-18 07:38:16
[2026-10-18 07:38:16,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:38:16,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:38:16,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:38:16,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:38:17,000.000 INFO    ] time= 18/10/2026 07:38:16
[2026-10-18 07:38:17,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:38:17,047.047 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:38:17,180.180 INFO    ] No existing commands found in stream
[2026-10-18 07:38:22,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:38:22,208.208 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-18 07:38:23,332.332 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:38:23,335.335 INFO    ] Checking for system updates...
[2026-10-18 07:38:23,375.375 INFO    ] 200
[2026-10-18 07:38:23,377.377 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:38:23,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:38:23,439.439 INFO    ] No update needed
[2026-10-18 07:38:23,441.441 INFO    ] Checking for camera pi updates...
[2026-10-18 07:38:23,476.476 INFO    ] 200
[2026-10-18 07:38:23,479.479 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:38:23,521.521 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:38:33,534.534 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:38:33,568.568 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:38:33,578.578 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:38:33,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:38:33,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:38:33,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:38:35,631.631 INFO    ] ================================================
[2026-10-18 07:38:35,648.648 INFO    ] Launching Daemon at Sun Oct 18 07:38:35 IST 2026
[2026-10-18 07:38:35,658.658 INFO    ] ================================================
[2026-10-18 07:38:36,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:38:36
[2026-10-18 07:38:36,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:38:37,138.138 INFO    ] Initializing speech engine...
[2026-10-18 07:38:37,144.144 INFO    ] 2026-10-18 07:38:37
[2026-10-18 07:38:37,406.406 INFO    ] 2026-10-18 07:38:37
[2026-10-18 07:38:37,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:38:37,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:38:37,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:38:37,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:38:37,896.896 INFO    ] time= 18/10/2026 07:38:37
[2026-10-18 07:38:37,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:38:37,961.961 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:38:38,107.107 INFO    ] No existing commands found in stream
[2026-10-18 07:38:43,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:38:43,128.128 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-18 07:38:47,415.415 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:38:47,418.418 INFO    ] Checking for system updates...
[2026-10-18 07:38:47,460.460 INFO    ] 200
[2026-10-18 07:38:47,463.463 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:38:47,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:38:47,528.528 INFO    ] No update needed
[2026-10-18 07:38:47,531.531 INFO    ] Checking for camera pi updates...
[2026-10-18 07:38:47,567.567 INFO    ] 200
[2026-10-18 07:38:47,570.570 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:38:47,617.617 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:38:57,633.633 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:38:57,674.674 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:38:57,686.686 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:38:57,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:38:57,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:38:57,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:38:59,744.744 INFO    ] ================================================
[2026-10-18 07:38:59,759.759 INFO    ] Launching Daemon at Sun Oct 18 07:38:59 IST 2026
[2026-10-18 07:38:59,770.770 INFO    ] ================================================
[2026-10-18 07:39:00,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:39:00
[2026-10-18 07:39:00,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:39:01,183.183 INFO    ] Initializing speech engine...
[2026-10-18 07:39:01,189.189 INFO    ] 2026-10-18 07:39:01
[2026-10-18 07:39:01,493.493 INFO    ] 2026-10-18 07:39:01
[2026-10-18 07:39:01,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:39:01,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:39:01,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:39:01,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:39:01,980.980 INFO    ] time= 18/10/2026 07:39:01
[2026-10-18 07:39:01,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:39:02,000.000 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:39:02,141.141 INFO    ] No existing commands found in stream
[2026-10-18 07:39:07,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:39:07,176.176 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-18 07:39:10,391.391 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:39:10,394.394 INFO    ] Checking for system updates...
[2026-10-18 07:39:10,431.431 INFO    ] 200
[2026-10-18 07:39:10,434.434 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:39:10,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:39:10,492.492 INFO    ] No update needed
[2026-10-18 07:39:10,494.494 INFO    ] Checking for camera pi updates...
[2026-10-18 07:39:10,529.529 INFO    ] 200
[2026-10-18 07:39:10,532.532 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:39:10,573.573 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:39:20,588.588 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:39:20,628.628 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:39:20,639.639 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:39:20,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:39:20,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:39:20,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:39:22,693.693 INFO    ] ================================================
[2026-10-18 07:39:22,709.709 INFO    ] Launching Daemon at Sun Oct 18 07:39:22 IST 2026
[2026-10-18 07:39:22,720.720 INFO    ] ================================================
[2026-10-18 07:39:23,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:39:23
[2026-10-18 07:39:23,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:39:24,280.280 INFO    ] Initializing speech engine...
[2026-10-18 07:39:24,289.289 INFO    ] 2026-10-18 07:39:24
[2026-10-18 07:39:24,573.573 INFO    ] 2026-10-18 07:39:24
[2026-10-18 07:39:24,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:39:24,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:39:24,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:39:25,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:39:25,114.114 INFO    ] time= 18/10/2026 07:39:25
[2026-10-18 07:39:25,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:39:25,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:39:25,269.269 INFO    ] No existing commands found in stream
[2026-10-18 07:39:30,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:39:30,296.296 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-18 07:39:33,884.884 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:39:33,887.887 INFO    ] Checking for system updates...
[2026-10-18 07:39:33,927.927 INFO    ] 200
[2026-10-18 07:39:33,930.930 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:39:33,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:39:33,992.992 INFO    ] No update needed
[2026-10-18 07:39:33,995.995 INFO    ] Checking for camera pi updates...
[2026-10-18 07:39:34,030.030 INFO    ] 200
[2026-10-18 07:39:34,033.033 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:39:34,076.076 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:39:44,091.091 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:39:44,131.131 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:39:44,142.142 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:39:44,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:39:44,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:39:44,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:39:46,198.198 INFO    ] ================================================
[2026-10-18 07:39:46,213.213 INFO    ] Launching Daemon at Sun Oct 18 07:39:46 IST 2026
[2026-10-18 07:39:46,225.225 INFO    ] ================================================
[2026-10-18 07:39:46,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:39:46
[2026-10-18 07:39:47,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:39:47,847.847 INFO    ] Initializing speech engine...
[2026-10-18 07:39:47,852.852 INFO    ] 2026-10-18 07:39:47
[2026-10-18 07:39:48,164.164 INFO    ] 2026-10-18 07:39:48
[2026-10-18 07:39:48,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:39:48,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:39:48,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:39:48,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:39:48,666.666 INFO    ] time= 18/10/2026 07:39:48
[2026-10-18 07:39:48,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:39:48,701.701 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:39:48,816.816 INFO    ] No existing commands found in stream
[2026-10-18 07:39:53,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:39:53,832.832 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-18 07:39:57,668.668 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:39:57,671.671 INFO    ] Checking for system updates...
[2026-10-18 07:39:57,715.715 INFO    ] 200
[2026-10-18 07:39:57,718.718 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:39:57,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:39:57,774.774 INFO    ] No update needed
[2026-10-18 07:39:57,777.777 INFO    ] Checking for camera pi updates...
[2026-10-18 07:39:57,812.812 INFO    ] 200
[2026-10-18 07:39:57,814.814 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:39:57,857.857 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:40:07,874.874 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:40:07,914.914 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:40:07,926.926 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:40:07,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:40:07,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:40:07,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:40:09,980.980 INFO    ] ================================================
[2026-10-18 07:40:10,996.996 INFO    ] Launching Daemon at Sun Oct 18 07:40:09 IST 2026
[2026-10-18 07:40:10,007.007 INFO    ] ================================================
[2026-10-18 07:40:10,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:40:10
[2026-10-18 07:40:11,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:40:11,418.418 INFO    ] Initializing speech engine...
[2026-10-18 07:40:11,434.434 INFO    ] 2026-10-18 07:40:11
[2026-10-18 07:40:11,689.689 INFO    ] 2026-10-18 07:40:11
[2026-10-18 07:40:11,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:40:11,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:40:11,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:40:12,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:40:12,255.255 INFO    ] time= 18/10/2026 07:40:12
[2026-10-18 07:40:12,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:40:12,278.278 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:40:12,418.418 INFO    ] No existing commands found in stream
[2026-10-18 07:40:17,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:40:17,443.443 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-18 07:40:19,173.173 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:40:19,175.175 INFO    ] Checking for system updates...
[2026-10-18 07:40:19,211.211 INFO    ] 200
[2026-10-18 07:40:19,213.213 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:40:19,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:40:19,269.269 INFO    ] No update needed
[2026-10-18 07:40:19,272.272 INFO    ] Checking for camera pi updates...
[2026-10-18 07:40:19,305.305 INFO    ] 200
[2026-10-18 07:40:19,308.308 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:40:19,348.348 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:40:29,363.363 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:40:29,399.399 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:40:29,409.409 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:40:29,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:40:29,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:40:29,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:40:31,461.461 INFO    ] ================================================
[2026-10-18 07:40:31,477.477 INFO    ] Launching Daemon at Sun Oct 18 07:40:31 IST 2026
[2026-10-18 07:40:31,488.488 INFO    ] ================================================
[2026-10-18 07:40:32,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:40:32
[2026-10-18 07:40:32,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:40:33,013.013 INFO    ] Initializing speech engine...
[2026-10-18 07:40:33,027.027 INFO    ] 2026-10-18 07:40:33
[2026-10-18 07:40:33,321.321 INFO    ] 2026-10-18 07:40:33
[2026-10-18 07:40:33,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:40:33,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:40:33,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:40:33,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:40:33,837.837 INFO    ] time= 18/10/2026 07:40:33
[2026-10-18 07:40:33,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:40:33,943.943 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:40:34,081.081 INFO    ] No existing commands found in stream
[2026-10-18 07:40:39,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:40:39,101.101 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-18 07:40:41,822.822 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:40:41,825.825 INFO    ] Checking for system updates...
[2026-10-18 07:40:41,860.860 INFO    ] 200
[2026-10-18 07:40:41,863.863 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:40:41,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:40:41,918.918 INFO    ] No update needed
[2026-10-18 07:40:41,920.920 INFO    ] Checking for camera pi updates...
[2026-10-18 07:40:41,954.954 INFO    ] 200
[2026-10-18 07:40:41,957.957 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:40:41,998.998 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:40:52,012.012 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d35150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:40:52,047.047 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:40:52,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:40:52,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:40:52,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:40:52,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:40:54,108.108 INFO    ] ================================================
[2026-10-18 07:40:54,124.124 INFO    ] Launching Daemon at Sun Oct 18 07:40:54 IST 2026
[2026-10-18 07:40:54,136.136 INFO    ] ================================================
[2026-10-18 07:40:54,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:40:54
[2026-10-18 07:40:55,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:40:55,808.808 INFO    ] Initializing speech engine...
[2026-10-18 07:40:55,816.816 INFO    ] 2026-10-18 07:40:55
[2026-10-18 07:40:56,102.102 INFO    ] 2026-10-18 07:40:56
[2026-10-18 07:40:56,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:40:56,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:40:56,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:40:56,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:40:56,649.649 INFO    ] time= 18/10/2026 07:40:56
[2026-10-18 07:40:56,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:40:56,687.687 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:40:56,806.806 INFO    ] No existing commands found in stream
[2026-10-18 07:41:01,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:41:01,835.835 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-18 07:41:04,983.983 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:41:04,986.986 INFO    ] Checking for system updates...
[2026-10-18 07:41:05,023.023 INFO    ] 200
[2026-10-18 07:41:05,026.026 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:41:05,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:41:05,082.082 INFO    ] No update needed
[2026-10-18 07:41:05,085.085 INFO    ] Checking for camera pi updates...
[2026-10-18 07:41:05,119.119 INFO    ] 200
[2026-10-18 07:41:05,122.122 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:41:05,162.162 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:41:15,178.178 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:41:15,217.217 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:41:15,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:41:15,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:41:15,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:41:15,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:41:17,284.284 INFO    ] ================================================
[2026-10-18 07:41:17,300.300 INFO    ] Launching Daemon at Sun Oct 18 07:41:17 IST 2026
[2026-10-18 07:41:17,311.311 INFO    ] ================================================
[2026-10-18 07:41:17,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:41:17
[2026-10-18 07:41:18,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:41:18,832.832 INFO    ] Initializing speech engine...
[2026-10-18 07:41:18,845.845 INFO    ] 2026-10-18 07:41:18
[2026-10-18 07:41:19,107.107 INFO    ] 2026-10-18 07:41:19
[2026-10-18 07:41:19,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:41:19,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:41:19,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:41:19,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:41:19,578.578 INFO    ] time= 18/10/2026 07:41:19
[2026-10-18 07:41:19,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:41:19,645.645 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:41:19,794.794 INFO    ] No existing commands found in stream
[2026-10-18 07:41:24,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:41:24,809.809 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-18 07:41:26,543.543 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 07:41:26,546.546 INFO    ] Checking for system updates...
[2026-10-18 07:41:26,584.584 INFO    ] 200
[2026-10-18 07:41:26,587.587 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:41:26,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:41:26,641.641 INFO    ] No update needed
[2026-10-18 07:41:26,644.644 INFO    ] Checking for camera pi updates...
[2026-10-18 07:41:26,677.677 INFO    ] 200
[2026-10-18 07:41:26,680.680 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:41:26,721.721 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:41:36,736.736 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:41:36,771.771 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:41:36,780.780 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:41:36,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:41:36,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:41:36,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:41:38,832.832 INFO    ] ================================================
[2026-10-18 07:41:38,847.847 INFO    ] Launching Daemon at Sun Oct 18 07:41:38 IST 2026
[2026-10-18 07:41:38,858.858 INFO    ] ================================================
[2026-10-18 07:41:39,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:41:39
[2026-10-18 07:41:40,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:41:40,333.333 INFO    ] Initializing speech engine...
[2026-10-18 07:41:40,344.344 INFO    ] 2026-10-18 07:41:40
[2026-10-18 07:41:40,620.620 INFO    ] 2026-10-18 07:41:40
[2026-10-18 07:41:40,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:41:40,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:41:40,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:41:41,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:41:41,171.171 INFO    ] time= 18/10/2026 07:41:41
[2026-10-18 07:41:41,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:41:41,219.219 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:41:41,361.361 INFO    ] No existing commands found in stream
[2026-10-18 07:41:46,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:41:46,395.395 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-18 07:41:49,609.609 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:41:49,612.612 INFO    ] Checking for system updates...
[2026-10-18 07:41:49,650.650 INFO    ] 200
[2026-10-18 07:41:49,653.653 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:41:49,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:41:49,708.708 INFO    ] No update needed
[2026-10-18 07:41:49,711.711 INFO    ] Checking for camera pi updates...
[2026-10-18 07:41:49,748.748 INFO    ] 200
[2026-10-18 07:41:49,751.751 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:41:49,801.801 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:41:59,815.815 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:41:59,854.854 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:41:59,865.865 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:41:59,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:41:59,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:41:59,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:42:01,929.929 INFO    ] ================================================
[2026-10-18 07:42:01,984.984 INFO    ] Launching Daemon at Sun Oct 18 07:42:01 IST 2026
[2026-10-18 07:42:02,016.016 INFO    ] ================================================
[2026-10-18 07:42:02,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:42:02
[2026-10-18 07:42:03,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:42:03,857.857 INFO    ] Initializing speech engine...
[2026-10-18 07:42:03,880.880 INFO    ] 2026-10-18 07:42:03
[2026-10-18 07:42:04,136.136 INFO    ] 2026-10-18 07:42:04
[2026-10-18 07:42:04,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:42:04,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:42:04,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:42:04,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:42:04,692.692 INFO    ] time= 18/10/2026 07:42:04
[2026-10-18 07:42:04,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:42:04,716.716 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:42:04,849.849 INFO    ] No existing commands found in stream
[2026-10-18 07:42:09,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:42:09,874.874 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-18 07:42:12,024.024 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:42:12,027.027 INFO    ] Checking for system updates...
[2026-10-18 07:42:12,064.064 INFO    ] 200
[2026-10-18 07:42:12,067.067 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:42:12,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:42:12,122.122 INFO    ] No update needed
[2026-10-18 07:42:12,125.125 INFO    ] Checking for camera pi updates...
[2026-10-18 07:42:12,159.159 INFO    ] 200
[2026-10-18 07:42:12,161.161 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:42:12,202.202 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:42:22,217.217 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:42:22,252.252 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:42:22,261.261 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:42:22,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:42:22,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:42:22,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:42:24,314.314 INFO    ] ================================================
[2026-10-18 07:42:24,329.329 INFO    ] Launching Daemon at Sun Oct 18 07:42:24 IST 2026
[2026-10-18 07:42:24,340.340 INFO    ] ================================================
[2026-10-18 07:42:24,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:42:24
[2026-10-18 07:42:25,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:42:25,794.794 INFO    ] Initializing speech engine...
[2026-10-18 07:42:25,800.800 INFO    ] 2026-10-18 07:42:25
[2026-10-18 07:42:26,071.071 INFO    ] 2026-10-18 07:42:26
[2026-10-18 07:42:26,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:42:26,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:42:26,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:42:26,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:42:26,619.619 INFO    ] time= 18/10/2026 07:42:26
[2026-10-18 07:42:26,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:42:26,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:42:26,772.772 INFO    ] No existing commands found in stream
[2026-10-18 07:42:31,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:42:31,791.791 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-18 07:42:33,572.572 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:42:33,575.575 INFO    ] Checking for system updates...
[2026-10-18 07:42:33,612.612 INFO    ] 200
[2026-10-18 07:42:33,614.614 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:42:33,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:42:33,670.670 INFO    ] No update needed
[2026-10-18 07:42:33,673.673 INFO    ] Checking for camera pi updates...
[2026-10-18 07:42:33,710.710 INFO    ] 200
[2026-10-18 07:42:33,712.712 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:42:33,755.755 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:42:43,771.771 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:42:43,807.807 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:42:43,817.817 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:42:43,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:42:43,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:42:43,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:42:45,869.869 INFO    ] ================================================
[2026-10-18 07:42:45,884.884 INFO    ] Launching Daemon at Sun Oct 18 07:42:45 IST 2026
[2026-10-18 07:42:45,894.894 INFO    ] ================================================
[2026-10-18 07:42:46,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:42:46
[2026-10-18 07:42:47,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:42:47,309.309 INFO    ] Initializing speech engine...
[2026-10-18 07:42:47,317.317 INFO    ] 2026-10-18 07:42:47
[2026-10-18 07:42:47,606.606 INFO    ] 2026-10-18 07:42:47
[2026-10-18 07:42:47,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:42:47,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:42:47,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:42:48,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:42:48,138.138 INFO    ] time= 18/10/2026 07:42:48
[2026-10-18 07:42:48,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:42:48,231.231 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:42:48,363.363 INFO    ] No existing commands found in stream
[2026-10-18 07:42:53,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:42:53,384.384 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-18 07:42:54,427.427 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:42:54,430.430 INFO    ] Checking for system updates...
[2026-10-18 07:42:54,466.466 INFO    ] 200
[2026-10-18 07:42:54,468.468 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:42:54,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:42:54,527.527 INFO    ] No update needed
[2026-10-18 07:42:54,530.530 INFO    ] Checking for camera pi updates...
[2026-10-18 07:42:54,564.564 INFO    ] 200
[2026-10-18 07:42:54,566.566 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:42:54,606.606 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:43:04,620.620 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:43:04,655.655 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:43:04,665.665 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:43:04,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:43:04,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:43:04,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:43:06,718.718 INFO    ] ================================================
[2026-10-18 07:43:06,733.733 INFO    ] Launching Daemon at Sun Oct 18 07:43:06 IST 2026
[2026-10-18 07:43:06,744.744 INFO    ] ================================================
[2026-10-18 07:43:07,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:43:07
[2026-10-18 07:43:07,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:43:08,150.150 INFO    ] Initializing speech engine...
[2026-10-18 07:43:08,158.158 INFO    ] 2026-10-18 07:43:08
[2026-10-18 07:43:08,450.450 INFO    ] 2026-10-18 07:43:08
[2026-10-18 07:43:08,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:43:08,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:43:08,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:43:08,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:43:08,975.975 INFO    ] time= 18/10/2026 07:43:08
[2026-10-18 07:43:09,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:43:09,075.075 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:43:09,228.228 INFO    ] No existing commands found in stream
[2026-10-18 07:43:14,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:43:14,249.249 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-18 07:43:14,746.746 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:43:14,749.749 INFO    ] Checking for system updates...
[2026-10-18 07:43:14,785.785 INFO    ] 200
[2026-10-18 07:43:14,788.788 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:43:14,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:43:14,843.843 INFO    ] No update needed
[2026-10-18 07:43:14,845.845 INFO    ] Checking for camera pi updates...
[2026-10-18 07:43:14,879.879 INFO    ] 200
[2026-10-18 07:43:14,881.881 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:43:14,922.922 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:43:24,937.937 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:43:24,972.972 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:43:24,982.982 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:43:24,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:43:24,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:43:24,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:43:27,033.033 INFO    ] ================================================
[2026-10-18 07:43:27,049.049 INFO    ] Launching Daemon at Sun Oct 18 07:43:27 IST 2026
[2026-10-18 07:43:27,060.060 INFO    ] ================================================
[2026-10-18 07:43:27,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:43:27
[2026-10-18 07:43:28,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:43:28,471.471 INFO    ] Initializing speech engine...
[2026-10-18 07:43:28,478.478 INFO    ] 2026-10-18 07:43:28
[2026-10-18 07:43:28,771.771 INFO    ] 2026-10-18 07:43:28
[2026-10-18 07:43:28,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:43:29,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:43:29,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:43:29,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:43:29,173.173 INFO    ] time= 18/10/2026 07:43:29
[2026-10-18 07:43:29,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:43:29,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:43:29,355.355 INFO    ] No existing commands found in stream
[2026-10-18 07:43:34,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:43:34,388.388 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-18 07:43:38,450.450 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:43:38,453.453 INFO    ] Checking for system updates...
[2026-10-18 07:43:38,489.489 INFO    ] 200
[2026-10-18 07:43:38,491.491 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:43:38,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:43:38,547.547 INFO    ] No update needed
[2026-10-18 07:43:38,549.549 INFO    ] Checking for camera pi updates...
[2026-10-18 07:43:38,583.583 INFO    ] 200
[2026-10-18 07:43:38,585.585 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:43:38,625.625 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:43:48,640.640 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:43:48,675.675 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:43:48,685.685 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:43:48,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:43:48,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:43:48,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:43:50,738.738 INFO    ] ================================================
[2026-10-18 07:43:50,753.753 INFO    ] Launching Daemon at Sun Oct 18 07:43:50 IST 2026
[2026-10-18 07:43:50,764.764 INFO    ] ================================================
[2026-10-18 07:43:51,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:43:51
[2026-10-18 07:43:52,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:43:52,412.412 INFO    ] Initializing speech engine...
[2026-10-18 07:43:52,420.420 INFO    ] 2026-10-18 07:43:52
[2026-10-18 07:43:52,743.743 INFO    ] 2026-10-18 07:43:52
[2026-10-18 07:43:52,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:43:52,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:43:52,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:43:53,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:43:53,190.190 INFO    ] time= 18/10/2026 07:43:53
[2026-10-18 07:43:53,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:43:53,270.270 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:43:53,407.407 INFO    ] No existing commands found in stream
[2026-10-18 07:43:58,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:43:58,437.437 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-18 07:44:00,005.005 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:44:00,008.008 INFO    ] Checking for system updates...
[2026-10-18 07:44:00,045.045 INFO    ] 200
[2026-10-18 07:44:00,048.048 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:44:00,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:44:00,105.105 INFO    ] No update needed
[2026-10-18 07:44:00,108.108 INFO    ] Checking for camera pi updates...
[2026-10-18 07:44:00,143.143 INFO    ] 200
[2026-10-18 07:44:00,146.146 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:44:00,188.188 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:44:10,202.202 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:44:10,242.242 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:44:10,253.253 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:44:10,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:44:10,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:44:10,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:44:12,308.308 INFO    ] ================================================
[2026-10-18 07:44:12,323.323 INFO    ] Launching Daemon at Sun Oct 18 07:44:12 IST 2026
[2026-10-18 07:44:12,334.334 INFO    ] ================================================
[2026-10-18 07:44:12,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:44:12
[2026-10-18 07:44:13,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:44:13,750.750 INFO    ] Initializing speech engine...
[2026-10-18 07:44:13,773.773 INFO    ] 2026-10-18 07:44:13
[2026-10-18 07:44:14,028.028 INFO    ] 2026-10-18 07:44:14
[2026-10-18 07:44:14,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:44:14,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:44:14,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:44:14,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:44:14,505.505 INFO    ] time= 18/10/2026 07:44:14
[2026-10-18 07:44:14,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:44:14,605.605 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:44:14,759.759 INFO    ] No existing commands found in stream
[2026-10-18 07:44:19,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:44:19,780.780 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-18 07:44:21,249.249 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 07:44:21,252.252 INFO    ] Checking for system updates...
[2026-10-18 07:44:21,288.288 INFO    ] 200
[2026-10-18 07:44:21,290.290 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:44:21,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:44:21,347.347 INFO    ] No update needed
[2026-10-18 07:44:21,349.349 INFO    ] Checking for camera pi updates...
[2026-10-18 07:44:21,384.384 INFO    ] 200
[2026-10-18 07:44:21,387.387 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:44:21,429.429 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:44:31,446.446 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:44:31,485.485 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:44:31,496.496 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:44:31,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:44:31,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:44:31,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:44:33,551.551 INFO    ] ================================================
[2026-10-18 07:44:33,567.567 INFO    ] Launching Daemon at Sun Oct 18 07:44:33 IST 2026
[2026-10-18 07:44:33,584.584 INFO    ] ================================================
[2026-10-18 07:44:34,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:44:34
[2026-10-18 07:44:34,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:44:35,006.006 INFO    ] Initializing speech engine...
[2026-10-18 07:44:35,014.014 INFO    ] 2026-10-18 07:44:35
[2026-10-18 07:44:35,266.266 INFO    ] 2026-10-18 07:44:35
[2026-10-18 07:44:35,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:44:35,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:44:35,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:44:35,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:44:35,719.719 INFO    ] time= 18/10/2026 07:44:35
[2026-10-18 07:44:35,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:44:35,832.832 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:44:35,974.974 INFO    ] No existing commands found in stream
[2026-10-18 07:44:40,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:44:41,002.002 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-18 07:44:43,596.596 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 07:44:43,600.600 INFO    ] Checking for system updates...
[2026-10-18 07:44:43,637.637 INFO    ] 200
[2026-10-18 07:44:43,640.640 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:44:43,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:44:43,697.697 INFO    ] No update needed
[2026-10-18 07:44:43,699.699 INFO    ] Checking for camera pi updates...
[2026-10-18 07:44:43,733.733 INFO    ] 200
[2026-10-18 07:44:43,736.736 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:44:43,778.778 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:44:53,795.795 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:44:53,834.834 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:44:53,845.845 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:44:53,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:44:53,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:44:53,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:44:55,901.901 INFO    ] ================================================
[2026-10-18 07:44:55,917.917 INFO    ] Launching Daemon at Sun Oct 18 07:44:55 IST 2026
[2026-10-18 07:44:55,928.928 INFO    ] ================================================
[2026-10-18 07:44:56,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:44:56
[2026-10-18 07:44:57,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:44:57,348.348 INFO    ] Initializing speech engine...
[2026-10-18 07:44:57,357.357 INFO    ] 2026-10-18 07:44:57
[2026-10-18 07:44:57,606.606 INFO    ] 2026-10-18 07:44:57
[2026-10-18 07:44:57,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:44:57,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:44:57,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:44:58,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:44:58,049.049 INFO    ] time= 18/10/2026 07:44:58
[2026-10-18 07:44:58,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:44:58,142.142 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:44:58,231.231 INFO    ] No existing commands found in stream
[2026-10-18 07:45:03,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:45:03,241.241 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-18 07:45:04,434.434 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:45:04,436.436 INFO    ] Checking for system updates...
[2026-10-18 07:45:04,472.472 INFO    ] 200
[2026-10-18 07:45:04,474.474 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:45:04,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:45:04,528.528 INFO    ] No update needed
[2026-10-18 07:45:04,531.531 INFO    ] Checking for camera pi updates...
[2026-10-18 07:45:04,569.569 INFO    ] 200
[2026-10-18 07:45:04,571.571 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:45:04,625.625 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:45:14,640.640 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:45:14,682.682 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:45:14,691.691 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:45:14,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:45:14,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:45:14,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:45:16,745.745 INFO    ] ================================================
[2026-10-18 07:45:16,760.760 INFO    ] Launching Daemon at Sun Oct 18 07:45:16 IST 2026
[2026-10-18 07:45:16,771.771 INFO    ] ================================================
[2026-10-18 07:45:17,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:45:17
[2026-10-18 07:45:18,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:45:18,323.323 INFO    ] Initializing speech engine...
[2026-10-18 07:45:18,331.331 INFO    ] 2026-10-18 07:45:18
[2026-10-18 07:45:18,605.605 INFO    ] 2026-10-18 07:45:18
[2026-10-18 07:45:18,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:45:18,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:45:18,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:45:19,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:45:19,165.165 INFO    ] time= 18/10/2026 07:45:19
[2026-10-18 07:45:19,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:45:19,193.193 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:45:19,322.322 INFO    ] No existing commands found in stream
[2026-10-18 07:45:24,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:45:24,342.342 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-18 07:45:27,150.150 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:45:27,153.153 INFO    ] Checking for system updates...
[2026-10-18 07:45:27,191.191 INFO    ] 200
[2026-10-18 07:45:27,193.193 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:45:27,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:45:27,250.250 INFO    ] No update needed
[2026-10-18 07:45:27,253.253 INFO    ] Checking for camera pi updates...
[2026-10-18 07:45:27,288.288 INFO    ] 200
[2026-10-18 07:45:27,291.291 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:45:27,333.333 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:45:37,350.350 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:45:37,389.389 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:45:37,400.400 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:45:37,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:45:37,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:45:37,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:45:39,457.457 INFO    ] ================================================
[2026-10-18 07:45:39,472.472 INFO    ] Launching Daemon at Sun Oct 18 07:45:39 IST 2026
[2026-10-18 07:45:39,483.483 INFO    ] ================================================
[2026-10-18 07:45:40,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:45:40
[2026-10-18 07:45:40,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:45:40,931.931 INFO    ] Initializing speech engine...
[2026-10-18 07:45:40,937.937 INFO    ] 2026-10-18 07:45:40
[2026-10-18 07:45:41,233.233 INFO    ] 2026-10-18 07:45:41
[2026-10-18 07:45:41,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:45:41,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:45:41,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:45:41,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:45:41,615.615 INFO    ] time= 18/10/2026 07:45:41
[2026-10-18 07:45:41,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:45:41,657.657 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:45:41,743.743 INFO    ] No existing commands found in stream
[2026-10-18 07:45:46,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:45:46,781.781 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-18 07:45:48,034.034 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:45:48,036.036 INFO    ] Checking for system updates...
[2026-10-18 07:45:48,072.072 INFO    ] 200
[2026-10-18 07:45:48,075.075 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:45:48,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:45:48,131.131 INFO    ] No update needed
[2026-10-18 07:45:48,133.133 INFO    ] Checking for camera pi updates...
[2026-10-18 07:45:48,173.173 INFO    ] 200
[2026-10-18 07:45:48,176.176 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:45:48,217.217 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:45:58,232.232 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:45:58,267.267 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:45:58,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:45:58,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:45:58,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:45:58,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:46:00,330.330 INFO    ] ================================================
[2026-10-18 07:46:00,346.346 INFO    ] Launching Daemon at Sun Oct 18 07:46:00 IST 2026
[2026-10-18 07:46:00,358.358 INFO    ] ================================================
[2026-10-18 07:46:00,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:46:00
[2026-10-18 07:46:01,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:46:01,981.981 INFO    ] Initializing speech engine...
[2026-10-18 07:46:02,002.002 INFO    ] 2026-10-18 07:46:01
[2026-10-18 07:46:02,290.290 INFO    ] 2026-10-18 07:46:02
[2026-10-18 07:46:02,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:46:02,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:46:02,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:46:02,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:46:02,797.797 INFO    ] time= 18/10/2026 07:46:02
[2026-10-18 07:46:02,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:46:02,919.919 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:46:03,045.045 INFO    ] No existing commands found in stream
[2026-10-18 07:46:08,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:46:08,078.078 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-18 07:46:10,203.203 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 07:46:10,207.207 INFO    ] Checking for system updates...
[2026-10-18 07:46:10,244.244 INFO    ] 200
[2026-10-18 07:46:10,247.247 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:46:10,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:46:10,304.304 INFO    ] No update needed
[2026-10-18 07:46:10,307.307 INFO    ] Checking for camera pi updates...
[2026-10-18 07:46:10,341.341 INFO    ] 200
[2026-10-18 07:46:10,345.345 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:46:10,387.387 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:46:20,404.404 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:46:20,446.446 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:46:20,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:46:20,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:46:20,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:46:20,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:46:22,514.514 INFO    ] ================================================
[2026-10-18 07:46:22,530.530 INFO    ] Launching Daemon at Sun Oct 18 07:46:22 IST 2026
[2026-10-18 07:46:22,542.542 INFO    ] ================================================
[2026-10-18 07:46:23,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:46:23
[2026-10-18 07:46:23,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:46:23,947.947 INFO    ] Initializing speech engine...
[2026-10-18 07:46:23,967.967 INFO    ] 2026-10-18 07:46:23
[2026-10-18 07:46:24,224.224 INFO    ] 2026-10-18 07:46:24
[2026-10-18 07:46:24,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:46:24,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:46:24,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:46:24,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:46:24,743.743 INFO    ] time= 18/10/2026 07:46:24
[2026-10-18 07:46:24,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:46:24,801.801 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:46:24,934.934 INFO    ] No existing commands found in stream
[2026-10-18 07:46:29,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:46:29,963.963 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-18 07:46:33,098.098 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:46:33,101.101 INFO    ] Checking for system updates...
[2026-10-18 07:46:33,139.139 INFO    ] 200
[2026-10-18 07:46:33,141.141 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:46:33,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:46:33,199.199 INFO    ] No update needed
[2026-10-18 07:46:33,201.201 INFO    ] Checking for camera pi updates...
[2026-10-18 07:46:33,237.237 INFO    ] 200
[2026-10-18 07:46:33,240.240 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:46:33,282.282 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:46:43,298.298 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:46:43,339.339 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:46:43,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:46:43,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:46:43,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:46:43,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:46:45,408.408 INFO    ] ================================================
[2026-10-18 07:46:45,424.424 INFO    ] Launching Daemon at Sun Oct 18 07:46:45 IST 2026
[2026-10-18 07:46:45,434.434 INFO    ] ================================================
[2026-10-18 07:46:46,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:46:46
[2026-10-18 07:46:46,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:46:47,081.081 INFO    ] Initializing speech engine...
[2026-10-18 07:46:47,090.090 INFO    ] 2026-10-18 07:46:47
[2026-10-18 07:46:47,365.365 INFO    ] 2026-10-18 07:46:47
[2026-10-18 07:46:47,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:46:47,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:46:47,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:46:47,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:46:47,794.794 INFO    ] time= 18/10/2026 07:46:47
[2026-10-18 07:46:47,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:46:47,807.807 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:46:47,952.952 INFO    ] No existing commands found in stream
[2026-10-18 07:46:52,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:46:52,980.980 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-18 07:46:54,566.566 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:46:54,569.569 INFO    ] Checking for system updates...
[2026-10-18 07:46:54,605.605 INFO    ] 200
[2026-10-18 07:46:54,608.608 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:46:54,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:46:54,664.664 INFO    ] No update needed
[2026-10-18 07:46:54,666.666 INFO    ] Checking for camera pi updates...
[2026-10-18 07:46:54,701.701 INFO    ] 200
[2026-10-18 07:46:54,704.704 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:46:54,747.747 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:47:04,761.761 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:47:04,796.796 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:47:04,806.806 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:47:04,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:47:04,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:47:04,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:47:06,859.859 INFO    ] ================================================
[2026-10-18 07:47:06,874.874 INFO    ] Launching Daemon at Sun Oct 18 07:47:06 IST 2026
[2026-10-18 07:47:06,885.885 INFO    ] ================================================
[2026-10-18 07:47:07,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:47:07
[2026-10-18 07:47:08,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:47:08,503.503 INFO    ] Initializing speech engine...
[2026-10-18 07:47:08,517.517 INFO    ] 2026-10-18 07:47:08
[2026-10-18 07:47:08,828.828 INFO    ] 2026-10-18 07:47:08
[2026-10-18 07:47:08,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:47:09,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:47:09,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:47:09,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:47:09,337.337 INFO    ] time= 18/10/2026 07:47:09
[2026-10-18 07:47:09,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:47:09,386.386 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:47:09,497.497 INFO    ] No existing commands found in stream
[2026-10-18 07:47:14,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:47:14,531.531 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-18 07:47:18,291.291 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 07:47:18,294.294 INFO    ] Checking for system updates...
[2026-10-18 07:47:18,330.330 INFO    ] 200
[2026-10-18 07:47:18,333.333 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:47:18,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:47:18,390.390 INFO    ] No update needed
[2026-10-18 07:47:18,392.392 INFO    ] Checking for camera pi updates...
[2026-10-18 07:47:18,427.427 INFO    ] 200
[2026-10-18 07:47:18,429.429 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:47:18,470.470 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:47:28,486.486 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:47:28,520.520 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:47:28,530.530 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:47:28,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:47:28,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:47:28,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:47:30,582.582 INFO    ] ================================================
[2026-10-18 07:47:30,598.598 INFO    ] Launching Daemon at Sun Oct 18 07:47:30 IST 2026
[2026-10-18 07:47:30,609.609 INFO    ] ================================================
[2026-10-18 07:47:31,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:47:31
[2026-10-18 07:47:31,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:47:32,221.221 INFO    ] Initializing speech engine...
[2026-10-18 07:47:32,232.232 INFO    ] 2026-10-18 07:47:32
[2026-10-18 07:47:32,488.488 INFO    ] 2026-10-18 07:47:32
[2026-10-18 07:47:32,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:47:32,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:47:32,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:47:32,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:47:33,012.012 INFO    ] time= 18/10/2026 07:47:32
[2026-10-18 07:47:33,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:47:33,076.076 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:47:33,222.222 INFO    ] No existing commands found in stream
[2026-10-18 07:47:38,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:47:38,238.238 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-18 07:47:42,592.592 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:47:42,594.594 INFO    ] Checking for system updates...
[2026-10-18 07:47:42,630.630 INFO    ] 200
[2026-10-18 07:47:42,633.633 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:47:42,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:47:42,689.689 INFO    ] No update needed
[2026-10-18 07:47:42,691.691 INFO    ] Checking for camera pi updates...
[2026-10-18 07:47:42,724.724 INFO    ] 200
[2026-10-18 07:47:42,727.727 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:47:42,767.767 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:47:52,784.784 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:47:52,820.820 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:47:52,830.830 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:47:52,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:47:52,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:47:52,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:47:54,883.883 INFO    ] ================================================
[2026-10-18 07:47:54,898.898 INFO    ] Launching Daemon at Sun Oct 18 07:47:54 IST 2026
[2026-10-18 07:47:54,909.909 INFO    ] ================================================
[2026-10-18 07:47:55,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:47:55
[2026-10-18 07:47:56,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:47:56,371.371 INFO    ] Initializing speech engine...
[2026-10-18 07:47:56,397.397 INFO    ] 2026-10-18 07:47:56
[2026-10-18 07:47:56,664.664 INFO    ] 2026-10-18 07:47:56
[2026-10-18 07:47:56,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:47:56,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:47:56,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:47:57,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:47:57,088.088 INFO    ] time= 18/10/2026 07:47:57
[2026-10-18 07:47:57,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:47:57,100.100 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:47:57,178.178 INFO    ] No existing commands found in stream
[2026-10-18 07:48:02,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:48:02,214.214 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-18 07:48:06,548.548 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 07:48:06,551.551 INFO    ] Checking for system updates...
[2026-10-18 07:48:06,589.589 INFO    ] 200
[2026-10-18 07:48:06,592.592 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:48:06,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:48:06,647.647 INFO    ] No update needed
[2026-10-18 07:48:06,650.650 INFO    ] Checking for camera pi updates...
[2026-10-18 07:48:06,683.683 INFO    ] 200
[2026-10-18 07:48:06,686.686 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:48:06,727.727 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:48:16,742.742 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:48:16,778.778 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:48:16,788.788 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:48:16,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:48:16,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:48:16,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:48:18,841.841 INFO    ] ================================================
[2026-10-18 07:48:18,856.856 INFO    ] Launching Daemon at Sun Oct 18 07:48:18 IST 2026
[2026-10-18 07:48:18,867.867 INFO    ] ================================================
[2026-10-18 07:48:19,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:48:19
[2026-10-18 07:48:20,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:48:20,287.287 INFO    ] Initializing speech engine...
[2026-10-18 07:48:20,303.303 INFO    ] 2026-10-18 07:48:20
[2026-10-18 07:48:20,582.582 INFO    ] 2026-10-18 07:48:20
[2026-10-18 07:48:20,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:48:20,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:48:20,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:48:21,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:48:21,015.015 INFO    ] time= 18/10/2026 07:48:21
[2026-10-18 07:48:21,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:48:21,088.088 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:48:21,182.182 INFO    ] No existing commands found in stream
[2026-10-18 07:48:26,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:48:26,207.207 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-18 07:48:30,597.597 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 07:48:30,600.600 INFO    ] Checking for system updates...
[2026-10-18 07:48:30,637.637 INFO    ] 200
[2026-10-18 07:48:30,640.640 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:48:30,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:48:30,695.695 INFO    ] No update needed
[2026-10-18 07:48:30,697.697 INFO    ] Checking for camera pi updates...
[2026-10-18 07:48:30,731.731 INFO    ] 200
[2026-10-18 07:48:30,733.733 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:48:30,773.773 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:48:40,788.788 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:48:40,823.823 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:48:40,832.832 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:48:40,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:48:40,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:48:40,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:48:42,884.884 INFO    ] ================================================
[2026-10-18 07:48:42,899.899 INFO    ] Launching Daemon at Sun Oct 18 07:48:42 IST 2026
[2026-10-18 07:48:42,910.910 INFO    ] ================================================
[2026-10-18 07:48:43,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:48:43
[2026-10-18 07:48:44,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:48:44,335.335 INFO    ] Initializing speech engine...
[2026-10-18 07:48:44,341.341 INFO    ] 2026-10-18 07:48:44
[2026-10-18 07:48:44,598.598 INFO    ] 2026-10-18 07:48:44
[2026-10-18 07:48:44,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:48:44,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:48:44,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:48:45,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:48:45,092.092 INFO    ] time= 18/10/2026 07:48:45
[2026-10-18 07:48:45,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:48:45,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:48:45,286.286 INFO    ] No existing commands found in stream
[2026-10-18 07:48:50,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:48:50,310.310 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-18 07:48:52,048.048 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:48:52,051.051 INFO    ] Checking for system updates...
[2026-10-18 07:48:52,087.087 INFO    ] 200
[2026-10-18 07:48:52,090.090 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:48:52,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:48:52,145.145 INFO    ] No update needed
[2026-10-18 07:48:52,148.148 INFO    ] Checking for camera pi updates...
[2026-10-18 07:48:52,182.182 INFO    ] 200
[2026-10-18 07:48:52,184.184 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:48:52,227.227 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:49:02,244.244 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:49:02,287.287 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:49:02,300.300 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:49:02,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:49:02,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:49:02,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:49:04,359.359 INFO    ] ================================================
[2026-10-18 07:49:04,375.375 INFO    ] Launching Daemon at Sun Oct 18 07:49:04 IST 2026
[2026-10-18 07:49:04,385.385 INFO    ] ================================================
[2026-10-18 07:49:04,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:49:04
[2026-10-18 07:49:05,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:49:05,795.795 INFO    ] Initializing speech engine...
[2026-10-18 07:49:05,817.817 INFO    ] 2026-10-18 07:49:05
[2026-10-18 07:49:06,070.070 INFO    ] 2026-10-18 07:49:06
[2026-10-18 07:49:06,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:49:06,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:49:06,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:49:06,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:49:06,573.573 INFO    ] time= 18/10/2026 07:49:06
[2026-10-18 07:49:06,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:49:06,632.632 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:49:06,767.767 INFO    ] No existing commands found in stream
[2026-10-18 07:49:11,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:49:11,790.790 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-18 07:49:15,913.913 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:49:15,915.915 INFO    ] Checking for system updates...
[2026-10-18 07:49:15,951.951 INFO    ] 200
[2026-10-18 07:49:15,954.954 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:49:16,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:49:16,009.009 INFO    ] No update needed
[2026-10-18 07:49:16,012.012 INFO    ] Checking for camera pi updates...
[2026-10-18 07:49:16,049.049 INFO    ] 200
[2026-10-18 07:49:16,052.052 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:49:16,093.093 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:49:26,109.109 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:49:26,148.148 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:49:26,159.159 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:49:26,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:49:26,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:49:26,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:49:28,213.213 INFO    ] ================================================
[2026-10-18 07:49:28,229.229 INFO    ] Launching Daemon at Sun Oct 18 07:49:28 IST 2026
[2026-10-18 07:49:28,240.240 INFO    ] ================================================
[2026-10-18 07:49:28,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:49:28
[2026-10-18 07:49:29,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:49:29,666.666 INFO    ] Initializing speech engine...
[2026-10-18 07:49:29,672.672 INFO    ] 2026-10-18 07:49:29
[2026-10-18 07:49:29,916.916 INFO    ] 2026-10-18 07:49:29
[2026-10-18 07:49:29,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:49:30,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:49:30,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:49:30,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:49:30,380.380 INFO    ] time= 18/10/2026 07:49:30
[2026-10-18 07:49:30,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:49:30,476.476 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:49:30,621.621 INFO    ] No existing commands found in stream
[2026-10-18 07:49:35,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:49:35,640.640 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-18 07:49:39,378.378 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:49:39,381.381 INFO    ] Checking for system updates...
[2026-10-18 07:49:39,417.417 INFO    ] 200
[2026-10-18 07:49:39,419.419 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:49:39,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:49:39,475.475 INFO    ] No update needed
[2026-10-18 07:49:39,477.477 INFO    ] Checking for camera pi updates...
[2026-10-18 07:49:39,510.510 INFO    ] 200
[2026-10-18 07:49:39,513.513 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:49:39,554.554 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:49:49,568.568 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:49:49,603.603 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:49:49,612.612 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:49:49,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:49:49,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:49:49,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:49:51,665.665 INFO    ] ================================================
[2026-10-18 07:49:51,680.680 INFO    ] Launching Daemon at Sun Oct 18 07:49:51 IST 2026
[2026-10-18 07:49:51,691.691 INFO    ] ================================================
[2026-10-18 07:49:52,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:49:52
[2026-10-18 07:49:52,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:49:53,125.125 INFO    ] Initializing speech engine...
[2026-10-18 07:49:53,134.134 INFO    ] 2026-10-18 07:49:53
[2026-10-18 07:49:53,379.379 INFO    ] 2026-10-18 07:49:53
[2026-10-18 07:49:53,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:49:53,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:49:53,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:49:53,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:49:53,904.904 INFO    ] time= 18/10/2026 07:49:53
[2026-10-18 07:49:53,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:49:53,941.941 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:49:54,085.085 INFO    ] No existing commands found in stream
[2026-10-18 07:49:59,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:49:59,100.100 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-18 07:50:02,028.028 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:50:02,032.032 INFO    ] Checking for system updates...
[2026-10-18 07:50:02,079.079 INFO    ] 200
[2026-10-18 07:50:02,082.082 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:50:02,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:50:02,159.159 INFO    ] No update needed
[2026-10-18 07:50:02,162.162 INFO    ] Checking for camera pi updates...
[2026-10-18 07:50:02,224.224 INFO    ] 200
[2026-10-18 07:50:02,237.237 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:50:02,299.299 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:50:12,315.315 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:50:12,351.351 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:50:12,361.361 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:50:12,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:50:12,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:50:12,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:50:14,415.415 INFO    ] ================================================
[2026-10-18 07:50:14,431.431 INFO    ] Launching Daemon at Sun Oct 18 07:50:14 IST 2026
[2026-10-18 07:50:14,442.442 INFO    ] ================================================
[2026-10-18 07:50:15,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:50:15
[2026-10-18 07:50:15,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:50:15,844.844 INFO    ] Initializing speech engine...
[2026-10-18 07:50:15,859.859 INFO    ] 2026-10-18 07:50:15
[2026-10-18 07:50:16,127.127 INFO    ] 2026-10-18 07:50:16
[2026-10-18 07:50:16,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:50:16,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:50:16,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:50:16,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:50:16,596.596 INFO    ] time= 18/10/2026 07:50:16
[2026-10-18 07:50:16,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:50:16,694.694 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:50:16,847.847 INFO    ] No existing commands found in stream
[2026-10-18 07:50:21,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:50:21,865.865 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-18 07:50:23,154.154 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:50:23,157.157 INFO    ] Checking for system updates...
[2026-10-18 07:50:23,194.194 INFO    ] 200
[2026-10-18 07:50:23,197.197 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:50:23,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:50:23,254.254 INFO    ] No update needed
[2026-10-18 07:50:23,257.257 INFO    ] Checking for camera pi updates...
[2026-10-18 07:50:23,292.292 INFO    ] 200
[2026-10-18 07:50:23,295.295 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:50:23,337.337 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:50:33,352.352 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:50:33,392.392 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:50:33,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:50:33,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:50:33,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:50:33,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:50:35,458.458 INFO    ] ================================================
[2026-10-18 07:50:35,473.473 INFO    ] Launching Daemon at Sun Oct 18 07:50:35 IST 2026
[2026-10-18 07:50:35,483.483 INFO    ] ================================================
[2026-10-18 07:50:36,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:50:36
[2026-10-18 07:50:36,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:50:37,034.034 INFO    ] Initializing speech engine...
[2026-10-18 07:50:37,048.048 INFO    ] 2026-10-18 07:50:37
[2026-10-18 07:50:37,319.319 INFO    ] 2026-10-18 07:50:37
[2026-10-18 07:50:37,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:50:37,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:50:37,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:50:37,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:50:37,870.870 INFO    ] time= 18/10/2026 07:50:37
[2026-10-18 07:50:37,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:50:37,921.921 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:50:38,049.049 INFO    ] No existing commands found in stream
[2026-10-18 07:50:43,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:50:43,084.084 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-18 07:50:45,712.712 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:50:45,715.715 INFO    ] Checking for system updates...
[2026-10-18 07:50:45,751.751 INFO    ] 200
[2026-10-18 07:50:45,754.754 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:50:45,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:50:45,810.810 INFO    ] No update needed
[2026-10-18 07:50:45,812.812 INFO    ] Checking for camera pi updates...
[2026-10-18 07:50:45,846.846 INFO    ] 200
[2026-10-18 07:50:45,849.849 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:50:45,891.891 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:50:55,907.907 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:50:55,947.947 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:50:55,959.959 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:50:55,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:50:55,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:50:55,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:50:58,014.014 INFO    ] ================================================
[2026-10-18 07:50:58,029.029 INFO    ] Launching Daemon at Sun Oct 18 07:50:58 IST 2026
[2026-10-18 07:50:58,039.039 INFO    ] ================================================
[2026-10-18 07:50:58,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:50:58
[2026-10-18 07:50:59,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:50:59,450.450 INFO    ] Initializing speech engine...
[2026-10-18 07:50:59,457.457 INFO    ] 2026-10-18 07:50:59
[2026-10-18 07:50:59,735.735 INFO    ] 2026-10-18 07:50:59
[2026-10-18 07:50:59,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:51:00,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:51:00,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:51:00,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:51:00,251.251 INFO    ] time= 18/10/2026 07:51:00
[2026-10-18 07:51:00,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:51:00,334.334 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:51:00,443.443 INFO    ] No existing commands found in stream
[2026-10-18 07:51:05,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:51:05,458.458 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-18 07:51:07,216.216 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:51:07,219.219 INFO    ] Checking for system updates...
[2026-10-18 07:51:07,258.258 INFO    ] 200
[2026-10-18 07:51:07,260.260 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:51:07,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:51:07,317.317 INFO    ] No update needed
[2026-10-18 07:51:07,319.319 INFO    ] Checking for camera pi updates...
[2026-10-18 07:51:07,353.353 INFO    ] 200
[2026-10-18 07:51:07,356.356 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:51:07,397.397 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:51:17,412.412 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:51:17,447.447 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:51:17,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:51:17,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:51:17,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:51:17,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:51:19,509.509 INFO    ] ================================================
[2026-10-18 07:51:19,524.524 INFO    ] Launching Daemon at Sun Oct 18 07:51:19 IST 2026
[2026-10-18 07:51:19,536.536 INFO    ] ================================================
[2026-10-18 07:51:20,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:51:20
[2026-10-18 07:51:20,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:51:21,181.181 INFO    ] Initializing speech engine...
[2026-10-18 07:51:21,192.192 INFO    ] 2026-10-18 07:51:21
[2026-10-18 07:51:21,481.481 INFO    ] 2026-10-18 07:51:21
[2026-10-18 07:51:21,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:51:21,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:51:21,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:51:22,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:51:22,036.036 INFO    ] time= 18/10/2026 07:51:22
[2026-10-18 07:51:22,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:51:22,083.083 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:51:22,196.196 INFO    ] No existing commands found in stream
[2026-10-18 07:51:27,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:51:27,221.221 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-18 07:51:30,894.894 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:51:30,897.897 INFO    ] Checking for system updates...
[2026-10-18 07:51:30,935.935 INFO    ] 200
[2026-10-18 07:51:30,938.938 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:51:30,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:51:30,995.995 INFO    ] No update needed
[2026-10-18 07:51:30,998.998 INFO    ] Checking for camera pi updates...
[2026-10-18 07:51:31,032.032 INFO    ] 200
[2026-10-18 07:51:31,035.035 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:51:31,076.076 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:51:41,091.091 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:51:41,127.127 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:51:41,137.137 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:51:41,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:51:41,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:51:41,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:51:43,190.190 INFO    ] ================================================
[2026-10-18 07:51:43,206.206 INFO    ] Launching Daemon at Sun Oct 18 07:51:43 IST 2026
[2026-10-18 07:51:43,218.218 INFO    ] ================================================
[2026-10-18 07:51:43,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:51:43
[2026-10-18 07:51:44,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:51:44,624.624 INFO    ] Initializing speech engine...
[2026-10-18 07:51:44,647.647 INFO    ] 2026-10-18 07:51:44
[2026-10-18 07:51:44,903.903 INFO    ] 2026-10-18 07:51:44
[2026-10-18 07:51:44,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:51:45,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:51:45,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:51:45,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:51:45,408.408 INFO    ] time= 18/10/2026 07:51:45
[2026-10-18 07:51:45,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:51:45,472.472 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:51:45,619.619 INFO    ] No existing commands found in stream
[2026-10-18 07:51:50,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:51:50,644.644 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-18 07:51:51,871.871 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:51:51,874.874 INFO    ] Checking for system updates...
[2026-10-18 07:51:51,910.910 INFO    ] 200
[2026-10-18 07:51:51,913.913 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:51:51,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:51:51,971.971 INFO    ] No update needed
[2026-10-18 07:51:51,973.973 INFO    ] Checking for camera pi updates...
[2026-10-18 07:51:52,007.007 INFO    ] 200
[2026-10-18 07:51:52,009.009 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:51:52,049.049 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:52:02,066.066 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:52:02,105.105 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:52:02,117.117 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:52:02,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:52:02,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:52:02,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:52:04,177.177 INFO    ] ================================================
[2026-10-18 07:52:04,193.193 INFO    ] Launching Daemon at Sun Oct 18 07:52:04 IST 2026
[2026-10-18 07:52:04,204.204 INFO    ] ================================================
[2026-10-18 07:52:04,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:52:04
[2026-10-18 07:52:05,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:52:05,724.724 INFO    ] Initializing speech engine...
[2026-10-18 07:52:05,736.736 INFO    ] 2026-10-18 07:52:05
[2026-10-18 07:52:05,985.985 INFO    ] 2026-10-18 07:52:05
[2026-10-18 07:52:06,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:52:06,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:52:06,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:52:06,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:52:06,498.498 INFO    ] time= 18/10/2026 07:52:06
[2026-10-18 07:52:06,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:52:06,564.564 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:52:06,707.707 INFO    ] No existing commands found in stream
[2026-10-18 07:52:11,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:52:11,727.727 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-18 07:52:13,951.951 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:52:13,953.953 INFO    ] Checking for system updates...
[2026-10-18 07:52:13,989.989 INFO    ] 200
[2026-10-18 07:52:13,992.992 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:52:14,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:52:14,046.046 INFO    ] No update needed
[2026-10-18 07:52:14,049.049 INFO    ] Checking for camera pi updates...
[2026-10-18 07:52:14,085.085 INFO    ] 200
[2026-10-18 07:52:14,088.088 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:52:14,132.132 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:52:24,147.147 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:52:24,182.182 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:52:24,192.192 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:52:24,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:52:24,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:52:24,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:52:26,244.244 INFO    ] ================================================
[2026-10-18 07:52:26,260.260 INFO    ] Launching Daemon at Sun Oct 18 07:52:26 IST 2026
[2026-10-18 07:52:26,271.271 INFO    ] ================================================
[2026-10-18 07:52:26,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:52:26
[2026-10-18 07:52:27,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:52:27,734.734 INFO    ] Initializing speech engine...
[2026-10-18 07:52:27,739.739 INFO    ] 2026-10-18 07:52:27
[2026-10-18 07:52:28,001.001 INFO    ] 2026-10-18 07:52:27
[2026-10-18 07:52:28,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:52:28,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:52:28,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:52:28,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:52:28,484.484 INFO    ] time= 18/10/2026 07:52:28
[2026-10-18 07:52:28,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:52:28,553.553 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:52:28,699.699 INFO    ] No existing commands found in stream
[2026-10-18 07:52:33,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:52:33,713.713 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-18 07:52:34,398.398 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:52:34,400.400 INFO    ] Checking for system updates...
[2026-10-18 07:52:34,444.444 INFO    ] 200
[2026-10-18 07:52:34,447.447 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:52:34,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:52:34,508.508 INFO    ] No update needed
[2026-10-18 07:52:34,511.511 INFO    ] Checking for camera pi updates...
[2026-10-18 07:52:34,545.545 INFO    ] 200
[2026-10-18 07:52:34,547.547 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:52:34,596.596 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:52:44,611.611 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:52:44,650.650 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:52:44,661.661 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:52:44,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:52:44,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:52:44,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:52:46,717.717 INFO    ] ================================================
[2026-10-18 07:52:46,732.732 INFO    ] Launching Daemon at Sun Oct 18 07:52:46 IST 2026
[2026-10-18 07:52:46,743.743 INFO    ] ================================================
[2026-10-18 07:52:47,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:52:47
[2026-10-18 07:52:47,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:52:48,211.211 INFO    ] Initializing speech engine...
[2026-10-18 07:52:48,216.216 INFO    ] 2026-10-18 07:52:48
[2026-10-18 07:52:48,477.477 INFO    ] 2026-10-18 07:52:48
[2026-10-18 07:52:48,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:52:48,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:52:48,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:52:48,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:52:48,966.966 INFO    ] time= 18/10/2026 07:52:48
[2026-10-18 07:52:49,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:52:49,029.029 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:52:49,176.176 INFO    ] No existing commands found in stream
[2026-10-18 07:52:54,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:52:54,193.193 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-18 07:52:54,755.755 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:52:54,758.758 INFO    ] Checking for system updates...
[2026-10-18 07:52:54,793.793 INFO    ] 200
[2026-10-18 07:52:54,796.796 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:52:54,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:52:54,850.850 INFO    ] No update needed
[2026-10-18 07:52:54,853.853 INFO    ] Checking for camera pi updates...
[2026-10-18 07:52:54,889.889 INFO    ] 200
[2026-10-18 07:52:54,892.892 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:52:54,933.933 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:53:04,948.948 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:53:04,982.982 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:53:04,992.992 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:53:04,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:53:04,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:53:05,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:53:07,046.046 INFO    ] ================================================
[2026-10-18 07:53:07,061.061 INFO    ] Launching Daemon at Sun Oct 18 07:53:07 IST 2026
[2026-10-18 07:53:07,071.071 INFO    ] ================================================
[2026-10-18 07:53:07,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:53:07
[2026-10-18 07:53:08,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:53:08,519.519 INFO    ] Initializing speech engine...
[2026-10-18 07:53:08,533.533 INFO    ] 2026-10-18 07:53:08
[2026-10-18 07:53:08,816.816 INFO    ] 2026-10-18 07:53:08
[2026-10-18 07:53:08,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:53:09,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:53:09,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:53:09,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:53:09,340.340 INFO    ] time= 18/10/2026 07:53:09
[2026-10-18 07:53:09,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:53:09,445.445 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:53:09,554.554 INFO    ] No existing commands found in stream
[2026-10-18 07:53:14,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:53:14,584.584 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-18 07:53:18,584.584 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:53:18,587.587 INFO    ] Checking for system updates...
[2026-10-18 07:53:18,625.625 INFO    ] 200
[2026-10-18 07:53:18,628.628 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:53:18,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:53:18,688.688 INFO    ] No update needed
[2026-10-18 07:53:18,690.690 INFO    ] Checking for camera pi updates...
[2026-10-18 07:53:18,727.727 INFO    ] 200
[2026-10-18 07:53:18,729.729 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:53:18,773.773 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:53:28,788.788 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:53:28,824.824 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:53:28,834.834 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:53:28,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:53:28,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:53:28,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:53:30,887.887 INFO    ] ================================================
[2026-10-18 07:53:30,903.903 INFO    ] Launching Daemon at Sun Oct 18 07:53:30 IST 2026
[2026-10-18 07:53:30,914.914 INFO    ] ================================================
[2026-10-18 07:53:31,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:53:31
[2026-10-18 07:53:32,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:53:32,580.580 INFO    ] Initializing speech engine...
[2026-10-18 07:53:32,597.597 INFO    ] 2026-10-18 07:53:32
[2026-10-18 07:53:32,922.922 INFO    ] 2026-10-18 07:53:32
[2026-10-18 07:53:32,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:53:33,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:53:33,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:53:33,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:53:33,427.427 INFO    ] time= 18/10/2026 07:53:33
[2026-10-18 07:53:33,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:53:33,474.474 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:53:33,607.607 INFO    ] No existing commands found in stream
[2026-10-18 07:53:38,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:53:38,646.646 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-18 07:53:40,078.078 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:53:40,080.080 INFO    ] Checking for system updates...
[2026-10-18 07:53:40,120.120 INFO    ] 200
[2026-10-18 07:53:40,123.123 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:53:40,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:53:40,178.178 INFO    ] No update needed
[2026-10-18 07:53:40,181.181 INFO    ] Checking for camera pi updates...
[2026-10-18 07:53:40,215.215 INFO    ] 200
[2026-10-18 07:53:40,218.218 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:53:40,262.262 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:53:50,278.278 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:53:50,314.314 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:53:50,323.323 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:53:50,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:53:50,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:53:50,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:53:52,377.377 INFO    ] ================================================
[2026-10-18 07:53:52,393.393 INFO    ] Launching Daemon at Sun Oct 18 07:53:52 IST 2026
[2026-10-18 07:53:52,404.404 INFO    ] ================================================
[2026-10-18 07:53:52,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:53:52
[2026-10-18 07:53:53,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:53:53,833.833 INFO    ] Initializing speech engine...
[2026-10-18 07:53:53,843.843 INFO    ] 2026-10-18 07:53:53
[2026-10-18 07:53:54,102.102 INFO    ] 2026-10-18 07:53:54
[2026-10-18 07:53:54,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:53:54,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:53:54,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:53:54,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:53:54,510.510 INFO    ] time= 18/10/2026 07:53:54
[2026-10-18 07:53:54,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:53:54,522.522 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:53:54,653.653 INFO    ] No existing commands found in stream
[2026-10-18 07:53:59,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:53:59,676.676 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-18 07:54:02,593.593 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:54:02,597.597 INFO    ] Checking for system updates...
[2026-10-18 07:54:02,639.639 INFO    ] 200
[2026-10-18 07:54:02,642.642 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:54:02,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:54:02,715.715 INFO    ] No update needed
[2026-10-18 07:54:02,718.718 INFO    ] Checking for camera pi updates...
[2026-10-18 07:54:02,771.771 INFO    ] 200
[2026-10-18 07:54:02,775.775 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:54:02,833.833 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:54:12,849.849 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:54:12,888.888 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:54:12,899.899 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:54:12,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:54:12,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:54:12,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:54:14,953.953 INFO    ] ================================================
[2026-10-18 07:54:14,969.969 INFO    ] Launching Daemon at Sun Oct 18 07:54:14 IST 2026
[2026-10-18 07:54:14,980.980 INFO    ] ================================================
[2026-10-18 07:54:15,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:54:15
[2026-10-18 07:54:16,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:54:16,564.564 INFO    ] Initializing speech engine...
[2026-10-18 07:54:16,573.573 INFO    ] 2026-10-18 07:54:16
[2026-10-18 07:54:16,843.843 INFO    ] 2026-10-18 07:54:16
[2026-10-18 07:54:16,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:54:17,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:54:17,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:54:17,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:54:17,371.371 INFO    ] time= 18/10/2026 07:54:17
[2026-10-18 07:54:17,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:54:17,415.415 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:54:17,574.574 INFO    ] No existing commands found in stream
[2026-10-18 07:54:22,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:54:22,602.602 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-18 07:54:23,834.834 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:54:23,837.837 INFO    ] Checking for system updates...
[2026-10-18 07:54:23,877.877 INFO    ] 200
[2026-10-18 07:54:23,880.880 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:54:23,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:54:23,941.941 INFO    ] No update needed
[2026-10-18 07:54:23,943.943 INFO    ] Checking for camera pi updates...
[2026-10-18 07:54:23,980.980 INFO    ] 200
[2026-10-18 07:54:23,983.983 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:54:24,028.028 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:54:34,040.040 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:54:34,079.079 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:54:34,090.090 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:54:34,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:54:34,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:54:34,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:54:36,145.145 INFO    ] ================================================
[2026-10-18 07:54:36,161.161 INFO    ] Launching Daemon at Sun Oct 18 07:54:36 IST 2026
[2026-10-18 07:54:36,172.172 INFO    ] ================================================
[2026-10-18 07:54:36,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:54:36
[2026-10-18 07:54:37,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:54:37,610.610 INFO    ] Initializing speech engine...
[2026-10-18 07:54:37,619.619 INFO    ] 2026-10-18 07:54:37
[2026-10-18 07:54:37,911.911 INFO    ] 2026-10-18 07:54:37
[2026-10-18 07:54:37,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:54:38,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:54:38,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:54:38,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:54:38,320.320 INFO    ] time= 18/10/2026 07:54:38
[2026-10-18 07:54:38,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:54:38,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:54:38,504.504 INFO    ] No existing commands found in stream
[2026-10-18 07:54:43,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:54:43,532.532 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-18 07:54:46,728.728 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 07:54:46,731.731 INFO    ] Checking for system updates...
[2026-10-18 07:54:46,766.766 INFO    ] 200
[2026-10-18 07:54:46,769.769 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:54:46,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:54:46,823.823 INFO    ] No update needed
[2026-10-18 07:54:46,826.826 INFO    ] Checking for camera pi updates...
[2026-10-18 07:54:46,863.863 INFO    ] 200
[2026-10-18 07:54:46,865.865 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:54:46,910.910 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:54:56,925.925 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:54:56,960.960 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:54:56,970.970 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:54:56,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:54:56,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:54:56,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:54:59,023.023 INFO    ] ================================================
[2026-10-18 07:54:59,040.040 INFO    ] Launching Daemon at Sun Oct 18 07:54:59 IST 2026
[2026-10-18 07:54:59,052.052 INFO    ] ================================================
[2026-10-18 07:54:59,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:54:59
[2026-10-18 07:55:00,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:55:00,679.679 INFO    ] Initializing speech engine...
[2026-10-18 07:55:00,689.689 INFO    ] 2026-10-18 07:55:00
[2026-10-18 07:55:00,962.962 INFO    ] 2026-10-18 07:55:00
[2026-10-18 07:55:01,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:55:01,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:55:01,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:55:01,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:55:01,446.446 INFO    ] time= 18/10/2026 07:55:01
[2026-10-18 07:55:01,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:55:01,522.522 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:55:01,602.602 INFO    ] No existing commands found in stream
[2026-10-18 07:55:06,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:55:06,614.614 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-18 07:55:07,240.240 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 07:55:07,243.243 INFO    ] Checking for system updates...
[2026-10-18 07:55:07,289.289 INFO    ] 200
[2026-10-18 07:55:07,292.292 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:55:07,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:55:07,351.351 INFO    ] No update needed
[2026-10-18 07:55:07,354.354 INFO    ] Checking for camera pi updates...
[2026-10-18 07:55:07,388.388 INFO    ] 200
[2026-10-18 07:55:07,391.391 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:55:07,432.432 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:55:17,448.448 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:55:17,486.486 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:55:17,496.496 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:55:17,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:55:17,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:55:17,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:55:19,552.552 INFO    ] ================================================
[2026-10-18 07:55:19,567.567 INFO    ] Launching Daemon at Sun Oct 18 07:55:19 IST 2026
[2026-10-18 07:55:19,578.578 INFO    ] ================================================
[2026-10-18 07:55:20,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:55:20
[2026-10-18 07:55:20,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:55:21,133.133 INFO    ] Initializing speech engine...
[2026-10-18 07:55:21,139.139 INFO    ] 2026-10-18 07:55:21
[2026-10-18 07:55:21,420.420 INFO    ] 2026-10-18 07:55:21
[2026-10-18 07:55:21,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:55:21,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:55:21,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:55:21,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:55:21,951.951 INFO    ] time= 18/10/2026 07:55:21
[2026-10-18 07:55:21,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:55:21,979.979 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:55:22,161.161 INFO    ] No existing commands found in stream
[2026-10-18 07:55:27,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:55:27,195.195 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-18 07:55:27,780.780 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:55:27,782.782 INFO    ] Checking for system updates...
[2026-10-18 07:55:27,821.821 INFO    ] 200
[2026-10-18 07:55:27,824.824 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:55:27,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:55:27,882.882 INFO    ] No update needed
[2026-10-18 07:55:27,884.884 INFO    ] Checking for camera pi updates...
[2026-10-18 07:55:27,918.918 INFO    ] 200
[2026-10-18 07:55:27,921.921 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:55:27,963.963 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:55:37,977.977 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:55:38,015.015 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:55:38,025.025 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:55:38,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:55:38,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:55:38,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:55:40,080.080 INFO    ] ================================================
[2026-10-18 07:55:40,095.095 INFO    ] Launching Daemon at Sun Oct 18 07:55:40 IST 2026
[2026-10-18 07:55:40,106.106 INFO    ] ================================================
[2026-10-18 07:55:40,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:55:40
[2026-10-18 07:55:41,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:55:41,662.662 INFO    ] Initializing speech engine...
[2026-10-18 07:55:41,669.669 INFO    ] 2026-10-18 07:55:41
[2026-10-18 07:55:41,934.934 INFO    ] 2026-10-18 07:55:41
[2026-10-18 07:55:41,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:55:42,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:55:42,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:55:42,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:55:42,481.481 INFO    ] time= 18/10/2026 07:55:42
[2026-10-18 07:55:42,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:55:42,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:55:42,635.635 INFO    ] No existing commands found in stream
[2026-10-18 07:55:47,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:55:47,656.656 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-18 07:55:48,643.643 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:55:48,646.646 INFO    ] Checking for system updates...
[2026-10-18 07:55:48,683.683 INFO    ] 200
[2026-10-18 07:55:48,686.686 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:55:48,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:55:48,746.746 INFO    ] No update needed
[2026-10-18 07:55:48,749.749 INFO    ] Checking for camera pi updates...
[2026-10-18 07:55:48,782.782 INFO    ] 200
[2026-10-18 07:55:48,785.785 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:55:48,827.827 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:55:58,843.843 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:55:58,881.881 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:55:58,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:55:58,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:55:58,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:55:58,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:56:00,946.946 INFO    ] ================================================
[2026-10-18 07:56:00,962.962 INFO    ] Launching Daemon at Sun Oct 18 07:56:00 IST 2026
[2026-10-18 07:56:00,973.973 INFO    ] ================================================
[2026-10-18 07:56:01,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:56:01
[2026-10-18 07:56:02,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:56:02,751.751 INFO    ] Initializing speech engine...
[2026-10-18 07:56:02,763.763 INFO    ] 2026-10-18 07:56:02
[2026-10-18 07:56:03,059.059 INFO    ] 2026-10-18 07:56:03
[2026-10-18 07:56:03,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:56:03,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:56:03,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:56:03,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:56:03,455.455 INFO    ] time= 18/10/2026 07:56:03
[2026-10-18 07:56:03,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:56:03,489.489 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:56:03,610.610 INFO    ] No existing commands found in stream
[2026-10-18 07:56:08,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:56:08,624.624 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-18 07:56:09,599.599 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:56:09,601.601 INFO    ] Checking for system updates...
[2026-10-18 07:56:09,637.637 INFO    ] 200
[2026-10-18 07:56:09,639.639 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:56:09,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:56:09,693.693 INFO    ] No update needed
[2026-10-18 07:56:09,696.696 INFO    ] Checking for camera pi updates...
[2026-10-18 07:56:09,732.732 INFO    ] 200
[2026-10-18 07:56:09,735.735 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:56:09,775.775 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:56:19,788.788 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:56:19,824.824 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:56:19,833.833 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:56:19,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:56:19,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:56:19,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:56:21,887.887 INFO    ] ================================================
[2026-10-18 07:56:21,903.903 INFO    ] Launching Daemon at Sun Oct 18 07:56:21 IST 2026
[2026-10-18 07:56:21,915.915 INFO    ] ================================================
[2026-10-18 07:56:22,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:56:22
[2026-10-18 07:56:23,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:56:23,439.439 INFO    ] Initializing speech engine...
[2026-10-18 07:56:23,456.456 INFO    ] 2026-10-18 07:56:23
[2026-10-18 07:56:23,719.719 INFO    ] 2026-10-18 07:56:23
[2026-10-18 07:56:23,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:56:24,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:56:24,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:56:24,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:56:24,211.211 INFO    ] time= 18/10/2026 07:56:24
[2026-10-18 07:56:24,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:56:24,286.286 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:56:24,428.428 INFO    ] No existing commands found in stream
[2026-10-18 07:56:29,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:56:29,447.447 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-18 07:56:33,441.441 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:56:33,444.444 INFO    ] Checking for system updates...
[2026-10-18 07:56:33,479.479 INFO    ] 200
[2026-10-18 07:56:33,482.482 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:56:33,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:56:33,536.536 INFO    ] No update needed
[2026-10-18 07:56:33,539.539 INFO    ] Checking for camera pi updates...
[2026-10-18 07:56:33,577.577 INFO    ] 200
[2026-10-18 07:56:33,579.579 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:56:33,619.619 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:56:43,634.634 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:56:43,669.669 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:56:43,679.679 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:56:43,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:56:43,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:56:43,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:56:45,730.730 INFO    ] ================================================
[2026-10-18 07:56:45,746.746 INFO    ] Launching Daemon at Sun Oct 18 07:56:45 IST 2026
[2026-10-18 07:56:45,757.757 INFO    ] ================================================
[2026-10-18 07:56:46,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:56:46
[2026-10-18 07:56:47,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:56:47,333.333 INFO    ] Initializing speech engine...
[2026-10-18 07:56:47,339.339 INFO    ] 2026-10-18 07:56:47
[2026-10-18 07:56:47,609.609 INFO    ] 2026-10-18 07:56:47
[2026-10-18 07:56:47,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:56:47,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:56:47,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:56:48,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:56:48,111.111 INFO    ] time= 18/10/2026 07:56:48
[2026-10-18 07:56:48,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:56:48,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:56:48,322.322 INFO    ] No existing commands found in stream
[2026-10-18 07:56:53,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:56:53,351.351 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-18 07:56:57,219.219 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:56:57,222.222 INFO    ] Checking for system updates...
[2026-10-18 07:56:57,259.259 INFO    ] 200
[2026-10-18 07:56:57,261.261 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:56:57,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:56:57,316.316 INFO    ] No update needed
[2026-10-18 07:56:57,318.318 INFO    ] Checking for camera pi updates...
[2026-10-18 07:56:57,352.352 INFO    ] 200
[2026-10-18 07:56:57,355.355 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:56:57,395.395 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:57:07,410.410 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:57:07,445.445 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:57:07,455.455 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:57:07,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:57:07,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:57:07,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:57:09,507.507 INFO    ] ================================================
[2026-10-18 07:57:09,523.523 INFO    ] Launching Daemon at Sun Oct 18 07:57:09 IST 2026
[2026-10-18 07:57:09,534.534 INFO    ] ================================================
[2026-10-18 07:57:10,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:57:10
[2026-10-18 07:57:10,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:57:11,122.122 INFO    ] Initializing speech engine...
[2026-10-18 07:57:11,128.128 INFO    ] 2026-10-18 07:57:11
[2026-10-18 07:57:11,407.407 INFO    ] 2026-10-18 07:57:11
[2026-10-18 07:57:11,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:57:11,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:57:11,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:57:11,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:57:11,969.969 INFO    ] time= 18/10/2026 07:57:11
[2026-10-18 07:57:11,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:57:12,018.018 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:57:12,128.128 INFO    ] No existing commands found in stream
[2026-10-18 07:57:17,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:57:17,161.161 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-18 07:57:19,372.372 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:57:19,375.375 INFO    ] Checking for system updates...
[2026-10-18 07:57:19,415.415 INFO    ] 200
[2026-10-18 07:57:19,417.417 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:57:19,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:57:19,478.478 INFO    ] No update needed
[2026-10-18 07:57:19,480.480 INFO    ] Checking for camera pi updates...
[2026-10-18 07:57:19,513.513 INFO    ] 200
[2026-10-18 07:57:19,516.516 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:57:19,556.556 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:57:29,570.570 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:57:29,605.605 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:57:29,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:57:29,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:57:29,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:57:29,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:57:31,669.669 INFO    ] ================================================
[2026-10-18 07:57:31,689.689 INFO    ] Launching Daemon at Sun Oct 18 07:57:31 IST 2026
[2026-10-18 07:57:31,701.701 INFO    ] ================================================
[2026-10-18 07:57:32,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:57:32
[2026-10-18 07:57:33,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:57:33,404.404 INFO    ] Initializing speech engine...
[2026-10-18 07:57:33,417.417 INFO    ] 2026-10-18 07:57:33
[2026-10-18 07:57:33,696.696 INFO    ] 2026-10-18 07:57:33
[2026-10-18 07:57:33,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:57:34,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:57:34,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:57:34,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:57:34,231.231 INFO    ] time= 18/10/2026 07:57:34
[2026-10-18 07:57:34,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:57:34,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:57:34,388.388 INFO    ] No existing commands found in stream
[2026-10-18 07:57:39,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:57:39,425.425 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-18 07:57:40,910.910 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 07:57:40,913.913 INFO    ] Checking for system updates...
[2026-10-18 07:57:40,955.955 INFO    ] 200
[2026-10-18 07:57:40,958.958 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:57:41,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:57:41,018.018 INFO    ] No update needed
[2026-10-18 07:57:41,021.021 INFO    ] Checking for camera pi updates...
[2026-10-18 07:57:41,060.060 INFO    ] 200
[2026-10-18 07:57:41,062.062 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:57:41,108.108 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:57:51,125.125 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:57:51,164.164 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:57:51,175.175 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:57:51,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:57:51,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:57:51,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:57:53,230.230 INFO    ] ================================================
[2026-10-18 07:57:53,246.246 INFO    ] Launching Daemon at Sun Oct 18 07:57:53 IST 2026
[2026-10-18 07:57:53,257.257 INFO    ] ================================================
[2026-10-18 07:57:53,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:57:53
[2026-10-18 07:57:54,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:57:54,749.749 INFO    ] Initializing speech engine...
[2026-10-18 07:57:54,755.755 INFO    ] 2026-10-18 07:57:54
[2026-10-18 07:57:55,047.047 INFO    ] 2026-10-18 07:57:55
[2026-10-18 07:57:55,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:57:55,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:57:55,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:57:55,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:57:55,458.458 INFO    ] time= 18/10/2026 07:57:55
[2026-10-18 07:57:55,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:57:55,475.475 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:57:55,607.607 INFO    ] No existing commands found in stream
[2026-10-18 07:58:00,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:58:00,635.635 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-18 07:58:03,012.012 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 07:58:03,017.017 INFO    ] Checking for system updates...
[2026-10-18 07:58:03,065.065 INFO    ] 200
[2026-10-18 07:58:03,068.068 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:58:03,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:58:03,164.164 INFO    ] No update needed
[2026-10-18 07:58:03,167.167 INFO    ] Checking for camera pi updates...
[2026-10-18 07:58:03,211.211 INFO    ] 200
[2026-10-18 07:58:03,214.214 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:58:03,255.255 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:58:13,271.271 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:58:13,310.310 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:58:13,321.321 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:58:13,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:58:13,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:58:13,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:58:15,376.376 INFO    ] ================================================
[2026-10-18 07:58:15,391.391 INFO    ] Launching Daemon at Sun Oct 18 07:58:15 IST 2026
[2026-10-18 07:58:15,402.402 INFO    ] ================================================
[2026-10-18 07:58:15,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:58:15
[2026-10-18 07:58:16,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:58:16,849.849 INFO    ] Initializing speech engine...
[2026-10-18 07:58:16,865.865 INFO    ] 2026-10-18 07:58:16
[2026-10-18 07:58:17,149.149 INFO    ] 2026-10-18 07:58:17
[2026-10-18 07:58:17,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:58:17,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:58:17,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:58:17,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:58:17,559.559 INFO    ] time= 18/10/2026 07:58:17
[2026-10-18 07:58:17,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:58:17,608.608 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:58:17,744.744 INFO    ] No existing commands found in stream
[2026-10-18 07:58:22,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:58:22,782.782 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-18 07:58:23,427.427 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:58:23,429.429 INFO    ] Checking for system updates...
[2026-10-18 07:58:23,469.469 INFO    ] 200
[2026-10-18 07:58:23,472.472 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:58:23,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:58:23,527.527 INFO    ] No update needed
[2026-10-18 07:58:23,530.530 INFO    ] Checking for camera pi updates...
[2026-10-18 07:58:23,568.568 INFO    ] 200
[2026-10-18 07:58:23,571.571 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:58:23,615.615 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:58:33,630.630 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:58:33,669.669 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:58:33,680.680 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:58:33,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:58:33,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:58:33,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:58:35,735.735 INFO    ] ================================================
[2026-10-18 07:58:35,751.751 INFO    ] Launching Daemon at Sun Oct 18 07:58:35 IST 2026
[2026-10-18 07:58:35,762.762 INFO    ] ================================================
[2026-10-18 07:58:36,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:58:36
[2026-10-18 07:58:36,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:58:37,210.210 INFO    ] Initializing speech engine...
[2026-10-18 07:58:37,231.231 INFO    ] 2026-10-18 07:58:37
[2026-10-18 07:58:37,507.507 INFO    ] 2026-10-18 07:58:37
[2026-10-18 07:58:37,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:58:37,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:58:37,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:58:37,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:58:38,028.028 INFO    ] time= 18/10/2026 07:58:37
[2026-10-18 07:58:38,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:58:38,126.126 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:58:38,290.290 INFO    ] No existing commands found in stream
[2026-10-18 07:58:43,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:58:43,315.315 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-18 07:58:46,899.899 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 07:58:46,902.902 INFO    ] Checking for system updates...
[2026-10-18 07:58:46,938.938 INFO    ] 200
[2026-10-18 07:58:46,941.941 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:58:46,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 07:58:46,996.996 INFO    ] No update needed
[2026-10-18 07:58:46,999.999 INFO    ] Checking for camera pi updates...
[2026-10-18 07:58:47,036.036 INFO    ] 200
[2026-10-18 07:58:47,039.039 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:58:47,080.080 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:58:57,096.096 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:58:57,135.135 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:58:57,146.146 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:58:57,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:58:57,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:58:57,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:58:59,200.200 INFO    ] ================================================
[2026-10-18 07:58:59,216.216 INFO    ] Launching Daemon at Sun Oct 18 07:58:59 IST 2026
[2026-10-18 07:58:59,227.227 INFO    ] ================================================
[2026-10-18 07:58:59,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:58:59
[2026-10-18 07:59:00,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:59:00,662.662 INFO    ] Initializing speech engine...
[2026-10-18 07:59:00,671.671 INFO    ] 2026-10-18 07:59:00
[2026-10-18 07:59:00,922.922 INFO    ] 2026-10-18 07:59:00
[2026-10-18 07:59:00,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:59:01,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:59:01,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:59:01,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:59:01,494.494 INFO    ] time= 18/10/2026 07:59:01
[2026-10-18 07:59:01,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:59:01,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:59:01,649.649 INFO    ] No existing commands found in stream
[2026-10-18 07:59:06,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:59:06,663.663 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-18 07:59:09,693.693 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 07:59:09,696.696 INFO    ] Checking for system updates...
[2026-10-18 07:59:09,733.733 INFO    ] 200
[2026-10-18 07:59:09,737.737 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:59:09,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:59:09,798.798 INFO    ] No update needed
[2026-10-18 07:59:09,801.801 INFO    ] Checking for camera pi updates...
[2026-10-18 07:59:09,838.838 INFO    ] 200
[2026-10-18 07:59:09,840.840 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:59:09,881.881 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:59:19,897.897 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:59:19,933.933 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:59:19,942.942 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:59:19,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:59:19,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:59:19,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:59:22,996.996 INFO    ] ================================================
[2026-10-18 07:59:22,012.012 INFO    ] Launching Daemon at Sun Oct 18 07:59:22 IST 2026
[2026-10-18 07:59:22,024.024 INFO    ] ================================================
[2026-10-18 07:59:22,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:59:22
[2026-10-18 07:59:23,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:59:23,626.626 INFO    ] Initializing speech engine...
[2026-10-18 07:59:23,637.637 INFO    ] 2026-10-18 07:59:23
[2026-10-18 07:59:23,925.925 INFO    ] 2026-10-18 07:59:23
[2026-10-18 07:59:23,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:59:24,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:59:24,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:59:24,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:59:24,459.459 INFO    ] time= 18/10/2026 07:59:24
[2026-10-18 07:59:24,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:59:24,509.509 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:59:24,628.628 INFO    ] No existing commands found in stream
[2026-10-18 07:59:29,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:59:29,657.657 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-18 07:59:32,282.282 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 07:59:32,286.286 INFO    ] Checking for system updates...
[2026-10-18 07:59:32,326.326 INFO    ] 200
[2026-10-18 07:59:32,329.329 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:59:32,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:59:32,391.391 INFO    ] No update needed
[2026-10-18 07:59:32,394.394 INFO    ] Checking for camera pi updates...
[2026-10-18 07:59:32,430.430 INFO    ] 200
[2026-10-18 07:59:32,433.433 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:59:32,485.485 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 07:59:42,501.501 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 07:59:42,541.541 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 07:59:42,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-18 07:59:42,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 07:59:42,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 07:59:42,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 07:59:44,607.607 INFO    ] ================================================
[2026-10-18 07:59:44,623.623 INFO    ] Launching Daemon at Sun Oct 18 07:59:44 IST 2026
[2026-10-18 07:59:44,634.634 INFO    ] ================================================
[2026-10-18 07:59:45,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 07:59:45
[2026-10-18 07:59:45,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 07:59:46,070.070 INFO    ] Initializing speech engine...
[2026-10-18 07:59:46,080.080 INFO    ] 2026-10-18 07:59:46
[2026-10-18 07:59:46,330.330 INFO    ] 2026-10-18 07:59:46
[2026-10-18 07:59:46,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 07:59:46,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 07:59:46,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 07:59:46,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 07:59:46,865.865 INFO    ] time= 18/10/2026 07:59:46
[2026-10-18 07:59:46,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 07:59:46,906.906 INFO    ] Checking for existing commands in stream...
[2026-10-18 07:59:47,056.056 INFO    ] No existing commands found in stream
[2026-10-18 07:59:52,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 07:59:52,073.073 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-18 07:59:54,485.485 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 07:59:54,487.487 INFO    ] Checking for system updates...
[2026-10-18 07:59:54,523.523 INFO    ] 200
[2026-10-18 07:59:54,526.526 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:59:54,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 07:59:54,581.581 INFO    ] No update needed
[2026-10-18 07:59:54,583.583 INFO    ] Checking for camera pi updates...
[2026-10-18 07:59:54,619.619 INFO    ] 200
[2026-10-18 07:59:54,621.621 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 07:59:54,661.661 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:00:04,678.678 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:00:04,789.789 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:00:04,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:00:04,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:00:04,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:00:04,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:00:06,938.938 INFO    ] ================================================
[2026-10-18 08:00:06,953.953 INFO    ] Launching Daemon at Sun Oct 18 08:00:06 IST 2026
[2026-10-18 08:00:06,964.964 INFO    ] ================================================
[2026-10-18 08:00:07,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:00:07
[2026-10-18 08:00:08,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:00:08,367.367 INFO    ] Initializing speech engine...
[2026-10-18 08:00:08,381.381 INFO    ] 2026-10-18 08:00:08
[2026-10-18 08:00:08,646.646 INFO    ] 2026-10-18 08:00:08
[2026-10-18 08:00:08,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:00:08,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:00:08,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:00:09,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:00:09,186.186 INFO    ] time= 18/10/2026 08:00:09
[2026-10-18 08:00:09,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:00:09,262.262 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:00:09,393.393 INFO    ] No existing commands found in stream
[2026-10-18 08:00:14,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:00:14,431.431 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-18 08:00:17,118.118 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:00:17,120.120 INFO    ] Checking for system updates...
[2026-10-18 08:00:17,156.156 INFO    ] 200
[2026-10-18 08:00:17,158.158 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:00:17,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:00:17,213.213 INFO    ] No update needed
[2026-10-18 08:00:17,215.215 INFO    ] Checking for camera pi updates...
[2026-10-18 08:00:17,249.249 INFO    ] 200
[2026-10-18 08:00:17,251.251 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:00:17,294.294 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:00:27,308.308 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:00:27,343.343 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:00:27,352.352 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:00:27,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:00:27,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:00:27,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:00:29,405.405 INFO    ] ================================================
[2026-10-18 08:00:29,421.421 INFO    ] Launching Daemon at Sun Oct 18 08:00:29 IST 2026
[2026-10-18 08:00:29,432.432 INFO    ] ================================================
[2026-10-18 08:00:30,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:00:30
[2026-10-18 08:00:30,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:00:31,026.026 INFO    ] Initializing speech engine...
[2026-10-18 08:00:31,039.039 INFO    ] 2026-10-18 08:00:31
[2026-10-18 08:00:31,316.316 INFO    ] 2026-10-18 08:00:31
[2026-10-18 08:00:31,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:00:31,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:00:31,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:00:31,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:00:31,807.807 INFO    ] time= 18/10/2026 08:00:31
[2026-10-18 08:00:31,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:00:31,898.898 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:00:32,037.037 INFO    ] No existing commands found in stream
[2026-10-18 08:00:37,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:00:37,071.071 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-18 08:00:38,663.663 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:00:38,666.666 INFO    ] Checking for system updates...
[2026-10-18 08:00:38,703.703 INFO    ] 200
[2026-10-18 08:00:38,705.705 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:00:38,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:00:38,767.767 INFO    ] No update needed
[2026-10-18 08:00:38,770.770 INFO    ] Checking for camera pi updates...
[2026-10-18 08:00:38,810.810 INFO    ] 200
[2026-10-18 08:00:38,812.812 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:00:38,853.853 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:00:48,868.868 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:00:48,902.902 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:00:48,912.912 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:00:48,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:00:48,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:00:48,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:00:50,966.966 INFO    ] ================================================
[2026-10-18 08:00:50,981.981 INFO    ] Launching Daemon at Sun Oct 18 08:00:50 IST 2026
[2026-10-18 08:00:50,993.993 INFO    ] ================================================
[2026-10-18 08:00:51,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:00:51
[2026-10-18 08:00:52,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:00:52,452.452 INFO    ] Initializing speech engine...
[2026-10-18 08:00:52,459.459 INFO    ] 2026-10-18 08:00:52
[2026-10-18 08:00:52,720.720 INFO    ] 2026-10-18 08:00:52
[2026-10-18 08:00:52,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:00:53,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:00:53,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:00:53,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:00:53,267.267 INFO    ] time= 18/10/2026 08:00:53
[2026-10-18 08:00:53,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:00:53,314.314 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:00:53,422.422 INFO    ] No existing commands found in stream
[2026-10-18 08:00:58,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:00:58,454.454 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-18 08:01:01,124.124 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:01:01,127.127 INFO    ] Checking for system updates...
[2026-10-18 08:01:01,163.163 INFO    ] 200
[2026-10-18 08:01:01,166.166 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:01:01,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:01:01,226.226 INFO    ] No update needed
[2026-10-18 08:01:01,228.228 INFO    ] Checking for camera pi updates...
[2026-10-18 08:01:01,262.262 INFO    ] 200
[2026-10-18 08:01:01,264.264 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:01:01,305.305 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:01:11,321.321 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:01:11,356.356 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:01:11,366.366 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:01:11,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:01:11,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:01:11,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:01:13,420.420 INFO    ] ================================================
[2026-10-18 08:01:13,437.437 INFO    ] Launching Daemon at Sun Oct 18 08:01:13 IST 2026
[2026-10-18 08:01:13,448.448 INFO    ] ================================================
[2026-10-18 08:01:14,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:01:14
[2026-10-18 08:01:14,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:01:14,911.911 INFO    ] Initializing speech engine...
[2026-10-18 08:01:14,917.917 INFO    ] 2026-10-18 08:01:14
[2026-10-18 08:01:15,177.177 INFO    ] 2026-10-18 08:01:15
[2026-10-18 08:01:15,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:01:15,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:01:15,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:01:15,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:01:15,671.671 INFO    ] time= 18/10/2026 08:01:15
[2026-10-18 08:01:15,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:01:15,747.747 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:01:15,899.899 INFO    ] No existing commands found in stream
[2026-10-18 08:01:20,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:01:20,918.918 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-18 08:01:23,068.068 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:01:23,070.070 INFO    ] Checking for system updates...
[2026-10-18 08:01:23,106.106 INFO    ] 200
[2026-10-18 08:01:23,108.108 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:01:23,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:01:23,168.168 INFO    ] No update needed
[2026-10-18 08:01:23,171.171 INFO    ] Checking for camera pi updates...
[2026-10-18 08:01:23,205.205 INFO    ] 200
[2026-10-18 08:01:23,208.208 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:01:23,251.251 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:01:33,264.264 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:01:33,299.299 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:01:33,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:01:33,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:01:33,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:01:33,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:01:35,363.363 INFO    ] ================================================
[2026-10-18 08:01:35,378.378 INFO    ] Launching Daemon at Sun Oct 18 08:01:35 IST 2026
[2026-10-18 08:01:35,390.390 INFO    ] ================================================
[2026-10-18 08:01:35,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:01:35
[2026-10-18 08:01:36,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:01:36,834.834 INFO    ] Initializing speech engine...
[2026-10-18 08:01:36,855.855 INFO    ] 2026-10-18 08:01:36
[2026-10-18 08:01:37,117.117 INFO    ] 2026-10-18 08:01:37
[2026-10-18 08:01:37,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:01:37,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:01:37,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:01:37,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:01:37,629.629 INFO    ] time= 18/10/2026 08:01:37
[2026-10-18 08:01:37,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:01:37,740.740 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:01:37,877.877 INFO    ] No existing commands found in stream
[2026-10-18 08:01:42,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:01:42,905.905 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-18 08:01:44,149.149 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 08:01:44,151.151 INFO    ] Checking for system updates...
[2026-10-18 08:01:44,187.187 INFO    ] 200
[2026-10-18 08:01:44,190.190 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:01:44,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:01:44,249.249 INFO    ] No update needed
[2026-10-18 08:01:44,251.251 INFO    ] Checking for camera pi updates...
[2026-10-18 08:01:44,284.284 INFO    ] 200
[2026-10-18 08:01:44,287.287 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:01:44,331.331 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:01:54,342.342 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:01:54,377.377 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:01:54,387.387 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:01:54,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:01:54,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:01:54,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:01:56,438.438 INFO    ] ================================================
[2026-10-18 08:01:56,454.454 INFO    ] Launching Daemon at Sun Oct 18 08:01:56 IST 2026
[2026-10-18 08:01:56,466.466 INFO    ] ================================================
[2026-10-18 08:01:57,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:01:57
[2026-10-18 08:01:57,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:01:58,041.041 INFO    ] Initializing speech engine...
[2026-10-18 08:01:58,050.050 INFO    ] 2026-10-18 08:01:58
[2026-10-18 08:01:58,317.317 INFO    ] 2026-10-18 08:01:58
[2026-10-18 08:01:58,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:01:58,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:01:58,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:01:58,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:01:58,865.865 INFO    ] time= 18/10/2026 08:01:58
[2026-10-18 08:01:58,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:01:58,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:01:59,074.074 INFO    ] No existing commands found in stream
[2026-10-18 08:02:04,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:02:04,103.103 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-18 08:02:04,945.945 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:02:04,947.947 INFO    ] Checking for system updates...
[2026-10-18 08:02:04,983.983 INFO    ] 200
[2026-10-18 08:02:04,985.985 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:02:05,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:02:05,039.039 INFO    ] No update needed
[2026-10-18 08:02:05,041.041 INFO    ] Checking for camera pi updates...
[2026-10-18 08:02:05,077.077 INFO    ] 200
[2026-10-18 08:02:05,079.079 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:02:05,119.119 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:02:15,135.135 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:02:15,170.170 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:02:15,180.180 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:02:15,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:02:15,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:02:15,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:02:17,233.233 INFO    ] ================================================
[2026-10-18 08:02:17,249.249 INFO    ] Launching Daemon at Sun Oct 18 08:02:17 IST 2026
[2026-10-18 08:02:17,260.260 INFO    ] ================================================
[2026-10-18 08:02:17,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:02:17
[2026-10-18 08:02:18,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:02:18,700.700 INFO    ] Initializing speech engine...
[2026-10-18 08:02:18,707.707 INFO    ] 2026-10-18 08:02:18
[2026-10-18 08:02:18,957.957 INFO    ] 2026-10-18 08:02:18
[2026-10-18 08:02:18,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:02:19,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:02:19,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:02:19,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:02:19,443.443 INFO    ] time= 18/10/2026 08:02:19
[2026-10-18 08:02:19,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:02:19,529.529 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:02:19,662.662 INFO    ] No existing commands found in stream
[2026-10-18 08:02:24,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:02:24,690.690 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-18 08:02:28,410.410 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:02:28,413.413 INFO    ] Checking for system updates...
[2026-10-18 08:02:28,448.448 INFO    ] 200
[2026-10-18 08:02:28,451.451 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:02:28,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:02:28,512.512 INFO    ] No update needed
[2026-10-18 08:02:28,515.515 INFO    ] Checking for camera pi updates...
[2026-10-18 08:02:28,548.548 INFO    ] 200
[2026-10-18 08:02:28,550.550 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:02:28,596.596 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:02:38,610.610 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:02:38,646.646 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:02:38,655.655 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:02:38,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:02:38,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:02:38,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:02:40,712.712 INFO    ] ================================================
[2026-10-18 08:02:40,729.729 INFO    ] Launching Daemon at Sun Oct 18 08:02:40 IST 2026
[2026-10-18 08:02:40,741.741 INFO    ] ================================================
[2026-10-18 08:02:41,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:02:41
[2026-10-18 08:02:42,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:02:42,424.424 INFO    ] Initializing speech engine...
[2026-10-18 08:02:42,434.434 INFO    ] 2026-10-18 08:02:42
[2026-10-18 08:02:42,719.719 INFO    ] 2026-10-18 08:02:42
[2026-10-18 08:02:42,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:02:43,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:02:43,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:02:43,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:02:43,184.184 INFO    ] time= 18/10/2026 08:02:43
[2026-10-18 08:02:43,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:02:43,284.284 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:02:43,434.434 INFO    ] No existing commands found in stream
[2026-10-18 08:02:48,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:02:48,454.454 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-18 08:02:52,150.150 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 08:02:52,153.153 INFO    ] Checking for system updates...
[2026-10-18 08:02:52,191.191 INFO    ] 200
[2026-10-18 08:02:52,194.194 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:02:52,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:02:52,257.257 INFO    ] No update needed
[2026-10-18 08:02:52,260.260 INFO    ] Checking for camera pi updates...
[2026-10-18 08:02:52,295.295 INFO    ] 200
[2026-10-18 08:02:52,298.298 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:02:52,338.338 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:03:02,354.354 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:03:02,392.392 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:03:02,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:03:02,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:03:02,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:03:02,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:03:04,460.460 INFO    ] ================================================
[2026-10-18 08:03:04,476.476 INFO    ] Launching Daemon at Sun Oct 18 08:03:04 IST 2026
[2026-10-18 08:03:04,487.487 INFO    ] ================================================
[2026-10-18 08:03:05,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:03:05
[2026-10-18 08:03:05,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:03:05,935.935 INFO    ] Initializing speech engine...
[2026-10-18 08:03:05,945.945 INFO    ] 2026-10-18 08:03:05
[2026-10-18 08:03:06,197.197 INFO    ] 2026-10-18 08:03:06
[2026-10-18 08:03:06,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:03:06,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:03:06,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:03:06,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:03:06,700.700 INFO    ] time= 18/10/2026 08:03:06
[2026-10-18 08:03:06,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:03:06,759.759 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:03:06,909.909 INFO    ] No existing commands found in stream
[2026-10-18 08:03:11,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:03:11,943.943 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-18 08:03:14,109.109 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:03:14,112.112 INFO    ] Checking for system updates...
[2026-10-18 08:03:14,151.151 INFO    ] 200
[2026-10-18 08:03:14,154.154 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:03:14,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:03:14,209.209 INFO    ] No update needed
[2026-10-18 08:03:14,212.212 INFO    ] Checking for camera pi updates...
[2026-10-18 08:03:14,245.245 INFO    ] 200
[2026-10-18 08:03:14,247.247 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:03:14,292.292 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:03:24,308.308 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:03:24,342.342 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:03:24,352.352 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:03:24,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:03:24,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:03:24,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:03:26,406.406 INFO    ] ================================================
[2026-10-18 08:03:26,422.422 INFO    ] Launching Daemon at Sun Oct 18 08:03:26 IST 2026
[2026-10-18 08:03:26,433.433 INFO    ] ================================================
[2026-10-18 08:03:27,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:03:27
[2026-10-18 08:03:27,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:03:28,090.090 INFO    ] Initializing speech engine...
[2026-10-18 08:03:28,099.099 INFO    ] 2026-10-18 08:03:28
[2026-10-18 08:03:28,394.394 INFO    ] 2026-10-18 08:03:28
[2026-10-18 08:03:28,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:03:28,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:03:28,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:03:28,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:03:28,945.945 INFO    ] time= 18/10/2026 08:03:28
[2026-10-18 08:03:28,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:03:28,974.974 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:03:29,104.104 INFO    ] No existing commands found in stream
[2026-10-18 08:03:34,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:03:34,122.122 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-18 08:03:36,249.249 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:03:36,252.252 INFO    ] Checking for system updates...
[2026-10-18 08:03:36,290.290 INFO    ] 200
[2026-10-18 08:03:36,293.293 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:03:36,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:03:36,359.359 INFO    ] No update needed
[2026-10-18 08:03:36,362.362 INFO    ] Checking for camera pi updates...
[2026-10-18 08:03:36,397.397 INFO    ] 200
[2026-10-18 08:03:36,400.400 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:03:36,448.448 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:03:46,465.465 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:03:46,506.506 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:03:46,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:03:46,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:03:46,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:03:46,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:03:48,577.577 INFO    ] ================================================
[2026-10-18 08:03:48,593.593 INFO    ] Launching Daemon at Sun Oct 18 08:03:48 IST 2026
[2026-10-18 08:03:48,604.604 INFO    ] ================================================
[2026-10-18 08:03:49,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:03:49
[2026-10-18 08:03:49,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:03:50,272.272 INFO    ] Initializing speech engine...
[2026-10-18 08:03:50,287.287 INFO    ] 2026-10-18 08:03:50
[2026-10-18 08:03:50,596.596 INFO    ] 2026-10-18 08:03:50
[2026-10-18 08:03:50,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:03:50,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:03:50,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:03:51,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:03:51,109.109 INFO    ] time= 18/10/2026 08:03:51
[2026-10-18 08:03:51,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:03:51,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:03:51,267.267 INFO    ] No existing commands found in stream
[2026-10-18 08:03:56,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:03:56,300.300 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-18 08:03:58,301.301 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:03:58,304.304 INFO    ] Checking for system updates...
[2026-10-18 08:03:58,342.342 INFO    ] 200
[2026-10-18 08:03:58,345.345 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:03:58,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:03:58,411.411 INFO    ] No update needed
[2026-10-18 08:03:58,414.414 INFO    ] Checking for camera pi updates...
[2026-10-18 08:03:58,448.448 INFO    ] 200
[2026-10-18 08:03:58,450.450 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:03:58,500.500 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:04:08,513.513 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:04:08,548.548 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:04:08,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:04:08,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:04:08,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:04:08,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:04:10,611.611 INFO    ] ================================================
[2026-10-18 08:04:10,627.627 INFO    ] Launching Daemon at Sun Oct 18 08:04:10 IST 2026
[2026-10-18 08:04:10,638.638 INFO    ] ================================================
[2026-10-18 08:04:11,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:04:11
[2026-10-18 08:04:11,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:04:12,073.073 INFO    ] Initializing speech engine...
[2026-10-18 08:04:12,083.083 INFO    ] 2026-10-18 08:04:12
[2026-10-18 08:04:12,336.336 INFO    ] 2026-10-18 08:04:12
[2026-10-18 08:04:12,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:04:12,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:04:12,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:04:12,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:04:12,775.775 INFO    ] time= 18/10/2026 08:04:12
[2026-10-18 08:04:12,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:04:12,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:04:13,028.028 INFO    ] No existing commands found in stream
[2026-10-18 08:04:18,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:04:18,056.056 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-18 08:04:20,871.871 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:04:20,874.874 INFO    ] Checking for system updates...
[2026-10-18 08:04:20,909.909 INFO    ] 200
[2026-10-18 08:04:20,912.912 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:04:20,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:04:20,974.974 INFO    ] No update needed
[2026-10-18 08:04:20,977.977 INFO    ] Checking for camera pi updates...
[2026-10-18 08:04:21,010.010 INFO    ] 200
[2026-10-18 08:04:21,012.012 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:04:21,052.052 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:04:31,067.067 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:04:31,102.102 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:04:31,112.112 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:04:31,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:04:31,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:04:31,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:04:33,168.168 INFO    ] ================================================
[2026-10-18 08:04:33,184.184 INFO    ] Launching Daemon at Sun Oct 18 08:04:33 IST 2026
[2026-10-18 08:04:33,195.195 INFO    ] ================================================
[2026-10-18 08:04:33,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:04:33
[2026-10-18 08:04:34,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:04:34,622.622 INFO    ] Initializing speech engine...
[2026-10-18 08:04:34,631.631 INFO    ] 2026-10-18 08:04:34
[2026-10-18 08:04:34,899.899 INFO    ] 2026-10-18 08:04:34
[2026-10-18 08:04:34,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:04:35,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:04:35,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:04:35,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:04:35,405.405 INFO    ] time= 18/10/2026 08:04:35
[2026-10-18 08:04:35,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:04:35,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:04:35,564.564 INFO    ] No existing commands found in stream
[2026-10-18 08:04:40,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:04:40,577.577 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-18 08:04:42,920.920 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:04:42,923.923 INFO    ] Checking for system updates...
[2026-10-18 08:04:42,958.958 INFO    ] 200
[2026-10-18 08:04:42,960.960 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:04:43,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:04:43,016.016 INFO    ] No update needed
[2026-10-18 08:04:43,019.019 INFO    ] Checking for camera pi updates...
[2026-10-18 08:04:43,053.053 INFO    ] 200
[2026-10-18 08:04:43,055.055 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:04:43,096.096 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:04:53,111.111 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:04:53,145.145 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:04:53,155.155 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:04:53,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:04:53,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:04:53,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:04:55,209.209 INFO    ] ================================================
[2026-10-18 08:04:55,225.225 INFO    ] Launching Daemon at Sun Oct 18 08:04:55 IST 2026
[2026-10-18 08:04:55,238.238 INFO    ] ================================================
[2026-10-18 08:04:55,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:04:55
[2026-10-18 08:04:56,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:04:56,924.924 INFO    ] Initializing speech engine...
[2026-10-18 08:04:56,930.930 INFO    ] 2026-10-18 08:04:56
[2026-10-18 08:04:57,224.224 INFO    ] 2026-10-18 08:04:57
[2026-10-18 08:04:57,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:04:57,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:04:57,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:04:57,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:04:57,764.764 INFO    ] time= 18/10/2026 08:04:57
[2026-10-18 08:04:57,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:04:57,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:04:57,929.929 INFO    ] No existing commands found in stream
[2026-10-18 08:05:02,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:05:02,961.961 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-18 08:05:07,396.396 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:05:07,399.399 INFO    ] Checking for system updates...
[2026-10-18 08:05:07,437.437 INFO    ] 200
[2026-10-18 08:05:07,440.440 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:05:07,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:05:07,495.495 INFO    ] No update needed
[2026-10-18 08:05:07,498.498 INFO    ] Checking for camera pi updates...
[2026-10-18 08:05:07,533.533 INFO    ] 200
[2026-10-18 08:05:07,536.536 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:05:07,583.583 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:05:17,599.599 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:05:17,643.643 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:05:17,656.656 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:05:17,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:05:17,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:05:17,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:05:19,717.717 INFO    ] ================================================
[2026-10-18 08:05:19,734.734 INFO    ] Launching Daemon at Sun Oct 18 08:05:19 IST 2026
[2026-10-18 08:05:19,746.746 INFO    ] ================================================
[2026-10-18 08:05:20,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:05:20
[2026-10-18 08:05:20,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:05:21,321.321 INFO    ] Initializing speech engine...
[2026-10-18 08:05:21,328.328 INFO    ] 2026-10-18 08:05:21
[2026-10-18 08:05:21,620.620 INFO    ] 2026-10-18 08:05:21
[2026-10-18 08:05:21,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:05:21,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:05:21,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:05:22,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:05:22,209.209 INFO    ] time= 18/10/2026 08:05:22
[2026-10-18 08:05:22,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:05:22,239.239 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:05:22,397.397 INFO    ] No existing commands found in stream
[2026-10-18 08:05:27,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:05:27,432.432 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-18 08:05:30,847.847 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:05:30,850.850 INFO    ] Checking for system updates...
[2026-10-18 08:05:30,887.887 INFO    ] 200
[2026-10-18 08:05:30,890.890 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:05:30,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:05:30,946.946 INFO    ] No update needed
[2026-10-18 08:05:30,948.948 INFO    ] Checking for camera pi updates...
[2026-10-18 08:05:30,985.985 INFO    ] 200
[2026-10-18 08:05:30,988.988 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:05:31,030.030 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:05:41,045.045 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:05:41,084.084 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:05:41,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:05:41,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:05:41,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:05:41,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:05:43,150.150 INFO    ] ================================================
[2026-10-18 08:05:43,165.165 INFO    ] Launching Daemon at Sun Oct 18 08:05:43 IST 2026
[2026-10-18 08:05:43,177.177 INFO    ] ================================================
[2026-10-18 08:05:43,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:05:43
[2026-10-18 08:05:44,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:05:44,679.679 INFO    ] Initializing speech engine...
[2026-10-18 08:05:44,684.684 INFO    ] 2026-10-18 08:05:44
[2026-10-18 08:05:44,942.942 INFO    ] 2026-10-18 08:05:44
[2026-10-18 08:05:44,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:05:45,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:05:45,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:05:45,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:05:45,429.429 INFO    ] time= 18/10/2026 08:05:45
[2026-10-18 08:05:45,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:05:45,494.494 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:05:45,678.678 INFO    ] No existing commands found in stream
[2026-10-18 08:05:50,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:05:50,711.711 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-18 08:05:52,546.546 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:05:52,549.549 INFO    ] Checking for system updates...
[2026-10-18 08:05:52,584.584 INFO    ] 200
[2026-10-18 08:05:52,587.587 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:05:52,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:05:52,655.655 INFO    ] No update needed
[2026-10-18 08:05:52,658.658 INFO    ] Checking for camera pi updates...
[2026-10-18 08:05:52,692.692 INFO    ] 200
[2026-10-18 08:05:52,694.694 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:05:52,739.739 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:06:02,756.756 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:06:02,801.801 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:06:02,813.813 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:06:02,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:06:02,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:06:02,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:06:04,877.877 INFO    ] ================================================
[2026-10-18 08:06:04,893.893 INFO    ] Launching Daemon at Sun Oct 18 08:06:04 IST 2026
[2026-10-18 08:06:04,905.905 INFO    ] ================================================
[2026-10-18 08:06:05,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:06:05
[2026-10-18 08:06:06,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:06:06,376.376 INFO    ] Initializing speech engine...
[2026-10-18 08:06:06,384.384 INFO    ] 2026-10-18 08:06:06
[2026-10-18 08:06:06,642.642 INFO    ] 2026-10-18 08:06:06
[2026-10-18 08:06:06,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:06:06,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:06:06,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:06:07,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:06:07,185.185 INFO    ] time= 18/10/2026 08:06:07
[2026-10-18 08:06:07,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:06:07,209.209 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:06:07,340.340 INFO    ] No existing commands found in stream
[2026-10-18 08:06:12,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:06:12,358.358 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-18 08:06:14,174.174 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 08:06:14,177.177 INFO    ] Checking for system updates...
[2026-10-18 08:06:14,213.213 INFO    ] 200
[2026-10-18 08:06:14,216.216 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:06:14,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:06:14,273.273 INFO    ] No update needed
[2026-10-18 08:06:14,275.275 INFO    ] Checking for camera pi updates...
[2026-10-18 08:06:14,315.315 INFO    ] 200
[2026-10-18 08:06:14,317.317 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:06:14,362.362 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:06:24,377.377 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:06:24,413.413 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:06:24,423.423 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:06:24,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:06:24,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:06:24,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:06:26,476.476 INFO    ] ================================================
[2026-10-18 08:06:26,492.492 INFO    ] Launching Daemon at Sun Oct 18 08:06:26 IST 2026
[2026-10-18 08:06:26,502.502 INFO    ] ================================================
[2026-10-18 08:06:27,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:06:27
[2026-10-18 08:06:27,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:06:27,972.972 INFO    ] Initializing speech engine...
[2026-10-18 08:06:27,979.979 INFO    ] 2026-10-18 08:06:27
[2026-10-18 08:06:28,240.240 INFO    ] 2026-10-18 08:06:28
[2026-10-18 08:06:28,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:06:28,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:06:28,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:06:28,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:06:28,730.730 INFO    ] time= 18/10/2026 08:06:28
[2026-10-18 08:06:28,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:06:28,795.795 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:06:28,930.930 INFO    ] No existing commands found in stream
[2026-10-18 08:06:33,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:06:33,953.953 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-18 08:06:36,514.514 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:06:36,517.517 INFO    ] Checking for system updates...
[2026-10-18 08:06:36,553.553 INFO    ] 200
[2026-10-18 08:06:36,556.556 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:06:36,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:06:36,610.610 INFO    ] No update needed
[2026-10-18 08:06:36,612.612 INFO    ] Checking for camera pi updates...
[2026-10-18 08:06:36,646.646 INFO    ] 200
[2026-10-18 08:06:36,649.649 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:06:36,692.692 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:06:46,705.705 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:06:46,740.740 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:06:46,749.749 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:06:46,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:06:46,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:06:46,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:06:48,808.808 INFO    ] ================================================
[2026-10-18 08:06:48,824.824 INFO    ] Launching Daemon at Sun Oct 18 08:06:48 IST 2026
[2026-10-18 08:06:48,835.835 INFO    ] ================================================
[2026-10-18 08:06:49,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:06:49
[2026-10-18 08:06:50,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:06:50,444.444 INFO    ] Initializing speech engine...
[2026-10-18 08:06:50,458.458 INFO    ] 2026-10-18 08:06:50
[2026-10-18 08:06:50,741.741 INFO    ] 2026-10-18 08:06:50
[2026-10-18 08:06:50,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:06:51,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:06:51,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:06:51,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:06:51,283.283 INFO    ] time= 18/10/2026 08:06:51
[2026-10-18 08:06:51,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:06:51,324.324 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:06:51,444.444 INFO    ] No existing commands found in stream
[2026-10-18 08:06:56,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:06:56,478.478 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-18 08:06:59,845.845 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:06:59,848.848 INFO    ] Checking for system updates...
[2026-10-18 08:06:59,885.885 INFO    ] 200
[2026-10-18 08:06:59,888.888 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:06:59,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:06:59,944.944 INFO    ] No update needed
[2026-10-18 08:06:59,947.947 INFO    ] Checking for camera pi updates...
[2026-10-18 08:06:59,981.981 INFO    ] 200
[2026-10-18 08:06:59,983.983 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:07:00,027.027 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:07:10,042.042 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:07:10,083.083 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:07:10,094.094 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:07:10,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:07:10,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:07:10,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:07:12,149.149 INFO    ] ================================================
[2026-10-18 08:07:12,165.165 INFO    ] Launching Daemon at Sun Oct 18 08:07:12 IST 2026
[2026-10-18 08:07:12,177.177 INFO    ] ================================================
[2026-10-18 08:07:12,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:07:12
[2026-10-18 08:07:13,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:07:13,870.870 INFO    ] Initializing speech engine...
[2026-10-18 08:07:13,882.882 INFO    ] 2026-10-18 08:07:13
[2026-10-18 08:07:14,175.175 INFO    ] 2026-10-18 08:07:14
[2026-10-18 08:07:14,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:07:14,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:07:14,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:07:14,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:07:14,723.723 INFO    ] time= 18/10/2026 08:07:14
[2026-10-18 08:07:14,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:07:14,747.747 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:07:14,878.878 INFO    ] No existing commands found in stream
[2026-10-18 08:07:19,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:07:19,896.896 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-18 08:07:23,553.553 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:07:23,555.555 INFO    ] Checking for system updates...
[2026-10-18 08:07:23,591.591 INFO    ] 200
[2026-10-18 08:07:23,593.593 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:07:23,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:07:23,649.649 INFO    ] No update needed
[2026-10-18 08:07:23,651.651 INFO    ] Checking for camera pi updates...
[2026-10-18 08:07:23,685.685 INFO    ] 200
[2026-10-18 08:07:23,688.688 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:07:23,728.728 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:07:33,741.741 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:07:33,775.775 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:07:33,785.785 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:07:33,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:07:33,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:07:33,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:07:35,839.839 INFO    ] ================================================
[2026-10-18 08:07:35,855.855 INFO    ] Launching Daemon at Sun Oct 18 08:07:35 IST 2026
[2026-10-18 08:07:35,867.867 INFO    ] ================================================
[2026-10-18 08:07:36,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:07:36
[2026-10-18 08:07:37,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:07:37,289.289 INFO    ] Initializing speech engine...
[2026-10-18 08:07:37,295.295 INFO    ] 2026-10-18 08:07:37
[2026-10-18 08:07:37,593.593 INFO    ] 2026-10-18 08:07:37
[2026-10-18 08:07:37,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:07:37,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:07:37,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:07:38,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:07:38,014.014 INFO    ] time= 18/10/2026 08:07:38
[2026-10-18 08:07:38,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:07:38,025.025 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:07:38,112.112 INFO    ] No existing commands found in stream
[2026-10-18 08:07:43,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:07:43,150.150 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-18 08:07:44,355.355 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:07:44,358.358 INFO    ] Checking for system updates...
[2026-10-18 08:07:44,394.394 INFO    ] 200
[2026-10-18 08:07:44,397.397 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:07:44,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:07:44,451.451 INFO    ] No update needed
[2026-10-18 08:07:44,454.454 INFO    ] Checking for camera pi updates...
[2026-10-18 08:07:44,487.487 INFO    ] 200
[2026-10-18 08:07:44,489.489 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:07:44,533.533 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:07:54,548.548 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:07:54,583.583 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:07:54,592.592 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:07:54,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:07:54,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:07:54,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:07:56,647.647 INFO    ] ================================================
[2026-10-18 08:07:56,662.662 INFO    ] Launching Daemon at Sun Oct 18 08:07:56 IST 2026
[2026-10-18 08:07:56,673.673 INFO    ] ================================================
[2026-10-18 08:07:57,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:07:57
[2026-10-18 08:07:57,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:07:58,115.115 INFO    ] Initializing speech engine...
[2026-10-18 08:07:58,123.123 INFO    ] 2026-10-18 08:07:58
[2026-10-18 08:07:58,421.421 INFO    ] 2026-10-18 08:07:58
[2026-10-18 08:07:58,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:07:58,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:07:58,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:07:58,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:07:58,840.840 INFO    ] time= 18/10/2026 08:07:58
[2026-10-18 08:07:58,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:07:58,896.896 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:07:59,029.029 INFO    ] No existing commands found in stream
[2026-10-18 08:08:04,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:08:04,057.057 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-18 08:08:05,526.526 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:08:05,529.529 INFO    ] Checking for system updates...
[2026-10-18 08:08:05,566.566 INFO    ] 200
[2026-10-18 08:08:05,569.569 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:08:05,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:08:05,623.623 INFO    ] No update needed
[2026-10-18 08:08:05,626.626 INFO    ] Checking for camera pi updates...
[2026-10-18 08:08:05,660.660 INFO    ] 200
[2026-10-18 08:08:05,662.662 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:08:05,709.709 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:08:15,724.724 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:08:15,760.760 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:08:15,770.770 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:08:15,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:08:15,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:08:15,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:08:17,824.824 INFO    ] ================================================
[2026-10-18 08:08:17,840.840 INFO    ] Launching Daemon at Sun Oct 18 08:08:17 IST 2026
[2026-10-18 08:08:17,850.850 INFO    ] ================================================
[2026-10-18 08:08:18,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:08:18
[2026-10-18 08:08:19,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:08:19,276.276 INFO    ] Initializing speech engine...
[2026-10-18 08:08:19,285.285 INFO    ] 2026-10-18 08:08:19
[2026-10-18 08:08:19,532.532 INFO    ] 2026-10-18 08:08:19
[2026-10-18 08:08:19,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:08:19,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:08:19,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:08:19,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:08:20,008.008 INFO    ] time= 18/10/2026 08:08:19
[2026-10-18 08:08:20,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:08:20,107.107 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:08:20,228.228 INFO    ] No existing commands found in stream
[2026-10-18 08:08:25,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:08:25,252.252 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-18 08:08:27,929.929 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:08:27,932.932 INFO    ] Checking for system updates...
[2026-10-18 08:08:27,967.967 INFO    ] 200
[2026-10-18 08:08:27,969.969 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:08:28,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:08:28,025.025 INFO    ] No update needed
[2026-10-18 08:08:28,028.028 INFO    ] Checking for camera pi updates...
[2026-10-18 08:08:28,061.061 INFO    ] 200
[2026-10-18 08:08:28,063.063 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:08:28,104.104 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:08:38,117.117 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:08:38,152.152 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:08:38,162.162 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:08:38,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:08:38,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:08:38,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:08:40,216.216 INFO    ] ================================================
[2026-10-18 08:08:40,231.231 INFO    ] Launching Daemon at Sun Oct 18 08:08:40 IST 2026
[2026-10-18 08:08:40,242.242 INFO    ] ================================================
[2026-10-18 08:08:40,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:08:40
[2026-10-18 08:08:41,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:08:41,705.705 INFO    ] Initializing speech engine...
[2026-10-18 08:08:41,710.710 INFO    ] 2026-10-18 08:08:41
[2026-10-18 08:08:41,972.972 INFO    ] 2026-10-18 08:08:41
[2026-10-18 08:08:42,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:08:42,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:08:42,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:08:42,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:08:42,435.435 INFO    ] time= 18/10/2026 08:08:42
[2026-10-18 08:08:42,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:08:42,521.521 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:08:42,670.670 INFO    ] No existing commands found in stream
[2026-10-18 08:08:47,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:08:47,692.692 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-18 08:08:51,589.589 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:08:51,592.592 INFO    ] Checking for system updates...
[2026-10-18 08:08:51,633.633 INFO    ] 200
[2026-10-18 08:08:51,636.636 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:08:51,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:08:51,694.694 INFO    ] No update needed
[2026-10-18 08:08:51,697.697 INFO    ] Checking for camera pi updates...
[2026-10-18 08:08:51,734.734 INFO    ] 200
[2026-10-18 08:08:51,736.736 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:08:51,778.778 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:09:01,794.794 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:09:01,839.839 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:09:01,851.851 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:09:01,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:09:01,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:09:01,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:09:03,923.923 INFO    ] ================================================
[2026-10-18 08:09:03,939.939 INFO    ] Launching Daemon at Sun Oct 18 08:09:03 IST 2026
[2026-10-18 08:09:03,950.950 INFO    ] ================================================
[2026-10-18 08:09:04,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:09:04
[2026-10-18 08:09:05,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:09:05,396.396 INFO    ] Initializing speech engine...
[2026-10-18 08:09:05,409.409 INFO    ] 2026-10-18 08:09:05
[2026-10-18 08:09:05,693.693 INFO    ] 2026-10-18 08:09:05
[2026-10-18 08:09:05,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:09:05,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:09:05,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:09:06,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:09:06,183.183 INFO    ] time= 18/10/2026 08:09:06
[2026-10-18 08:09:06,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:09:06,254.254 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:09:06,358.358 INFO    ] No existing commands found in stream
[2026-10-18 08:09:11,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:09:11,371.371 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-18 08:09:13,575.575 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:09:13,578.578 INFO    ] Checking for system updates...
[2026-10-18 08:09:13,617.617 INFO    ] 200
[2026-10-18 08:09:13,619.619 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:09:13,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:09:13,674.674 INFO    ] No update needed
[2026-10-18 08:09:13,676.676 INFO    ] Checking for camera pi updates...
[2026-10-18 08:09:13,714.714 INFO    ] 200
[2026-10-18 08:09:13,717.717 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:09:13,761.761 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:09:23,774.774 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:09:23,809.809 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:09:23,819.819 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:09:23,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:09:23,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:09:23,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:09:25,871.871 INFO    ] ================================================
[2026-10-18 08:09:25,886.886 INFO    ] Launching Daemon at Sun Oct 18 08:09:25 IST 2026
[2026-10-18 08:09:25,897.897 INFO    ] ================================================
[2026-10-18 08:09:26,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:09:26
[2026-10-18 08:09:27,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:09:27,498.498 INFO    ] Initializing speech engine...
[2026-10-18 08:09:27,508.508 INFO    ] 2026-10-18 08:09:27
[2026-10-18 08:09:27,793.793 INFO    ] 2026-10-18 08:09:27
[2026-10-18 08:09:27,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:09:28,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:09:28,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:09:28,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:09:28,340.340 INFO    ] time= 18/10/2026 08:09:28
[2026-10-18 08:09:28,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:09:28,391.391 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:09:28,520.520 INFO    ] No existing commands found in stream
[2026-10-18 08:09:33,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:09:33,559.559 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-18 08:09:35,486.486 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:09:35,489.489 INFO    ] Checking for system updates...
[2026-10-18 08:09:35,526.526 INFO    ] 200
[2026-10-18 08:09:35,529.529 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:09:35,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:09:35,586.586 INFO    ] No update needed
[2026-10-18 08:09:35,589.589 INFO    ] Checking for camera pi updates...
[2026-10-18 08:09:35,623.623 INFO    ] 200
[2026-10-18 08:09:35,626.626 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:09:35,668.668 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:09:45,684.684 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cee150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:09:45,723.723 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:09:45,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:09:45,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:09:45,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:09:45,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:09:47,788.788 INFO    ] ================================================
[2026-10-18 08:09:47,803.803 INFO    ] Launching Daemon at Sun Oct 18 08:09:47 IST 2026
[2026-10-18 08:09:47,814.814 INFO    ] ================================================
[2026-10-18 08:09:48,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:09:48
[2026-10-18 08:09:48,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:09:49,225.225 INFO    ] Initializing speech engine...
[2026-10-18 08:09:49,249.249 INFO    ] 2026-10-18 08:09:49
[2026-10-18 08:09:49,518.518 INFO    ] 2026-10-18 08:09:49
[2026-10-18 08:09:49,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:09:49,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:09:49,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:09:49,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:09:49,934.934 INFO    ] time= 18/10/2026 08:09:49
[2026-10-18 08:09:49,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:09:49,946.946 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:09:50,094.094 INFO    ] No existing commands found in stream
[2026-10-18 08:09:55,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:09:55,122.122 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-18 08:09:56,186.186 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:09:56,188.188 INFO    ] Checking for system updates...
[2026-10-18 08:09:56,225.225 INFO    ] 200
[2026-10-18 08:09:56,227.227 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:09:56,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:09:56,281.281 INFO    ] No update needed
[2026-10-18 08:09:56,284.284 INFO    ] Checking for camera pi updates...
[2026-10-18 08:09:56,318.318 INFO    ] 200
[2026-10-18 08:09:56,320.320 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:09:56,361.361 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:10:06,376.376 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:10:06,410.410 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:10:06,420.420 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:10:06,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:10:06,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:10:06,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:10:08,474.474 INFO    ] ================================================
[2026-10-18 08:10:08,489.489 INFO    ] Launching Daemon at Sun Oct 18 08:10:08 IST 2026
[2026-10-18 08:10:08,501.501 INFO    ] ================================================
[2026-10-18 08:10:09,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:10:09
[2026-10-18 08:10:09,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:10:09,924.924 INFO    ] Initializing speech engine...
[2026-10-18 08:10:09,933.933 INFO    ] 2026-10-18 08:10:09
[2026-10-18 08:10:10,179.179 INFO    ] 2026-10-18 08:10:10
[2026-10-18 08:10:10,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:10:10,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:10:10,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:10:10,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:10:10,633.633 INFO    ] time= 18/10/2026 08:10:10
[2026-10-18 08:10:10,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:10:10,732.732 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:10:10,838.838 INFO    ] No existing commands found in stream
[2026-10-18 08:10:15,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:10:15,864.864 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-18 08:10:18,562.562 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:10:18,565.565 INFO    ] Checking for system updates...
[2026-10-18 08:10:18,604.604 INFO    ] 200
[2026-10-18 08:10:18,607.607 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:10:18,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:10:18,661.661 INFO    ] No update needed
[2026-10-18 08:10:18,664.664 INFO    ] Checking for camera pi updates...
[2026-10-18 08:10:18,699.699 INFO    ] 200
[2026-10-18 08:10:18,702.702 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:10:18,747.747 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:10:28,762.762 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:10:28,797.797 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:10:28,806.806 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:10:28,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:10:28,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:10:28,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:10:30,860.860 INFO    ] ================================================
[2026-10-18 08:10:30,876.876 INFO    ] Launching Daemon at Sun Oct 18 08:10:30 IST 2026
[2026-10-18 08:10:30,888.888 INFO    ] ================================================
[2026-10-18 08:10:31,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:10:31
[2026-10-18 08:10:32,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:10:32,370.370 INFO    ] Initializing speech engine...
[2026-10-18 08:10:32,381.381 INFO    ] 2026-10-18 08:10:32
[2026-10-18 08:10:32,668.668 INFO    ] 2026-10-18 08:10:32
[2026-10-18 08:10:32,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:10:32,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:10:32,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:10:33,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:10:33,094.094 INFO    ] time= 18/10/2026 08:10:33
[2026-10-18 08:10:33,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:10:33,148.148 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:10:33,291.291 INFO    ] No existing commands found in stream
[2026-10-18 08:10:38,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:10:38,310.310 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-18 08:10:41,346.346 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 08:10:41,349.349 INFO    ] Checking for system updates...
[2026-10-18 08:10:41,385.385 INFO    ] 200
[2026-10-18 08:10:41,388.388 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:10:41,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:10:41,443.443 INFO    ] No update needed
[2026-10-18 08:10:41,446.446 INFO    ] Checking for camera pi updates...
[2026-10-18 08:10:41,479.479 INFO    ] 200
[2026-10-18 08:10:41,482.482 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:10:41,522.522 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:10:51,536.536 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:10:51,571.571 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:10:51,580.580 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:10:51,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:10:51,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:10:51,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:10:53,633.633 INFO    ] ================================================
[2026-10-18 08:10:53,648.648 INFO    ] Launching Daemon at Sun Oct 18 08:10:53 IST 2026
[2026-10-18 08:10:53,659.659 INFO    ] ================================================
[2026-10-18 08:10:54,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:10:54
[2026-10-18 08:10:54,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:10:55,075.075 INFO    ] Initializing speech engine...
[2026-10-18 08:10:55,084.084 INFO    ] 2026-10-18 08:10:55
[2026-10-18 08:10:55,329.329 INFO    ] 2026-10-18 08:10:55
[2026-10-18 08:10:55,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:10:55,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:10:55,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:10:55,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:10:55,858.858 INFO    ] time= 18/10/2026 08:10:55
[2026-10-18 08:10:55,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:10:55,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:10:56,029.029 INFO    ] No existing commands found in stream
[2026-10-18 08:11:01,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:11:01,048.048 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-18 08:11:05,150.150 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:11:05,152.152 INFO    ] Checking for system updates...
[2026-10-18 08:11:05,188.188 INFO    ] 200
[2026-10-18 08:11:05,191.191 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:11:05,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:11:05,246.246 INFO    ] No update needed
[2026-10-18 08:11:05,248.248 INFO    ] Checking for camera pi updates...
[2026-10-18 08:11:05,285.285 INFO    ] 200
[2026-10-18 08:11:05,288.288 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:11:05,328.328 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:11:15,343.343 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:11:15,378.378 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:11:15,388.388 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:11:15,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:11:15,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:11:15,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:11:17,443.443 INFO    ] ================================================
[2026-10-18 08:11:17,459.459 INFO    ] Launching Daemon at Sun Oct 18 08:11:17 IST 2026
[2026-10-18 08:11:17,470.470 INFO    ] ================================================
[2026-10-18 08:11:18,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:11:18
[2026-10-18 08:11:18,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:11:18,922.922 INFO    ] Initializing speech engine...
[2026-10-18 08:11:18,931.931 INFO    ] 2026-10-18 08:11:18
[2026-10-18 08:11:19,223.223 INFO    ] 2026-10-18 08:11:19
[2026-10-18 08:11:19,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:11:19,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:11:19,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:11:19,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:11:19,728.728 INFO    ] time= 18/10/2026 08:11:19
[2026-10-18 08:11:19,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:11:19,826.826 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:11:19,988.988 INFO    ] No existing commands found in stream
[2026-10-18 08:11:25,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:11:25,027.027 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-18 08:11:27,753.753 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:11:27,755.755 INFO    ] Checking for system updates...
[2026-10-18 08:11:27,791.791 INFO    ] 200
[2026-10-18 08:11:27,793.793 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:11:27,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:11:27,849.849 INFO    ] No update needed
[2026-10-18 08:11:27,851.851 INFO    ] Checking for camera pi updates...
[2026-10-18 08:11:27,888.888 INFO    ] 200
[2026-10-18 08:11:27,891.891 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:11:27,931.931 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:11:37,946.946 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:11:37,981.981 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:11:37,990.990 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:11:37,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:11:37,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:11:38,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:11:40,042.042 INFO    ] ================================================
[2026-10-18 08:11:40,058.058 INFO    ] Launching Daemon at Sun Oct 18 08:11:40 IST 2026
[2026-10-18 08:11:40,068.068 INFO    ] ================================================
[2026-10-18 08:11:40,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:11:40
[2026-10-18 08:11:41,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:11:41,478.478 INFO    ] Initializing speech engine...
[2026-10-18 08:11:41,486.486 INFO    ] 2026-10-18 08:11:41
[2026-10-18 08:11:41,778.778 INFO    ] 2026-10-18 08:11:41
[2026-10-18 08:11:41,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:11:42,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:11:42,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:11:42,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:11:42,283.283 INFO    ] time= 18/10/2026 08:11:42
[2026-10-18 08:11:42,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:11:42,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:11:42,536.536 INFO    ] No existing commands found in stream
[2026-10-18 08:11:47,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:11:47,561.561 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-18 08:11:48,405.405 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:11:48,408.408 INFO    ] Checking for system updates...
[2026-10-18 08:11:48,443.443 INFO    ] 200
[2026-10-18 08:11:48,446.446 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:11:48,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:11:48,506.506 INFO    ] No update needed
[2026-10-18 08:11:48,508.508 INFO    ] Checking for camera pi updates...
[2026-10-18 08:11:48,545.545 INFO    ] 200
[2026-10-18 08:11:48,547.547 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:11:48,588.588 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:11:58,600.600 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:11:58,635.635 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:11:58,644.644 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:11:58,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:11:58,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:11:58,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:12:00,697.697 INFO    ] ================================================
[2026-10-18 08:12:00,713.713 INFO    ] Launching Daemon at Sun Oct 18 08:12:00 IST 2026
[2026-10-18 08:12:00,725.725 INFO    ] ================================================
[2026-10-18 08:12:01,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:12:01
[2026-10-18 08:12:01,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:12:02,364.364 INFO    ] Initializing speech engine...
[2026-10-18 08:12:02,372.372 INFO    ] 2026-10-18 08:12:02
[2026-10-18 08:12:02,682.682 INFO    ] 2026-10-18 08:12:02
[2026-10-18 08:12:02,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:12:02,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:12:02,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:12:03,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:12:03,218.218 INFO    ] time= 18/10/2026 08:12:03
[2026-10-18 08:12:03,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:12:03,306.306 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:12:03,404.404 INFO    ] No existing commands found in stream
[2026-10-18 08:12:08,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:12:08,441.441 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-18 08:12:11,011.011 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:12:11,014.014 INFO    ] Checking for system updates...
[2026-10-18 08:12:11,054.054 INFO    ] 200
[2026-10-18 08:12:11,057.057 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:12:11,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:12:11,111.111 INFO    ] No update needed
[2026-10-18 08:12:11,114.114 INFO    ] Checking for camera pi updates...
[2026-10-18 08:12:11,149.149 INFO    ] 200
[2026-10-18 08:12:11,151.151 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:12:11,192.192 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:12:21,208.208 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:12:21,242.242 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:12:21,252.252 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:12:21,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:12:21,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:12:21,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:12:23,304.304 INFO    ] ================================================
[2026-10-18 08:12:23,320.320 INFO    ] Launching Daemon at Sun Oct 18 08:12:23 IST 2026
[2026-10-18 08:12:23,331.331 INFO    ] ================================================
[2026-10-18 08:12:23,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:12:23
[2026-10-18 08:12:24,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:12:24,761.761 INFO    ] Initializing speech engine...
[2026-10-18 08:12:24,771.771 INFO    ] 2026-10-18 08:12:24
[2026-10-18 08:12:25,020.020 INFO    ] 2026-10-18 08:12:25
[2026-10-18 08:12:25,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:12:25,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:12:25,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:12:25,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:12:25,520.520 INFO    ] time= 18/10/2026 08:12:25
[2026-10-18 08:12:25,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:12:25,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:12:25,739.739 INFO    ] No existing commands found in stream
[2026-10-18 08:12:30,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:12:30,761.761 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-18 08:12:32,165.165 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 08:12:32,168.168 INFO    ] Checking for system updates...
[2026-10-18 08:12:32,211.211 INFO    ] 200
[2026-10-18 08:12:32,214.214 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:12:32,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:12:32,272.272 INFO    ] No update needed
[2026-10-18 08:12:32,275.275 INFO    ] Checking for camera pi updates...
[2026-10-18 08:12:32,311.311 INFO    ] 200
[2026-10-18 08:12:32,314.314 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:12:32,370.370 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:12:42,390.390 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:12:42,427.427 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:12:42,437.437 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:12:42,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:12:42,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:12:42,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:12:44,491.491 INFO    ] ================================================
[2026-10-18 08:12:44,506.506 INFO    ] Launching Daemon at Sun Oct 18 08:12:44 IST 2026
[2026-10-18 08:12:44,518.518 INFO    ] ================================================
[2026-10-18 08:12:45,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:12:45
[2026-10-18 08:12:45,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:12:45,994.994 INFO    ] Initializing speech engine...
[2026-10-18 08:12:46,003.003 INFO    ] 2026-10-18 08:12:45
[2026-10-18 08:12:46,256.256 INFO    ] 2026-10-18 08:12:46
[2026-10-18 08:12:46,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:12:46,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:12:46,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:12:46,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:12:46,818.818 INFO    ] time= 18/10/2026 08:12:46
[2026-10-18 08:12:46,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:12:46,836.836 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:12:46,981.981 INFO    ] No existing commands found in stream
[2026-10-18 08:12:51,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:12:52,000.000 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-18 08:12:54,368.368 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:12:54,371.371 INFO    ] Checking for system updates...
[2026-10-18 08:12:54,412.412 INFO    ] 200
[2026-10-18 08:12:54,414.414 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:12:54,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:12:54,474.474 INFO    ] No update needed
[2026-10-18 08:12:54,477.477 INFO    ] Checking for camera pi updates...
[2026-10-18 08:12:54,515.515 INFO    ] 200
[2026-10-18 08:12:54,518.518 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:12:54,560.560 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:13:04,573.573 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:13:04,608.608 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:13:04,618.618 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:13:04,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:13:04,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:13:04,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:13:06,672.672 INFO    ] ================================================
[2026-10-18 08:13:06,687.687 INFO    ] Launching Daemon at Sun Oct 18 08:13:06 IST 2026
[2026-10-18 08:13:06,699.699 INFO    ] ================================================
[2026-10-18 08:13:07,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:13:07
[2026-10-18 08:13:07,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:13:08,159.159 INFO    ] Initializing speech engine...
[2026-10-18 08:13:08,169.169 INFO    ] 2026-10-18 08:13:08
[2026-10-18 08:13:08,425.425 INFO    ] 2026-10-18 08:13:08
[2026-10-18 08:13:08,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:13:08,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:13:08,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:13:08,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:13:08,966.966 INFO    ] time= 18/10/2026 08:13:08
[2026-10-18 08:13:08,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:13:08,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:13:09,123.123 INFO    ] No existing commands found in stream
[2026-10-18 08:13:14,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:13:14,149.149 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-18 08:13:16,386.386 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:13:16,389.389 INFO    ] Checking for system updates...
[2026-10-18 08:13:16,429.429 INFO    ] 200
[2026-10-18 08:13:16,432.432 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:13:16,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:13:16,487.487 INFO    ] No update needed
[2026-10-18 08:13:16,490.490 INFO    ] Checking for camera pi updates...
[2026-10-18 08:13:16,524.524 INFO    ] 200
[2026-10-18 08:13:16,527.527 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:13:16,568.568 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:13:26,584.584 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:13:26,620.620 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:13:26,630.630 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:13:26,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:13:26,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:13:26,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:13:28,683.683 INFO    ] ================================================
[2026-10-18 08:13:28,699.699 INFO    ] Launching Daemon at Sun Oct 18 08:13:28 IST 2026
[2026-10-18 08:13:28,710.710 INFO    ] ================================================
[2026-10-18 08:13:29,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:13:29
[2026-10-18 08:13:29,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:13:30,127.127 INFO    ] Initializing speech engine...
[2026-10-18 08:13:30,137.137 INFO    ] 2026-10-18 08:13:30
[2026-10-18 08:13:30,385.385 INFO    ] 2026-10-18 08:13:30
[2026-10-18 08:13:30,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:13:30,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:13:30,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:13:30,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:13:30,863.863 INFO    ] time= 18/10/2026 08:13:30
[2026-10-18 08:13:30,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:13:30,964.964 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:13:31,065.065 INFO    ] No existing commands found in stream
[2026-10-18 08:13:36,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:13:36,080.080 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-18 08:13:40,160.160 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:13:40,163.163 INFO    ] Checking for system updates...
[2026-10-18 08:13:40,205.205 INFO    ] 200
[2026-10-18 08:13:40,208.208 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:13:40,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:13:40,264.264 INFO    ] No update needed
[2026-10-18 08:13:40,267.267 INFO    ] Checking for camera pi updates...
[2026-10-18 08:13:40,301.301 INFO    ] 200
[2026-10-18 08:13:40,304.304 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:13:40,347.347 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:13:50,363.363 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:13:50,404.404 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:13:50,415.415 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:13:50,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:13:50,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:13:50,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:13:52,473.473 INFO    ] ================================================
[2026-10-18 08:13:52,488.488 INFO    ] Launching Daemon at Sun Oct 18 08:13:52 IST 2026
[2026-10-18 08:13:52,498.498 INFO    ] ================================================
[2026-10-18 08:13:53,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:13:53
[2026-10-18 08:13:53,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:13:54,107.107 INFO    ] Initializing speech engine...
[2026-10-18 08:13:54,121.121 INFO    ] 2026-10-18 08:13:54
[2026-10-18 08:13:54,386.386 INFO    ] 2026-10-18 08:13:54
[2026-10-18 08:13:54,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:13:54,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:13:54,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:13:54,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:13:54,903.903 INFO    ] time= 18/10/2026 08:13:54
[2026-10-18 08:13:54,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:13:54,965.965 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:13:55,098.098 INFO    ] No existing commands found in stream
[2026-10-18 08:14:00,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:14:00,121.121 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-18 08:14:03,999.999 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:14:04,002.002 INFO    ] Checking for system updates...
[2026-10-18 08:14:04,041.041 INFO    ] 200
[2026-10-18 08:14:04,043.043 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:14:04,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:14:04,103.103 INFO    ] No update needed
[2026-10-18 08:14:04,106.106 INFO    ] Checking for camera pi updates...
[2026-10-18 08:14:04,142.142 INFO    ] 200
[2026-10-18 08:14:04,145.145 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:14:04,186.186 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:14:14,202.202 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:14:14,238.238 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:14:14,248.248 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:14:14,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:14:14,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:14:14,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:14:16,302.302 INFO    ] ================================================
[2026-10-18 08:14:16,318.318 INFO    ] Launching Daemon at Sun Oct 18 08:14:16 IST 2026
[2026-10-18 08:14:16,329.329 INFO    ] ================================================
[2026-10-18 08:14:16,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:14:16
[2026-10-18 08:14:17,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:14:17,747.747 INFO    ] Initializing speech engine...
[2026-10-18 08:14:17,756.756 INFO    ] 2026-10-18 08:14:17
[2026-10-18 08:14:18,006.006 INFO    ] 2026-10-18 08:14:18
[2026-10-18 08:14:18,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:14:18,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:14:18,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:14:18,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:14:18,550.550 INFO    ] time= 18/10/2026 08:14:18
[2026-10-18 08:14:18,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:14:18,593.593 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:14:18,736.736 INFO    ] No existing commands found in stream
[2026-10-18 08:14:23,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:14:23,769.769 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-18 08:14:26,410.410 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:14:26,413.413 INFO    ] Checking for system updates...
[2026-10-18 08:14:26,449.449 INFO    ] 200
[2026-10-18 08:14:26,451.451 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:14:26,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:14:26,505.505 INFO    ] No update needed
[2026-10-18 08:14:26,508.508 INFO    ] Checking for camera pi updates...
[2026-10-18 08:14:26,545.545 INFO    ] 200
[2026-10-18 08:14:26,547.547 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:14:26,587.587 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:14:36,601.601 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:14:36,636.636 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:14:36,645.645 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:14:36,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:14:36,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:14:36,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:14:38,699.699 INFO    ] ================================================
[2026-10-18 08:14:38,715.715 INFO    ] Launching Daemon at Sun Oct 18 08:14:38 IST 2026
[2026-10-18 08:14:38,725.725 INFO    ] ================================================
[2026-10-18 08:14:39,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:14:39
[2026-10-18 08:14:40,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:14:40,330.330 INFO    ] Initializing speech engine...
[2026-10-18 08:14:40,337.337 INFO    ] 2026-10-18 08:14:40
[2026-10-18 08:14:40,628.628 INFO    ] 2026-10-18 08:14:40
[2026-10-18 08:14:40,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:14:40,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:14:40,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:14:41,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:14:41,167.167 INFO    ] time= 18/10/2026 08:14:41
[2026-10-18 08:14:41,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:14:41,221.221 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:14:41,372.372 INFO    ] No existing commands found in stream
[2026-10-18 08:14:46,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:14:46,398.398 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-18 08:14:47,542.542 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:14:47,546.546 INFO    ] Checking for system updates...
[2026-10-18 08:14:47,585.585 INFO    ] 200
[2026-10-18 08:14:47,588.588 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:14:47,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:14:47,648.648 INFO    ] No update needed
[2026-10-18 08:14:47,650.650 INFO    ] Checking for camera pi updates...
[2026-10-18 08:14:47,684.684 INFO    ] 200
[2026-10-18 08:14:47,687.687 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:14:47,728.728 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:14:57,743.743 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:14:57,778.778 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:14:57,787.787 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:14:57,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:14:57,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:14:57,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:14:59,840.840 INFO    ] ================================================
[2026-10-18 08:14:59,855.855 INFO    ] Launching Daemon at Sun Oct 18 08:14:59 IST 2026
[2026-10-18 08:14:59,867.867 INFO    ] ================================================
[2026-10-18 08:15:00,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:15:00
[2026-10-18 08:15:01,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:15:01,285.285 INFO    ] Initializing speech engine...
[2026-10-18 08:15:01,298.298 INFO    ] 2026-10-18 08:15:01
[2026-10-18 08:15:01,548.548 INFO    ] 2026-10-18 08:15:01
[2026-10-18 08:15:01,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:15:01,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:15:01,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:15:02,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:15:02,279.279 INFO    ] time= 18/10/2026 08:15:02
[2026-10-18 08:15:02,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:15:02,321.321 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:15:02,437.437 INFO    ] No existing commands found in stream
[2026-10-18 08:15:07,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:15:07,451.451 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-18 08:15:10,809.809 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:15:10,812.812 INFO    ] Checking for system updates...
[2026-10-18 08:15:10,857.857 INFO    ] 200
[2026-10-18 08:15:10,859.859 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 08:15:10,862.862 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-18 08:15:10,865.865 INFO    ] Checking for camera pi updates...
[2026-10-18 08:15:10,907.907 INFO    ] 200
[2026-10-18 08:15:10,909.909 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 08:15:10,912.912 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-18 08:15:10,914.914 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:15:10,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:15:10,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:15:10,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:15:12,971.971 INFO    ] ================================================
[2026-10-18 08:15:12,987.987 INFO    ] Launching Daemon at Sun Oct 18 08:15:12 IST 2026
[2026-10-18 08:15:13,998.998 INFO    ] ================================================
[2026-10-18 08:15:13,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:15:13
[2026-10-18 08:15:14,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:15:14,431.431 INFO    ] Initializing speech engine...
[2026-10-18 08:15:14,440.440 INFO    ] 2026-10-18 08:15:14
[2026-10-18 08:15:14,735.735 INFO    ] 2026-10-18 08:15:14
[2026-10-18 08:15:14,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:15:15,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:15:15,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:15:15,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:15:15,262.262 INFO    ] time= 18/10/2026 08:15:15
[2026-10-18 08:15:15,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:15:15,376.376 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:15:15,518.518 INFO    ] No existing commands found in stream
[2026-10-18 08:15:20,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:15:20,543.543 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-18 08:15:24,079.079 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 08:15:24,082.082 INFO    ] Checking for system updates...
[2026-10-18 08:15:24,117.117 INFO    ] 200
[2026-10-18 08:15:24,120.120 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:15:24,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:15:24,182.182 INFO    ] No update needed
[2026-10-18 08:15:24,184.184 INFO    ] Checking for camera pi updates...
[2026-10-18 08:15:24,218.218 INFO    ] 200
[2026-10-18 08:15:24,220.220 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:15:24,266.266 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:15:34,279.279 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:15:34,314.314 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:15:34,323.323 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:15:34,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:15:34,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:15:34,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:15:36,377.377 INFO    ] ================================================
[2026-10-18 08:15:36,393.393 INFO    ] Launching Daemon at Sun Oct 18 08:15:36 IST 2026
[2026-10-18 08:15:36,404.404 INFO    ] ================================================
[2026-10-18 08:15:37,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:15:37
[2026-10-18 08:15:37,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:15:38,050.050 INFO    ] Initializing speech engine...
[2026-10-18 08:15:38,063.063 INFO    ] 2026-10-18 08:15:38
[2026-10-18 08:15:38,328.328 INFO    ] 2026-10-18 08:15:38
[2026-10-18 08:15:38,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:15:38,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:15:38,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:15:38,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:15:38,871.871 INFO    ] time= 18/10/2026 08:15:38
[2026-10-18 08:15:38,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:15:38,898.898 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:15:39,028.028 INFO    ] No existing commands found in stream
[2026-10-18 08:15:44,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:15:44,043.043 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-18 08:15:48,227.227 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:15:48,229.229 INFO    ] Checking for system updates...
[2026-10-18 08:15:48,271.271 INFO    ] 200
[2026-10-18 08:15:48,274.274 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:15:48,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:15:48,333.333 INFO    ] No update needed
[2026-10-18 08:15:48,336.336 INFO    ] Checking for camera pi updates...
[2026-10-18 08:15:48,374.374 INFO    ] 200
[2026-10-18 08:15:48,377.377 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:15:48,428.428 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:15:58,444.444 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:15:58,488.488 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:15:58,499.499 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:15:58,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:15:58,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:15:58,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:16:00,556.556 INFO    ] ================================================
[2026-10-18 08:16:00,572.572 INFO    ] Launching Daemon at Sun Oct 18 08:16:00 IST 2026
[2026-10-18 08:16:00,583.583 INFO    ] ================================================
[2026-10-18 08:16:01,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:16:01
[2026-10-18 08:16:02,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:16:02,417.417 INFO    ] Initializing speech engine...
[2026-10-18 08:16:02,422.422 INFO    ] 2026-10-18 08:16:02
[2026-10-18 08:16:02,778.778 INFO    ] 2026-10-18 08:16:02
[2026-10-18 08:16:02,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:16:03,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:16:03,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:16:03,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:16:03,324.324 INFO    ] time= 18/10/2026 08:16:03
[2026-10-18 08:16:03,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:16:03,401.401 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:16:03,547.547 INFO    ] No existing commands found in stream
[2026-10-18 08:16:08,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:16:08,577.577 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-18 08:16:10,286.286 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:16:10,290.290 INFO    ] Checking for system updates...
[2026-10-18 08:16:10,327.327 INFO    ] 200
[2026-10-18 08:16:10,330.330 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:16:10,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:16:10,393.393 INFO    ] No update needed
[2026-10-18 08:16:10,396.396 INFO    ] Checking for camera pi updates...
[2026-10-18 08:16:10,430.430 INFO    ] 200
[2026-10-18 08:16:10,433.433 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:16:10,480.480 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:16:20,496.496 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:16:20,537.537 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:16:20,549.549 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:16:20,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:16:20,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:16:20,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:16:22,603.603 INFO    ] ================================================
[2026-10-18 08:16:22,619.619 INFO    ] Launching Daemon at Sun Oct 18 08:16:22 IST 2026
[2026-10-18 08:16:22,630.630 INFO    ] ================================================
[2026-10-18 08:16:23,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:16:23
[2026-10-18 08:16:23,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:16:24,294.294 INFO    ] Initializing speech engine...
[2026-10-18 08:16:24,302.302 INFO    ] 2026-10-18 08:16:24
[2026-10-18 08:16:24,590.590 INFO    ] 2026-10-18 08:16:24
[2026-10-18 08:16:24,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:16:24,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:16:24,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:16:25,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:16:25,142.142 INFO    ] time= 18/10/2026 08:16:25
[2026-10-18 08:16:25,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:16:25,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:16:25,323.323 INFO    ] No existing commands found in stream
[2026-10-18 08:16:30,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:16:30,358.358 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-18 08:16:31,757.757 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:16:31,760.760 INFO    ] Checking for system updates...
[2026-10-18 08:16:31,802.802 INFO    ] 200
[2026-10-18 08:16:31,805.805 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:16:31,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:16:31,864.864 INFO    ] No update needed
[2026-10-18 08:16:31,867.867 INFO    ] Checking for camera pi updates...
[2026-10-18 08:16:31,906.906 INFO    ] 200
[2026-10-18 08:16:31,909.909 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:16:31,963.963 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:16:41,978.978 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:16:42,014.014 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:16:42,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:16:42,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:16:42,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:16:42,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:16:44,076.076 INFO    ] ================================================
[2026-10-18 08:16:44,091.091 INFO    ] Launching Daemon at Sun Oct 18 08:16:44 IST 2026
[2026-10-18 08:16:44,102.102 INFO    ] ================================================
[2026-10-18 08:16:44,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:16:44
[2026-10-18 08:16:45,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:16:45,730.730 INFO    ] Initializing speech engine...
[2026-10-18 08:16:45,745.745 INFO    ] 2026-10-18 08:16:45
[2026-10-18 08:16:46,031.031 INFO    ] 2026-10-18 08:16:46
[2026-10-18 08:16:46,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:16:46,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:16:46,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:16:46,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:16:46,607.607 INFO    ] time= 18/10/2026 08:16:46
[2026-10-18 08:16:46,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:16:46,650.650 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:16:46,796.796 INFO    ] No existing commands found in stream
[2026-10-18 08:16:51,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:16:51,831.831 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-18 08:16:54,243.243 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:16:54,246.246 INFO    ] Checking for system updates...
[2026-10-18 08:16:54,283.283 INFO    ] 200
[2026-10-18 08:16:54,286.286 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:16:54,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:16:54,342.342 INFO    ] No update needed
[2026-10-18 08:16:54,345.345 INFO    ] Checking for camera pi updates...
[2026-10-18 08:16:54,379.379 INFO    ] 200
[2026-10-18 08:16:54,382.382 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:16:54,428.428 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:17:04,442.442 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:17:04,482.482 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:17:04,493.493 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:17:04,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:17:04,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:17:04,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:17:06,548.548 INFO    ] ================================================
[2026-10-18 08:17:06,564.564 INFO    ] Launching Daemon at Sun Oct 18 08:17:06 IST 2026
[2026-10-18 08:17:06,574.574 INFO    ] ================================================
[2026-10-18 08:17:07,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:17:07
[2026-10-18 08:17:07,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:17:07,984.984 INFO    ] Initializing speech engine...
[2026-10-18 08:17:07,999.999 INFO    ] 2026-10-18 08:17:07
[2026-10-18 08:17:08,282.282 INFO    ] 2026-10-18 08:17:08
[2026-10-18 08:17:08,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:17:08,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:17:08,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:17:08,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:17:08,811.811 INFO    ] time= 18/10/2026 08:17:08
[2026-10-18 08:17:08,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:17:08,918.918 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:17:09,067.067 INFO    ] No existing commands found in stream
[2026-10-18 08:17:14,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:17:14,095.095 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-18 08:17:14,689.689 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 08:17:14,692.692 INFO    ] Checking for system updates...
[2026-10-18 08:17:14,727.727 INFO    ] 200
[2026-10-18 08:17:14,730.730 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:17:14,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:17:14,784.784 INFO    ] No update needed
[2026-10-18 08:17:14,787.787 INFO    ] Checking for camera pi updates...
[2026-10-18 08:17:14,823.823 INFO    ] 200
[2026-10-18 08:17:14,826.826 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:17:14,866.866 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:17:24,882.882 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:17:24,920.920 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:17:24,930.930 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:17:24,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:17:24,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:17:24,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:17:26,984.984 INFO    ] ================================================
[2026-10-18 08:17:27,000.000 INFO    ] Launching Daemon at Sun Oct 18 08:17:26 IST 2026
[2026-10-18 08:17:27,011.011 INFO    ] ================================================
[2026-10-18 08:17:27,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:17:27
[2026-10-18 08:17:28,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:17:28,416.416 INFO    ] Initializing speech engine...
[2026-10-18 08:17:28,425.425 INFO    ] 2026-10-18 08:17:28
[2026-10-18 08:17:28,697.697 INFO    ] 2026-10-18 08:17:28
[2026-10-18 08:17:28,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:17:28,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:17:29,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:17:29,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:17:29,268.268 INFO    ] time= 18/10/2026 08:17:29
[2026-10-18 08:17:29,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:17:29,293.293 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:17:29,427.427 INFO    ] No existing commands found in stream
[2026-10-18 08:17:34,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:17:34,444.444 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-18 08:17:36,203.203 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:17:36,206.206 INFO    ] Checking for system updates...
[2026-10-18 08:17:36,242.242 INFO    ] 200
[2026-10-18 08:17:36,244.244 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:17:36,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:17:36,299.299 INFO    ] No update needed
[2026-10-18 08:17:36,301.301 INFO    ] Checking for camera pi updates...
[2026-10-18 08:17:36,337.337 INFO    ] 200
[2026-10-18 08:17:36,339.339 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:17:36,379.379 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:17:46,394.394 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:17:46,429.429 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:17:46,439.439 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:17:46,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:17:46,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:17:46,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:17:48,490.490 INFO    ] ================================================
[2026-10-18 08:17:48,506.506 INFO    ] Launching Daemon at Sun Oct 18 08:17:48 IST 2026
[2026-10-18 08:17:48,517.517 INFO    ] ================================================
[2026-10-18 08:17:49,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:17:49
[2026-10-18 08:17:49,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:17:49,928.928 INFO    ] Initializing speech engine...
[2026-10-18 08:17:49,935.935 INFO    ] 2026-10-18 08:17:49
[2026-10-18 08:17:50,209.209 INFO    ] 2026-10-18 08:17:50
[2026-10-18 08:17:50,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:17:50,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:17:50,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:17:50,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:17:50,688.688 INFO    ] time= 18/10/2026 08:17:50
[2026-10-18 08:17:50,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:17:50,783.783 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:17:50,935.935 INFO    ] No existing commands found in stream
[2026-10-18 08:17:55,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:17:55,952.952 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-18 08:17:59,800.800 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:17:59,802.802 INFO    ] Checking for system updates...
[2026-10-18 08:17:59,838.838 INFO    ] 200
[2026-10-18 08:17:59,840.840 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:17:59,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:17:59,895.895 INFO    ] No update needed
[2026-10-18 08:17:59,897.897 INFO    ] Checking for camera pi updates...
[2026-10-18 08:17:59,931.931 INFO    ] 200
[2026-10-18 08:17:59,933.933 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:17:59,974.974 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:18:09,988.988 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:18:10,024.024 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:18:10,033.033 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:18:10,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:18:10,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:18:10,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:18:12,086.086 INFO    ] ================================================
[2026-10-18 08:18:12,101.101 INFO    ] Launching Daemon at Sun Oct 18 08:18:12 IST 2026
[2026-10-18 08:18:12,111.111 INFO    ] ================================================
[2026-10-18 08:18:12,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:18:12
[2026-10-18 08:18:13,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:18:13,736.736 INFO    ] Initializing speech engine...
[2026-10-18 08:18:13,747.747 INFO    ] 2026-10-18 08:18:13
[2026-10-18 08:18:14,059.059 INFO    ] 2026-10-18 08:18:14
[2026-10-18 08:18:14,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:18:14,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:18:14,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:18:14,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:18:14,577.577 INFO    ] time= 18/10/2026 08:18:14
[2026-10-18 08:18:14,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:18:14,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:18:14,745.745 INFO    ] No existing commands found in stream
[2026-10-18 08:18:19,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:18:19,779.779 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-18 08:18:22,505.505 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:18:22,508.508 INFO    ] Checking for system updates...
[2026-10-18 08:18:22,545.545 INFO    ] 200
[2026-10-18 08:18:22,548.548 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:18:22,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:18:22,604.604 INFO    ] No update needed
[2026-10-18 08:18:22,607.607 INFO    ] Checking for camera pi updates...
[2026-10-18 08:18:22,644.644 INFO    ] 200
[2026-10-18 08:18:22,648.648 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:18:22,689.689 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:18:32,705.705 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:18:32,748.748 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:18:32,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:18:32,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:18:32,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:18:32,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:18:34,818.818 INFO    ] ================================================
[2026-10-18 08:18:34,833.833 INFO    ] Launching Daemon at Sun Oct 18 08:18:34 IST 2026
[2026-10-18 08:18:34,844.844 INFO    ] ================================================
[2026-10-18 08:18:35,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:18:35
[2026-10-18 08:18:36,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:18:36,305.305 INFO    ] Initializing speech engine...
[2026-10-18 08:18:36,311.311 INFO    ] 2026-10-18 08:18:36
[2026-10-18 08:18:36,603.603 INFO    ] 2026-10-18 08:18:36
[2026-10-18 08:18:36,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:18:36,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:18:36,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:18:37,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:18:37,026.026 INFO    ] time= 18/10/2026 08:18:37
[2026-10-18 08:18:37,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:18:37,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:18:37,200.200 INFO    ] No existing commands found in stream
[2026-10-18 08:18:42,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:18:42,233.233 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-18 08:18:46,532.532 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:18:46,534.534 INFO    ] Checking for system updates...
[2026-10-18 08:18:46,570.570 INFO    ] 200
[2026-10-18 08:18:46,572.572 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:18:46,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:18:46,627.627 INFO    ] No update needed
[2026-10-18 08:18:46,629.629 INFO    ] Checking for camera pi updates...
[2026-10-18 08:18:46,663.663 INFO    ] 200
[2026-10-18 08:18:46,665.665 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:18:46,705.705 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:18:56,721.721 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:18:56,756.756 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:18:56,765.765 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:18:56,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:18:56,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:18:56,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:18:58,817.817 INFO    ] ================================================
[2026-10-18 08:18:58,833.833 INFO    ] Launching Daemon at Sun Oct 18 08:18:58 IST 2026
[2026-10-18 08:18:58,844.844 INFO    ] ================================================
[2026-10-18 08:18:59,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:18:59
[2026-10-18 08:19:00,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:19:00,271.271 INFO    ] Initializing speech engine...
[2026-10-18 08:19:00,287.287 INFO    ] 2026-10-18 08:19:00
[2026-10-18 08:19:00,562.562 INFO    ] 2026-10-18 08:19:00
[2026-10-18 08:19:00,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:19:00,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:19:00,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:19:01,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:19:01,058.058 INFO    ] time= 18/10/2026 08:19:01
[2026-10-18 08:19:01,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:19:01,177.177 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:19:01,345.345 INFO    ] No existing commands found in stream
[2026-10-18 08:19:06,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:19:06,379.379 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-18 08:19:10,237.237 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:19:10,240.240 INFO    ] Checking for system updates...
[2026-10-18 08:19:10,275.275 INFO    ] 200
[2026-10-18 08:19:10,278.278 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:19:10,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:19:10,337.337 INFO    ] No update needed
[2026-10-18 08:19:10,339.339 INFO    ] Checking for camera pi updates...
[2026-10-18 08:19:10,373.373 INFO    ] 200
[2026-10-18 08:19:10,376.376 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:19:10,415.415 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:19:20,430.430 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:19:20,465.465 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:19:20,475.475 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:19:20,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:19:20,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:19:20,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:19:22,527.527 INFO    ] ================================================
[2026-10-18 08:19:22,542.542 INFO    ] Launching Daemon at Sun Oct 18 08:19:22 IST 2026
[2026-10-18 08:19:22,552.552 INFO    ] ================================================
[2026-10-18 08:19:23,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:19:23
[2026-10-18 08:19:23,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:19:24,017.017 INFO    ] Initializing speech engine...
[2026-10-18 08:19:24,027.027 INFO    ] 2026-10-18 08:19:24
[2026-10-18 08:19:24,291.291 INFO    ] 2026-10-18 08:19:24
[2026-10-18 08:19:24,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:19:24,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:19:24,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:19:24,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:19:24,700.700 INFO    ] time= 18/10/2026 08:19:24
[2026-10-18 08:19:24,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:19:24,765.765 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:19:24,901.901 INFO    ] No existing commands found in stream
[2026-10-18 08:19:29,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:19:29,930.930 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-18 08:19:34,283.283 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:19:34,286.286 INFO    ] Checking for system updates...
[2026-10-18 08:19:34,321.321 INFO    ] 200
[2026-10-18 08:19:34,324.324 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:19:34,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:19:34,379.379 INFO    ] No update needed
[2026-10-18 08:19:34,381.381 INFO    ] Checking for camera pi updates...
[2026-10-18 08:19:34,415.415 INFO    ] 200
[2026-10-18 08:19:34,417.417 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:19:34,458.458 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:19:44,472.472 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:19:44,507.507 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:19:44,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:19:44,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:19:44,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:19:44,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:19:46,568.568 INFO    ] ================================================
[2026-10-18 08:19:46,584.584 INFO    ] Launching Daemon at Sun Oct 18 08:19:46 IST 2026
[2026-10-18 08:19:46,596.596 INFO    ] ================================================
[2026-10-18 08:19:47,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:19:47
[2026-10-18 08:19:47,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:19:48,002.002 INFO    ] Initializing speech engine...
[2026-10-18 08:19:48,027.027 INFO    ] 2026-10-18 08:19:48
[2026-10-18 08:19:48,284.284 INFO    ] 2026-10-18 08:19:48
[2026-10-18 08:19:48,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:19:48,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:19:48,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:19:48,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:19:48,844.844 INFO    ] time= 18/10/2026 08:19:48
[2026-10-18 08:19:48,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:19:48,872.872 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:19:49,025.025 INFO    ] No existing commands found in stream
[2026-10-18 08:19:54,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:19:54,050.050 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-18 08:19:55,595.595 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:19:55,597.597 INFO    ] Checking for system updates...
[2026-10-18 08:19:55,633.633 INFO    ] 200
[2026-10-18 08:19:55,636.636 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:19:55,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:19:55,690.690 INFO    ] No update needed
[2026-10-18 08:19:55,693.693 INFO    ] Checking for camera pi updates...
[2026-10-18 08:19:55,727.727 INFO    ] 200
[2026-10-18 08:19:55,729.729 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:19:55,769.769 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:20:05,783.783 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:20:05,817.817 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:20:05,827.827 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:20:05,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:20:05,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:20:05,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:20:07,881.881 INFO    ] ================================================
[2026-10-18 08:20:07,897.897 INFO    ] Launching Daemon at Sun Oct 18 08:20:07 IST 2026
[2026-10-18 08:20:07,909.909 INFO    ] ================================================
[2026-10-18 08:20:08,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:20:08
[2026-10-18 08:20:09,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:20:09,352.352 INFO    ] Initializing speech engine...
[2026-10-18 08:20:09,362.362 INFO    ] 2026-10-18 08:20:09
[2026-10-18 08:20:09,658.658 INFO    ] 2026-10-18 08:20:09
[2026-10-18 08:20:09,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:20:09,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:20:09,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:20:10,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:20:10,162.162 INFO    ] time= 18/10/2026 08:20:10
[2026-10-18 08:20:10,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:20:10,271.271 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:20:10,360.360 INFO    ] No existing commands found in stream
[2026-10-18 08:20:15,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:20:15,375.375 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-18 08:20:16,147.147 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:20:16,150.150 INFO    ] Checking for system updates...
[2026-10-18 08:20:16,187.187 INFO    ] 200
[2026-10-18 08:20:16,190.190 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:20:16,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:20:16,254.254 INFO    ] No update needed
[2026-10-18 08:20:16,257.257 INFO    ] Checking for camera pi updates...
[2026-10-18 08:20:16,294.294 INFO    ] 200
[2026-10-18 08:20:16,297.297 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:20:16,338.338 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:20:26,353.353 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:20:26,388.388 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:20:26,398.398 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:20:26,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:20:26,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:20:26,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:20:28,451.451 INFO    ] ================================================
[2026-10-18 08:20:28,467.467 INFO    ] Launching Daemon at Sun Oct 18 08:20:28 IST 2026
[2026-10-18 08:20:28,478.478 INFO    ] ================================================
[2026-10-18 08:20:29,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:20:29
[2026-10-18 08:20:29,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:20:30,008.008 INFO    ] Initializing speech engine...
[2026-10-18 08:20:30,018.018 INFO    ] 2026-10-18 08:20:30
[2026-10-18 08:20:30,280.280 INFO    ] 2026-10-18 08:20:30
[2026-10-18 08:20:30,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:20:30,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:20:30,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:20:30,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:20:30,768.768 INFO    ] time= 18/10/2026 08:20:30
[2026-10-18 08:20:30,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:20:30,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:20:30,978.978 INFO    ] No existing commands found in stream
[2026-10-18 08:20:35,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:20:36,000.000 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-18 08:20:39,037.037 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:20:39,040.040 INFO    ] Checking for system updates...
[2026-10-18 08:20:39,076.076 INFO    ] 200
[2026-10-18 08:20:39,078.078 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:20:39,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:20:39,133.133 INFO    ] No update needed
[2026-10-18 08:20:39,135.135 INFO    ] Checking for camera pi updates...
[2026-10-18 08:20:39,170.170 INFO    ] 200
[2026-10-18 08:20:39,173.173 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:20:39,219.219 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:20:49,235.235 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:20:49,309.309 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:20:49,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:20:49,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:20:49,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:20:49,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:20:51,373.373 INFO    ] ================================================
[2026-10-18 08:20:51,389.389 INFO    ] Launching Daemon at Sun Oct 18 08:20:51 IST 2026
[2026-10-18 08:20:51,400.400 INFO    ] ================================================
[2026-10-18 08:20:51,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:20:51
[2026-10-18 08:20:52,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:20:52,853.853 INFO    ] Initializing speech engine...
[2026-10-18 08:20:52,862.862 INFO    ] 2026-10-18 08:20:52
[2026-10-18 08:20:53,111.111 INFO    ] 2026-10-18 08:20:53
[2026-10-18 08:20:53,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:20:53,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:20:53,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:20:53,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:20:53,611.611 INFO    ] time= 18/10/2026 08:20:53
[2026-10-18 08:20:53,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:20:53,674.674 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:20:53,809.809 INFO    ] No existing commands found in stream
[2026-10-18 08:20:58,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:20:58,832.832 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-18 08:21:01,999.999 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:21:02,002.002 INFO    ] Checking for system updates...
[2026-10-18 08:21:02,042.042 INFO    ] 200
[2026-10-18 08:21:02,045.045 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:21:02,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:21:02,118.118 INFO    ] No update needed
[2026-10-18 08:21:02,121.121 INFO    ] Checking for camera pi updates...
[2026-10-18 08:21:02,171.171 INFO    ] 200
[2026-10-18 08:21:02,175.175 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:21:02,228.228 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:21:12,244.244 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:21:12,284.284 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:21:12,295.295 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:21:12,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:21:12,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:21:12,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:21:14,350.350 INFO    ] ================================================
[2026-10-18 08:21:14,366.366 INFO    ] Launching Daemon at Sun Oct 18 08:21:14 IST 2026
[2026-10-18 08:21:14,382.382 INFO    ] ================================================
[2026-10-18 08:21:14,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:21:14
[2026-10-18 08:21:15,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:21:15,795.795 INFO    ] Initializing speech engine...
[2026-10-18 08:21:15,810.810 INFO    ] 2026-10-18 08:21:15
[2026-10-18 08:21:16,097.097 INFO    ] 2026-10-18 08:21:16
[2026-10-18 08:21:16,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:21:16,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:21:16,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:21:16,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:21:16,574.574 INFO    ] time= 18/10/2026 08:21:16
[2026-10-18 08:21:16,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:21:16,667.667 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:21:16,848.848 INFO    ] No existing commands found in stream
[2026-10-18 08:21:21,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:21:21,864.864 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-18 08:21:25,724.724 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:21:25,727.727 INFO    ] Checking for system updates...
[2026-10-18 08:21:25,767.767 INFO    ] 200
[2026-10-18 08:21:25,769.769 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:21:25,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:21:25,830.830 INFO    ] No update needed
[2026-10-18 08:21:25,833.833 INFO    ] Checking for camera pi updates...
[2026-10-18 08:21:25,867.867 INFO    ] 200
[2026-10-18 08:21:25,870.870 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:21:25,917.917 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:21:35,934.934 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:21:35,974.974 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:21:35,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:21:35,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:21:35,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:21:36,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:21:38,041.041 INFO    ] ================================================
[2026-10-18 08:21:38,056.056 INFO    ] Launching Daemon at Sun Oct 18 08:21:38 IST 2026
[2026-10-18 08:21:38,067.067 INFO    ] ================================================
[2026-10-18 08:21:38,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:21:38
[2026-10-18 08:21:39,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:21:39,685.685 INFO    ] Initializing speech engine...
[2026-10-18 08:21:39,690.690 INFO    ] 2026-10-18 08:21:39
[2026-10-18 08:21:39,950.950 INFO    ] 2026-10-18 08:21:39
[2026-10-18 08:21:39,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:21:40,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:21:40,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:21:40,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:21:40,479.479 INFO    ] time= 18/10/2026 08:21:40
[2026-10-18 08:21:40,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:21:40,513.513 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:21:40,661.661 INFO    ] No existing commands found in stream
[2026-10-18 08:21:45,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:21:45,694.694 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-18 08:21:48,684.684 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:21:48,687.687 INFO    ] Checking for system updates...
[2026-10-18 08:21:48,724.724 INFO    ] 200
[2026-10-18 08:21:48,727.727 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:21:48,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:21:48,783.783 INFO    ] No update needed
[2026-10-18 08:21:48,786.786 INFO    ] Checking for camera pi updates...
[2026-10-18 08:21:48,820.820 INFO    ] 200
[2026-10-18 08:21:48,823.823 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:21:48,864.864 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:21:58,878.878 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:21:58,918.918 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:21:58,929.929 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:21:58,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:21:58,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:21:58,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:22:00,984.984 INFO    ] ================================================
[2026-10-18 08:22:01,000.000 INFO    ] Launching Daemon at Sun Oct 18 08:22:00 IST 2026
[2026-10-18 08:22:01,011.011 INFO    ] ================================================
[2026-10-18 08:22:01,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:22:01
[2026-10-18 08:22:02,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:22:02,713.713 INFO    ] Initializing speech engine...
[2026-10-18 08:22:02,729.729 INFO    ] 2026-10-18 08:22:02
[2026-10-18 08:22:03,049.049 INFO    ] 2026-10-18 08:22:03
[2026-10-18 08:22:03,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:22:03,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:22:03,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:22:03,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:22:03,644.644 INFO    ] time= 18/10/2026 08:22:03
[2026-10-18 08:22:03,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:22:03,669.669 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:22:03,804.804 INFO    ] No existing commands found in stream
[2026-10-18 08:22:08,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:22:08,837.837 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-18 08:22:11,384.384 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:22:11,387.387 INFO    ] Checking for system updates...
[2026-10-18 08:22:11,427.427 INFO    ] 200
[2026-10-18 08:22:11,429.429 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:22:11,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:22:11,485.485 INFO    ] No update needed
[2026-10-18 08:22:11,488.488 INFO    ] Checking for camera pi updates...
[2026-10-18 08:22:11,522.522 INFO    ] 200
[2026-10-18 08:22:11,525.525 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:22:11,572.572 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:22:21,588.588 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:22:21,629.629 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:22:21,641.641 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:22:21,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:22:21,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:22:21,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:22:23,696.696 INFO    ] ================================================
[2026-10-18 08:22:23,711.711 INFO    ] Launching Daemon at Sun Oct 18 08:22:23 IST 2026
[2026-10-18 08:22:23,722.722 INFO    ] ================================================
[2026-10-18 08:22:24,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:22:24
[2026-10-18 08:22:24,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:22:25,157.157 INFO    ] Initializing speech engine...
[2026-10-18 08:22:25,164.164 INFO    ] 2026-10-18 08:22:25
[2026-10-18 08:22:25,468.468 INFO    ] 2026-10-18 08:22:25
[2026-10-18 08:22:25,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:22:25,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:22:25,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:22:25,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:22:26,029.029 INFO    ] time= 18/10/2026 08:22:25
[2026-10-18 08:22:26,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:22:26,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:22:26,280.280 INFO    ] No existing commands found in stream
[2026-10-18 08:22:31,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:22:31,311.311 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-18 08:22:33,080.080 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:22:33,082.082 INFO    ] Checking for system updates...
[2026-10-18 08:22:33,122.122 INFO    ] 200
[2026-10-18 08:22:33,125.125 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:22:33,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:22:33,187.187 INFO    ] No update needed
[2026-10-18 08:22:33,189.189 INFO    ] Checking for camera pi updates...
[2026-10-18 08:22:33,223.223 INFO    ] 200
[2026-10-18 08:22:33,225.225 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:22:33,265.265 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:22:43,281.281 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:22:43,317.317 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:22:43,327.327 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:22:43,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:22:43,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:22:43,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:22:45,379.379 INFO    ] ================================================
[2026-10-18 08:22:45,395.395 INFO    ] Launching Daemon at Sun Oct 18 08:22:45 IST 2026
[2026-10-18 08:22:45,406.406 INFO    ] ================================================
[2026-10-18 08:22:46,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:22:46
[2026-10-18 08:22:46,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:22:47,040.040 INFO    ] Initializing speech engine...
[2026-10-18 08:22:47,051.051 INFO    ] 2026-10-18 08:22:47
[2026-10-18 08:22:47,336.336 INFO    ] 2026-10-18 08:22:47
[2026-10-18 08:22:47,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:22:47,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:22:47,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:22:47,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:22:47,884.884 INFO    ] time= 18/10/2026 08:22:47
[2026-10-18 08:22:47,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:22:47,922.922 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:22:48,056.056 INFO    ] No existing commands found in stream
[2026-10-18 08:22:53,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:22:53,085.085 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-18 08:22:55,095.095 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:22:55,098.098 INFO    ] Checking for system updates...
[2026-10-18 08:22:55,135.135 INFO    ] 200
[2026-10-18 08:22:55,138.138 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:22:55,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:22:55,193.193 INFO    ] No update needed
[2026-10-18 08:22:55,196.196 INFO    ] Checking for camera pi updates...
[2026-10-18 08:22:55,230.230 INFO    ] 200
[2026-10-18 08:22:55,233.233 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:22:55,279.279 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:23:05,296.296 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:23:05,338.338 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:23:05,350.350 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:23:05,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:23:05,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:23:05,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:23:07,406.406 INFO    ] ================================================
[2026-10-18 08:23:07,421.421 INFO    ] Launching Daemon at Sun Oct 18 08:23:07 IST 2026
[2026-10-18 08:23:07,431.431 INFO    ] ================================================
[2026-10-18 08:23:08,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:23:08
[2026-10-18 08:23:08,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:23:09,116.116 INFO    ] Initializing speech engine...
[2026-10-18 08:23:09,129.129 INFO    ] 2026-10-18 08:23:09
[2026-10-18 08:23:09,412.412 INFO    ] 2026-10-18 08:23:09
[2026-10-18 08:23:09,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:23:09,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:23:09,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:23:09,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:23:09,952.952 INFO    ] time= 18/10/2026 08:23:09
[2026-10-18 08:23:09,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:23:10,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:23:10,118.118 INFO    ] No existing commands found in stream
[2026-10-18 08:23:15,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:23:15,151.151 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-18 08:23:16,499.499 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:23:16,502.502 INFO    ] Checking for system updates...
[2026-10-18 08:23:16,539.539 INFO    ] 200
[2026-10-18 08:23:16,541.541 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:23:16,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:23:16,604.604 INFO    ] No update needed
[2026-10-18 08:23:16,607.607 INFO    ] Checking for camera pi updates...
[2026-10-18 08:23:16,645.645 INFO    ] 200
[2026-10-18 08:23:16,647.647 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:23:16,687.687 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:23:26,702.702 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:23:26,737.737 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:23:26,746.746 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:23:26,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:23:26,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:23:26,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:23:28,799.799 INFO    ] ================================================
[2026-10-18 08:23:28,815.815 INFO    ] Launching Daemon at Sun Oct 18 08:23:28 IST 2026
[2026-10-18 08:23:28,827.827 INFO    ] ================================================
[2026-10-18 08:23:29,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:23:29
[2026-10-18 08:23:30,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:23:30,354.354 INFO    ] Initializing speech engine...
[2026-10-18 08:23:30,362.362 INFO    ] 2026-10-18 08:23:30
[2026-10-18 08:23:30,669.669 INFO    ] 2026-10-18 08:23:30
[2026-10-18 08:23:30,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:23:30,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:23:30,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:23:31,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:23:31,189.189 INFO    ] time= 18/10/2026 08:23:31
[2026-10-18 08:23:31,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:23:31,228.228 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:23:31,354.354 INFO    ] No existing commands found in stream
[2026-10-18 08:23:36,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:23:36,383.383 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-18 08:23:38,818.818 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:23:38,821.821 INFO    ] Checking for system updates...
[2026-10-18 08:23:38,858.858 INFO    ] 200
[2026-10-18 08:23:38,861.861 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:23:38,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:23:38,917.917 INFO    ] No update needed
[2026-10-18 08:23:38,920.920 INFO    ] Checking for camera pi updates...
[2026-10-18 08:23:38,955.955 INFO    ] 200
[2026-10-18 08:23:38,958.958 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:23:38,999.999 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:23:49,016.016 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:23:49,057.057 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:23:49,069.069 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:23:49,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:23:49,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:23:49,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:23:51,124.124 INFO    ] ================================================
[2026-10-18 08:23:51,139.139 INFO    ] Launching Daemon at Sun Oct 18 08:23:51 IST 2026
[2026-10-18 08:23:51,150.150 INFO    ] ================================================
[2026-10-18 08:23:51,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:23:51
[2026-10-18 08:23:52,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:23:52,613.613 INFO    ] Initializing speech engine...
[2026-10-18 08:23:52,620.620 INFO    ] 2026-10-18 08:23:52
[2026-10-18 08:23:52,881.881 INFO    ] 2026-10-18 08:23:52
[2026-10-18 08:23:52,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:23:53,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:23:53,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:23:53,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:23:53,419.419 INFO    ] time= 18/10/2026 08:23:53
[2026-10-18 08:23:53,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:23:53,450.450 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:23:53,578.578 INFO    ] No existing commands found in stream
[2026-10-18 08:23:58,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:23:58,592.592 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-18 08:24:00,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:24:00,159.159 INFO    ] Checking for system updates...
[2026-10-18 08:24:00,196.196 INFO    ] 200
[2026-10-18 08:24:00,199.199 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:24:00,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:24:00,253.253 INFO    ] No update needed
[2026-10-18 08:24:00,255.255 INFO    ] Checking for camera pi updates...
[2026-10-18 08:24:00,288.288 INFO    ] 200
[2026-10-18 08:24:00,291.291 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:24:00,331.331 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:24:10,345.345 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:24:10,379.379 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:24:10,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:24:10,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:24:10,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:24:10,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:24:12,441.441 INFO    ] ================================================
[2026-10-18 08:24:12,456.456 INFO    ] Launching Daemon at Sun Oct 18 08:24:12 IST 2026
[2026-10-18 08:24:12,467.467 INFO    ] ================================================
[2026-10-18 08:24:13,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:24:13
[2026-10-18 08:24:13,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:24:13,941.941 INFO    ] Initializing speech engine...
[2026-10-18 08:24:13,949.949 INFO    ] 2026-10-18 08:24:13
[2026-10-18 08:24:14,207.207 INFO    ] 2026-10-18 08:24:14
[2026-10-18 08:24:14,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:24:14,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:24:14,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:24:14,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:24:14,751.751 INFO    ] time= 18/10/2026 08:24:14
[2026-10-18 08:24:14,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:24:14,775.775 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:24:14,907.907 INFO    ] No existing commands found in stream
[2026-10-18 08:24:19,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:24:19,923.923 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-18 08:24:20,461.461 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:24:20,464.464 INFO    ] Checking for system updates...
[2026-10-18 08:24:20,505.505 INFO    ] 200
[2026-10-18 08:24:20,507.507 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:24:20,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:24:20,567.567 INFO    ] No update needed
[2026-10-18 08:24:20,570.570 INFO    ] Checking for camera pi updates...
[2026-10-18 08:24:20,606.606 INFO    ] 200
[2026-10-18 08:24:20,609.609 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:24:20,649.649 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:24:30,664.664 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:24:30,700.700 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:24:30,710.710 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:24:30,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:24:30,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:24:30,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:24:32,762.762 INFO    ] ================================================
[2026-10-18 08:24:32,778.778 INFO    ] Launching Daemon at Sun Oct 18 08:24:32 IST 2026
[2026-10-18 08:24:32,789.789 INFO    ] ================================================
[2026-10-18 08:24:33,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:24:33
[2026-10-18 08:24:33,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:24:34,245.245 INFO    ] Initializing speech engine...
[2026-10-18 08:24:34,252.252 INFO    ] 2026-10-18 08:24:34
[2026-10-18 08:24:34,514.514 INFO    ] 2026-10-18 08:24:34
[2026-10-18 08:24:34,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:24:34,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:24:34,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:24:35,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:24:35,062.062 INFO    ] time= 18/10/2026 08:24:35
[2026-10-18 08:24:35,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:24:35,086.086 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:24:35,211.211 INFO    ] No existing commands found in stream
[2026-10-18 08:24:40,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:24:40,230.230 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-18 08:24:42,122.122 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:24:42,124.124 INFO    ] Checking for system updates...
[2026-10-18 08:24:42,164.164 INFO    ] 200
[2026-10-18 08:24:42,167.167 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:24:42,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:24:42,227.227 INFO    ] No update needed
[2026-10-18 08:24:42,229.229 INFO    ] Checking for camera pi updates...
[2026-10-18 08:24:42,263.263 INFO    ] 200
[2026-10-18 08:24:42,265.265 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:24:42,307.307 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:24:52,323.323 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:24:52,362.362 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:24:52,373.373 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:24:52,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:24:52,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:24:52,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:24:54,428.428 INFO    ] ================================================
[2026-10-18 08:24:54,443.443 INFO    ] Launching Daemon at Sun Oct 18 08:24:54 IST 2026
[2026-10-18 08:24:54,454.454 INFO    ] ================================================
[2026-10-18 08:24:55,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:24:55
[2026-10-18 08:24:55,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:24:55,883.883 INFO    ] Initializing speech engine...
[2026-10-18 08:24:55,890.890 INFO    ] 2026-10-18 08:24:55
[2026-10-18 08:24:56,149.149 INFO    ] 2026-10-18 08:24:56
[2026-10-18 08:24:56,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:24:56,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:24:56,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:24:56,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:24:56,646.646 INFO    ] time= 18/10/2026 08:24:56
[2026-10-18 08:24:56,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:24:56,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:24:56,850.850 INFO    ] No existing commands found in stream
[2026-10-18 08:25:01,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:25:01,870.870 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-18 08:25:03,791.791 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:25:03,794.794 INFO    ] Checking for system updates...
[2026-10-18 08:25:03,833.833 INFO    ] 200
[2026-10-18 08:25:03,835.835 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:25:03,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:25:03,890.890 INFO    ] No update needed
[2026-10-18 08:25:03,892.892 INFO    ] Checking for camera pi updates...
[2026-10-18 08:25:03,928.928 INFO    ] 200
[2026-10-18 08:25:03,931.931 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:25:03,975.975 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:25:13,990.990 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:25:14,025.025 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:25:14,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:25:14,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:25:14,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:25:14,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:25:16,088.088 INFO    ] ================================================
[2026-10-18 08:25:16,104.104 INFO    ] Launching Daemon at Sun Oct 18 08:25:16 IST 2026
[2026-10-18 08:25:16,115.115 INFO    ] ================================================
[2026-10-18 08:25:16,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:25:16
[2026-10-18 08:25:17,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:25:17,546.546 INFO    ] Initializing speech engine...
[2026-10-18 08:25:17,555.555 INFO    ] 2026-10-18 08:25:17
[2026-10-18 08:25:17,806.806 INFO    ] 2026-10-18 08:25:17
[2026-10-18 08:25:17,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:25:18,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:25:18,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:25:18,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:25:18,376.376 INFO    ] time= 18/10/2026 08:25:18
[2026-10-18 08:25:18,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:25:18,400.400 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:25:18,528.528 INFO    ] No existing commands found in stream
[2026-10-18 08:25:23,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:25:23,548.548 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-18 08:25:25,640.640 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 08:25:25,642.642 INFO    ] Checking for system updates...
[2026-10-18 08:25:25,681.681 INFO    ] 200
[2026-10-18 08:25:25,684.684 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:25:25,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:25:25,738.738 INFO    ] No update needed
[2026-10-18 08:25:25,740.740 INFO    ] Checking for camera pi updates...
[2026-10-18 08:25:25,777.777 INFO    ] 200
[2026-10-18 08:25:25,779.779 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:25:25,824.824 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:25:35,840.840 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:25:35,875.875 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:25:35,885.885 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:25:35,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:25:35,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:25:35,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:25:37,938.938 INFO    ] ================================================
[2026-10-18 08:25:37,954.954 INFO    ] Launching Daemon at Sun Oct 18 08:25:37 IST 2026
[2026-10-18 08:25:37,964.964 INFO    ] ================================================
[2026-10-18 08:25:38,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:25:38
[2026-10-18 08:25:39,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:25:39,385.385 INFO    ] Initializing speech engine...
[2026-10-18 08:25:39,407.407 INFO    ] 2026-10-18 08:25:39
[2026-10-18 08:25:39,670.670 INFO    ] 2026-10-18 08:25:39
[2026-10-18 08:25:39,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:25:39,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:25:39,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:25:40,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:25:40,224.224 INFO    ] time= 18/10/2026 08:25:40
[2026-10-18 08:25:40,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:25:40,251.251 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:25:40,380.380 INFO    ] No existing commands found in stream
[2026-10-18 08:25:45,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:25:45,402.402 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-18 08:25:47,269.269 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:25:47,272.272 INFO    ] Checking for system updates...
[2026-10-18 08:25:47,308.308 INFO    ] 200
[2026-10-18 08:25:47,311.311 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:25:47,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:25:47,367.367 INFO    ] No update needed
[2026-10-18 08:25:47,370.370 INFO    ] Checking for camera pi updates...
[2026-10-18 08:25:47,405.405 INFO    ] 200
[2026-10-18 08:25:47,408.408 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:25:47,450.450 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:25:57,464.464 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:25:57,499.499 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:25:57,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:25:57,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:25:57,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:25:57,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:25:59,567.567 INFO    ] ================================================
[2026-10-18 08:25:59,583.583 INFO    ] Launching Daemon at Sun Oct 18 08:25:59 IST 2026
[2026-10-18 08:25:59,594.594 INFO    ] ================================================
[2026-10-18 08:26:00,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:26:00
[2026-10-18 08:26:00,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:26:01,230.230 INFO    ] Initializing speech engine...
[2026-10-18 08:26:01,244.244 INFO    ] 2026-10-18 08:26:01
[2026-10-18 08:26:01,625.625 INFO    ] 2026-10-18 08:26:01
[2026-10-18 08:26:01,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:26:01,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:26:01,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:26:02,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:26:02,210.210 INFO    ] time= 18/10/2026 08:26:02
[2026-10-18 08:26:02,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:26:02,331.331 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:26:02,501.501 INFO    ] No existing commands found in stream
[2026-10-18 08:26:07,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:26:07,526.526 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-18 08:26:11,376.376 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:26:11,379.379 INFO    ] Checking for system updates...
[2026-10-18 08:26:11,416.416 INFO    ] 200
[2026-10-18 08:26:11,419.419 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:26:11,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:26:11,483.483 INFO    ] No update needed
[2026-10-18 08:26:11,486.486 INFO    ] Checking for camera pi updates...
[2026-10-18 08:26:11,525.525 INFO    ] 200
[2026-10-18 08:26:11,528.528 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:26:11,574.574 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:26:21,591.591 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:26:21,631.631 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:26:21,642.642 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:26:21,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:26:21,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:26:21,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:26:23,697.697 INFO    ] ================================================
[2026-10-18 08:26:23,713.713 INFO    ] Launching Daemon at Sun Oct 18 08:26:23 IST 2026
[2026-10-18 08:26:23,724.724 INFO    ] ================================================
[2026-10-18 08:26:24,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:26:24
[2026-10-18 08:26:24,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:26:25,184.184 INFO    ] Initializing speech engine...
[2026-10-18 08:26:25,193.193 INFO    ] 2026-10-18 08:26:25
[2026-10-18 08:26:25,441.441 INFO    ] 2026-10-18 08:26:25
[2026-10-18 08:26:25,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:26:25,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:26:25,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:26:25,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:26:26,007.007 INFO    ] time= 18/10/2026 08:26:25
[2026-10-18 08:26:26,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:26:26,038.038 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:26:26,234.234 INFO    ] No existing commands found in stream
[2026-10-18 08:26:31,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:26:31,263.263 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-18 08:26:34,178.178 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 08:26:34,181.181 INFO    ] Checking for system updates...
[2026-10-18 08:26:34,223.223 INFO    ] 200
[2026-10-18 08:26:34,226.226 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:26:34,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:26:34,290.290 INFO    ] No update needed
[2026-10-18 08:26:34,293.293 INFO    ] Checking for camera pi updates...
[2026-10-18 08:26:34,332.332 INFO    ] 200
[2026-10-18 08:26:34,335.335 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:26:34,377.377 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:26:44,394.394 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:26:44,435.435 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:26:44,447.447 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:26:44,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:26:44,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:26:44,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:26:46,503.503 INFO    ] ================================================
[2026-10-18 08:26:46,518.518 INFO    ] Launching Daemon at Sun Oct 18 08:26:46 IST 2026
[2026-10-18 08:26:46,529.529 INFO    ] ================================================
[2026-10-18 08:26:47,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:26:47
[2026-10-18 08:26:47,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:26:47,940.940 INFO    ] Initializing speech engine...
[2026-10-18 08:26:47,955.955 INFO    ] 2026-10-18 08:26:47
[2026-10-18 08:26:48,222.222 INFO    ] 2026-10-18 08:26:48
[2026-10-18 08:26:48,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:26:48,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:26:48,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:26:48,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:26:48,727.727 INFO    ] time= 18/10/2026 08:26:48
[2026-10-18 08:26:48,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:26:48,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:26:48,947.947 INFO    ] No existing commands found in stream
[2026-10-18 08:26:53,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:26:53,964.964 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-18 08:26:56,221.221 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 08:26:56,224.224 INFO    ] Checking for system updates...
[2026-10-18 08:26:56,266.266 INFO    ] 200
[2026-10-18 08:26:56,269.269 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:26:56,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:26:56,334.334 INFO    ] No update needed
[2026-10-18 08:26:56,337.337 INFO    ] Checking for camera pi updates...
[2026-10-18 08:26:56,371.371 INFO    ] 200
[2026-10-18 08:26:56,374.374 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:26:56,416.416 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:27:06,431.431 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:27:06,471.471 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:27:06,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:27:06,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:27:06,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:27:06,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:27:08,539.539 INFO    ] ================================================
[2026-10-18 08:27:08,555.555 INFO    ] Launching Daemon at Sun Oct 18 08:27:08 IST 2026
[2026-10-18 08:27:08,566.566 INFO    ] ================================================
[2026-10-18 08:27:09,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:27:09
[2026-10-18 08:27:09,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:27:09,977.977 INFO    ] Initializing speech engine...
[2026-10-18 08:27:09,985.985 INFO    ] 2026-10-18 08:27:09
[2026-10-18 08:27:10,277.277 INFO    ] 2026-10-18 08:27:10
[2026-10-18 08:27:10,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:27:10,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:27:10,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:27:10,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:27:10,694.694 INFO    ] time= 18/10/2026 08:27:10
[2026-10-18 08:27:10,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:27:10,742.742 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:27:10,876.876 INFO    ] No existing commands found in stream
[2026-10-18 08:27:15,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:27:15,909.909 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-18 08:27:17,378.378 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:27:17,381.381 INFO    ] Checking for system updates...
[2026-10-18 08:27:17,420.420 INFO    ] 200
[2026-10-18 08:27:17,422.422 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:27:17,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:27:17,477.477 INFO    ] No update needed
[2026-10-18 08:27:17,480.480 INFO    ] Checking for camera pi updates...
[2026-10-18 08:27:17,513.513 INFO    ] 200
[2026-10-18 08:27:17,516.516 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:27:17,556.556 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:27:27,571.571 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:27:27,606.606 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:27:27,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:27:27,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:27:27,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:27:27,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:27:29,668.668 INFO    ] ================================================
[2026-10-18 08:27:29,684.684 INFO    ] Launching Daemon at Sun Oct 18 08:27:29 IST 2026
[2026-10-18 08:27:29,695.695 INFO    ] ================================================
[2026-10-18 08:27:30,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:27:30
[2026-10-18 08:27:30,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:27:31,109.109 INFO    ] Initializing speech engine...
[2026-10-18 08:27:31,124.124 INFO    ] 2026-10-18 08:27:31
[2026-10-18 08:27:31,393.393 INFO    ] 2026-10-18 08:27:31
[2026-10-18 08:27:31,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:27:31,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:27:31,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:27:31,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:27:31,936.936 INFO    ] time= 18/10/2026 08:27:31
[2026-10-18 08:27:31,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:27:31,987.987 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:27:32,137.137 INFO    ] No existing commands found in stream
[2026-10-18 08:27:37,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:27:37,157.157 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-18 08:27:39,005.005 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:27:39,008.008 INFO    ] Checking for system updates...
[2026-10-18 08:27:39,043.043 INFO    ] 200
[2026-10-18 08:27:39,046.046 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:27:39,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:27:39,102.102 INFO    ] No update needed
[2026-10-18 08:27:39,104.104 INFO    ] Checking for camera pi updates...
[2026-10-18 08:27:39,138.138 INFO    ] 200
[2026-10-18 08:27:39,140.140 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:27:39,180.180 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:27:49,196.196 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:27:49,231.231 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:27:49,241.241 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:27:49,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:27:49,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:27:49,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:27:51,294.294 INFO    ] ================================================
[2026-10-18 08:27:51,309.309 INFO    ] Launching Daemon at Sun Oct 18 08:27:51 IST 2026
[2026-10-18 08:27:51,320.320 INFO    ] ================================================
[2026-10-18 08:27:51,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:27:51
[2026-10-18 08:27:52,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:27:52,930.930 INFO    ] Initializing speech engine...
[2026-10-18 08:27:52,937.937 INFO    ] 2026-10-18 08:27:52
[2026-10-18 08:27:53,247.247 INFO    ] 2026-10-18 08:27:53
[2026-10-18 08:27:53,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:27:53,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:27:53,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:27:53,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:27:53,767.767 INFO    ] time= 18/10/2026 08:27:53
[2026-10-18 08:27:53,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:27:53,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:27:53,951.951 INFO    ] No existing commands found in stream
[2026-10-18 08:27:58,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:27:58,990.990 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-18 08:28:03,102.102 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 08:28:03,105.105 INFO    ] Checking for system updates...
[2026-10-18 08:28:03,142.142 INFO    ] 200
[2026-10-18 08:28:03,146.146 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:28:03,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:28:03,213.213 INFO    ] No update needed
[2026-10-18 08:28:03,216.216 INFO    ] Checking for camera pi updates...
[2026-10-18 08:28:03,251.251 INFO    ] 200
[2026-10-18 08:28:03,253.253 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:28:03,305.305 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:28:13,321.321 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:28:13,355.355 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:28:13,365.365 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:28:13,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:28:13,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:28:13,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:28:15,417.417 INFO    ] ================================================
[2026-10-18 08:28:15,432.432 INFO    ] Launching Daemon at Sun Oct 18 08:28:15 IST 2026
[2026-10-18 08:28:15,443.443 INFO    ] ================================================
[2026-10-18 08:28:16,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:28:16
[2026-10-18 08:28:16,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:28:16,873.873 INFO    ] Initializing speech engine...
[2026-10-18 08:28:16,898.898 INFO    ] 2026-10-18 08:28:16
[2026-10-18 08:28:17,174.174 INFO    ] 2026-10-18 08:28:17
[2026-10-18 08:28:17,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:28:17,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:28:17,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:28:17,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:28:17,741.741 INFO    ] time= 18/10/2026 08:28:17
[2026-10-18 08:28:17,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:28:17,775.775 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:28:17,906.906 INFO    ] No existing commands found in stream
[2026-10-18 08:28:22,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:28:22,923.923 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-18 08:28:24,354.354 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:28:24,356.356 INFO    ] Checking for system updates...
[2026-10-18 08:28:24,392.392 INFO    ] 200
[2026-10-18 08:28:24,395.395 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:28:24,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:28:24,449.449 INFO    ] No update needed
[2026-10-18 08:28:24,451.451 INFO    ] Checking for camera pi updates...
[2026-10-18 08:28:24,489.489 INFO    ] 200
[2026-10-18 08:28:24,491.491 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:28:24,531.531 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:28:34,547.547 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:28:34,582.582 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:28:34,592.592 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:28:34,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:28:34,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:28:34,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:28:36,645.645 INFO    ] ================================================
[2026-10-18 08:28:36,660.660 INFO    ] Launching Daemon at Sun Oct 18 08:28:36 IST 2026
[2026-10-18 08:28:36,670.670 INFO    ] ================================================
[2026-10-18 08:28:37,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:28:37
[2026-10-18 08:28:37,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:28:38,135.135 INFO    ] Initializing speech engine...
[2026-10-18 08:28:38,144.144 INFO    ] 2026-10-18 08:28:38
[2026-10-18 08:28:38,402.402 INFO    ] 2026-10-18 08:28:38
[2026-10-18 08:28:38,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:28:38,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:28:38,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:28:38,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:28:38,945.945 INFO    ] time= 18/10/2026 08:28:38
[2026-10-18 08:28:38,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:28:38,969.969 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:28:39,096.096 INFO    ] No existing commands found in stream
[2026-10-18 08:28:44,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:28:44,115.115 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-18 08:28:47,535.535 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:28:47,538.538 INFO    ] Checking for system updates...
[2026-10-18 08:28:47,576.576 INFO    ] 200
[2026-10-18 08:28:47,579.579 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:28:47,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:28:47,634.634 INFO    ] No update needed
[2026-10-18 08:28:47,637.637 INFO    ] Checking for camera pi updates...
[2026-10-18 08:28:47,673.673 INFO    ] 200
[2026-10-18 08:28:47,675.675 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:28:47,717.717 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:28:57,734.734 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:28:57,775.775 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:28:57,786.786 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:28:57,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:28:57,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:28:57,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:28:59,841.841 INFO    ] ================================================
[2026-10-18 08:28:59,856.856 INFO    ] Launching Daemon at Sun Oct 18 08:28:59 IST 2026
[2026-10-18 08:28:59,867.867 INFO    ] ================================================
[2026-10-18 08:29:00,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:29:00
[2026-10-18 08:29:01,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:29:01,352.352 INFO    ] Initializing speech engine...
[2026-10-18 08:29:01,373.373 INFO    ] 2026-10-18 08:29:01
[2026-10-18 08:29:01,895.895 INFO    ] 2026-10-18 08:29:01
[2026-10-18 08:29:01,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:29:02,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:29:02,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:29:02,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:29:02,451.451 INFO    ] time= 18/10/2026 08:29:02
[2026-10-18 08:29:02,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:29:02,494.494 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:29:02,632.632 INFO    ] No existing commands found in stream
[2026-10-18 08:29:07,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:29:07,672.672 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-18 08:29:09,211.211 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:29:09,214.214 INFO    ] Checking for system updates...
[2026-10-18 08:29:09,249.249 INFO    ] 200
[2026-10-18 08:29:09,252.252 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:29:09,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:29:09,306.306 INFO    ] No update needed
[2026-10-18 08:29:09,309.309 INFO    ] Checking for camera pi updates...
[2026-10-18 08:29:09,346.346 INFO    ] 200
[2026-10-18 08:29:09,348.348 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:29:09,388.388 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:29:19,404.404 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:29:19,439.439 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:29:19,448.448 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:29:19,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:29:19,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:29:19,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:29:21,501.501 INFO    ] ================================================
[2026-10-18 08:29:21,516.516 INFO    ] Launching Daemon at Sun Oct 18 08:29:21 IST 2026
[2026-10-18 08:29:21,527.527 INFO    ] ================================================
[2026-10-18 08:29:22,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:29:22
[2026-10-18 08:29:22,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:29:22,939.939 INFO    ] Initializing speech engine...
[2026-10-18 08:29:22,953.953 INFO    ] 2026-10-18 08:29:22
[2026-10-18 08:29:23,220.220 INFO    ] 2026-10-18 08:29:23
[2026-10-18 08:29:23,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:29:23,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:29:23,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:29:23,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:29:23,751.751 INFO    ] time= 18/10/2026 08:29:23
[2026-10-18 08:29:23,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:29:23,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:29:23,950.950 INFO    ] No existing commands found in stream
[2026-10-18 08:29:28,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:29:28,984.984 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-18 08:29:33,369.369 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:29:33,372.372 INFO    ] Checking for system updates...
[2026-10-18 08:29:33,407.407 INFO    ] 200
[2026-10-18 08:29:33,409.409 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:29:33,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:29:33,463.463 INFO    ] No update needed
[2026-10-18 08:29:33,465.465 INFO    ] Checking for camera pi updates...
[2026-10-18 08:29:33,498.498 INFO    ] 200
[2026-10-18 08:29:33,501.501 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:29:33,541.541 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:29:43,556.556 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:29:43,591.591 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:29:43,600.600 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:29:43,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:29:43,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:29:43,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:29:45,653.653 INFO    ] ================================================
[2026-10-18 08:29:45,668.668 INFO    ] Launching Daemon at Sun Oct 18 08:29:45 IST 2026
[2026-10-18 08:29:45,679.679 INFO    ] ================================================
[2026-10-18 08:29:46,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:29:46
[2026-10-18 08:29:46,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:29:47,133.133 INFO    ] Initializing speech engine...
[2026-10-18 08:29:47,141.141 INFO    ] 2026-10-18 08:29:47
[2026-10-18 08:29:47,400.400 INFO    ] 2026-10-18 08:29:47
[2026-10-18 08:29:47,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:29:47,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:29:47,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:29:47,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:29:47,879.879 INFO    ] time= 18/10/2026 08:29:47
[2026-10-18 08:29:47,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:29:47,952.952 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:29:48,096.096 INFO    ] No existing commands found in stream
[2026-10-18 08:29:53,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:29:53,113.113 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-18 08:29:56,602.602 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:29:56,605.605 INFO    ] Checking for system updates...
[2026-10-18 08:29:56,644.644 INFO    ] 200
[2026-10-18 08:29:56,646.646 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:29:56,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:29:56,701.701 INFO    ] No update needed
[2026-10-18 08:29:56,704.704 INFO    ] Checking for camera pi updates...
[2026-10-18 08:29:56,738.738 INFO    ] 200
[2026-10-18 08:29:56,740.740 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:29:56,794.794 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:30:06,822.822 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:30:06,859.859 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:30:06,869.869 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:30:06,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:30:06,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:30:06,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:30:08,926.926 INFO    ] ================================================
[2026-10-18 08:30:08,941.941 INFO    ] Launching Daemon at Sun Oct 18 08:30:08 IST 2026
[2026-10-18 08:30:08,953.953 INFO    ] ================================================
[2026-10-18 08:30:09,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:30:09
[2026-10-18 08:30:10,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:30:10,418.418 INFO    ] Initializing speech engine...
[2026-10-18 08:30:10,426.426 INFO    ] 2026-10-18 08:30:10
[2026-10-18 08:30:10,687.687 INFO    ] 2026-10-18 08:30:10
[2026-10-18 08:30:10,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:30:10,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:30:11,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:30:11,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:30:11,234.234 INFO    ] time= 18/10/2026 08:30:11
[2026-10-18 08:30:11,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:30:11,279.279 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:30:11,390.390 INFO    ] No existing commands found in stream
[2026-10-18 08:30:16,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:30:16,413.413 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-18 08:30:20,859.859 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:30:20,862.862 INFO    ] Checking for system updates...
[2026-10-18 08:30:20,898.898 INFO    ] 200
[2026-10-18 08:30:20,900.900 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:30:20,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:30:20,958.958 INFO    ] No update needed
[2026-10-18 08:30:20,960.960 INFO    ] Checking for camera pi updates...
[2026-10-18 08:30:20,994.994 INFO    ] 200
[2026-10-18 08:30:20,997.997 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:30:21,037.037 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:30:31,053.053 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:30:31,089.089 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:30:31,099.099 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:30:31,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:30:31,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:30:31,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:30:33,157.157 INFO    ] ================================================
[2026-10-18 08:30:33,175.175 INFO    ] Launching Daemon at Sun Oct 18 08:30:33 IST 2026
[2026-10-18 08:30:33,187.187 INFO    ] ================================================
[2026-10-18 08:30:33,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:30:33
[2026-10-18 08:30:34,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:30:34,604.604 INFO    ] Initializing speech engine...
[2026-10-18 08:30:34,627.627 INFO    ] 2026-10-18 08:30:34
[2026-10-18 08:30:34,882.882 INFO    ] 2026-10-18 08:30:34
[2026-10-18 08:30:34,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:30:35,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:30:35,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:30:35,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:30:35,337.337 INFO    ] time= 18/10/2026 08:30:35
[2026-10-18 08:30:35,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:30:35,457.457 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:30:35,589.589 INFO    ] No existing commands found in stream
[2026-10-18 08:30:40,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:30:40,617.617 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-18 08:30:41,147.147 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:30:41,150.150 INFO    ] Checking for system updates...
[2026-10-18 08:30:41,187.187 INFO    ] 200
[2026-10-18 08:30:41,190.190 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:30:41,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:30:41,250.250 INFO    ] No update needed
[2026-10-18 08:30:41,252.252 INFO    ] Checking for camera pi updates...
[2026-10-18 08:30:41,290.290 INFO    ] 200
[2026-10-18 08:30:41,292.292 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:30:41,333.333 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:30:51,349.349 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:30:51,383.383 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:30:51,393.393 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:30:51,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:30:51,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:30:51,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:30:53,447.447 INFO    ] ================================================
[2026-10-18 08:30:53,462.462 INFO    ] Launching Daemon at Sun Oct 18 08:30:53 IST 2026
[2026-10-18 08:30:53,473.473 INFO    ] ================================================
[2026-10-18 08:30:54,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:30:54
[2026-10-18 08:30:54,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:30:55,123.123 INFO    ] Initializing speech engine...
[2026-10-18 08:30:55,137.137 INFO    ] 2026-10-18 08:30:55
[2026-10-18 08:30:55,429.429 INFO    ] 2026-10-18 08:30:55
[2026-10-18 08:30:55,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:30:55,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:30:55,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:30:55,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:30:55,984.984 INFO    ] time= 18/10/2026 08:30:55
[2026-10-18 08:30:55,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:30:56,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:30:56,148.148 INFO    ] No existing commands found in stream
[2026-10-18 08:31:01,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:31:01,189.189 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-18 08:31:03,181.181 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:31:03,184.184 INFO    ] Checking for system updates...
[2026-10-18 08:31:03,220.220 INFO    ] 200
[2026-10-18 08:31:03,223.223 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:31:03,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:31:03,282.282 INFO    ] No update needed
[2026-10-18 08:31:03,285.285 INFO    ] Checking for camera pi updates...
[2026-10-18 08:31:03,319.319 INFO    ] 200
[2026-10-18 08:31:03,322.322 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:31:03,367.367 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:31:13,383.383 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:31:13,419.419 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:31:13,429.429 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:31:13,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:31:13,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:31:13,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:31:15,482.482 INFO    ] ================================================
[2026-10-18 08:31:15,498.498 INFO    ] Launching Daemon at Sun Oct 18 08:31:15 IST 2026
[2026-10-18 08:31:15,508.508 INFO    ] ================================================
[2026-10-18 08:31:16,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:31:16
[2026-10-18 08:31:16,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:31:16,921.921 INFO    ] Initializing speech engine...
[2026-10-18 08:31:16,940.940 INFO    ] 2026-10-18 08:31:16
[2026-10-18 08:31:17,200.200 INFO    ] 2026-10-18 08:31:17
[2026-10-18 08:31:17,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:31:17,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:31:17,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:31:17,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:31:17,723.723 INFO    ] time= 18/10/2026 08:31:17
[2026-10-18 08:31:17,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:31:17,780.780 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:31:17,923.923 INFO    ] No existing commands found in stream
[2026-10-18 08:31:22,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:31:22,942.942 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-18 08:31:25,113.113 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:31:25,116.116 INFO    ] Checking for system updates...
[2026-10-18 08:31:25,152.152 INFO    ] 200
[2026-10-18 08:31:25,154.154 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:31:25,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:31:25,218.218 INFO    ] No update needed
[2026-10-18 08:31:25,220.220 INFO    ] Checking for camera pi updates...
[2026-10-18 08:31:25,259.259 INFO    ] 200
[2026-10-18 08:31:25,262.262 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:31:25,304.304 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:31:35,320.320 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:31:35,360.360 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:31:35,371.371 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:31:35,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:31:35,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:31:35,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:31:37,427.427 INFO    ] ================================================
[2026-10-18 08:31:37,442.442 INFO    ] Launching Daemon at Sun Oct 18 08:31:37 IST 2026
[2026-10-18 08:31:37,452.452 INFO    ] ================================================
[2026-10-18 08:31:38,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:31:38
[2026-10-18 08:31:38,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:31:39,002.002 INFO    ] Initializing speech engine...
[2026-10-18 08:31:39,013.013 INFO    ] 2026-10-18 08:31:39
[2026-10-18 08:31:39,301.301 INFO    ] 2026-10-18 08:31:39
[2026-10-18 08:31:39,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:31:39,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:31:39,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:31:39,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:31:39,853.853 INFO    ] time= 18/10/2026 08:31:39
[2026-10-18 08:31:39,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:31:39,895.895 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:31:40,016.016 INFO    ] No existing commands found in stream
[2026-10-18 08:31:45,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:31:45,042.042 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-18 08:31:45,587.587 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:31:45,590.590 INFO    ] Checking for system updates...
[2026-10-18 08:31:45,630.630 INFO    ] 200
[2026-10-18 08:31:45,633.633 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:31:45,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:31:45,692.692 INFO    ] No update needed
[2026-10-18 08:31:45,695.695 INFO    ] Checking for camera pi updates...
[2026-10-18 08:31:45,734.734 INFO    ] 200
[2026-10-18 08:31:45,737.737 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:31:45,783.783 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:31:55,800.800 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:31:55,840.840 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:31:55,851.851 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:31:55,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:31:55,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:31:55,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:31:57,909.909 INFO    ] ================================================
[2026-10-18 08:31:57,924.924 INFO    ] Launching Daemon at Sun Oct 18 08:31:57 IST 2026
[2026-10-18 08:31:57,934.934 INFO    ] ================================================
[2026-10-18 08:31:58,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:31:58
[2026-10-18 08:31:59,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:31:59,581.581 INFO    ] Initializing speech engine...
[2026-10-18 08:31:59,595.595 INFO    ] 2026-10-18 08:31:59
[2026-10-18 08:31:59,876.876 INFO    ] 2026-10-18 08:31:59
[2026-10-18 08:31:59,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:32:00,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:32:00,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:32:00,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:32:00,412.412 INFO    ] time= 18/10/2026 08:32:00
[2026-10-18 08:32:00,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:32:00,438.438 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:32:00,571.571 INFO    ] No existing commands found in stream
[2026-10-18 08:32:05,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:32:05,603.603 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-18 08:32:06,184.184 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:32:06,188.188 INFO    ] Checking for system updates...
[2026-10-18 08:32:06,225.225 INFO    ] 200
[2026-10-18 08:32:06,228.228 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:32:06,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:32:06,284.284 INFO    ] No update needed
[2026-10-18 08:32:06,287.287 INFO    ] Checking for camera pi updates...
[2026-10-18 08:32:06,320.320 INFO    ] 200
[2026-10-18 08:32:06,323.323 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:32:06,363.363 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:32:16,379.379 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:32:16,413.413 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:32:16,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:32:16,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:32:16,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:32:16,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:32:18,480.480 INFO    ] ================================================
[2026-10-18 08:32:18,495.495 INFO    ] Launching Daemon at Sun Oct 18 08:32:18 IST 2026
[2026-10-18 08:32:18,505.505 INFO    ] ================================================
[2026-10-18 08:32:19,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:32:19
[2026-10-18 08:32:19,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:32:19,961.961 INFO    ] Initializing speech engine...
[2026-10-18 08:32:19,971.971 INFO    ] 2026-10-18 08:32:19
[2026-10-18 08:32:20,233.233 INFO    ] 2026-10-18 08:32:20
[2026-10-18 08:32:20,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:32:20,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:32:20,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:32:20,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:32:20,706.706 INFO    ] time= 18/10/2026 08:32:20
[2026-10-18 08:32:20,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:32:20,783.783 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:32:20,950.950 INFO    ] No existing commands found in stream
[2026-10-18 08:32:25,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:32:25,989.989 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-18 08:32:26,533.533 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:32:26,536.536 INFO    ] Checking for system updates...
[2026-10-18 08:32:26,572.572 INFO    ] 200
[2026-10-18 08:32:26,574.574 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:32:26,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:32:26,629.629 INFO    ] No update needed
[2026-10-18 08:32:26,632.632 INFO    ] Checking for camera pi updates...
[2026-10-18 08:32:26,670.670 INFO    ] 200
[2026-10-18 08:32:26,672.672 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:32:26,717.717 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:32:36,734.734 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:32:36,769.769 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:32:36,779.779 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:32:36,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:32:36,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:32:36,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:32:38,834.834 INFO    ] ================================================
[2026-10-18 08:32:38,849.849 INFO    ] Launching Daemon at Sun Oct 18 08:32:38 IST 2026
[2026-10-18 08:32:38,860.860 INFO    ] ================================================
[2026-10-18 08:32:39,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:32:39
[2026-10-18 08:32:40,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:32:40,269.269 INFO    ] Initializing speech engine...
[2026-10-18 08:32:40,283.283 INFO    ] 2026-10-18 08:32:40
[2026-10-18 08:32:40,551.551 INFO    ] 2026-10-18 08:32:40
[2026-10-18 08:32:40,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:32:40,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:32:40,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:32:40,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:32:41,053.053 INFO    ] time= 18/10/2026 08:32:41
[2026-10-18 08:32:41,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:32:41,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:32:41,265.265 INFO    ] No existing commands found in stream
[2026-10-18 08:32:46,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:32:46,293.293 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-18 08:32:47,568.568 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:32:47,570.570 INFO    ] Checking for system updates...
[2026-10-18 08:32:47,611.611 INFO    ] 200
[2026-10-18 08:32:47,614.614 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:32:47,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:32:47,683.683 INFO    ] No update needed
[2026-10-18 08:32:47,686.686 INFO    ] Checking for camera pi updates...
[2026-10-18 08:32:47,720.720 INFO    ] 200
[2026-10-18 08:32:47,723.723 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:32:47,769.769 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:32:57,785.785 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:32:57,820.820 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:32:57,829.829 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:32:57,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:32:57,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:32:57,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:32:59,884.884 INFO    ] ================================================
[2026-10-18 08:32:59,902.902 INFO    ] Launching Daemon at Sun Oct 18 08:32:59 IST 2026
[2026-10-18 08:32:59,913.913 INFO    ] ================================================
[2026-10-18 08:33:00,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:33:00
[2026-10-18 08:33:01,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:33:01,751.751 INFO    ] Initializing speech engine...
[2026-10-18 08:33:01,756.756 INFO    ] 2026-10-18 08:33:01
[2026-10-18 08:33:02,109.109 INFO    ] 2026-10-18 08:33:02
[2026-10-18 08:33:02,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:33:02,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:33:02,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:33:02,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:33:02,717.717 INFO    ] time= 18/10/2026 08:33:02
[2026-10-18 08:33:02,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:33:02,842.842 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:33:02,998.998 INFO    ] No existing commands found in stream
[2026-10-18 08:33:08,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:33:08,017.017 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-18 08:33:10,783.783 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:33:10,786.786 INFO    ] Checking for system updates...
[2026-10-18 08:33:10,827.827 INFO    ] 200
[2026-10-18 08:33:10,830.830 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:33:10,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:33:10,893.893 INFO    ] No update needed
[2026-10-18 08:33:10,896.896 INFO    ] Checking for camera pi updates...
[2026-10-18 08:33:10,934.934 INFO    ] 200
[2026-10-18 08:33:10,937.937 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:33:10,979.979 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:33:20,996.996 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:33:21,036.036 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:33:21,047.047 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:33:21,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:33:21,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:33:21,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:33:23,102.102 INFO    ] ================================================
[2026-10-18 08:33:23,118.118 INFO    ] Launching Daemon at Sun Oct 18 08:33:23 IST 2026
[2026-10-18 08:33:23,129.129 INFO    ] ================================================
[2026-10-18 08:33:23,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:33:23
[2026-10-18 08:33:24,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:33:24,648.648 INFO    ] Initializing speech engine...
[2026-10-18 08:33:24,657.657 INFO    ] 2026-10-18 08:33:24
[2026-10-18 08:33:24,915.915 INFO    ] 2026-10-18 08:33:24
[2026-10-18 08:33:24,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:33:25,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:33:25,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:33:25,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:33:25,476.476 INFO    ] time= 18/10/2026 08:33:25
[2026-10-18 08:33:25,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:33:25,500.500 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:33:25,635.635 INFO    ] No existing commands found in stream
[2026-10-18 08:33:30,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:33:30,653.653 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-18 08:33:32,000.000 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 08:33:32,003.003 INFO    ] Checking for system updates...
[2026-10-18 08:33:32,041.041 INFO    ] 200
[2026-10-18 08:33:32,044.044 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:33:32,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:33:32,113.113 INFO    ] No update needed
[2026-10-18 08:33:32,115.115 INFO    ] Checking for camera pi updates...
[2026-10-18 08:33:32,157.157 INFO    ] 200
[2026-10-18 08:33:32,159.159 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:33:32,215.215 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:33:42,228.228 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:33:42,265.265 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:33:42,275.275 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:33:42,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:33:42,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:33:42,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:33:44,328.328 INFO    ] ================================================
[2026-10-18 08:33:44,344.344 INFO    ] Launching Daemon at Sun Oct 18 08:33:44 IST 2026
[2026-10-18 08:33:44,354.354 INFO    ] ================================================
[2026-10-18 08:33:44,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:33:44
[2026-10-18 08:33:45,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:33:45,814.814 INFO    ] Initializing speech engine...
[2026-10-18 08:33:45,834.834 INFO    ] 2026-10-18 08:33:45
[2026-10-18 08:33:46,088.088 INFO    ] 2026-10-18 08:33:46
[2026-10-18 08:33:46,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:33:46,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:33:46,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:33:46,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:33:46,657.657 INFO    ] time= 18/10/2026 08:33:46
[2026-10-18 08:33:46,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:33:46,684.684 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:33:46,820.820 INFO    ] No existing commands found in stream
[2026-10-18 08:33:51,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:33:51,834.834 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-18 08:33:55,162.162 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:33:55,165.165 INFO    ] Checking for system updates...
[2026-10-18 08:33:55,201.201 INFO    ] 200
[2026-10-18 08:33:55,203.203 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:33:55,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:33:55,258.258 INFO    ] No update needed
[2026-10-18 08:33:55,261.261 INFO    ] Checking for camera pi updates...
[2026-10-18 08:33:55,294.294 INFO    ] 200
[2026-10-18 08:33:55,297.297 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:33:55,337.337 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:34:05,352.352 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:34:05,387.387 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:34:05,396.396 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:34:05,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:34:05,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:34:05,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:34:07,450.450 INFO    ] ================================================
[2026-10-18 08:34:07,465.465 INFO    ] Launching Daemon at Sun Oct 18 08:34:07 IST 2026
[2026-10-18 08:34:07,476.476 INFO    ] ================================================
[2026-10-18 08:34:08,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:34:08
[2026-10-18 08:34:08,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:34:09,122.122 INFO    ] Initializing speech engine...
[2026-10-18 08:34:09,137.137 INFO    ] 2026-10-18 08:34:09
[2026-10-18 08:34:09,419.419 INFO    ] 2026-10-18 08:34:09
[2026-10-18 08:34:09,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:34:09,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:34:09,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:34:09,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:34:09,975.975 INFO    ] time= 18/10/2026 08:34:09
[2026-10-18 08:34:09,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:34:10,024.024 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:34:10,168.168 INFO    ] No existing commands found in stream
[2026-10-18 08:34:15,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:34:15,208.208 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-18 08:34:18,294.294 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:34:18,297.297 INFO    ] Checking for system updates...
[2026-10-18 08:34:18,336.336 INFO    ] 200
[2026-10-18 08:34:18,338.338 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:34:18,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:34:18,394.394 INFO    ] No update needed
[2026-10-18 08:34:18,397.397 INFO    ] Checking for camera pi updates...
[2026-10-18 08:34:18,436.436 INFO    ] 200
[2026-10-18 08:34:18,439.439 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:34:18,485.485 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:34:28,499.499 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:34:28,540.540 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:34:28,551.551 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:34:28,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:34:28,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:34:28,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:34:30,607.607 INFO    ] ================================================
[2026-10-18 08:34:30,623.623 INFO    ] Launching Daemon at Sun Oct 18 08:34:30 IST 2026
[2026-10-18 08:34:30,634.634 INFO    ] ================================================
[2026-10-18 08:34:31,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:34:31
[2026-10-18 08:34:32,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:34:32,368.368 INFO    ] Initializing speech engine...
[2026-10-18 08:34:32,381.381 INFO    ] 2026-10-18 08:34:32
[2026-10-18 08:34:32,678.678 INFO    ] 2026-10-18 08:34:32
[2026-10-18 08:34:32,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:34:32,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:34:33,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:34:33,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:34:33,252.252 INFO    ] time= 18/10/2026 08:34:33
[2026-10-18 08:34:33,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:34:33,291.291 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:34:33,460.460 INFO    ] No existing commands found in stream
[2026-10-18 08:34:38,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:34:38,495.495 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-18 08:34:42,445.445 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:34:42,448.448 INFO    ] Checking for system updates...
[2026-10-18 08:34:42,485.485 INFO    ] 200
[2026-10-18 08:34:42,488.488 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:34:42,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:34:42,551.551 INFO    ] No update needed
[2026-10-18 08:34:42,556.556 INFO    ] Checking for camera pi updates...
[2026-10-18 08:34:42,593.593 INFO    ] 200
[2026-10-18 08:34:42,595.595 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:34:42,635.635 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:34:52,650.650 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:34:52,685.685 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:34:52,694.694 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:34:52,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:34:52,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:34:52,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:34:54,747.747 INFO    ] ================================================
[2026-10-18 08:34:54,762.762 INFO    ] Launching Daemon at Sun Oct 18 08:34:54 IST 2026
[2026-10-18 08:34:54,773.773 INFO    ] ================================================
[2026-10-18 08:34:55,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:34:55
[2026-10-18 08:34:55,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:34:56,177.177 INFO    ] Initializing speech engine...
[2026-10-18 08:34:56,200.200 INFO    ] 2026-10-18 08:34:56
[2026-10-18 08:34:56,458.458 INFO    ] 2026-10-18 08:34:56
[2026-10-18 08:34:56,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:34:56,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:34:56,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:34:56,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:34:56,937.937 INFO    ] time= 18/10/2026 08:34:56
[2026-10-18 08:34:56,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:34:57,031.031 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:34:57,167.167 INFO    ] No existing commands found in stream
[2026-10-18 08:35:02,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:35:02,193.193 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-18 08:35:05,331.331 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:35:05,333.333 INFO    ] Checking for system updates...
[2026-10-18 08:35:05,371.371 INFO    ] 200
[2026-10-18 08:35:05,374.374 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:35:05,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:35:05,430.430 INFO    ] No update needed
[2026-10-18 08:35:05,433.433 INFO    ] Checking for camera pi updates...
[2026-10-18 08:35:05,468.468 INFO    ] 200
[2026-10-18 08:35:05,470.470 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:35:05,511.511 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:35:15,527.527 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:35:15,566.566 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:35:15,577.577 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:35:15,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:35:15,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:35:15,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:35:17,632.632 INFO    ] ================================================
[2026-10-18 08:35:17,647.647 INFO    ] Launching Daemon at Sun Oct 18 08:35:17 IST 2026
[2026-10-18 08:35:17,658.658 INFO    ] ================================================
[2026-10-18 08:35:18,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:35:18
[2026-10-18 08:35:18,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:35:19,099.099 INFO    ] Initializing speech engine...
[2026-10-18 08:35:19,106.106 INFO    ] 2026-10-18 08:35:19
[2026-10-18 08:35:19,395.395 INFO    ] 2026-10-18 08:35:19
[2026-10-18 08:35:19,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:35:19,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:35:19,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:35:19,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:35:19,907.907 INFO    ] time= 18/10/2026 08:35:19
[2026-10-18 08:35:19,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:35:20,010.010 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:35:20,132.132 INFO    ] No existing commands found in stream
[2026-10-18 08:35:25,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:35:25,153.153 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-18 08:35:28,422.422 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:35:28,425.425 INFO    ] Checking for system updates...
[2026-10-18 08:35:28,460.460 INFO    ] 200
[2026-10-18 08:35:28,463.463 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:35:28,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:35:28,518.518 INFO    ] No update needed
[2026-10-18 08:35:28,520.520 INFO    ] Checking for camera pi updates...
[2026-10-18 08:35:28,553.553 INFO    ] 200
[2026-10-18 08:35:28,556.556 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:35:28,600.600 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:35:38,614.614 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:35:38,649.649 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:35:38,659.659 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:35:38,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:35:38,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:35:38,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:35:40,711.711 INFO    ] ================================================
[2026-10-18 08:35:40,727.727 INFO    ] Launching Daemon at Sun Oct 18 08:35:40 IST 2026
[2026-10-18 08:35:40,738.738 INFO    ] ================================================
[2026-10-18 08:35:41,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:35:41
[2026-10-18 08:35:42,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:35:42,374.374 INFO    ] Initializing speech engine...
[2026-10-18 08:35:42,383.383 INFO    ] 2026-10-18 08:35:42
[2026-10-18 08:35:42,655.655 INFO    ] 2026-10-18 08:35:42
[2026-10-18 08:35:42,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:35:42,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:35:42,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:35:43,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:35:43,206.206 INFO    ] time= 18/10/2026 08:35:43
[2026-10-18 08:35:43,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:35:43,231.231 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:35:43,369.369 INFO    ] No existing commands found in stream
[2026-10-18 08:35:48,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:35:48,404.404 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-18 08:35:52,866.866 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:35:52,869.869 INFO    ] Checking for system updates...
[2026-10-18 08:35:52,910.910 INFO    ] 200
[2026-10-18 08:35:52,913.913 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:35:52,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:35:52,977.977 INFO    ] No update needed
[2026-10-18 08:35:52,981.981 INFO    ] Checking for camera pi updates...
[2026-10-18 08:35:53,015.015 INFO    ] 200
[2026-10-18 08:35:53,018.018 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:35:53,060.060 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:36:03,073.073 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:36:03,114.114 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:36:03,125.125 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:36:03,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:36:03,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:36:03,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:36:05,184.184 INFO    ] ================================================
[2026-10-18 08:36:05,199.199 INFO    ] Launching Daemon at Sun Oct 18 08:36:05 IST 2026
[2026-10-18 08:36:05,209.209 INFO    ] ================================================
[2026-10-18 08:36:05,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:36:05
[2026-10-18 08:36:06,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:36:06,659.659 INFO    ] Initializing speech engine...
[2026-10-18 08:36:06,685.685 INFO    ] 2026-10-18 08:36:06
[2026-10-18 08:36:06,959.959 INFO    ] 2026-10-18 08:36:06
[2026-10-18 08:36:06,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:36:07,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:36:07,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:36:07,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:36:07,375.375 INFO    ] time= 18/10/2026 08:36:07
[2026-10-18 08:36:07,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:36:07,430.430 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:36:07,579.579 INFO    ] No existing commands found in stream
[2026-10-18 08:36:12,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:36:12,609.609 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-18 08:36:15,541.541 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:36:15,543.543 INFO    ] Checking for system updates...
[2026-10-18 08:36:15,580.580 INFO    ] 200
[2026-10-18 08:36:15,582.582 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:36:15,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:36:15,641.641 INFO    ] No update needed
[2026-10-18 08:36:15,643.643 INFO    ] Checking for camera pi updates...
[2026-10-18 08:36:15,677.677 INFO    ] 200
[2026-10-18 08:36:15,680.680 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:36:15,720.720 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:36:25,735.735 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:36:25,771.771 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:36:25,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:36:25,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:36:25,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:36:25,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:36:27,834.834 INFO    ] ================================================
[2026-10-18 08:36:27,850.850 INFO    ] Launching Daemon at Sun Oct 18 08:36:27 IST 2026
[2026-10-18 08:36:27,862.862 INFO    ] ================================================
[2026-10-18 08:36:28,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:36:28
[2026-10-18 08:36:29,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:36:29,477.477 INFO    ] Initializing speech engine...
[2026-10-18 08:36:29,485.485 INFO    ] 2026-10-18 08:36:29
[2026-10-18 08:36:29,764.764 INFO    ] 2026-10-18 08:36:29
[2026-10-18 08:36:29,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:36:30,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:36:30,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:36:30,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:36:30,360.360 INFO    ] time= 18/10/2026 08:36:30
[2026-10-18 08:36:30,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:36:30,385.385 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:36:30,508.508 INFO    ] No existing commands found in stream
[2026-10-18 08:36:35,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:36:35,536.536 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-18 08:36:38,367.367 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:36:38,370.370 INFO    ] Checking for system updates...
[2026-10-18 08:36:38,406.406 INFO    ] 200
[2026-10-18 08:36:38,408.408 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:36:38,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:36:38,463.463 INFO    ] No update needed
[2026-10-18 08:36:38,465.465 INFO    ] Checking for camera pi updates...
[2026-10-18 08:36:38,498.498 INFO    ] 200
[2026-10-18 08:36:38,501.501 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:36:38,540.540 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:36:48,554.554 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:36:48,589.589 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:36:48,599.599 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:36:48,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:36:48,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:36:48,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:36:50,651.651 INFO    ] ================================================
[2026-10-18 08:36:50,666.666 INFO    ] Launching Daemon at Sun Oct 18 08:36:50 IST 2026
[2026-10-18 08:36:50,679.679 INFO    ] ================================================
[2026-10-18 08:36:51,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:36:51
[2026-10-18 08:36:51,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:36:52,136.136 INFO    ] Initializing speech engine...
[2026-10-18 08:36:52,145.145 INFO    ] 2026-10-18 08:36:52
[2026-10-18 08:36:52,408.408 INFO    ] 2026-10-18 08:36:52
[2026-10-18 08:36:52,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:36:52,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:36:52,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:36:52,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:36:52,951.951 INFO    ] time= 18/10/2026 08:36:52
[2026-10-18 08:36:52,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:36:52,976.976 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:36:53,105.105 INFO    ] No existing commands found in stream
[2026-10-18 08:36:58,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:36:58,122.122 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-18 08:36:59,519.519 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:36:59,521.521 INFO    ] Checking for system updates...
[2026-10-18 08:36:59,561.561 INFO    ] 200
[2026-10-18 08:36:59,563.563 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:36:59,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:36:59,623.623 INFO    ] No update needed
[2026-10-18 08:36:59,626.626 INFO    ] Checking for camera pi updates...
[2026-10-18 08:36:59,662.662 INFO    ] 200
[2026-10-18 08:36:59,664.664 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:36:59,704.704 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:37:09,718.718 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:37:09,754.754 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:37:09,763.763 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:37:09,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:37:09,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:37:09,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:37:11,818.818 INFO    ] ================================================
[2026-10-18 08:37:11,833.833 INFO    ] Launching Daemon at Sun Oct 18 08:37:11 IST 2026
[2026-10-18 08:37:11,844.844 INFO    ] ================================================
[2026-10-18 08:37:12,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:37:12
[2026-10-18 08:37:13,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:37:13,379.379 INFO    ] Initializing speech engine...
[2026-10-18 08:37:13,388.388 INFO    ] 2026-10-18 08:37:13
[2026-10-18 08:37:13,672.672 INFO    ] 2026-10-18 08:37:13
[2026-10-18 08:37:13,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:37:14,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:37:14,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:37:14,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:37:14,224.224 INFO    ] time= 18/10/2026 08:37:14
[2026-10-18 08:37:14,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:37:14,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:37:14,406.406 INFO    ] No existing commands found in stream
[2026-10-18 08:37:19,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:37:19,435.435 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-18 08:37:23,296.296 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:37:23,299.299 INFO    ] Checking for system updates...
[2026-10-18 08:37:23,335.335 INFO    ] 200
[2026-10-18 08:37:23,337.337 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:37:23,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:37:23,395.395 INFO    ] No update needed
[2026-10-18 08:37:23,397.397 INFO    ] Checking for camera pi updates...
[2026-10-18 08:37:23,434.434 INFO    ] 200
[2026-10-18 08:37:23,437.437 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:37:23,478.478 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:37:33,491.491 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:37:33,525.525 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:37:33,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:37:33,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:37:33,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:37:33,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:37:35,588.588 INFO    ] ================================================
[2026-10-18 08:37:35,603.603 INFO    ] Launching Daemon at Sun Oct 18 08:37:35 IST 2026
[2026-10-18 08:37:35,615.615 INFO    ] ================================================
[2026-10-18 08:37:36,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:37:36
[2026-10-18 08:37:36,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:37:37,162.162 INFO    ] Initializing speech engine...
[2026-10-18 08:37:37,176.176 INFO    ] 2026-10-18 08:37:37
[2026-10-18 08:37:37,448.448 INFO    ] 2026-10-18 08:37:37
[2026-10-18 08:37:37,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:37:37,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:37:37,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:37:37,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:37:38,002.002 INFO    ] time= 18/10/2026 08:37:37
[2026-10-18 08:37:38,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:37:38,030.030 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:37:38,165.165 INFO    ] No existing commands found in stream
[2026-10-18 08:37:43,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:37:43,200.200 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-18 08:37:47,172.172 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:37:47,175.175 INFO    ] Checking for system updates...
[2026-10-18 08:37:47,212.212 INFO    ] 200
[2026-10-18 08:37:47,215.215 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:37:47,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:37:47,270.270 INFO    ] No update needed
[2026-10-18 08:37:47,273.273 INFO    ] Checking for camera pi updates...
[2026-10-18 08:37:47,307.307 INFO    ] 200
[2026-10-18 08:37:47,309.309 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:37:47,352.352 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:37:57,368.368 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:37:57,404.404 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:37:57,413.413 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:37:57,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:37:57,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:37:57,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:37:59,466.466 INFO    ] ================================================
[2026-10-18 08:37:59,482.482 INFO    ] Launching Daemon at Sun Oct 18 08:37:59 IST 2026
[2026-10-18 08:37:59,493.493 INFO    ] ================================================
[2026-10-18 08:38:00,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:38:00
[2026-10-18 08:38:00,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:38:01,021.021 INFO    ] Initializing speech engine...
[2026-10-18 08:38:01,036.036 INFO    ] 2026-10-18 08:38:01
[2026-10-18 08:38:01,302.302 INFO    ] 2026-10-18 08:38:01
[2026-10-18 08:38:01,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:38:01,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:38:01,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:38:01,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:38:01,738.738 INFO    ] time= 18/10/2026 08:38:01
[2026-10-18 08:38:01,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:38:01,744.744 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:38:01,837.837 INFO    ] No existing commands found in stream
[2026-10-18 08:38:06,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:38:06,852.852 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-18 08:38:08,459.459 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:38:08,462.462 INFO    ] Checking for system updates...
[2026-10-18 08:38:08,503.503 INFO    ] 200
[2026-10-18 08:38:08,505.505 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:38:08,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:38:08,565.565 INFO    ] No update needed
[2026-10-18 08:38:08,568.568 INFO    ] Checking for camera pi updates...
[2026-10-18 08:38:08,604.604 INFO    ] 200
[2026-10-18 08:38:08,607.607 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:38:08,647.647 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:38:18,663.663 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:38:18,698.698 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:38:18,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:38:18,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:38:18,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:38:18,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:38:20,761.761 INFO    ] ================================================
[2026-10-18 08:38:20,776.776 INFO    ] Launching Daemon at Sun Oct 18 08:38:20 IST 2026
[2026-10-18 08:38:20,788.788 INFO    ] ================================================
[2026-10-18 08:38:21,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:38:21
[2026-10-18 08:38:21,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:38:22,195.195 INFO    ] Initializing speech engine...
[2026-10-18 08:38:22,201.201 INFO    ] 2026-10-18 08:38:22
[2026-10-18 08:38:22,490.490 INFO    ] 2026-10-18 08:38:22
[2026-10-18 08:38:22,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:38:22,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:38:22,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:38:23,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:38:23,086.086 INFO    ] time= 18/10/2026 08:38:23
[2026-10-18 08:38:23,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:38:23,129.129 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:38:23,242.242 INFO    ] No existing commands found in stream
[2026-10-18 08:38:28,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:38:28,268.268 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-18 08:38:29,104.104 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:38:29,107.107 INFO    ] Checking for system updates...
[2026-10-18 08:38:29,158.158 INFO    ] 200
[2026-10-18 08:38:29,160.160 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:38:29,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:38:29,214.214 INFO    ] No update needed
[2026-10-18 08:38:29,217.217 INFO    ] Checking for camera pi updates...
[2026-10-18 08:38:29,253.253 INFO    ] 200
[2026-10-18 08:38:29,256.256 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:38:29,296.296 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:38:39,310.310 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:38:39,346.346 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:38:39,355.355 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:38:39,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:38:39,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:38:39,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:38:41,408.408 INFO    ] ================================================
[2026-10-18 08:38:41,423.423 INFO    ] Launching Daemon at Sun Oct 18 08:38:41 IST 2026
[2026-10-18 08:38:41,435.435 INFO    ] ================================================
[2026-10-18 08:38:42,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:38:42
[2026-10-18 08:38:42,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:38:43,016.016 INFO    ] Initializing speech engine...
[2026-10-18 08:38:43,030.030 INFO    ] 2026-10-18 08:38:43
[2026-10-18 08:38:43,313.313 INFO    ] 2026-10-18 08:38:43
[2026-10-18 08:38:43,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:38:43,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:38:43,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:38:43,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:38:43,846.846 INFO    ] time= 18/10/2026 08:38:43
[2026-10-18 08:38:43,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:38:43,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:38:44,013.013 INFO    ] No existing commands found in stream
[2026-10-18 08:38:49,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:38:49,042.042 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-18 08:38:50,626.626 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:38:50,628.628 INFO    ] Checking for system updates...
[2026-10-18 08:38:50,664.664 INFO    ] 200
[2026-10-18 08:38:50,667.667 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:38:50,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:38:50,723.723 INFO    ] No update needed
[2026-10-18 08:38:50,726.726 INFO    ] Checking for camera pi updates...
[2026-10-18 08:38:50,759.759 INFO    ] 200
[2026-10-18 08:38:50,761.761 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:38:50,801.801 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:39:00,816.816 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:39:00,852.852 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:39:00,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:39:00,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:39:00,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:39:00,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:39:02,917.917 INFO    ] ================================================
[2026-10-18 08:39:02,934.934 INFO    ] Launching Daemon at Sun Oct 18 08:39:02 IST 2026
[2026-10-18 08:39:02,946.946 INFO    ] ================================================
[2026-10-18 08:39:03,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:39:03
[2026-10-18 08:39:04,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:39:04,542.542 INFO    ] Initializing speech engine...
[2026-10-18 08:39:04,553.553 INFO    ] 2026-10-18 08:39:04
[2026-10-18 08:39:04,819.819 INFO    ] 2026-10-18 08:39:04
[2026-10-18 08:39:04,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:39:05,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:39:05,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:39:05,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:39:05,380.380 INFO    ] time= 18/10/2026 08:39:05
[2026-10-18 08:39:05,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:39:05,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:39:05,542.542 INFO    ] No existing commands found in stream
[2026-10-18 08:39:10,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:39:10,557.557 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-18 08:39:13,317.317 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:39:13,320.320 INFO    ] Checking for system updates...
[2026-10-18 08:39:13,360.360 INFO    ] 200
[2026-10-18 08:39:13,363.363 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:39:13,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:39:13,422.422 INFO    ] No update needed
[2026-10-18 08:39:13,424.424 INFO    ] Checking for camera pi updates...
[2026-10-18 08:39:13,461.461 INFO    ] 200
[2026-10-18 08:39:13,463.463 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:39:13,503.503 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:39:23,517.517 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:39:23,551.551 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:39:23,561.561 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:39:23,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:39:23,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:39:23,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:39:25,614.614 INFO    ] ================================================
[2026-10-18 08:39:25,630.630 INFO    ] Launching Daemon at Sun Oct 18 08:39:25 IST 2026
[2026-10-18 08:39:25,641.641 INFO    ] ================================================
[2026-10-18 08:39:26,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:39:26
[2026-10-18 08:39:26,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:39:27,178.178 INFO    ] Initializing speech engine...
[2026-10-18 08:39:27,185.185 INFO    ] 2026-10-18 08:39:27
[2026-10-18 08:39:27,431.431 INFO    ] 2026-10-18 08:39:27
[2026-10-18 08:39:27,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:39:27,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:39:27,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:39:27,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:39:27,977.977 INFO    ] time= 18/10/2026 08:39:27
[2026-10-18 08:39:28,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:39:28,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:39:28,163.163 INFO    ] No existing commands found in stream
[2026-10-18 08:39:33,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:39:33,191.191 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-18 08:39:33,897.897 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:39:33,899.899 INFO    ] Checking for system updates...
[2026-10-18 08:39:33,938.938 INFO    ] 200
[2026-10-18 08:39:33,940.940 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:39:33,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:39:33,994.994 INFO    ] No update needed
[2026-10-18 08:39:33,996.996 INFO    ] Checking for camera pi updates...
[2026-10-18 08:39:34,032.032 INFO    ] 200
[2026-10-18 08:39:34,035.035 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:39:34,079.079 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:39:44,094.094 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:39:44,129.129 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:39:44,138.138 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:39:44,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:39:44,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:39:44,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:39:46,190.190 INFO    ] ================================================
[2026-10-18 08:39:46,206.206 INFO    ] Launching Daemon at Sun Oct 18 08:39:46 IST 2026
[2026-10-18 08:39:46,218.218 INFO    ] ================================================
[2026-10-18 08:39:46,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:39:46
[2026-10-18 08:39:47,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:39:47,642.642 INFO    ] Initializing speech engine...
[2026-10-18 08:39:47,651.651 INFO    ] 2026-10-18 08:39:47
[2026-10-18 08:39:47,900.900 INFO    ] 2026-10-18 08:39:47
[2026-10-18 08:39:47,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:39:48,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:39:48,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:39:48,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:39:48,397.397 INFO    ] time= 18/10/2026 08:39:48
[2026-10-18 08:39:48,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:39:48,460.460 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:39:48,605.605 INFO    ] No existing commands found in stream
[2026-10-18 08:39:53,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:39:53,623.623 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-18 08:39:56,515.515 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:39:56,518.518 INFO    ] Checking for system updates...
[2026-10-18 08:39:56,553.553 INFO    ] 200
[2026-10-18 08:39:56,555.555 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:39:56,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:39:56,615.615 INFO    ] No update needed
[2026-10-18 08:39:56,618.618 INFO    ] Checking for camera pi updates...
[2026-10-18 08:39:56,651.651 INFO    ] 200
[2026-10-18 08:39:56,653.653 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:39:56,693.693 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:40:06,709.709 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:40:06,744.744 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:40:06,754.754 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:40:06,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:40:06,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:40:06,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:40:08,809.809 INFO    ] ================================================
[2026-10-18 08:40:08,825.825 INFO    ] Launching Daemon at Sun Oct 18 08:40:08 IST 2026
[2026-10-18 08:40:08,836.836 INFO    ] ================================================
[2026-10-18 08:40:09,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:40:09
[2026-10-18 08:40:10,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:40:10,269.269 INFO    ] Initializing speech engine...
[2026-10-18 08:40:10,277.277 INFO    ] 2026-10-18 08:40:10
[2026-10-18 08:40:10,568.568 INFO    ] 2026-10-18 08:40:10
[2026-10-18 08:40:10,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:40:11,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:40:11,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:40:11,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:40:11,203.203 INFO    ] time= 18/10/2026 08:40:11
[2026-10-18 08:40:11,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:40:11,242.242 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:40:11,369.369 INFO    ] No existing commands found in stream
[2026-10-18 08:40:16,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:40:16,392.392 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-18 08:40:20,223.223 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:40:20,225.225 INFO    ] Checking for system updates...
[2026-10-18 08:40:20,264.264 INFO    ] 200
[2026-10-18 08:40:20,267.267 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:40:20,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:40:20,326.326 INFO    ] No update needed
[2026-10-18 08:40:20,329.329 INFO    ] Checking for camera pi updates...
[2026-10-18 08:40:20,365.365 INFO    ] 200
[2026-10-18 08:40:20,368.368 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:40:20,412.412 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:40:30,428.428 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:40:30,462.462 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:40:30,472.472 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:40:30,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:40:30,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:40:30,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:40:32,527.527 INFO    ] ================================================
[2026-10-18 08:40:32,543.543 INFO    ] Launching Daemon at Sun Oct 18 08:40:32 IST 2026
[2026-10-18 08:40:32,555.555 INFO    ] ================================================
[2026-10-18 08:40:33,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:40:33
[2026-10-18 08:40:33,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:40:34,176.176 INFO    ] Initializing speech engine...
[2026-10-18 08:40:34,183.183 INFO    ] 2026-10-18 08:40:34
[2026-10-18 08:40:34,458.458 INFO    ] 2026-10-18 08:40:34
[2026-10-18 08:40:34,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:40:34,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:40:34,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:40:35,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:40:35,022.022 INFO    ] time= 18/10/2026 08:40:35
[2026-10-18 08:40:35,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:40:35,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:40:35,221.221 INFO    ] No existing commands found in stream
[2026-10-18 08:40:40,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:40:40,250.250 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-18 08:40:41,854.854 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:40:41,857.857 INFO    ] Checking for system updates...
[2026-10-18 08:40:41,897.897 INFO    ] 200
[2026-10-18 08:40:41,900.900 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:40:41,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:40:41,955.955 INFO    ] No update needed
[2026-10-18 08:40:41,958.958 INFO    ] Checking for camera pi updates...
[2026-10-18 08:40:41,995.995 INFO    ] 200
[2026-10-18 08:40:41,998.998 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:40:42,044.044 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:40:52,060.060 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:40:52,099.099 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:40:52,110.110 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:40:52,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:40:52,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:40:52,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:40:54,166.166 INFO    ] ================================================
[2026-10-18 08:40:54,182.182 INFO    ] Launching Daemon at Sun Oct 18 08:40:54 IST 2026
[2026-10-18 08:40:54,193.193 INFO    ] ================================================
[2026-10-18 08:40:54,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:40:54
[2026-10-18 08:40:55,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:40:55,605.605 INFO    ] Initializing speech engine...
[2026-10-18 08:40:55,613.613 INFO    ] 2026-10-18 08:40:55
[2026-10-18 08:40:55,886.886 INFO    ] 2026-10-18 08:40:55
[2026-10-18 08:40:55,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:40:56,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:40:56,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:40:56,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:40:56,380.380 INFO    ] time= 18/10/2026 08:40:56
[2026-10-18 08:40:56,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:40:56,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:40:56,613.613 INFO    ] No existing commands found in stream
[2026-10-18 08:41:01,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:41:01,629.629 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-18 08:41:04,645.645 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:41:04,647.647 INFO    ] Checking for system updates...
[2026-10-18 08:41:04,682.682 INFO    ] 200
[2026-10-18 08:41:04,685.685 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:41:04,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:41:04,741.741 INFO    ] No update needed
[2026-10-18 08:41:04,743.743 INFO    ] Checking for camera pi updates...
[2026-10-18 08:41:04,776.776 INFO    ] 200
[2026-10-18 08:41:04,779.779 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:41:04,826.826 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:41:14,842.842 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:41:14,876.876 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:41:14,886.886 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:41:14,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:41:14,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:41:14,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:41:16,939.939 INFO    ] ================================================
[2026-10-18 08:41:16,954.954 INFO    ] Launching Daemon at Sun Oct 18 08:41:16 IST 2026
[2026-10-18 08:41:16,965.965 INFO    ] ================================================
[2026-10-18 08:41:17,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:41:17
[2026-10-18 08:41:18,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:41:18,408.408 INFO    ] Initializing speech engine...
[2026-10-18 08:41:18,428.428 INFO    ] 2026-10-18 08:41:18
[2026-10-18 08:41:18,693.693 INFO    ] 2026-10-18 08:41:18
[2026-10-18 08:41:18,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:41:18,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:41:19,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:41:19,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:41:19,226.226 INFO    ] time= 18/10/2026 08:41:19
[2026-10-18 08:41:19,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:41:19,289.289 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:41:19,434.434 INFO    ] No existing commands found in stream
[2026-10-18 08:41:24,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:41:24,450.450 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-18 08:41:28,765.765 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:41:28,768.768 INFO    ] Checking for system updates...
[2026-10-18 08:41:28,806.806 INFO    ] 200
[2026-10-18 08:41:28,808.808 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:41:28,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:41:28,867.867 INFO    ] No update needed
[2026-10-18 08:41:28,869.869 INFO    ] Checking for camera pi updates...
[2026-10-18 08:41:28,905.905 INFO    ] 200
[2026-10-18 08:41:28,908.908 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:41:28,952.952 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:41:38,967.967 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:41:39,003.003 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:41:39,012.012 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:41:39,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:41:39,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:41:39,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:41:41,065.065 INFO    ] ================================================
[2026-10-18 08:41:41,080.080 INFO    ] Launching Daemon at Sun Oct 18 08:41:41 IST 2026
[2026-10-18 08:41:41,091.091 INFO    ] ================================================
[2026-10-18 08:41:41,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:41:41
[2026-10-18 08:41:42,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:41:42,519.519 INFO    ] Initializing speech engine...
[2026-10-18 08:41:42,528.528 INFO    ] 2026-10-18 08:41:42
[2026-10-18 08:41:42,787.787 INFO    ] 2026-10-18 08:41:42
[2026-10-18 08:41:42,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:41:43,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:41:43,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:41:43,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:41:43,281.281 INFO    ] time= 18/10/2026 08:41:43
[2026-10-18 08:41:43,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:41:43,352.352 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:41:43,500.500 INFO    ] No existing commands found in stream
[2026-10-18 08:41:48,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:41:48,517.517 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-18 08:41:50,962.962 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:41:50,964.964 INFO    ] Checking for system updates...
[2026-10-18 08:41:50,999.999 INFO    ] 200
[2026-10-18 08:41:51,002.002 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:41:51,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:41:51,056.056 INFO    ] No update needed
[2026-10-18 08:41:51,058.058 INFO    ] Checking for camera pi updates...
[2026-10-18 08:41:51,095.095 INFO    ] 200
[2026-10-18 08:41:51,098.098 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:41:51,137.137 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:42:01,151.151 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:42:01,186.186 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:42:01,196.196 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:42:01,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:42:01,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:42:01,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:42:03,257.257 INFO    ] ================================================
[2026-10-18 08:42:03,276.276 INFO    ] Launching Daemon at Sun Oct 18 08:42:03 IST 2026
[2026-10-18 08:42:03,293.293 INFO    ] ================================================
[2026-10-18 08:42:03,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:42:03
[2026-10-18 08:42:04,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:42:04,748.748 INFO    ] Initializing speech engine...
[2026-10-18 08:42:04,760.760 INFO    ] 2026-10-18 08:42:04
[2026-10-18 08:42:05,019.019 INFO    ] 2026-10-18 08:42:05
[2026-10-18 08:42:05,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:42:05,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:42:05,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:42:05,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:42:05,576.576 INFO    ] time= 18/10/2026 08:42:05
[2026-10-18 08:42:05,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:42:05,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:42:05,744.744 INFO    ] No existing commands found in stream
[2026-10-18 08:42:10,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:42:10,773.773 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-18 08:42:13,907.907 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:42:13,909.909 INFO    ] Checking for system updates...
[2026-10-18 08:42:13,946.946 INFO    ] 200
[2026-10-18 08:42:13,948.948 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:42:14,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:42:14,006.006 INFO    ] No update needed
[2026-10-18 08:42:14,009.009 INFO    ] Checking for camera pi updates...
[2026-10-18 08:42:14,041.041 INFO    ] 200
[2026-10-18 08:42:14,044.044 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:42:14,087.087 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:42:24,102.102 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:42:24,136.136 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:42:24,146.146 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:42:24,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:42:24,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:42:24,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:42:26,198.198 INFO    ] ================================================
[2026-10-18 08:42:26,213.213 INFO    ] Launching Daemon at Sun Oct 18 08:42:26 IST 2026
[2026-10-18 08:42:26,224.224 INFO    ] ================================================
[2026-10-18 08:42:26,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:42:26
[2026-10-18 08:42:27,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:42:27,774.774 INFO    ] Initializing speech engine...
[2026-10-18 08:42:27,787.787 INFO    ] 2026-10-18 08:42:27
[2026-10-18 08:42:28,072.072 INFO    ] 2026-10-18 08:42:28
[2026-10-18 08:42:28,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:42:28,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:42:28,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:42:28,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:42:28,652.652 INFO    ] time= 18/10/2026 08:42:28
[2026-10-18 08:42:28,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:42:28,668.668 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:42:28,803.803 INFO    ] No existing commands found in stream
[2026-10-18 08:42:33,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:42:33,837.837 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-18 08:42:36,160.160 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 08:42:36,163.163 INFO    ] Checking for system updates...
[2026-10-18 08:42:36,199.199 INFO    ] 200
[2026-10-18 08:42:36,202.202 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:42:36,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:42:36,256.256 INFO    ] No update needed
[2026-10-18 08:42:36,259.259 INFO    ] Checking for camera pi updates...
[2026-10-18 08:42:36,296.296 INFO    ] 200
[2026-10-18 08:42:36,299.299 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:42:36,343.343 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:42:46,359.359 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:42:46,397.397 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:42:46,408.408 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:42:46,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:42:46,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:42:46,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:42:48,461.461 INFO    ] ================================================
[2026-10-18 08:42:48,476.476 INFO    ] Launching Daemon at Sun Oct 18 08:42:48 IST 2026
[2026-10-18 08:42:48,487.487 INFO    ] ================================================
[2026-10-18 08:42:49,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:42:49
[2026-10-18 08:42:49,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:42:49,907.907 INFO    ] Initializing speech engine...
[2026-10-18 08:42:49,916.916 INFO    ] 2026-10-18 08:42:49
[2026-10-18 08:42:50,165.165 INFO    ] 2026-10-18 08:42:50
[2026-10-18 08:42:50,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:42:50,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:42:50,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:42:50,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:42:50,666.666 INFO    ] time= 18/10/2026 08:42:50
[2026-10-18 08:42:50,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:42:50,744.744 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:42:50,921.921 INFO    ] No existing commands found in stream
[2026-10-18 08:42:55,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:42:55,954.954 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-18 08:42:57,533.533 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:42:57,536.536 INFO    ] Checking for system updates...
[2026-10-18 08:42:57,575.575 INFO    ] 200
[2026-10-18 08:42:57,578.578 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:42:57,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:42:57,638.638 INFO    ] No update needed
[2026-10-18 08:42:57,641.641 INFO    ] Checking for camera pi updates...
[2026-10-18 08:42:57,679.679 INFO    ] 200
[2026-10-18 08:42:57,682.682 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:42:57,722.722 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:43:07,739.739 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:43:07,778.778 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:43:07,789.789 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:43:07,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:43:07,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:43:07,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:43:09,844.844 INFO    ] ================================================
[2026-10-18 08:43:09,859.859 INFO    ] Launching Daemon at Sun Oct 18 08:43:09 IST 2026
[2026-10-18 08:43:09,869.869 INFO    ] ================================================
[2026-10-18 08:43:10,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:43:10
[2026-10-18 08:43:11,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:43:11,288.288 INFO    ] Initializing speech engine...
[2026-10-18 08:43:11,303.303 INFO    ] 2026-10-18 08:43:11
[2026-10-18 08:43:11,569.569 INFO    ] 2026-10-18 08:43:11
[2026-10-18 08:43:11,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:43:11,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:43:11,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:43:12,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:43:12,128.128 INFO    ] time= 18/10/2026 08:43:12
[2026-10-18 08:43:12,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:43:12,144.144 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:43:12,292.292 INFO    ] No existing commands found in stream
[2026-10-18 08:43:17,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:43:17,308.308 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-18 08:43:18,581.581 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:43:18,584.584 INFO    ] Checking for system updates...
[2026-10-18 08:43:18,619.619 INFO    ] 200
[2026-10-18 08:43:18,622.622 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:43:18,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:43:18,682.682 INFO    ] No update needed
[2026-10-18 08:43:18,685.685 INFO    ] Checking for camera pi updates...
[2026-10-18 08:43:18,718.718 INFO    ] 200
[2026-10-18 08:43:18,721.721 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:43:18,760.760 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:43:28,775.775 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:43:28,814.814 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:43:28,824.824 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:43:28,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:43:28,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:43:28,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:43:30,877.877 INFO    ] ================================================
[2026-10-18 08:43:30,893.893 INFO    ] Launching Daemon at Sun Oct 18 08:43:30 IST 2026
[2026-10-18 08:43:30,904.904 INFO    ] ================================================
[2026-10-18 08:43:31,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:43:31
[2026-10-18 08:43:32,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:43:32,407.407 INFO    ] Initializing speech engine...
[2026-10-18 08:43:32,414.414 INFO    ] 2026-10-18 08:43:32
[2026-10-18 08:43:32,695.695 INFO    ] 2026-10-18 08:43:32
[2026-10-18 08:43:32,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:43:32,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:43:32,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:43:33,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:43:33,244.244 INFO    ] time= 18/10/2026 08:43:33
[2026-10-18 08:43:33,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:43:33,285.285 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:43:33,441.441 INFO    ] No existing commands found in stream
[2026-10-18 08:43:38,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:43:38,456.456 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-18 08:43:39,248.248 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:43:39,251.251 INFO    ] Checking for system updates...
[2026-10-18 08:43:39,286.286 INFO    ] 200
[2026-10-18 08:43:39,289.289 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:43:39,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:43:39,350.350 INFO    ] No update needed
[2026-10-18 08:43:39,353.353 INFO    ] Checking for camera pi updates...
[2026-10-18 08:43:39,387.387 INFO    ] 200
[2026-10-18 08:43:39,390.390 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:43:39,436.436 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:43:49,452.452 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:43:49,488.488 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:43:49,498.498 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:43:49,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:43:49,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:43:49,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:43:51,551.551 INFO    ] ================================================
[2026-10-18 08:43:51,567.567 INFO    ] Launching Daemon at Sun Oct 18 08:43:51 IST 2026
[2026-10-18 08:43:51,579.579 INFO    ] ================================================
[2026-10-18 08:43:52,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:43:52
[2026-10-18 08:43:52,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:43:53,046.046 INFO    ] Initializing speech engine...
[2026-10-18 08:43:53,057.057 INFO    ] 2026-10-18 08:43:53
[2026-10-18 08:43:53,309.309 INFO    ] 2026-10-18 08:43:53
[2026-10-18 08:43:53,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:43:53,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:43:53,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:43:53,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:43:53,867.867 INFO    ] time= 18/10/2026 08:43:53
[2026-10-18 08:43:53,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:43:53,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:43:54,036.036 INFO    ] No existing commands found in stream
[2026-10-18 08:43:59,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:43:59,070.070 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-18 08:44:01,412.412 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:44:01,414.414 INFO    ] Checking for system updates...
[2026-10-18 08:44:01,450.450 INFO    ] 200
[2026-10-18 08:44:01,453.453 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:44:01,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:44:01,509.509 INFO    ] No update needed
[2026-10-18 08:44:01,511.511 INFO    ] Checking for camera pi updates...
[2026-10-18 08:44:01,545.545 INFO    ] 200
[2026-10-18 08:44:01,547.547 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:44:01,592.592 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:44:11,605.605 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:44:11,640.640 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:44:11,650.650 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:44:11,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:44:11,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:44:11,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:44:13,703.703 INFO    ] ================================================
[2026-10-18 08:44:13,723.723 INFO    ] Launching Daemon at Sun Oct 18 08:44:13 IST 2026
[2026-10-18 08:44:13,734.734 INFO    ] ================================================
[2026-10-18 08:44:14,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:44:14
[2026-10-18 08:44:14,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:44:15,189.189 INFO    ] Initializing speech engine...
[2026-10-18 08:44:15,200.200 INFO    ] 2026-10-18 08:44:15
[2026-10-18 08:44:15,451.451 INFO    ] 2026-10-18 08:44:15
[2026-10-18 08:44:15,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:44:15,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:44:15,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:44:15,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:44:15,940.940 INFO    ] time= 18/10/2026 08:44:15
[2026-10-18 08:44:15,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:44:16,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:44:16,126.126 INFO    ] No existing commands found in stream
[2026-10-18 08:44:21,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:44:21,145.145 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-18 08:44:23,394.394 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:44:23,397.397 INFO    ] Checking for system updates...
[2026-10-18 08:44:23,433.433 INFO    ] 200
[2026-10-18 08:44:23,435.435 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:44:23,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:44:23,490.490 INFO    ] No update needed
[2026-10-18 08:44:23,493.493 INFO    ] Checking for camera pi updates...
[2026-10-18 08:44:23,526.526 INFO    ] 200
[2026-10-18 08:44:23,529.529 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:44:23,569.569 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:44:33,582.582 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:44:33,618.618 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:44:33,628.628 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:44:33,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:44:33,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:44:33,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:44:35,680.680 INFO    ] ================================================
[2026-10-18 08:44:35,696.696 INFO    ] Launching Daemon at Sun Oct 18 08:44:35 IST 2026
[2026-10-18 08:44:35,707.707 INFO    ] ================================================
[2026-10-18 08:44:36,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:44:36
[2026-10-18 08:44:37,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:44:37,307.307 INFO    ] Initializing speech engine...
[2026-10-18 08:44:37,314.314 INFO    ] 2026-10-18 08:44:37
[2026-10-18 08:44:37,605.605 INFO    ] 2026-10-18 08:44:37
[2026-10-18 08:44:37,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:44:37,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:44:37,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:44:38,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:44:38,150.150 INFO    ] time= 18/10/2026 08:44:38
[2026-10-18 08:44:38,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:44:38,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:44:38,332.332 INFO    ] No existing commands found in stream
[2026-10-18 08:44:43,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:44:43,361.361 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-18 08:44:44,924.924 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:44:44,928.928 INFO    ] Checking for system updates...
[2026-10-18 08:44:44,964.964 INFO    ] 200
[2026-10-18 08:44:44,967.967 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:44:45,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:44:45,031.031 INFO    ] No update needed
[2026-10-18 08:44:45,033.033 INFO    ] Checking for camera pi updates...
[2026-10-18 08:44:45,068.068 INFO    ] 200
[2026-10-18 08:44:45,071.071 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:44:45,112.112 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:44:55,128.128 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:44:55,167.167 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:44:55,178.178 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:44:55,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:44:55,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:44:55,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:44:57,233.233 INFO    ] ================================================
[2026-10-18 08:44:57,249.249 INFO    ] Launching Daemon at Sun Oct 18 08:44:57 IST 2026
[2026-10-18 08:44:57,260.260 INFO    ] ================================================
[2026-10-18 08:44:57,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:44:57
[2026-10-18 08:44:58,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:44:58,705.705 INFO    ] Initializing speech engine...
[2026-10-18 08:44:58,716.716 INFO    ] 2026-10-18 08:44:58
[2026-10-18 08:44:58,974.974 INFO    ] 2026-10-18 08:44:58
[2026-10-18 08:44:59,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:44:59,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:44:59,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:44:59,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:44:59,518.518 INFO    ] time= 18/10/2026 08:44:59
[2026-10-18 08:44:59,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:44:59,542.542 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:44:59,670.670 INFO    ] No existing commands found in stream
[2026-10-18 08:45:04,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:45:04,691.691 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-18 08:45:09,058.058 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:45:09,061.061 INFO    ] Checking for system updates...
[2026-10-18 08:45:09,097.097 INFO    ] 200
[2026-10-18 08:45:09,099.099 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:45:09,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:45:09,153.153 INFO    ] No update needed
[2026-10-18 08:45:09,156.156 INFO    ] Checking for camera pi updates...
[2026-10-18 08:45:09,192.192 INFO    ] 200
[2026-10-18 08:45:09,194.194 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:45:09,237.237 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:45:19,253.253 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:45:19,289.289 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:45:19,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:45:19,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:45:19,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:45:19,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:45:21,352.352 INFO    ] ================================================
[2026-10-18 08:45:21,368.368 INFO    ] Launching Daemon at Sun Oct 18 08:45:21 IST 2026
[2026-10-18 08:45:21,379.379 INFO    ] ================================================
[2026-10-18 08:45:21,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:45:21
[2026-10-18 08:45:22,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:45:22,816.816 INFO    ] Initializing speech engine...
[2026-10-18 08:45:22,829.829 INFO    ] 2026-10-18 08:45:22
[2026-10-18 08:45:23,111.111 INFO    ] 2026-10-18 08:45:23
[2026-10-18 08:45:23,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:45:23,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:45:23,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:45:23,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:45:23,712.712 INFO    ] time= 18/10/2026 08:45:23
[2026-10-18 08:45:23,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:45:23,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:45:23,895.895 INFO    ] No existing commands found in stream
[2026-10-18 08:45:28,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:45:28,917.917 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-18 08:45:31,120.120 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:45:31,123.123 INFO    ] Checking for system updates...
[2026-10-18 08:45:31,159.159 INFO    ] 200
[2026-10-18 08:45:31,161.161 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:45:31,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:45:31,233.233 INFO    ] No update needed
[2026-10-18 08:45:31,236.236 INFO    ] Checking for camera pi updates...
[2026-10-18 08:45:31,269.269 INFO    ] 200
[2026-10-18 08:45:31,272.272 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:45:31,312.312 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:45:41,328.328 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:45:41,367.367 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:45:41,377.377 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:45:41,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:45:41,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:45:41,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:45:43,432.432 INFO    ] ================================================
[2026-10-18 08:45:43,448.448 INFO    ] Launching Daemon at Sun Oct 18 08:45:43 IST 2026
[2026-10-18 08:45:43,459.459 INFO    ] ================================================
[2026-10-18 08:45:44,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:45:44
[2026-10-18 08:45:44,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:45:44,871.871 INFO    ] Initializing speech engine...
[2026-10-18 08:45:44,890.890 INFO    ] 2026-10-18 08:45:44
[2026-10-18 08:45:45,163.163 INFO    ] 2026-10-18 08:45:45
[2026-10-18 08:45:45,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:45:45,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:45:45,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:45:45,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:45:45,748.748 INFO    ] time= 18/10/2026 08:45:45
[2026-10-18 08:45:45,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:45:45,777.777 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:45:45,936.936 INFO    ] No existing commands found in stream
[2026-10-18 08:45:50,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:45:50,952.952 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-18 08:45:52,703.703 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 08:45:52,706.706 INFO    ] Checking for system updates...
[2026-10-18 08:45:52,741.741 INFO    ] 200
[2026-10-18 08:45:52,743.743 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:45:52,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:45:52,802.802 INFO    ] No update needed
[2026-10-18 08:45:52,804.804 INFO    ] Checking for camera pi updates...
[2026-10-18 08:45:52,838.838 INFO    ] 200
[2026-10-18 08:45:52,840.840 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:45:52,883.883 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:46:02,897.897 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:46:02,932.932 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:46:02,942.942 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:46:02,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:46:02,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:46:02,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:46:05,994.994 INFO    ] ================================================
[2026-10-18 08:46:05,010.010 INFO    ] Launching Daemon at Sun Oct 18 08:46:05 IST 2026
[2026-10-18 08:46:05,022.022 INFO    ] ================================================
[2026-10-18 08:46:05,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:46:05
[2026-10-18 08:46:06,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:46:06,474.474 INFO    ] Initializing speech engine...
[2026-10-18 08:46:06,480.480 INFO    ] 2026-10-18 08:46:06
[2026-10-18 08:46:06,740.740 INFO    ] 2026-10-18 08:46:06
[2026-10-18 08:46:06,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:46:07,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:46:07,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:46:07,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:46:07,278.278 INFO    ] time= 18/10/2026 08:46:07
[2026-10-18 08:46:07,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:46:07,366.366 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:46:07,497.497 INFO    ] No existing commands found in stream
[2026-10-18 08:46:12,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:46:12,522.522 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-18 08:46:14,730.730 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:46:14,732.732 INFO    ] Checking for system updates...
[2026-10-18 08:46:14,768.768 INFO    ] 200
[2026-10-18 08:46:14,770.770 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:46:14,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:46:14,825.825 INFO    ] No update needed
[2026-10-18 08:46:14,827.827 INFO    ] Checking for camera pi updates...
[2026-10-18 08:46:14,860.860 INFO    ] 200
[2026-10-18 08:46:14,863.863 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:46:14,903.903 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:46:24,918.918 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:46:24,953.953 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:46:24,962.962 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:46:24,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:46:24,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:46:24,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:46:27,016.016 INFO    ] ================================================
[2026-10-18 08:46:27,032.032 INFO    ] Launching Daemon at Sun Oct 18 08:46:27 IST 2026
[2026-10-18 08:46:27,043.043 INFO    ] ================================================
[2026-10-18 08:46:27,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:46:27
[2026-10-18 08:46:28,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:46:28,620.620 INFO    ] Initializing speech engine...
[2026-10-18 08:46:28,630.630 INFO    ] 2026-10-18 08:46:28
[2026-10-18 08:46:28,924.924 INFO    ] 2026-10-18 08:46:28
[2026-10-18 08:46:28,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:46:29,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:46:29,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:46:29,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:46:29,518.518 INFO    ] time= 18/10/2026 08:46:29
[2026-10-18 08:46:29,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:46:29,539.539 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:46:29,684.684 INFO    ] No existing commands found in stream
[2026-10-18 08:46:34,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:46:34,713.713 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-18 08:46:35,803.803 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:46:35,806.806 INFO    ] Checking for system updates...
[2026-10-18 08:46:35,841.841 INFO    ] 200
[2026-10-18 08:46:35,843.843 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:46:35,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:46:35,897.897 INFO    ] No update needed
[2026-10-18 08:46:35,900.900 INFO    ] Checking for camera pi updates...
[2026-10-18 08:46:35,933.933 INFO    ] 200
[2026-10-18 08:46:35,935.935 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:46:35,976.976 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:46:45,990.990 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:46:46,025.025 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:46:46,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:46:46,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:46:46,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:46:46,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:46:48,087.087 INFO    ] ================================================
[2026-10-18 08:46:48,103.103 INFO    ] Launching Daemon at Sun Oct 18 08:46:48 IST 2026
[2026-10-18 08:46:48,115.115 INFO    ] ================================================
[2026-10-18 08:46:48,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:46:48
[2026-10-18 08:46:49,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:46:49,568.568 INFO    ] Initializing speech engine...
[2026-10-18 08:46:49,579.579 INFO    ] 2026-10-18 08:46:49
[2026-10-18 08:46:49,867.867 INFO    ] 2026-10-18 08:46:49
[2026-10-18 08:46:49,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:46:50,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:46:50,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:46:50,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:46:50,362.362 INFO    ] time= 18/10/2026 08:46:50
[2026-10-18 08:46:50,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:46:50,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:46:50,609.609 INFO    ] No existing commands found in stream
[2026-10-18 08:46:55,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:46:55,626.626 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-18 08:46:56,933.933 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 08:46:56,935.935 INFO    ] Checking for system updates...
[2026-10-18 08:46:56,970.970 INFO    ] 200
[2026-10-18 08:46:56,973.973 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:46:57,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:46:57,033.033 INFO    ] No update needed
[2026-10-18 08:46:57,036.036 INFO    ] Checking for camera pi updates...
[2026-10-18 08:46:57,069.069 INFO    ] 200
[2026-10-18 08:46:57,071.071 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:46:57,111.111 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:47:07,124.124 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:47:07,159.159 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:47:07,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:47:07,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:47:07,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:47:07,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:47:09,222.222 INFO    ] ================================================
[2026-10-18 08:47:09,239.239 INFO    ] Launching Daemon at Sun Oct 18 08:47:09 IST 2026
[2026-10-18 08:47:09,250.250 INFO    ] ================================================
[2026-10-18 08:47:09,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:47:09
[2026-10-18 08:47:10,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:47:10,702.702 INFO    ] Initializing speech engine...
[2026-10-18 08:47:10,718.718 INFO    ] 2026-10-18 08:47:10
[2026-10-18 08:47:11,007.007 INFO    ] 2026-10-18 08:47:10
[2026-10-18 08:47:11,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:47:11,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:47:11,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:47:11,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:47:11,436.436 INFO    ] time= 18/10/2026 08:47:11
[2026-10-18 08:47:11,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:47:11,512.512 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:47:11,641.641 INFO    ] No existing commands found in stream
[2026-10-18 08:47:16,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:47:16,671.671 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-18 08:47:18,143.143 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:47:18,146.146 INFO    ] Checking for system updates...
[2026-10-18 08:47:18,187.187 INFO    ] 200
[2026-10-18 08:47:18,189.189 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:47:18,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:47:18,251.251 INFO    ] No update needed
[2026-10-18 08:47:18,253.253 INFO    ] Checking for camera pi updates...
[2026-10-18 08:47:18,287.287 INFO    ] 200
[2026-10-18 08:47:18,289.289 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:47:18,330.330 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:47:28,346.346 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:47:28,387.387 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:47:28,398.398 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:47:28,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:47:28,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:47:28,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:47:30,455.455 INFO    ] ================================================
[2026-10-18 08:47:30,470.470 INFO    ] Launching Daemon at Sun Oct 18 08:47:30 IST 2026
[2026-10-18 08:47:30,481.481 INFO    ] ================================================
[2026-10-18 08:47:31,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:47:31
[2026-10-18 08:47:31,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:47:31,995.995 INFO    ] Initializing speech engine...
[2026-10-18 08:47:32,010.010 INFO    ] 2026-10-18 08:47:31
[2026-10-18 08:47:32,322.322 INFO    ] 2026-10-18 08:47:32
[2026-10-18 08:47:32,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:47:32,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:47:32,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:47:32,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:47:32,782.782 INFO    ] time= 18/10/2026 08:47:32
[2026-10-18 08:47:32,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:47:32,803.803 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:47:32,940.940 INFO    ] No existing commands found in stream
[2026-10-18 08:47:37,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:47:37,961.961 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-18 08:47:40,974.974 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:47:40,976.976 INFO    ] Checking for system updates...
[2026-10-18 08:47:41,017.017 INFO    ] 200
[2026-10-18 08:47:41,019.019 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:47:41,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:47:41,082.082 INFO    ] No update needed
[2026-10-18 08:47:41,084.084 INFO    ] Checking for camera pi updates...
[2026-10-18 08:47:41,118.118 INFO    ] 200
[2026-10-18 08:47:41,121.121 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:47:41,167.167 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:47:51,183.183 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:47:51,218.218 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:47:51,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:47:51,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:47:51,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:47:51,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:47:53,283.283 INFO    ] ================================================
[2026-10-18 08:47:53,299.299 INFO    ] Launching Daemon at Sun Oct 18 08:47:53 IST 2026
[2026-10-18 08:47:53,309.309 INFO    ] ================================================
[2026-10-18 08:47:53,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:47:53
[2026-10-18 08:47:54,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:47:54,765.765 INFO    ] Initializing speech engine...
[2026-10-18 08:47:54,774.774 INFO    ] 2026-10-18 08:47:54
[2026-10-18 08:47:55,024.024 INFO    ] 2026-10-18 08:47:55
[2026-10-18 08:47:55,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:47:55,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:47:55,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:47:55,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:47:55,580.580 INFO    ] time= 18/10/2026 08:47:55
[2026-10-18 08:47:55,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:47:55,607.607 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:47:55,734.734 INFO    ] No existing commands found in stream
[2026-10-18 08:48:00,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:48:00,752.752 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-18 08:48:04,940.940 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:48:04,943.943 INFO    ] Checking for system updates...
[2026-10-18 08:48:04,979.979 INFO    ] 200
[2026-10-18 08:48:04,982.982 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:48:05,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:48:05,037.037 INFO    ] No update needed
[2026-10-18 08:48:05,039.039 INFO    ] Checking for camera pi updates...
[2026-10-18 08:48:05,077.077 INFO    ] 200
[2026-10-18 08:48:05,079.079 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:48:05,125.125 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:48:15,141.141 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:48:15,176.176 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:48:15,186.186 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:48:15,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:48:15,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:48:15,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:48:17,241.241 INFO    ] ================================================
[2026-10-18 08:48:17,256.256 INFO    ] Launching Daemon at Sun Oct 18 08:48:17 IST 2026
[2026-10-18 08:48:17,267.267 INFO    ] ================================================
[2026-10-18 08:48:17,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:48:17
[2026-10-18 08:48:18,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:48:18,840.840 INFO    ] Initializing speech engine...
[2026-10-18 08:48:18,853.853 INFO    ] 2026-10-18 08:48:18
[2026-10-18 08:48:19,137.137 INFO    ] 2026-10-18 08:48:19
[2026-10-18 08:48:19,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:48:19,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:48:19,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:48:19,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:48:19,677.677 INFO    ] time= 18/10/2026 08:48:19
[2026-10-18 08:48:19,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:48:19,726.726 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:48:19,832.832 INFO    ] No existing commands found in stream
[2026-10-18 08:48:24,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:48:24,865.865 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-18 08:48:27,851.851 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:48:27,854.854 INFO    ] Checking for system updates...
[2026-10-18 08:48:27,891.891 INFO    ] 200
[2026-10-18 08:48:27,894.894 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:48:27,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:48:27,951.951 INFO    ] No update needed
[2026-10-18 08:48:27,953.953 INFO    ] Checking for camera pi updates...
[2026-10-18 08:48:27,988.988 INFO    ] 200
[2026-10-18 08:48:27,991.991 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:48:28,032.032 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:48:38,047.047 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:48:38,088.088 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:48:38,099.099 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:48:38,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:48:38,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:48:38,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:48:40,156.156 INFO    ] ================================================
[2026-10-18 08:48:40,172.172 INFO    ] Launching Daemon at Sun Oct 18 08:48:40 IST 2026
[2026-10-18 08:48:40,183.183 INFO    ] ================================================
[2026-10-18 08:48:40,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:48:40
[2026-10-18 08:48:41,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:48:41,643.643 INFO    ] Initializing speech engine...
[2026-10-18 08:48:41,653.653 INFO    ] 2026-10-18 08:48:41
[2026-10-18 08:48:41,910.910 INFO    ] 2026-10-18 08:48:41
[2026-10-18 08:48:41,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:48:42,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:48:42,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:48:42,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:48:42,414.414 INFO    ] time= 18/10/2026 08:48:42
[2026-10-18 08:48:42,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:48:42,485.485 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:48:42,620.620 INFO    ] No existing commands found in stream
[2026-10-18 08:48:47,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:48:47,652.652 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-18 08:48:51,440.440 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:48:51,443.443 INFO    ] Checking for system updates...
[2026-10-18 08:48:51,486.486 INFO    ] 200
[2026-10-18 08:48:51,489.489 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:48:51,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:48:51,555.555 INFO    ] No update needed
[2026-10-18 08:48:51,558.558 INFO    ] Checking for camera pi updates...
[2026-10-18 08:48:51,599.599 INFO    ] 200
[2026-10-18 08:48:51,602.602 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:48:51,654.654 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:49:01,669.669 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:49:01,718.718 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:49:01,733.733 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:49:01,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:49:01,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:49:01,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:49:03,804.804 INFO    ] ================================================
[2026-10-18 08:49:03,819.819 INFO    ] Launching Daemon at Sun Oct 18 08:49:03 IST 2026
[2026-10-18 08:49:03,829.829 INFO    ] ================================================
[2026-10-18 08:49:04,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:49:04
[2026-10-18 08:49:05,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:49:05,297.297 INFO    ] Initializing speech engine...
[2026-10-18 08:49:05,305.305 INFO    ] 2026-10-18 08:49:05
[2026-10-18 08:49:05,565.565 INFO    ] 2026-10-18 08:49:05
[2026-10-18 08:49:05,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:49:05,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:49:05,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:49:05,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:49:05,979.979 INFO    ] time= 18/10/2026 08:49:05
[2026-10-18 08:49:05,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:49:06,046.046 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:49:06,179.179 INFO    ] No existing commands found in stream
[2026-10-18 08:49:11,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:49:11,207.207 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-18 08:49:12,503.503 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 08:49:12,506.506 INFO    ] Checking for system updates...
[2026-10-18 08:49:12,548.548 INFO    ] 200
[2026-10-18 08:49:12,551.551 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:49:12,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:49:12,613.613 INFO    ] No update needed
[2026-10-18 08:49:12,615.615 INFO    ] Checking for camera pi updates...
[2026-10-18 08:49:12,655.655 INFO    ] 200
[2026-10-18 08:49:12,658.658 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:49:12,709.709 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:49:22,722.722 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:49:22,759.759 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:49:22,769.769 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:49:22,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:49:22,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:49:22,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:49:24,821.821 INFO    ] ================================================
[2026-10-18 08:49:24,837.837 INFO    ] Launching Daemon at Sun Oct 18 08:49:24 IST 2026
[2026-10-18 08:49:24,848.848 INFO    ] ================================================
[2026-10-18 08:49:25,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:49:25
[2026-10-18 08:49:26,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:49:26,558.558 INFO    ] Initializing speech engine...
[2026-10-18 08:49:26,564.564 INFO    ] 2026-10-18 08:49:26
[2026-10-18 08:49:26,883.883 INFO    ] 2026-10-18 08:49:26
[2026-10-18 08:49:26,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:49:27,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:49:27,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:49:27,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:49:27,427.427 INFO    ] time= 18/10/2026 08:49:27
[2026-10-18 08:49:27,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:49:27,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:49:27,571.571 INFO    ] No existing commands found in stream
[2026-10-18 08:49:32,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:49:32,605.605 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-18 08:49:37,047.047 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:49:37,050.050 INFO    ] Checking for system updates...
[2026-10-18 08:49:37,088.088 INFO    ] 200
[2026-10-18 08:49:37,091.091 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:49:37,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:49:37,147.147 INFO    ] No update needed
[2026-10-18 08:49:37,150.150 INFO    ] Checking for camera pi updates...
[2026-10-18 08:49:37,186.186 INFO    ] 200
[2026-10-18 08:49:37,189.189 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:49:37,231.231 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:49:47,246.246 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73dee150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:49:47,282.282 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:49:47,292.292 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:49:47,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:49:47,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:49:47,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:49:49,346.346 INFO    ] ================================================
[2026-10-18 08:49:49,361.361 INFO    ] Launching Daemon at Sun Oct 18 08:49:49 IST 2026
[2026-10-18 08:49:49,373.373 INFO    ] ================================================
[2026-10-18 08:49:49,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:49:49
[2026-10-18 08:49:50,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:49:50,790.790 INFO    ] Initializing speech engine...
[2026-10-18 08:49:50,797.797 INFO    ] 2026-10-18 08:49:50
[2026-10-18 08:49:51,099.099 INFO    ] 2026-10-18 08:49:51
[2026-10-18 08:49:51,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:49:51,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:49:51,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:49:51,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:49:51,535.535 INFO    ] time= 18/10/2026 08:49:51
[2026-10-18 08:49:51,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:49:51,551.551 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:49:51,629.629 INFO    ] No existing commands found in stream
[2026-10-18 08:49:56,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:49:56,667.667 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-18 08:49:59,549.549 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:49:59,552.552 INFO    ] Checking for system updates...
[2026-10-18 08:49:59,593.593 INFO    ] 200
[2026-10-18 08:49:59,595.595 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:49:59,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:49:59,651.651 INFO    ] No update needed
[2026-10-18 08:49:59,653.653 INFO    ] Checking for camera pi updates...
[2026-10-18 08:49:59,687.687 INFO    ] 200
[2026-10-18 08:49:59,689.689 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:49:59,730.730 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:50:09,744.744 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:50:09,779.779 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:50:09,789.789 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:50:09,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:50:09,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:50:09,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:50:11,841.841 INFO    ] ================================================
[2026-10-18 08:50:11,856.856 INFO    ] Launching Daemon at Sun Oct 18 08:50:11 IST 2026
[2026-10-18 08:50:11,867.867 INFO    ] ================================================
[2026-10-18 08:50:12,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:50:12
[2026-10-18 08:50:13,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:50:13,440.440 INFO    ] Initializing speech engine...
[2026-10-18 08:50:13,452.452 INFO    ] 2026-10-18 08:50:13
[2026-10-18 08:50:13,759.759 INFO    ] 2026-10-18 08:50:13
[2026-10-18 08:50:13,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:50:14,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:50:14,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:50:14,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:50:14,282.282 INFO    ] time= 18/10/2026 08:50:14
[2026-10-18 08:50:14,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:50:14,321.321 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:50:14,442.442 INFO    ] No existing commands found in stream
[2026-10-18 08:50:19,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:50:19,477.477 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-18 08:50:23,746.746 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:50:23,749.749 INFO    ] Checking for system updates...
[2026-10-18 08:50:23,786.786 INFO    ] 200
[2026-10-18 08:50:23,789.789 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:50:23,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:50:23,845.845 INFO    ] No update needed
[2026-10-18 08:50:23,848.848 INFO    ] Checking for camera pi updates...
[2026-10-18 08:50:23,882.882 INFO    ] 200
[2026-10-18 08:50:23,885.885 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:50:23,927.927 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:50:33,941.941 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:50:33,981.981 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:50:33,992.992 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:50:33,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:50:34,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:50:34,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:50:36,047.047 INFO    ] ================================================
[2026-10-18 08:50:36,063.063 INFO    ] Launching Daemon at Sun Oct 18 08:50:36 IST 2026
[2026-10-18 08:50:36,075.075 INFO    ] ================================================
[2026-10-18 08:50:36,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:50:36
[2026-10-18 08:50:37,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:50:37,691.691 INFO    ] Initializing speech engine...
[2026-10-18 08:50:37,705.705 INFO    ] 2026-10-18 08:50:37
[2026-10-18 08:50:37,988.988 INFO    ] 2026-10-18 08:50:37
[2026-10-18 08:50:38,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:50:38,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:50:38,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:50:38,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:50:38,564.564 INFO    ] time= 18/10/2026 08:50:38
[2026-10-18 08:50:38,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:50:38,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:50:38,784.784 INFO    ] No existing commands found in stream
[2026-10-18 08:50:43,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:50:43,819.819 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-18 08:50:45,115.115 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:50:45,118.118 INFO    ] Checking for system updates...
[2026-10-18 08:50:45,154.154 INFO    ] 200
[2026-10-18 08:50:45,157.157 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:50:45,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:50:45,211.211 INFO    ] No update needed
[2026-10-18 08:50:45,213.213 INFO    ] Checking for camera pi updates...
[2026-10-18 08:50:45,247.247 INFO    ] 200
[2026-10-18 08:50:45,250.250 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:50:45,290.290 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:50:55,306.306 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:50:55,340.340 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:50:55,350.350 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:50:55,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:50:55,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:50:55,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:50:57,402.402 INFO    ] ================================================
[2026-10-18 08:50:57,417.417 INFO    ] Launching Daemon at Sun Oct 18 08:50:57 IST 2026
[2026-10-18 08:50:57,428.428 INFO    ] ================================================
[2026-10-18 08:50:58,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:50:58
[2026-10-18 08:50:58,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:50:59,051.051 INFO    ] Initializing speech engine...
[2026-10-18 08:50:59,062.062 INFO    ] 2026-10-18 08:50:59
[2026-10-18 08:50:59,372.372 INFO    ] 2026-10-18 08:50:59
[2026-10-18 08:50:59,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:50:59,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:50:59,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:50:59,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:50:59,877.877 INFO    ] time= 18/10/2026 08:50:59
[2026-10-18 08:50:59,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:50:59,930.930 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:51:00,066.066 INFO    ] No existing commands found in stream
[2026-10-18 08:51:05,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:51:05,099.099 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-18 08:51:07,617.617 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:51:07,619.619 INFO    ] Checking for system updates...
[2026-10-18 08:51:07,680.680 INFO    ] 200
[2026-10-18 08:51:07,683.683 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 08:51:07,687.687 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-18 08:51:07,690.690 INFO    ] Checking for camera pi updates...
[2026-10-18 08:51:07,737.737 INFO    ] 200
[2026-10-18 08:51:07,740.740 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 08:51:07,742.742 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-18 08:51:07,745.745 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:51:07,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:51:07,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:51:07,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:51:09,801.801 INFO    ] ================================================
[2026-10-18 08:51:09,818.818 INFO    ] Launching Daemon at Sun Oct 18 08:51:09 IST 2026
[2026-10-18 08:51:09,829.829 INFO    ] ================================================
[2026-10-18 08:51:10,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:51:10
[2026-10-18 08:51:11,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:51:11,415.415 INFO    ] Initializing speech engine...
[2026-10-18 08:51:11,429.429 INFO    ] 2026-10-18 08:51:11
[2026-10-18 08:51:11,712.712 INFO    ] 2026-10-18 08:51:11
[2026-10-18 08:51:11,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:51:12,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:51:12,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:51:12,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:51:12,242.242 INFO    ] time= 18/10/2026 08:51:12
[2026-10-18 08:51:12,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:51:12,289.289 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:51:12,396.396 INFO    ] No existing commands found in stream
[2026-10-18 08:51:17,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:51:17,411.411 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-18 08:51:20,547.547 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:51:20,550.550 INFO    ] Checking for system updates...
[2026-10-18 08:51:20,589.589 INFO    ] 200
[2026-10-18 08:51:20,592.592 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:51:20,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:51:20,648.648 INFO    ] No update needed
[2026-10-18 08:51:20,650.650 INFO    ] Checking for camera pi updates...
[2026-10-18 08:51:20,684.684 INFO    ] 200
[2026-10-18 08:51:20,687.687 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:51:20,729.729 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:51:30,745.745 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:51:30,784.784 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:51:30,795.795 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:51:30,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:51:30,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:51:30,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:51:32,850.850 INFO    ] ================================================
[2026-10-18 08:51:32,866.866 INFO    ] Launching Daemon at Sun Oct 18 08:51:32 IST 2026
[2026-10-18 08:51:32,877.877 INFO    ] ================================================
[2026-10-18 08:51:33,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:51:33
[2026-10-18 08:51:34,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:51:34,291.291 INFO    ] Initializing speech engine...
[2026-10-18 08:51:34,306.306 INFO    ] 2026-10-18 08:51:34
[2026-10-18 08:51:34,585.585 INFO    ] 2026-10-18 08:51:34
[2026-10-18 08:51:34,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:51:34,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:51:34,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:51:34,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:51:34,995.995 INFO    ] time= 18/10/2026 08:51:34
[2026-10-18 08:51:35,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:51:35,049.049 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:51:35,168.168 INFO    ] No existing commands found in stream
[2026-10-18 08:51:40,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:51:40,190.190 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-18 08:51:41,827.827 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 08:51:41,829.829 INFO    ] Checking for system updates...
[2026-10-18 08:51:41,866.866 INFO    ] 200
[2026-10-18 08:51:41,868.868 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:51:41,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:51:41,926.926 INFO    ] No update needed
[2026-10-18 08:51:41,929.929 INFO    ] Checking for camera pi updates...
[2026-10-18 08:51:41,962.962 INFO    ] 200
[2026-10-18 08:51:41,965.965 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:51:42,012.012 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:51:52,027.027 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:51:52,062.062 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:51:52,072.072 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:51:52,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:51:52,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:51:52,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:51:54,125.125 INFO    ] ================================================
[2026-10-18 08:51:54,140.140 INFO    ] Launching Daemon at Sun Oct 18 08:51:54 IST 2026
[2026-10-18 08:51:54,151.151 INFO    ] ================================================
[2026-10-18 08:51:54,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:51:54
[2026-10-18 08:51:55,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:51:55,561.561 INFO    ] Initializing speech engine...
[2026-10-18 08:51:55,569.569 INFO    ] 2026-10-18 08:51:55
[2026-10-18 08:51:55,859.859 INFO    ] 2026-10-18 08:51:55
[2026-10-18 08:51:55,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:51:56,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:51:56,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:51:56,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:51:56,377.377 INFO    ] time= 18/10/2026 08:51:56
[2026-10-18 08:51:56,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:51:56,489.489 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:51:56,613.613 INFO    ] No existing commands found in stream
[2026-10-18 08:52:01,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:52:01,642.642 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-18 08:52:03,006.006 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 08:52:03,009.009 INFO    ] Checking for system updates...
[2026-10-18 08:52:03,045.045 INFO    ] 200
[2026-10-18 08:52:03,048.048 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:52:03,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:52:03,111.111 INFO    ] No update needed
[2026-10-18 08:52:03,113.113 INFO    ] Checking for camera pi updates...
[2026-10-18 08:52:03,150.150 INFO    ] 200
[2026-10-18 08:52:03,152.152 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:52:03,201.201 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:52:13,217.217 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:52:13,252.252 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:52:13,262.262 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:52:13,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:52:13,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:52:13,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:52:15,322.322 INFO    ] ================================================
[2026-10-18 08:52:15,338.338 INFO    ] Launching Daemon at Sun Oct 18 08:52:15 IST 2026
[2026-10-18 08:52:15,348.348 INFO    ] ================================================
[2026-10-18 08:52:15,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:52:15
[2026-10-18 08:52:16,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:52:16,773.773 INFO    ] Initializing speech engine...
[2026-10-18 08:52:16,786.786 INFO    ] 2026-10-18 08:52:16
[2026-10-18 08:52:17,070.070 INFO    ] 2026-10-18 08:52:17
[2026-10-18 08:52:17,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:52:17,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:52:17,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:52:17,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:52:17,564.564 INFO    ] time= 18/10/2026 08:52:17
[2026-10-18 08:52:17,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:52:17,672.672 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:52:17,773.773 INFO    ] No existing commands found in stream
[2026-10-18 08:52:22,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:52:22,788.788 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-18 08:52:23,917.917 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:52:23,920.920 INFO    ] Checking for system updates...
[2026-10-18 08:52:23,958.958 INFO    ] 200
[2026-10-18 08:52:23,961.961 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:52:24,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:52:24,025.025 INFO    ] No update needed
[2026-10-18 08:52:24,027.027 INFO    ] Checking for camera pi updates...
[2026-10-18 08:52:24,065.065 INFO    ] 200
[2026-10-18 08:52:24,067.067 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:52:24,108.108 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:52:34,122.122 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:52:34,158.158 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:52:34,168.168 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:52:34,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:52:34,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:52:34,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:52:36,221.221 INFO    ] ================================================
[2026-10-18 08:52:36,236.236 INFO    ] Launching Daemon at Sun Oct 18 08:52:36 IST 2026
[2026-10-18 08:52:36,247.247 INFO    ] ================================================
[2026-10-18 08:52:36,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:52:36
[2026-10-18 08:52:37,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:52:37,717.717 INFO    ] Initializing speech engine...
[2026-10-18 08:52:37,722.722 INFO    ] 2026-10-18 08:52:37
[2026-10-18 08:52:37,976.976 INFO    ] 2026-10-18 08:52:37
[2026-10-18 08:52:38,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:52:38,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:52:38,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:52:38,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:52:38,533.533 INFO    ] time= 18/10/2026 08:52:38
[2026-10-18 08:52:38,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:52:38,558.558 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:52:38,694.694 INFO    ] No existing commands found in stream
[2026-10-18 08:52:43,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:52:43,728.728 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-18 08:52:45,797.797 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:52:45,800.800 INFO    ] Checking for system updates...
[2026-10-18 08:52:45,835.835 INFO    ] 200
[2026-10-18 08:52:45,838.838 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:52:45,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:52:45,892.892 INFO    ] No update needed
[2026-10-18 08:52:45,894.894 INFO    ] Checking for camera pi updates...
[2026-10-18 08:52:45,928.928 INFO    ] 200
[2026-10-18 08:52:45,930.930 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:52:45,976.976 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:52:55,991.991 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:52:56,027.027 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:52:56,037.037 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:52:56,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:52:56,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:52:56,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:52:58,089.089 INFO    ] ================================================
[2026-10-18 08:52:58,104.104 INFO    ] Launching Daemon at Sun Oct 18 08:52:58 IST 2026
[2026-10-18 08:52:58,114.114 INFO    ] ================================================
[2026-10-18 08:52:58,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:52:58
[2026-10-18 08:52:59,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:52:59,677.677 INFO    ] Initializing speech engine...
[2026-10-18 08:52:59,690.690 INFO    ] 2026-10-18 08:52:59
[2026-10-18 08:52:59,955.955 INFO    ] 2026-10-18 08:52:59
[2026-10-18 08:53:00,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:53:00,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:53:00,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:53:00,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:53:00,493.493 INFO    ] time= 18/10/2026 08:53:00
[2026-10-18 08:53:00,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:53:00,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:53:00,659.659 INFO    ] No existing commands found in stream
[2026-10-18 08:53:05,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:53:05,679.679 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-18 08:53:07,359.359 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 08:53:07,362.362 INFO    ] Checking for system updates...
[2026-10-18 08:53:07,401.401 INFO    ] 200
[2026-10-18 08:53:07,404.404 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:53:07,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:53:07,459.459 INFO    ] No update needed
[2026-10-18 08:53:07,462.462 INFO    ] Checking for camera pi updates...
[2026-10-18 08:53:07,495.495 INFO    ] 200
[2026-10-18 08:53:07,497.497 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:53:07,543.543 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:53:17,558.558 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:53:17,594.594 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:53:17,604.604 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:53:17,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:53:17,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:53:17,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:53:19,657.657 INFO    ] ================================================
[2026-10-18 08:53:19,672.672 INFO    ] Launching Daemon at Sun Oct 18 08:53:19 IST 2026
[2026-10-18 08:53:19,683.683 INFO    ] ================================================
[2026-10-18 08:53:20,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:53:20
[2026-10-18 08:53:20,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:53:21,094.094 INFO    ] Initializing speech engine...
[2026-10-18 08:53:21,100.100 INFO    ] 2026-10-18 08:53:21
[2026-10-18 08:53:21,400.400 INFO    ] 2026-10-18 08:53:21
[2026-10-18 08:53:21,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:53:21,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:53:21,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:53:21,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:53:21,825.825 INFO    ] time= 18/10/2026 08:53:21
[2026-10-18 08:53:21,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:53:21,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:53:21,986.986 INFO    ] No existing commands found in stream
[2026-10-18 08:53:27,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:53:27,014.014 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-18 08:53:29,207.207 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:53:29,209.209 INFO    ] Checking for system updates...
[2026-10-18 08:53:29,245.245 INFO    ] 200
[2026-10-18 08:53:29,248.248 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:53:29,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:53:29,302.302 INFO    ] No update needed
[2026-10-18 08:53:29,304.304 INFO    ] Checking for camera pi updates...
[2026-10-18 08:53:29,342.342 INFO    ] 200
[2026-10-18 08:53:29,344.344 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:53:29,385.385 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:53:39,401.401 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:53:39,441.441 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:53:39,452.452 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:53:39,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:53:39,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:53:39,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:53:41,508.508 INFO    ] ================================================
[2026-10-18 08:53:41,524.524 INFO    ] Launching Daemon at Sun Oct 18 08:53:41 IST 2026
[2026-10-18 08:53:41,535.535 INFO    ] ================================================
[2026-10-18 08:53:42,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:53:42
[2026-10-18 08:53:42,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:53:42,992.992 INFO    ] Initializing speech engine...
[2026-10-18 08:53:42,999.999 INFO    ] 2026-10-18 08:53:42
[2026-10-18 08:53:43,259.259 INFO    ] 2026-10-18 08:53:43
[2026-10-18 08:53:43,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:53:43,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:53:43,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:53:43,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:53:43,806.806 INFO    ] time= 18/10/2026 08:53:43
[2026-10-18 08:53:43,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:53:43,832.832 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:53:43,963.963 INFO    ] No existing commands found in stream
[2026-10-18 08:53:48,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:53:48,991.991 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-18 08:53:52,270.270 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:53:52,273.273 INFO    ] Checking for system updates...
[2026-10-18 08:53:52,310.310 INFO    ] 200
[2026-10-18 08:53:52,312.312 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:53:52,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:53:52,369.369 INFO    ] No update needed
[2026-10-18 08:53:52,372.372 INFO    ] Checking for camera pi updates...
[2026-10-18 08:53:52,406.406 INFO    ] 200
[2026-10-18 08:53:52,409.409 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:53:52,450.450 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:54:02,468.468 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:54:02,514.514 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:54:02,527.527 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:54:02,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:54:02,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:54:02,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:54:04,588.588 INFO    ] ================================================
[2026-10-18 08:54:04,603.603 INFO    ] Launching Daemon at Sun Oct 18 08:54:04 IST 2026
[2026-10-18 08:54:04,614.614 INFO    ] ================================================
[2026-10-18 08:54:05,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:54:05
[2026-10-18 08:54:05,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:54:06,247.247 INFO    ] Initializing speech engine...
[2026-10-18 08:54:06,260.260 INFO    ] 2026-10-18 08:54:06
[2026-10-18 08:54:06,576.576 INFO    ] 2026-10-18 08:54:06
[2026-10-18 08:54:06,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:54:06,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:54:06,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:54:07,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:54:07,111.111 INFO    ] time= 18/10/2026 08:54:07
[2026-10-18 08:54:07,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:54:07,148.148 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:54:07,265.265 INFO    ] No existing commands found in stream
[2026-10-18 08:54:12,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:54:12,293.293 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-18 08:54:13,526.526 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:54:13,529.529 INFO    ] Checking for system updates...
[2026-10-18 08:54:13,566.566 INFO    ] 200
[2026-10-18 08:54:13,569.569 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:54:13,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:54:13,632.632 INFO    ] No update needed
[2026-10-18 08:54:13,635.635 INFO    ] Checking for camera pi updates...
[2026-10-18 08:54:13,673.673 INFO    ] 200
[2026-10-18 08:54:13,676.676 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:54:13,722.722 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:54:23,738.738 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:54:23,778.778 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:54:23,789.789 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:54:23,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:54:23,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:54:23,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:54:25,844.844 INFO    ] ================================================
[2026-10-18 08:54:25,859.859 INFO    ] Launching Daemon at Sun Oct 18 08:54:25 IST 2026
[2026-10-18 08:54:25,870.870 INFO    ] ================================================
[2026-10-18 08:54:26,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:54:26
[2026-10-18 08:54:27,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:54:27,329.329 INFO    ] Initializing speech engine...
[2026-10-18 08:54:27,336.336 INFO    ] 2026-10-18 08:54:27
[2026-10-18 08:54:27,581.581 INFO    ] 2026-10-18 08:54:27
[2026-10-18 08:54:27,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:54:27,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:54:27,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:54:28,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:54:28,135.135 INFO    ] time= 18/10/2026 08:54:28
[2026-10-18 08:54:28,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:54:28,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:54:28,291.291 INFO    ] No existing commands found in stream
[2026-10-18 08:54:33,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:54:33,313.313 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-18 08:54:35,186.186 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 08:54:35,188.188 INFO    ] Checking for system updates...
[2026-10-18 08:54:35,229.229 INFO    ] 200
[2026-10-18 08:54:35,231.231 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:54:35,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:54:35,286.286 INFO    ] No update needed
[2026-10-18 08:54:35,288.288 INFO    ] Checking for camera pi updates...
[2026-10-18 08:54:35,322.322 INFO    ] 200
[2026-10-18 08:54:35,324.324 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:54:35,365.365 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:54:45,380.380 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:54:45,416.416 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:54:45,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:54:45,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:54:45,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:54:45,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:54:47,479.479 INFO    ] ================================================
[2026-10-18 08:54:47,495.495 INFO    ] Launching Daemon at Sun Oct 18 08:54:47 IST 2026
[2026-10-18 08:54:47,506.506 INFO    ] ================================================
[2026-10-18 08:54:48,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:54:48
[2026-10-18 08:54:48,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:54:48,979.979 INFO    ] Initializing speech engine...
[2026-10-18 08:54:48,988.988 INFO    ] 2026-10-18 08:54:48
[2026-10-18 08:54:49,234.234 INFO    ] 2026-10-18 08:54:49
[2026-10-18 08:54:49,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:54:49,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:54:49,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:54:49,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:54:49,722.722 INFO    ] time= 18/10/2026 08:54:49
[2026-10-18 08:54:49,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:54:49,794.794 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:54:49,934.934 INFO    ] No existing commands found in stream
[2026-10-18 08:54:54,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:54:54,953.953 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-18 08:54:58,545.545 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:54:58,548.548 INFO    ] Checking for system updates...
[2026-10-18 08:54:58,583.583 INFO    ] 200
[2026-10-18 08:54:58,586.586 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:54:58,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:54:58,653.653 INFO    ] No update needed
[2026-10-18 08:54:58,655.655 INFO    ] Checking for camera pi updates...
[2026-10-18 08:54:58,693.693 INFO    ] 200
[2026-10-18 08:54:58,696.696 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:54:58,737.737 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:55:08,750.750 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:55:08,785.785 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:55:08,795.795 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:55:08,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:55:08,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:55:08,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:55:10,847.847 INFO    ] ================================================
[2026-10-18 08:55:10,864.864 INFO    ] Launching Daemon at Sun Oct 18 08:55:10 IST 2026
[2026-10-18 08:55:10,875.875 INFO    ] ================================================
[2026-10-18 08:55:11,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:55:11
[2026-10-18 08:55:12,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:55:12,517.517 INFO    ] Initializing speech engine...
[2026-10-18 08:55:12,530.530 INFO    ] 2026-10-18 08:55:12
[2026-10-18 08:55:12,839.839 INFO    ] 2026-10-18 08:55:12
[2026-10-18 08:55:12,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:55:13,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:55:13,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:55:13,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:55:13,360.360 INFO    ] time= 18/10/2026 08:55:13
[2026-10-18 08:55:13,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:55:13,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:55:13,527.527 INFO    ] No existing commands found in stream
[2026-10-18 08:55:18,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:55:18,561.561 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-18 08:55:22,157.157 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:55:22,160.160 INFO    ] Checking for system updates...
[2026-10-18 08:55:22,197.197 INFO    ] 200
[2026-10-18 08:55:22,200.200 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:55:22,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:55:22,255.255 INFO    ] No update needed
[2026-10-18 08:55:22,258.258 INFO    ] Checking for camera pi updates...
[2026-10-18 08:55:22,298.298 INFO    ] 200
[2026-10-18 08:55:22,301.301 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:55:22,342.342 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:55:32,359.359 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:55:32,403.403 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:55:32,416.416 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:55:32,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:55:32,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:55:32,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:55:34,475.475 INFO    ] ================================================
[2026-10-18 08:55:34,491.491 INFO    ] Launching Daemon at Sun Oct 18 08:55:34 IST 2026
[2026-10-18 08:55:34,502.502 INFO    ] ================================================
[2026-10-18 08:55:35,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:55:35
[2026-10-18 08:55:35,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:55:35,968.968 INFO    ] Initializing speech engine...
[2026-10-18 08:55:35,980.980 INFO    ] 2026-10-18 08:55:35
[2026-10-18 08:55:36,297.297 INFO    ] 2026-10-18 08:55:36
[2026-10-18 08:55:36,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:55:36,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:55:36,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:55:36,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:55:36,820.820 INFO    ] time= 18/10/2026 08:55:36
[2026-10-18 08:55:36,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:55:36,870.870 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:55:37,008.008 INFO    ] No existing commands found in stream
[2026-10-18 08:55:42,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:55:42,043.043 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-18 08:55:46,450.450 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:55:46,453.453 INFO    ] Checking for system updates...
[2026-10-18 08:55:46,490.490 INFO    ] 200
[2026-10-18 08:55:46,493.493 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:55:46,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:55:46,550.550 INFO    ] No update needed
[2026-10-18 08:55:46,552.552 INFO    ] Checking for camera pi updates...
[2026-10-18 08:55:46,586.586 INFO    ] 200
[2026-10-18 08:55:46,589.589 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:55:46,634.634 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:55:56,649.649 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:55:56,684.684 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:55:56,693.693 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:55:56,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:55:56,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:55:56,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:55:58,746.746 INFO    ] ================================================
[2026-10-18 08:55:58,762.762 INFO    ] Launching Daemon at Sun Oct 18 08:55:58 IST 2026
[2026-10-18 08:55:58,773.773 INFO    ] ================================================
[2026-10-18 08:55:59,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:55:59
[2026-10-18 08:55:59,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:56:00,189.189 INFO    ] Initializing speech engine...
[2026-10-18 08:56:00,211.211 INFO    ] 2026-10-18 08:56:00
[2026-10-18 08:56:00,463.463 INFO    ] 2026-10-18 08:56:00
[2026-10-18 08:56:00,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:56:00,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:56:00,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:56:00,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:56:01,018.018 INFO    ] time= 18/10/2026 08:56:00
[2026-10-18 08:56:01,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:56:01,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:56:01,175.175 INFO    ] No existing commands found in stream
[2026-10-18 08:56:06,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:56:06,192.192 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-18 08:56:06,717.717 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:56:06,720.720 INFO    ] Checking for system updates...
[2026-10-18 08:56:06,756.756 INFO    ] 200
[2026-10-18 08:56:06,759.759 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:56:06,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:56:06,814.814 INFO    ] No update needed
[2026-10-18 08:56:06,816.816 INFO    ] Checking for camera pi updates...
[2026-10-18 08:56:06,853.853 INFO    ] 200
[2026-10-18 08:56:06,856.856 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:56:06,896.896 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:56:16,911.911 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:56:16,946.946 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:56:16,955.955 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:56:16,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:56:16,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:56:16,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:56:19,008.008 INFO    ] ================================================
[2026-10-18 08:56:19,025.025 INFO    ] Launching Daemon at Sun Oct 18 08:56:19 IST 2026
[2026-10-18 08:56:19,038.038 INFO    ] ================================================
[2026-10-18 08:56:19,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:56:19
[2026-10-18 08:56:20,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:56:20,619.619 INFO    ] Initializing speech engine...
[2026-10-18 08:56:20,641.641 INFO    ] 2026-10-18 08:56:20
[2026-10-18 08:56:20,893.893 INFO    ] 2026-10-18 08:56:20
[2026-10-18 08:56:20,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:56:21,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:56:21,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:56:21,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:56:21,371.371 INFO    ] time= 18/10/2026 08:56:21
[2026-10-18 08:56:21,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:56:21,480.480 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:56:21,628.628 INFO    ] No existing commands found in stream
[2026-10-18 08:56:26,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:56:26,647.647 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-18 08:56:27,543.543 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 08:56:27,546.546 INFO    ] Checking for system updates...
[2026-10-18 08:56:27,582.582 INFO    ] 200
[2026-10-18 08:56:27,584.584 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:56:27,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:56:27,645.645 INFO    ] No update needed
[2026-10-18 08:56:27,648.648 INFO    ] Checking for camera pi updates...
[2026-10-18 08:56:27,681.681 INFO    ] 200
[2026-10-18 08:56:27,683.683 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:56:27,723.723 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:56:37,738.738 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:56:37,772.772 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:56:37,782.782 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:56:37,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:56:37,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:56:37,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:56:39,836.836 INFO    ] ================================================
[2026-10-18 08:56:39,852.852 INFO    ] Launching Daemon at Sun Oct 18 08:56:39 IST 2026
[2026-10-18 08:56:39,864.864 INFO    ] ================================================
[2026-10-18 08:56:40,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:56:40
[2026-10-18 08:56:41,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:56:41,269.269 INFO    ] Initializing speech engine...
[2026-10-18 08:56:41,291.291 INFO    ] 2026-10-18 08:56:41
[2026-10-18 08:56:41,550.550 INFO    ] 2026-10-18 08:56:41
[2026-10-18 08:56:41,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:56:41,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:56:41,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:56:42,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:56:42,073.073 INFO    ] time= 18/10/2026 08:56:42
[2026-10-18 08:56:42,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:56:42,129.129 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:56:42,280.280 INFO    ] No existing commands found in stream
[2026-10-18 08:56:47,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:56:47,295.295 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-18 08:56:51,620.620 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:56:51,623.623 INFO    ] Checking for system updates...
[2026-10-18 08:56:51,661.661 INFO    ] 200
[2026-10-18 08:56:51,663.663 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:56:51,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:56:51,719.719 INFO    ] No update needed
[2026-10-18 08:56:51,722.722 INFO    ] Checking for camera pi updates...
[2026-10-18 08:56:51,755.755 INFO    ] 200
[2026-10-18 08:56:51,758.758 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:56:51,804.804 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:57:01,823.823 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:57:01,894.894 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:57:01,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:57:01,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:57:01,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:57:01,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:57:03,970.970 INFO    ] ================================================
[2026-10-18 08:57:03,987.987 INFO    ] Launching Daemon at Sun Oct 18 08:57:03 IST 2026
[2026-10-18 08:57:04,998.998 INFO    ] ================================================
[2026-10-18 08:57:04,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:57:04
[2026-10-18 08:57:05,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:57:05,440.440 INFO    ] Initializing speech engine...
[2026-10-18 08:57:05,448.448 INFO    ] 2026-10-18 08:57:05
[2026-10-18 08:57:05,742.742 INFO    ] 2026-10-18 08:57:05
[2026-10-18 08:57:05,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:57:06,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:57:06,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:57:06,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:57:06,244.244 INFO    ] time= 18/10/2026 08:57:06
[2026-10-18 08:57:06,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:57:06,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:57:06,449.449 INFO    ] No existing commands found in stream
[2026-10-18 08:57:11,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:57:11,479.479 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-18 08:57:12,847.847 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:57:12,850.850 INFO    ] Checking for system updates...
[2026-10-18 08:57:12,886.886 INFO    ] 200
[2026-10-18 08:57:12,889.889 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:57:12,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:57:12,945.945 INFO    ] No update needed
[2026-10-18 08:57:12,947.947 INFO    ] Checking for camera pi updates...
[2026-10-18 08:57:12,984.984 INFO    ] 200
[2026-10-18 08:57:12,987.987 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:57:13,031.031 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:57:23,047.047 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:57:23,082.082 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:57:23,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:57:23,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:57:23,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:57:23,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:57:25,146.146 INFO    ] ================================================
[2026-10-18 08:57:25,161.161 INFO    ] Launching Daemon at Sun Oct 18 08:57:25 IST 2026
[2026-10-18 08:57:25,173.173 INFO    ] ================================================
[2026-10-18 08:57:25,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:57:25
[2026-10-18 08:57:26,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:57:26,632.632 INFO    ] Initializing speech engine...
[2026-10-18 08:57:26,640.640 INFO    ] 2026-10-18 08:57:26
[2026-10-18 08:57:26,901.901 INFO    ] 2026-10-18 08:57:26
[2026-10-18 08:57:26,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:57:27,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:57:27,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:57:27,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:57:27,445.445 INFO    ] time= 18/10/2026 08:57:27
[2026-10-18 08:57:27,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:57:27,491.491 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:57:27,608.608 INFO    ] No existing commands found in stream
[2026-10-18 08:57:32,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:57:32,641.641 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-18 08:57:36,170.170 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:57:36,173.173 INFO    ] Checking for system updates...
[2026-10-18 08:57:36,210.210 INFO    ] 200
[2026-10-18 08:57:36,213.213 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:57:36,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:57:36,274.274 INFO    ] No update needed
[2026-10-18 08:57:36,276.276 INFO    ] Checking for camera pi updates...
[2026-10-18 08:57:36,310.310 INFO    ] 200
[2026-10-18 08:57:36,312.312 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:57:36,352.352 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:57:46,368.368 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:57:46,403.403 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:57:46,413.413 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:57:46,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:57:46,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:57:46,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:57:48,467.467 INFO    ] ================================================
[2026-10-18 08:57:48,482.482 INFO    ] Launching Daemon at Sun Oct 18 08:57:48 IST 2026
[2026-10-18 08:57:48,493.493 INFO    ] ================================================
[2026-10-18 08:57:49,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:57:49
[2026-10-18 08:57:49,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:57:49,925.925 INFO    ] Initializing speech engine...
[2026-10-18 08:57:49,933.933 INFO    ] 2026-10-18 08:57:49
[2026-10-18 08:57:50,230.230 INFO    ] 2026-10-18 08:57:50
[2026-10-18 08:57:50,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:57:50,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:57:50,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:57:50,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:57:50,756.756 INFO    ] time= 18/10/2026 08:57:50
[2026-10-18 08:57:50,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:57:50,859.859 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:57:51,011.011 INFO    ] No existing commands found in stream
[2026-10-18 08:57:56,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:57:56,038.038 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-18 08:57:59,598.598 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:57:59,601.601 INFO    ] Checking for system updates...
[2026-10-18 08:57:59,638.638 INFO    ] 200
[2026-10-18 08:57:59,641.641 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:57:59,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:57:59,697.697 INFO    ] No update needed
[2026-10-18 08:57:59,700.700 INFO    ] Checking for camera pi updates...
[2026-10-18 08:57:59,740.740 INFO    ] 200
[2026-10-18 08:57:59,743.743 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:57:59,788.788 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:58:09,804.804 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:58:09,843.843 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:58:09,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:58:09,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:58:09,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:58:09,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:58:11,909.909 INFO    ] ================================================
[2026-10-18 08:58:11,924.924 INFO    ] Launching Daemon at Sun Oct 18 08:58:11 IST 2026
[2026-10-18 08:58:11,935.935 INFO    ] ================================================
[2026-10-18 08:58:12,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:58:12
[2026-10-18 08:58:13,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:58:13,536.536 INFO    ] Initializing speech engine...
[2026-10-18 08:58:13,544.544 INFO    ] 2026-10-18 08:58:13
[2026-10-18 08:58:13,830.830 INFO    ] 2026-10-18 08:58:13
[2026-10-18 08:58:13,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:58:14,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:58:14,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:58:14,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:58:14,378.378 INFO    ] time= 18/10/2026 08:58:14
[2026-10-18 08:58:14,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:58:14,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:58:14,555.555 INFO    ] No existing commands found in stream
[2026-10-18 08:58:19,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:58:19,590.590 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-18 08:58:22,495.495 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 08:58:22,498.498 INFO    ] Checking for system updates...
[2026-10-18 08:58:22,538.538 INFO    ] 200
[2026-10-18 08:58:22,540.540 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:58:22,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:58:22,604.604 INFO    ] No update needed
[2026-10-18 08:58:22,607.607 INFO    ] Checking for camera pi updates...
[2026-10-18 08:58:22,641.641 INFO    ] 200
[2026-10-18 08:58:22,644.644 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:58:22,685.685 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:58:32,699.699 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:58:32,742.742 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:58:32,754.754 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:58:32,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:58:32,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:58:32,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:58:34,812.812 INFO    ] ================================================
[2026-10-18 08:58:34,827.827 INFO    ] Launching Daemon at Sun Oct 18 08:58:34 IST 2026
[2026-10-18 08:58:34,838.838 INFO    ] ================================================
[2026-10-18 08:58:35,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:58:35
[2026-10-18 08:58:36,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:58:36,263.263 INFO    ] Initializing speech engine...
[2026-10-18 08:58:36,279.279 INFO    ] 2026-10-18 08:58:36
[2026-10-18 08:58:36,563.563 INFO    ] 2026-10-18 08:58:36
[2026-10-18 08:58:36,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:58:36,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:58:36,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:58:37,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:58:37,085.085 INFO    ] time= 18/10/2026 08:58:37
[2026-10-18 08:58:37,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:58:37,184.184 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:58:37,330.330 INFO    ] No existing commands found in stream
[2026-10-18 08:58:42,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:58:42,350.350 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-18 08:58:42,878.878 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 08:58:42,881.881 INFO    ] Checking for system updates...
[2026-10-18 08:58:42,920.920 INFO    ] 200
[2026-10-18 08:58:42,922.922 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:58:42,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 08:58:42,983.983 INFO    ] No update needed
[2026-10-18 08:58:42,986.986 INFO    ] Checking for camera pi updates...
[2026-10-18 08:58:43,020.020 INFO    ] 200
[2026-10-18 08:58:43,022.022 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:58:43,071.071 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:58:53,086.086 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:58:53,121.121 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:58:53,131.131 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:58:53,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:58:53,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:58:53,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:58:55,184.184 INFO    ] ================================================
[2026-10-18 08:58:55,199.199 INFO    ] Launching Daemon at Sun Oct 18 08:58:55 IST 2026
[2026-10-18 08:58:55,210.210 INFO    ] ================================================
[2026-10-18 08:58:55,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:58:55
[2026-10-18 08:58:56,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:58:56,840.840 INFO    ] Initializing speech engine...
[2026-10-18 08:58:56,851.851 INFO    ] 2026-10-18 08:58:56
[2026-10-18 08:58:57,121.121 INFO    ] 2026-10-18 08:58:57
[2026-10-18 08:58:57,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:58:57,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:58:57,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:58:57,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:58:57,701.701 INFO    ] time= 18/10/2026 08:58:57
[2026-10-18 08:58:57,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:58:57,742.742 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:58:57,876.876 INFO    ] No existing commands found in stream
[2026-10-18 08:59:02,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:59:02,911.911 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-18 08:59:04,294.294 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:59:04,297.297 INFO    ] Checking for system updates...
[2026-10-18 08:59:04,334.334 INFO    ] 200
[2026-10-18 08:59:04,337.337 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:59:04,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:59:04,393.393 INFO    ] No update needed
[2026-10-18 08:59:04,396.396 INFO    ] Checking for camera pi updates...
[2026-10-18 08:59:04,430.430 INFO    ] 200
[2026-10-18 08:59:04,432.432 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:59:04,473.473 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:59:14,489.489 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:59:14,529.529 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:59:14,540.540 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:59:14,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:59:14,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:59:14,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:59:16,594.594 INFO    ] ================================================
[2026-10-18 08:59:16,609.609 INFO    ] Launching Daemon at Sun Oct 18 08:59:16 IST 2026
[2026-10-18 08:59:16,619.619 INFO    ] ================================================
[2026-10-18 08:59:17,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:59:17
[2026-10-18 08:59:17,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:59:18,041.041 INFO    ] Initializing speech engine...
[2026-10-18 08:59:18,062.062 INFO    ] 2026-10-18 08:59:18
[2026-10-18 08:59:18,334.334 INFO    ] 2026-10-18 08:59:18
[2026-10-18 08:59:18,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:59:18,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:59:18,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:59:18,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:59:18,959.959 INFO    ] time= 18/10/2026 08:59:18
[2026-10-18 08:59:18,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:59:18,983.983 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:59:19,104.104 INFO    ] No existing commands found in stream
[2026-10-18 08:59:24,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:59:24,138.138 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-18 08:59:28,515.515 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 08:59:28,518.518 INFO    ] Checking for system updates...
[2026-10-18 08:59:28,554.554 INFO    ] 200
[2026-10-18 08:59:28,557.557 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:59:28,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:59:28,618.618 INFO    ] No update needed
[2026-10-18 08:59:28,621.621 INFO    ] Checking for camera pi updates...
[2026-10-18 08:59:28,655.655 INFO    ] 200
[2026-10-18 08:59:28,658.658 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:59:28,697.697 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 08:59:38,711.711 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 08:59:38,746.746 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 08:59:38,756.756 INFO    ] Script finished. Safe exiting...
[2026-10-18 08:59:38,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 08:59:38,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 08:59:38,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 08:59:40,808.808 INFO    ] ================================================
[2026-10-18 08:59:40,823.823 INFO    ] Launching Daemon at Sun Oct 18 08:59:40 IST 2026
[2026-10-18 08:59:40,833.833 INFO    ] ================================================
[2026-10-18 08:59:41,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 08:59:41
[2026-10-18 08:59:42,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 08:59:42,405.405 INFO    ] Initializing speech engine...
[2026-10-18 08:59:42,414.414 INFO    ] 2026-10-18 08:59:42
[2026-10-18 08:59:42,680.680 INFO    ] 2026-10-18 08:59:42
[2026-10-18 08:59:42,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 08:59:42,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 08:59:42,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 08:59:43,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 08:59:43,227.227 INFO    ] time= 18/10/2026 08:59:43
[2026-10-18 08:59:43,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 08:59:43,252.252 INFO    ] Checking for existing commands in stream...
[2026-10-18 08:59:43,383.383 INFO    ] No existing commands found in stream
[2026-10-18 08:59:48,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 08:59:48,399.399 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-18 08:59:51,627.627 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 08:59:51,629.629 INFO    ] Checking for system updates...
[2026-10-18 08:59:51,664.664 INFO    ] 200
[2026-10-18 08:59:51,667.667 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:59:51,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 08:59:51,721.721 INFO    ] No update needed
[2026-10-18 08:59:51,723.723 INFO    ] Checking for camera pi updates...
[2026-10-18 08:59:51,759.759 INFO    ] 200
[2026-10-18 08:59:51,761.761 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 08:59:51,805.805 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:00:01,820.820 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:00:01,855.855 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:00:01,864.864 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:00:01,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:00:01,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:00:01,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:00:04,014.014 INFO    ] ================================================
[2026-10-18 09:00:04,091.091 INFO    ] Launching Daemon at Sun Oct 18 09:00:04 IST 2026
[2026-10-18 09:00:04,150.150 INFO    ] ================================================
[2026-10-18 09:00:06,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:00:06
[2026-10-18 09:00:06,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:00:07,181.181 INFO    ] Initializing speech engine...
[2026-10-18 09:00:07,191.191 INFO    ] 2026-10-18 09:00:07
[2026-10-18 09:00:07,441.441 INFO    ] 2026-10-18 09:00:07
[2026-10-18 09:00:07,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:00:07,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:00:07,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:00:07,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:00:07,942.942 INFO    ] time= 18/10/2026 09:00:07
[2026-10-18 09:00:07,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:00:08,016.016 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:00:08,147.147 INFO    ] No existing commands found in stream
[2026-10-18 09:00:13,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:00:13,170.170 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-18 09:00:13,719.719 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:00:13,721.721 INFO    ] Checking for system updates...
[2026-10-18 09:00:13,758.758 INFO    ] 200
[2026-10-18 09:00:13,760.760 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:00:13,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:00:13,814.814 INFO    ] No update needed
[2026-10-18 09:00:13,816.816 INFO    ] Checking for camera pi updates...
[2026-10-18 09:00:13,851.851 INFO    ] 200
[2026-10-18 09:00:13,853.853 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:00:13,897.897 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:00:23,913.913 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:00:23,947.947 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:00:23,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:00:23,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:00:23,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:00:23,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:00:26,009.009 INFO    ] ================================================
[2026-10-18 09:00:26,024.024 INFO    ] Launching Daemon at Sun Oct 18 09:00:26 IST 2026
[2026-10-18 09:00:26,034.034 INFO    ] ================================================
[2026-10-18 09:00:26,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:00:26
[2026-10-18 09:00:27,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:00:27,454.454 INFO    ] Initializing speech engine...
[2026-10-18 09:00:27,466.466 INFO    ] 2026-10-18 09:00:27
[2026-10-18 09:00:27,714.714 INFO    ] 2026-10-18 09:00:27
[2026-10-18 09:00:27,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:00:28,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:00:28,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:00:28,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:00:28,269.269 INFO    ] time= 18/10/2026 09:00:28
[2026-10-18 09:00:28,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:00:28,294.294 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:00:28,446.446 INFO    ] No existing commands found in stream
[2026-10-18 09:00:33,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:00:33,479.479 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-18 09:00:35,748.748 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:00:35,751.751 INFO    ] Checking for system updates...
[2026-10-18 09:00:35,787.787 INFO    ] 200
[2026-10-18 09:00:35,789.789 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:00:35,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:00:35,849.849 INFO    ] No update needed
[2026-10-18 09:00:35,852.852 INFO    ] Checking for camera pi updates...
[2026-10-18 09:00:35,886.886 INFO    ] 200
[2026-10-18 09:00:35,888.888 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:00:35,933.933 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:00:45,948.948 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:00:45,984.984 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:00:45,994.994 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:00:45,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:00:46,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:00:46,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:00:48,046.046 INFO    ] ================================================
[2026-10-18 09:00:48,061.061 INFO    ] Launching Daemon at Sun Oct 18 09:00:48 IST 2026
[2026-10-18 09:00:48,072.072 INFO    ] ================================================
[2026-10-18 09:00:48,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:00:48
[2026-10-18 09:00:49,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:00:49,661.661 INFO    ] Initializing speech engine...
[2026-10-18 09:00:49,674.674 INFO    ] 2026-10-18 09:00:49
[2026-10-18 09:00:49,940.940 INFO    ] 2026-10-18 09:00:49
[2026-10-18 09:00:49,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:00:50,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:00:50,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:00:50,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:00:50,486.486 INFO    ] time= 18/10/2026 09:00:50
[2026-10-18 09:00:50,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:00:50,514.514 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:00:50,648.648 INFO    ] No existing commands found in stream
[2026-10-18 09:00:55,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:00:56,190.190 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-18 09:00:58,992.992 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:00:58,994.994 INFO    ] Checking for system updates...
[2026-10-18 09:00:59,033.033 INFO    ] 200
[2026-10-18 09:00:59,035.035 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:00:59,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:00:59,090.090 INFO    ] No update needed
[2026-10-18 09:00:59,092.092 INFO    ] Checking for camera pi updates...
[2026-10-18 09:00:59,129.129 INFO    ] 200
[2026-10-18 09:00:59,132.132 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:00:59,172.172 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:01:09,186.186 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:01:09,222.222 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:01:09,232.232 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:01:09,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:01:09,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:01:09,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:01:11,288.288 INFO    ] ================================================
[2026-10-18 09:01:11,303.303 INFO    ] Launching Daemon at Sun Oct 18 09:01:11 IST 2026
[2026-10-18 09:01:11,314.314 INFO    ] ================================================
[2026-10-18 09:01:11,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:01:11
[2026-10-18 09:01:12,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:01:12,838.838 INFO    ] Initializing speech engine...
[2026-10-18 09:01:12,851.851 INFO    ] 2026-10-18 09:01:12
[2026-10-18 09:01:13,167.167 INFO    ] 2026-10-18 09:01:13
[2026-10-18 09:01:13,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:01:13,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:01:13,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:01:13,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:01:13,672.672 INFO    ] time= 18/10/2026 09:01:13
[2026-10-18 09:01:13,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:01:13,722.722 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:01:13,847.847 INFO    ] No existing commands found in stream
[2026-10-18 09:01:18,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:01:18,886.886 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-18 09:01:22,416.416 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:01:22,419.419 INFO    ] Checking for system updates...
[2026-10-18 09:01:22,456.456 INFO    ] 200
[2026-10-18 09:01:22,459.459 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:01:22,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:01:22,515.515 INFO    ] No update needed
[2026-10-18 09:01:22,518.518 INFO    ] Checking for camera pi updates...
[2026-10-18 09:01:22,554.554 INFO    ] 200
[2026-10-18 09:01:22,557.557 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:01:22,603.603 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:01:32,626.626 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:01:32,671.671 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:01:32,684.684 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:01:32,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:01:32,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:01:32,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:01:34,742.742 INFO    ] ================================================
[2026-10-18 09:01:34,757.757 INFO    ] Launching Daemon at Sun Oct 18 09:01:34 IST 2026
[2026-10-18 09:01:34,769.769 INFO    ] ================================================
[2026-10-18 09:01:35,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:01:35
[2026-10-18 09:01:35,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:01:36,178.178 INFO    ] Initializing speech engine...
[2026-10-18 09:01:36,184.184 INFO    ] 2026-10-18 09:01:36
[2026-10-18 09:01:36,487.487 INFO    ] 2026-10-18 09:01:36
[2026-10-18 09:01:36,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:01:36,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:01:36,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:01:36,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:01:36,998.998 INFO    ] time= 18/10/2026 09:01:36
[2026-10-18 09:01:37,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:01:37,091.091 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:01:37,258.258 INFO    ] No existing commands found in stream
[2026-10-18 09:01:42,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:01:42,278.278 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-18 09:01:46,338.338 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:01:46,341.341 INFO    ] Checking for system updates...
[2026-10-18 09:01:46,377.377 INFO    ] 200
[2026-10-18 09:01:46,379.379 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:01:46,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:01:46,447.447 INFO    ] No update needed
[2026-10-18 09:01:46,450.450 INFO    ] Checking for camera pi updates...
[2026-10-18 09:01:46,484.484 INFO    ] 200
[2026-10-18 09:01:46,486.486 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:01:46,527.527 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:01:56,540.540 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:01:56,576.576 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:01:56,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:01:56,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:01:56,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:01:56,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:01:58,638.638 INFO    ] ================================================
[2026-10-18 09:01:58,653.653 INFO    ] Launching Daemon at Sun Oct 18 09:01:58 IST 2026
[2026-10-18 09:01:58,663.663 INFO    ] ================================================
[2026-10-18 09:01:59,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:01:59
[2026-10-18 09:01:59,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:02:00,122.122 INFO    ] Initializing speech engine...
[2026-10-18 09:02:00,131.131 INFO    ] 2026-10-18 09:02:00
[2026-10-18 09:02:00,395.395 INFO    ] 2026-10-18 09:02:00
[2026-10-18 09:02:00,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:02:00,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:02:00,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:02:00,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:02:00,941.941 INFO    ] time= 18/10/2026 09:02:00
[2026-10-18 09:02:00,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:02:00,966.966 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:02:01,093.093 INFO    ] No existing commands found in stream
[2026-10-18 09:02:06,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:02:06,111.111 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-18 09:02:07,184.184 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:02:07,187.187 INFO    ] Checking for system updates...
[2026-10-18 09:02:07,227.227 INFO    ] 200
[2026-10-18 09:02:07,230.230 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:02:07,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:02:07,284.284 INFO    ] No update needed
[2026-10-18 09:02:07,286.286 INFO    ] Checking for camera pi updates...
[2026-10-18 09:02:07,320.320 INFO    ] 200
[2026-10-18 09:02:07,322.322 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:02:07,367.367 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:02:17,382.382 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:02:17,418.418 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:02:17,428.428 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:02:17,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:02:17,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:02:17,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:02:19,482.482 INFO    ] ================================================
[2026-10-18 09:02:19,497.497 INFO    ] Launching Daemon at Sun Oct 18 09:02:19 IST 2026
[2026-10-18 09:02:19,508.508 INFO    ] ================================================
[2026-10-18 09:02:20,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:02:20
[2026-10-18 09:02:20,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:02:20,967.967 INFO    ] Initializing speech engine...
[2026-10-18 09:02:20,977.977 INFO    ] 2026-10-18 09:02:20
[2026-10-18 09:02:21,227.227 INFO    ] 2026-10-18 09:02:21
[2026-10-18 09:02:21,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:02:21,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:02:21,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:02:21,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:02:21,718.718 INFO    ] time= 18/10/2026 09:02:21
[2026-10-18 09:02:21,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:02:21,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:02:21,947.947 INFO    ] No existing commands found in stream
[2026-10-18 09:02:26,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:02:26,969.969 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-18 09:02:29,150.150 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 09:02:29,153.153 INFO    ] Checking for system updates...
[2026-10-18 09:02:29,189.189 INFO    ] 200
[2026-10-18 09:02:29,191.191 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:02:29,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:02:29,246.246 INFO    ] No update needed
[2026-10-18 09:02:29,249.249 INFO    ] Checking for camera pi updates...
[2026-10-18 09:02:29,283.283 INFO    ] 200
[2026-10-18 09:02:29,285.285 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:02:29,330.330 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:02:39,344.344 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:02:39,380.380 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:02:39,390.390 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:02:39,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:02:39,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:02:39,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:02:41,444.444 INFO    ] ================================================
[2026-10-18 09:02:41,460.460 INFO    ] Launching Daemon at Sun Oct 18 09:02:41 IST 2026
[2026-10-18 09:02:41,471.471 INFO    ] ================================================
[2026-10-18 09:02:42,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:02:42
[2026-10-18 09:02:42,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:02:42,939.939 INFO    ] Initializing speech engine...
[2026-10-18 09:02:42,949.949 INFO    ] 2026-10-18 09:02:42
[2026-10-18 09:02:43,211.211 INFO    ] 2026-10-18 09:02:43
[2026-10-18 09:02:43,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:02:43,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:02:43,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:02:43,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:02:43,755.755 INFO    ] time= 18/10/2026 09:02:43
[2026-10-18 09:02:43,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:02:43,782.782 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:02:43,933.933 INFO    ] No existing commands found in stream
[2026-10-18 09:02:48,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:02:48,961.961 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-18 09:02:52,310.310 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:02:52,313.313 INFO    ] Checking for system updates...
[2026-10-18 09:02:52,353.353 INFO    ] 200
[2026-10-18 09:02:52,356.356 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:02:52,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:02:52,418.418 INFO    ] No update needed
[2026-10-18 09:02:52,420.420 INFO    ] Checking for camera pi updates...
[2026-10-18 09:02:52,455.455 INFO    ] 200
[2026-10-18 09:02:52,458.458 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:02:52,505.505 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:03:02,522.522 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:03:02,568.568 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:03:02,582.582 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:03:02,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:03:02,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:03:02,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:03:04,649.649 INFO    ] ================================================
[2026-10-18 09:03:04,664.664 INFO    ] Launching Daemon at Sun Oct 18 09:03:04 IST 2026
[2026-10-18 09:03:04,675.675 INFO    ] ================================================
[2026-10-18 09:03:05,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:03:05
[2026-10-18 09:03:05,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:03:06,132.132 INFO    ] Initializing speech engine...
[2026-10-18 09:03:06,147.147 INFO    ] 2026-10-18 09:03:06
[2026-10-18 09:03:06,431.431 INFO    ] 2026-10-18 09:03:06
[2026-10-18 09:03:06,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:03:06,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:03:06,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:03:06,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:03:06,964.964 INFO    ] time= 18/10/2026 09:03:06
[2026-10-18 09:03:07,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:03:07,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:03:07,220.220 INFO    ] No existing commands found in stream
[2026-10-18 09:03:12,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:03:12,248.248 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-18 09:03:13,723.723 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:03:13,726.726 INFO    ] Checking for system updates...
[2026-10-18 09:03:13,771.771 INFO    ] 200
[2026-10-18 09:03:13,773.773 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:03:13,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:03:13,834.834 INFO    ] No update needed
[2026-10-18 09:03:13,837.837 INFO    ] Checking for camera pi updates...
[2026-10-18 09:03:13,876.876 INFO    ] 200
[2026-10-18 09:03:13,880.880 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:03:13,930.930 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:03:23,945.945 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:03:23,980.980 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:03:23,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:03:23,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:03:23,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:03:24,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:03:26,041.041 INFO    ] ================================================
[2026-10-18 09:03:26,057.057 INFO    ] Launching Daemon at Sun Oct 18 09:03:26 IST 2026
[2026-10-18 09:03:26,067.067 INFO    ] ================================================
[2026-10-18 09:03:26,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:03:26
[2026-10-18 09:03:27,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:03:27,494.494 INFO    ] Initializing speech engine...
[2026-10-18 09:03:27,504.504 INFO    ] 2026-10-18 09:03:27
[2026-10-18 09:03:27,751.751 INFO    ] 2026-10-18 09:03:27
[2026-10-18 09:03:27,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:03:27,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:03:28,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:03:28,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:03:28,173.173 INFO    ] time= 18/10/2026 09:03:28
[2026-10-18 09:03:28,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:03:28,194.194 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:03:28,322.322 INFO    ] No existing commands found in stream
[2026-10-18 09:03:33,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:03:33,331.331 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-18 09:03:34,577.577 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:03:34,580.580 INFO    ] Checking for system updates...
[2026-10-18 09:03:34,615.615 INFO    ] 200
[2026-10-18 09:03:34,618.618 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:03:34,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:03:34,671.671 INFO    ] No update needed
[2026-10-18 09:03:34,674.674 INFO    ] Checking for camera pi updates...
[2026-10-18 09:03:34,708.708 INFO    ] 200
[2026-10-18 09:03:34,711.711 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:03:34,750.750 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:03:44,765.765 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:03:44,801.801 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:03:44,811.811 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:03:44,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:03:44,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:03:44,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:03:46,864.864 INFO    ] ================================================
[2026-10-18 09:03:46,879.879 INFO    ] Launching Daemon at Sun Oct 18 09:03:46 IST 2026
[2026-10-18 09:03:46,890.890 INFO    ] ================================================
[2026-10-18 09:03:47,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:03:47
[2026-10-18 09:03:48,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:03:48,395.395 INFO    ] Initializing speech engine...
[2026-10-18 09:03:48,405.405 INFO    ] 2026-10-18 09:03:48
[2026-10-18 09:03:48,719.719 INFO    ] 2026-10-18 09:03:48
[2026-10-18 09:03:48,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:03:49,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:03:49,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:03:49,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:03:49,224.224 INFO    ] time= 18/10/2026 09:03:49
[2026-10-18 09:03:49,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:03:49,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:03:49,390.390 INFO    ] No existing commands found in stream
[2026-10-18 09:03:54,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:03:54,429.429 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-18 09:03:58,631.631 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:03:58,634.634 INFO    ] Checking for system updates...
[2026-10-18 09:03:58,675.675 INFO    ] 200
[2026-10-18 09:03:58,678.678 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:03:58,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:03:58,741.741 INFO    ] No update needed
[2026-10-18 09:03:58,744.744 INFO    ] Checking for camera pi updates...
[2026-10-18 09:03:58,780.780 INFO    ] 200
[2026-10-18 09:03:58,782.782 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:03:58,825.825 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:04:08,840.840 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:04:08,880.880 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:04:08,891.891 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:04:08,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:04:08,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:04:08,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:04:10,946.946 INFO    ] ================================================
[2026-10-18 09:04:10,961.961 INFO    ] Launching Daemon at Sun Oct 18 09:04:10 IST 2026
[2026-10-18 09:04:10,971.971 INFO    ] ================================================
[2026-10-18 09:04:11,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:04:11
[2026-10-18 09:04:12,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:04:12,384.384 INFO    ] Initializing speech engine...
[2026-10-18 09:04:12,409.409 INFO    ] 2026-10-18 09:04:12
[2026-10-18 09:04:12,680.680 INFO    ] 2026-10-18 09:04:12
[2026-10-18 09:04:12,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:04:12,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:04:12,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:04:13,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:04:13,167.167 INFO    ] time= 18/10/2026 09:04:13
[2026-10-18 09:04:13,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:04:13,261.261 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:04:13,366.366 INFO    ] No existing commands found in stream
[2026-10-18 09:04:18,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:04:18,380.380 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-18 09:04:23,405.405 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 09:04:23,408.408 INFO    ] Checking for system updates...
[2026-10-18 09:04:23,447.447 INFO    ] 200
[2026-10-18 09:04:23,450.450 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:04:23,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:04:23,504.504 INFO    ] No update needed
[2026-10-18 09:04:23,507.507 INFO    ] Checking for camera pi updates...
[2026-10-18 09:04:23,543.543 INFO    ] 200
[2026-10-18 09:04:23,546.546 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:04:23,586.586 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:04:33,599.599 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:04:33,634.634 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:04:33,645.645 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:04:33,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:04:33,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:04:33,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:04:35,698.698 INFO    ] ================================================
[2026-10-18 09:04:35,713.713 INFO    ] Launching Daemon at Sun Oct 18 09:04:35 IST 2026
[2026-10-18 09:04:35,724.724 INFO    ] ================================================
[2026-10-18 09:04:36,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:04:36
[2026-10-18 09:04:36,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:04:37,162.162 INFO    ] Initializing speech engine...
[2026-10-18 09:04:37,165.165 INFO    ] 2026-10-18 09:04:37
[2026-10-18 09:04:37,438.438 INFO    ] 2026-10-18 09:04:37
[2026-10-18 09:04:37,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:04:37,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:04:37,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:04:37,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:04:37,883.883 INFO    ] time= 18/10/2026 09:04:37
[2026-10-18 09:04:37,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:04:37,896.896 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:04:38,037.037 INFO    ] No existing commands found in stream
[2026-10-18 09:04:43,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:04:43,052.052 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-18 09:04:47,078.078 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:04:47,081.081 INFO    ] Checking for system updates...
[2026-10-18 09:04:47,117.117 INFO    ] 200
[2026-10-18 09:04:47,120.120 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:04:47,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:04:47,176.176 INFO    ] No update needed
[2026-10-18 09:04:47,179.179 INFO    ] Checking for camera pi updates...
[2026-10-18 09:04:47,225.225 INFO    ] 200
[2026-10-18 09:04:47,228.228 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:04:47,274.274 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:04:57,295.295 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:04:57,334.334 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:04:57,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:04:57,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:04:57,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:04:57,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:04:59,402.402 INFO    ] ================================================
[2026-10-18 09:04:59,417.417 INFO    ] Launching Daemon at Sun Oct 18 09:04:59 IST 2026
[2026-10-18 09:04:59,428.428 INFO    ] ================================================
[2026-10-18 09:04:59,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:04:59
[2026-10-18 09:05:00,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:05:00,824.824 INFO    ] Initializing speech engine...
[2026-10-18 09:05:00,845.845 INFO    ] 2026-10-18 09:05:00
[2026-10-18 09:05:01,105.105 INFO    ] 2026-10-18 09:05:01
[2026-10-18 09:05:01,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:05:01,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:05:01,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:05:01,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:05:01,650.650 INFO    ] time= 18/10/2026 09:05:01
[2026-10-18 09:05:01,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:05:01,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:05:01,824.824 INFO    ] No existing commands found in stream
[2026-10-18 09:05:06,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:05:06,844.844 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-18 09:05:08,689.689 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:05:08,692.692 INFO    ] Checking for system updates...
[2026-10-18 09:05:08,732.732 INFO    ] 200
[2026-10-18 09:05:08,734.734 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:05:08,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:05:08,788.788 INFO    ] No update needed
[2026-10-18 09:05:08,790.790 INFO    ] Checking for camera pi updates...
[2026-10-18 09:05:08,828.828 INFO    ] 200
[2026-10-18 09:05:08,830.830 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:05:08,870.870 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:05:18,885.885 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:05:18,920.920 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:05:18,930.930 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:05:18,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:05:18,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:05:18,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:05:20,989.989 INFO    ] ================================================
[2026-10-18 09:05:21,004.004 INFO    ] Launching Daemon at Sun Oct 18 09:05:20 IST 2026
[2026-10-18 09:05:21,015.015 INFO    ] ================================================
[2026-10-18 09:05:21,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:05:21
[2026-10-18 09:05:22,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:05:22,482.482 INFO    ] Initializing speech engine...
[2026-10-18 09:05:22,489.489 INFO    ] 2026-10-18 09:05:22
[2026-10-18 09:05:22,750.750 INFO    ] 2026-10-18 09:05:22
[2026-10-18 09:05:22,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:05:23,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:05:23,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:05:23,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:05:23,238.238 INFO    ] time= 18/10/2026 09:05:23
[2026-10-18 09:05:23,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:05:23,313.313 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:05:23,449.449 INFO    ] No existing commands found in stream
[2026-10-18 09:05:28,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:05:28,471.471 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-18 09:05:29,618.618 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:05:29,620.620 INFO    ] Checking for system updates...
[2026-10-18 09:05:29,657.657 INFO    ] 200
[2026-10-18 09:05:29,659.659 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:05:29,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:05:29,720.720 INFO    ] No update needed
[2026-10-18 09:05:29,723.723 INFO    ] Checking for camera pi updates...
[2026-10-18 09:05:29,756.756 INFO    ] 200
[2026-10-18 09:05:29,758.758 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:05:29,798.798 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:05:39,813.813 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:05:39,849.849 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:05:39,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:05:39,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:05:39,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:05:39,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:05:41,912.912 INFO    ] ================================================
[2026-10-18 09:05:41,927.927 INFO    ] Launching Daemon at Sun Oct 18 09:05:41 IST 2026
[2026-10-18 09:05:41,938.938 INFO    ] ================================================
[2026-10-18 09:05:42,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:05:42
[2026-10-18 09:05:43,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:05:43,383.383 INFO    ] Initializing speech engine...
[2026-10-18 09:05:43,398.398 INFO    ] 2026-10-18 09:05:43
[2026-10-18 09:05:43,652.652 INFO    ] 2026-10-18 09:05:43
[2026-10-18 09:05:43,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:05:43,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:05:43,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:05:44,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:05:44,103.103 INFO    ] time= 18/10/2026 09:05:44
[2026-10-18 09:05:44,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:05:44,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:05:44,263.263 INFO    ] No existing commands found in stream
[2026-10-18 09:05:49,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:05:49,277.277 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-18 09:05:52,802.802 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:05:52,805.805 INFO    ] Checking for system updates...
[2026-10-18 09:05:52,845.845 INFO    ] 200
[2026-10-18 09:05:52,848.848 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:05:52,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:05:52,903.903 INFO    ] No update needed
[2026-10-18 09:05:52,906.906 INFO    ] Checking for camera pi updates...
[2026-10-18 09:05:52,939.939 INFO    ] 200
[2026-10-18 09:05:52,941.941 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:05:52,982.982 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:06:02,995.995 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:06:03,037.037 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:06:03,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:06:03,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:06:03,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:06:03,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:06:05,100.100 INFO    ] ================================================
[2026-10-18 09:06:05,115.115 INFO    ] Launching Daemon at Sun Oct 18 09:06:05 IST 2026
[2026-10-18 09:06:05,126.126 INFO    ] ================================================
[2026-10-18 09:06:05,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:06:05
[2026-10-18 09:06:06,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:06:06,563.563 INFO    ] Initializing speech engine...
[2026-10-18 09:06:06,579.579 INFO    ] 2026-10-18 09:06:06
[2026-10-18 09:06:06,862.862 INFO    ] 2026-10-18 09:06:06
[2026-10-18 09:06:06,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:06:07,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:06:07,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:06:07,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:06:07,280.280 INFO    ] time= 18/10/2026 09:06:07
[2026-10-18 09:06:07,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:06:07,320.320 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:06:07,467.467 INFO    ] No existing commands found in stream
[2026-10-18 09:06:12,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:06:12,500.500 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-18 09:06:16,566.566 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:06:16,568.568 INFO    ] Checking for system updates...
[2026-10-18 09:06:16,607.607 INFO    ] 200
[2026-10-18 09:06:16,610.610 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:06:16,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:06:16,664.664 INFO    ] No update needed
[2026-10-18 09:06:16,666.666 INFO    ] Checking for camera pi updates...
[2026-10-18 09:06:16,703.703 INFO    ] 200
[2026-10-18 09:06:16,705.705 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:06:16,746.746 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:06:26,761.761 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:06:26,797.797 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:06:26,807.807 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:06:26,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:06:26,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:06:26,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:06:28,860.860 INFO    ] ================================================
[2026-10-18 09:06:28,874.874 INFO    ] Launching Daemon at Sun Oct 18 09:06:28 IST 2026
[2026-10-18 09:06:28,885.885 INFO    ] ================================================
[2026-10-18 09:06:29,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:06:29
[2026-10-18 09:06:30,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:06:30,325.325 INFO    ] Initializing speech engine...
[2026-10-18 09:06:30,341.341 INFO    ] 2026-10-18 09:06:30
[2026-10-18 09:06:30,597.597 INFO    ] 2026-10-18 09:06:30
[2026-10-18 09:06:30,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:06:30,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:06:30,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:06:31,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:06:31,090.090 INFO    ] time= 18/10/2026 09:06:31
[2026-10-18 09:06:31,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:06:31,169.169 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:06:31,322.322 INFO    ] No existing commands found in stream
[2026-10-18 09:06:36,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:06:36,343.343 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-18 09:06:38,057.057 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 09:06:38,060.060 INFO    ] Checking for system updates...
[2026-10-18 09:06:38,096.096 INFO    ] 200
[2026-10-18 09:06:38,099.099 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:06:38,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:06:38,162.162 INFO    ] No update needed
[2026-10-18 09:06:38,165.165 INFO    ] Checking for camera pi updates...
[2026-10-18 09:06:38,201.201 INFO    ] 200
[2026-10-18 09:06:38,203.203 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:06:38,247.247 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:06:48,260.260 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:06:48,295.295 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:06:48,304.304 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:06:48,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:06:48,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:06:48,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:06:50,358.358 INFO    ] ================================================
[2026-10-18 09:06:50,373.373 INFO    ] Launching Daemon at Sun Oct 18 09:06:50 IST 2026
[2026-10-18 09:06:50,384.384 INFO    ] ================================================
[2026-10-18 09:06:50,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:06:50
[2026-10-18 09:06:51,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:06:51,842.842 INFO    ] Initializing speech engine...
[2026-10-18 09:06:51,852.852 INFO    ] 2026-10-18 09:06:51
[2026-10-18 09:06:52,113.113 INFO    ] 2026-10-18 09:06:52
[2026-10-18 09:06:52,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:06:52,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:06:52,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:06:52,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:06:52,660.660 INFO    ] time= 18/10/2026 09:06:52
[2026-10-18 09:06:52,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:06:52,686.686 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:06:52,814.814 INFO    ] No existing commands found in stream
[2026-10-18 09:06:57,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:06:57,831.831 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-18 09:07:01,798.798 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:07:01,801.801 INFO    ] Checking for system updates...
[2026-10-18 09:07:01,846.846 INFO    ] 200
[2026-10-18 09:07:01,849.849 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:07:01,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:07:01,910.910 INFO    ] No update needed
[2026-10-18 09:07:01,913.913 INFO    ] Checking for camera pi updates...
[2026-10-18 09:07:01,960.960 INFO    ] 200
[2026-10-18 09:07:01,962.962 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:07:02,012.012 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:07:12,028.028 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:07:12,063.063 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:07:12,072.072 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:07:12,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:07:12,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:07:12,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:07:14,125.125 INFO    ] ================================================
[2026-10-18 09:07:14,140.140 INFO    ] Launching Daemon at Sun Oct 18 09:07:14 IST 2026
[2026-10-18 09:07:14,151.151 INFO    ] ================================================
[2026-10-18 09:07:14,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:07:14
[2026-10-18 09:07:15,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:07:15,610.610 INFO    ] Initializing speech engine...
[2026-10-18 09:07:15,618.618 INFO    ] 2026-10-18 09:07:15
[2026-10-18 09:07:15,877.877 INFO    ] 2026-10-18 09:07:15
[2026-10-18 09:07:15,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:07:16,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:07:16,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:07:16,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:07:16,361.361 INFO    ] time= 18/10/2026 09:07:16
[2026-10-18 09:07:16,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:07:16,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:07:16,597.597 INFO    ] No existing commands found in stream
[2026-10-18 09:07:21,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:07:21,630.630 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-18 09:07:22,475.475 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:07:22,478.478 INFO    ] Checking for system updates...
[2026-10-18 09:07:22,513.513 INFO    ] 200
[2026-10-18 09:07:22,516.516 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:07:22,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:07:22,576.576 INFO    ] No update needed
[2026-10-18 09:07:22,578.578 INFO    ] Checking for camera pi updates...
[2026-10-18 09:07:22,614.614 INFO    ] 200
[2026-10-18 09:07:22,617.617 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:07:22,662.662 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:07:32,676.676 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:07:32,714.714 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:07:32,729.729 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:07:32,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:07:32,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:07:32,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:07:34,794.794 INFO    ] ================================================
[2026-10-18 09:07:34,811.811 INFO    ] Launching Daemon at Sun Oct 18 09:07:34 IST 2026
[2026-10-18 09:07:34,822.822 INFO    ] ================================================
[2026-10-18 09:07:35,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:07:35
[2026-10-18 09:07:36,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:07:36,355.355 INFO    ] Initializing speech engine...
[2026-10-18 09:07:36,364.364 INFO    ] 2026-10-18 09:07:36
[2026-10-18 09:07:36,626.626 INFO    ] 2026-10-18 09:07:36
[2026-10-18 09:07:36,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:07:36,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:07:36,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:07:37,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:07:37,150.150 INFO    ] time= 18/10/2026 09:07:37
[2026-10-18 09:07:37,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:07:37,217.217 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:07:37,374.374 INFO    ] No existing commands found in stream
[2026-10-18 09:07:42,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:07:42,402.402 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-18 09:07:45,215.215 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 09:07:45,217.217 INFO    ] Checking for system updates...
[2026-10-18 09:07:45,257.257 INFO    ] 200
[2026-10-18 09:07:45,259.259 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:07:45,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:07:45,320.320 INFO    ] No update needed
[2026-10-18 09:07:45,322.322 INFO    ] Checking for camera pi updates...
[2026-10-18 09:07:45,355.355 INFO    ] 200
[2026-10-18 09:07:45,358.358 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:07:45,399.399 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:07:55,414.414 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:07:55,450.450 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:07:55,460.460 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:07:55,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:07:55,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:07:55,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:07:57,513.513 INFO    ] ================================================
[2026-10-18 09:07:57,529.529 INFO    ] Launching Daemon at Sun Oct 18 09:07:57 IST 2026
[2026-10-18 09:07:57,542.542 INFO    ] ================================================
[2026-10-18 09:07:58,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:07:58
[2026-10-18 09:07:58,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:07:58,976.976 INFO    ] Initializing speech engine...
[2026-10-18 09:07:58,985.985 INFO    ] 2026-10-18 09:07:58
[2026-10-18 09:07:59,232.232 INFO    ] 2026-10-18 09:07:59
[2026-10-18 09:07:59,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:07:59,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:07:59,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:07:59,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:07:59,732.732 INFO    ] time= 18/10/2026 09:07:59
[2026-10-18 09:07:59,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:07:59,796.796 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:07:59,972.972 INFO    ] No existing commands found in stream
[2026-10-18 09:08:05,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:08:05,005.005 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-18 09:08:06,860.860 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:08:06,863.863 INFO    ] Checking for system updates...
[2026-10-18 09:08:06,902.902 INFO    ] 200
[2026-10-18 09:08:06,904.904 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:08:06,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:08:06,959.959 INFO    ] No update needed
[2026-10-18 09:08:06,961.961 INFO    ] Checking for camera pi updates...
[2026-10-18 09:08:06,994.994 INFO    ] 200
[2026-10-18 09:08:06,997.997 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:08:07,037.037 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:08:17,052.052 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:08:17,089.089 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:08:17,099.099 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:08:17,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:08:17,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:08:17,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:08:19,155.155 INFO    ] ================================================
[2026-10-18 09:08:19,170.170 INFO    ] Launching Daemon at Sun Oct 18 09:08:19 IST 2026
[2026-10-18 09:08:19,181.181 INFO    ] ================================================
[2026-10-18 09:08:19,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:08:19
[2026-10-18 09:08:20,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:08:20,636.636 INFO    ] Initializing speech engine...
[2026-10-18 09:08:20,646.646 INFO    ] 2026-10-18 09:08:20
[2026-10-18 09:08:20,899.899 INFO    ] 2026-10-18 09:08:20
[2026-10-18 09:08:20,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:08:21,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:08:21,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:08:21,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:08:21,452.452 INFO    ] time= 18/10/2026 09:08:21
[2026-10-18 09:08:21,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:08:21,476.476 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:08:21,607.607 INFO    ] No existing commands found in stream
[2026-10-18 09:08:26,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:08:26,623.623 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-18 09:08:30,784.784 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:08:30,787.787 INFO    ] Checking for system updates...
[2026-10-18 09:08:30,827.827 INFO    ] 200
[2026-10-18 09:08:30,829.829 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:08:30,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:08:30,891.891 INFO    ] No update needed
[2026-10-18 09:08:30,893.893 INFO    ] Checking for camera pi updates...
[2026-10-18 09:08:30,930.930 INFO    ] 200
[2026-10-18 09:08:30,932.932 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:08:30,977.977 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:08:40,991.991 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:08:41,026.026 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:08:41,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:08:41,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:08:41,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:08:41,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:08:43,090.090 INFO    ] ================================================
[2026-10-18 09:08:43,106.106 INFO    ] Launching Daemon at Sun Oct 18 09:08:43 IST 2026
[2026-10-18 09:08:43,117.117 INFO    ] ================================================
[2026-10-18 09:08:43,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:08:43
[2026-10-18 09:08:44,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:08:44,574.574 INFO    ] Initializing speech engine...
[2026-10-18 09:08:44,583.583 INFO    ] 2026-10-18 09:08:44
[2026-10-18 09:08:44,843.843 INFO    ] 2026-10-18 09:08:44
[2026-10-18 09:08:44,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:08:45,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:08:45,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:08:45,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:08:45,327.327 INFO    ] time= 18/10/2026 09:08:45
[2026-10-18 09:08:45,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:08:45,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:08:45,563.563 INFO    ] No existing commands found in stream
[2026-10-18 09:08:50,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:08:50,596.596 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-18 09:08:51,307.307 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:08:51,310.310 INFO    ] Checking for system updates...
[2026-10-18 09:08:51,346.346 INFO    ] 200
[2026-10-18 09:08:51,349.349 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:08:51,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:08:51,405.405 INFO    ] No update needed
[2026-10-18 09:08:51,408.408 INFO    ] Checking for camera pi updates...
[2026-10-18 09:08:51,443.443 INFO    ] 200
[2026-10-18 09:08:51,446.446 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:08:51,488.488 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:09:01,506.506 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:09:01,572.572 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:09:01,586.586 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:09:01,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:09:01,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:09:01,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:09:03,655.655 INFO    ] ================================================
[2026-10-18 09:09:03,671.671 INFO    ] Launching Daemon at Sun Oct 18 09:09:03 IST 2026
[2026-10-18 09:09:03,682.682 INFO    ] ================================================
[2026-10-18 09:09:04,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:09:04
[2026-10-18 09:09:04,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:09:05,101.101 INFO    ] Initializing speech engine...
[2026-10-18 09:09:05,108.108 INFO    ] 2026-10-18 09:09:05
[2026-10-18 09:09:05,403.403 INFO    ] 2026-10-18 09:09:05
[2026-10-18 09:09:05,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:09:05,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:09:05,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:09:05,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:09:05,900.900 INFO    ] time= 18/10/2026 09:09:05
[2026-10-18 09:09:05,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:09:05,994.994 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:09:06,102.102 INFO    ] No existing commands found in stream
[2026-10-18 09:09:11,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:09:11,117.117 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-18 09:09:13,359.359 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:09:13,362.362 INFO    ] Checking for system updates...
[2026-10-18 09:09:13,397.397 INFO    ] 200
[2026-10-18 09:09:13,400.400 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:09:13,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:09:13,454.454 INFO    ] No update needed
[2026-10-18 09:09:13,457.457 INFO    ] Checking for camera pi updates...
[2026-10-18 09:09:13,490.490 INFO    ] 200
[2026-10-18 09:09:13,493.493 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:09:13,548.548 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:09:23,564.564 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:09:23,604.604 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:09:23,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:09:23,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:09:23,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:09:23,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:09:25,672.672 INFO    ] ================================================
[2026-10-18 09:09:25,688.688 INFO    ] Launching Daemon at Sun Oct 18 09:09:25 IST 2026
[2026-10-18 09:09:25,699.699 INFO    ] ================================================
[2026-10-18 09:09:26,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:09:26
[2026-10-18 09:09:26,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:09:27,115.115 INFO    ] Initializing speech engine...
[2026-10-18 09:09:27,131.131 INFO    ] 2026-10-18 09:09:27
[2026-10-18 09:09:27,418.418 INFO    ] 2026-10-18 09:09:27
[2026-10-18 09:09:27,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:09:27,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:09:27,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:09:27,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:09:27,916.916 INFO    ] time= 18/10/2026 09:09:27
[2026-10-18 09:09:27,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:09:27,989.989 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:09:28,106.106 INFO    ] No existing commands found in stream
[2026-10-18 09:09:33,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:09:33,128.128 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-18 09:09:36,624.624 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:09:36,627.627 INFO    ] Checking for system updates...
[2026-10-18 09:09:36,666.666 INFO    ] 200
[2026-10-18 09:09:36,668.668 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:09:36,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:09:36,729.729 INFO    ] No update needed
[2026-10-18 09:09:36,732.732 INFO    ] Checking for camera pi updates...
[2026-10-18 09:09:36,769.769 INFO    ] 200
[2026-10-18 09:09:36,771.771 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:09:36,816.816 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:09:46,831.831 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:09:46,866.866 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:09:46,876.876 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:09:46,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:09:46,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:09:46,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:09:48,929.929 INFO    ] ================================================
[2026-10-18 09:09:48,945.945 INFO    ] Launching Daemon at Sun Oct 18 09:09:48 IST 2026
[2026-10-18 09:09:48,956.956 INFO    ] ================================================
[2026-10-18 09:09:49,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:09:49
[2026-10-18 09:09:50,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:09:50,559.559 INFO    ] Initializing speech engine...
[2026-10-18 09:09:50,570.570 INFO    ] 2026-10-18 09:09:50
[2026-10-18 09:09:50,833.833 INFO    ] 2026-10-18 09:09:50
[2026-10-18 09:09:50,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:09:51,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:09:51,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:09:51,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:09:51,378.378 INFO    ] time= 18/10/2026 09:09:51
[2026-10-18 09:09:51,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:09:51,405.405 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:09:51,546.546 INFO    ] No existing commands found in stream
[2026-10-18 09:09:56,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:09:56,581.581 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-18 09:09:59,484.484 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:09:59,487.487 INFO    ] Checking for system updates...
[2026-10-18 09:09:59,522.522 INFO    ] 200
[2026-10-18 09:09:59,525.525 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:09:59,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:09:59,579.579 INFO    ] No update needed
[2026-10-18 09:09:59,582.582 INFO    ] Checking for camera pi updates...
[2026-10-18 09:09:59,615.615 INFO    ] 200
[2026-10-18 09:09:59,618.618 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:09:59,658.658 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:10:09,672.672 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:10:09,708.708 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:10:09,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:10:09,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:10:09,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:10:09,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:10:11,771.771 INFO    ] ================================================
[2026-10-18 09:10:11,787.787 INFO    ] Launching Daemon at Sun Oct 18 09:10:11 IST 2026
[2026-10-18 09:10:11,799.799 INFO    ] ================================================
[2026-10-18 09:10:12,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:10:12
[2026-10-18 09:10:13,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:10:13,429.429 INFO    ] Initializing speech engine...
[2026-10-18 09:10:13,439.439 INFO    ] 2026-10-18 09:10:13
[2026-10-18 09:10:13,731.731 INFO    ] 2026-10-18 09:10:13
[2026-10-18 09:10:13,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:10:14,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:10:14,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:10:14,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:10:14,288.288 INFO    ] time= 18/10/2026 09:10:14
[2026-10-18 09:10:14,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:10:14,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:10:14,482.482 INFO    ] No existing commands found in stream
[2026-10-18 09:10:19,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:10:19,511.511 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-18 09:10:21,725.725 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:10:21,728.728 INFO    ] Checking for system updates...
[2026-10-18 09:10:21,764.764 INFO    ] 200
[2026-10-18 09:10:21,766.766 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:10:21,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:10:21,822.822 INFO    ] No update needed
[2026-10-18 09:10:21,824.824 INFO    ] Checking for camera pi updates...
[2026-10-18 09:10:21,861.861 INFO    ] 200
[2026-10-18 09:10:21,864.864 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:10:21,910.910 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:10:31,925.925 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:10:31,962.962 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:10:31,973.973 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:10:31,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:10:31,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:10:31,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:10:34,031.031 INFO    ] ================================================
[2026-10-18 09:10:34,047.047 INFO    ] Launching Daemon at Sun Oct 18 09:10:34 IST 2026
[2026-10-18 09:10:34,058.058 INFO    ] ================================================
[2026-10-18 09:10:34,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:10:34
[2026-10-18 09:10:35,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:10:35,474.474 INFO    ] Initializing speech engine...
[2026-10-18 09:10:35,489.489 INFO    ] 2026-10-18 09:10:35
[2026-10-18 09:10:35,758.758 INFO    ] 2026-10-18 09:10:35
[2026-10-18 09:10:35,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:10:36,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:10:36,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:10:36,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:10:36,319.319 INFO    ] time= 18/10/2026 09:10:36
[2026-10-18 09:10:36,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:10:36,349.349 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:10:36,487.487 INFO    ] No existing commands found in stream
[2026-10-18 09:10:41,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:10:41,504.504 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-18 09:10:43,471.471 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:10:43,474.474 INFO    ] Checking for system updates...
[2026-10-18 09:10:43,513.513 INFO    ] 200
[2026-10-18 09:10:43,515.515 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:10:43,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:10:43,577.577 INFO    ] No update needed
[2026-10-18 09:10:43,580.580 INFO    ] Checking for camera pi updates...
[2026-10-18 09:10:43,616.616 INFO    ] 200
[2026-10-18 09:10:43,619.619 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:10:43,659.659 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:10:53,674.674 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:10:53,709.709 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:10:53,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:10:53,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:10:53,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:10:53,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:10:55,773.773 INFO    ] ================================================
[2026-10-18 09:10:55,788.788 INFO    ] Launching Daemon at Sun Oct 18 09:10:55 IST 2026
[2026-10-18 09:10:55,799.799 INFO    ] ================================================
[2026-10-18 09:10:56,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:10:56
[2026-10-18 09:10:56,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:10:57,243.243 INFO    ] Initializing speech engine...
[2026-10-18 09:10:57,252.252 INFO    ] 2026-10-18 09:10:57
[2026-10-18 09:10:57,548.548 INFO    ] 2026-10-18 09:10:57
[2026-10-18 09:10:57,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:10:57,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:10:57,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:10:57,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:10:57,969.969 INFO    ] time= 18/10/2026 09:10:57
[2026-10-18 09:10:57,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:10:58,020.020 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:10:58,151.151 INFO    ] No existing commands found in stream
[2026-10-18 09:11:03,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:11:03,180.180 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-18 09:11:07,287.287 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:11:07,290.290 INFO    ] Checking for system updates...
[2026-10-18 09:11:07,326.326 INFO    ] 200
[2026-10-18 09:11:07,328.328 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:11:07,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:11:07,382.382 INFO    ] No update needed
[2026-10-18 09:11:07,385.385 INFO    ] Checking for camera pi updates...
[2026-10-18 09:11:07,419.419 INFO    ] 200
[2026-10-18 09:11:07,421.421 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:11:07,461.461 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:11:17,477.477 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:11:17,516.516 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:11:17,527.527 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:11:17,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:11:17,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:11:17,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:11:19,582.582 INFO    ] ================================================
[2026-10-18 09:11:19,598.598 INFO    ] Launching Daemon at Sun Oct 18 09:11:19 IST 2026
[2026-10-18 09:11:19,609.609 INFO    ] ================================================
[2026-10-18 09:11:20,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:11:20
[2026-10-18 09:11:20,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:11:21,127.127 INFO    ] Initializing speech engine...
[2026-10-18 09:11:21,137.137 INFO    ] 2026-10-18 09:11:21
[2026-10-18 09:11:21,411.411 INFO    ] 2026-10-18 09:11:21
[2026-10-18 09:11:21,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:11:21,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:11:21,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:11:21,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:11:21,974.974 INFO    ] time= 18/10/2026 09:11:21
[2026-10-18 09:11:21,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:11:22,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:11:22,157.157 INFO    ] No existing commands found in stream
[2026-10-18 09:11:27,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:11:27,186.186 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-18 09:11:29,633.633 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:11:29,637.637 INFO    ] Checking for system updates...
[2026-10-18 09:11:29,677.677 INFO    ] 200
[2026-10-18 09:11:29,681.681 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:11:29,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:11:29,743.743 INFO    ] No update needed
[2026-10-18 09:11:29,746.746 INFO    ] Checking for camera pi updates...
[2026-10-18 09:11:29,780.780 INFO    ] 200
[2026-10-18 09:11:29,783.783 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:11:29,825.825 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:11:39,841.841 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:11:39,881.881 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:11:39,891.891 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:11:39,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:11:39,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:11:39,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:11:41,947.947 INFO    ] ================================================
[2026-10-18 09:11:41,963.963 INFO    ] Launching Daemon at Sun Oct 18 09:11:41 IST 2026
[2026-10-18 09:11:41,974.974 INFO    ] ================================================
[2026-10-18 09:11:42,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:11:42
[2026-10-18 09:11:43,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:11:43,431.431 INFO    ] Initializing speech engine...
[2026-10-18 09:11:43,441.441 INFO    ] 2026-10-18 09:11:43
[2026-10-18 09:11:43,701.701 INFO    ] 2026-10-18 09:11:43
[2026-10-18 09:11:43,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:11:43,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:11:43,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:11:44,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:11:44,190.190 INFO    ] time= 18/10/2026 09:11:44
[2026-10-18 09:11:44,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:11:44,260.260 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:11:44,407.407 INFO    ] No existing commands found in stream
[2026-10-18 09:11:49,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:11:49,428.428 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-18 09:11:52,332.332 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:11:52,335.335 INFO    ] Checking for system updates...
[2026-10-18 09:11:52,374.374 INFO    ] 200
[2026-10-18 09:11:52,376.376 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:11:52,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:11:52,436.436 INFO    ] No update needed
[2026-10-18 09:11:52,438.438 INFO    ] Checking for camera pi updates...
[2026-10-18 09:11:52,474.474 INFO    ] 200
[2026-10-18 09:11:52,476.476 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:11:52,522.522 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:12:02,538.538 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:12:02,576.576 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:12:02,587.587 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:12:02,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:12:02,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:12:02,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:12:04,642.642 INFO    ] ================================================
[2026-10-18 09:12:04,658.658 INFO    ] Launching Daemon at Sun Oct 18 09:12:04 IST 2026
[2026-10-18 09:12:04,670.670 INFO    ] ================================================
[2026-10-18 09:12:05,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:12:05
[2026-10-18 09:12:05,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:12:06,121.121 INFO    ] Initializing speech engine...
[2026-10-18 09:12:06,127.127 INFO    ] 2026-10-18 09:12:06
[2026-10-18 09:12:06,387.387 INFO    ] 2026-10-18 09:12:06
[2026-10-18 09:12:06,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:12:06,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:12:06,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:12:06,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:12:06,903.903 INFO    ] time= 18/10/2026 09:12:06
[2026-10-18 09:12:06,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:12:06,941.941 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:12:07,084.084 INFO    ] No existing commands found in stream
[2026-10-18 09:12:12,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:12:12,103.103 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-18 09:12:13,685.685 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:12:13,688.688 INFO    ] Checking for system updates...
[2026-10-18 09:12:13,723.723 INFO    ] 200
[2026-10-18 09:12:13,725.725 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:12:13,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:12:13,781.781 INFO    ] No update needed
[2026-10-18 09:12:13,783.783 INFO    ] Checking for camera pi updates...
[2026-10-18 09:12:13,817.817 INFO    ] 200
[2026-10-18 09:12:13,819.819 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:12:13,859.859 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:12:23,874.874 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:12:23,908.908 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:12:23,918.918 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:12:23,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:12:23,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:12:23,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:12:25,970.970 INFO    ] ================================================
[2026-10-18 09:12:25,986.986 INFO    ] Launching Daemon at Sun Oct 18 09:12:25 IST 2026
[2026-10-18 09:12:26,997.997 INFO    ] ================================================
[2026-10-18 09:12:26,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:12:26
[2026-10-18 09:12:27,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:12:27,443.443 INFO    ] Initializing speech engine...
[2026-10-18 09:12:27,451.451 INFO    ] 2026-10-18 09:12:27
[2026-10-18 09:12:27,740.740 INFO    ] 2026-10-18 09:12:27
[2026-10-18 09:12:27,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:12:27,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:12:28,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:12:28,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:12:28,226.226 INFO    ] time= 18/10/2026 09:12:28
[2026-10-18 09:12:28,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:12:28,315.315 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:12:28,425.425 INFO    ] No existing commands found in stream
[2026-10-18 09:12:33,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:12:33,439.439 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-18 09:12:34,749.749 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:12:34,752.752 INFO    ] Checking for system updates...
[2026-10-18 09:12:34,793.793 INFO    ] 200
[2026-10-18 09:12:34,796.796 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:12:34,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:12:34,856.856 INFO    ] No update needed
[2026-10-18 09:12:34,859.859 INFO    ] Checking for camera pi updates...
[2026-10-18 09:12:34,893.893 INFO    ] 200
[2026-10-18 09:12:34,895.895 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:12:34,936.936 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:12:44,952.952 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:12:44,987.987 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:12:44,996.996 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:12:44,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:12:45,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:12:45,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:12:47,055.055 INFO    ] ================================================
[2026-10-18 09:12:47,071.071 INFO    ] Launching Daemon at Sun Oct 18 09:12:47 IST 2026
[2026-10-18 09:12:47,083.083 INFO    ] ================================================
[2026-10-18 09:12:47,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:12:47
[2026-10-18 09:12:48,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:12:48,628.628 INFO    ] Initializing speech engine...
[2026-10-18 09:12:48,637.637 INFO    ] 2026-10-18 09:12:48
[2026-10-18 09:12:48,902.902 INFO    ] 2026-10-18 09:12:48
[2026-10-18 09:12:48,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:12:49,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:12:49,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:12:49,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:12:49,380.380 INFO    ] time= 18/10/2026 09:12:49
[2026-10-18 09:12:49,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:12:49,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:12:49,578.578 INFO    ] No existing commands found in stream
[2026-10-18 09:12:54,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:12:54,592.592 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-18 09:12:55,720.720 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 09:12:55,723.723 INFO    ] Checking for system updates...
[2026-10-18 09:12:55,759.759 INFO    ] 200
[2026-10-18 09:12:55,761.761 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:12:55,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:12:55,816.816 INFO    ] No update needed
[2026-10-18 09:12:55,819.819 INFO    ] Checking for camera pi updates...
[2026-10-18 09:12:55,856.856 INFO    ] 200
[2026-10-18 09:12:55,858.858 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:12:55,901.901 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:13:05,916.916 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:13:05,951.951 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:13:05,961.961 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:13:05,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:13:05,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:13:05,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:13:08,013.013 INFO    ] ================================================
[2026-10-18 09:13:08,028.028 INFO    ] Launching Daemon at Sun Oct 18 09:13:08 IST 2026
[2026-10-18 09:13:08,039.039 INFO    ] ================================================
[2026-10-18 09:13:08,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:13:08
[2026-10-18 09:13:09,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:13:09,484.484 INFO    ] Initializing speech engine...
[2026-10-18 09:13:09,491.491 INFO    ] 2026-10-18 09:13:09
[2026-10-18 09:13:09,783.783 INFO    ] 2026-10-18 09:13:09
[2026-10-18 09:13:09,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:13:10,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:13:10,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:13:10,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:13:10,258.258 INFO    ] time= 18/10/2026 09:13:10
[2026-10-18 09:13:10,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:13:10,377.377 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:13:10,542.542 INFO    ] No existing commands found in stream
[2026-10-18 09:13:15,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:13:15,570.570 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-18 09:13:16,247.247 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:13:16,250.250 INFO    ] Checking for system updates...
[2026-10-18 09:13:16,287.287 INFO    ] 200
[2026-10-18 09:13:16,290.290 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:13:16,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:13:16,344.344 INFO    ] No update needed
[2026-10-18 09:13:16,346.346 INFO    ] Checking for camera pi updates...
[2026-10-18 09:13:16,379.379 INFO    ] 200
[2026-10-18 09:13:16,382.382 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:13:16,422.422 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:13:26,437.437 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:13:26,473.473 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:13:26,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:13:26,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:13:26,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:13:26,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:13:28,538.538 INFO    ] ================================================
[2026-10-18 09:13:28,553.553 INFO    ] Launching Daemon at Sun Oct 18 09:13:28 IST 2026
[2026-10-18 09:13:28,564.564 INFO    ] ================================================
[2026-10-18 09:13:29,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:13:29
[2026-10-18 09:13:29,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:13:30,006.006 INFO    ] Initializing speech engine...
[2026-10-18 09:13:30,012.012 INFO    ] 2026-10-18 09:13:30
[2026-10-18 09:13:30,300.300 INFO    ] 2026-10-18 09:13:30
[2026-10-18 09:13:30,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:13:30,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:13:30,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:13:30,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:13:30,814.814 INFO    ] time= 18/10/2026 09:13:30
[2026-10-18 09:13:30,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:13:30,915.915 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:13:31,065.065 INFO    ] No existing commands found in stream
[2026-10-18 09:13:36,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:13:36,093.093 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-18 09:13:40,446.446 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:13:40,449.449 INFO    ] Checking for system updates...
[2026-10-18 09:13:40,484.484 INFO    ] 200
[2026-10-18 09:13:40,486.486 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:13:40,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:13:40,541.541 INFO    ] No update needed
[2026-10-18 09:13:40,543.543 INFO    ] Checking for camera pi updates...
[2026-10-18 09:13:40,578.578 INFO    ] 200
[2026-10-18 09:13:40,580.580 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:13:40,625.625 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:13:50,640.640 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:13:50,676.676 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:13:50,686.686 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:13:50,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:13:50,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:13:50,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:13:52,739.739 INFO    ] ================================================
[2026-10-18 09:13:52,755.755 INFO    ] Launching Daemon at Sun Oct 18 09:13:52 IST 2026
[2026-10-18 09:13:52,766.766 INFO    ] ================================================
[2026-10-18 09:13:53,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:13:53
[2026-10-18 09:13:53,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:13:54,231.231 INFO    ] Initializing speech engine...
[2026-10-18 09:13:54,240.240 INFO    ] 2026-10-18 09:13:54
[2026-10-18 09:13:54,502.502 INFO    ] 2026-10-18 09:13:54
[2026-10-18 09:13:54,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:13:54,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:13:54,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:13:54,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:13:55,017.017 INFO    ] time= 18/10/2026 09:13:54
[2026-10-18 09:13:55,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:13:55,065.065 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:13:55,200.200 INFO    ] No existing commands found in stream
[2026-10-18 09:14:00,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:14:00,215.215 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-18 09:14:03,200.200 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:14:03,203.203 INFO    ] Checking for system updates...
[2026-10-18 09:14:03,243.243 INFO    ] 200
[2026-10-18 09:14:03,245.245 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:14:03,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:14:03,302.302 INFO    ] No update needed
[2026-10-18 09:14:03,305.305 INFO    ] Checking for camera pi updates...
[2026-10-18 09:14:03,357.357 INFO    ] 200
[2026-10-18 09:14:03,360.360 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:14:03,413.413 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:14:13,428.428 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:14:13,463.463 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:14:13,472.472 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:14:13,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:14:13,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:14:13,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:14:15,524.524 INFO    ] ================================================
[2026-10-18 09:14:15,540.540 INFO    ] Launching Daemon at Sun Oct 18 09:14:15 IST 2026
[2026-10-18 09:14:15,551.551 INFO    ] ================================================
[2026-10-18 09:14:16,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:14:16
[2026-10-18 09:14:16,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:14:16,984.984 INFO    ] Initializing speech engine...
[2026-10-18 09:14:17,003.003 INFO    ] 2026-10-18 09:14:16
[2026-10-18 09:14:17,267.267 INFO    ] 2026-10-18 09:14:17
[2026-10-18 09:14:17,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:14:17,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:14:17,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:14:17,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:14:17,685.685 INFO    ] time= 18/10/2026 09:14:17
[2026-10-18 09:14:17,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:14:17,734.734 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:14:17,870.870 INFO    ] No existing commands found in stream
[2026-10-18 09:14:22,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:14:22,898.898 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-18 09:14:24,150.150 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:14:24,153.153 INFO    ] Checking for system updates...
[2026-10-18 09:14:24,191.191 INFO    ] 200
[2026-10-18 09:14:24,193.193 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:14:24,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:14:24,248.248 INFO    ] No update needed
[2026-10-18 09:14:24,250.250 INFO    ] Checking for camera pi updates...
[2026-10-18 09:14:24,284.284 INFO    ] 200
[2026-10-18 09:14:24,286.286 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:14:24,326.326 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:14:34,338.338 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:14:34,373.373 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:14:34,382.382 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:14:34,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:14:34,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:14:34,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:14:36,435.435 INFO    ] ================================================
[2026-10-18 09:14:36,451.451 INFO    ] Launching Daemon at Sun Oct 18 09:14:36 IST 2026
[2026-10-18 09:14:36,463.463 INFO    ] ================================================
[2026-10-18 09:14:37,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:14:37
[2026-10-18 09:14:37,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:14:37,898.898 INFO    ] Initializing speech engine...
[2026-10-18 09:14:37,907.907 INFO    ] 2026-10-18 09:14:37
[2026-10-18 09:14:38,158.158 INFO    ] 2026-10-18 09:14:38
[2026-10-18 09:14:38,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:14:38,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:14:38,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:14:38,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:14:38,647.647 INFO    ] time= 18/10/2026 09:14:38
[2026-10-18 09:14:38,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:14:38,735.735 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:14:38,882.882 INFO    ] No existing commands found in stream
[2026-10-18 09:14:43,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:14:43,903.903 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-18 09:14:46,194.194 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:14:46,197.197 INFO    ] Checking for system updates...
[2026-10-18 09:14:46,233.233 INFO    ] 200
[2026-10-18 09:14:46,236.236 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:14:46,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:14:46,291.291 INFO    ] No update needed
[2026-10-18 09:14:46,293.293 INFO    ] Checking for camera pi updates...
[2026-10-18 09:14:46,327.327 INFO    ] 200
[2026-10-18 09:14:46,329.329 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:14:46,369.369 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:14:56,386.386 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:14:56,426.426 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:14:56,437.437 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:14:56,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:14:56,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:14:56,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:14:58,494.494 INFO    ] ================================================
[2026-10-18 09:14:58,510.510 INFO    ] Launching Daemon at Sun Oct 18 09:14:58 IST 2026
[2026-10-18 09:14:58,521.521 INFO    ] ================================================
[2026-10-18 09:14:59,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:14:59
[2026-10-18 09:14:59,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:14:59,981.981 INFO    ] Initializing speech engine...
[2026-10-18 09:14:59,992.992 INFO    ] 2026-10-18 09:14:59
[2026-10-18 09:15:00,302.302 INFO    ] 2026-10-18 09:15:00
[2026-10-18 09:15:00,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:15:00,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:15:00,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:15:00,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:15:00,825.825 INFO    ] time= 18/10/2026 09:15:00
[2026-10-18 09:15:00,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:15:00,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:15:01,019.019 INFO    ] No existing commands found in stream
[2026-10-18 09:15:06,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:15:06,059.059 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-18 09:15:10,497.497 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:15:10,500.500 INFO    ] Checking for system updates...
[2026-10-18 09:15:10,539.539 INFO    ] 200
[2026-10-18 09:15:10,542.542 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:15:10,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:15:10,601.601 INFO    ] No update needed
[2026-10-18 09:15:10,604.604 INFO    ] Checking for camera pi updates...
[2026-10-18 09:15:10,642.642 INFO    ] 200
[2026-10-18 09:15:10,645.645 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:15:10,687.687 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:15:20,703.703 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:15:20,742.742 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:15:20,753.753 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:15:20,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:15:20,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:15:20,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:15:22,808.808 INFO    ] ================================================
[2026-10-18 09:15:22,824.824 INFO    ] Launching Daemon at Sun Oct 18 09:15:22 IST 2026
[2026-10-18 09:15:22,836.836 INFO    ] ================================================
[2026-10-18 09:15:23,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:15:23
[2026-10-18 09:15:23,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:15:24,238.238 INFO    ] Initializing speech engine...
[2026-10-18 09:15:24,261.261 INFO    ] 2026-10-18 09:15:24
[2026-10-18 09:15:24,512.512 INFO    ] 2026-10-18 09:15:24
[2026-10-18 09:15:24,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:15:24,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:15:24,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:15:25,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:15:25,031.031 INFO    ] time= 18/10/2026 09:15:25
[2026-10-18 09:15:25,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:15:25,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:15:25,127.127 INFO    ] No existing commands found in stream
[2026-10-18 09:15:30,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:15:30,141.141 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-18 09:15:31,804.804 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:15:31,807.807 INFO    ] Checking for system updates...
[2026-10-18 09:15:31,845.845 INFO    ] 200
[2026-10-18 09:15:31,849.849 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:15:31,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:15:31,916.916 INFO    ] No update needed
[2026-10-18 09:15:31,920.920 INFO    ] Checking for camera pi updates...
[2026-10-18 09:15:31,960.960 INFO    ] 200
[2026-10-18 09:15:31,963.963 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:15:32,008.008 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:15:42,025.025 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:15:42,064.064 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:15:42,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:15:42,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:15:42,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:15:42,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:15:44,131.131 INFO    ] ================================================
[2026-10-18 09:15:44,146.146 INFO    ] Launching Daemon at Sun Oct 18 09:15:44 IST 2026
[2026-10-18 09:15:44,158.158 INFO    ] ================================================
[2026-10-18 09:15:44,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:15:44
[2026-10-18 09:15:45,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:15:45,583.583 INFO    ] Initializing speech engine...
[2026-10-18 09:15:45,592.592 INFO    ] 2026-10-18 09:15:45
[2026-10-18 09:15:45,838.838 INFO    ] 2026-10-18 09:15:45
[2026-10-18 09:15:45,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:15:46,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:15:46,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:15:46,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:15:46,396.396 INFO    ] time= 18/10/2026 09:15:46
[2026-10-18 09:15:46,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:15:46,422.422 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:15:46,552.552 INFO    ] No existing commands found in stream
[2026-10-18 09:15:51,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:15:51,577.577 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-18 09:15:54,120.120 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:15:54,123.123 INFO    ] Checking for system updates...
[2026-10-18 09:15:54,166.166 INFO    ] 200
[2026-10-18 09:15:54,169.169 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:15:54,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:15:54,235.235 INFO    ] No update needed
[2026-10-18 09:15:54,238.238 INFO    ] Checking for camera pi updates...
[2026-10-18 09:15:54,276.276 INFO    ] 200
[2026-10-18 09:15:54,279.279 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:15:54,331.331 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:16:04,346.346 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:16:04,382.382 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:16:04,392.392 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:16:04,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:16:04,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:16:04,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:16:06,446.446 INFO    ] ================================================
[2026-10-18 09:16:06,462.462 INFO    ] Launching Daemon at Sun Oct 18 09:16:06 IST 2026
[2026-10-18 09:16:06,475.475 INFO    ] ================================================
[2026-10-18 09:16:07,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:16:07
[2026-10-18 09:16:07,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:16:08,002.002 INFO    ] Initializing speech engine...
[2026-10-18 09:16:08,016.016 INFO    ] 2026-10-18 09:16:08
[2026-10-18 09:16:08,299.299 INFO    ] 2026-10-18 09:16:08
[2026-10-18 09:16:08,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:16:08,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:16:08,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:16:08,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:16:08,856.856 INFO    ] time= 18/10/2026 09:16:08
[2026-10-18 09:16:08,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:16:08,907.907 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:16:09,077.077 INFO    ] No existing commands found in stream
[2026-10-18 09:16:14,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:16:14,117.117 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-18 09:16:14,826.826 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 09:16:14,829.829 INFO    ] Checking for system updates...
[2026-10-18 09:16:14,866.866 INFO    ] 200
[2026-10-18 09:16:14,869.869 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:16:14,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:16:14,926.926 INFO    ] No update needed
[2026-10-18 09:16:14,929.929 INFO    ] Checking for camera pi updates...
[2026-10-18 09:16:14,964.964 INFO    ] 200
[2026-10-18 09:16:14,967.967 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:16:15,008.008 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:16:25,024.024 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:16:25,064.064 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:16:25,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:16:25,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:16:25,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:16:25,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:16:27,130.130 INFO    ] ================================================
[2026-10-18 09:16:27,147.147 INFO    ] Launching Daemon at Sun Oct 18 09:16:27 IST 2026
[2026-10-18 09:16:27,158.158 INFO    ] ================================================
[2026-10-18 09:16:27,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:16:27
[2026-10-18 09:16:28,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:16:28,577.577 INFO    ] Initializing speech engine...
[2026-10-18 09:16:28,586.586 INFO    ] 2026-10-18 09:16:28
[2026-10-18 09:16:28,835.835 INFO    ] 2026-10-18 09:16:28
[2026-10-18 09:16:28,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:16:29,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:16:29,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:16:29,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:16:29,334.334 INFO    ] time= 18/10/2026 09:16:29
[2026-10-18 09:16:29,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:16:29,410.410 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:16:29,559.559 INFO    ] No existing commands found in stream
[2026-10-18 09:16:34,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:16:34,577.577 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-18 09:16:38,373.373 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:16:38,376.376 INFO    ] Checking for system updates...
[2026-10-18 09:16:38,420.420 INFO    ] 200
[2026-10-18 09:16:38,422.422 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:16:38,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:16:38,477.477 INFO    ] No update needed
[2026-10-18 09:16:38,480.480 INFO    ] Checking for camera pi updates...
[2026-10-18 09:16:38,514.514 INFO    ] 200
[2026-10-18 09:16:38,516.516 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:16:38,563.563 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:16:48,578.578 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:16:48,613.613 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:16:48,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:16:48,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:16:48,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:16:48,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:16:50,676.676 INFO    ] ================================================
[2026-10-18 09:16:50,692.692 INFO    ] Launching Daemon at Sun Oct 18 09:16:50 IST 2026
[2026-10-18 09:16:50,704.704 INFO    ] ================================================
[2026-10-18 09:16:51,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:16:51
[2026-10-18 09:16:51,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:16:52,188.188 INFO    ] Initializing speech engine...
[2026-10-18 09:16:52,195.195 INFO    ] 2026-10-18 09:16:52
[2026-10-18 09:16:52,456.456 INFO    ] 2026-10-18 09:16:52
[2026-10-18 09:16:52,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:16:52,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:16:52,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:16:52,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:16:52,997.997 INFO    ] time= 18/10/2026 09:16:52
[2026-10-18 09:16:53,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:16:53,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:16:53,156.156 INFO    ] No existing commands found in stream
[2026-10-18 09:16:58,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:16:58,186.186 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-18 09:16:58,713.713 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:16:58,716.716 INFO    ] Checking for system updates...
[2026-10-18 09:16:58,753.753 INFO    ] 200
[2026-10-18 09:16:58,756.756 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:16:58,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:16:58,822.822 INFO    ] No update needed
[2026-10-18 09:16:58,825.825 INFO    ] Checking for camera pi updates...
[2026-10-18 09:16:58,861.861 INFO    ] 200
[2026-10-18 09:16:58,864.864 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:16:58,906.906 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:17:08,922.922 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:17:08,963.963 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:17:08,974.974 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:17:08,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:17:08,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:17:08,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:17:11,033.033 INFO    ] ================================================
[2026-10-18 09:17:11,050.050 INFO    ] Launching Daemon at Sun Oct 18 09:17:11 IST 2026
[2026-10-18 09:17:11,061.061 INFO    ] ================================================
[2026-10-18 09:17:11,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:17:11
[2026-10-18 09:17:12,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:17:12,670.670 INFO    ] Initializing speech engine...
[2026-10-18 09:17:12,680.680 INFO    ] 2026-10-18 09:17:12
[2026-10-18 09:17:12,929.929 INFO    ] 2026-10-18 09:17:12
[2026-10-18 09:17:12,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:17:13,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:17:13,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:17:13,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:17:13,498.498 INFO    ] time= 18/10/2026 09:17:13
[2026-10-18 09:17:13,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:17:13,522.522 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:17:13,657.657 INFO    ] No existing commands found in stream
[2026-10-18 09:17:18,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:17:18,675.675 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-18 09:17:23,302.302 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:17:23,305.305 INFO    ] Checking for system updates...
[2026-10-18 09:17:23,343.343 INFO    ] 200
[2026-10-18 09:17:23,346.346 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:17:23,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:17:23,401.401 INFO    ] No update needed
[2026-10-18 09:17:23,403.403 INFO    ] Checking for camera pi updates...
[2026-10-18 09:17:23,437.437 INFO    ] 200
[2026-10-18 09:17:23,439.439 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:17:23,479.479 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:17:33,493.493 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:17:33,529.529 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:17:33,539.539 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:17:33,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:17:33,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:17:33,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:17:35,591.591 INFO    ] ================================================
[2026-10-18 09:17:35,608.608 INFO    ] Launching Daemon at Sun Oct 18 09:17:35 IST 2026
[2026-10-18 09:17:35,619.619 INFO    ] ================================================
[2026-10-18 09:17:36,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:17:36
[2026-10-18 09:17:36,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:17:37,040.040 INFO    ] Initializing speech engine...
[2026-10-18 09:17:37,050.050 INFO    ] 2026-10-18 09:17:37
[2026-10-18 09:17:37,300.300 INFO    ] 2026-10-18 09:17:37
[2026-10-18 09:17:37,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:17:37,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:17:37,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:17:37,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:17:37,866.866 INFO    ] time= 18/10/2026 09:17:37
[2026-10-18 09:17:37,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:17:37,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:17:38,050.050 INFO    ] No existing commands found in stream
[2026-10-18 09:17:43,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:17:43,079.079 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-18 09:17:47,006.006 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:17:47,009.009 INFO    ] Checking for system updates...
[2026-10-18 09:17:47,047.047 INFO    ] 200
[2026-10-18 09:17:47,050.050 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:17:47,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:17:47,115.115 INFO    ] No update needed
[2026-10-18 09:17:47,118.118 INFO    ] Checking for camera pi updates...
[2026-10-18 09:17:47,157.157 INFO    ] 200
[2026-10-18 09:17:47,160.160 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:17:47,207.207 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:17:57,225.225 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:17:57,265.265 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:17:57,276.276 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:17:57,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:17:57,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:17:57,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:17:59,333.333 INFO    ] ================================================
[2026-10-18 09:17:59,349.349 INFO    ] Launching Daemon at Sun Oct 18 09:17:59 IST 2026
[2026-10-18 09:17:59,361.361 INFO    ] ================================================
[2026-10-18 09:18:00,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:18:00
[2026-10-18 09:18:00,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:18:01,030.030 INFO    ] Initializing speech engine...
[2026-10-18 09:18:01,037.037 INFO    ] 2026-10-18 09:18:01
[2026-10-18 09:18:01,445.445 INFO    ] 2026-10-18 09:18:01
[2026-10-18 09:18:01,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:18:01,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:18:01,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:18:02,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:18:02,076.076 INFO    ] time= 18/10/2026 09:18:02
[2026-10-18 09:18:02,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:18:02,139.139 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:18:02,299.299 INFO    ] No existing commands found in stream
[2026-10-18 09:18:07,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:18:07,332.332 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-18 09:18:09,453.453 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:18:09,456.456 INFO    ] Checking for system updates...
[2026-10-18 09:18:09,493.493 INFO    ] 200
[2026-10-18 09:18:09,496.496 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:18:09,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:18:09,552.552 INFO    ] No update needed
[2026-10-18 09:18:09,555.555 INFO    ] Checking for camera pi updates...
[2026-10-18 09:18:09,594.594 INFO    ] 200
[2026-10-18 09:18:09,597.597 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:18:09,639.639 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:18:19,656.656 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:18:19,697.697 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:18:19,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:18:19,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:18:19,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:18:19,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:18:21,765.765 INFO    ] ================================================
[2026-10-18 09:18:21,782.782 INFO    ] Launching Daemon at Sun Oct 18 09:18:21 IST 2026
[2026-10-18 09:18:21,793.793 INFO    ] ================================================
[2026-10-18 09:18:22,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:18:22
[2026-10-18 09:18:22,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:18:23,286.286 INFO    ] Initializing speech engine...
[2026-10-18 09:18:23,291.291 INFO    ] 2026-10-18 09:18:23
[2026-10-18 09:18:23,545.545 INFO    ] 2026-10-18 09:18:23
[2026-10-18 09:18:23,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:18:23,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:18:23,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:18:24,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:18:24,100.100 INFO    ] time= 18/10/2026 09:18:24
[2026-10-18 09:18:24,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:18:24,130.130 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:18:24,268.268 INFO    ] No existing commands found in stream
[2026-10-18 09:18:29,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:18:29,281.281 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-18 09:18:31,348.348 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:18:31,352.352 INFO    ] Checking for system updates...
[2026-10-18 09:18:31,398.398 INFO    ] 200
[2026-10-18 09:18:31,401.401 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:18:31,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:18:31,476.476 INFO    ] No update needed
[2026-10-18 09:18:31,483.483 INFO    ] Checking for camera pi updates...
[2026-10-18 09:18:31,522.522 INFO    ] 200
[2026-10-18 09:18:31,524.524 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:18:31,571.571 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:18:41,588.588 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:18:41,628.628 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:18:41,639.639 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:18:41,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:18:41,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:18:41,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:18:43,695.695 INFO    ] ================================================
[2026-10-18 09:18:43,710.710 INFO    ] Launching Daemon at Sun Oct 18 09:18:43 IST 2026
[2026-10-18 09:18:43,722.722 INFO    ] ================================================
[2026-10-18 09:18:44,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:18:44
[2026-10-18 09:18:44,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:18:45,128.128 INFO    ] Initializing speech engine...
[2026-10-18 09:18:45,151.151 INFO    ] 2026-10-18 09:18:45
[2026-10-18 09:18:45,407.407 INFO    ] 2026-10-18 09:18:45
[2026-10-18 09:18:45,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:18:45,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:18:45,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:18:45,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:18:45,907.907 INFO    ] time= 18/10/2026 09:18:45
[2026-10-18 09:18:45,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:18:45,982.982 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:18:46,120.120 INFO    ] No existing commands found in stream
[2026-10-18 09:18:51,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:18:51,148.148 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-18 09:18:55,318.318 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:18:55,321.321 INFO    ] Checking for system updates...
[2026-10-18 09:18:55,358.358 INFO    ] 200
[2026-10-18 09:18:55,361.361 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:18:55,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:18:55,416.416 INFO    ] No update needed
[2026-10-18 09:18:55,419.419 INFO    ] Checking for camera pi updates...
[2026-10-18 09:18:55,454.454 INFO    ] 200
[2026-10-18 09:18:55,457.457 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:18:55,498.498 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:19:05,515.515 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:19:05,556.556 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:19:05,568.568 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:19:05,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:19:05,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:19:05,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:19:07,626.626 INFO    ] ================================================
[2026-10-18 09:19:07,643.643 INFO    ] Launching Daemon at Sun Oct 18 09:19:07 IST 2026
[2026-10-18 09:19:07,654.654 INFO    ] ================================================
[2026-10-18 09:19:08,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:19:08
[2026-10-18 09:19:08,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:19:09,307.307 INFO    ] Initializing speech engine...
[2026-10-18 09:19:09,315.315 INFO    ] 2026-10-18 09:19:09
[2026-10-18 09:19:09,608.608 INFO    ] 2026-10-18 09:19:09
[2026-10-18 09:19:09,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:19:09,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:19:09,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:19:10,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:19:10,162.162 INFO    ] time= 18/10/2026 09:19:10
[2026-10-18 09:19:10,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:19:10,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:19:10,342.342 INFO    ] No existing commands found in stream
[2026-10-18 09:19:15,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:19:15,377.377 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-18 09:19:16,998.998 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:19:17,000.000 INFO    ] Checking for system updates...
[2026-10-18 09:19:17,037.037 INFO    ] 200
[2026-10-18 09:19:17,040.040 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:19:17,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:19:17,104.104 INFO    ] No update needed
[2026-10-18 09:19:17,107.107 INFO    ] Checking for camera pi updates...
[2026-10-18 09:19:17,142.142 INFO    ] 200
[2026-10-18 09:19:17,145.145 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:19:17,187.187 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:19:27,202.202 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:19:27,242.242 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:19:27,252.252 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:19:27,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:19:27,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:19:27,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:19:29,304.304 INFO    ] ================================================
[2026-10-18 09:19:29,321.321 INFO    ] Launching Daemon at Sun Oct 18 09:19:29 IST 2026
[2026-10-18 09:19:29,332.332 INFO    ] ================================================
[2026-10-18 09:19:29,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:19:29
[2026-10-18 09:19:30,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:19:30,779.779 INFO    ] Initializing speech engine...
[2026-10-18 09:19:30,787.787 INFO    ] 2026-10-18 09:19:30
[2026-10-18 09:19:31,063.063 INFO    ] 2026-10-18 09:19:31
[2026-10-18 09:19:31,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:19:31,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:19:31,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:19:31,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:19:31,578.578 INFO    ] time= 18/10/2026 09:19:31
[2026-10-18 09:19:31,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:19:31,662.662 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:19:31,814.814 INFO    ] No existing commands found in stream
[2026-10-18 09:19:36,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:19:36,839.839 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-18 09:19:38,241.241 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:19:38,244.244 INFO    ] Checking for system updates...
[2026-10-18 09:19:38,283.283 INFO    ] 200
[2026-10-18 09:19:38,286.286 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:19:38,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:19:38,344.344 INFO    ] No update needed
[2026-10-18 09:19:38,347.347 INFO    ] Checking for camera pi updates...
[2026-10-18 09:19:38,382.382 INFO    ] 200
[2026-10-18 09:19:38,385.385 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:19:38,426.426 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:19:48,443.443 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:19:48,491.491 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:19:48,504.504 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:19:48,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:19:48,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:19:48,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:19:50,564.564 INFO    ] ================================================
[2026-10-18 09:19:50,580.580 INFO    ] Launching Daemon at Sun Oct 18 09:19:50 IST 2026
[2026-10-18 09:19:50,591.591 INFO    ] ================================================
[2026-10-18 09:19:51,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:19:51
[2026-10-18 09:19:51,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:19:52,106.106 INFO    ] Initializing speech engine...
[2026-10-18 09:19:52,126.126 INFO    ] 2026-10-18 09:19:52
[2026-10-18 09:19:52,403.403 INFO    ] 2026-10-18 09:19:52
[2026-10-18 09:19:52,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:19:52,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:19:52,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:19:52,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:19:52,842.842 INFO    ] time= 18/10/2026 09:19:52
[2026-10-18 09:19:52,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:19:52,878.878 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:19:53,005.005 INFO    ] No existing commands found in stream
[2026-10-18 09:19:58,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:19:58,033.033 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-18 09:19:59,543.543 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:19:59,545.545 INFO    ] Checking for system updates...
[2026-10-18 09:19:59,582.582 INFO    ] 200
[2026-10-18 09:19:59,585.585 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:19:59,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:19:59,650.650 INFO    ] No update needed
[2026-10-18 09:19:59,653.653 INFO    ] Checking for camera pi updates...
[2026-10-18 09:19:59,696.696 INFO    ] 200
[2026-10-18 09:19:59,699.699 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:19:59,741.741 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:20:09,755.755 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:20:09,795.795 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:20:09,806.806 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:20:09,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:20:09,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:20:09,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:20:11,861.861 INFO    ] ================================================
[2026-10-18 09:20:11,877.877 INFO    ] Launching Daemon at Sun Oct 18 09:20:11 IST 2026
[2026-10-18 09:20:11,887.887 INFO    ] ================================================
[2026-10-18 09:20:12,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:20:12
[2026-10-18 09:20:13,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:20:13,344.344 INFO    ] Initializing speech engine...
[2026-10-18 09:20:13,355.355 INFO    ] 2026-10-18 09:20:13
[2026-10-18 09:20:13,615.615 INFO    ] 2026-10-18 09:20:13
[2026-10-18 09:20:13,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:20:13,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:20:13,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:20:14,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:20:14,162.162 INFO    ] time= 18/10/2026 09:20:14
[2026-10-18 09:20:14,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:20:14,186.186 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:20:14,319.319 INFO    ] No existing commands found in stream
[2026-10-18 09:20:19,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:20:19,340.340 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-18 09:20:21,821.821 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:20:21,823.823 INFO    ] Checking for system updates...
[2026-10-18 09:20:21,859.859 INFO    ] 200
[2026-10-18 09:20:21,861.861 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:20:21,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:20:21,915.915 INFO    ] No update needed
[2026-10-18 09:20:21,918.918 INFO    ] Checking for camera pi updates...
[2026-10-18 09:20:21,955.955 INFO    ] 200
[2026-10-18 09:20:21,957.957 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:20:21,997.997 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:20:32,013.013 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:20:32,051.051 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:20:32,062.062 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:20:32,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:20:32,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:20:32,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:20:34,118.118 INFO    ] ================================================
[2026-10-18 09:20:34,134.134 INFO    ] Launching Daemon at Sun Oct 18 09:20:34 IST 2026
[2026-10-18 09:20:34,145.145 INFO    ] ================================================
[2026-10-18 09:20:34,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:20:34
[2026-10-18 09:20:35,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:20:35,775.775 INFO    ] Initializing speech engine...
[2026-10-18 09:20:35,795.795 INFO    ] 2026-10-18 09:20:35
[2026-10-18 09:20:36,101.101 INFO    ] 2026-10-18 09:20:36
[2026-10-18 09:20:36,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:20:36,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:20:36,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:20:36,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:20:36,635.635 INFO    ] time= 18/10/2026 09:20:36
[2026-10-18 09:20:36,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:20:36,675.675 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:20:36,781.781 INFO    ] No existing commands found in stream
[2026-10-18 09:20:41,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:20:41,811.811 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-18 09:20:44,188.188 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:20:44,190.190 INFO    ] Checking for system updates...
[2026-10-18 09:20:44,229.229 INFO    ] 200
[2026-10-18 09:20:44,231.231 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:20:44,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:20:44,296.296 INFO    ] No update needed
[2026-10-18 09:20:44,298.298 INFO    ] Checking for camera pi updates...
[2026-10-18 09:20:44,331.331 INFO    ] 200
[2026-10-18 09:20:44,334.334 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:20:44,374.374 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:20:54,390.390 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:20:54,425.425 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:20:54,435.435 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:20:54,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:20:54,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:20:54,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:20:56,488.488 INFO    ] ================================================
[2026-10-18 09:20:56,504.504 INFO    ] Launching Daemon at Sun Oct 18 09:20:56 IST 2026
[2026-10-18 09:20:56,514.514 INFO    ] ================================================
[2026-10-18 09:20:57,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:20:57
[2026-10-18 09:20:57,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:20:57,995.995 INFO    ] Initializing speech engine...
[2026-10-18 09:20:58,004.004 INFO    ] 2026-10-18 09:20:57
[2026-10-18 09:20:58,294.294 INFO    ] 2026-10-18 09:20:58
[2026-10-18 09:20:58,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:20:58,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:20:58,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:20:58,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:20:58,842.842 INFO    ] time= 18/10/2026 09:20:58
[2026-10-18 09:20:58,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:20:58,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:20:59,016.016 INFO    ] No existing commands found in stream
[2026-10-18 09:21:04,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:21:04,036.036 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-18 09:21:07,351.351 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:21:07,354.354 INFO    ] Checking for system updates...
[2026-10-18 09:21:07,389.389 INFO    ] 200
[2026-10-18 09:21:07,392.392 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:21:07,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:21:07,446.446 INFO    ] No update needed
[2026-10-18 09:21:07,448.448 INFO    ] Checking for camera pi updates...
[2026-10-18 09:21:07,482.482 INFO    ] 200
[2026-10-18 09:21:07,485.485 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:21:07,531.531 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:21:17,546.546 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:21:17,580.580 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:21:17,590.590 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:21:17,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:21:17,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:21:17,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:21:19,642.642 INFO    ] ================================================
[2026-10-18 09:21:19,658.658 INFO    ] Launching Daemon at Sun Oct 18 09:21:19 IST 2026
[2026-10-18 09:21:19,669.669 INFO    ] ================================================
[2026-10-18 09:21:20,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:21:20
[2026-10-18 09:21:20,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:21:21,133.133 INFO    ] Initializing speech engine...
[2026-10-18 09:21:21,141.141 INFO    ] 2026-10-18 09:21:21
[2026-10-18 09:21:21,400.400 INFO    ] 2026-10-18 09:21:21
[2026-10-18 09:21:21,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:21:21,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:21:21,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:21:21,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:21:21,906.906 INFO    ] time= 18/10/2026 09:21:21
[2026-10-18 09:21:21,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:21:21,989.989 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:21:22,119.119 INFO    ] No existing commands found in stream
[2026-10-18 09:21:27,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:21:27,145.145 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-18 09:21:31,140.140 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 09:21:31,143.143 INFO    ] Checking for system updates...
[2026-10-18 09:21:31,179.179 INFO    ] 200
[2026-10-18 09:21:31,182.182 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:21:31,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:21:31,239.239 INFO    ] No update needed
[2026-10-18 09:21:31,241.241 INFO    ] Checking for camera pi updates...
[2026-10-18 09:21:31,275.275 INFO    ] 200
[2026-10-18 09:21:31,277.277 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:21:31,318.318 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:21:41,332.332 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:21:41,370.370 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:21:41,381.381 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:21:41,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:21:41,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:21:41,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:21:43,437.437 INFO    ] ================================================
[2026-10-18 09:21:43,454.454 INFO    ] Launching Daemon at Sun Oct 18 09:21:43 IST 2026
[2026-10-18 09:21:43,466.466 INFO    ] ================================================
[2026-10-18 09:21:44,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:21:44
[2026-10-18 09:21:44,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:21:45,012.012 INFO    ] Initializing speech engine...
[2026-10-18 09:21:45,021.021 INFO    ] 2026-10-18 09:21:45
[2026-10-18 09:21:45,275.275 INFO    ] 2026-10-18 09:21:45
[2026-10-18 09:21:45,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:21:45,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:21:45,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:21:45,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:21:45,678.678 INFO    ] time= 18/10/2026 09:21:45
[2026-10-18 09:21:45,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:21:45,698.698 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:21:45,828.828 INFO    ] No existing commands found in stream
[2026-10-18 09:21:50,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:21:50,851.851 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-18 09:21:55,079.079 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:21:55,081.081 INFO    ] Checking for system updates...
[2026-10-18 09:21:55,117.117 INFO    ] 200
[2026-10-18 09:21:55,119.119 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:21:55,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:21:55,175.175 INFO    ] No update needed
[2026-10-18 09:21:55,178.178 INFO    ] Checking for camera pi updates...
[2026-10-18 09:21:55,212.212 INFO    ] 200
[2026-10-18 09:21:55,215.215 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:21:55,256.256 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:22:05,268.268 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:22:05,304.304 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:22:05,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:22:05,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:22:05,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:22:05,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:22:07,368.368 INFO    ] ================================================
[2026-10-18 09:22:07,384.384 INFO    ] Launching Daemon at Sun Oct 18 09:22:07 IST 2026
[2026-10-18 09:22:07,396.396 INFO    ] ================================================
[2026-10-18 09:22:07,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:22:07
[2026-10-18 09:22:08,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:22:08,823.823 INFO    ] Initializing speech engine...
[2026-10-18 09:22:08,828.828 INFO    ] 2026-10-18 09:22:08
[2026-10-18 09:22:09,073.073 INFO    ] 2026-10-18 09:22:09
[2026-10-18 09:22:09,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:22:09,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:22:09,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:22:09,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:22:09,605.605 INFO    ] time= 18/10/2026 09:22:09
[2026-10-18 09:22:09,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:22:09,638.638 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:22:09,796.796 INFO    ] No existing commands found in stream
[2026-10-18 09:22:14,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:22:14,831.831 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-18 09:22:17,547.547 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:22:17,550.550 INFO    ] Checking for system updates...
[2026-10-18 09:22:17,586.586 INFO    ] 200
[2026-10-18 09:22:17,589.589 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:22:17,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:22:17,643.643 INFO    ] No update needed
[2026-10-18 09:22:17,646.646 INFO    ] Checking for camera pi updates...
[2026-10-18 09:22:17,681.681 INFO    ] 200
[2026-10-18 09:22:17,683.683 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:22:17,730.730 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:22:27,745.745 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:22:27,779.779 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:22:27,789.789 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:22:27,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:22:27,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:22:27,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:22:29,842.842 INFO    ] ================================================
[2026-10-18 09:22:29,858.858 INFO    ] Launching Daemon at Sun Oct 18 09:22:29 IST 2026
[2026-10-18 09:22:29,869.869 INFO    ] ================================================
[2026-10-18 09:22:30,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:22:30
[2026-10-18 09:22:31,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:22:31,472.472 INFO    ] Initializing speech engine...
[2026-10-18 09:22:31,494.494 INFO    ] 2026-10-18 09:22:31
[2026-10-18 09:22:31,782.782 INFO    ] 2026-10-18 09:22:31
[2026-10-18 09:22:31,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:22:32,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:22:32,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:22:32,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:22:32,236.236 INFO    ] time= 18/10/2026 09:22:32
[2026-10-18 09:22:32,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:22:32,324.324 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:22:32,450.450 INFO    ] No existing commands found in stream
[2026-10-18 09:22:37,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:22:37,489.489 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-10-18 09:22:42,015.015 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:22:42,018.018 INFO    ] Checking for system updates...
[2026-10-18 09:22:42,053.053 INFO    ] 200
[2026-10-18 09:22:42,056.056 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:22:42,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:22:42,111.111 INFO    ] No update needed
[2026-10-18 09:22:42,113.113 INFO    ] Checking for camera pi updates...
[2026-10-18 09:22:42,165.165 INFO    ] 200
[2026-10-18 09:22:42,168.168 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:22:42,208.208 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:22:52,222.222 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:22:52,257.257 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:22:52,267.267 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:22:52,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:22:52,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:22:52,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:22:54,319.319 INFO    ] ================================================
[2026-10-18 09:22:54,335.335 INFO    ] Launching Daemon at Sun Oct 18 09:22:54 IST 2026
[2026-10-18 09:22:54,346.346 INFO    ] ================================================
[2026-10-18 09:22:54,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:22:54
[2026-10-18 09:22:55,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:22:55,814.814 INFO    ] Initializing speech engine...
[2026-10-18 09:22:55,822.822 INFO    ] 2026-10-18 09:22:55
[2026-10-18 09:22:56,073.073 INFO    ] 2026-10-18 09:22:56
[2026-10-18 09:22:56,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:22:56,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:22:56,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:22:56,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:22:56,640.640 INFO    ] time= 18/10/2026 09:22:56
[2026-10-18 09:22:56,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:22:56,666.666 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:22:56,804.804 INFO    ] No existing commands found in stream
[2026-10-18 09:23:01,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:23:01,832.832 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-18 09:23:05,494.494 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:23:05,497.497 INFO    ] Checking for system updates...
[2026-10-18 09:23:05,533.533 INFO    ] 200
[2026-10-18 09:23:05,535.535 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:23:05,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:23:05,589.589 INFO    ] No update needed
[2026-10-18 09:23:05,591.591 INFO    ] Checking for camera pi updates...
[2026-10-18 09:23:05,628.628 INFO    ] 200
[2026-10-18 09:23:05,630.630 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:23:05,670.670 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:23:15,686.686 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:23:15,720.720 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:23:15,730.730 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:23:15,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:23:15,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:23:15,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:23:17,782.782 INFO    ] ================================================
[2026-10-18 09:23:17,799.799 INFO    ] Launching Daemon at Sun Oct 18 09:23:17 IST 2026
[2026-10-18 09:23:17,810.810 INFO    ] ================================================
[2026-10-18 09:23:18,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:23:18
[2026-10-18 09:23:18,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:23:19,213.213 INFO    ] Initializing speech engine...
[2026-10-18 09:23:19,235.235 INFO    ] 2026-10-18 09:23:19
[2026-10-18 09:23:19,492.492 INFO    ] 2026-10-18 09:23:19
[2026-10-18 09:23:19,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:23:19,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:23:19,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:23:19,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:23:19,991.991 INFO    ] time= 18/10/2026 09:23:19
[2026-10-18 09:23:20,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:23:20,068.068 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:23:20,205.205 INFO    ] No existing commands found in stream
[2026-10-18 09:23:25,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:23:25,230.230 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-18 09:23:29,486.486 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:23:29,489.489 INFO    ] Checking for system updates...
[2026-10-18 09:23:29,526.526 INFO    ] 200
[2026-10-18 09:23:29,528.528 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:23:29,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:23:29,583.583 INFO    ] No update needed
[2026-10-18 09:23:29,586.586 INFO    ] Checking for camera pi updates...
[2026-10-18 09:23:29,621.621 INFO    ] 200
[2026-10-18 09:23:29,623.623 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:23:29,668.668 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:23:39,684.684 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:23:39,722.722 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:23:39,733.733 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:23:39,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:23:39,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:23:39,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:23:41,787.787 INFO    ] ================================================
[2026-10-18 09:23:41,803.803 INFO    ] Launching Daemon at Sun Oct 18 09:23:41 IST 2026
[2026-10-18 09:23:41,814.814 INFO    ] ================================================
[2026-10-18 09:23:42,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:23:42
[2026-10-18 09:23:43,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:23:43,289.289 INFO    ] Initializing speech engine...
[2026-10-18 09:23:43,302.302 INFO    ] 2026-10-18 09:23:43
[2026-10-18 09:23:43,571.571 INFO    ] 2026-10-18 09:23:43
[2026-10-18 09:23:43,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:23:43,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:23:43,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:23:44,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:23:44,078.078 INFO    ] time= 18/10/2026 09:23:44
[2026-10-18 09:23:44,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:23:44,148.148 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:23:44,284.284 INFO    ] No existing commands found in stream
[2026-10-18 09:23:49,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:23:49,311.311 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-18 09:23:49,831.831 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 09:23:49,833.833 INFO    ] Checking for system updates...
[2026-10-18 09:23:49,870.870 INFO    ] 200
[2026-10-18 09:23:49,873.873 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:23:49,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:23:49,929.929 INFO    ] No update needed
[2026-10-18 09:23:49,931.931 INFO    ] Checking for camera pi updates...
[2026-10-18 09:23:49,968.968 INFO    ] 200
[2026-10-18 09:23:49,970.970 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:23:50,016.016 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:24:00,032.032 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:24:00,070.070 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:24:00,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:24:00,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:24:00,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:24:00,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:24:02,140.140 INFO    ] ================================================
[2026-10-18 09:24:02,164.164 INFO    ] Launching Daemon at Sun Oct 18 09:24:02 IST 2026
[2026-10-18 09:24:02,181.181 INFO    ] ================================================
[2026-10-18 09:24:02,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:24:02
[2026-10-18 09:24:03,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:24:03,789.789 INFO    ] Initializing speech engine...
[2026-10-18 09:24:03,811.811 INFO    ] 2026-10-18 09:24:03
[2026-10-18 09:24:04,077.077 INFO    ] 2026-10-18 09:24:04
[2026-10-18 09:24:04,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:24:04,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:24:04,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:24:04,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:24:04,489.489 INFO    ] time= 18/10/2026 09:24:04
[2026-10-18 09:24:04,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:24:04,518.518 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:24:04,657.657 INFO    ] No existing commands found in stream
[2026-10-18 09:24:09,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:24:09,690.690 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-18 09:24:11,790.790 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:24:11,793.793 INFO    ] Checking for system updates...
[2026-10-18 09:24:11,832.832 INFO    ] 200
[2026-10-18 09:24:11,834.834 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:24:11,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:24:11,894.894 INFO    ] No update needed
[2026-10-18 09:24:11,897.897 INFO    ] Checking for camera pi updates...
[2026-10-18 09:24:11,930.930 INFO    ] 200
[2026-10-18 09:24:11,932.932 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:24:11,973.973 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:24:21,987.987 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:24:22,026.026 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:24:22,037.037 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:24:22,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:24:22,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:24:22,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:24:24,092.092 INFO    ] ================================================
[2026-10-18 09:24:24,108.108 INFO    ] Launching Daemon at Sun Oct 18 09:24:24 IST 2026
[2026-10-18 09:24:24,119.119 INFO    ] ================================================
[2026-10-18 09:24:24,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:24:24
[2026-10-18 09:24:25,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:24:25,575.575 INFO    ] Initializing speech engine...
[2026-10-18 09:24:25,586.586 INFO    ] 2026-10-18 09:24:25
[2026-10-18 09:24:25,846.846 INFO    ] 2026-10-18 09:24:25
[2026-10-18 09:24:25,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:24:26,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:24:26,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:24:26,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:24:26,393.393 INFO    ] time= 18/10/2026 09:24:26
[2026-10-18 09:24:26,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:24:26,417.417 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:24:26,540.540 INFO    ] No existing commands found in stream
[2026-10-18 09:24:31,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:24:31,559.559 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-18 09:24:35,110.110 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:24:35,112.112 INFO    ] Checking for system updates...
[2026-10-18 09:24:35,152.152 INFO    ] 200
[2026-10-18 09:24:35,154.154 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:24:35,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:24:35,216.216 INFO    ] No update needed
[2026-10-18 09:24:35,218.218 INFO    ] Checking for camera pi updates...
[2026-10-18 09:24:35,252.252 INFO    ] 200
[2026-10-18 09:24:35,255.255 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:24:35,296.296 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:24:45,312.312 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2e150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:24:45,348.348 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:24:45,358.358 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:24:45,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:24:45,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:24:45,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:24:47,412.412 INFO    ] ================================================
[2026-10-18 09:24:47,427.427 INFO    ] Launching Daemon at Sun Oct 18 09:24:47 IST 2026
[2026-10-18 09:24:47,439.439 INFO    ] ================================================
[2026-10-18 09:24:48,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:24:48
[2026-10-18 09:24:48,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:24:49,042.042 INFO    ] Initializing speech engine...
[2026-10-18 09:24:49,056.056 INFO    ] 2026-10-18 09:24:49
[2026-10-18 09:24:49,337.337 INFO    ] 2026-10-18 09:24:49
[2026-10-18 09:24:49,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:24:49,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:24:49,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:24:49,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:24:49,887.887 INFO    ] time= 18/10/2026 09:24:49
[2026-10-18 09:24:49,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:24:49,923.923 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:24:50,065.065 INFO    ] No existing commands found in stream
[2026-10-18 09:24:55,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:24:55,099.099 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-18 09:24:57,512.512 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:24:57,515.515 INFO    ] Checking for system updates...
[2026-10-18 09:24:57,552.552 INFO    ] 200
[2026-10-18 09:24:57,554.554 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:24:57,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:24:57,615.615 INFO    ] No update needed
[2026-10-18 09:24:57,617.617 INFO    ] Checking for camera pi updates...
[2026-10-18 09:24:57,658.658 INFO    ] 200
[2026-10-18 09:24:57,660.660 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:24:57,700.700 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:25:07,715.715 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:25:07,750.750 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:25:07,764.764 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:25:07,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:25:07,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:25:07,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:25:09,819.819 INFO    ] ================================================
[2026-10-18 09:25:09,835.835 INFO    ] Launching Daemon at Sun Oct 18 09:25:09 IST 2026
[2026-10-18 09:25:09,846.846 INFO    ] ================================================
[2026-10-18 09:25:10,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:25:10
[2026-10-18 09:25:11,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:25:11,254.254 INFO    ] Initializing speech engine...
[2026-10-18 09:25:11,262.262 INFO    ] 2026-10-18 09:25:11
[2026-10-18 09:25:11,552.552 INFO    ] 2026-10-18 09:25:11
[2026-10-18 09:25:11,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:25:11,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:25:11,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:25:12,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:25:12,039.039 INFO    ] time= 18/10/2026 09:25:12
[2026-10-18 09:25:12,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:25:12,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:25:12,242.242 INFO    ] No existing commands found in stream
[2026-10-18 09:25:17,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:25:17,257.257 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-18 09:25:21,504.504 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:25:21,506.506 INFO    ] Checking for system updates...
[2026-10-18 09:25:21,545.545 INFO    ] 200
[2026-10-18 09:25:21,548.548 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:25:21,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:25:21,608.608 INFO    ] No update needed
[2026-10-18 09:25:21,610.610 INFO    ] Checking for camera pi updates...
[2026-10-18 09:25:21,644.644 INFO    ] 200
[2026-10-18 09:25:21,646.646 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:25:21,686.686 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:25:31,702.702 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:25:31,739.739 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:25:31,749.749 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:25:31,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:25:31,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:25:31,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:25:33,805.805 INFO    ] ================================================
[2026-10-18 09:25:33,820.820 INFO    ] Launching Daemon at Sun Oct 18 09:25:33 IST 2026
[2026-10-18 09:25:33,831.831 INFO    ] ================================================
[2026-10-18 09:25:34,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:25:34
[2026-10-18 09:25:35,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:25:35,286.286 INFO    ] Initializing speech engine...
[2026-10-18 09:25:35,296.296 INFO    ] 2026-10-18 09:25:35
[2026-10-18 09:25:35,556.556 INFO    ] 2026-10-18 09:25:35
[2026-10-18 09:25:35,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:25:35,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:25:35,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:25:36,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:25:36,096.096 INFO    ] time= 18/10/2026 09:25:36
[2026-10-18 09:25:36,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:25:36,120.120 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:25:36,252.252 INFO    ] No existing commands found in stream
[2026-10-18 09:25:41,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:25:41,277.277 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-18 09:25:45,427.427 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:25:45,429.429 INFO    ] Checking for system updates...
[2026-10-18 09:25:45,469.469 INFO    ] 200
[2026-10-18 09:25:45,471.471 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:25:45,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:25:45,531.531 INFO    ] No update needed
[2026-10-18 09:25:45,533.533 INFO    ] Checking for camera pi updates...
[2026-10-18 09:25:45,570.570 INFO    ] 200
[2026-10-18 09:25:45,572.572 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:25:45,612.612 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:25:55,627.627 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:25:55,662.662 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:25:55,671.671 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:25:55,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:25:55,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:25:55,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:25:57,724.724 INFO    ] ================================================
[2026-10-18 09:25:57,740.740 INFO    ] Launching Daemon at Sun Oct 18 09:25:57 IST 2026
[2026-10-18 09:25:57,751.751 INFO    ] ================================================
[2026-10-18 09:25:58,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:25:58
[2026-10-18 09:25:58,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:25:59,200.200 INFO    ] Initializing speech engine...
[2026-10-18 09:25:59,211.211 INFO    ] 2026-10-18 09:25:59
[2026-10-18 09:25:59,484.484 INFO    ] 2026-10-18 09:25:59
[2026-10-18 09:25:59,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:25:59,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:25:59,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:25:59,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:25:59,986.986 INFO    ] time= 18/10/2026 09:25:59
[2026-10-18 09:26:00,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:26:00,053.053 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:26:00,218.218 INFO    ] No existing commands found in stream
[2026-10-18 09:26:05,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:26:05,259.259 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-18 09:26:09,309.309 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 09:26:09,312.312 INFO    ] Checking for system updates...
[2026-10-18 09:26:09,348.348 INFO    ] 200
[2026-10-18 09:26:09,351.351 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:26:09,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:26:09,406.406 INFO    ] No update needed
[2026-10-18 09:26:09,409.409 INFO    ] Checking for camera pi updates...
[2026-10-18 09:26:09,445.445 INFO    ] 200
[2026-10-18 09:26:09,448.448 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:26:09,489.489 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:26:19,505.505 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:26:19,543.543 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:26:19,554.554 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:26:19,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:26:19,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:26:19,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:26:21,607.607 INFO    ] ================================================
[2026-10-18 09:26:21,622.622 INFO    ] Launching Daemon at Sun Oct 18 09:26:21 IST 2026
[2026-10-18 09:26:21,633.633 INFO    ] ================================================
[2026-10-18 09:26:22,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:26:22
[2026-10-18 09:26:22,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:26:23,065.065 INFO    ] Initializing speech engine...
[2026-10-18 09:26:23,085.085 INFO    ] 2026-10-18 09:26:23
[2026-10-18 09:26:23,347.347 INFO    ] 2026-10-18 09:26:23
[2026-10-18 09:26:23,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:26:23,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:26:23,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:26:23,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:26:23,922.922 INFO    ] time= 18/10/2026 09:26:23
[2026-10-18 09:26:23,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:26:23,946.946 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:26:24,060.060 INFO    ] No existing commands found in stream
[2026-10-18 09:26:29,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:26:29,091.091 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-18 09:26:30,109.109 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:26:30,111.111 INFO    ] Checking for system updates...
[2026-10-18 09:26:30,148.148 INFO    ] 200
[2026-10-18 09:26:30,151.151 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:26:30,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:26:30,210.210 INFO    ] No update needed
[2026-10-18 09:26:30,212.212 INFO    ] Checking for camera pi updates...
[2026-10-18 09:26:30,245.245 INFO    ] 200
[2026-10-18 09:26:30,248.248 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:26:30,292.292 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:26:40,307.307 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:26:40,342.342 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:26:40,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:26:40,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:26:40,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:26:40,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:26:42,403.403 INFO    ] ================================================
[2026-10-18 09:26:42,418.418 INFO    ] Launching Daemon at Sun Oct 18 09:26:42 IST 2026
[2026-10-18 09:26:42,429.429 INFO    ] ================================================
[2026-10-18 09:26:43,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:26:43
[2026-10-18 09:26:43,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:26:43,989.989 INFO    ] Initializing speech engine...
[2026-10-18 09:26:43,996.996 INFO    ] 2026-10-18 09:26:43
[2026-10-18 09:26:44,261.261 INFO    ] 2026-10-18 09:26:44
[2026-10-18 09:26:44,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:26:44,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:26:44,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:26:44,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:26:44,775.775 INFO    ] time= 18/10/2026 09:26:44
[2026-10-18 09:26:44,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:26:44,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:26:44,982.982 INFO    ] No existing commands found in stream
[2026-10-18 09:26:50,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:26:50,004.004 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-18 09:26:52,644.644 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 09:26:52,647.647 INFO    ] Checking for system updates...
[2026-10-18 09:26:52,683.683 INFO    ] 200
[2026-10-18 09:26:52,685.685 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:26:52,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:26:52,740.740 INFO    ] No update needed
[2026-10-18 09:26:52,742.742 INFO    ] Checking for camera pi updates...
[2026-10-18 09:26:52,778.778 INFO    ] 200
[2026-10-18 09:26:52,781.781 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:26:52,823.823 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:27:02,838.838 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:27:02,889.889 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:27:02,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:27:02,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:27:02,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:27:02,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:27:04,959.959 INFO    ] ================================================
[2026-10-18 09:27:04,974.974 INFO    ] Launching Daemon at Sun Oct 18 09:27:04 IST 2026
[2026-10-18 09:27:04,985.985 INFO    ] ================================================
[2026-10-18 09:27:05,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:27:05
[2026-10-18 09:27:06,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:27:06,395.395 INFO    ] Initializing speech engine...
[2026-10-18 09:27:06,419.419 INFO    ] 2026-10-18 09:27:06
[2026-10-18 09:27:06,682.682 INFO    ] 2026-10-18 09:27:06
[2026-10-18 09:27:06,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:27:06,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:27:06,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:27:07,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:27:07,163.163 INFO    ] time= 18/10/2026 09:27:07
[2026-10-18 09:27:07,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:27:07,267.267 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:27:07,360.360 INFO    ] No existing commands found in stream
[2026-10-18 09:27:12,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:27:12,374.374 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-18 09:27:14,720.720 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:27:14,723.723 INFO    ] Checking for system updates...
[2026-10-18 09:27:14,758.758 INFO    ] 200
[2026-10-18 09:27:14,760.760 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:27:14,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:27:14,820.820 INFO    ] No update needed
[2026-10-18 09:27:14,822.822 INFO    ] Checking for camera pi updates...
[2026-10-18 09:27:14,855.855 INFO    ] 200
[2026-10-18 09:27:14,858.858 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:27:14,897.897 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:27:24,913.913 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:27:24,948.948 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:27:24,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:27:24,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:27:24,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:27:24,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:27:27,009.009 INFO    ] ================================================
[2026-10-18 09:27:27,024.024 INFO    ] Launching Daemon at Sun Oct 18 09:27:27 IST 2026
[2026-10-18 09:27:27,034.034 INFO    ] ================================================
[2026-10-18 09:27:27,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:27:27
[2026-10-18 09:27:28,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:27:28,445.445 INFO    ] Initializing speech engine...
[2026-10-18 09:27:28,460.460 INFO    ] 2026-10-18 09:27:28
[2026-10-18 09:27:28,726.726 INFO    ] 2026-10-18 09:27:28
[2026-10-18 09:27:28,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:27:28,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:27:29,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:27:29,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:27:29,199.199 INFO    ] time= 18/10/2026 09:27:29
[2026-10-18 09:27:29,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:27:29,298.298 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:27:29,445.445 INFO    ] No existing commands found in stream
[2026-10-18 09:27:34,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:27:34,463.463 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-18 09:27:38,173.173 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:27:38,175.175 INFO    ] Checking for system updates...
[2026-10-18 09:27:38,211.211 INFO    ] 200
[2026-10-18 09:27:38,213.213 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:27:38,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:27:38,272.272 INFO    ] No update needed
[2026-10-18 09:27:38,274.274 INFO    ] Checking for camera pi updates...
[2026-10-18 09:27:38,308.308 INFO    ] 200
[2026-10-18 09:27:38,310.310 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:27:38,354.354 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:27:48,369.369 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:27:48,404.404 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:27:48,414.414 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:27:48,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:27:48,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:27:48,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:27:50,467.467 INFO    ] ================================================
[2026-10-18 09:27:50,483.483 INFO    ] Launching Daemon at Sun Oct 18 09:27:50 IST 2026
[2026-10-18 09:27:50,495.495 INFO    ] ================================================
[2026-10-18 09:27:51,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:27:51
[2026-10-18 09:27:51,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:27:51,952.952 INFO    ] Initializing speech engine...
[2026-10-18 09:27:51,959.959 INFO    ] 2026-10-18 09:27:51
[2026-10-18 09:27:52,206.206 INFO    ] 2026-10-18 09:27:52
[2026-10-18 09:27:52,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:27:52,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:27:52,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:27:52,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:27:52,715.715 INFO    ] time= 18/10/2026 09:27:52
[2026-10-18 09:27:52,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:27:52,774.774 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:27:52,919.919 INFO    ] No existing commands found in stream
[2026-10-18 09:27:57,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:27:57,941.941 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-18 09:28:02,319.319 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:28:02,323.323 INFO    ] Checking for system updates...
[2026-10-18 09:28:02,371.371 INFO    ] 200
[2026-10-18 09:28:02,374.374 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:28:02,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:28:02,447.447 INFO    ] No update needed
[2026-10-18 09:28:02,450.450 INFO    ] Checking for camera pi updates...
[2026-10-18 09:28:02,489.489 INFO    ] 200
[2026-10-18 09:28:02,492.492 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:28:02,556.556 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:28:12,571.571 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:28:12,607.607 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:28:12,617.617 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:28:12,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:28:12,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:28:12,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:28:14,671.671 INFO    ] ================================================
[2026-10-18 09:28:14,687.687 INFO    ] Launching Daemon at Sun Oct 18 09:28:14 IST 2026
[2026-10-18 09:28:14,698.698 INFO    ] ================================================
[2026-10-18 09:28:15,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:28:15
[2026-10-18 09:28:15,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:28:16,194.194 INFO    ] Initializing speech engine...
[2026-10-18 09:28:16,200.200 INFO    ] 2026-10-18 09:28:16
[2026-10-18 09:28:16,489.489 INFO    ] 2026-10-18 09:28:16
[2026-10-18 09:28:16,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:28:16,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:28:16,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:28:16,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:28:16,986.986 INFO    ] time= 18/10/2026 09:28:16
[2026-10-18 09:28:17,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:28:17,099.099 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:28:17,253.253 INFO    ] No existing commands found in stream
[2026-10-18 09:28:22,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:28:22,278.278 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-18 09:28:26,007.007 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:28:26,010.010 INFO    ] Checking for system updates...
[2026-10-18 09:28:26,046.046 INFO    ] 200
[2026-10-18 09:28:26,048.048 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:28:26,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:28:26,104.104 INFO    ] No update needed
[2026-10-18 09:28:26,106.106 INFO    ] Checking for camera pi updates...
[2026-10-18 09:28:26,146.146 INFO    ] 200
[2026-10-18 09:28:26,149.149 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:28:26,192.192 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:28:36,208.208 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:28:36,243.243 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:28:36,252.252 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:28:36,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:28:36,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:28:36,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:28:38,305.305 INFO    ] ================================================
[2026-10-18 09:28:38,321.321 INFO    ] Launching Daemon at Sun Oct 18 09:28:38 IST 2026
[2026-10-18 09:28:38,332.332 INFO    ] ================================================
[2026-10-18 09:28:38,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:28:38
[2026-10-18 09:28:39,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:28:39,861.861 INFO    ] Initializing speech engine...
[2026-10-18 09:28:39,871.871 INFO    ] 2026-10-18 09:28:39
[2026-10-18 09:28:40,141.141 INFO    ] 2026-10-18 09:28:40
[2026-10-18 09:28:40,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:28:40,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:28:40,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:28:40,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:28:40,691.691 INFO    ] time= 18/10/2026 09:28:40
[2026-10-18 09:28:40,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:28:40,728.728 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:28:40,856.856 INFO    ] No existing commands found in stream
[2026-10-18 09:28:45,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:28:45,885.885 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-18 09:28:50,353.353 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:28:50,356.356 INFO    ] Checking for system updates...
[2026-10-18 09:28:50,397.397 INFO    ] 200
[2026-10-18 09:28:50,401.401 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:28:50,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:28:50,462.462 INFO    ] No update needed
[2026-10-18 09:28:50,465.465 INFO    ] Checking for camera pi updates...
[2026-10-18 09:28:50,501.501 INFO    ] 200
[2026-10-18 09:28:50,504.504 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:28:50,545.545 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:29:00,561.561 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:29:00,600.600 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:29:00,611.611 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:29:00,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:29:00,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:29:00,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:29:02,672.672 INFO    ] ================================================
[2026-10-18 09:29:02,695.695 INFO    ] Launching Daemon at Sun Oct 18 09:29:02 IST 2026
[2026-10-18 09:29:02,722.722 INFO    ] ================================================
[2026-10-18 09:29:03,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:29:03
[2026-10-18 09:29:03,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:29:04,237.237 INFO    ] Initializing speech engine...
[2026-10-18 09:29:04,245.245 INFO    ] 2026-10-18 09:29:04
[2026-10-18 09:29:04,538.538 INFO    ] 2026-10-18 09:29:04
[2026-10-18 09:29:04,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:29:04,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:29:04,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:29:04,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:29:04,948.948 INFO    ] time= 18/10/2026 09:29:04
[2026-10-18 09:29:04,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:29:05,007.007 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:29:05,142.142 INFO    ] No existing commands found in stream
[2026-10-18 09:29:10,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:29:10,170.170 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-18 09:29:13,572.572 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:29:13,574.574 INFO    ] Checking for system updates...
[2026-10-18 09:29:13,611.611 INFO    ] 200
[2026-10-18 09:29:13,613.613 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:29:13,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:29:13,668.668 INFO    ] No update needed
[2026-10-18 09:29:13,671.671 INFO    ] Checking for camera pi updates...
[2026-10-18 09:29:13,705.705 INFO    ] 200
[2026-10-18 09:29:13,708.708 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:29:13,753.753 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:29:23,767.767 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:29:23,806.806 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:29:23,816.816 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:29:23,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:29:23,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:29:23,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:29:25,870.870 INFO    ] ================================================
[2026-10-18 09:29:25,886.886 INFO    ] Launching Daemon at Sun Oct 18 09:29:25 IST 2026
[2026-10-18 09:29:25,896.896 INFO    ] ================================================
[2026-10-18 09:29:26,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:29:26
[2026-10-18 09:29:27,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:29:27,357.357 INFO    ] Initializing speech engine...
[2026-10-18 09:29:27,366.366 INFO    ] 2026-10-18 09:29:27
[2026-10-18 09:29:27,628.628 INFO    ] 2026-10-18 09:29:27
[2026-10-18 09:29:27,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:29:27,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:29:27,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:29:28,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:29:28,169.169 INFO    ] time= 18/10/2026 09:29:28
[2026-10-18 09:29:28,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:29:28,196.196 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:29:28,322.322 INFO    ] No existing commands found in stream
[2026-10-18 09:29:33,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:29:33,339.339 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-18 09:29:35,372.372 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:29:35,375.375 INFO    ] Checking for system updates...
[2026-10-18 09:29:35,411.411 INFO    ] 200
[2026-10-18 09:29:35,413.413 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:29:35,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:29:35,468.468 INFO    ] No update needed
[2026-10-18 09:29:35,470.470 INFO    ] Checking for camera pi updates...
[2026-10-18 09:29:35,511.511 INFO    ] 200
[2026-10-18 09:29:35,513.513 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:29:35,554.554 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:29:45,569.569 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:29:45,603.603 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:29:45,613.613 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:29:45,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:29:45,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:29:45,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:29:47,667.667 INFO    ] ================================================
[2026-10-18 09:29:47,682.682 INFO    ] Launching Daemon at Sun Oct 18 09:29:47 IST 2026
[2026-10-18 09:29:47,693.693 INFO    ] ================================================
[2026-10-18 09:29:48,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:29:48
[2026-10-18 09:29:48,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:29:49,109.109 INFO    ] Initializing speech engine...
[2026-10-18 09:29:49,130.130 INFO    ] 2026-10-18 09:29:49
[2026-10-18 09:29:49,390.390 INFO    ] 2026-10-18 09:29:49
[2026-10-18 09:29:49,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:29:49,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:29:49,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:29:49,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:29:49,959.959 INFO    ] time= 18/10/2026 09:29:49
[2026-10-18 09:29:49,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:29:49,987.987 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:29:50,124.124 INFO    ] No existing commands found in stream
[2026-10-18 09:29:55,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:29:55,159.159 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-18 09:29:58,050.050 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:29:58,052.052 INFO    ] Checking for system updates...
[2026-10-18 09:29:58,090.090 INFO    ] 200
[2026-10-18 09:29:58,092.092 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:29:58,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:29:58,153.153 INFO    ] No update needed
[2026-10-18 09:29:58,156.156 INFO    ] Checking for camera pi updates...
[2026-10-18 09:29:58,191.191 INFO    ] 200
[2026-10-18 09:29:58,194.194 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:29:58,237.237 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:30:08,253.253 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:30:08,288.288 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:30:08,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:30:08,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:30:08,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:30:08,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:30:10,352.352 INFO    ] ================================================
[2026-10-18 09:30:10,367.367 INFO    ] Launching Daemon at Sun Oct 18 09:30:10 IST 2026
[2026-10-18 09:30:10,378.378 INFO    ] ================================================
[2026-10-18 09:30:10,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:30:10
[2026-10-18 09:30:11,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:30:11,792.792 INFO    ] Initializing speech engine...
[2026-10-18 09:30:11,804.804 INFO    ] 2026-10-18 09:30:11
[2026-10-18 09:30:12,072.072 INFO    ] 2026-10-18 09:30:12
[2026-10-18 09:30:12,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:30:12,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:30:12,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:30:12,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:30:12,610.610 INFO    ] time= 18/10/2026 09:30:12
[2026-10-18 09:30:12,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:30:12,648.648 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:30:12,767.767 INFO    ] No existing commands found in stream
[2026-10-18 09:30:17,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:30:17,793.793 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-18 09:30:20,814.814 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:30:20,816.816 INFO    ] Checking for system updates...
[2026-10-18 09:30:20,853.853 INFO    ] 200
[2026-10-18 09:30:20,856.856 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:30:20,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:30:20,910.910 INFO    ] No update needed
[2026-10-18 09:30:20,912.912 INFO    ] Checking for camera pi updates...
[2026-10-18 09:30:20,949.949 INFO    ] 200
[2026-10-18 09:30:20,951.951 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:30:20,995.995 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:30:31,011.011 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:30:31,046.046 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:30:31,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:30:31,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:30:31,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:30:31,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:30:33,110.110 INFO    ] ================================================
[2026-10-18 09:30:33,125.125 INFO    ] Launching Daemon at Sun Oct 18 09:30:33 IST 2026
[2026-10-18 09:30:33,136.136 INFO    ] ================================================
[2026-10-18 09:30:33,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:30:33
[2026-10-18 09:30:34,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:30:34,572.572 INFO    ] Initializing speech engine...
[2026-10-18 09:30:34,591.591 INFO    ] 2026-10-18 09:30:34
[2026-10-18 09:30:34,838.838 INFO    ] 2026-10-18 09:30:34
[2026-10-18 09:30:34,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:30:35,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:30:35,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:30:35,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:30:35,379.379 INFO    ] time= 18/10/2026 09:30:35
[2026-10-18 09:30:35,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:30:35,413.413 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:30:35,541.541 INFO    ] No existing commands found in stream
[2026-10-18 09:30:40,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:30:40,560.560 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-18 09:30:42,102.102 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 09:30:42,104.104 INFO    ] Checking for system updates...
[2026-10-18 09:30:42,140.140 INFO    ] 200
[2026-10-18 09:30:42,143.143 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:30:42,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:30:42,198.198 INFO    ] No update needed
[2026-10-18 09:30:42,200.200 INFO    ] Checking for camera pi updates...
[2026-10-18 09:30:42,233.233 INFO    ] 200
[2026-10-18 09:30:42,236.236 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:30:42,280.280 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:30:52,295.295 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:30:52,330.330 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:30:52,340.340 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:30:52,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:30:52,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:30:52,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:30:54,393.393 INFO    ] ================================================
[2026-10-18 09:30:54,409.409 INFO    ] Launching Daemon at Sun Oct 18 09:30:54 IST 2026
[2026-10-18 09:30:54,420.420 INFO    ] ================================================
[2026-10-18 09:30:54,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:30:54
[2026-10-18 09:30:55,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:30:55,839.839 INFO    ] Initializing speech engine...
[2026-10-18 09:30:55,855.855 INFO    ] 2026-10-18 09:30:55
[2026-10-18 09:30:56,112.112 INFO    ] 2026-10-18 09:30:56
[2026-10-18 09:30:56,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:30:56,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:30:56,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:30:56,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:30:56,666.666 INFO    ] time= 18/10/2026 09:30:56
[2026-10-18 09:30:56,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:30:56,692.692 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:30:56,844.844 INFO    ] No existing commands found in stream
[2026-10-18 09:31:01,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:31:01,867.867 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-18 09:31:05,072.072 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:31:05,074.074 INFO    ] Checking for system updates...
[2026-10-18 09:31:05,109.109 INFO    ] 200
[2026-10-18 09:31:05,112.112 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:31:05,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:31:05,170.170 INFO    ] No update needed
[2026-10-18 09:31:05,173.173 INFO    ] Checking for camera pi updates...
[2026-10-18 09:31:05,207.207 INFO    ] 200
[2026-10-18 09:31:05,209.209 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:31:05,250.250 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:31:15,265.265 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:31:15,300.300 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:31:15,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:31:15,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:31:15,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:31:15,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:31:17,362.362 INFO    ] ================================================
[2026-10-18 09:31:17,378.378 INFO    ] Launching Daemon at Sun Oct 18 09:31:17 IST 2026
[2026-10-18 09:31:17,390.390 INFO    ] ================================================
[2026-10-18 09:31:17,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:31:17
[2026-10-18 09:31:18,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:31:18,819.819 INFO    ] Initializing speech engine...
[2026-10-18 09:31:18,832.832 INFO    ] 2026-10-18 09:31:18
[2026-10-18 09:31:19,079.079 INFO    ] 2026-10-18 09:31:19
[2026-10-18 09:31:19,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:31:19,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:31:19,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:31:19,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:31:19,601.601 INFO    ] time= 18/10/2026 09:31:19
[2026-10-18 09:31:19,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:31:19,688.688 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:31:19,842.842 INFO    ] No existing commands found in stream
[2026-10-18 09:31:24,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:31:24,870.870 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-18 09:31:26,374.374 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:31:26,376.376 INFO    ] Checking for system updates...
[2026-10-18 09:31:26,411.411 INFO    ] 200
[2026-10-18 09:31:26,414.414 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:31:26,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:31:26,468.468 INFO    ] No update needed
[2026-10-18 09:31:26,470.470 INFO    ] Checking for camera pi updates...
[2026-10-18 09:31:26,503.503 INFO    ] 200
[2026-10-18 09:31:26,506.506 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:31:26,546.546 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:31:36,561.561 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:31:36,596.596 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:31:36,606.606 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:31:36,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:31:36,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:31:36,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:31:38,659.659 INFO    ] ================================================
[2026-10-18 09:31:38,674.674 INFO    ] Launching Daemon at Sun Oct 18 09:31:38 IST 2026
[2026-10-18 09:31:38,685.685 INFO    ] ================================================
[2026-10-18 09:31:39,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:31:39
[2026-10-18 09:31:39,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:31:40,294.294 INFO    ] Initializing speech engine...
[2026-10-18 09:31:40,308.308 INFO    ] 2026-10-18 09:31:40
[2026-10-18 09:31:40,617.617 INFO    ] 2026-10-18 09:31:40
[2026-10-18 09:31:40,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:31:40,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:31:40,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:31:41,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:31:41,140.140 INFO    ] time= 18/10/2026 09:31:41
[2026-10-18 09:31:41,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:31:41,182.182 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:31:41,294.294 INFO    ] No existing commands found in stream
[2026-10-18 09:31:46,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:31:46,338.338 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-18 09:31:49,292.292 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:31:49,295.295 INFO    ] Checking for system updates...
[2026-10-18 09:31:49,334.334 INFO    ] 200
[2026-10-18 09:31:49,337.337 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:31:49,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:31:49,398.398 INFO    ] No update needed
[2026-10-18 09:31:49,400.400 INFO    ] Checking for camera pi updates...
[2026-10-18 09:31:49,442.442 INFO    ] 200
[2026-10-18 09:31:49,444.444 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:31:49,501.501 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:31:59,513.513 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:31:59,550.550 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:31:59,560.560 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:31:59,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:31:59,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:31:59,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:32:01,616.616 INFO    ] ================================================
[2026-10-18 09:32:01,637.637 INFO    ] Launching Daemon at Sun Oct 18 09:32:01 IST 2026
[2026-10-18 09:32:01,653.653 INFO    ] ================================================
[2026-10-18 09:32:02,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:32:02
[2026-10-18 09:32:02,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:32:03,261.261 INFO    ] Initializing speech engine...
[2026-10-18 09:32:03,274.274 INFO    ] 2026-10-18 09:32:03
[2026-10-18 09:32:03,527.527 INFO    ] 2026-10-18 09:32:03
[2026-10-18 09:32:03,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:32:03,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:32:03,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:32:03,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:32:03,981.981 INFO    ] time= 18/10/2026 09:32:03
[2026-10-18 09:32:04,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:32:04,089.089 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:32:04,231.231 INFO    ] No existing commands found in stream
[2026-10-18 09:32:09,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:32:09,262.262 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-18 09:32:10,059.059 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:32:10,061.061 INFO    ] Checking for system updates...
[2026-10-18 09:32:10,097.097 INFO    ] 200
[2026-10-18 09:32:10,099.099 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:32:10,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:32:10,154.154 INFO    ] No update needed
[2026-10-18 09:32:10,156.156 INFO    ] Checking for camera pi updates...
[2026-10-18 09:32:10,190.190 INFO    ] 200
[2026-10-18 09:32:10,192.192 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:32:10,236.236 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:32:20,251.251 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:32:20,286.286 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:32:20,296.296 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:32:20,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:32:20,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:32:20,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:32:22,351.351 INFO    ] ================================================
[2026-10-18 09:32:22,368.368 INFO    ] Launching Daemon at Sun Oct 18 09:32:22 IST 2026
[2026-10-18 09:32:22,379.379 INFO    ] ================================================
[2026-10-18 09:32:22,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:32:22
[2026-10-18 09:32:23,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:32:23,834.834 INFO    ] Initializing speech engine...
[2026-10-18 09:32:23,846.846 INFO    ] 2026-10-18 09:32:23
[2026-10-18 09:32:24,126.126 INFO    ] 2026-10-18 09:32:24
[2026-10-18 09:32:24,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:32:24,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:32:24,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:32:24,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:32:24,690.690 INFO    ] time= 18/10/2026 09:32:24
[2026-10-18 09:32:24,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:32:24,717.717 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:32:24,842.842 INFO    ] No existing commands found in stream
[2026-10-18 09:32:29,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:32:29,859.859 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-18 09:32:32,017.017 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:32:32,020.020 INFO    ] Checking for system updates...
[2026-10-18 09:32:32,061.061 INFO    ] 200
[2026-10-18 09:32:32,064.064 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:32:32,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:32:32,121.121 INFO    ] No update needed
[2026-10-18 09:32:32,124.124 INFO    ] Checking for camera pi updates...
[2026-10-18 09:32:32,163.163 INFO    ] 200
[2026-10-18 09:32:32,166.166 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:32:32,211.211 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:32:42,227.227 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:32:42,261.261 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:32:42,271.271 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:32:42,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:32:42,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:32:42,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:32:44,323.323 INFO    ] ================================================
[2026-10-18 09:32:44,338.338 INFO    ] Launching Daemon at Sun Oct 18 09:32:44 IST 2026
[2026-10-18 09:32:44,349.349 INFO    ] ================================================
[2026-10-18 09:32:44,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:32:44
[2026-10-18 09:32:45,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:32:45,956.956 INFO    ] Initializing speech engine...
[2026-10-18 09:32:45,965.965 INFO    ] 2026-10-18 09:32:45
[2026-10-18 09:32:46,248.248 INFO    ] 2026-10-18 09:32:46
[2026-10-18 09:32:46,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:32:46,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:32:46,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:32:46,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:32:46,799.799 INFO    ] time= 18/10/2026 09:32:46
[2026-10-18 09:32:46,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:32:46,837.837 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:32:46,977.977 INFO    ] No existing commands found in stream
[2026-10-18 09:32:51,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:32:52,002.002 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-18 09:32:55,346.346 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:32:55,349.349 INFO    ] Checking for system updates...
[2026-10-18 09:32:55,387.387 INFO    ] 200
[2026-10-18 09:32:55,390.390 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:32:55,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:32:55,451.451 INFO    ] No update needed
[2026-10-18 09:32:55,454.454 INFO    ] Checking for camera pi updates...
[2026-10-18 09:32:55,489.489 INFO    ] 200
[2026-10-18 09:32:55,492.492 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:32:55,534.534 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:33:05,551.551 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2e150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:33:05,591.591 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:33:05,602.602 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:33:05,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:33:05,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:33:05,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:33:07,659.659 INFO    ] ================================================
[2026-10-18 09:33:07,674.674 INFO    ] Launching Daemon at Sun Oct 18 09:33:07 IST 2026
[2026-10-18 09:33:07,685.685 INFO    ] ================================================
[2026-10-18 09:33:08,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:33:08
[2026-10-18 09:33:08,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:33:09,099.099 INFO    ] Initializing speech engine...
[2026-10-18 09:33:09,107.107 INFO    ] 2026-10-18 09:33:09
[2026-10-18 09:33:09,400.400 INFO    ] 2026-10-18 09:33:09
[2026-10-18 09:33:09,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:33:09,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:33:09,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:33:09,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:33:09,896.896 INFO    ] time= 18/10/2026 09:33:09
[2026-10-18 09:33:09,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:33:09,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:33:10,091.091 INFO    ] No existing commands found in stream
[2026-10-18 09:33:15,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:33:15,104.104 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-18 09:33:18,151.151 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:33:18,154.154 INFO    ] Checking for system updates...
[2026-10-18 09:33:18,191.191 INFO    ] 200
[2026-10-18 09:33:18,193.193 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:33:18,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:33:18,249.249 INFO    ] No update needed
[2026-10-18 09:33:18,251.251 INFO    ] Checking for camera pi updates...
[2026-10-18 09:33:18,287.287 INFO    ] 200
[2026-10-18 09:33:18,290.290 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:33:18,331.331 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:33:28,348.348 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:33:28,387.387 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:33:28,399.399 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:33:28,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:33:28,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:33:28,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:33:30,453.453 INFO    ] ================================================
[2026-10-18 09:33:30,470.470 INFO    ] Launching Daemon at Sun Oct 18 09:33:30 IST 2026
[2026-10-18 09:33:30,480.480 INFO    ] ================================================
[2026-10-18 09:33:31,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:33:31
[2026-10-18 09:33:31,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:33:32,201.201 INFO    ] Initializing speech engine...
[2026-10-18 09:33:32,211.211 INFO    ] 2026-10-18 09:33:32
[2026-10-18 09:33:32,519.519 INFO    ] 2026-10-18 09:33:32
[2026-10-18 09:33:32,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:33:32,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:33:32,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:33:32,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:33:32,972.972 INFO    ] time= 18/10/2026 09:33:32
[2026-10-18 09:33:33,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:33:33,078.078 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:33:33,228.228 INFO    ] No existing commands found in stream
[2026-10-18 09:33:38,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:33:38,247.247 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-18 09:33:41,057.057 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:33:41,060.060 INFO    ] Checking for system updates...
[2026-10-18 09:33:41,110.110 INFO    ] 200
[2026-10-18 09:33:41,113.113 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:33:41,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:33:41,170.170 INFO    ] No update needed
[2026-10-18 09:33:41,173.173 INFO    ] Checking for camera pi updates...
[2026-10-18 09:33:41,206.206 INFO    ] 200
[2026-10-18 09:33:41,209.209 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:33:41,250.250 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:33:51,265.265 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:33:51,300.300 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:33:51,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:33:51,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:33:51,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:33:51,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:33:53,361.361 INFO    ] ================================================
[2026-10-18 09:33:53,377.377 INFO    ] Launching Daemon at Sun Oct 18 09:33:53 IST 2026
[2026-10-18 09:33:53,388.388 INFO    ] ================================================
[2026-10-18 09:33:54,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:33:54
[2026-10-18 09:33:54,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:33:55,041.041 INFO    ] Initializing speech engine...
[2026-10-18 09:33:55,050.050 INFO    ] 2026-10-18 09:33:55
[2026-10-18 09:33:55,328.328 INFO    ] 2026-10-18 09:33:55
[2026-10-18 09:33:55,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:33:55,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:33:55,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:33:55,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:33:55,892.892 INFO    ] time= 18/10/2026 09:33:55
[2026-10-18 09:33:55,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:33:55,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:33:56,036.036 INFO    ] No existing commands found in stream
[2026-10-18 09:34:01,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:34:01,066.066 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-18 09:34:03,485.485 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 09:34:03,488.488 INFO    ] Checking for system updates...
[2026-10-18 09:34:03,526.526 INFO    ] 200
[2026-10-18 09:34:03,529.529 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:34:03,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:34:03,585.585 INFO    ] No update needed
[2026-10-18 09:34:03,588.588 INFO    ] Checking for camera pi updates...
[2026-10-18 09:34:03,623.623 INFO    ] 200
[2026-10-18 09:34:03,626.626 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:34:03,669.669 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:34:13,685.685 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:34:13,726.726 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:34:13,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:34:13,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:34:13,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:34:13,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:34:15,794.794 INFO    ] ================================================
[2026-10-18 09:34:15,810.810 INFO    ] Launching Daemon at Sun Oct 18 09:34:15 IST 2026
[2026-10-18 09:34:15,822.822 INFO    ] ================================================
[2026-10-18 09:34:16,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:34:16
[2026-10-18 09:34:17,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:34:17,279.279 INFO    ] Initializing speech engine...
[2026-10-18 09:34:17,290.290 INFO    ] 2026-10-18 09:34:17
[2026-10-18 09:34:17,566.566 INFO    ] 2026-10-18 09:34:17
[2026-10-18 09:34:17,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:34:17,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:34:17,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:34:18,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:34:18,094.094 INFO    ] time= 18/10/2026 09:34:18
[2026-10-18 09:34:18,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:34:18,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:34:18,249.249 INFO    ] No existing commands found in stream
[2026-10-18 09:34:23,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:34:23,266.266 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-18 09:34:24,712.712 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:34:24,715.715 INFO    ] Checking for system updates...
[2026-10-18 09:34:24,750.750 INFO    ] 200
[2026-10-18 09:34:24,752.752 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:34:24,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:34:24,807.807 INFO    ] No update needed
[2026-10-18 09:34:24,810.810 INFO    ] Checking for camera pi updates...
[2026-10-18 09:34:24,843.843 INFO    ] 200
[2026-10-18 09:34:24,846.846 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:34:24,886.886 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:34:34,898.898 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:34:34,934.934 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:34:34,944.944 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:34:34,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:34:34,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:34:34,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:34:37,998.998 INFO    ] ================================================
[2026-10-18 09:34:37,013.013 INFO    ] Launching Daemon at Sun Oct 18 09:34:37 IST 2026
[2026-10-18 09:34:37,024.024 INFO    ] ================================================
[2026-10-18 09:34:37,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:34:37
[2026-10-18 09:34:38,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:34:38,442.442 INFO    ] Initializing speech engine...
[2026-10-18 09:34:38,456.456 INFO    ] 2026-10-18 09:34:38
[2026-10-18 09:34:38,726.726 INFO    ] 2026-10-18 09:34:38
[2026-10-18 09:34:38,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:34:39,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:34:39,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:34:39,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:34:39,223.223 INFO    ] time= 18/10/2026 09:34:39
[2026-10-18 09:34:39,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:34:39,305.305 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:34:39,449.449 INFO    ] No existing commands found in stream
[2026-10-18 09:34:44,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:34:44,468.468 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-18 09:34:47,050.050 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:34:47,053.053 INFO    ] Checking for system updates...
[2026-10-18 09:34:47,093.093 INFO    ] 200
[2026-10-18 09:34:47,096.096 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:34:47,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:34:47,152.152 INFO    ] No update needed
[2026-10-18 09:34:47,154.154 INFO    ] Checking for camera pi updates...
[2026-10-18 09:34:47,188.188 INFO    ] 200
[2026-10-18 09:34:47,191.191 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:34:47,232.232 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:34:57,248.248 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:34:57,284.284 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:34:57,294.294 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:34:57,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:34:57,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:34:57,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:34:59,349.349 INFO    ] ================================================
[2026-10-18 09:34:59,365.365 INFO    ] Launching Daemon at Sun Oct 18 09:34:59 IST 2026
[2026-10-18 09:34:59,376.376 INFO    ] ================================================
[2026-10-18 09:34:59,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:34:59
[2026-10-18 09:35:00,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:35:00,822.822 INFO    ] Initializing speech engine...
[2026-10-18 09:35:00,832.832 INFO    ] 2026-10-18 09:35:00
[2026-10-18 09:35:01,092.092 INFO    ] 2026-10-18 09:35:01
[2026-10-18 09:35:01,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:35:01,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:35:01,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:35:01,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:35:01,586.586 INFO    ] time= 18/10/2026 09:35:01
[2026-10-18 09:35:01,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:35:01,593.593 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:35:01,716.716 INFO    ] No existing commands found in stream
[2026-10-18 09:35:06,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:35:06,771.771 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-18 09:35:08,017.017 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:35:08,020.020 INFO    ] Checking for system updates...
[2026-10-18 09:35:08,057.057 INFO    ] 200
[2026-10-18 09:35:08,060.060 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:35:08,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:35:08,116.116 INFO    ] No update needed
[2026-10-18 09:35:08,119.119 INFO    ] Checking for camera pi updates...
[2026-10-18 09:35:08,156.156 INFO    ] 200
[2026-10-18 09:35:08,159.159 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:35:08,199.199 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:35:18,214.214 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:35:18,250.250 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:35:18,260.260 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:35:18,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:35:18,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:35:18,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:35:20,314.314 INFO    ] ================================================
[2026-10-18 09:35:20,330.330 INFO    ] Launching Daemon at Sun Oct 18 09:35:20 IST 2026
[2026-10-18 09:35:20,341.341 INFO    ] ================================================
[2026-10-18 09:35:20,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:35:20
[2026-10-18 09:35:21,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:35:21,776.776 INFO    ] Initializing speech engine...
[2026-10-18 09:35:21,786.786 INFO    ] 2026-10-18 09:35:21
[2026-10-18 09:35:22,036.036 INFO    ] 2026-10-18 09:35:22
[2026-10-18 09:35:22,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:35:22,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:35:22,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:35:22,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:35:22,536.536 INFO    ] time= 18/10/2026 09:35:22
[2026-10-18 09:35:22,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:35:22,607.607 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:35:22,764.764 INFO    ] No existing commands found in stream
[2026-10-18 09:35:27,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:35:27,792.792 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-18 09:35:31,441.441 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:35:31,444.444 INFO    ] Checking for system updates...
[2026-10-18 09:35:31,488.488 INFO    ] 200
[2026-10-18 09:35:31,491.491 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:35:31,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:35:31,550.550 INFO    ] No update needed
[2026-10-18 09:35:31,553.553 INFO    ] Checking for camera pi updates...
[2026-10-18 09:35:31,594.594 INFO    ] 200
[2026-10-18 09:35:31,597.597 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:35:31,641.641 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:35:41,656.656 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:35:41,691.691 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:35:41,700.700 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:35:41,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:35:41,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:35:41,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:35:43,755.755 INFO    ] ================================================
[2026-10-18 09:35:43,771.771 INFO    ] Launching Daemon at Sun Oct 18 09:35:43 IST 2026
[2026-10-18 09:35:43,781.781 INFO    ] ================================================
[2026-10-18 09:35:44,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:35:44
[2026-10-18 09:35:44,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:35:45,196.196 INFO    ] Initializing speech engine...
[2026-10-18 09:35:45,202.202 INFO    ] 2026-10-18 09:35:45
[2026-10-18 09:35:45,502.502 INFO    ] 2026-10-18 09:35:45
[2026-10-18 09:35:45,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:35:45,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:35:45,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:35:45,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:35:45,928.928 INFO    ] time= 18/10/2026 09:35:45
[2026-10-18 09:35:45,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:35:45,937.937 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:35:46,014.014 INFO    ] No existing commands found in stream
[2026-10-18 09:35:51,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:35:51,037.037 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-18 09:35:51,855.855 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:35:51,858.858 INFO    ] Checking for system updates...
[2026-10-18 09:35:51,896.896 INFO    ] 200
[2026-10-18 09:35:51,899.899 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:35:51,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:35:51,955.955 INFO    ] No update needed
[2026-10-18 09:35:51,958.958 INFO    ] Checking for camera pi updates...
[2026-10-18 09:35:51,993.993 INFO    ] 200
[2026-10-18 09:35:51,996.996 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:35:52,038.038 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:36:02,054.054 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:36:02,092.092 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:36:02,103.103 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:36:02,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:36:02,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:36:02,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:36:04,160.160 INFO    ] ================================================
[2026-10-18 09:36:04,175.175 INFO    ] Launching Daemon at Sun Oct 18 09:36:04 IST 2026
[2026-10-18 09:36:04,186.186 INFO    ] ================================================
[2026-10-18 09:36:04,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:36:04
[2026-10-18 09:36:05,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:36:05,681.681 INFO    ] Initializing speech engine...
[2026-10-18 09:36:05,691.691 INFO    ] 2026-10-18 09:36:05
[2026-10-18 09:36:05,942.942 INFO    ] 2026-10-18 09:36:05
[2026-10-18 09:36:05,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:36:06,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:36:06,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:36:06,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:36:06,441.441 INFO    ] time= 18/10/2026 09:36:06
[2026-10-18 09:36:06,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:36:06,518.518 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:36:06,667.667 INFO    ] No existing commands found in stream
[2026-10-18 09:36:11,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:36:11,684.684 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-18 09:36:16,135.135 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:36:16,138.138 INFO    ] Checking for system updates...
[2026-10-18 09:36:16,173.173 INFO    ] 200
[2026-10-18 09:36:16,175.175 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:36:16,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:36:16,231.231 INFO    ] No update needed
[2026-10-18 09:36:16,233.233 INFO    ] Checking for camera pi updates...
[2026-10-18 09:36:16,266.266 INFO    ] 200
[2026-10-18 09:36:16,269.269 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:36:16,309.309 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:36:26,324.324 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:36:26,359.359 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:36:26,368.368 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:36:26,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:36:26,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:36:26,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:36:28,422.422 INFO    ] ================================================
[2026-10-18 09:36:28,437.437 INFO    ] Launching Daemon at Sun Oct 18 09:36:28 IST 2026
[2026-10-18 09:36:28,449.449 INFO    ] ================================================
[2026-10-18 09:36:29,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:36:29
[2026-10-18 09:36:29,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:36:30,023.023 INFO    ] Initializing speech engine...
[2026-10-18 09:36:30,031.031 INFO    ] 2026-10-18 09:36:30
[2026-10-18 09:36:30,307.307 INFO    ] 2026-10-18 09:36:30
[2026-10-18 09:36:30,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:36:30,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:36:30,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:36:30,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:36:30,869.869 INFO    ] time= 18/10/2026 09:36:30
[2026-10-18 09:36:30,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:36:30,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:36:31,061.061 INFO    ] No existing commands found in stream
[2026-10-18 09:36:36,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:36:36,095.095 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-18 09:36:38,121.121 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:36:38,124.124 INFO    ] Checking for system updates...
[2026-10-18 09:36:38,166.166 INFO    ] 200
[2026-10-18 09:36:38,169.169 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:36:38,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:36:38,227.227 INFO    ] No update needed
[2026-10-18 09:36:38,230.230 INFO    ] Checking for camera pi updates...
[2026-10-18 09:36:38,264.264 INFO    ] 200
[2026-10-18 09:36:38,267.267 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:36:38,308.308 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:36:48,323.323 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:36:48,359.359 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:36:48,368.368 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:36:48,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:36:48,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:36:48,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:36:50,421.421 INFO    ] ================================================
[2026-10-18 09:36:50,436.436 INFO    ] Launching Daemon at Sun Oct 18 09:36:50 IST 2026
[2026-10-18 09:36:50,447.447 INFO    ] ================================================
[2026-10-18 09:36:51,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:36:51
[2026-10-18 09:36:51,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:36:51,883.883 INFO    ] Initializing speech engine...
[2026-10-18 09:36:51,889.889 INFO    ] 2026-10-18 09:36:51
[2026-10-18 09:36:52,139.139 INFO    ] 2026-10-18 09:36:52
[2026-10-18 09:36:52,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:36:52,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:36:52,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:36:52,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:36:52,702.702 INFO    ] time= 18/10/2026 09:36:52
[2026-10-18 09:36:52,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:36:52,732.732 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:36:52,872.872 INFO    ] No existing commands found in stream
[2026-10-18 09:36:57,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:36:57,900.900 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-18 09:37:02,108.108 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:37:02,111.111 INFO    ] Checking for system updates...
[2026-10-18 09:37:02,152.152 INFO    ] 200
[2026-10-18 09:37:02,156.156 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:37:02,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:37:02,228.228 INFO    ] No update needed
[2026-10-18 09:37:02,232.232 INFO    ] Checking for camera pi updates...
[2026-10-18 09:37:02,281.281 INFO    ] 200
[2026-10-18 09:37:02,285.285 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:37:02,345.345 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:37:12,361.361 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:37:12,400.400 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:37:12,410.410 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:37:12,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:37:12,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:37:12,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:37:14,466.466 INFO    ] ================================================
[2026-10-18 09:37:14,481.481 INFO    ] Launching Daemon at Sun Oct 18 09:37:14 IST 2026
[2026-10-18 09:37:14,491.491 INFO    ] ================================================
[2026-10-18 09:37:15,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:37:15
[2026-10-18 09:37:15,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:37:16,032.032 INFO    ] Initializing speech engine...
[2026-10-18 09:37:16,042.042 INFO    ] 2026-10-18 09:37:16
[2026-10-18 09:37:16,287.287 INFO    ] 2026-10-18 09:37:16
[2026-10-18 09:37:16,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:37:16,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:37:16,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:37:16,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:37:16,656.656 INFO    ] time= 18/10/2026 09:37:16
[2026-10-18 09:37:16,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:37:16,713.713 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:37:16,852.852 INFO    ] No existing commands found in stream
[2026-10-18 09:37:21,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:37:21,865.865 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-18 09:37:22,448.448 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:37:22,450.450 INFO    ] Checking for system updates...
[2026-10-18 09:37:22,486.486 INFO    ] 200
[2026-10-18 09:37:22,488.488 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:37:22,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:37:22,543.543 INFO    ] No update needed
[2026-10-18 09:37:22,546.546 INFO    ] Checking for camera pi updates...
[2026-10-18 09:37:22,579.579 INFO    ] 200
[2026-10-18 09:37:22,582.582 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:37:22,628.628 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:37:32,643.643 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:37:32,680.680 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:37:32,692.692 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:37:32,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:37:32,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:37:32,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:37:34,748.748 INFO    ] ================================================
[2026-10-18 09:37:34,764.764 INFO    ] Launching Daemon at Sun Oct 18 09:37:34 IST 2026
[2026-10-18 09:37:34,774.774 INFO    ] ================================================
[2026-10-18 09:37:35,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:37:35
[2026-10-18 09:37:35,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:37:36,219.219 INFO    ] Initializing speech engine...
[2026-10-18 09:37:36,228.228 INFO    ] 2026-10-18 09:37:36
[2026-10-18 09:37:36,486.486 INFO    ] 2026-10-18 09:37:36
[2026-10-18 09:37:36,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:37:36,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:37:36,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:37:37,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:37:37,037.037 INFO    ] time= 18/10/2026 09:37:37
[2026-10-18 09:37:37,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:37:37,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:37:37,258.258 INFO    ] No existing commands found in stream
[2026-10-18 09:37:42,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:37:42,291.291 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-18 09:37:43,294.294 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:37:43,297.297 INFO    ] Checking for system updates...
[2026-10-18 09:37:43,333.333 INFO    ] 200
[2026-10-18 09:37:43,336.336 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:37:43,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:37:43,392.392 INFO    ] No update needed
[2026-10-18 09:37:43,394.394 INFO    ] Checking for camera pi updates...
[2026-10-18 09:37:43,431.431 INFO    ] 200
[2026-10-18 09:37:43,434.434 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:37:43,473.473 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:37:53,489.489 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:37:53,526.526 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:37:53,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:37:53,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:37:53,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:37:53,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:37:55,589.589 INFO    ] ================================================
[2026-10-18 09:37:55,604.604 INFO    ] Launching Daemon at Sun Oct 18 09:37:55 IST 2026
[2026-10-18 09:37:55,615.615 INFO    ] ================================================
[2026-10-18 09:37:56,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:37:56
[2026-10-18 09:37:56,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:37:57,068.068 INFO    ] Initializing speech engine...
[2026-10-18 09:37:57,075.075 INFO    ] 2026-10-18 09:37:57
[2026-10-18 09:37:57,372.372 INFO    ] 2026-10-18 09:37:57
[2026-10-18 09:37:57,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:37:57,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:37:57,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:37:57,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:37:57,871.871 INFO    ] time= 18/10/2026 09:37:57
[2026-10-18 09:37:57,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:37:58,002.002 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:37:58,165.165 INFO    ] No existing commands found in stream
[2026-10-18 09:38:03,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:38:03,182.182 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-18 09:38:05,411.411 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:38:05,414.414 INFO    ] Checking for system updates...
[2026-10-18 09:38:05,452.452 INFO    ] 200
[2026-10-18 09:38:05,455.455 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:38:05,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:38:05,509.509 INFO    ] No update needed
[2026-10-18 09:38:05,511.511 INFO    ] Checking for camera pi updates...
[2026-10-18 09:38:05,548.548 INFO    ] 200
[2026-10-18 09:38:05,551.551 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:38:05,594.594 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:38:15,609.609 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:38:15,644.644 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:38:15,654.654 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:38:15,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:38:15,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:38:15,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:38:17,706.706 INFO    ] ================================================
[2026-10-18 09:38:17,721.721 INFO    ] Launching Daemon at Sun Oct 18 09:38:17 IST 2026
[2026-10-18 09:38:17,732.732 INFO    ] ================================================
[2026-10-18 09:38:18,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:38:18
[2026-10-18 09:38:19,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:38:19,315.315 INFO    ] Initializing speech engine...
[2026-10-18 09:38:19,323.323 INFO    ] 2026-10-18 09:38:19
[2026-10-18 09:38:19,610.610 INFO    ] 2026-10-18 09:38:19
[2026-10-18 09:38:19,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:38:19,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:38:19,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:38:20,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:38:20,084.084 INFO    ] time= 18/10/2026 09:38:20
[2026-10-18 09:38:20,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:38:20,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:38:20,297.297 INFO    ] No existing commands found in stream
[2026-10-18 09:38:25,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:38:25,319.319 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-18 09:38:26,038.038 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:38:26,041.041 INFO    ] Checking for system updates...
[2026-10-18 09:38:26,078.078 INFO    ] 200
[2026-10-18 09:38:26,081.081 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:38:26,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:38:26,157.157 INFO    ] No update needed
[2026-10-18 09:38:26,160.160 INFO    ] Checking for camera pi updates...
[2026-10-18 09:38:26,197.197 INFO    ] 200
[2026-10-18 09:38:26,199.199 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:38:26,245.245 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:38:36,261.261 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:38:36,301.301 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:38:36,312.312 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:38:36,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:38:36,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:38:36,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:38:38,366.366 INFO    ] ================================================
[2026-10-18 09:38:38,381.381 INFO    ] Launching Daemon at Sun Oct 18 09:38:38 IST 2026
[2026-10-18 09:38:38,392.392 INFO    ] ================================================
[2026-10-18 09:38:39,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:38:39
[2026-10-18 09:38:39,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:38:39,978.978 INFO    ] Initializing speech engine...
[2026-10-18 09:38:39,992.992 INFO    ] 2026-10-18 09:38:39
[2026-10-18 09:38:40,301.301 INFO    ] 2026-10-18 09:38:40
[2026-10-18 09:38:40,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:38:40,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:38:40,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:38:40,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:38:40,805.805 INFO    ] time= 18/10/2026 09:38:40
[2026-10-18 09:38:40,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:38:40,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:38:40,961.961 INFO    ] No existing commands found in stream
[2026-10-18 09:38:45,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:38:45,988.988 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-18 09:38:49,129.129 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:38:49,132.132 INFO    ] Checking for system updates...
[2026-10-18 09:38:49,168.168 INFO    ] 200
[2026-10-18 09:38:49,171.171 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:38:49,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:38:49,226.226 INFO    ] No update needed
[2026-10-18 09:38:49,229.229 INFO    ] Checking for camera pi updates...
[2026-10-18 09:38:49,267.267 INFO    ] 200
[2026-10-18 09:38:49,269.269 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:38:49,310.310 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:38:59,325.325 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:38:59,361.361 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:38:59,371.371 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:38:59,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:38:59,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:38:59,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:39:01,423.423 INFO    ] ================================================
[2026-10-18 09:39:01,438.438 INFO    ] Launching Daemon at Sun Oct 18 09:39:01 IST 2026
[2026-10-18 09:39:01,449.449 INFO    ] ================================================
[2026-10-18 09:39:02,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:39:02
[2026-10-18 09:39:02,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:39:03,144.144 INFO    ] Initializing speech engine...
[2026-10-18 09:39:03,155.155 INFO    ] 2026-10-18 09:39:03
[2026-10-18 09:39:03,449.449 INFO    ] 2026-10-18 09:39:03
[2026-10-18 09:39:03,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:39:03,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:39:03,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:39:03,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:39:03,875.875 INFO    ] time= 18/10/2026 09:39:03
[2026-10-18 09:39:03,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:39:03,887.887 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:39:04,035.035 INFO    ] No existing commands found in stream
[2026-10-18 09:39:09,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:39:09,063.063 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-18 09:39:13,350.350 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:39:13,353.353 INFO    ] Checking for system updates...
[2026-10-18 09:39:13,388.388 INFO    ] 200
[2026-10-18 09:39:13,391.391 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:39:13,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:39:13,450.450 INFO    ] No update needed
[2026-10-18 09:39:13,453.453 INFO    ] Checking for camera pi updates...
[2026-10-18 09:39:13,485.485 INFO    ] 200
[2026-10-18 09:39:13,488.488 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:39:13,528.528 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:39:23,543.543 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:39:23,577.577 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:39:23,587.587 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:39:23,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:39:23,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:39:23,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:39:25,639.639 INFO    ] ================================================
[2026-10-18 09:39:25,654.654 INFO    ] Launching Daemon at Sun Oct 18 09:39:25 IST 2026
[2026-10-18 09:39:25,664.664 INFO    ] ================================================
[2026-10-18 09:39:26,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:39:26
[2026-10-18 09:39:26,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:39:27,255.255 INFO    ] Initializing speech engine...
[2026-10-18 09:39:27,267.267 INFO    ] 2026-10-18 09:39:27
[2026-10-18 09:39:27,573.573 INFO    ] 2026-10-18 09:39:27
[2026-10-18 09:39:27,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:39:27,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:39:27,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:39:28,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:39:28,077.077 INFO    ] time= 18/10/2026 09:39:28
[2026-10-18 09:39:28,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:39:28,124.124 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:39:28,255.255 INFO    ] No existing commands found in stream
[2026-10-18 09:39:33,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:39:33,289.289 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-18 09:39:34,963.963 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 09:39:34,966.966 INFO    ] Checking for system updates...
[2026-10-18 09:39:35,006.006 INFO    ] 200
[2026-10-18 09:39:35,009.009 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:39:35,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:39:35,064.064 INFO    ] No update needed
[2026-10-18 09:39:35,067.067 INFO    ] Checking for camera pi updates...
[2026-10-18 09:39:35,102.102 INFO    ] 200
[2026-10-18 09:39:35,104.104 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:39:35,146.146 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:39:45,162.162 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cee150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:39:45,200.200 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:39:45,212.212 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:39:45,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:39:45,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:39:45,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:39:47,266.266 INFO    ] ================================================
[2026-10-18 09:39:47,281.281 INFO    ] Launching Daemon at Sun Oct 18 09:39:47 IST 2026
[2026-10-18 09:39:47,292.292 INFO    ] ================================================
[2026-10-18 09:39:47,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:39:47
[2026-10-18 09:39:48,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:39:48,847.847 INFO    ] Initializing speech engine...
[2026-10-18 09:39:48,860.860 INFO    ] 2026-10-18 09:39:48
[2026-10-18 09:39:49,127.127 INFO    ] 2026-10-18 09:39:49
[2026-10-18 09:39:49,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:39:49,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:39:49,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:39:49,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:39:49,682.682 INFO    ] time= 18/10/2026 09:39:49
[2026-10-18 09:39:49,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:39:49,708.708 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:39:49,840.840 INFO    ] No existing commands found in stream
[2026-10-18 09:39:54,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:39:54,874.874 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-18 09:39:57,304.304 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:39:57,307.307 INFO    ] Checking for system updates...
[2026-10-18 09:39:57,343.343 INFO    ] 200
[2026-10-18 09:39:57,346.346 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:39:57,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:39:57,401.401 INFO    ] No update needed
[2026-10-18 09:39:57,404.404 INFO    ] Checking for camera pi updates...
[2026-10-18 09:39:57,441.441 INFO    ] 200
[2026-10-18 09:39:57,444.444 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:39:57,490.490 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:40:07,506.506 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:40:07,544.544 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:40:07,555.555 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:40:07,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:40:07,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:40:07,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:40:09,609.609 INFO    ] ================================================
[2026-10-18 09:40:09,624.624 INFO    ] Launching Daemon at Sun Oct 18 09:40:09 IST 2026
[2026-10-18 09:40:09,635.635 INFO    ] ================================================
[2026-10-18 09:40:10,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:40:10
[2026-10-18 09:40:10,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:40:11,218.218 INFO    ] Initializing speech engine...
[2026-10-18 09:40:11,226.226 INFO    ] 2026-10-18 09:40:11
[2026-10-18 09:40:11,509.509 INFO    ] 2026-10-18 09:40:11
[2026-10-18 09:40:11,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:40:11,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:40:11,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:40:12,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:40:12,048.048 INFO    ] time= 18/10/2026 09:40:12
[2026-10-18 09:40:12,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:40:12,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:40:12,212.212 INFO    ] No existing commands found in stream
[2026-10-18 09:40:17,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:40:17,246.246 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-18 09:40:20,403.403 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:40:20,406.406 INFO    ] Checking for system updates...
[2026-10-18 09:40:20,442.442 INFO    ] 200
[2026-10-18 09:40:20,445.445 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:40:20,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:40:20,501.501 INFO    ] No update needed
[2026-10-18 09:40:20,503.503 INFO    ] Checking for camera pi updates...
[2026-10-18 09:40:20,538.538 INFO    ] 200
[2026-10-18 09:40:20,540.540 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:40:20,581.581 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:40:30,597.597 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cee150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:40:30,635.635 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:40:30,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:40:30,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:40:30,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:40:30,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:40:32,701.701 INFO    ] ================================================
[2026-10-18 09:40:32,718.718 INFO    ] Launching Daemon at Sun Oct 18 09:40:32 IST 2026
[2026-10-18 09:40:32,730.730 INFO    ] ================================================
[2026-10-18 09:40:33,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:40:33
[2026-10-18 09:40:33,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:40:34,257.257 INFO    ] Initializing speech engine...
[2026-10-18 09:40:34,266.266 INFO    ] 2026-10-18 09:40:34
[2026-10-18 09:40:34,526.526 INFO    ] 2026-10-18 09:40:34
[2026-10-18 09:40:34,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:40:34,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:40:34,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:40:34,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:40:35,011.011 INFO    ] time= 18/10/2026 09:40:34
[2026-10-18 09:40:35,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:40:35,080.080 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:40:35,250.250 INFO    ] No existing commands found in stream
[2026-10-18 09:40:40,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:40:40,283.283 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-18 09:40:44,597.597 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:40:44,600.600 INFO    ] Checking for system updates...
[2026-10-18 09:40:44,637.637 INFO    ] 200
[2026-10-18 09:40:44,639.639 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:40:44,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:40:44,699.699 INFO    ] No update needed
[2026-10-18 09:40:44,702.702 INFO    ] Checking for camera pi updates...
[2026-10-18 09:40:44,740.740 INFO    ] 200
[2026-10-18 09:40:44,742.742 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:40:44,783.783 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:40:54,798.798 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:40:54,833.833 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:40:54,843.843 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:40:54,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:40:54,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:40:54,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:40:56,897.897 INFO    ] ================================================
[2026-10-18 09:40:56,913.913 INFO    ] Launching Daemon at Sun Oct 18 09:40:56 IST 2026
[2026-10-18 09:40:56,923.923 INFO    ] ================================================
[2026-10-18 09:40:57,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:40:57
[2026-10-18 09:40:58,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:40:58,325.325 INFO    ] Initializing speech engine...
[2026-10-18 09:40:58,334.334 INFO    ] 2026-10-18 09:40:58
[2026-10-18 09:40:58,608.608 INFO    ] 2026-10-18 09:40:58
[2026-10-18 09:40:58,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:40:58,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:40:58,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:40:59,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:40:59,110.110 INFO    ] time= 18/10/2026 09:40:59
[2026-10-18 09:40:59,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:40:59,189.189 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:40:59,338.338 INFO    ] No existing commands found in stream
[2026-10-18 09:41:04,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:41:04,354.354 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-18 09:41:07,476.476 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:41:07,478.478 INFO    ] Checking for system updates...
[2026-10-18 09:41:07,515.515 INFO    ] 200
[2026-10-18 09:41:07,518.518 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:41:07,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:41:07,583.583 INFO    ] No update needed
[2026-10-18 09:41:07,586.586 INFO    ] Checking for camera pi updates...
[2026-10-18 09:41:07,620.620 INFO    ] 200
[2026-10-18 09:41:07,622.622 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:41:07,667.667 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:41:17,684.684 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:41:17,723.723 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:41:17,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:41:17,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:41:17,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:41:17,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:41:19,790.790 INFO    ] ================================================
[2026-10-18 09:41:19,806.806 INFO    ] Launching Daemon at Sun Oct 18 09:41:19 IST 2026
[2026-10-18 09:41:19,816.816 INFO    ] ================================================
[2026-10-18 09:41:20,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:41:20
[2026-10-18 09:41:21,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:41:21,427.427 INFO    ] Initializing speech engine...
[2026-10-18 09:41:21,440.440 INFO    ] 2026-10-18 09:41:21
[2026-10-18 09:41:21,720.720 INFO    ] 2026-10-18 09:41:21
[2026-10-18 09:41:21,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:41:22,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:41:22,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:41:22,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:41:22,271.271 INFO    ] time= 18/10/2026 09:41:22
[2026-10-18 09:41:22,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:41:22,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:41:22,442.442 INFO    ] No existing commands found in stream
[2026-10-18 09:41:27,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:41:27,481.481 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-18 09:41:29,868.868 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:41:29,871.871 INFO    ] Checking for system updates...
[2026-10-18 09:41:29,908.908 INFO    ] 200
[2026-10-18 09:41:29,910.910 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:41:29,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:41:29,966.966 INFO    ] No update needed
[2026-10-18 09:41:29,969.969 INFO    ] Checking for camera pi updates...
[2026-10-18 09:41:30,002.002 INFO    ] 200
[2026-10-18 09:41:30,005.005 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:41:30,046.046 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:41:40,061.061 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:41:40,096.096 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:41:40,105.105 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:41:40,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:41:40,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:41:40,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:41:42,158.158 INFO    ] ================================================
[2026-10-18 09:41:42,173.173 INFO    ] Launching Daemon at Sun Oct 18 09:41:42 IST 2026
[2026-10-18 09:41:42,184.184 INFO    ] ================================================
[2026-10-18 09:41:42,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:41:42
[2026-10-18 09:41:43,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:41:43,641.641 INFO    ] Initializing speech engine...
[2026-10-18 09:41:43,650.650 INFO    ] 2026-10-18 09:41:43
[2026-10-18 09:41:43,896.896 INFO    ] 2026-10-18 09:41:43
[2026-10-18 09:41:43,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:41:44,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:41:44,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:41:44,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:41:44,381.381 INFO    ] time= 18/10/2026 09:41:44
[2026-10-18 09:41:44,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:41:44,459.459 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:41:44,603.603 INFO    ] No existing commands found in stream
[2026-10-18 09:41:49,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:41:49,621.621 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-18 09:41:50,656.656 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:41:50,658.658 INFO    ] Checking for system updates...
[2026-10-18 09:41:50,695.695 INFO    ] 200
[2026-10-18 09:41:50,698.698 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:41:50,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:41:50,752.752 INFO    ] No update needed
[2026-10-18 09:41:50,755.755 INFO    ] Checking for camera pi updates...
[2026-10-18 09:41:50,792.792 INFO    ] 200
[2026-10-18 09:41:50,795.795 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:41:50,840.840 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:42:00,854.854 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:42:00,890.890 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:42:00,900.900 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:42:00,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:42:00,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:42:00,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:42:02,987.987 INFO    ] ================================================
[2026-10-18 09:42:03,008.008 INFO    ] Launching Daemon at Sun Oct 18 09:42:03 IST 2026
[2026-10-18 09:42:03,025.025 INFO    ] ================================================
[2026-10-18 09:42:03,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:42:03
[2026-10-18 09:42:04,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:42:04,593.593 INFO    ] Initializing speech engine...
[2026-10-18 09:42:04,610.610 INFO    ] 2026-10-18 09:42:04
[2026-10-18 09:42:04,864.864 INFO    ] 2026-10-18 09:42:04
[2026-10-18 09:42:04,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:42:05,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:42:05,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:42:05,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:42:05,433.433 INFO    ] time= 18/10/2026 09:42:05
[2026-10-18 09:42:05,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:42:05,457.457 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:42:05,587.587 INFO    ] No existing commands found in stream
[2026-10-18 09:42:10,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:42:10,604.604 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-18 09:42:13,526.526 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:42:13,528.528 INFO    ] Checking for system updates...
[2026-10-18 09:42:13,565.565 INFO    ] 200
[2026-10-18 09:42:13,568.568 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:42:13,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:42:13,624.624 INFO    ] No update needed
[2026-10-18 09:42:13,627.627 INFO    ] Checking for camera pi updates...
[2026-10-18 09:42:13,662.662 INFO    ] 200
[2026-10-18 09:42:13,665.665 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:42:13,706.706 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:42:23,722.722 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:42:23,761.761 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:42:23,772.772 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:42:23,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:42:23,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:42:23,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:42:25,829.829 INFO    ] ================================================
[2026-10-18 09:42:25,844.844 INFO    ] Launching Daemon at Sun Oct 18 09:42:25 IST 2026
[2026-10-18 09:42:25,854.854 INFO    ] ================================================
[2026-10-18 09:42:26,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:42:26
[2026-10-18 09:42:27,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:42:27,317.317 INFO    ] Initializing speech engine...
[2026-10-18 09:42:27,326.326 INFO    ] 2026-10-18 09:42:27
[2026-10-18 09:42:27,576.576 INFO    ] 2026-10-18 09:42:27
[2026-10-18 09:42:27,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:42:27,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:42:27,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:42:28,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:42:28,123.123 INFO    ] time= 18/10/2026 09:42:28
[2026-10-18 09:42:28,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:42:28,146.146 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:42:28,293.293 INFO    ] No existing commands found in stream
[2026-10-18 09:42:33,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:42:33,309.309 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-18 09:42:34,008.008 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 09:42:34,011.011 INFO    ] Checking for system updates...
[2026-10-18 09:42:34,046.046 INFO    ] 200
[2026-10-18 09:42:34,049.049 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:42:34,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:42:34,103.103 INFO    ] No update needed
[2026-10-18 09:42:34,105.105 INFO    ] Checking for camera pi updates...
[2026-10-18 09:42:34,138.138 INFO    ] 200
[2026-10-18 09:42:34,141.141 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:42:34,181.181 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:42:44,196.196 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:42:44,231.231 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:42:44,241.241 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:42:44,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:42:44,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:42:44,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:42:46,296.296 INFO    ] ================================================
[2026-10-18 09:42:46,311.311 INFO    ] Launching Daemon at Sun Oct 18 09:42:46 IST 2026
[2026-10-18 09:42:46,321.321 INFO    ] ================================================
[2026-10-18 09:42:46,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:42:46
[2026-10-18 09:42:47,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:42:47,758.758 INFO    ] Initializing speech engine...
[2026-10-18 09:42:47,776.776 INFO    ] 2026-10-18 09:42:47
[2026-10-18 09:42:48,029.029 INFO    ] 2026-10-18 09:42:48
[2026-10-18 09:42:48,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:42:48,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:42:48,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:42:48,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:42:48,582.582 INFO    ] time= 18/10/2026 09:42:48
[2026-10-18 09:42:48,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:42:48,609.609 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:42:48,761.761 INFO    ] No existing commands found in stream
[2026-10-18 09:42:53,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:42:53,786.786 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-18 09:42:57,233.233 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:42:57,236.236 INFO    ] Checking for system updates...
[2026-10-18 09:42:57,272.272 INFO    ] 200
[2026-10-18 09:42:57,275.275 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:42:57,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:42:57,331.331 INFO    ] No update needed
[2026-10-18 09:42:57,334.334 INFO    ] Checking for camera pi updates...
[2026-10-18 09:42:57,382.382 INFO    ] 200
[2026-10-18 09:42:57,385.385 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:42:57,428.428 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:43:07,445.445 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:43:07,486.486 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:43:07,497.497 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:43:07,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:43:07,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:43:07,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:43:09,551.551 INFO    ] ================================================
[2026-10-18 09:43:09,566.566 INFO    ] Launching Daemon at Sun Oct 18 09:43:09 IST 2026
[2026-10-18 09:43:09,577.577 INFO    ] ================================================
[2026-10-18 09:43:10,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:43:10
[2026-10-18 09:43:10,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:43:11,015.015 INFO    ] Initializing speech engine...
[2026-10-18 09:43:11,031.031 INFO    ] 2026-10-18 09:43:11
[2026-10-18 09:43:11,285.285 INFO    ] 2026-10-18 09:43:11
[2026-10-18 09:43:11,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:43:11,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:43:11,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:43:11,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:43:11,781.781 INFO    ] time= 18/10/2026 09:43:11
[2026-10-18 09:43:11,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:43:11,849.849 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:43:11,973.973 INFO    ] No existing commands found in stream
[2026-10-18 09:43:17,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:43:17,003.003 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-18 09:43:18,903.903 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:43:18,905.905 INFO    ] Checking for system updates...
[2026-10-18 09:43:18,942.942 INFO    ] 200
[2026-10-18 09:43:18,944.944 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:43:18,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:43:19,000.000 INFO    ] No update needed
[2026-10-18 09:43:19,003.003 INFO    ] Checking for camera pi updates...
[2026-10-18 09:43:19,037.037 INFO    ] 200
[2026-10-18 09:43:19,040.040 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:43:19,082.082 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:43:29,098.098 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:43:29,139.139 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:43:29,150.150 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:43:29,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:43:29,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:43:29,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:43:31,206.206 INFO    ] ================================================
[2026-10-18 09:43:31,221.221 INFO    ] Launching Daemon at Sun Oct 18 09:43:31 IST 2026
[2026-10-18 09:43:31,232.232 INFO    ] ================================================
[2026-10-18 09:43:31,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:43:31
[2026-10-18 09:43:32,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:43:32,696.696 INFO    ] Initializing speech engine...
[2026-10-18 09:43:32,703.703 INFO    ] 2026-10-18 09:43:32
[2026-10-18 09:43:33,024.024 INFO    ] 2026-10-18 09:43:32
[2026-10-18 09:43:33,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:43:33,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:43:33,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:43:33,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:43:33,450.450 INFO    ] time= 18/10/2026 09:43:33
[2026-10-18 09:43:33,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:43:33,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:43:33,600.600 INFO    ] No existing commands found in stream
[2026-10-18 09:43:38,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:43:38,633.633 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-18 09:43:41,603.603 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:43:41,605.605 INFO    ] Checking for system updates...
[2026-10-18 09:43:41,641.641 INFO    ] 200
[2026-10-18 09:43:41,644.644 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:43:41,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:43:41,698.698 INFO    ] No update needed
[2026-10-18 09:43:41,700.700 INFO    ] Checking for camera pi updates...
[2026-10-18 09:43:41,733.733 INFO    ] 200
[2026-10-18 09:43:41,736.736 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:43:41,776.776 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:43:51,791.791 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:43:51,825.825 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:43:51,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:43:51,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:43:51,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:43:51,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:43:53,888.888 INFO    ] ================================================
[2026-10-18 09:43:53,903.903 INFO    ] Launching Daemon at Sun Oct 18 09:43:53 IST 2026
[2026-10-18 09:43:53,914.914 INFO    ] ================================================
[2026-10-18 09:43:54,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:43:54
[2026-10-18 09:43:55,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:43:55,536.536 INFO    ] Initializing speech engine...
[2026-10-18 09:43:55,541.541 INFO    ] 2026-10-18 09:43:55
[2026-10-18 09:43:55,810.810 INFO    ] 2026-10-18 09:43:55
[2026-10-18 09:43:55,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:43:56,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:43:56,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:43:56,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:43:56,230.230 INFO    ] time= 18/10/2026 09:43:56
[2026-10-18 09:43:56,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:43:56,240.240 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:43:56,313.313 INFO    ] No existing commands found in stream
[2026-10-18 09:44:01,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:44:01,329.329 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-18 09:44:02,715.715 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:44:02,719.719 INFO    ] Checking for system updates...
[2026-10-18 09:44:02,771.771 INFO    ] 200
[2026-10-18 09:44:02,774.774 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:44:02,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:44:02,838.838 INFO    ] No update needed
[2026-10-18 09:44:02,841.841 INFO    ] Checking for camera pi updates...
[2026-10-18 09:44:02,890.890 INFO    ] 200
[2026-10-18 09:44:02,894.894 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:44:02,944.944 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:44:12,959.959 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:44:12,998.998 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:44:13,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:44:13,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:44:13,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:44:13,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:44:15,065.065 INFO    ] ================================================
[2026-10-18 09:44:15,080.080 INFO    ] Launching Daemon at Sun Oct 18 09:44:15 IST 2026
[2026-10-18 09:44:15,091.091 INFO    ] ================================================
[2026-10-18 09:44:15,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:44:15
[2026-10-18 09:44:16,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:44:16,664.664 INFO    ] Initializing speech engine...
[2026-10-18 09:44:16,676.676 INFO    ] 2026-10-18 09:44:16
[2026-10-18 09:44:16,951.951 INFO    ] 2026-10-18 09:44:16
[2026-10-18 09:44:16,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:44:17,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:44:17,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:44:17,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:44:17,487.487 INFO    ] time= 18/10/2026 09:44:17
[2026-10-18 09:44:17,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:44:17,514.514 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:44:17,633.633 INFO    ] No existing commands found in stream
[2026-10-18 09:44:22,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:44:22,659.659 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-18 09:44:24,800.800 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:44:24,803.803 INFO    ] Checking for system updates...
[2026-10-18 09:44:24,839.839 INFO    ] 200
[2026-10-18 09:44:24,842.842 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:44:24,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:44:24,898.898 INFO    ] No update needed
[2026-10-18 09:44:24,901.901 INFO    ] Checking for camera pi updates...
[2026-10-18 09:44:24,936.936 INFO    ] 200
[2026-10-18 09:44:24,939.939 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:44:24,980.980 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:44:34,994.994 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:44:35,033.033 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:44:35,043.043 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:44:35,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:44:35,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:44:35,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:44:37,098.098 INFO    ] ================================================
[2026-10-18 09:44:37,113.113 INFO    ] Launching Daemon at Sun Oct 18 09:44:37 IST 2026
[2026-10-18 09:44:37,124.124 INFO    ] ================================================
[2026-10-18 09:44:37,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:44:37
[2026-10-18 09:44:38,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:44:38,535.535 INFO    ] Initializing speech engine...
[2026-10-18 09:44:38,553.553 INFO    ] 2026-10-18 09:44:38
[2026-10-18 09:44:38,804.804 INFO    ] 2026-10-18 09:44:38
[2026-10-18 09:44:38,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:44:39,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:44:39,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:44:39,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:44:39,369.369 INFO    ] time= 18/10/2026 09:44:39
[2026-10-18 09:44:39,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:44:39,393.393 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:44:39,523.523 INFO    ] No existing commands found in stream
[2026-10-18 09:44:44,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:44:44,540.540 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-18 09:44:46,313.313 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 09:44:46,315.315 INFO    ] Checking for system updates...
[2026-10-18 09:44:46,351.351 INFO    ] 200
[2026-10-18 09:44:46,353.353 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:44:46,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:44:46,408.408 INFO    ] No update needed
[2026-10-18 09:44:46,410.410 INFO    ] Checking for camera pi updates...
[2026-10-18 09:44:46,446.446 INFO    ] 200
[2026-10-18 09:44:46,448.448 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:44:46,488.488 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:44:56,503.503 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:44:56,537.537 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:44:56,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:44:56,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:44:56,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:44:56,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:44:58,600.600 INFO    ] ================================================
[2026-10-18 09:44:58,614.614 INFO    ] Launching Daemon at Sun Oct 18 09:44:58 IST 2026
[2026-10-18 09:44:58,625.625 INFO    ] ================================================
[2026-10-18 09:44:59,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:44:59
[2026-10-18 09:44:59,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:45:00,129.129 INFO    ] Initializing speech engine...
[2026-10-18 09:45:00,138.138 INFO    ] 2026-10-18 09:45:00
[2026-10-18 09:45:00,407.407 INFO    ] 2026-10-18 09:45:00
[2026-10-18 09:45:00,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:45:00,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:45:00,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:45:00,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:45:00,970.970 INFO    ] time= 18/10/2026 09:45:00
[2026-10-18 09:45:00,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:45:01,006.006 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:45:01,143.143 INFO    ] No existing commands found in stream
[2026-10-18 09:45:06,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:45:06,172.172 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-18 09:45:09,917.917 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:45:09,920.920 INFO    ] Checking for system updates...
[2026-10-18 09:45:09,960.960 INFO    ] 200
[2026-10-18 09:45:09,962.962 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:45:10,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:45:10,018.018 INFO    ] No update needed
[2026-10-18 09:45:10,020.020 INFO    ] Checking for camera pi updates...
[2026-10-18 09:45:10,058.058 INFO    ] 200
[2026-10-18 09:45:10,062.062 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:45:10,104.104 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:45:20,120.120 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:45:20,160.160 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:45:20,171.171 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:45:20,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:45:20,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:45:20,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:45:22,233.233 INFO    ] ================================================
[2026-10-18 09:45:22,248.248 INFO    ] Launching Daemon at Sun Oct 18 09:45:22 IST 2026
[2026-10-18 09:45:22,259.259 INFO    ] ================================================
[2026-10-18 09:45:22,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:45:22
[2026-10-18 09:45:23,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:45:23,684.684 INFO    ] Initializing speech engine...
[2026-10-18 09:45:23,693.693 INFO    ] 2026-10-18 09:45:23
[2026-10-18 09:45:23,939.939 INFO    ] 2026-10-18 09:45:23
[2026-10-18 09:45:23,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:45:24,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:45:24,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:45:24,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:45:24,495.495 INFO    ] time= 18/10/2026 09:45:24
[2026-10-18 09:45:24,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:45:24,545.545 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:45:24,677.677 INFO    ] No existing commands found in stream
[2026-10-18 09:45:29,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:45:29,716.716 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-18 09:45:34,197.197 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:45:34,200.200 INFO    ] Checking for system updates...
[2026-10-18 09:45:34,241.241 INFO    ] 200
[2026-10-18 09:45:34,244.244 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:45:34,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:45:34,307.307 INFO    ] No update needed
[2026-10-18 09:45:34,310.310 INFO    ] Checking for camera pi updates...
[2026-10-18 09:45:34,346.346 INFO    ] 200
[2026-10-18 09:45:34,349.349 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:45:34,391.391 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:45:44,408.408 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:45:44,448.448 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:45:44,459.459 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:45:44,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:45:44,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:45:44,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:45:46,515.515 INFO    ] ================================================
[2026-10-18 09:45:46,530.530 INFO    ] Launching Daemon at Sun Oct 18 09:45:46 IST 2026
[2026-10-18 09:45:46,541.541 INFO    ] ================================================
[2026-10-18 09:45:47,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:45:47
[2026-10-18 09:45:47,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:45:47,972.972 INFO    ] Initializing speech engine...
[2026-10-18 09:45:47,979.979 INFO    ] 2026-10-18 09:45:47
[2026-10-18 09:45:48,279.279 INFO    ] 2026-10-18 09:45:48
[2026-10-18 09:45:48,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:45:48,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:45:48,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:45:48,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:45:48,706.706 INFO    ] time= 18/10/2026 09:45:48
[2026-10-18 09:45:48,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:45:48,717.717 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:45:48,794.794 INFO    ] No existing commands found in stream
[2026-10-18 09:45:53,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:45:53,817.817 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-18 09:45:55,742.742 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:45:55,745.745 INFO    ] Checking for system updates...
[2026-10-18 09:45:55,781.781 INFO    ] 200
[2026-10-18 09:45:55,784.784 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:45:55,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:45:55,838.838 INFO    ] No update needed
[2026-10-18 09:45:55,841.841 INFO    ] Checking for camera pi updates...
[2026-10-18 09:45:55,879.879 INFO    ] 200
[2026-10-18 09:45:55,881.881 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:45:55,921.921 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:46:05,937.937 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:46:05,972.972 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:46:05,983.983 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:46:05,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:46:05,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:46:05,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:46:08,036.036 INFO    ] ================================================
[2026-10-18 09:46:08,051.051 INFO    ] Launching Daemon at Sun Oct 18 09:46:08 IST 2026
[2026-10-18 09:46:08,063.063 INFO    ] ================================================
[2026-10-18 09:46:08,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:46:08
[2026-10-18 09:46:09,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:46:09,530.530 INFO    ] Initializing speech engine...
[2026-10-18 09:46:09,540.540 INFO    ] 2026-10-18 09:46:09
[2026-10-18 09:46:09,804.804 INFO    ] 2026-10-18 09:46:09
[2026-10-18 09:46:09,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:46:10,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:46:10,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:46:10,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:46:10,348.348 INFO    ] time= 18/10/2026 09:46:10
[2026-10-18 09:46:10,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:46:10,375.375 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:46:10,501.501 INFO    ] No existing commands found in stream
[2026-10-18 09:46:15,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:46:15,519.519 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-18 09:46:18,952.952 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:46:18,955.955 INFO    ] Checking for system updates...
[2026-10-18 09:46:18,991.991 INFO    ] 200
[2026-10-18 09:46:18,993.993 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:46:19,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:46:19,048.048 INFO    ] No update needed
[2026-10-18 09:46:19,051.051 INFO    ] Checking for camera pi updates...
[2026-10-18 09:46:19,084.084 INFO    ] 200
[2026-10-18 09:46:19,086.086 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:46:19,127.127 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:46:29,146.146 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:46:29,181.181 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:46:29,190.190 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:46:29,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:46:29,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:46:29,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:46:31,243.243 INFO    ] ================================================
[2026-10-18 09:46:31,260.260 INFO    ] Launching Daemon at Sun Oct 18 09:46:31 IST 2026
[2026-10-18 09:46:31,271.271 INFO    ] ================================================
[2026-10-18 09:46:31,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:46:31
[2026-10-18 09:46:32,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:46:32,885.885 INFO    ] Initializing speech engine...
[2026-10-18 09:46:32,911.911 INFO    ] 2026-10-18 09:46:32
[2026-10-18 09:46:33,170.170 INFO    ] 2026-10-18 09:46:33
[2026-10-18 09:46:33,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:46:33,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:46:33,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:46:33,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:46:33,725.725 INFO    ] time= 18/10/2026 09:46:33
[2026-10-18 09:46:33,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:46:33,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:46:33,879.879 INFO    ] No existing commands found in stream
[2026-10-18 09:46:38,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:46:38,903.903 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-18 09:46:40,303.303 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:46:40,305.305 INFO    ] Checking for system updates...
[2026-10-18 09:46:40,341.341 INFO    ] 200
[2026-10-18 09:46:40,343.343 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:46:40,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:46:40,404.404 INFO    ] No update needed
[2026-10-18 09:46:40,407.407 INFO    ] Checking for camera pi updates...
[2026-10-18 09:46:40,444.444 INFO    ] 200
[2026-10-18 09:46:40,446.446 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:46:40,488.488 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:46:50,503.503 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:46:50,538.538 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:46:50,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:46:50,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:46:50,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:46:50,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:46:52,599.599 INFO    ] ================================================
[2026-10-18 09:46:52,614.614 INFO    ] Launching Daemon at Sun Oct 18 09:46:52 IST 2026
[2026-10-18 09:46:52,626.626 INFO    ] ================================================
[2026-10-18 09:46:53,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:46:53
[2026-10-18 09:46:53,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:46:54,101.101 INFO    ] Initializing speech engine...
[2026-10-18 09:46:54,110.110 INFO    ] 2026-10-18 09:46:54
[2026-10-18 09:46:54,375.375 INFO    ] 2026-10-18 09:46:54
[2026-10-18 09:46:54,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:46:54,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:46:54,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:46:54,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:46:54,918.918 INFO    ] time= 18/10/2026 09:46:54
[2026-10-18 09:46:54,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:46:54,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:46:55,076.076 INFO    ] No existing commands found in stream
[2026-10-18 09:47:00,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:47:00,097.097 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-18 09:47:03,754.754 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:47:03,757.757 INFO    ] Checking for system updates...
[2026-10-18 09:47:03,793.793 INFO    ] 200
[2026-10-18 09:47:03,796.796 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:47:03,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:47:03,859.859 INFO    ] No update needed
[2026-10-18 09:47:03,862.862 INFO    ] Checking for camera pi updates...
[2026-10-18 09:47:03,897.897 INFO    ] 200
[2026-10-18 09:47:03,900.900 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:47:03,941.941 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:47:13,958.958 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:47:13,997.997 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:47:14,008.008 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:47:14,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:47:14,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:47:14,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:47:16,063.063 INFO    ] ================================================
[2026-10-18 09:47:16,078.078 INFO    ] Launching Daemon at Sun Oct 18 09:47:16 IST 2026
[2026-10-18 09:47:16,089.089 INFO    ] ================================================
[2026-10-18 09:47:16,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:47:16
[2026-10-18 09:47:17,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:47:17,510.510 INFO    ] Initializing speech engine...
[2026-10-18 09:47:17,531.531 INFO    ] 2026-10-18 09:47:17
[2026-10-18 09:47:17,797.797 INFO    ] 2026-10-18 09:47:17
[2026-10-18 09:47:17,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:47:18,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:47:18,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:47:18,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:47:18,340.340 INFO    ] time= 18/10/2026 09:47:18
[2026-10-18 09:47:18,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:47:18,433.433 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:47:18,582.582 INFO    ] No existing commands found in stream
[2026-10-18 09:47:23,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:47:23,610.610 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-18 09:47:25,943.943 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:47:25,946.946 INFO    ] Checking for system updates...
[2026-10-18 09:47:25,981.981 INFO    ] 200
[2026-10-18 09:47:25,984.984 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:47:26,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:47:26,041.041 INFO    ] No update needed
[2026-10-18 09:47:26,043.043 INFO    ] Checking for camera pi updates...
[2026-10-18 09:47:26,076.076 INFO    ] 200
[2026-10-18 09:47:26,079.079 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:47:26,120.120 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:47:36,136.136 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:47:36,170.170 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:47:36,180.180 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:47:36,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:47:36,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:47:36,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:47:38,233.233 INFO    ] ================================================
[2026-10-18 09:47:38,249.249 INFO    ] Launching Daemon at Sun Oct 18 09:47:38 IST 2026
[2026-10-18 09:47:38,259.259 INFO    ] ================================================
[2026-10-18 09:47:38,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:47:38
[2026-10-18 09:47:39,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:47:39,721.721 INFO    ] Initializing speech engine...
[2026-10-18 09:47:39,727.727 INFO    ] 2026-10-18 09:47:39
[2026-10-18 09:47:39,988.988 INFO    ] 2026-10-18 09:47:39
[2026-10-18 09:47:40,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:47:40,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:47:40,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:47:40,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:47:40,535.535 INFO    ] time= 18/10/2026 09:47:40
[2026-10-18 09:47:40,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:47:40,560.560 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:47:40,685.685 INFO    ] No existing commands found in stream
[2026-10-18 09:47:45,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:47:45,703.703 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-18 09:47:48,083.083 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:47:48,086.086 INFO    ] Checking for system updates...
[2026-10-18 09:47:48,122.122 INFO    ] 200
[2026-10-18 09:47:48,125.125 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:47:48,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:47:48,183.183 INFO    ] No update needed
[2026-10-18 09:47:48,186.186 INFO    ] Checking for camera pi updates...
[2026-10-18 09:47:48,224.224 INFO    ] 200
[2026-10-18 09:47:48,226.226 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:47:48,267.267 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:47:58,282.282 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:47:58,317.317 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:47:58,326.326 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:47:58,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:47:58,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:47:58,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:48:00,380.380 INFO    ] ================================================
[2026-10-18 09:48:00,395.395 INFO    ] Launching Daemon at Sun Oct 18 09:48:00 IST 2026
[2026-10-18 09:48:00,406.406 INFO    ] ================================================
[2026-10-18 09:48:01,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:48:01
[2026-10-18 09:48:01,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:48:02,134.134 INFO    ] Initializing speech engine...
[2026-10-18 09:48:02,156.156 INFO    ] 2026-10-18 09:48:02
[2026-10-18 09:48:02,490.490 INFO    ] 2026-10-18 09:48:02
[2026-10-18 09:48:02,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:48:02,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:48:02,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:48:02,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:48:02,997.997 INFO    ] time= 18/10/2026 09:48:02
[2026-10-18 09:48:03,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:48:03,054.054 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:48:03,207.207 INFO    ] No existing commands found in stream
[2026-10-18 09:48:08,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:48:08,221.221 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-18 09:48:11,100.100 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:48:11,102.102 INFO    ] Checking for system updates...
[2026-10-18 09:48:11,138.138 INFO    ] 200
[2026-10-18 09:48:11,141.141 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:48:11,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:48:11,195.195 INFO    ] No update needed
[2026-10-18 09:48:11,197.197 INFO    ] Checking for camera pi updates...
[2026-10-18 09:48:11,235.235 INFO    ] 200
[2026-10-18 09:48:11,238.238 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:48:11,283.283 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:48:21,298.298 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:48:21,334.334 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:48:21,344.344 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:48:21,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:48:21,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:48:21,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:48:23,397.397 INFO    ] ================================================
[2026-10-18 09:48:23,413.413 INFO    ] Launching Daemon at Sun Oct 18 09:48:23 IST 2026
[2026-10-18 09:48:23,424.424 INFO    ] ================================================
[2026-10-18 09:48:24,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:48:24
[2026-10-18 09:48:24,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:48:24,877.877 INFO    ] Initializing speech engine...
[2026-10-18 09:48:24,886.886 INFO    ] 2026-10-18 09:48:24
[2026-10-18 09:48:25,161.161 INFO    ] 2026-10-18 09:48:25
[2026-10-18 09:48:25,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:48:25,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:48:25,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:48:25,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:48:25,697.697 INFO    ] time= 18/10/2026 09:48:25
[2026-10-18 09:48:25,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:48:25,745.745 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:48:25,850.850 INFO    ] No existing commands found in stream
[2026-10-18 09:48:30,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:48:30,877.877 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-18 09:48:32,606.606 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:48:32,609.609 INFO    ] Checking for system updates...
[2026-10-18 09:48:32,656.656 INFO    ] 200
[2026-10-18 09:48:32,659.659 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:48:32,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:48:32,723.723 INFO    ] No update needed
[2026-10-18 09:48:32,726.726 INFO    ] Checking for camera pi updates...
[2026-10-18 09:48:32,764.764 INFO    ] 200
[2026-10-18 09:48:32,767.767 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:48:32,811.811 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:48:42,826.826 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:48:42,861.861 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:48:42,870.870 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:48:42,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:48:42,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:48:42,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:48:44,924.924 INFO    ] ================================================
[2026-10-18 09:48:44,939.939 INFO    ] Launching Daemon at Sun Oct 18 09:48:44 IST 2026
[2026-10-18 09:48:44,950.950 INFO    ] ================================================
[2026-10-18 09:48:45,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:48:45
[2026-10-18 09:48:46,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:48:46,368.368 INFO    ] Initializing speech engine...
[2026-10-18 09:48:46,381.381 INFO    ] 2026-10-18 09:48:46
[2026-10-18 09:48:46,664.664 INFO    ] 2026-10-18 09:48:46
[2026-10-18 09:48:46,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:48:46,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:48:46,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:48:47,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:48:47,187.187 INFO    ] time= 18/10/2026 09:48:47
[2026-10-18 09:48:47,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:48:47,264.264 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:48:47,377.377 INFO    ] No existing commands found in stream
[2026-10-18 09:48:52,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:48:52,391.391 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-18 09:48:55,992.992 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:48:55,994.994 INFO    ] Checking for system updates...
[2026-10-18 09:48:56,034.034 INFO    ] 200
[2026-10-18 09:48:56,036.036 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:48:56,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:48:56,091.091 INFO    ] No update needed
[2026-10-18 09:48:56,093.093 INFO    ] Checking for camera pi updates...
[2026-10-18 09:48:56,130.130 INFO    ] 200
[2026-10-18 09:48:56,133.133 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:48:56,173.173 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:49:06,189.189 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:49:06,223.223 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:49:06,233.233 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:49:06,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:49:06,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:49:06,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:49:08,285.285 INFO    ] ================================================
[2026-10-18 09:49:08,301.301 INFO    ] Launching Daemon at Sun Oct 18 09:49:08 IST 2026
[2026-10-18 09:49:08,312.312 INFO    ] ================================================
[2026-10-18 09:49:08,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:49:08
[2026-10-18 09:49:09,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:49:09,777.777 INFO    ] Initializing speech engine...
[2026-10-18 09:49:09,788.788 INFO    ] 2026-10-18 09:49:09
[2026-10-18 09:49:10,054.054 INFO    ] 2026-10-18 09:49:10
[2026-10-18 09:49:10,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:49:10,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:49:10,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:49:10,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:49:10,543.543 INFO    ] time= 18/10/2026 09:49:10
[2026-10-18 09:49:10,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:49:10,652.652 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:49:10,812.812 INFO    ] No existing commands found in stream
[2026-10-18 09:49:15,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:49:15,845.845 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-18 09:49:19,077.077 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:49:19,080.080 INFO    ] Checking for system updates...
[2026-10-18 09:49:19,116.116 INFO    ] 200
[2026-10-18 09:49:19,119.119 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:49:19,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:49:19,180.180 INFO    ] No update needed
[2026-10-18 09:49:19,183.183 INFO    ] Checking for camera pi updates...
[2026-10-18 09:49:19,217.217 INFO    ] 200
[2026-10-18 09:49:19,220.220 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:49:19,274.274 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:49:29,288.288 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:49:29,327.327 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:49:29,336.336 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:49:29,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:49:29,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:49:29,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:49:31,390.390 INFO    ] ================================================
[2026-10-18 09:49:31,405.405 INFO    ] Launching Daemon at Sun Oct 18 09:49:31 IST 2026
[2026-10-18 09:49:31,416.416 INFO    ] ================================================
[2026-10-18 09:49:32,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:49:32
[2026-10-18 09:49:32,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:49:33,074.074 INFO    ] Initializing speech engine...
[2026-10-18 09:49:33,084.084 INFO    ] 2026-10-18 09:49:33
[2026-10-18 09:49:33,347.347 INFO    ] 2026-10-18 09:49:33
[2026-10-18 09:49:33,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:49:33,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:49:33,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:49:33,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:49:33,891.891 INFO    ] time= 18/10/2026 09:49:33
[2026-10-18 09:49:33,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:49:33,915.915 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:49:34,046.046 INFO    ] No existing commands found in stream
[2026-10-18 09:49:39,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:49:39,061.061 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-18 09:49:41,248.248 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:49:41,251.251 INFO    ] Checking for system updates...
[2026-10-18 09:49:41,295.295 INFO    ] 200
[2026-10-18 09:49:41,298.298 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 09:49:41,301.301 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-18 09:49:41,303.303 INFO    ] Checking for camera pi updates...
[2026-10-18 09:49:41,353.353 INFO    ] 200
[2026-10-18 09:49:41,356.356 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 09:49:41,359.359 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-18 09:49:41,362.362 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:49:41,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:49:41,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:49:41,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:49:43,417.417 INFO    ] ================================================
[2026-10-18 09:49:43,433.433 INFO    ] Launching Daemon at Sun Oct 18 09:49:43 IST 2026
[2026-10-18 09:49:43,444.444 INFO    ] ================================================
[2026-10-18 09:49:44,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:49:44
[2026-10-18 09:49:44,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:49:44,878.878 INFO    ] Initializing speech engine...
[2026-10-18 09:49:44,886.886 INFO    ] 2026-10-18 09:49:44
[2026-10-18 09:49:45,137.137 INFO    ] 2026-10-18 09:49:45
[2026-10-18 09:49:45,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:49:45,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:49:45,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:49:45,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:49:45,650.650 INFO    ] time= 18/10/2026 09:49:45
[2026-10-18 09:49:45,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:49:45,719.719 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:49:45,882.882 INFO    ] No existing commands found in stream
[2026-10-18 09:49:50,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:49:50,911.911 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-18 09:49:53,095.095 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:49:53,098.098 INFO    ] Checking for system updates...
[2026-10-18 09:49:53,136.136 INFO    ] 200
[2026-10-18 09:49:53,139.139 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:49:53,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:49:53,201.201 INFO    ] No update needed
[2026-10-18 09:49:53,203.203 INFO    ] Checking for camera pi updates...
[2026-10-18 09:49:53,240.240 INFO    ] 200
[2026-10-18 09:49:53,243.243 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:49:53,288.288 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:50:03,301.301 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:50:03,347.347 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:50:03,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:50:03,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:50:03,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:50:03,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:50:05,418.418 INFO    ] ================================================
[2026-10-18 09:50:05,434.434 INFO    ] Launching Daemon at Sun Oct 18 09:50:05 IST 2026
[2026-10-18 09:50:05,446.446 INFO    ] ================================================
[2026-10-18 09:50:06,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:50:06
[2026-10-18 09:50:06,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:50:06,911.911 INFO    ] Initializing speech engine...
[2026-10-18 09:50:06,920.920 INFO    ] 2026-10-18 09:50:06
[2026-10-18 09:50:07,181.181 INFO    ] 2026-10-18 09:50:07
[2026-10-18 09:50:07,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:50:07,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:50:07,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:50:07,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:50:07,738.738 INFO    ] time= 18/10/2026 09:50:07
[2026-10-18 09:50:07,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:50:07,774.774 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:50:07,881.881 INFO    ] No existing commands found in stream
[2026-10-18 09:50:12,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:50:12,918.918 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-18 09:50:14,351.351 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:50:14,354.354 INFO    ] Checking for system updates...
[2026-10-18 09:50:14,395.395 INFO    ] 200
[2026-10-18 09:50:14,398.398 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:50:14,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:50:14,461.461 INFO    ] No update needed
[2026-10-18 09:50:14,464.464 INFO    ] Checking for camera pi updates...
[2026-10-18 09:50:14,498.498 INFO    ] 200
[2026-10-18 09:50:14,501.501 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:50:14,547.547 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:50:24,562.562 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:50:24,598.598 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:50:24,608.608 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:50:24,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:50:24,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:50:24,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:50:26,661.661 INFO    ] ================================================
[2026-10-18 09:50:26,677.677 INFO    ] Launching Daemon at Sun Oct 18 09:50:26 IST 2026
[2026-10-18 09:50:26,688.688 INFO    ] ================================================
[2026-10-18 09:50:27,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:50:27
[2026-10-18 09:50:27,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:50:28,186.186 INFO    ] Initializing speech engine...
[2026-10-18 09:50:28,200.200 INFO    ] 2026-10-18 09:50:28
[2026-10-18 09:50:28,486.486 INFO    ] 2026-10-18 09:50:28
[2026-10-18 09:50:28,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:50:28,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:50:28,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:50:29,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:50:29,050.050 INFO    ] time= 18/10/2026 09:50:29
[2026-10-18 09:50:29,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:50:29,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:50:29,233.233 INFO    ] No existing commands found in stream
[2026-10-18 09:50:34,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:50:34,262.262 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-18 09:50:38,060.060 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:50:38,063.063 INFO    ] Checking for system updates...
[2026-10-18 09:50:38,107.107 INFO    ] 200
[2026-10-18 09:50:38,110.110 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:50:38,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:50:38,168.168 INFO    ] No update needed
[2026-10-18 09:50:38,171.171 INFO    ] Checking for camera pi updates...
[2026-10-18 09:50:38,206.206 INFO    ] 200
[2026-10-18 09:50:38,208.208 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:50:38,250.250 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:50:48,266.266 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:50:48,301.301 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:50:48,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:50:48,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:50:48,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:50:48,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:50:50,363.363 INFO    ] ================================================
[2026-10-18 09:50:50,379.379 INFO    ] Launching Daemon at Sun Oct 18 09:50:50 IST 2026
[2026-10-18 09:50:50,390.390 INFO    ] ================================================
[2026-10-18 09:50:50,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:50:50
[2026-10-18 09:50:51,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:50:51,857.857 INFO    ] Initializing speech engine...
[2026-10-18 09:50:51,866.866 INFO    ] 2026-10-18 09:50:51
[2026-10-18 09:50:52,117.117 INFO    ] 2026-10-18 09:50:52
[2026-10-18 09:50:52,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:50:52,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:50:52,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:50:52,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:50:52,631.631 INFO    ] time= 18/10/2026 09:50:52
[2026-10-18 09:50:52,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:50:52,684.684 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:50:52,831.831 INFO    ] No existing commands found in stream
[2026-10-18 09:50:57,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:50:57,862.862 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-18 09:50:58,599.599 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:50:58,601.601 INFO    ] Checking for system updates...
[2026-10-18 09:50:58,638.638 INFO    ] 200
[2026-10-18 09:50:58,641.641 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:50:58,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:50:58,704.704 INFO    ] No update needed
[2026-10-18 09:50:58,707.707 INFO    ] Checking for camera pi updates...
[2026-10-18 09:50:58,744.744 INFO    ] 200
[2026-10-18 09:50:58,747.747 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:50:58,793.793 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:51:08,808.808 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:51:08,843.843 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:51:08,853.853 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:51:08,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:51:08,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:51:08,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:51:10,906.906 INFO    ] ================================================
[2026-10-18 09:51:10,922.922 INFO    ] Launching Daemon at Sun Oct 18 09:51:10 IST 2026
[2026-10-18 09:51:10,933.933 INFO    ] ================================================
[2026-10-18 09:51:11,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:51:11
[2026-10-18 09:51:12,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:51:12,447.447 INFO    ] Initializing speech engine...
[2026-10-18 09:51:12,452.452 INFO    ] 2026-10-18 09:51:12
[2026-10-18 09:51:12,768.768 INFO    ] 2026-10-18 09:51:12
[2026-10-18 09:51:12,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:51:13,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:51:13,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:51:13,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:51:13,177.177 INFO    ] time= 18/10/2026 09:51:13
[2026-10-18 09:51:13,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:51:13,210.210 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:51:13,299.299 INFO    ] No existing commands found in stream
[2026-10-18 09:51:18,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:51:18,312.312 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-18 09:51:20,218.218 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:51:20,220.220 INFO    ] Checking for system updates...
[2026-10-18 09:51:20,259.259 INFO    ] 200
[2026-10-18 09:51:20,262.262 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:51:20,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:51:20,322.322 INFO    ] No update needed
[2026-10-18 09:51:20,325.325 INFO    ] Checking for camera pi updates...
[2026-10-18 09:51:20,358.358 INFO    ] 200
[2026-10-18 09:51:20,360.360 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:51:20,405.405 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:51:30,420.420 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:51:30,455.455 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:51:30,464.464 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:51:30,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:51:30,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:51:30,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:51:32,518.518 INFO    ] ================================================
[2026-10-18 09:51:32,535.535 INFO    ] Launching Daemon at Sun Oct 18 09:51:32 IST 2026
[2026-10-18 09:51:32,547.547 INFO    ] ================================================
[2026-10-18 09:51:33,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:51:33
[2026-10-18 09:51:33,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:51:34,007.007 INFO    ] Initializing speech engine...
[2026-10-18 09:51:34,027.027 INFO    ] 2026-10-18 09:51:34
[2026-10-18 09:51:34,278.278 INFO    ] 2026-10-18 09:51:34
[2026-10-18 09:51:34,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:51:34,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:51:34,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:51:34,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:51:34,777.777 INFO    ] time= 18/10/2026 09:51:34
[2026-10-18 09:51:34,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:51:34,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:51:35,003.003 INFO    ] No existing commands found in stream
[2026-10-18 09:51:40,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:51:40,021.021 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-18 09:51:44,069.069 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:51:44,072.072 INFO    ] Checking for system updates...
[2026-10-18 09:51:44,111.111 INFO    ] 200
[2026-10-18 09:51:44,113.113 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:51:44,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:51:44,173.173 INFO    ] No update needed
[2026-10-18 09:51:44,176.176 INFO    ] Checking for camera pi updates...
[2026-10-18 09:51:44,213.213 INFO    ] 200
[2026-10-18 09:51:44,215.215 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:51:44,260.260 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:51:54,274.274 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:51:54,309.309 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:51:54,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:51:54,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:51:54,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:51:54,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:51:56,372.372 INFO    ] ================================================
[2026-10-18 09:51:56,388.388 INFO    ] Launching Daemon at Sun Oct 18 09:51:56 IST 2026
[2026-10-18 09:51:56,400.400 INFO    ] ================================================
[2026-10-18 09:51:56,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:51:56
[2026-10-18 09:51:57,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:51:57,815.815 INFO    ] Initializing speech engine...
[2026-10-18 09:51:57,834.834 INFO    ] 2026-10-18 09:51:57
[2026-10-18 09:51:58,084.084 INFO    ] 2026-10-18 09:51:58
[2026-10-18 09:51:58,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:51:58,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:51:58,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:51:58,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:51:58,655.655 INFO    ] time= 18/10/2026 09:51:58
[2026-10-18 09:51:58,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:51:58,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:51:58,816.816 INFO    ] No existing commands found in stream
[2026-10-18 09:52:03,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:52:03,837.837 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-18 09:52:09,054.054 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 09:52:09,056.056 INFO    ] Checking for system updates...
[2026-10-18 09:52:09,095.095 INFO    ] 200
[2026-10-18 09:52:09,097.097 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:52:09,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:52:09,157.157 INFO    ] No update needed
[2026-10-18 09:52:09,159.159 INFO    ] Checking for camera pi updates...
[2026-10-18 09:52:09,193.193 INFO    ] 200
[2026-10-18 09:52:09,195.195 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:52:09,239.239 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:52:19,254.254 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:52:19,289.289 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:52:19,299.299 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:52:19,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:52:19,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:52:19,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:52:21,351.351 INFO    ] ================================================
[2026-10-18 09:52:21,367.367 INFO    ] Launching Daemon at Sun Oct 18 09:52:21 IST 2026
[2026-10-18 09:52:21,379.379 INFO    ] ================================================
[2026-10-18 09:52:21,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:52:21
[2026-10-18 09:52:22,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:52:22,823.823 INFO    ] Initializing speech engine...
[2026-10-18 09:52:22,837.837 INFO    ] 2026-10-18 09:52:22
[2026-10-18 09:52:23,103.103 INFO    ] 2026-10-18 09:52:23
[2026-10-18 09:52:23,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:52:23,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:52:23,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:52:23,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:52:23,587.587 INFO    ] time= 18/10/2026 09:52:23
[2026-10-18 09:52:23,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:52:23,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:52:23,803.803 INFO    ] No existing commands found in stream
[2026-10-18 09:52:28,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:52:28,831.831 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-18 09:52:33,292.292 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:52:33,295.295 INFO    ] Checking for system updates...
[2026-10-18 09:52:33,340.340 INFO    ] 200
[2026-10-18 09:52:33,342.342 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:52:33,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:52:33,399.399 INFO    ] No update needed
[2026-10-18 09:52:33,402.402 INFO    ] Checking for camera pi updates...
[2026-10-18 09:52:33,435.435 INFO    ] 200
[2026-10-18 09:52:33,437.437 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:52:33,496.496 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:52:43,510.510 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:52:43,544.544 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:52:43,554.554 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:52:43,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:52:43,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:52:43,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:52:45,606.606 INFO    ] ================================================
[2026-10-18 09:52:45,622.622 INFO    ] Launching Daemon at Sun Oct 18 09:52:45 IST 2026
[2026-10-18 09:52:45,633.633 INFO    ] ================================================
[2026-10-18 09:52:46,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:52:46
[2026-10-18 09:52:46,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:52:47,056.056 INFO    ] Initializing speech engine...
[2026-10-18 09:52:47,070.070 INFO    ] 2026-10-18 09:52:47
[2026-10-18 09:52:47,338.338 INFO    ] 2026-10-18 09:52:47
[2026-10-18 09:52:47,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:52:47,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:52:47,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:52:47,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:52:47,831.831 INFO    ] time= 18/10/2026 09:52:47
[2026-10-18 09:52:47,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:52:47,909.909 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:52:47,995.995 INFO    ] No existing commands found in stream
[2026-10-18 09:52:53,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:52:53,008.008 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-18 09:52:57,294.294 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 09:52:57,297.297 INFO    ] Checking for system updates...
[2026-10-18 09:52:57,334.334 INFO    ] 200
[2026-10-18 09:52:57,337.337 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:52:57,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:52:57,394.394 INFO    ] No update needed
[2026-10-18 09:52:57,397.397 INFO    ] Checking for camera pi updates...
[2026-10-18 09:52:57,436.436 INFO    ] 200
[2026-10-18 09:52:57,439.439 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:52:57,485.485 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:53:07,502.502 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:53:07,541.541 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:53:07,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:53:07,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:53:07,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:53:07,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:53:09,608.608 INFO    ] ================================================
[2026-10-18 09:53:09,623.623 INFO    ] Launching Daemon at Sun Oct 18 09:53:09 IST 2026
[2026-10-18 09:53:09,634.634 INFO    ] ================================================
[2026-10-18 09:53:10,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:53:10
[2026-10-18 09:53:10,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:53:11,074.074 INFO    ] Initializing speech engine...
[2026-10-18 09:53:11,099.099 INFO    ] 2026-10-18 09:53:11
[2026-10-18 09:53:11,371.371 INFO    ] 2026-10-18 09:53:11
[2026-10-18 09:53:11,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:53:11,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:53:11,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:53:11,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:53:11,877.877 INFO    ] time= 18/10/2026 09:53:11
[2026-10-18 09:53:11,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:53:11,980.980 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:53:12,139.139 INFO    ] No existing commands found in stream
[2026-10-18 09:53:17,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:53:17,167.167 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-18 09:53:18,372.372 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:53:18,375.375 INFO    ] Checking for system updates...
[2026-10-18 09:53:18,411.411 INFO    ] 200
[2026-10-18 09:53:18,414.414 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:53:18,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:53:18,470.470 INFO    ] No update needed
[2026-10-18 09:53:18,473.473 INFO    ] Checking for camera pi updates...
[2026-10-18 09:53:18,506.506 INFO    ] 200
[2026-10-18 09:53:18,509.509 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:53:18,550.550 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:53:28,566.566 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:53:28,601.601 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:53:28,612.612 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:53:28,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:53:28,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:53:28,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:53:30,664.664 INFO    ] ================================================
[2026-10-18 09:53:30,680.680 INFO    ] Launching Daemon at Sun Oct 18 09:53:30 IST 2026
[2026-10-18 09:53:30,692.692 INFO    ] ================================================
[2026-10-18 09:53:31,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:53:31
[2026-10-18 09:53:31,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:53:32,192.192 INFO    ] Initializing speech engine...
[2026-10-18 09:53:32,208.208 INFO    ] 2026-10-18 09:53:32
[2026-10-18 09:53:32,491.491 INFO    ] 2026-10-18 09:53:32
[2026-10-18 09:53:32,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:53:32,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:53:32,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:53:32,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:53:33,038.038 INFO    ] time= 18/10/2026 09:53:32
[2026-10-18 09:53:33,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:53:33,100.100 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:53:33,250.250 INFO    ] No existing commands found in stream
[2026-10-18 09:53:38,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:53:38,284.284 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-18 09:53:41,793.793 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:53:41,796.796 INFO    ] Checking for system updates...
[2026-10-18 09:53:41,835.835 INFO    ] 200
[2026-10-18 09:53:41,838.838 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:53:41,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:53:41,902.902 INFO    ] No update needed
[2026-10-18 09:53:41,904.904 INFO    ] Checking for camera pi updates...
[2026-10-18 09:53:41,937.937 INFO    ] 200
[2026-10-18 09:53:41,940.940 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:53:41,984.984 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:53:51,999.999 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:53:52,033.033 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:53:52,043.043 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:53:52,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:53:52,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:53:52,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:53:54,101.101 INFO    ] ================================================
[2026-10-18 09:53:54,117.117 INFO    ] Launching Daemon at Sun Oct 18 09:53:54 IST 2026
[2026-10-18 09:53:54,128.128 INFO    ] ================================================
[2026-10-18 09:53:54,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:53:54
[2026-10-18 09:53:55,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:53:55,546.546 INFO    ] Initializing speech engine...
[2026-10-18 09:53:55,552.552 INFO    ] 2026-10-18 09:53:55
[2026-10-18 09:53:55,845.845 INFO    ] 2026-10-18 09:53:55
[2026-10-18 09:53:55,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:53:56,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:53:56,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:53:56,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:53:56,261.261 INFO    ] time= 18/10/2026 09:53:56
[2026-10-18 09:53:56,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:53:56,336.336 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:53:56,479.479 INFO    ] No existing commands found in stream
[2026-10-18 09:54:01,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:54:01,492.492 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-18 09:54:04,515.515 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:54:04,518.518 INFO    ] Checking for system updates...
[2026-10-18 09:54:04,555.555 INFO    ] 200
[2026-10-18 09:54:04,558.558 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:54:04,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:54:04,621.621 INFO    ] No update needed
[2026-10-18 09:54:04,623.623 INFO    ] Checking for camera pi updates...
[2026-10-18 09:54:04,665.665 INFO    ] 200
[2026-10-18 09:54:04,668.668 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:54:04,713.713 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:54:14,730.730 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:54:14,770.770 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:54:14,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:54:14,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:54:14,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:54:14,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:54:16,836.836 INFO    ] ================================================
[2026-10-18 09:54:16,852.852 INFO    ] Launching Daemon at Sun Oct 18 09:54:16 IST 2026
[2026-10-18 09:54:16,864.864 INFO    ] ================================================
[2026-10-18 09:54:17,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:54:17
[2026-10-18 09:54:18,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:54:18,289.289 INFO    ] Initializing speech engine...
[2026-10-18 09:54:18,296.296 INFO    ] 2026-10-18 09:54:18
[2026-10-18 09:54:18,543.543 INFO    ] 2026-10-18 09:54:18
[2026-10-18 09:54:18,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:54:18,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:54:18,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:54:18,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:54:19,008.008 INFO    ] time= 18/10/2026 09:54:18
[2026-10-18 09:54:19,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:54:19,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:54:19,250.250 INFO    ] No existing commands found in stream
[2026-10-18 09:54:24,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:54:24,281.281 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-18 09:54:27,892.892 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 09:54:27,895.895 INFO    ] Checking for system updates...
[2026-10-18 09:54:27,930.930 INFO    ] 200
[2026-10-18 09:54:27,933.933 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:54:27,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:54:27,987.987 INFO    ] No update needed
[2026-10-18 09:54:27,990.990 INFO    ] Checking for camera pi updates...
[2026-10-18 09:54:28,023.023 INFO    ] 200
[2026-10-18 09:54:28,026.026 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:54:28,066.066 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:54:38,079.079 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:54:38,113.113 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:54:38,123.123 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:54:38,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:54:38,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:54:38,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:54:40,177.177 INFO    ] ================================================
[2026-10-18 09:54:40,193.193 INFO    ] Launching Daemon at Sun Oct 18 09:54:40 IST 2026
[2026-10-18 09:54:40,204.204 INFO    ] ================================================
[2026-10-18 09:54:40,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:54:40
[2026-10-18 09:54:41,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:54:41,671.671 INFO    ] Initializing speech engine...
[2026-10-18 09:54:41,680.680 INFO    ] 2026-10-18 09:54:41
[2026-10-18 09:54:41,944.944 INFO    ] 2026-10-18 09:54:41
[2026-10-18 09:54:41,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:54:42,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:54:42,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:54:42,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:54:42,488.488 INFO    ] time= 18/10/2026 09:54:42
[2026-10-18 09:54:42,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:54:42,515.515 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:54:42,644.644 INFO    ] No existing commands found in stream
[2026-10-18 09:54:47,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:54:47,675.675 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-18 09:54:48,641.641 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:54:48,644.644 INFO    ] Checking for system updates...
[2026-10-18 09:54:48,684.684 INFO    ] 200
[2026-10-18 09:54:48,688.688 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:54:48,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:54:48,757.757 INFO    ] No update needed
[2026-10-18 09:54:48,760.760 INFO    ] Checking for camera pi updates...
[2026-10-18 09:54:48,795.795 INFO    ] 200
[2026-10-18 09:54:48,798.798 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:54:48,843.843 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:54:58,860.860 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:54:58,899.899 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:54:58,911.911 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:54:58,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:54:58,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:54:58,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:55:00,966.966 INFO    ] ================================================
[2026-10-18 09:55:00,982.982 INFO    ] Launching Daemon at Sun Oct 18 09:55:00 IST 2026
[2026-10-18 09:55:00,993.993 INFO    ] ================================================
[2026-10-18 09:55:01,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:55:01
[2026-10-18 09:55:02,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:55:02,828.828 INFO    ] Initializing speech engine...
[2026-10-18 09:55:02,841.841 INFO    ] 2026-10-18 09:55:02
[2026-10-18 09:55:03,195.195 INFO    ] 2026-10-18 09:55:03
[2026-10-18 09:55:03,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:55:03,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:55:03,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:55:03,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:55:03,635.635 INFO    ] time= 18/10/2026 09:55:03
[2026-10-18 09:55:03,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:55:03,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:55:03,829.829 INFO    ] No existing commands found in stream
[2026-10-18 09:55:08,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:55:08,850.850 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-18 09:55:12,780.780 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:55:12,783.783 INFO    ] Checking for system updates...
[2026-10-18 09:55:12,824.824 INFO    ] 200
[2026-10-18 09:55:12,826.826 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:55:12,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:55:12,881.881 INFO    ] No update needed
[2026-10-18 09:55:12,884.884 INFO    ] Checking for camera pi updates...
[2026-10-18 09:55:12,917.917 INFO    ] 200
[2026-10-18 09:55:12,920.920 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:55:12,965.965 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:55:22,980.980 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:55:23,014.014 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:55:23,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:55:23,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:55:23,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:55:23,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:55:25,079.079 INFO    ] ================================================
[2026-10-18 09:55:25,095.095 INFO    ] Launching Daemon at Sun Oct 18 09:55:25 IST 2026
[2026-10-18 09:55:25,106.106 INFO    ] ================================================
[2026-10-18 09:55:25,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:55:25
[2026-10-18 09:55:26,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:55:26,545.545 INFO    ] Initializing speech engine...
[2026-10-18 09:55:26,558.558 INFO    ] 2026-10-18 09:55:26
[2026-10-18 09:55:26,842.842 INFO    ] 2026-10-18 09:55:26
[2026-10-18 09:55:26,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:55:27,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:55:27,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:55:27,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:55:27,263.263 INFO    ] time= 18/10/2026 09:55:27
[2026-10-18 09:55:27,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:55:27,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:55:27,427.427 INFO    ] No existing commands found in stream
[2026-10-18 09:55:32,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:55:32,455.455 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-18 09:55:36,418.418 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:55:36,420.420 INFO    ] Checking for system updates...
[2026-10-18 09:55:36,459.459 INFO    ] 200
[2026-10-18 09:55:36,462.462 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:55:36,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:55:36,523.523 INFO    ] No update needed
[2026-10-18 09:55:36,526.526 INFO    ] Checking for camera pi updates...
[2026-10-18 09:55:36,561.561 INFO    ] 200
[2026-10-18 09:55:36,563.563 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:55:36,605.605 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:55:46,622.622 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:55:46,662.662 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:55:46,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:55:46,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:55:46,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:55:46,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:55:48,729.729 INFO    ] ================================================
[2026-10-18 09:55:48,744.744 INFO    ] Launching Daemon at Sun Oct 18 09:55:48 IST 2026
[2026-10-18 09:55:48,755.755 INFO    ] ================================================
[2026-10-18 09:55:49,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:55:49
[2026-10-18 09:55:49,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:55:50,213.213 INFO    ] Initializing speech engine...
[2026-10-18 09:55:50,223.223 INFO    ] 2026-10-18 09:55:50
[2026-10-18 09:55:50,477.477 INFO    ] 2026-10-18 09:55:50
[2026-10-18 09:55:50,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:55:50,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:55:50,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:55:51,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:55:51,028.028 INFO    ] time= 18/10/2026 09:55:51
[2026-10-18 09:55:51,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:55:51,052.052 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:55:51,189.189 INFO    ] No existing commands found in stream
[2026-10-18 09:55:56,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:55:56,218.218 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-18 09:55:59,412.412 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:55:59,415.415 INFO    ] Checking for system updates...
[2026-10-18 09:55:59,451.451 INFO    ] 200
[2026-10-18 09:55:59,454.454 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:55:59,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:55:59,509.509 INFO    ] No update needed
[2026-10-18 09:55:59,512.512 INFO    ] Checking for camera pi updates...
[2026-10-18 09:55:59,546.546 INFO    ] 200
[2026-10-18 09:55:59,549.549 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:55:59,594.594 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:56:09,608.608 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:56:09,644.644 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:56:09,654.654 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:56:09,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:56:09,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:56:09,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:56:11,708.708 INFO    ] ================================================
[2026-10-18 09:56:11,723.723 INFO    ] Launching Daemon at Sun Oct 18 09:56:11 IST 2026
[2026-10-18 09:56:11,733.733 INFO    ] ================================================
[2026-10-18 09:56:12,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:56:12
[2026-10-18 09:56:12,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:56:13,199.199 INFO    ] Initializing speech engine...
[2026-10-18 09:56:13,207.207 INFO    ] 2026-10-18 09:56:13
[2026-10-18 09:56:13,469.469 INFO    ] 2026-10-18 09:56:13
[2026-10-18 09:56:13,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:56:13,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:56:13,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:56:13,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:56:14,013.013 INFO    ] time= 18/10/2026 09:56:14
[2026-10-18 09:56:14,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:56:14,038.038 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:56:14,165.165 INFO    ] No existing commands found in stream
[2026-10-18 09:56:19,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:56:19,181.181 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-18 09:56:22,994.994 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:56:22,997.997 INFO    ] Checking for system updates...
[2026-10-18 09:56:23,033.033 INFO    ] 200
[2026-10-18 09:56:23,036.036 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:56:23,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:56:23,091.091 INFO    ] No update needed
[2026-10-18 09:56:23,094.094 INFO    ] Checking for camera pi updates...
[2026-10-18 09:56:23,127.127 INFO    ] 200
[2026-10-18 09:56:23,129.129 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:56:23,169.169 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:56:33,185.185 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:56:33,225.225 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:56:33,235.235 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:56:33,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:56:33,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:56:33,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:56:35,288.288 INFO    ] ================================================
[2026-10-18 09:56:35,302.302 INFO    ] Launching Daemon at Sun Oct 18 09:56:35 IST 2026
[2026-10-18 09:56:35,313.313 INFO    ] ================================================
[2026-10-18 09:56:35,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:56:35
[2026-10-18 09:56:36,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:56:36,763.763 INFO    ] Initializing speech engine...
[2026-10-18 09:56:36,779.779 INFO    ] 2026-10-18 09:56:36
[2026-10-18 09:56:37,048.048 INFO    ] 2026-10-18 09:56:37
[2026-10-18 09:56:37,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:56:37,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:56:37,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:56:37,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:56:37,582.582 INFO    ] time= 18/10/2026 09:56:37
[2026-10-18 09:56:37,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:56:37,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:56:37,819.819 INFO    ] No existing commands found in stream
[2026-10-18 09:56:42,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:56:42,843.843 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-18 09:56:46,503.503 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:56:46,506.506 INFO    ] Checking for system updates...
[2026-10-18 09:56:46,541.541 INFO    ] 200
[2026-10-18 09:56:46,544.544 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:56:46,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:56:46,602.602 INFO    ] No update needed
[2026-10-18 09:56:46,605.605 INFO    ] Checking for camera pi updates...
[2026-10-18 09:56:46,641.641 INFO    ] 200
[2026-10-18 09:56:46,644.644 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:56:46,687.687 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:56:56,702.702 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:56:56,738.738 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:56:56,748.748 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:56:56,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:56:56,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:56:56,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:56:58,800.800 INFO    ] ================================================
[2026-10-18 09:56:58,816.816 INFO    ] Launching Daemon at Sun Oct 18 09:56:58 IST 2026
[2026-10-18 09:56:58,826.826 INFO    ] ================================================
[2026-10-18 09:56:59,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:56:59
[2026-10-18 09:57:00,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:57:00,386.386 INFO    ] Initializing speech engine...
[2026-10-18 09:57:00,394.394 INFO    ] 2026-10-18 09:57:00
[2026-10-18 09:57:00,676.676 INFO    ] 2026-10-18 09:57:00
[2026-10-18 09:57:00,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:57:00,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:57:00,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:57:01,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:57:01,224.224 INFO    ] time= 18/10/2026 09:57:01
[2026-10-18 09:57:01,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:57:01,255.255 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:57:01,401.401 INFO    ] No existing commands found in stream
[2026-10-18 09:57:06,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:57:06,440.440 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-18 09:57:10,493.493 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 09:57:10,496.496 INFO    ] Checking for system updates...
[2026-10-18 09:57:10,533.533 INFO    ] 200
[2026-10-18 09:57:10,536.536 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:57:10,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:57:10,591.591 INFO    ] No update needed
[2026-10-18 09:57:10,594.594 INFO    ] Checking for camera pi updates...
[2026-10-18 09:57:10,628.628 INFO    ] 200
[2026-10-18 09:57:10,631.631 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:57:10,676.676 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:57:20,692.692 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:57:20,733.733 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:57:20,744.744 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:57:20,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:57:20,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:57:20,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:57:22,800.800 INFO    ] ================================================
[2026-10-18 09:57:22,815.815 INFO    ] Launching Daemon at Sun Oct 18 09:57:22 IST 2026
[2026-10-18 09:57:22,825.825 INFO    ] ================================================
[2026-10-18 09:57:23,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:57:23
[2026-10-18 09:57:23,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:57:24,254.254 INFO    ] Initializing speech engine...
[2026-10-18 09:57:24,261.261 INFO    ] 2026-10-18 09:57:24
[2026-10-18 09:57:24,522.522 INFO    ] 2026-10-18 09:57:24
[2026-10-18 09:57:24,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:57:24,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:57:24,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:57:24,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:57:25,017.017 INFO    ] time= 18/10/2026 09:57:24
[2026-10-18 09:57:25,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:57:25,083.083 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:57:25,228.228 INFO    ] No existing commands found in stream
[2026-10-18 09:57:30,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:57:30,245.245 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-18 09:57:31,234.234 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 09:57:31,237.237 INFO    ] Checking for system updates...
[2026-10-18 09:57:31,278.278 INFO    ] 200
[2026-10-18 09:57:31,281.281 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:57:31,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:57:31,344.344 INFO    ] No update needed
[2026-10-18 09:57:31,347.347 INFO    ] Checking for camera pi updates...
[2026-10-18 09:57:31,384.384 INFO    ] 200
[2026-10-18 09:57:31,388.388 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:57:31,429.429 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:57:41,445.445 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:57:41,486.486 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:57:41,497.497 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:57:41,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:57:41,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:57:41,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:57:43,554.554 INFO    ] ================================================
[2026-10-18 09:57:43,572.572 INFO    ] Launching Daemon at Sun Oct 18 09:57:43 IST 2026
[2026-10-18 09:57:43,584.584 INFO    ] ================================================
[2026-10-18 09:57:44,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:57:44
[2026-10-18 09:57:44,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:57:45,220.220 INFO    ] Initializing speech engine...
[2026-10-18 09:57:45,235.235 INFO    ] 2026-10-18 09:57:45
[2026-10-18 09:57:45,550.550 INFO    ] 2026-10-18 09:57:45
[2026-10-18 09:57:45,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:57:45,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:57:45,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:57:46,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:57:46,085.085 INFO    ] time= 18/10/2026 09:57:46
[2026-10-18 09:57:46,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:57:46,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:57:46,248.248 INFO    ] No existing commands found in stream
[2026-10-18 09:57:51,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:57:51,283.283 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-18 09:57:51,812.812 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 09:57:51,815.815 INFO    ] Checking for system updates...
[2026-10-18 09:57:51,852.852 INFO    ] 200
[2026-10-18 09:57:51,855.855 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:57:51,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:57:51,911.911 INFO    ] No update needed
[2026-10-18 09:57:51,913.913 INFO    ] Checking for camera pi updates...
[2026-10-18 09:57:51,948.948 INFO    ] 200
[2026-10-18 09:57:51,951.951 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:57:52,001.001 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:58:02,019.019 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:58:02,080.080 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:58:02,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:58:02,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:58:02,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:58:02,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:58:04,154.154 INFO    ] ================================================
[2026-10-18 09:58:04,169.169 INFO    ] Launching Daemon at Sun Oct 18 09:58:04 IST 2026
[2026-10-18 09:58:04,180.180 INFO    ] ================================================
[2026-10-18 09:58:04,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:58:04
[2026-10-18 09:58:05,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:58:05,592.592 INFO    ] Initializing speech engine...
[2026-10-18 09:58:05,608.608 INFO    ] 2026-10-18 09:58:05
[2026-10-18 09:58:05,892.892 INFO    ] 2026-10-18 09:58:05
[2026-10-18 09:58:05,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:58:06,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:58:06,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:58:06,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:58:06,317.317 INFO    ] time= 18/10/2026 09:58:06
[2026-10-18 09:58:06,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:58:06,328.328 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:58:06,404.404 INFO    ] No existing commands found in stream
[2026-10-18 09:58:11,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:58:11,421.421 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-18 09:58:12,558.558 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:58:12,561.561 INFO    ] Checking for system updates...
[2026-10-18 09:58:12,596.596 INFO    ] 200
[2026-10-18 09:58:12,599.599 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:58:12,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:58:12,654.654 INFO    ] No update needed
[2026-10-18 09:58:12,656.656 INFO    ] Checking for camera pi updates...
[2026-10-18 09:58:12,690.690 INFO    ] 200
[2026-10-18 09:58:12,692.692 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:58:12,732.732 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:58:22,747.747 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:58:22,782.782 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:58:22,791.791 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:58:22,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:58:22,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:58:22,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:58:24,844.844 INFO    ] ================================================
[2026-10-18 09:58:24,859.859 INFO    ] Launching Daemon at Sun Oct 18 09:58:24 IST 2026
[2026-10-18 09:58:24,869.869 INFO    ] ================================================
[2026-10-18 09:58:25,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:58:25
[2026-10-18 09:58:26,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:58:26,278.278 INFO    ] Initializing speech engine...
[2026-10-18 09:58:26,287.287 INFO    ] 2026-10-18 09:58:26
[2026-10-18 09:58:26,581.581 INFO    ] 2026-10-18 09:58:26
[2026-10-18 09:58:26,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:58:26,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:58:26,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:58:26,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:58:27,007.007 INFO    ] time= 18/10/2026 09:58:27
[2026-10-18 09:58:27,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:58:27,062.062 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:58:27,196.196 INFO    ] No existing commands found in stream
[2026-10-18 09:58:32,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:58:32,235.235 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-18 09:58:32,954.954 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:58:32,956.956 INFO    ] Checking for system updates...
[2026-10-18 09:58:32,994.994 INFO    ] 200
[2026-10-18 09:58:32,997.997 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:58:33,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:58:33,060.060 INFO    ] No update needed
[2026-10-18 09:58:33,062.062 INFO    ] Checking for camera pi updates...
[2026-10-18 09:58:33,099.099 INFO    ] 200
[2026-10-18 09:58:33,102.102 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:58:33,153.153 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:58:43,169.169 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:58:43,203.203 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:58:43,213.213 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:58:43,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:58:43,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:58:43,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:58:45,265.265 INFO    ] ================================================
[2026-10-18 09:58:45,281.281 INFO    ] Launching Daemon at Sun Oct 18 09:58:45 IST 2026
[2026-10-18 09:58:45,292.292 INFO    ] ================================================
[2026-10-18 09:58:45,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:58:45
[2026-10-18 09:58:46,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:58:46,760.760 INFO    ] Initializing speech engine...
[2026-10-18 09:58:46,769.769 INFO    ] 2026-10-18 09:58:46
[2026-10-18 09:58:47,029.029 INFO    ] 2026-10-18 09:58:47
[2026-10-18 09:58:47,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:58:47,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:58:47,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:58:47,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:58:47,569.569 INFO    ] time= 18/10/2026 09:58:47
[2026-10-18 09:58:47,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:58:47,597.597 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:58:47,793.793 INFO    ] No existing commands found in stream
[2026-10-18 09:58:52,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:58:52,827.827 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-18 09:58:55,292.292 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:58:55,294.294 INFO    ] Checking for system updates...
[2026-10-18 09:58:55,331.331 INFO    ] 200
[2026-10-18 09:58:55,333.333 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:58:55,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:58:55,394.394 INFO    ] No update needed
[2026-10-18 09:58:55,397.397 INFO    ] Checking for camera pi updates...
[2026-10-18 09:58:55,430.430 INFO    ] 200
[2026-10-18 09:58:55,433.433 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:58:55,478.478 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:59:05,492.492 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:59:05,528.528 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:59:05,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:59:05,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:59:05,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:59:05,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:59:07,596.596 INFO    ] ================================================
[2026-10-18 09:59:07,612.612 INFO    ] Launching Daemon at Sun Oct 18 09:59:07 IST 2026
[2026-10-18 09:59:07,623.623 INFO    ] ================================================
[2026-10-18 09:59:08,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:59:08
[2026-10-18 09:59:08,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:59:09,082.082 INFO    ] Initializing speech engine...
[2026-10-18 09:59:09,093.093 INFO    ] 2026-10-18 09:59:09
[2026-10-18 09:59:09,340.340 INFO    ] 2026-10-18 09:59:09
[2026-10-18 09:59:09,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:59:09,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:59:09,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:59:09,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:59:09,898.898 INFO    ] time= 18/10/2026 09:59:09
[2026-10-18 09:59:09,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:59:09,923.923 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:59:10,052.052 INFO    ] No existing commands found in stream
[2026-10-18 09:59:15,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:59:15,070.070 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-18 09:59:16,501.501 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 09:59:16,504.504 INFO    ] Checking for system updates...
[2026-10-18 09:59:16,540.540 INFO    ] 200
[2026-10-18 09:59:16,542.542 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:59:16,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 09:59:16,599.599 INFO    ] No update needed
[2026-10-18 09:59:16,602.602 INFO    ] Checking for camera pi updates...
[2026-10-18 09:59:16,636.636 INFO    ] 200
[2026-10-18 09:59:16,639.639 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:59:16,680.680 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:59:26,697.697 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:59:26,737.737 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:59:26,748.748 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:59:26,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:59:26,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:59:26,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:59:28,805.805 INFO    ] ================================================
[2026-10-18 09:59:28,820.820 INFO    ] Launching Daemon at Sun Oct 18 09:59:28 IST 2026
[2026-10-18 09:59:28,831.831 INFO    ] ================================================
[2026-10-18 09:59:29,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:59:29
[2026-10-18 09:59:29,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:59:30,234.234 INFO    ] Initializing speech engine...
[2026-10-18 09:59:30,255.255 INFO    ] 2026-10-18 09:59:30
[2026-10-18 09:59:30,515.515 INFO    ] 2026-10-18 09:59:30
[2026-10-18 09:59:30,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:59:30,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:59:30,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:59:31,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:59:31,122.122 INFO    ] time= 18/10/2026 09:59:31
[2026-10-18 09:59:31,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:59:31,148.148 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:59:31,279.279 INFO    ] No existing commands found in stream
[2026-10-18 09:59:36,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:59:36,299.299 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-18 09:59:36,842.842 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 09:59:36,845.845 INFO    ] Checking for system updates...
[2026-10-18 09:59:36,881.881 INFO    ] 200
[2026-10-18 09:59:36,883.883 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:59:36,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 09:59:36,937.937 INFO    ] No update needed
[2026-10-18 09:59:36,940.940 INFO    ] Checking for camera pi updates...
[2026-10-18 09:59:36,973.973 INFO    ] 200
[2026-10-18 09:59:36,976.976 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 09:59:37,016.016 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 09:59:47,031.031 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 09:59:47,066.066 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 09:59:47,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-18 09:59:47,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 09:59:47,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 09:59:47,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 09:59:49,129.129 INFO    ] ================================================
[2026-10-18 09:59:49,145.145 INFO    ] Launching Daemon at Sun Oct 18 09:59:49 IST 2026
[2026-10-18 09:59:49,157.157 INFO    ] ================================================
[2026-10-18 09:59:49,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 09:59:49
[2026-10-18 09:59:50,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 09:59:50,630.630 INFO    ] Initializing speech engine...
[2026-10-18 09:59:50,638.638 INFO    ] 2026-10-18 09:59:50
[2026-10-18 09:59:50,898.898 INFO    ] 2026-10-18 09:59:50
[2026-10-18 09:59:50,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 09:59:51,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 09:59:51,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 09:59:51,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 09:59:51,442.442 INFO    ] time= 18/10/2026 09:59:51
[2026-10-18 09:59:51,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 09:59:51,488.488 INFO    ] Checking for existing commands in stream...
[2026-10-18 09:59:51,596.596 INFO    ] No existing commands found in stream
[2026-10-18 09:59:56,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 09:59:56,621.621 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-18 10:00:00,687.687 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 10:00:00,690.690 INFO    ] Checking for system updates...
[2026-10-18 10:00:00,728.728 INFO    ] 200
[2026-10-18 10:00:00,731.731 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:00:00,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:00:00,787.787 INFO    ] No update needed
[2026-10-18 10:00:00,790.790 INFO    ] Checking for camera pi updates...
[2026-10-18 10:00:00,824.824 INFO    ] 200
[2026-10-18 10:00:00,827.827 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:00:00,868.868 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:00:10,885.885 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:00:10,925.925 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:00:10,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:00:10,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:00:10,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:00:10,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:00:12,993.993 INFO    ] ================================================
[2026-10-18 10:00:13,009.009 INFO    ] Launching Daemon at Sun Oct 18 10:00:13 IST 2026
[2026-10-18 10:00:13,020.020 INFO    ] ================================================
[2026-10-18 10:00:13,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:00:13
[2026-10-18 10:00:14,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:00:14,644.644 INFO    ] Initializing speech engine...
[2026-10-18 10:00:14,650.650 INFO    ] 2026-10-18 10:00:14
[2026-10-18 10:00:14,938.938 INFO    ] 2026-10-18 10:00:14
[2026-10-18 10:00:14,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:00:15,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:00:15,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:00:15,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:00:15,476.476 INFO    ] time= 18/10/2026 10:00:15
[2026-10-18 10:00:15,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:00:15,509.509 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:00:15,647.647 INFO    ] No existing commands found in stream
[2026-10-18 10:00:20,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:00:20,681.681 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-18 10:00:21,659.659 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 10:00:21,662.662 INFO    ] Checking for system updates...
[2026-10-18 10:00:21,699.699 INFO    ] 200
[2026-10-18 10:00:21,701.701 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:00:21,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:00:21,759.759 INFO    ] No update needed
[2026-10-18 10:00:21,762.762 INFO    ] Checking for camera pi updates...
[2026-10-18 10:00:21,796.796 INFO    ] 200
[2026-10-18 10:00:21,799.799 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:00:21,840.840 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:00:31,856.856 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:00:31,895.895 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:00:31,906.906 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:00:31,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:00:31,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:00:31,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:00:33,962.962 INFO    ] ================================================
[2026-10-18 10:00:33,978.978 INFO    ] Launching Daemon at Sun Oct 18 10:00:33 IST 2026
[2026-10-18 10:00:33,989.989 INFO    ] ================================================
[2026-10-18 10:00:34,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:00:34
[2026-10-18 10:00:35,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:00:35,395.395 INFO    ] Initializing speech engine...
[2026-10-18 10:00:35,401.401 INFO    ] 2026-10-18 10:00:35
[2026-10-18 10:00:35,694.694 INFO    ] 2026-10-18 10:00:35
[2026-10-18 10:00:35,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:00:35,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:00:35,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:00:36,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:00:36,111.111 INFO    ] time= 18/10/2026 10:00:36
[2026-10-18 10:00:36,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:00:36,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:00:36,328.328 INFO    ] No existing commands found in stream
[2026-10-18 10:00:41,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:00:41,345.345 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-18 10:00:44,142.142 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:00:44,145.145 INFO    ] Checking for system updates...
[2026-10-18 10:00:44,180.180 INFO    ] 200
[2026-10-18 10:00:44,183.183 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:00:44,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:00:44,237.237 INFO    ] No update needed
[2026-10-18 10:00:44,239.239 INFO    ] Checking for camera pi updates...
[2026-10-18 10:00:44,272.272 INFO    ] 200
[2026-10-18 10:00:44,274.274 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:00:44,314.314 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:00:54,329.329 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:00:54,364.364 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:00:54,373.373 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:00:54,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:00:54,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:00:54,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:00:56,426.426 INFO    ] ================================================
[2026-10-18 10:00:56,442.442 INFO    ] Launching Daemon at Sun Oct 18 10:00:56 IST 2026
[2026-10-18 10:00:56,454.454 INFO    ] ================================================
[2026-10-18 10:00:57,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:00:57
[2026-10-18 10:00:57,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:00:57,961.961 INFO    ] Initializing speech engine...
[2026-10-18 10:00:57,970.970 INFO    ] 2026-10-18 10:00:57
[2026-10-18 10:00:58,282.282 INFO    ] 2026-10-18 10:00:58
[2026-10-18 10:00:58,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:00:58,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:00:58,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:00:58,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:00:58,802.802 INFO    ] time= 18/10/2026 10:00:58
[2026-10-18 10:00:58,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:00:58,841.841 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:00:58,965.965 INFO    ] No existing commands found in stream
[2026-10-18 10:01:03,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:01:04,000.000 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-18 10:01:06,362.362 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 10:01:06,365.365 INFO    ] Checking for system updates...
[2026-10-18 10:01:06,402.402 INFO    ] 200
[2026-10-18 10:01:06,405.405 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:01:06,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:01:06,462.462 INFO    ] No update needed
[2026-10-18 10:01:06,465.465 INFO    ] Checking for camera pi updates...
[2026-10-18 10:01:06,500.500 INFO    ] 200
[2026-10-18 10:01:06,503.503 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:01:06,549.549 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:01:16,566.566 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:01:16,607.607 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:01:16,618.618 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:01:16,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:01:16,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:01:16,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:01:18,675.675 INFO    ] ================================================
[2026-10-18 10:01:18,691.691 INFO    ] Launching Daemon at Sun Oct 18 10:01:18 IST 2026
[2026-10-18 10:01:18,702.702 INFO    ] ================================================
[2026-10-18 10:01:19,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:01:19
[2026-10-18 10:01:20,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:01:20,348.348 INFO    ] Initializing speech engine...
[2026-10-18 10:01:20,360.360 INFO    ] 2026-10-18 10:01:20
[2026-10-18 10:01:20,645.645 INFO    ] 2026-10-18 10:01:20
[2026-10-18 10:01:20,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:01:20,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:01:20,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:01:21,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:01:21,202.202 INFO    ] time= 18/10/2026 10:01:21
[2026-10-18 10:01:21,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:01:21,251.251 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:01:21,362.362 INFO    ] No existing commands found in stream
[2026-10-18 10:01:26,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:01:26,382.382 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-18 10:01:28,016.016 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 10:01:28,019.019 INFO    ] Checking for system updates...
[2026-10-18 10:01:28,060.060 INFO    ] 200
[2026-10-18 10:01:28,063.063 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:01:28,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:01:28,121.121 INFO    ] No update needed
[2026-10-18 10:01:28,124.124 INFO    ] Checking for camera pi updates...
[2026-10-18 10:01:28,159.159 INFO    ] 200
[2026-10-18 10:01:28,162.162 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:01:28,204.204 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:01:38,219.219 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:01:38,259.259 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:01:38,271.271 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:01:38,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:01:38,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:01:38,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:01:40,328.328 INFO    ] ================================================
[2026-10-18 10:01:40,344.344 INFO    ] Launching Daemon at Sun Oct 18 10:01:40 IST 2026
[2026-10-18 10:01:40,355.355 INFO    ] ================================================
[2026-10-18 10:01:40,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:01:40
[2026-10-18 10:01:41,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:01:41,822.822 INFO    ] Initializing speech engine...
[2026-10-18 10:01:41,829.829 INFO    ] 2026-10-18 10:01:41
[2026-10-18 10:01:42,100.100 INFO    ] 2026-10-18 10:01:42
[2026-10-18 10:01:42,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:01:42,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:01:42,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:01:42,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:01:42,635.635 INFO    ] time= 18/10/2026 10:01:42
[2026-10-18 10:01:42,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:01:42,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:01:42,802.802 INFO    ] No existing commands found in stream
[2026-10-18 10:01:47,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:01:47,835.835 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-18 10:01:50,572.572 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 10:01:50,574.574 INFO    ] Checking for system updates...
[2026-10-18 10:01:50,610.610 INFO    ] 200
[2026-10-18 10:01:50,613.613 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:01:50,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:01:50,667.667 INFO    ] No update needed
[2026-10-18 10:01:50,670.670 INFO    ] Checking for camera pi updates...
[2026-10-18 10:01:50,703.703 INFO    ] 200
[2026-10-18 10:01:50,706.706 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:01:50,746.746 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:02:00,757.757 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:02:00,793.793 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:02:00,803.803 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:02:00,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:02:00,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:02:00,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:02:02,864.864 INFO    ] ================================================
[2026-10-18 10:02:02,881.881 INFO    ] Launching Daemon at Sun Oct 18 10:02:02 IST 2026
[2026-10-18 10:02:02,895.895 INFO    ] ================================================
[2026-10-18 10:02:03,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:02:03
[2026-10-18 10:02:04,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:02:04,406.406 INFO    ] Initializing speech engine...
[2026-10-18 10:02:04,413.413 INFO    ] 2026-10-18 10:02:04
[2026-10-18 10:02:04,699.699 INFO    ] 2026-10-18 10:02:04
[2026-10-18 10:02:04,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:02:04,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:02:04,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:02:05,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:02:05,256.256 INFO    ] time= 18/10/2026 10:02:05
[2026-10-18 10:02:05,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:02:05,283.283 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:02:05,418.418 INFO    ] No existing commands found in stream
[2026-10-18 10:02:10,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:02:10,437.437 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-18 10:02:11,743.743 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:02:11,746.746 INFO    ] Checking for system updates...
[2026-10-18 10:02:11,783.783 INFO    ] 200
[2026-10-18 10:02:11,785.785 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:02:11,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:02:11,843.843 INFO    ] No update needed
[2026-10-18 10:02:11,845.845 INFO    ] Checking for camera pi updates...
[2026-10-18 10:02:11,879.879 INFO    ] 200
[2026-10-18 10:02:11,881.881 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:02:11,922.922 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:02:21,937.937 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:02:21,972.972 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:02:21,982.982 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:02:21,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:02:21,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:02:21,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:02:24,036.036 INFO    ] ================================================
[2026-10-18 10:02:24,051.051 INFO    ] Launching Daemon at Sun Oct 18 10:02:24 IST 2026
[2026-10-18 10:02:24,062.062 INFO    ] ================================================
[2026-10-18 10:02:24,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:02:24
[2026-10-18 10:02:25,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:02:25,479.479 INFO    ] Initializing speech engine...
[2026-10-18 10:02:25,492.492 INFO    ] 2026-10-18 10:02:25
[2026-10-18 10:02:25,760.760 INFO    ] 2026-10-18 10:02:25
[2026-10-18 10:02:25,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:02:26,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:02:26,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:02:26,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:02:26,299.299 INFO    ] time= 18/10/2026 10:02:26
[2026-10-18 10:02:26,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:02:26,341.341 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:02:26,494.494 INFO    ] No existing commands found in stream
[2026-10-18 10:02:31,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:02:31,512.512 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-18 10:02:33,547.547 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:02:33,550.550 INFO    ] Checking for system updates...
[2026-10-18 10:02:33,586.586 INFO    ] 200
[2026-10-18 10:02:33,588.588 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:02:33,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:02:33,644.644 INFO    ] No update needed
[2026-10-18 10:02:33,646.646 INFO    ] Checking for camera pi updates...
[2026-10-18 10:02:33,679.679 INFO    ] 200
[2026-10-18 10:02:33,682.682 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:02:33,722.722 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:02:43,738.738 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:02:43,774.774 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:02:43,783.783 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:02:43,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:02:43,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:02:43,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:02:45,837.837 INFO    ] ================================================
[2026-10-18 10:02:45,852.852 INFO    ] Launching Daemon at Sun Oct 18 10:02:45 IST 2026
[2026-10-18 10:02:45,863.863 INFO    ] ================================================
[2026-10-18 10:02:46,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:02:46
[2026-10-18 10:02:47,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:02:47,324.324 INFO    ] Initializing speech engine...
[2026-10-18 10:02:47,330.330 INFO    ] 2026-10-18 10:02:47
[2026-10-18 10:02:47,592.592 INFO    ] 2026-10-18 10:02:47
[2026-10-18 10:02:47,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:02:47,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:02:47,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:02:48,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:02:48,135.135 INFO    ] time= 18/10/2026 10:02:48
[2026-10-18 10:02:48,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:02:48,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:02:48,288.288 INFO    ] No existing commands found in stream
[2026-10-18 10:02:53,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:02:53,305.305 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-18 10:02:55,593.593 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:02:55,596.596 INFO    ] Checking for system updates...
[2026-10-18 10:02:55,631.631 INFO    ] 200
[2026-10-18 10:02:55,634.634 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:02:55,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:02:55,688.688 INFO    ] No update needed
[2026-10-18 10:02:55,690.690 INFO    ] Checking for camera pi updates...
[2026-10-18 10:02:55,724.724 INFO    ] 200
[2026-10-18 10:02:55,726.726 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:02:55,767.767 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:03:05,782.782 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:03:05,818.818 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:03:05,828.828 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:03:05,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:03:05,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:03:05,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:03:07,883.883 INFO    ] ================================================
[2026-10-18 10:03:07,898.898 INFO    ] Launching Daemon at Sun Oct 18 10:03:07 IST 2026
[2026-10-18 10:03:07,909.909 INFO    ] ================================================
[2026-10-18 10:03:08,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:03:08
[2026-10-18 10:03:09,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:03:09,369.369 INFO    ] Initializing speech engine...
[2026-10-18 10:03:09,379.379 INFO    ] 2026-10-18 10:03:09
[2026-10-18 10:03:09,630.630 INFO    ] 2026-10-18 10:03:09
[2026-10-18 10:03:09,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:03:09,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:03:09,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:03:10,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:03:10,184.184 INFO    ] time= 18/10/2026 10:03:10
[2026-10-18 10:03:10,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:03:10,209.209 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:03:10,338.338 INFO    ] No existing commands found in stream
[2026-10-18 10:03:15,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:03:15,356.356 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-18 10:03:17,955.955 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:03:17,958.958 INFO    ] Checking for system updates...
[2026-10-18 10:03:17,995.995 INFO    ] 200
[2026-10-18 10:03:17,997.997 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:03:18,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:03:18,063.063 INFO    ] No update needed
[2026-10-18 10:03:18,066.066 INFO    ] Checking for camera pi updates...
[2026-10-18 10:03:18,100.100 INFO    ] 200
[2026-10-18 10:03:18,103.103 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:03:18,146.146 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:03:28,163.163 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:03:28,205.205 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:03:28,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:03:28,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:03:28,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:03:28,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:03:30,274.274 INFO    ] ================================================
[2026-10-18 10:03:30,290.290 INFO    ] Launching Daemon at Sun Oct 18 10:03:30 IST 2026
[2026-10-18 10:03:30,301.301 INFO    ] ================================================
[2026-10-18 10:03:30,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:03:30
[2026-10-18 10:03:31,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:03:31,808.808 INFO    ] Initializing speech engine...
[2026-10-18 10:03:31,815.815 INFO    ] 2026-10-18 10:03:31
[2026-10-18 10:03:32,132.132 INFO    ] 2026-10-18 10:03:32
[2026-10-18 10:03:32,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:03:32,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:03:32,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:03:32,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:03:32,615.615 INFO    ] time= 18/10/2026 10:03:32
[2026-10-18 10:03:32,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:03:32,627.627 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:03:32,718.718 INFO    ] No existing commands found in stream
[2026-10-18 10:03:37,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:03:37,756.756 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-18 10:03:41,054.054 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:03:41,057.057 INFO    ] Checking for system updates...
[2026-10-18 10:03:41,096.096 INFO    ] 200
[2026-10-18 10:03:41,099.099 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:03:41,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:03:41,153.153 INFO    ] No update needed
[2026-10-18 10:03:41,155.155 INFO    ] Checking for camera pi updates...
[2026-10-18 10:03:41,188.188 INFO    ] 200
[2026-10-18 10:03:41,191.191 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:03:41,230.230 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:03:51,245.245 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:03:51,281.281 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:03:51,290.290 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:03:51,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:03:51,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:03:51,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:03:53,343.343 INFO    ] ================================================
[2026-10-18 10:03:53,358.358 INFO    ] Launching Daemon at Sun Oct 18 10:03:53 IST 2026
[2026-10-18 10:03:53,369.369 INFO    ] ================================================
[2026-10-18 10:03:54,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:03:54
[2026-10-18 10:03:54,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:03:55,043.043 INFO    ] Initializing speech engine...
[2026-10-18 10:03:55,056.056 INFO    ] 2026-10-18 10:03:55
[2026-10-18 10:03:55,351.351 INFO    ] 2026-10-18 10:03:55
[2026-10-18 10:03:55,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:03:55,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:03:55,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:03:55,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:03:55,904.904 INFO    ] time= 18/10/2026 10:03:55
[2026-10-18 10:03:55,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:03:55,951.951 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:03:56,088.088 INFO    ] No existing commands found in stream
[2026-10-18 10:04:01,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:04:01,118.118 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-18 10:04:02,899.899 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 10:04:02,903.903 INFO    ] Checking for system updates...
[2026-10-18 10:04:02,945.945 INFO    ] 200
[2026-10-18 10:04:02,948.948 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:04:03,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:04:03,029.029 INFO    ] No update needed
[2026-10-18 10:04:03,032.032 INFO    ] Checking for camera pi updates...
[2026-10-18 10:04:03,074.074 INFO    ] 200
[2026-10-18 10:04:03,077.077 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:04:03,123.123 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:04:13,138.138 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:04:13,176.176 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:04:13,186.186 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:04:13,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:04:13,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:04:13,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:04:15,240.240 INFO    ] ================================================
[2026-10-18 10:04:15,255.255 INFO    ] Launching Daemon at Sun Oct 18 10:04:15 IST 2026
[2026-10-18 10:04:15,268.268 INFO    ] ================================================
[2026-10-18 10:04:15,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:04:15
[2026-10-18 10:04:16,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:04:16,892.892 INFO    ] Initializing speech engine...
[2026-10-18 10:04:16,899.899 INFO    ] 2026-10-18 10:04:16
[2026-10-18 10:04:17,191.191 INFO    ] 2026-10-18 10:04:17
[2026-10-18 10:04:17,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:04:17,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:04:17,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:04:17,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:04:17,757.757 INFO    ] time= 18/10/2026 10:04:17
[2026-10-18 10:04:17,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:04:17,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:04:17,922.922 INFO    ] No existing commands found in stream
[2026-10-18 10:04:22,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:04:22,951.951 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-18 10:04:24,294.294 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:04:24,297.297 INFO    ] Checking for system updates...
[2026-10-18 10:04:24,333.333 INFO    ] 200
[2026-10-18 10:04:24,336.336 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:04:24,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:04:24,394.394 INFO    ] No update needed
[2026-10-18 10:04:24,397.397 INFO    ] Checking for camera pi updates...
[2026-10-18 10:04:24,436.436 INFO    ] 200
[2026-10-18 10:04:24,439.439 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:04:24,480.480 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:04:34,494.494 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:04:34,534.534 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:04:34,545.545 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:04:34,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:04:34,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:04:34,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:04:36,604.604 INFO    ] ================================================
[2026-10-18 10:04:36,619.619 INFO    ] Launching Daemon at Sun Oct 18 10:04:36 IST 2026
[2026-10-18 10:04:36,630.630 INFO    ] ================================================
[2026-10-18 10:04:37,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:04:37
[2026-10-18 10:04:37,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:04:38,216.216 INFO    ] Initializing speech engine...
[2026-10-18 10:04:38,230.230 INFO    ] 2026-10-18 10:04:38
[2026-10-18 10:04:38,522.522 INFO    ] 2026-10-18 10:04:38
[2026-10-18 10:04:38,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:04:38,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:04:38,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:04:39,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:04:39,068.068 INFO    ] time= 18/10/2026 10:04:39
[2026-10-18 10:04:39,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:04:39,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:04:39,229.229 INFO    ] No existing commands found in stream
[2026-10-18 10:04:44,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:04:44,263.263 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-18 10:04:45,656.656 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:04:45,659.659 INFO    ] Checking for system updates...
[2026-10-18 10:04:45,695.695 INFO    ] 200
[2026-10-18 10:04:45,698.698 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:04:45,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:04:45,754.754 INFO    ] No update needed
[2026-10-18 10:04:45,757.757 INFO    ] Checking for camera pi updates...
[2026-10-18 10:04:45,798.798 INFO    ] 200
[2026-10-18 10:04:45,800.800 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:04:45,842.842 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:04:55,859.859 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:04:55,899.899 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:04:55,910.910 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:04:55,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:04:55,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:04:55,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:04:57,967.967 INFO    ] ================================================
[2026-10-18 10:04:57,983.983 INFO    ] Launching Daemon at Sun Oct 18 10:04:57 IST 2026
[2026-10-18 10:04:58,994.994 INFO    ] ================================================
[2026-10-18 10:04:58,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:04:58
[2026-10-18 10:04:59,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:04:59,633.633 INFO    ] Initializing speech engine...
[2026-10-18 10:04:59,641.641 INFO    ] 2026-10-18 10:04:59
[2026-10-18 10:04:59,918.918 INFO    ] 2026-10-18 10:04:59
[2026-10-18 10:04:59,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:05:00,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:05:00,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:05:00,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:05:00,429.429 INFO    ] time= 18/10/2026 10:05:00
[2026-10-18 10:05:00,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:05:00,497.497 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:05:00,645.645 INFO    ] No existing commands found in stream
[2026-10-18 10:05:05,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:05:05,664.664 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-18 10:05:09,542.542 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:05:09,545.545 INFO    ] Checking for system updates...
[2026-10-18 10:05:09,582.582 INFO    ] 200
[2026-10-18 10:05:09,585.585 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:05:09,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:05:09,640.640 INFO    ] No update needed
[2026-10-18 10:05:09,642.642 INFO    ] Checking for camera pi updates...
[2026-10-18 10:05:09,680.680 INFO    ] 200
[2026-10-18 10:05:09,682.682 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:05:09,723.723 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:05:19,738.738 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:05:19,773.773 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:05:19,782.782 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:05:19,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:05:19,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:05:19,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:05:21,836.836 INFO    ] ================================================
[2026-10-18 10:05:21,851.851 INFO    ] Launching Daemon at Sun Oct 18 10:05:21 IST 2026
[2026-10-18 10:05:21,862.862 INFO    ] ================================================
[2026-10-18 10:05:22,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:05:22
[2026-10-18 10:05:23,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:05:23,267.267 INFO    ] Initializing speech engine...
[2026-10-18 10:05:23,282.282 INFO    ] 2026-10-18 10:05:23
[2026-10-18 10:05:23,548.548 INFO    ] 2026-10-18 10:05:23
[2026-10-18 10:05:23,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:05:23,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:05:23,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:05:23,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:05:24,049.049 INFO    ] time= 18/10/2026 10:05:23
[2026-10-18 10:05:24,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:05:24,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:05:24,278.278 INFO    ] No existing commands found in stream
[2026-10-18 10:05:29,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:05:29,299.299 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-18 10:05:35,459.459 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 10:05:35,461.461 INFO    ] Checking for system updates...
[2026-10-18 10:05:35,497.497 INFO    ] 200
[2026-10-18 10:05:35,500.500 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:05:35,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:05:35,554.554 INFO    ] No update needed
[2026-10-18 10:05:35,557.557 INFO    ] Checking for camera pi updates...
[2026-10-18 10:05:35,590.590 INFO    ] 200
[2026-10-18 10:05:35,593.593 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:05:35,633.633 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:05:45,648.648 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:05:45,682.682 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:05:45,692.692 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:05:45,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:05:45,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:05:45,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:05:47,751.751 INFO    ] ================================================
[2026-10-18 10:05:47,768.768 INFO    ] Launching Daemon at Sun Oct 18 10:05:47 IST 2026
[2026-10-18 10:05:47,779.779 INFO    ] ================================================
[2026-10-18 10:05:48,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:05:48
[2026-10-18 10:05:48,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:05:49,187.187 INFO    ] Initializing speech engine...
[2026-10-18 10:05:49,210.210 INFO    ] 2026-10-18 10:05:49
[2026-10-18 10:05:49,465.465 INFO    ] 2026-10-18 10:05:49
[2026-10-18 10:05:49,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:05:49,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:05:49,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:05:49,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:05:49,967.967 INFO    ] time= 18/10/2026 10:05:49
[2026-10-18 10:05:50,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:05:50,042.042 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:05:50,191.191 INFO    ] No existing commands found in stream
[2026-10-18 10:05:55,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:05:55,207.207 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-18 10:05:57,356.356 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:05:57,359.359 INFO    ] Checking for system updates...
[2026-10-18 10:05:57,395.395 INFO    ] 200
[2026-10-18 10:05:57,397.397 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:05:57,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:05:57,452.452 INFO    ] No update needed
[2026-10-18 10:05:57,455.455 INFO    ] Checking for camera pi updates...
[2026-10-18 10:05:57,489.489 INFO    ] 200
[2026-10-18 10:05:57,491.491 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:05:57,532.532 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:06:07,545.545 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:06:07,587.587 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:06:07,597.597 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:06:07,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:06:07,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:06:07,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:06:09,652.652 INFO    ] ================================================
[2026-10-18 10:06:09,668.668 INFO    ] Launching Daemon at Sun Oct 18 10:06:09 IST 2026
[2026-10-18 10:06:09,680.680 INFO    ] ================================================
[2026-10-18 10:06:10,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:06:10
[2026-10-18 10:06:10,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:06:11,140.140 INFO    ] Initializing speech engine...
[2026-10-18 10:06:11,147.147 INFO    ] 2026-10-18 10:06:11
[2026-10-18 10:06:11,400.400 INFO    ] 2026-10-18 10:06:11
[2026-10-18 10:06:11,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:06:11,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:06:11,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:06:11,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:06:11,884.884 INFO    ] time= 18/10/2026 10:06:11
[2026-10-18 10:06:11,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:06:11,976.976 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:06:12,127.127 INFO    ] No existing commands found in stream
[2026-10-18 10:06:17,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:06:17,144.144 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-18 10:06:19,883.883 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 10:06:19,886.886 INFO    ] Checking for system updates...
[2026-10-18 10:06:19,921.921 INFO    ] 200
[2026-10-18 10:06:19,924.924 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:06:19,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:06:19,986.986 INFO    ] No update needed
[2026-10-18 10:06:19,989.989 INFO    ] Checking for camera pi updates...
[2026-10-18 10:06:20,027.027 INFO    ] 200
[2026-10-18 10:06:20,029.029 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:06:20,070.070 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:06:30,085.085 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:06:30,120.120 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:06:30,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:06:30,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:06:30,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:06:30,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:06:32,184.184 INFO    ] ================================================
[2026-10-18 10:06:32,201.201 INFO    ] Launching Daemon at Sun Oct 18 10:06:32 IST 2026
[2026-10-18 10:06:32,214.214 INFO    ] ================================================
[2026-10-18 10:06:32,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:06:32
[2026-10-18 10:06:33,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:06:33,792.792 INFO    ] Initializing speech engine...
[2026-10-18 10:06:33,804.804 INFO    ] 2026-10-18 10:06:33
[2026-10-18 10:06:34,114.114 INFO    ] 2026-10-18 10:06:34
[2026-10-18 10:06:34,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:06:34,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:06:34,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:06:34,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:06:34,632.632 INFO    ] time= 18/10/2026 10:06:34
[2026-10-18 10:06:34,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:06:34,669.669 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:06:34,776.776 INFO    ] No existing commands found in stream
[2026-10-18 10:06:39,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:06:39,804.804 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-18 10:06:43,465.465 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:06:43,468.468 INFO    ] Checking for system updates...
[2026-10-18 10:06:43,505.505 INFO    ] 200
[2026-10-18 10:06:43,508.508 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:06:43,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:06:43,563.563 INFO    ] No update needed
[2026-10-18 10:06:43,565.565 INFO    ] Checking for camera pi updates...
[2026-10-18 10:06:43,603.603 INFO    ] 200
[2026-10-18 10:06:43,605.605 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:06:43,647.647 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:06:53,664.664 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:06:53,700.700 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:06:53,710.710 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:06:53,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:06:53,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:06:53,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:06:55,763.763 INFO    ] ================================================
[2026-10-18 10:06:55,780.780 INFO    ] Launching Daemon at Sun Oct 18 10:06:55 IST 2026
[2026-10-18 10:06:55,791.791 INFO    ] ================================================
[2026-10-18 10:06:56,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:06:56
[2026-10-18 10:06:57,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:06:57,420.420 INFO    ] Initializing speech engine...
[2026-10-18 10:06:57,433.433 INFO    ] 2026-10-18 10:06:57
[2026-10-18 10:06:57,748.748 INFO    ] 2026-10-18 10:06:57
[2026-10-18 10:06:57,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:06:58,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:06:58,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:06:58,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:06:58,268.268 INFO    ] time= 18/10/2026 10:06:58
[2026-10-18 10:06:58,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:06:58,315.315 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:06:58,447.447 INFO    ] No existing commands found in stream
[2026-10-18 10:07:03,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:07:03,486.486 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-18 10:07:05,959.959 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 10:07:05,962.962 INFO    ] Checking for system updates...
[2026-10-18 10:07:05,997.997 INFO    ] 200
[2026-10-18 10:07:05,999.999 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:07:06,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:07:06,054.054 INFO    ] No update needed
[2026-10-18 10:07:06,057.057 INFO    ] Checking for camera pi updates...
[2026-10-18 10:07:06,091.091 INFO    ] 200
[2026-10-18 10:07:06,093.093 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:07:06,137.137 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:07:16,153.153 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:07:16,188.188 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:07:16,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:07:16,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:07:16,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:07:16,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:07:18,251.251 INFO    ] ================================================
[2026-10-18 10:07:18,267.267 INFO    ] Launching Daemon at Sun Oct 18 10:07:18 IST 2026
[2026-10-18 10:07:18,278.278 INFO    ] ================================================
[2026-10-18 10:07:18,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:07:18
[2026-10-18 10:07:19,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:07:19,722.722 INFO    ] Initializing speech engine...
[2026-10-18 10:07:19,727.727 INFO    ] 2026-10-18 10:07:19
[2026-10-18 10:07:20,031.031 INFO    ] 2026-10-18 10:07:19
[2026-10-18 10:07:20,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:07:20,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:07:20,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:07:20,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:07:20,551.551 INFO    ] time= 18/10/2026 10:07:20
[2026-10-18 10:07:20,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:07:20,670.670 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:07:20,798.798 INFO    ] No existing commands found in stream
[2026-10-18 10:07:25,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:07:25,830.830 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-18 10:07:29,551.551 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:07:29,553.553 INFO    ] Checking for system updates...
[2026-10-18 10:07:29,593.593 INFO    ] 200
[2026-10-18 10:07:29,596.596 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:07:29,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:07:29,650.650 INFO    ] No update needed
[2026-10-18 10:07:29,652.652 INFO    ] Checking for camera pi updates...
[2026-10-18 10:07:29,692.692 INFO    ] 200
[2026-10-18 10:07:29,694.694 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:07:29,734.734 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:07:39,749.749 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:07:39,783.783 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:07:39,794.794 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:07:39,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:07:39,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:07:39,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:07:41,846.846 INFO    ] ================================================
[2026-10-18 10:07:41,862.862 INFO    ] Launching Daemon at Sun Oct 18 10:07:41 IST 2026
[2026-10-18 10:07:41,874.874 INFO    ] ================================================
[2026-10-18 10:07:42,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:07:42
[2026-10-18 10:07:43,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:07:43,290.290 INFO    ] Initializing speech engine...
[2026-10-18 10:07:43,314.314 INFO    ] 2026-10-18 10:07:43
[2026-10-18 10:07:43,588.588 INFO    ] 2026-10-18 10:07:43
[2026-10-18 10:07:43,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:07:43,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:07:43,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:07:44,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:07:44,008.008 INFO    ] time= 18/10/2026 10:07:44
[2026-10-18 10:07:44,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:07:44,020.020 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:07:44,161.161 INFO    ] No existing commands found in stream
[2026-10-18 10:07:49,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:07:49,189.189 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-18 10:07:52,044.044 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 10:07:52,047.047 INFO    ] Checking for system updates...
[2026-10-18 10:07:52,087.087 INFO    ] 200
[2026-10-18 10:07:52,089.089 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:07:52,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:07:52,144.144 INFO    ] No update needed
[2026-10-18 10:07:52,147.147 INFO    ] Checking for camera pi updates...
[2026-10-18 10:07:52,179.179 INFO    ] 200
[2026-10-18 10:07:52,182.182 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:07:52,228.228 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:08:02,242.242 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:08:02,281.281 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:08:02,293.293 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:08:02,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:08:02,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:08:02,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:08:04,352.352 INFO    ] ================================================
[2026-10-18 10:08:04,369.369 INFO    ] Launching Daemon at Sun Oct 18 10:08:04 IST 2026
[2026-10-18 10:08:04,380.380 INFO    ] ================================================
[2026-10-18 10:08:04,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:08:04
[2026-10-18 10:08:05,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:08:05,810.810 INFO    ] Initializing speech engine...
[2026-10-18 10:08:05,817.817 INFO    ] 2026-10-18 10:08:05
[2026-10-18 10:08:06,067.067 INFO    ] 2026-10-18 10:08:06
[2026-10-18 10:08:06,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:08:06,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:08:06,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:08:06,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:08:06,612.612 INFO    ] time= 18/10/2026 10:08:06
[2026-10-18 10:08:06,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:08:06,659.659 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:08:06,797.797 INFO    ] No existing commands found in stream
[2026-10-18 10:08:11,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:08:11,818.818 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-18 10:08:13,279.279 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 10:08:13,282.282 INFO    ] Checking for system updates...
[2026-10-18 10:08:13,318.318 INFO    ] 200
[2026-10-18 10:08:13,321.321 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:08:13,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:08:13,386.386 INFO    ] No update needed
[2026-10-18 10:08:13,389.389 INFO    ] Checking for camera pi updates...
[2026-10-18 10:08:13,424.424 INFO    ] 200
[2026-10-18 10:08:13,427.427 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:08:13,468.468 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:08:23,484.484 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:08:23,519.519 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:08:23,528.528 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:08:23,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:08:23,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:08:23,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:08:25,580.580 INFO    ] ================================================
[2026-10-18 10:08:25,596.596 INFO    ] Launching Daemon at Sun Oct 18 10:08:25 IST 2026
[2026-10-18 10:08:25,607.607 INFO    ] ================================================
[2026-10-18 10:08:26,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:08:26
[2026-10-18 10:08:26,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:08:27,182.182 INFO    ] Initializing speech engine...
[2026-10-18 10:08:27,190.190 INFO    ] 2026-10-18 10:08:27
[2026-10-18 10:08:27,513.513 INFO    ] 2026-10-18 10:08:27
[2026-10-18 10:08:27,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:08:27,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:08:27,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:08:28,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:08:28,047.047 INFO    ] time= 18/10/2026 10:08:28
[2026-10-18 10:08:28,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:08:28,085.085 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:08:28,216.216 INFO    ] No existing commands found in stream
[2026-10-18 10:08:33,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:08:33,251.251 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-18 10:08:33,778.778 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:08:33,781.781 INFO    ] Checking for system updates...
[2026-10-18 10:08:33,818.818 INFO    ] 200
[2026-10-18 10:08:33,821.821 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:08:33,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:08:33,876.876 INFO    ] No update needed
[2026-10-18 10:08:33,878.878 INFO    ] Checking for camera pi updates...
[2026-10-18 10:08:33,920.920 INFO    ] 200
[2026-10-18 10:08:33,923.923 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:08:33,963.963 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:08:43,978.978 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:08:44,013.013 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:08:44,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:08:44,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:08:44,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:08:44,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:08:46,075.075 INFO    ] ================================================
[2026-10-18 10:08:46,090.090 INFO    ] Launching Daemon at Sun Oct 18 10:08:46 IST 2026
[2026-10-18 10:08:46,100.100 INFO    ] ================================================
[2026-10-18 10:08:46,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:08:46
[2026-10-18 10:08:47,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:08:47,560.560 INFO    ] Initializing speech engine...
[2026-10-18 10:08:47,570.570 INFO    ] 2026-10-18 10:08:47
[2026-10-18 10:08:47,815.815 INFO    ] 2026-10-18 10:08:47
[2026-10-18 10:08:47,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:08:48,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:08:48,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:08:48,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:08:48,371.371 INFO    ] time= 18/10/2026 10:08:48
[2026-10-18 10:08:48,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:08:48,398.398 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:08:48,527.527 INFO    ] No existing commands found in stream
[2026-10-18 10:08:53,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:08:53,552.552 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-18 10:08:54,964.964 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:08:54,967.967 INFO    ] Checking for system updates...
[2026-10-18 10:08:55,009.009 INFO    ] 200
[2026-10-18 10:08:55,012.012 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:08:55,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:08:55,067.067 INFO    ] No update needed
[2026-10-18 10:08:55,069.069 INFO    ] Checking for camera pi updates...
[2026-10-18 10:08:55,107.107 INFO    ] 200
[2026-10-18 10:08:55,109.109 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:08:55,150.150 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:09:05,166.166 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:09:05,205.205 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:09:05,215.215 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:09:05,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:09:05,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:09:05,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:09:07,268.268 INFO    ] ================================================
[2026-10-18 10:09:07,284.284 INFO    ] Launching Daemon at Sun Oct 18 10:09:07 IST 2026
[2026-10-18 10:09:07,295.295 INFO    ] ================================================
[2026-10-18 10:09:07,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:09:07
[2026-10-18 10:09:08,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:09:08,752.752 INFO    ] Initializing speech engine...
[2026-10-18 10:09:08,759.759 INFO    ] 2026-10-18 10:09:08
[2026-10-18 10:09:09,006.006 INFO    ] 2026-10-18 10:09:09
[2026-10-18 10:09:09,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:09:09,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:09:09,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:09:09,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:09:09,562.562 INFO    ] time= 18/10/2026 10:09:09
[2026-10-18 10:09:09,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:09:09,586.586 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:09:09,715.715 INFO    ] No existing commands found in stream
[2026-10-18 10:09:14,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:09:14,742.742 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-18 10:09:18,024.024 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:09:18,027.027 INFO    ] Checking for system updates...
[2026-10-18 10:09:18,068.068 INFO    ] 200
[2026-10-18 10:09:18,070.070 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:09:18,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:09:18,126.126 INFO    ] No update needed
[2026-10-18 10:09:18,129.129 INFO    ] Checking for camera pi updates...
[2026-10-18 10:09:18,162.162 INFO    ] 200
[2026-10-18 10:09:18,165.165 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:09:18,206.206 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:09:28,218.218 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:09:28,254.254 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:09:28,264.264 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:09:28,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:09:28,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:09:28,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:09:30,318.318 INFO    ] ================================================
[2026-10-18 10:09:30,334.334 INFO    ] Launching Daemon at Sun Oct 18 10:09:30 IST 2026
[2026-10-18 10:09:30,345.345 INFO    ] ================================================
[2026-10-18 10:09:30,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:09:30
[2026-10-18 10:09:31,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:09:31,841.841 INFO    ] Initializing speech engine...
[2026-10-18 10:09:31,857.857 INFO    ] 2026-10-18 10:09:31
[2026-10-18 10:09:32,135.135 INFO    ] 2026-10-18 10:09:32
[2026-10-18 10:09:32,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:09:32,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:09:32,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:09:32,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:09:32,626.626 INFO    ] time= 18/10/2026 10:09:32
[2026-10-18 10:09:32,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:09:32,722.722 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:09:32,857.857 INFO    ] No existing commands found in stream
[2026-10-18 10:09:37,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:09:37,870.870 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-18 10:09:40,488.488 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:09:40,491.491 INFO    ] Checking for system updates...
[2026-10-18 10:09:40,526.526 INFO    ] 200
[2026-10-18 10:09:40,529.529 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:09:40,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:09:40,591.591 INFO    ] No update needed
[2026-10-18 10:09:40,593.593 INFO    ] Checking for camera pi updates...
[2026-10-18 10:09:40,626.626 INFO    ] 200
[2026-10-18 10:09:40,629.629 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:09:40,670.670 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:09:50,686.686 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:09:50,721.721 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:09:50,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:09:50,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:09:50,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:09:50,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:09:52,786.786 INFO    ] ================================================
[2026-10-18 10:09:52,802.802 INFO    ] Launching Daemon at Sun Oct 18 10:09:52 IST 2026
[2026-10-18 10:09:52,813.813 INFO    ] ================================================
[2026-10-18 10:09:53,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:09:53
[2026-10-18 10:09:54,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:09:54,279.279 INFO    ] Initializing speech engine...
[2026-10-18 10:09:54,286.286 INFO    ] 2026-10-18 10:09:54
[2026-10-18 10:09:54,548.548 INFO    ] 2026-10-18 10:09:54
[2026-10-18 10:09:54,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:09:54,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:09:54,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:09:55,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:09:55,086.086 INFO    ] time= 18/10/2026 10:09:55
[2026-10-18 10:09:55,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:09:55,189.189 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:09:55,330.330 INFO    ] No existing commands found in stream
[2026-10-18 10:10:00,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:10:00,356.356 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-18 10:10:03,130.130 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 10:10:03,133.133 INFO    ] Checking for system updates...
[2026-10-18 10:10:03,179.179 INFO    ] 200
[2026-10-18 10:10:03,182.182 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:10:03,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:10:03,237.237 INFO    ] No update needed
[2026-10-18 10:10:03,240.240 INFO    ] Checking for camera pi updates...
[2026-10-18 10:10:03,281.281 INFO    ] 200
[2026-10-18 10:10:03,284.284 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:10:03,344.344 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:10:13,360.360 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:10:13,394.394 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:10:13,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:10:13,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:10:13,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:10:13,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:10:15,457.457 INFO    ] ================================================
[2026-10-18 10:10:15,472.472 INFO    ] Launching Daemon at Sun Oct 18 10:10:15 IST 2026
[2026-10-18 10:10:15,482.482 INFO    ] ================================================
[2026-10-18 10:10:16,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:10:16
[2026-10-18 10:10:16,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:10:16,899.899 INFO    ] Initializing speech engine...
[2026-10-18 10:10:16,915.915 INFO    ] 2026-10-18 10:10:16
[2026-10-18 10:10:17,201.201 INFO    ] 2026-10-18 10:10:17
[2026-10-18 10:10:17,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:10:17,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:10:17,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:10:17,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:10:17,632.632 INFO    ] time= 18/10/2026 10:10:17
[2026-10-18 10:10:17,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:10:17,677.677 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:10:17,830.830 INFO    ] No existing commands found in stream
[2026-10-18 10:10:22,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:10:22,858.858 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-18 10:10:25,533.533 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:10:25,536.536 INFO    ] Checking for system updates...
[2026-10-18 10:10:25,572.572 INFO    ] 200
[2026-10-18 10:10:25,574.574 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:10:25,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:10:25,629.629 INFO    ] No update needed
[2026-10-18 10:10:25,632.632 INFO    ] Checking for camera pi updates...
[2026-10-18 10:10:25,665.665 INFO    ] 200
[2026-10-18 10:10:25,667.667 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:10:25,712.712 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:10:35,728.728 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:10:35,762.762 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:10:35,772.772 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:10:35,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:10:35,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:10:35,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:10:37,825.825 INFO    ] ================================================
[2026-10-18 10:10:37,840.840 INFO    ] Launching Daemon at Sun Oct 18 10:10:37 IST 2026
[2026-10-18 10:10:37,851.851 INFO    ] ================================================
[2026-10-18 10:10:38,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:10:38
[2026-10-18 10:10:39,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:10:39,251.251 INFO    ] Initializing speech engine...
[2026-10-18 10:10:39,265.265 INFO    ] 2026-10-18 10:10:39
[2026-10-18 10:10:39,531.531 INFO    ] 2026-10-18 10:10:39
[2026-10-18 10:10:39,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:10:39,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:10:39,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:10:40,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:10:40,087.087 INFO    ] time= 18/10/2026 10:10:40
[2026-10-18 10:10:40,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:10:40,120.120 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:10:40,260.260 INFO    ] No existing commands found in stream
[2026-10-18 10:10:45,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:10:45,291.291 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-18 10:10:48,146.146 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 10:10:48,148.148 INFO    ] Checking for system updates...
[2026-10-18 10:10:48,184.184 INFO    ] 200
[2026-10-18 10:10:48,186.186 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:10:48,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:10:48,241.241 INFO    ] No update needed
[2026-10-18 10:10:48,243.243 INFO    ] Checking for camera pi updates...
[2026-10-18 10:10:48,278.278 INFO    ] 200
[2026-10-18 10:10:48,281.281 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:10:48,325.325 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:10:58,340.340 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:10:58,375.375 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:10:58,384.384 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:10:58,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:10:58,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:10:58,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:11:00,438.438 INFO    ] ================================================
[2026-10-18 10:11:00,453.453 INFO    ] Launching Daemon at Sun Oct 18 10:11:00 IST 2026
[2026-10-18 10:11:00,463.463 INFO    ] ================================================
[2026-10-18 10:11:01,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:11:01
[2026-10-18 10:11:01,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:11:02,111.111 INFO    ] Initializing speech engine...
[2026-10-18 10:11:02,124.124 INFO    ] 2026-10-18 10:11:02
[2026-10-18 10:11:02,419.419 INFO    ] 2026-10-18 10:11:02
[2026-10-18 10:11:02,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:11:02,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:11:02,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:11:02,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:11:02,997.997 INFO    ] time= 18/10/2026 10:11:02
[2026-10-18 10:11:03,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:11:03,094.094 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:11:03,182.182 INFO    ] No existing commands found in stream
[2026-10-18 10:11:08,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:11:08,197.197 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-18 10:11:11,136.136 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:11:11,139.139 INFO    ] Checking for system updates...
[2026-10-18 10:11:11,178.178 INFO    ] 200
[2026-10-18 10:11:11,181.181 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:11:11,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:11:11,238.238 INFO    ] No update needed
[2026-10-18 10:11:11,240.240 INFO    ] Checking for camera pi updates...
[2026-10-18 10:11:11,276.276 INFO    ] 200
[2026-10-18 10:11:11,279.279 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:11:11,326.326 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:11:21,342.342 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:11:21,383.383 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:11:21,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:11:21,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:11:21,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:11:21,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:11:23,450.450 INFO    ] ================================================
[2026-10-18 10:11:23,465.465 INFO    ] Launching Daemon at Sun Oct 18 10:11:23 IST 2026
[2026-10-18 10:11:23,476.476 INFO    ] ================================================
[2026-10-18 10:11:24,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:11:24
[2026-10-18 10:11:24,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:11:25,125.125 INFO    ] Initializing speech engine...
[2026-10-18 10:11:25,139.139 INFO    ] 2026-10-18 10:11:25
[2026-10-18 10:11:25,451.451 INFO    ] 2026-10-18 10:11:25
[2026-10-18 10:11:25,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:11:25,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:11:25,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:11:25,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:11:25,975.975 INFO    ] time= 18/10/2026 10:11:25
[2026-10-18 10:11:26,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:11:26,015.015 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:11:26,146.146 INFO    ] No existing commands found in stream
[2026-10-18 10:11:31,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:11:31,180.180 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-18 10:11:33,586.586 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:11:33,590.590 INFO    ] Checking for system updates...
[2026-10-18 10:11:33,631.631 INFO    ] 200
[2026-10-18 10:11:33,633.633 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:11:33,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:11:33,692.692 INFO    ] No update needed
[2026-10-18 10:11:33,694.694 INFO    ] Checking for camera pi updates...
[2026-10-18 10:11:33,727.727 INFO    ] 200
[2026-10-18 10:11:33,729.729 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:11:33,770.770 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:11:43,786.786 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:11:43,821.821 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:11:43,830.830 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:11:43,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:11:43,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:11:43,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:11:45,882.882 INFO    ] ================================================
[2026-10-18 10:11:45,898.898 INFO    ] Launching Daemon at Sun Oct 18 10:11:45 IST 2026
[2026-10-18 10:11:45,909.909 INFO    ] ================================================
[2026-10-18 10:11:46,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:11:46
[2026-10-18 10:11:47,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:11:47,331.331 INFO    ] Initializing speech engine...
[2026-10-18 10:11:47,344.344 INFO    ] 2026-10-18 10:11:47
[2026-10-18 10:11:47,594.594 INFO    ] 2026-10-18 10:11:47
[2026-10-18 10:11:47,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:11:47,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:11:47,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:11:48,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:11:48,160.160 INFO    ] time= 18/10/2026 10:11:48
[2026-10-18 10:11:48,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:11:48,184.184 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:11:48,328.328 INFO    ] No existing commands found in stream
[2026-10-18 10:11:53,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:11:53,357.357 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-18 10:11:56,956.956 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 10:11:56,958.958 INFO    ] Checking for system updates...
[2026-10-18 10:11:56,994.994 INFO    ] 200
[2026-10-18 10:11:56,997.997 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:11:57,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:11:57,058.058 INFO    ] No update needed
[2026-10-18 10:11:57,064.064 INFO    ] Checking for camera pi updates...
[2026-10-18 10:11:57,112.112 INFO    ] 200
[2026-10-18 10:11:57,114.114 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:11:57,154.154 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:12:07,171.171 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:12:07,205.205 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:12:07,218.218 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:12:07,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:12:07,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:12:07,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:12:09,275.275 INFO    ] ================================================
[2026-10-18 10:12:09,290.290 INFO    ] Launching Daemon at Sun Oct 18 10:12:09 IST 2026
[2026-10-18 10:12:09,301.301 INFO    ] ================================================
[2026-10-18 10:12:09,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:12:09
[2026-10-18 10:12:10,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:12:10,758.758 INFO    ] Initializing speech engine...
[2026-10-18 10:12:10,767.767 INFO    ] 2026-10-18 10:12:10
[2026-10-18 10:12:11,026.026 INFO    ] 2026-10-18 10:12:11
[2026-10-18 10:12:11,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:12:11,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:12:11,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:12:11,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:12:11,571.571 INFO    ] time= 18/10/2026 10:12:11
[2026-10-18 10:12:11,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:12:11,600.600 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:12:11,782.782 INFO    ] No existing commands found in stream
[2026-10-18 10:12:16,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:12:16,810.810 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-18 10:12:18,854.854 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:12:18,856.856 INFO    ] Checking for system updates...
[2026-10-18 10:12:18,892.892 INFO    ] 200
[2026-10-18 10:12:18,894.894 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:12:18,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:12:18,949.949 INFO    ] No update needed
[2026-10-18 10:12:18,952.952 INFO    ] Checking for camera pi updates...
[2026-10-18 10:12:18,989.989 INFO    ] 200
[2026-10-18 10:12:18,992.992 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:12:19,033.033 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:12:29,048.048 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:12:29,084.084 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:12:29,094.094 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:12:29,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:12:29,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:12:29,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:12:31,148.148 INFO    ] ================================================
[2026-10-18 10:12:31,163.163 INFO    ] Launching Daemon at Sun Oct 18 10:12:31 IST 2026
[2026-10-18 10:12:31,174.174 INFO    ] ================================================
[2026-10-18 10:12:31,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:12:31
[2026-10-18 10:12:32,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:12:32,887.887 INFO    ] Initializing speech engine...
[2026-10-18 10:12:32,894.894 INFO    ] 2026-10-18 10:12:32
[2026-10-18 10:12:33,176.176 INFO    ] 2026-10-18 10:12:33
[2026-10-18 10:12:33,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:12:33,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:12:33,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:12:33,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:12:33,729.729 INFO    ] time= 18/10/2026 10:12:33
[2026-10-18 10:12:33,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:12:33,776.776 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:12:33,928.928 INFO    ] No existing commands found in stream
[2026-10-18 10:12:38,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:12:38,962.962 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-18 10:12:42,387.387 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:12:42,390.390 INFO    ] Checking for system updates...
[2026-10-18 10:12:42,427.427 INFO    ] 200
[2026-10-18 10:12:42,430.430 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:12:42,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:12:42,492.492 INFO    ] No update needed
[2026-10-18 10:12:42,495.495 INFO    ] Checking for camera pi updates...
[2026-10-18 10:12:42,534.534 INFO    ] 200
[2026-10-18 10:12:42,537.537 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:12:42,583.583 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:12:52,599.599 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:12:52,638.638 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:12:52,649.649 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:12:52,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:12:52,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:12:52,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:12:54,704.704 INFO    ] ================================================
[2026-10-18 10:12:54,719.719 INFO    ] Launching Daemon at Sun Oct 18 10:12:54 IST 2026
[2026-10-18 10:12:54,730.730 INFO    ] ================================================
[2026-10-18 10:12:55,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:12:55
[2026-10-18 10:12:55,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:12:56,130.130 INFO    ] Initializing speech engine...
[2026-10-18 10:12:56,152.152 INFO    ] 2026-10-18 10:12:56
[2026-10-18 10:12:56,405.405 INFO    ] 2026-10-18 10:12:56
[2026-10-18 10:12:56,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:12:56,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:12:56,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:12:56,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:12:56,830.830 INFO    ] time= 18/10/2026 10:12:56
[2026-10-18 10:12:56,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:12:56,875.875 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:12:57,018.018 INFO    ] No existing commands found in stream
[2026-10-18 10:13:02,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:13:02,046.046 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-18 10:13:05,769.769 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 10:13:05,772.772 INFO    ] Checking for system updates...
[2026-10-18 10:13:05,807.807 INFO    ] 200
[2026-10-18 10:13:05,809.809 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:13:05,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:13:05,870.870 INFO    ] No update needed
[2026-10-18 10:13:05,873.873 INFO    ] Checking for camera pi updates...
[2026-10-18 10:13:05,910.910 INFO    ] 200
[2026-10-18 10:13:05,912.912 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:13:05,952.952 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:13:15,968.968 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:13:16,002.002 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:13:16,012.012 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:13:16,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:13:16,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:13:16,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:13:18,065.065 INFO    ] ================================================
[2026-10-18 10:13:18,081.081 INFO    ] Launching Daemon at Sun Oct 18 10:13:18 IST 2026
[2026-10-18 10:13:18,091.091 INFO    ] ================================================
[2026-10-18 10:13:18,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:13:18
[2026-10-18 10:13:19,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:13:19,538.538 INFO    ] Initializing speech engine...
[2026-10-18 10:13:19,554.554 INFO    ] 2026-10-18 10:13:19
[2026-10-18 10:13:19,809.809 INFO    ] 2026-10-18 10:13:19
[2026-10-18 10:13:19,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:13:20,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:13:20,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:13:20,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:13:20,300.300 INFO    ] time= 18/10/2026 10:13:20
[2026-10-18 10:13:20,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:13:20,376.376 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:13:20,543.543 INFO    ] No existing commands found in stream
[2026-10-18 10:13:25,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:13:25,560.560 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-18 10:13:26,497.497 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 10:13:26,500.500 INFO    ] Checking for system updates...
[2026-10-18 10:13:26,539.539 INFO    ] 200
[2026-10-18 10:13:26,542.542 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:13:26,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:13:26,598.598 INFO    ] No update needed
[2026-10-18 10:13:26,600.600 INFO    ] Checking for camera pi updates...
[2026-10-18 10:13:26,638.638 INFO    ] 200
[2026-10-18 10:13:26,641.641 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:13:26,681.681 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:13:36,695.695 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:13:36,729.729 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:13:36,739.739 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:13:36,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:13:36,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:13:36,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:13:38,792.792 INFO    ] ================================================
[2026-10-18 10:13:38,807.807 INFO    ] Launching Daemon at Sun Oct 18 10:13:38 IST 2026
[2026-10-18 10:13:38,818.818 INFO    ] ================================================
[2026-10-18 10:13:39,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:13:39
[2026-10-18 10:13:39,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:13:40,220.220 INFO    ] Initializing speech engine...
[2026-10-18 10:13:40,243.243 INFO    ] 2026-10-18 10:13:40
[2026-10-18 10:13:40,500.500 INFO    ] 2026-10-18 10:13:40
[2026-10-18 10:13:40,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:13:40,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:13:40,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:13:40,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:13:40,994.994 INFO    ] time= 18/10/2026 10:13:40
[2026-10-18 10:13:41,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:13:41,078.078 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:13:41,229.229 INFO    ] No existing commands found in stream
[2026-10-18 10:13:46,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:13:46,245.245 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-18 10:13:49,806.806 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 10:13:49,809.809 INFO    ] Checking for system updates...
[2026-10-18 10:13:49,850.850 INFO    ] 200
[2026-10-18 10:13:49,853.853 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:13:49,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:13:49,910.910 INFO    ] No update needed
[2026-10-18 10:13:49,912.912 INFO    ] Checking for camera pi updates...
[2026-10-18 10:13:49,948.948 INFO    ] 200
[2026-10-18 10:13:49,951.951 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:13:49,992.992 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:14:00,009.009 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:14:00,050.050 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:14:00,061.061 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:14:00,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:14:00,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:14:00,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:14:02,122.122 INFO    ] ================================================
[2026-10-18 10:14:02,145.145 INFO    ] Launching Daemon at Sun Oct 18 10:14:02 IST 2026
[2026-10-18 10:14:02,163.163 INFO    ] ================================================
[2026-10-18 10:14:02,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:14:02
[2026-10-18 10:14:03,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:14:03,863.863 INFO    ] Initializing speech engine...
[2026-10-18 10:14:03,872.872 INFO    ] 2026-10-18 10:14:03
[2026-10-18 10:14:04,158.158 INFO    ] 2026-10-18 10:14:04
[2026-10-18 10:14:04,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:14:04,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:14:04,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:14:04,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:14:04,706.706 INFO    ] time= 18/10/2026 10:14:04
[2026-10-18 10:14:04,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:14:04,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:14:04,875.875 INFO    ] No existing commands found in stream
[2026-10-18 10:14:09,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:14:09,911.911 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-18 10:14:10,831.831 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:14:10,835.835 INFO    ] Checking for system updates...
[2026-10-18 10:14:10,872.872 INFO    ] 200
[2026-10-18 10:14:10,875.875 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:14:10,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:14:10,930.930 INFO    ] No update needed
[2026-10-18 10:14:10,933.933 INFO    ] Checking for camera pi updates...
[2026-10-18 10:14:10,966.966 INFO    ] 200
[2026-10-18 10:14:10,969.969 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:14:11,014.014 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:14:21,029.029 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:14:21,064.064 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:14:21,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:14:21,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:14:21,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:14:21,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:14:23,125.125 INFO    ] ================================================
[2026-10-18 10:14:23,140.140 INFO    ] Launching Daemon at Sun Oct 18 10:14:23 IST 2026
[2026-10-18 10:14:23,154.154 INFO    ] ================================================
[2026-10-18 10:14:23,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:14:23
[2026-10-18 10:14:24,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:14:24,590.590 INFO    ] Initializing speech engine...
[2026-10-18 10:14:24,599.599 INFO    ] 2026-10-18 10:14:24
[2026-10-18 10:14:24,849.849 INFO    ] 2026-10-18 10:14:24
[2026-10-18 10:14:24,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:14:25,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:14:25,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:14:25,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:14:25,345.345 INFO    ] time= 18/10/2026 10:14:25
[2026-10-18 10:14:25,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:14:25,428.428 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:14:25,579.579 INFO    ] No existing commands found in stream
[2026-10-18 10:14:30,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:14:30,596.596 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-18 10:14:32,356.356 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:14:32,360.360 INFO    ] Checking for system updates...
[2026-10-18 10:14:32,407.407 INFO    ] 200
[2026-10-18 10:14:32,410.410 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:14:32,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:14:32,477.477 INFO    ] No update needed
[2026-10-18 10:14:32,481.481 INFO    ] Checking for camera pi updates...
[2026-10-18 10:14:32,523.523 INFO    ] 200
[2026-10-18 10:14:32,526.526 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:14:32,577.577 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:14:42,593.593 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:14:42,634.634 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:14:42,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:14:42,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:14:42,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:14:42,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:14:44,703.703 INFO    ] ================================================
[2026-10-18 10:14:44,718.718 INFO    ] Launching Daemon at Sun Oct 18 10:14:44 IST 2026
[2026-10-18 10:14:44,729.729 INFO    ] ================================================
[2026-10-18 10:14:45,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:14:45
[2026-10-18 10:14:45,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:14:46,203.203 INFO    ] Initializing speech engine...
[2026-10-18 10:14:46,210.210 INFO    ] 2026-10-18 10:14:46
[2026-10-18 10:14:46,471.471 INFO    ] 2026-10-18 10:14:46
[2026-10-18 10:14:46,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:14:46,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:14:46,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:14:46,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:14:47,014.014 INFO    ] time= 18/10/2026 10:14:46
[2026-10-18 10:14:47,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:14:47,039.039 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:14:47,169.169 INFO    ] No existing commands found in stream
[2026-10-18 10:14:52,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:14:52,191.191 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-18 10:14:53,508.508 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:14:53,511.511 INFO    ] Checking for system updates...
[2026-10-18 10:14:53,550.550 INFO    ] 200
[2026-10-18 10:14:53,553.553 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:14:53,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:14:53,617.617 INFO    ] No update needed
[2026-10-18 10:14:53,621.621 INFO    ] Checking for camera pi updates...
[2026-10-18 10:14:53,659.659 INFO    ] 200
[2026-10-18 10:14:53,662.662 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:14:53,708.708 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:15:03,722.722 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:15:03,762.762 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:15:03,777.777 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:15:03,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:15:03,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:15:03,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:15:05,833.833 INFO    ] ================================================
[2026-10-18 10:15:05,848.848 INFO    ] Launching Daemon at Sun Oct 18 10:15:05 IST 2026
[2026-10-18 10:15:05,859.859 INFO    ] ================================================
[2026-10-18 10:15:06,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:15:06
[2026-10-18 10:15:07,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:15:07,282.282 INFO    ] Initializing speech engine...
[2026-10-18 10:15:07,291.291 INFO    ] 2026-10-18 10:15:07
[2026-10-18 10:15:07,582.582 INFO    ] 2026-10-18 10:15:07
[2026-10-18 10:15:07,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:15:07,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:15:07,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:15:07,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:15:07,994.994 INFO    ] time= 18/10/2026 10:15:07
[2026-10-18 10:15:08,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:15:08,062.062 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:15:08,189.189 INFO    ] No existing commands found in stream
[2026-10-18 10:15:13,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:15:13,202.202 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-18 10:15:16,833.833 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 10:15:16,836.836 INFO    ] Checking for system updates...
[2026-10-18 10:15:16,876.876 INFO    ] 200
[2026-10-18 10:15:16,878.878 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:15:16,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:15:16,933.933 INFO    ] No update needed
[2026-10-18 10:15:16,935.935 INFO    ] Checking for camera pi updates...
[2026-10-18 10:15:16,968.968 INFO    ] 200
[2026-10-18 10:15:16,970.970 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:15:17,011.011 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:15:27,027.027 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:15:27,061.061 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:15:27,071.071 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:15:27,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:15:27,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:15:27,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:15:29,124.124 INFO    ] ================================================
[2026-10-18 10:15:29,140.140 INFO    ] Launching Daemon at Sun Oct 18 10:15:29 IST 2026
[2026-10-18 10:15:29,151.151 INFO    ] ================================================
[2026-10-18 10:15:29,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:15:29
[2026-10-18 10:15:30,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:15:30,758.758 INFO    ] Initializing speech engine...
[2026-10-18 10:15:30,765.765 INFO    ] 2026-10-18 10:15:30
[2026-10-18 10:15:31,038.038 INFO    ] 2026-10-18 10:15:31
[2026-10-18 10:15:31,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:15:31,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:15:31,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:15:31,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:15:31,607.607 INFO    ] time= 18/10/2026 10:15:31
[2026-10-18 10:15:31,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:15:31,635.635 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:15:31,770.770 INFO    ] No existing commands found in stream
[2026-10-18 10:15:36,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:15:36,797.797 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-18 10:15:39,749.749 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:15:39,752.752 INFO    ] Checking for system updates...
[2026-10-18 10:15:39,788.788 INFO    ] 200
[2026-10-18 10:15:39,791.791 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:15:39,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:15:39,846.846 INFO    ] No update needed
[2026-10-18 10:15:39,849.849 INFO    ] Checking for camera pi updates...
[2026-10-18 10:15:39,885.885 INFO    ] 200
[2026-10-18 10:15:39,888.888 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:15:39,928.928 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:15:49,944.944 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:15:49,980.980 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:15:49,990.990 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:15:49,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:15:49,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:15:50,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:15:52,043.043 INFO    ] ================================================
[2026-10-18 10:15:52,059.059 INFO    ] Launching Daemon at Sun Oct 18 10:15:52 IST 2026
[2026-10-18 10:15:52,070.070 INFO    ] ================================================
[2026-10-18 10:15:52,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:15:52
[2026-10-18 10:15:53,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:15:53,489.489 INFO    ] Initializing speech engine...
[2026-10-18 10:15:53,506.506 INFO    ] 2026-10-18 10:15:53
[2026-10-18 10:15:53,763.763 INFO    ] 2026-10-18 10:15:53
[2026-10-18 10:15:53,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:15:54,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:15:54,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:15:54,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:15:54,263.263 INFO    ] time= 18/10/2026 10:15:54
[2026-10-18 10:15:54,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:15:54,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:15:54,465.465 INFO    ] No existing commands found in stream
[2026-10-18 10:15:59,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:15:59,493.493 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-18 10:16:00,174.174 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:16:00,177.177 INFO    ] Checking for system updates...
[2026-10-18 10:16:00,215.215 INFO    ] 200
[2026-10-18 10:16:00,217.217 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:16:00,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:16:00,273.273 INFO    ] No update needed
[2026-10-18 10:16:00,276.276 INFO    ] Checking for camera pi updates...
[2026-10-18 10:16:00,315.315 INFO    ] 200
[2026-10-18 10:16:00,318.318 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:16:00,359.359 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:16:10,374.374 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:16:10,410.410 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:16:10,419.419 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:16:10,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:16:10,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:16:10,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:16:12,474.474 INFO    ] ================================================
[2026-10-18 10:16:12,489.489 INFO    ] Launching Daemon at Sun Oct 18 10:16:12 IST 2026
[2026-10-18 10:16:12,500.500 INFO    ] ================================================
[2026-10-18 10:16:13,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:16:13
[2026-10-18 10:16:13,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:16:13,942.942 INFO    ] Initializing speech engine...
[2026-10-18 10:16:13,961.961 INFO    ] 2026-10-18 10:16:13
[2026-10-18 10:16:14,218.218 INFO    ] 2026-10-18 10:16:14
[2026-10-18 10:16:14,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:16:14,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:16:14,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:16:14,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:16:14,765.765 INFO    ] time= 18/10/2026 10:16:14
[2026-10-18 10:16:14,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:16:14,791.791 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:16:14,922.922 INFO    ] No existing commands found in stream
[2026-10-18 10:16:19,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:16:19,940.940 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-18 10:16:24,736.736 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 10:16:24,739.739 INFO    ] Checking for system updates...
[2026-10-18 10:16:24,776.776 INFO    ] 200
[2026-10-18 10:16:24,778.778 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:16:24,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:16:24,837.837 INFO    ] No update needed
[2026-10-18 10:16:24,840.840 INFO    ] Checking for camera pi updates...
[2026-10-18 10:16:24,873.873 INFO    ] 200
[2026-10-18 10:16:24,875.875 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:16:24,916.916 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:16:34,931.931 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:16:34,967.967 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:16:34,977.977 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:16:34,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:16:34,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:16:34,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:16:37,029.029 INFO    ] ================================================
[2026-10-18 10:16:37,045.045 INFO    ] Launching Daemon at Sun Oct 18 10:16:37 IST 2026
[2026-10-18 10:16:37,056.056 INFO    ] ================================================
[2026-10-18 10:16:37,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:16:37
[2026-10-18 10:16:38,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:16:38,521.521 INFO    ] Initializing speech engine...
[2026-10-18 10:16:38,531.531 INFO    ] 2026-10-18 10:16:38
[2026-10-18 10:16:38,793.793 INFO    ] 2026-10-18 10:16:38
[2026-10-18 10:16:38,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:16:39,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:16:39,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:16:39,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:16:39,199.199 INFO    ] time= 18/10/2026 10:16:39
[2026-10-18 10:16:39,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:16:39,248.248 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:16:39,390.390 INFO    ] No existing commands found in stream
[2026-10-18 10:16:44,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:16:44,423.423 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-18 10:16:45,293.293 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 10:16:45,296.296 INFO    ] Checking for system updates...
[2026-10-18 10:16:45,336.336 INFO    ] 200
[2026-10-18 10:16:45,339.339 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:16:45,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:16:45,395.395 INFO    ] No update needed
[2026-10-18 10:16:45,398.398 INFO    ] Checking for camera pi updates...
[2026-10-18 10:16:45,431.431 INFO    ] 200
[2026-10-18 10:16:45,434.434 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:16:45,474.474 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:16:55,489.489 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:16:55,530.530 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:16:55,539.539 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:16:55,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:16:55,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:16:55,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:16:57,592.592 INFO    ] ================================================
[2026-10-18 10:16:57,608.608 INFO    ] Launching Daemon at Sun Oct 18 10:16:57 IST 2026
[2026-10-18 10:16:57,619.619 INFO    ] ================================================
[2026-10-18 10:16:58,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:16:58
[2026-10-18 10:16:58,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:16:59,184.184 INFO    ] Initializing speech engine...
[2026-10-18 10:16:59,195.195 INFO    ] 2026-10-18 10:16:59
[2026-10-18 10:16:59,469.469 INFO    ] 2026-10-18 10:16:59
[2026-10-18 10:16:59,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:16:59,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:16:59,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:16:59,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:17:00,002.002 INFO    ] time= 18/10/2026 10:16:59
[2026-10-18 10:17:00,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:17:00,029.029 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:17:00,160.160 INFO    ] No existing commands found in stream
[2026-10-18 10:17:05,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:17:05,192.192 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-18 10:17:09,279.279 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 10:17:09,281.281 INFO    ] Checking for system updates...
[2026-10-18 10:17:09,318.318 INFO    ] 200
[2026-10-18 10:17:09,321.321 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:17:09,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:17:09,375.375 INFO    ] No update needed
[2026-10-18 10:17:09,378.378 INFO    ] Checking for camera pi updates...
[2026-10-18 10:17:09,412.412 INFO    ] 200
[2026-10-18 10:17:09,414.414 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:17:09,458.458 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:17:19,473.473 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:17:19,508.508 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:17:19,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:17:19,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:17:19,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:17:19,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:17:21,570.570 INFO    ] ================================================
[2026-10-18 10:17:21,586.586 INFO    ] Launching Daemon at Sun Oct 18 10:17:21 IST 2026
[2026-10-18 10:17:21,598.598 INFO    ] ================================================
[2026-10-18 10:17:22,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:17:22
[2026-10-18 10:17:22,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:17:23,046.046 INFO    ] Initializing speech engine...
[2026-10-18 10:17:23,067.067 INFO    ] 2026-10-18 10:17:23
[2026-10-18 10:17:23,330.330 INFO    ] 2026-10-18 10:17:23
[2026-10-18 10:17:23,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:17:23,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:17:23,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:17:23,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:17:23,740.740 INFO    ] time= 18/10/2026 10:17:23
[2026-10-18 10:17:23,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:17:23,789.789 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:17:23,915.915 INFO    ] No existing commands found in stream
[2026-10-18 10:17:28,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:17:28,943.943 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-18 10:17:33,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:17:33,371.371 INFO    ] Checking for system updates...
[2026-10-18 10:17:33,413.413 INFO    ] 200
[2026-10-18 10:17:33,415.415 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:17:33,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:17:33,470.470 INFO    ] No update needed
[2026-10-18 10:17:33,473.473 INFO    ] Checking for camera pi updates...
[2026-10-18 10:17:33,506.506 INFO    ] 200
[2026-10-18 10:17:33,509.509 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:17:33,559.559 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:17:43,574.574 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:17:43,610.610 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:17:43,620.620 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:17:43,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:17:43,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:17:43,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:17:45,673.673 INFO    ] ================================================
[2026-10-18 10:17:45,688.688 INFO    ] Launching Daemon at Sun Oct 18 10:17:45 IST 2026
[2026-10-18 10:17:45,699.699 INFO    ] ================================================
[2026-10-18 10:17:46,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:17:46
[2026-10-18 10:17:46,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:17:47,128.128 INFO    ] Initializing speech engine...
[2026-10-18 10:17:47,139.139 INFO    ] 2026-10-18 10:17:47
[2026-10-18 10:17:47,389.389 INFO    ] 2026-10-18 10:17:47
[2026-10-18 10:17:47,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:17:47,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:17:47,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:17:47,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:17:47,944.944 INFO    ] time= 18/10/2026 10:17:47
[2026-10-18 10:17:47,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:17:47,969.969 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:17:48,119.119 INFO    ] No existing commands found in stream
[2026-10-18 10:17:53,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:17:53,153.153 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-18 10:17:55,394.394 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:17:55,397.397 INFO    ] Checking for system updates...
[2026-10-18 10:17:55,432.432 INFO    ] 200
[2026-10-18 10:17:55,435.435 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:17:55,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:17:55,489.489 INFO    ] No update needed
[2026-10-18 10:17:55,492.492 INFO    ] Checking for camera pi updates...
[2026-10-18 10:17:55,525.525 INFO    ] 200
[2026-10-18 10:17:55,528.528 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:17:55,568.568 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:18:05,583.583 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:18:05,619.619 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:18:05,629.629 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:18:05,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:18:05,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:18:05,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:18:07,683.683 INFO    ] ================================================
[2026-10-18 10:18:07,698.698 INFO    ] Launching Daemon at Sun Oct 18 10:18:07 IST 2026
[2026-10-18 10:18:07,710.710 INFO    ] ================================================
[2026-10-18 10:18:08,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:18:08
[2026-10-18 10:18:08,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:18:09,119.119 INFO    ] Initializing speech engine...
[2026-10-18 10:18:09,142.142 INFO    ] 2026-10-18 10:18:09
[2026-10-18 10:18:09,399.399 INFO    ] 2026-10-18 10:18:09
[2026-10-18 10:18:09,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:18:09,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:18:09,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:18:09,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:18:09,877.877 INFO    ] time= 18/10/2026 10:18:09
[2026-10-18 10:18:09,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:18:09,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:18:10,112.112 INFO    ] No existing commands found in stream
[2026-10-18 10:18:15,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:18:15,137.137 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-18 10:18:18,909.909 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:18:18,912.912 INFO    ] Checking for system updates...
[2026-10-18 10:18:18,948.948 INFO    ] 200
[2026-10-18 10:18:18,950.950 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:18:19,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:18:19,004.004 INFO    ] No update needed
[2026-10-18 10:18:19,007.007 INFO    ] Checking for camera pi updates...
[2026-10-18 10:18:19,040.040 INFO    ] 200
[2026-10-18 10:18:19,043.043 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:18:19,083.083 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:18:29,099.099 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:18:29,133.133 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:18:29,143.143 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:18:29,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:18:29,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:18:29,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:18:31,196.196 INFO    ] ================================================
[2026-10-18 10:18:31,212.212 INFO    ] Launching Daemon at Sun Oct 18 10:18:31 IST 2026
[2026-10-18 10:18:31,223.223 INFO    ] ================================================
[2026-10-18 10:18:31,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:18:31
[2026-10-18 10:18:32,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:18:32,709.709 INFO    ] Initializing speech engine...
[2026-10-18 10:18:32,727.727 INFO    ] 2026-10-18 10:18:32
[2026-10-18 10:18:33,012.012 INFO    ] 2026-10-18 10:18:33
[2026-10-18 10:18:33,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:18:33,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:18:33,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:18:33,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:18:33,421.421 INFO    ] time= 18/10/2026 10:18:33
[2026-10-18 10:18:33,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:18:33,472.472 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:18:33,612.612 INFO    ] No existing commands found in stream
[2026-10-18 10:18:38,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:18:38,630.630 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-18 10:18:42,824.824 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:18:42,827.827 INFO    ] Checking for system updates...
[2026-10-18 10:18:42,862.862 INFO    ] 200
[2026-10-18 10:18:42,865.865 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:18:42,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:18:42,924.924 INFO    ] No update needed
[2026-10-18 10:18:42,926.926 INFO    ] Checking for camera pi updates...
[2026-10-18 10:18:42,963.963 INFO    ] 200
[2026-10-18 10:18:42,966.966 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:18:43,005.005 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:18:53,021.021 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:18:53,055.055 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:18:53,065.065 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:18:53,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:18:53,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:18:53,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:18:55,119.119 INFO    ] ================================================
[2026-10-18 10:18:55,134.134 INFO    ] Launching Daemon at Sun Oct 18 10:18:55 IST 2026
[2026-10-18 10:18:55,146.146 INFO    ] ================================================
[2026-10-18 10:18:55,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:18:55
[2026-10-18 10:18:56,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:18:56,698.698 INFO    ] Initializing speech engine...
[2026-10-18 10:18:56,705.705 INFO    ] 2026-10-18 10:18:56
[2026-10-18 10:18:56,975.975 INFO    ] 2026-10-18 10:18:56
[2026-10-18 10:18:57,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:18:57,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:18:57,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:18:57,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:18:57,528.528 INFO    ] time= 18/10/2026 10:18:57
[2026-10-18 10:18:57,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:18:57,554.554 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:18:57,703.703 INFO    ] No existing commands found in stream
[2026-10-18 10:19:02,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:19:02,738.738 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-18 10:19:05,904.904 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:19:05,908.908 INFO    ] Checking for system updates...
[2026-10-18 10:19:05,947.947 INFO    ] 200
[2026-10-18 10:19:05,950.950 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:19:06,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:19:06,006.006 INFO    ] No update needed
[2026-10-18 10:19:06,009.009 INFO    ] Checking for camera pi updates...
[2026-10-18 10:19:06,043.043 INFO    ] 200
[2026-10-18 10:19:06,046.046 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:19:06,089.089 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:19:16,103.103 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:19:16,144.144 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:19:16,155.155 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:19:16,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:19:16,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:19:16,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:19:18,210.210 INFO    ] ================================================
[2026-10-18 10:19:18,226.226 INFO    ] Launching Daemon at Sun Oct 18 10:19:18 IST 2026
[2026-10-18 10:19:18,237.237 INFO    ] ================================================
[2026-10-18 10:19:18,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:19:18
[2026-10-18 10:19:19,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:19:19,678.678 INFO    ] Initializing speech engine...
[2026-10-18 10:19:19,689.689 INFO    ] 2026-10-18 10:19:19
[2026-10-18 10:19:19,950.950 INFO    ] 2026-10-18 10:19:19
[2026-10-18 10:19:20,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:19:20,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:19:20,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:19:20,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:19:20,438.438 INFO    ] time= 18/10/2026 10:19:20
[2026-10-18 10:19:20,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:19:20,500.500 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:19:20,647.647 INFO    ] No existing commands found in stream
[2026-10-18 10:19:25,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:19:25,678.678 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-18 10:19:26,788.788 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 10:19:26,791.791 INFO    ] Checking for system updates...
[2026-10-18 10:19:26,828.828 INFO    ] 200
[2026-10-18 10:19:26,831.831 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:19:26,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:19:26,892.892 INFO    ] No update needed
[2026-10-18 10:19:26,895.895 INFO    ] Checking for camera pi updates...
[2026-10-18 10:19:26,934.934 INFO    ] 200
[2026-10-18 10:19:26,937.937 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:19:26,977.977 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:19:36,993.993 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:19:37,032.032 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:19:37,043.043 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:19:37,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:19:37,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:19:37,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:19:39,099.099 INFO    ] ================================================
[2026-10-18 10:19:39,115.115 INFO    ] Launching Daemon at Sun Oct 18 10:19:39 IST 2026
[2026-10-18 10:19:39,126.126 INFO    ] ================================================
[2026-10-18 10:19:39,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:19:39
[2026-10-18 10:19:40,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:19:40,573.573 INFO    ] Initializing speech engine...
[2026-10-18 10:19:40,583.583 INFO    ] 2026-10-18 10:19:40
[2026-10-18 10:19:40,833.833 INFO    ] 2026-10-18 10:19:40
[2026-10-18 10:19:40,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:19:41,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:19:41,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:19:41,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:19:41,373.373 INFO    ] time= 18/10/2026 10:19:41
[2026-10-18 10:19:41,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:19:41,403.403 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:19:41,536.536 INFO    ] No existing commands found in stream
[2026-10-18 10:19:46,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:19:46,566.566 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-18 10:19:48,807.807 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:19:48,810.810 INFO    ] Checking for system updates...
[2026-10-18 10:19:48,845.845 INFO    ] 200
[2026-10-18 10:19:48,848.848 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:19:48,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:19:48,904.904 INFO    ] No update needed
[2026-10-18 10:19:48,907.907 INFO    ] Checking for camera pi updates...
[2026-10-18 10:19:48,944.944 INFO    ] 200
[2026-10-18 10:19:48,947.947 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:19:48,987.987 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:19:59,003.003 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:19:59,039.039 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:19:59,049.049 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:19:59,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:19:59,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:19:59,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:20:01,103.103 INFO    ] ================================================
[2026-10-18 10:20:01,118.118 INFO    ] Launching Daemon at Sun Oct 18 10:20:01 IST 2026
[2026-10-18 10:20:01,129.129 INFO    ] ================================================
[2026-10-18 10:20:01,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:20:01
[2026-10-18 10:20:03,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:20:03,352.352 INFO    ] Initializing speech engine...
[2026-10-18 10:20:03,368.368 INFO    ] 2026-10-18 10:20:03
[2026-10-18 10:20:03,732.732 INFO    ] 2026-10-18 10:20:03
[2026-10-18 10:20:03,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:20:04,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:20:04,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:20:04,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:20:04,216.216 INFO    ] time= 18/10/2026 10:20:04
[2026-10-18 10:20:04,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:20:04,227.227 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:20:04,362.362 INFO    ] No existing commands found in stream
[2026-10-18 10:20:09,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:20:09,384.384 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-18 10:20:13,587.587 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:20:13,590.590 INFO    ] Checking for system updates...
[2026-10-18 10:20:13,626.626 INFO    ] 200
[2026-10-18 10:20:13,628.628 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:20:13,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:20:13,683.683 INFO    ] No update needed
[2026-10-18 10:20:13,685.685 INFO    ] Checking for camera pi updates...
[2026-10-18 10:20:13,719.719 INFO    ] 200
[2026-10-18 10:20:13,722.722 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:20:13,762.762 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:20:23,777.777 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:20:23,812.812 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:20:23,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:20:23,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:20:23,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:20:23,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:20:25,873.873 INFO    ] ================================================
[2026-10-18 10:20:25,889.889 INFO    ] Launching Daemon at Sun Oct 18 10:20:25 IST 2026
[2026-10-18 10:20:25,900.900 INFO    ] ================================================
[2026-10-18 10:20:26,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:20:26
[2026-10-18 10:20:27,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:20:27,326.326 INFO    ] Initializing speech engine...
[2026-10-18 10:20:27,335.335 INFO    ] 2026-10-18 10:20:27
[2026-10-18 10:20:27,586.586 INFO    ] 2026-10-18 10:20:27
[2026-10-18 10:20:27,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:20:27,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:20:27,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:20:28,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:20:28,135.135 INFO    ] time= 18/10/2026 10:20:28
[2026-10-18 10:20:28,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:20:28,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:20:28,288.288 INFO    ] No existing commands found in stream
[2026-10-18 10:20:33,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:20:33,310.310 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-18 10:20:36,747.747 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:20:36,750.750 INFO    ] Checking for system updates...
[2026-10-18 10:20:36,788.788 INFO    ] 200
[2026-10-18 10:20:36,790.790 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:20:36,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:20:36,848.848 INFO    ] No update needed
[2026-10-18 10:20:36,850.850 INFO    ] Checking for camera pi updates...
[2026-10-18 10:20:36,883.883 INFO    ] 200
[2026-10-18 10:20:36,886.886 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:20:36,927.927 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:20:46,942.942 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:20:46,976.976 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:20:46,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:20:46,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:20:46,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:20:46,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:20:49,039.039 INFO    ] ================================================
[2026-10-18 10:20:49,054.054 INFO    ] Launching Daemon at Sun Oct 18 10:20:49 IST 2026
[2026-10-18 10:20:49,065.065 INFO    ] ================================================
[2026-10-18 10:20:49,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:20:49
[2026-10-18 10:20:50,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:20:50,655.655 INFO    ] Initializing speech engine...
[2026-10-18 10:20:50,662.662 INFO    ] 2026-10-18 10:20:50
[2026-10-18 10:20:50,935.935 INFO    ] 2026-10-18 10:20:50
[2026-10-18 10:20:50,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:20:51,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:20:51,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:20:51,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:20:51,492.492 INFO    ] time= 18/10/2026 10:20:51
[2026-10-18 10:20:51,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:20:51,520.520 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:20:51,651.651 INFO    ] No existing commands found in stream
[2026-10-18 10:20:56,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:20:56,669.669 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-18 10:21:00,199.199 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:21:00,202.202 INFO    ] Checking for system updates...
[2026-10-18 10:21:00,238.238 INFO    ] 200
[2026-10-18 10:21:00,241.241 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:21:00,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:21:00,297.297 INFO    ] No update needed
[2026-10-18 10:21:00,299.299 INFO    ] Checking for camera pi updates...
[2026-10-18 10:21:00,332.332 INFO    ] 200
[2026-10-18 10:21:00,335.335 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:21:00,375.375 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:21:10,390.390 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:21:10,425.425 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:21:10,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:21:10,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:21:10,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:21:10,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:21:12,496.496 INFO    ] ================================================
[2026-10-18 10:21:12,511.511 INFO    ] Launching Daemon at Sun Oct 18 10:21:12 IST 2026
[2026-10-18 10:21:12,522.522 INFO    ] ================================================
[2026-10-18 10:21:13,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:21:13
[2026-10-18 10:21:13,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:21:13,939.939 INFO    ] Initializing speech engine...
[2026-10-18 10:21:13,949.949 INFO    ] 2026-10-18 10:21:13
[2026-10-18 10:21:14,193.193 INFO    ] 2026-10-18 10:21:14
[2026-10-18 10:21:14,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:21:14,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:21:14,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:21:14,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:21:14,687.687 INFO    ] time= 18/10/2026 10:21:14
[2026-10-18 10:21:14,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:21:14,755.755 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:21:14,900.900 INFO    ] No existing commands found in stream
[2026-10-18 10:21:19,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:21:19,915.915 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-18 10:21:22,529.529 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 10:21:22,532.532 INFO    ] Checking for system updates...
[2026-10-18 10:21:22,569.569 INFO    ] 200
[2026-10-18 10:21:22,571.571 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:21:22,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:21:22,626.626 INFO    ] No update needed
[2026-10-18 10:21:22,628.628 INFO    ] Checking for camera pi updates...
[2026-10-18 10:21:22,662.662 INFO    ] 200
[2026-10-18 10:21:22,664.664 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:21:22,704.704 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:21:32,716.716 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:21:32,751.751 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:21:32,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:21:32,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:21:32,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:21:32,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:21:34,812.812 INFO    ] ================================================
[2026-10-18 10:21:34,828.828 INFO    ] Launching Daemon at Sun Oct 18 10:21:34 IST 2026
[2026-10-18 10:21:34,839.839 INFO    ] ================================================
[2026-10-18 10:21:35,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:21:35
[2026-10-18 10:21:35,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:21:36,266.266 INFO    ] Initializing speech engine...
[2026-10-18 10:21:36,272.272 INFO    ] 2026-10-18 10:21:36
[2026-10-18 10:21:36,521.521 INFO    ] 2026-10-18 10:21:36
[2026-10-18 10:21:36,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:21:36,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:21:36,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:21:36,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:21:37,017.017 INFO    ] time= 18/10/2026 10:21:36
[2026-10-18 10:21:37,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:21:37,098.098 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:21:37,249.249 INFO    ] No existing commands found in stream
[2026-10-18 10:21:42,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:21:42,270.270 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-18 10:21:43,101.101 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 10:21:43,104.104 INFO    ] Checking for system updates...
[2026-10-18 10:21:43,143.143 INFO    ] 200
[2026-10-18 10:21:43,146.146 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:21:43,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:21:43,203.203 INFO    ] No update needed
[2026-10-18 10:21:43,206.206 INFO    ] Checking for camera pi updates...
[2026-10-18 10:21:43,243.243 INFO    ] 200
[2026-10-18 10:21:43,245.245 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:21:43,291.291 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:21:53,304.304 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:21:53,343.343 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:21:53,354.354 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:21:53,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:21:53,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:21:53,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:21:55,408.408 INFO    ] ================================================
[2026-10-18 10:21:55,423.423 INFO    ] Launching Daemon at Sun Oct 18 10:21:55 IST 2026
[2026-10-18 10:21:55,434.434 INFO    ] ================================================
[2026-10-18 10:21:56,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:21:56
[2026-10-18 10:21:56,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:21:56,898.898 INFO    ] Initializing speech engine...
[2026-10-18 10:21:56,906.906 INFO    ] 2026-10-18 10:21:56
[2026-10-18 10:21:57,167.167 INFO    ] 2026-10-18 10:21:57
[2026-10-18 10:21:57,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:21:57,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:21:57,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:21:57,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:21:57,711.711 INFO    ] time= 18/10/2026 10:21:57
[2026-10-18 10:21:57,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:21:57,735.735 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:21:57,865.865 INFO    ] No existing commands found in stream
[2026-10-18 10:22:02,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:22:02,881.881 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-18 10:22:07,116.116 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:22:07,119.119 INFO    ] Checking for system updates...
[2026-10-18 10:22:07,158.158 INFO    ] 200
[2026-10-18 10:22:07,160.160 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:22:07,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:22:07,214.214 INFO    ] No update needed
[2026-10-18 10:22:07,217.217 INFO    ] Checking for camera pi updates...
[2026-10-18 10:22:07,250.250 INFO    ] 200
[2026-10-18 10:22:07,253.253 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:22:07,293.293 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:22:17,309.309 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:22:17,345.345 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:22:17,355.355 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:22:17,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:22:17,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:22:17,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:22:19,407.407 INFO    ] ================================================
[2026-10-18 10:22:19,423.423 INFO    ] Launching Daemon at Sun Oct 18 10:22:19 IST 2026
[2026-10-18 10:22:19,434.434 INFO    ] ================================================
[2026-10-18 10:22:20,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:22:20
[2026-10-18 10:22:20,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:22:20,967.967 INFO    ] Initializing speech engine...
[2026-10-18 10:22:20,976.976 INFO    ] 2026-10-18 10:22:20
[2026-10-18 10:22:21,237.237 INFO    ] 2026-10-18 10:22:21
[2026-10-18 10:22:21,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:22:21,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:22:21,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:22:21,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:22:21,694.694 INFO    ] time= 18/10/2026 10:22:21
[2026-10-18 10:22:21,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:22:21,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:22:21,934.934 INFO    ] No existing commands found in stream
[2026-10-18 10:22:26,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:22:26,952.952 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-18 10:22:30,037.037 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 10:22:30,040.040 INFO    ] Checking for system updates...
[2026-10-18 10:22:30,078.078 INFO    ] 200
[2026-10-18 10:22:30,081.081 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:22:30,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:22:30,166.166 INFO    ] No update needed
[2026-10-18 10:22:30,168.168 INFO    ] Checking for camera pi updates...
[2026-10-18 10:22:30,206.206 INFO    ] 200
[2026-10-18 10:22:30,209.209 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:22:30,270.270 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:22:40,286.286 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:22:40,322.322 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:22:40,332.332 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:22:40,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:22:40,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:22:40,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:22:42,385.385 INFO    ] ================================================
[2026-10-18 10:22:42,401.401 INFO    ] Launching Daemon at Sun Oct 18 10:22:42 IST 2026
[2026-10-18 10:22:42,411.411 INFO    ] ================================================
[2026-10-18 10:22:42,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:22:42
[2026-10-18 10:22:43,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:22:43,876.876 INFO    ] Initializing speech engine...
[2026-10-18 10:22:43,884.884 INFO    ] 2026-10-18 10:22:43
[2026-10-18 10:22:44,150.150 INFO    ] 2026-10-18 10:22:44
[2026-10-18 10:22:44,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:22:44,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:22:44,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:22:44,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:22:44,678.678 INFO    ] time= 18/10/2026 10:22:44
[2026-10-18 10:22:44,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:22:44,779.779 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:22:44,917.917 INFO    ] No existing commands found in stream
[2026-10-18 10:22:49,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:22:49,950.950 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-18 10:22:51,680.680 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 10:22:51,683.683 INFO    ] Checking for system updates...
[2026-10-18 10:22:51,718.718 INFO    ] 200
[2026-10-18 10:22:51,720.720 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:22:51,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:22:51,774.774 INFO    ] No update needed
[2026-10-18 10:22:51,777.777 INFO    ] Checking for camera pi updates...
[2026-10-18 10:22:51,810.810 INFO    ] 200
[2026-10-18 10:22:51,812.812 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:22:51,857.857 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:23:01,874.874 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:23:01,917.917 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:23:01,930.930 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:23:01,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:23:01,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:23:01,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:23:03,989.989 INFO    ] ================================================
[2026-10-18 10:23:04,005.005 INFO    ] Launching Daemon at Sun Oct 18 10:23:03 IST 2026
[2026-10-18 10:23:04,017.017 INFO    ] ================================================
[2026-10-18 10:23:04,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:23:04
[2026-10-18 10:23:05,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:23:05,453.453 INFO    ] Initializing speech engine...
[2026-10-18 10:23:05,458.458 INFO    ] 2026-10-18 10:23:05
[2026-10-18 10:23:05,707.707 INFO    ] 2026-10-18 10:23:05
[2026-10-18 10:23:05,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:23:05,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:23:06,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:23:06,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:23:06,263.263 INFO    ] time= 18/10/2026 10:23:06
[2026-10-18 10:23:06,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:23:06,287.287 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:23:06,421.421 INFO    ] No existing commands found in stream
[2026-10-18 10:23:11,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:23:11,446.446 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-18 10:23:13,272.272 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:23:13,275.275 INFO    ] Checking for system updates...
[2026-10-18 10:23:13,328.328 INFO    ] 200
[2026-10-18 10:23:13,330.330 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 10:23:13,333.333 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-18 10:23:13,336.336 INFO    ] Checking for camera pi updates...
[2026-10-18 10:23:13,393.393 INFO    ] 200
[2026-10-18 10:23:13,396.396 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 10:23:13,399.399 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-18 10:23:13,401.401 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:23:13,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:23:13,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:23:13,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:23:15,464.464 INFO    ] ================================================
[2026-10-18 10:23:15,480.480 INFO    ] Launching Daemon at Sun Oct 18 10:23:15 IST 2026
[2026-10-18 10:23:15,491.491 INFO    ] ================================================
[2026-10-18 10:23:16,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:23:16
[2026-10-18 10:23:16,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:23:16,905.905 INFO    ] Initializing speech engine...
[2026-10-18 10:23:16,919.919 INFO    ] 2026-10-18 10:23:16
[2026-10-18 10:23:17,204.204 INFO    ] 2026-10-18 10:23:17
[2026-10-18 10:23:17,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:23:17,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:23:17,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:23:17,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:23:17,629.629 INFO    ] time= 18/10/2026 10:23:17
[2026-10-18 10:23:17,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:23:17,641.641 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:23:17,764.764 INFO    ] No existing commands found in stream
[2026-10-18 10:23:22,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:23:22,792.792 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-18 10:23:24,180.180 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 10:23:24,182.182 INFO    ] Checking for system updates...
[2026-10-18 10:23:24,218.218 INFO    ] 200
[2026-10-18 10:23:24,221.221 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:23:24,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:23:24,276.276 INFO    ] No update needed
[2026-10-18 10:23:24,279.279 INFO    ] Checking for camera pi updates...
[2026-10-18 10:23:24,313.313 INFO    ] 200
[2026-10-18 10:23:24,316.316 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:23:24,361.361 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:23:34,376.376 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:23:34,411.411 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:23:34,420.420 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:23:34,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:23:34,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:23:34,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:23:36,472.472 INFO    ] ================================================
[2026-10-18 10:23:36,488.488 INFO    ] Launching Daemon at Sun Oct 18 10:23:36 IST 2026
[2026-10-18 10:23:36,499.499 INFO    ] ================================================
[2026-10-18 10:23:37,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:23:37
[2026-10-18 10:23:37,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:23:37,930.930 INFO    ] Initializing speech engine...
[2026-10-18 10:23:37,945.945 INFO    ] 2026-10-18 10:23:37
[2026-10-18 10:23:38,231.231 INFO    ] 2026-10-18 10:23:38
[2026-10-18 10:23:38,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:23:38,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:23:38,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:23:38,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:23:38,637.637 INFO    ] time= 18/10/2026 10:23:38
[2026-10-18 10:23:38,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:23:38,706.706 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:23:38,829.829 INFO    ] No existing commands found in stream
[2026-10-18 10:23:43,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:23:43,844.844 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-18 10:23:45,382.382 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:23:45,385.385 INFO    ] Checking for system updates...
[2026-10-18 10:23:45,438.438 INFO    ] 200
[2026-10-18 10:23:45,441.441 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:23:45,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:23:45,500.500 INFO    ] No update needed
[2026-10-18 10:23:45,503.503 INFO    ] Checking for camera pi updates...
[2026-10-18 10:23:45,550.550 INFO    ] 200
[2026-10-18 10:23:45,552.552 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:23:45,606.606 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:23:55,621.621 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:23:55,655.655 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:23:55,665.665 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:23:55,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:23:55,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:23:55,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:23:57,717.717 INFO    ] ================================================
[2026-10-18 10:23:57,732.732 INFO    ] Launching Daemon at Sun Oct 18 10:23:57 IST 2026
[2026-10-18 10:23:57,745.745 INFO    ] ================================================
[2026-10-18 10:23:58,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:23:58
[2026-10-18 10:23:58,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:23:59,198.198 INFO    ] Initializing speech engine...
[2026-10-18 10:23:59,205.205 INFO    ] 2026-10-18 10:23:59
[2026-10-18 10:23:59,496.496 INFO    ] 2026-10-18 10:23:59
[2026-10-18 10:23:59,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:23:59,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:23:59,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:24:00,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:24:00,023.023 INFO    ] time= 18/10/2026 10:24:00
[2026-10-18 10:24:00,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:24:00,069.069 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:24:00,176.176 INFO    ] No existing commands found in stream
[2026-10-18 10:24:05,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:24:05,208.208 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-18 10:24:07,059.059 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:24:07,061.061 INFO    ] Checking for system updates...
[2026-10-18 10:24:07,098.098 INFO    ] 200
[2026-10-18 10:24:07,100.100 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:24:07,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:24:07,163.163 INFO    ] No update needed
[2026-10-18 10:24:07,165.165 INFO    ] Checking for camera pi updates...
[2026-10-18 10:24:07,199.199 INFO    ] 200
[2026-10-18 10:24:07,201.201 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:24:07,242.242 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:24:17,258.258 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:24:17,293.293 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:24:17,303.303 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:24:17,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:24:17,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:24:17,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:24:19,356.356 INFO    ] ================================================
[2026-10-18 10:24:19,371.371 INFO    ] Launching Daemon at Sun Oct 18 10:24:19 IST 2026
[2026-10-18 10:24:19,382.382 INFO    ] ================================================
[2026-10-18 10:24:19,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:24:19
[2026-10-18 10:24:20,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:24:20,851.851 INFO    ] Initializing speech engine...
[2026-10-18 10:24:20,863.863 INFO    ] 2026-10-18 10:24:20
[2026-10-18 10:24:21,159.159 INFO    ] 2026-10-18 10:24:21
[2026-10-18 10:24:21,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:24:21,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:24:21,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:24:21,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:24:21,668.668 INFO    ] time= 18/10/2026 10:24:21
[2026-10-18 10:24:21,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:24:21,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:24:21,812.812 INFO    ] No existing commands found in stream
[2026-10-18 10:24:26,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:24:26,839.839 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-18 10:24:27,833.833 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 10:24:27,836.836 INFO    ] Checking for system updates...
[2026-10-18 10:24:27,872.872 INFO    ] 200
[2026-10-18 10:24:27,875.875 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:24:27,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:24:27,932.932 INFO    ] No update needed
[2026-10-18 10:24:27,935.935 INFO    ] Checking for camera pi updates...
[2026-10-18 10:24:27,970.970 INFO    ] 200
[2026-10-18 10:24:27,973.973 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:24:28,018.018 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:24:38,034.034 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:24:38,069.069 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:24:38,079.079 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:24:38,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:24:38,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:24:38,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:24:40,133.133 INFO    ] ================================================
[2026-10-18 10:24:40,149.149 INFO    ] Launching Daemon at Sun Oct 18 10:24:40 IST 2026
[2026-10-18 10:24:40,160.160 INFO    ] ================================================
[2026-10-18 10:24:40,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:24:40
[2026-10-18 10:24:41,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:24:41,604.604 INFO    ] Initializing speech engine...
[2026-10-18 10:24:41,614.614 INFO    ] 2026-10-18 10:24:41
[2026-10-18 10:24:41,874.874 INFO    ] 2026-10-18 10:24:41
[2026-10-18 10:24:41,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:24:42,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:24:42,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:24:42,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:24:42,418.418 INFO    ] time= 18/10/2026 10:24:42
[2026-10-18 10:24:42,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:24:42,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:24:42,578.578 INFO    ] No existing commands found in stream
[2026-10-18 10:24:47,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:24:47,611.611 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-18 10:24:48,198.198 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:24:48,201.201 INFO    ] Checking for system updates...
[2026-10-18 10:24:48,237.237 INFO    ] 200
[2026-10-18 10:24:48,240.240 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:24:48,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:24:48,300.300 INFO    ] No update needed
[2026-10-18 10:24:48,302.302 INFO    ] Checking for camera pi updates...
[2026-10-18 10:24:48,336.336 INFO    ] 200
[2026-10-18 10:24:48,338.338 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:24:48,378.378 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:24:58,394.394 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:24:58,430.430 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:24:58,439.439 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:24:58,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:24:58,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:24:58,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:25:00,492.492 INFO    ] ================================================
[2026-10-18 10:25:00,508.508 INFO    ] Launching Daemon at Sun Oct 18 10:25:00 IST 2026
[2026-10-18 10:25:00,520.520 INFO    ] ================================================
[2026-10-18 10:25:01,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:25:01
[2026-10-18 10:25:02,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:25:02,359.359 INFO    ] Initializing speech engine...
[2026-10-18 10:25:02,379.379 INFO    ] 2026-10-18 10:25:02
[2026-10-18 10:25:02,667.667 INFO    ] 2026-10-18 10:25:02
[2026-10-18 10:25:02,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:25:03,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:25:03,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:25:03,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:25:03,278.278 INFO    ] time= 18/10/2026 10:25:03
[2026-10-18 10:25:03,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:25:03,307.307 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:25:03,460.460 INFO    ] No existing commands found in stream
[2026-10-18 10:25:08,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:25:08,489.489 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-18 10:25:09,154.154 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:25:09,157.157 INFO    ] Checking for system updates...
[2026-10-18 10:25:09,194.194 INFO    ] 200
[2026-10-18 10:25:09,197.197 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:25:09,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:25:09,261.261 INFO    ] No update needed
[2026-10-18 10:25:09,263.263 INFO    ] Checking for camera pi updates...
[2026-10-18 10:25:09,302.302 INFO    ] 200
[2026-10-18 10:25:09,305.305 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:25:09,356.356 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:25:19,373.373 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:25:19,413.413 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:25:19,424.424 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:25:19,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:25:19,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:25:19,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:25:21,479.479 INFO    ] ================================================
[2026-10-18 10:25:21,494.494 INFO    ] Launching Daemon at Sun Oct 18 10:25:21 IST 2026
[2026-10-18 10:25:21,505.505 INFO    ] ================================================
[2026-10-18 10:25:22,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:25:22
[2026-10-18 10:25:22,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:25:23,143.143 INFO    ] Initializing speech engine...
[2026-10-18 10:25:23,152.152 INFO    ] 2026-10-18 10:25:23
[2026-10-18 10:25:23,428.428 INFO    ] 2026-10-18 10:25:23
[2026-10-18 10:25:23,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:25:23,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:25:23,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:25:23,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:25:23,990.990 INFO    ] time= 18/10/2026 10:25:23
[2026-10-18 10:25:23,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:25:24,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:25:24,148.148 INFO    ] No existing commands found in stream
[2026-10-18 10:25:29,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:25:29,177.177 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-18 10:25:29,955.955 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 10:25:29,958.958 INFO    ] Checking for system updates...
[2026-10-18 10:25:29,996.996 INFO    ] 200
[2026-10-18 10:25:29,999.999 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:25:30,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:25:30,056.056 INFO    ] No update needed
[2026-10-18 10:25:30,059.059 INFO    ] Checking for camera pi updates...
[2026-10-18 10:25:30,094.094 INFO    ] 200
[2026-10-18 10:25:30,098.098 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:25:30,145.145 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:25:40,161.161 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:25:40,201.201 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:25:40,213.213 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:25:40,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:25:40,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:25:40,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:25:42,268.268 INFO    ] ================================================
[2026-10-18 10:25:42,284.284 INFO    ] Launching Daemon at Sun Oct 18 10:25:42 IST 2026
[2026-10-18 10:25:42,295.295 INFO    ] ================================================
[2026-10-18 10:25:42,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:25:42
[2026-10-18 10:25:43,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:25:43,696.696 INFO    ] Initializing speech engine...
[2026-10-18 10:25:43,720.720 INFO    ] 2026-10-18 10:25:43
[2026-10-18 10:25:43,976.976 INFO    ] 2026-10-18 10:25:43
[2026-10-18 10:25:44,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:25:44,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:25:44,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:25:44,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:25:44,544.544 INFO    ] time= 18/10/2026 10:25:44
[2026-10-18 10:25:44,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:25:44,567.567 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:25:44,690.690 INFO    ] No existing commands found in stream
[2026-10-18 10:25:49,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:25:49,713.713 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-18 10:25:50,538.538 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:25:50,541.541 INFO    ] Checking for system updates...
[2026-10-18 10:25:50,576.576 INFO    ] 200
[2026-10-18 10:25:50,579.579 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:25:50,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:25:50,640.640 INFO    ] No update needed
[2026-10-18 10:25:50,642.642 INFO    ] Checking for camera pi updates...
[2026-10-18 10:25:50,676.676 INFO    ] 200
[2026-10-18 10:25:50,679.679 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:25:50,718.718 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:26:00,733.733 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:26:00,768.768 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:26:00,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:26:00,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:26:00,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:26:00,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:26:02,845.845 INFO    ] ================================================
[2026-10-18 10:26:02,867.867 INFO    ] Launching Daemon at Sun Oct 18 10:26:02 IST 2026
[2026-10-18 10:26:02,884.884 INFO    ] ================================================
[2026-10-18 10:26:03,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:26:03
[2026-10-18 10:26:04,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:26:04,439.439 INFO    ] Initializing speech engine...
[2026-10-18 10:26:04,453.453 INFO    ] 2026-10-18 10:26:04
[2026-10-18 10:26:04,743.743 INFO    ] 2026-10-18 10:26:04
[2026-10-18 10:26:04,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:26:04,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:26:04,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:26:05,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:26:05,170.170 INFO    ] time= 18/10/2026 10:26:05
[2026-10-18 10:26:05,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:26:05,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:26:05,347.347 INFO    ] No existing commands found in stream
[2026-10-18 10:26:10,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:26:10,370.370 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-18 10:26:14,830.830 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:26:14,833.833 INFO    ] Checking for system updates...
[2026-10-18 10:26:14,869.869 INFO    ] 200
[2026-10-18 10:26:14,871.871 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:26:14,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:26:14,927.927 INFO    ] No update needed
[2026-10-18 10:26:14,929.929 INFO    ] Checking for camera pi updates...
[2026-10-18 10:26:14,963.963 INFO    ] 200
[2026-10-18 10:26:14,965.965 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:26:15,006.006 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:26:25,022.022 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:26:25,058.058 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:26:25,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:26:25,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:26:25,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:26:25,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:26:27,120.120 INFO    ] ================================================
[2026-10-18 10:26:27,136.136 INFO    ] Launching Daemon at Sun Oct 18 10:26:27 IST 2026
[2026-10-18 10:26:27,147.147 INFO    ] ================================================
[2026-10-18 10:26:27,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:26:27
[2026-10-18 10:26:28,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:26:28,811.811 INFO    ] Initializing speech engine...
[2026-10-18 10:26:28,818.818 INFO    ] 2026-10-18 10:26:28
[2026-10-18 10:26:29,107.107 INFO    ] 2026-10-18 10:26:29
[2026-10-18 10:26:29,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:26:29,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:26:29,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:26:29,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:26:29,704.704 INFO    ] time= 18/10/2026 10:26:29
[2026-10-18 10:26:29,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:26:29,802.802 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:26:29,985.985 INFO    ] No existing commands found in stream
[2026-10-18 10:26:35,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:26:35,020.020 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-18 10:26:35,824.824 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:26:35,827.827 INFO    ] Checking for system updates...
[2026-10-18 10:26:35,865.865 INFO    ] 200
[2026-10-18 10:26:35,868.868 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:26:35,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:26:35,925.925 INFO    ] No update needed
[2026-10-18 10:26:35,928.928 INFO    ] Checking for camera pi updates...
[2026-10-18 10:26:35,963.963 INFO    ] 200
[2026-10-18 10:26:35,966.966 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:26:36,007.007 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:26:46,022.022 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:26:46,062.062 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:26:46,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:26:46,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:26:46,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:26:46,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:26:48,129.129 INFO    ] ================================================
[2026-10-18 10:26:48,144.144 INFO    ] Launching Daemon at Sun Oct 18 10:26:48 IST 2026
[2026-10-18 10:26:48,156.156 INFO    ] ================================================
[2026-10-18 10:26:48,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:26:48
[2026-10-18 10:26:49,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:26:49,576.576 INFO    ] Initializing speech engine...
[2026-10-18 10:26:49,595.595 INFO    ] 2026-10-18 10:26:49
[2026-10-18 10:26:49,841.841 INFO    ] 2026-10-18 10:26:49
[2026-10-18 10:26:49,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:26:50,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:26:50,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:26:50,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:26:50,335.335 INFO    ] time= 18/10/2026 10:26:50
[2026-10-18 10:26:50,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:26:50,405.405 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:26:50,529.529 INFO    ] No existing commands found in stream
[2026-10-18 10:26:55,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:26:55,557.557 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-18 10:26:57,936.936 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 10:26:57,939.939 INFO    ] Checking for system updates...
[2026-10-18 10:26:57,976.976 INFO    ] 200
[2026-10-18 10:26:57,979.979 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:26:58,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:26:58,042.042 INFO    ] No update needed
[2026-10-18 10:26:58,045.045 INFO    ] Checking for camera pi updates...
[2026-10-18 10:26:58,080.080 INFO    ] 200
[2026-10-18 10:26:58,083.083 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:26:58,125.125 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:27:08,141.141 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:27:08,182.182 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:27:08,194.194 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:27:08,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:27:08,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:27:08,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:27:10,252.252 INFO    ] ================================================
[2026-10-18 10:27:10,268.268 INFO    ] Launching Daemon at Sun Oct 18 10:27:10 IST 2026
[2026-10-18 10:27:10,279.279 INFO    ] ================================================
[2026-10-18 10:27:10,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:27:10
[2026-10-18 10:27:11,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:27:11,712.712 INFO    ] Initializing speech engine...
[2026-10-18 10:27:11,718.718 INFO    ] 2026-10-18 10:27:11
[2026-10-18 10:27:11,978.978 INFO    ] 2026-10-18 10:27:11
[2026-10-18 10:27:12,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:27:12,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:27:12,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:27:12,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:27:12,449.449 INFO    ] time= 18/10/2026 10:27:12
[2026-10-18 10:27:12,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:27:12,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:27:12,680.680 INFO    ] No existing commands found in stream
[2026-10-18 10:27:17,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:27:17,708.708 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-18 10:27:18,727.727 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:27:18,729.729 INFO    ] Checking for system updates...
[2026-10-18 10:27:18,765.765 INFO    ] 200
[2026-10-18 10:27:18,768.768 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:27:18,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:27:18,826.826 INFO    ] No update needed
[2026-10-18 10:27:18,829.829 INFO    ] Checking for camera pi updates...
[2026-10-18 10:27:18,862.862 INFO    ] 200
[2026-10-18 10:27:18,865.865 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:27:18,906.906 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:27:28,921.921 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:27:28,956.956 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:27:28,966.966 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:27:28,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:27:28,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:27:28,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:27:31,019.019 INFO    ] ================================================
[2026-10-18 10:27:31,034.034 INFO    ] Launching Daemon at Sun Oct 18 10:27:31 IST 2026
[2026-10-18 10:27:31,045.045 INFO    ] ================================================
[2026-10-18 10:27:31,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:27:31
[2026-10-18 10:27:32,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:27:32,544.544 INFO    ] Initializing speech engine...
[2026-10-18 10:27:32,567.567 INFO    ] 2026-10-18 10:27:32
[2026-10-18 10:27:32,840.840 INFO    ] 2026-10-18 10:27:32
[2026-10-18 10:27:32,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:27:33,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:27:33,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:27:33,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:27:33,377.377 INFO    ] time= 18/10/2026 10:27:33
[2026-10-18 10:27:33,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:27:33,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:27:33,568.568 INFO    ] No existing commands found in stream
[2026-10-18 10:27:38,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:27:38,598.598 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-18 10:27:42,650.650 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:27:42,653.653 INFO    ] Checking for system updates...
[2026-10-18 10:27:42,694.694 INFO    ] 200
[2026-10-18 10:27:42,696.696 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:27:42,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:27:42,758.758 INFO    ] No update needed
[2026-10-18 10:27:42,760.760 INFO    ] Checking for camera pi updates...
[2026-10-18 10:27:42,795.795 INFO    ] 200
[2026-10-18 10:27:42,797.797 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:27:42,838.838 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:27:52,853.853 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:27:52,888.888 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:27:52,897.897 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:27:52,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:27:52,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:27:52,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:27:54,950.950 INFO    ] ================================================
[2026-10-18 10:27:54,966.966 INFO    ] Launching Daemon at Sun Oct 18 10:27:54 IST 2026
[2026-10-18 10:27:54,977.977 INFO    ] ================================================
[2026-10-18 10:27:55,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:27:55
[2026-10-18 10:27:56,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:27:56,638.638 INFO    ] Initializing speech engine...
[2026-10-18 10:27:56,651.651 INFO    ] 2026-10-18 10:27:56
[2026-10-18 10:27:56,923.923 INFO    ] 2026-10-18 10:27:56
[2026-10-18 10:27:56,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:27:57,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:27:57,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:27:57,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:27:57,493.493 INFO    ] time= 18/10/2026 10:27:57
[2026-10-18 10:27:57,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:27:57,545.545 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:27:57,679.679 INFO    ] No existing commands found in stream
[2026-10-18 10:28:02,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:28:02,717.717 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-18 10:28:07,166.166 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:28:07,169.169 INFO    ] Checking for system updates...
[2026-10-18 10:28:07,204.204 INFO    ] 200
[2026-10-18 10:28:07,207.207 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:28:07,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:28:07,262.262 INFO    ] No update needed
[2026-10-18 10:28:07,264.264 INFO    ] Checking for camera pi updates...
[2026-10-18 10:28:07,298.298 INFO    ] 200
[2026-10-18 10:28:07,301.301 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:28:07,341.341 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:28:17,357.357 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:28:17,393.393 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:28:17,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:28:17,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:28:17,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:28:17,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:28:19,456.456 INFO    ] ================================================
[2026-10-18 10:28:19,472.472 INFO    ] Launching Daemon at Sun Oct 18 10:28:19 IST 2026
[2026-10-18 10:28:19,483.483 INFO    ] ================================================
[2026-10-18 10:28:20,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:28:20
[2026-10-18 10:28:20,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:28:20,908.908 INFO    ] Initializing speech engine...
[2026-10-18 10:28:20,916.916 INFO    ] 2026-10-18 10:28:20
[2026-10-18 10:28:21,170.170 INFO    ] 2026-10-18 10:28:21
[2026-10-18 10:28:21,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:28:21,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:28:21,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:28:21,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:28:21,640.640 INFO    ] time= 18/10/2026 10:28:21
[2026-10-18 10:28:21,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:28:21,745.745 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:28:21,889.889 INFO    ] No existing commands found in stream
[2026-10-18 10:28:26,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:28:26,908.908 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-18 10:28:28,368.368 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:28:28,371.371 INFO    ] Checking for system updates...
[2026-10-18 10:28:28,413.413 INFO    ] 200
[2026-10-18 10:28:28,416.416 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:28:28,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:28:28,478.478 INFO    ] No update needed
[2026-10-18 10:28:28,481.481 INFO    ] Checking for camera pi updates...
[2026-10-18 10:28:28,518.518 INFO    ] 200
[2026-10-18 10:28:28,521.521 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:28:28,567.567 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:28:38,583.583 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:28:38,622.622 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:28:38,633.633 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:28:38,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:28:38,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:28:38,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:28:40,687.687 INFO    ] ================================================
[2026-10-18 10:28:40,704.704 INFO    ] Launching Daemon at Sun Oct 18 10:28:40 IST 2026
[2026-10-18 10:28:40,715.715 INFO    ] ================================================
[2026-10-18 10:28:41,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:28:41
[2026-10-18 10:28:41,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:28:42,152.152 INFO    ] Initializing speech engine...
[2026-10-18 10:28:42,159.159 INFO    ] 2026-10-18 10:28:42
[2026-10-18 10:28:42,422.422 INFO    ] 2026-10-18 10:28:42
[2026-10-18 10:28:42,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:28:42,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:28:42,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:28:42,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:28:42,956.956 INFO    ] time= 18/10/2026 10:28:42
[2026-10-18 10:28:42,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:28:42,997.997 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:28:43,134.134 INFO    ] No existing commands found in stream
[2026-10-18 10:28:48,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:28:48,152.152 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-18 10:28:50,992.992 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:28:50,995.995 INFO    ] Checking for system updates...
[2026-10-18 10:28:51,030.030 INFO    ] 200
[2026-10-18 10:28:51,032.032 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:28:51,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:28:51,091.091 INFO    ] No update needed
[2026-10-18 10:28:51,094.094 INFO    ] Checking for camera pi updates...
[2026-10-18 10:28:51,130.130 INFO    ] 200
[2026-10-18 10:28:51,133.133 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:28:51,176.176 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:29:01,191.191 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:29:01,226.226 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:29:01,235.235 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:29:01,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:29:01,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:29:01,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:29:03,292.292 INFO    ] ================================================
[2026-10-18 10:29:03,307.307 INFO    ] Launching Daemon at Sun Oct 18 10:29:03 IST 2026
[2026-10-18 10:29:03,319.319 INFO    ] ================================================
[2026-10-18 10:29:03,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:29:03
[2026-10-18 10:29:04,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:29:04,914.914 INFO    ] Initializing speech engine...
[2026-10-18 10:29:04,920.920 INFO    ] 2026-10-18 10:29:04
[2026-10-18 10:29:05,192.192 INFO    ] 2026-10-18 10:29:05
[2026-10-18 10:29:05,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:29:05,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:29:05,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:29:05,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:29:05,745.745 INFO    ] time= 18/10/2026 10:29:05
[2026-10-18 10:29:05,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:29:05,773.773 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:29:05,904.904 INFO    ] No existing commands found in stream
[2026-10-18 10:29:10,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:29:10,936.936 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-18 10:29:15,242.242 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:29:15,245.245 INFO    ] Checking for system updates...
[2026-10-18 10:29:15,281.281 INFO    ] 200
[2026-10-18 10:29:15,283.283 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:29:15,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:29:15,345.345 INFO    ] No update needed
[2026-10-18 10:29:15,347.347 INFO    ] Checking for camera pi updates...
[2026-10-18 10:29:15,381.381 INFO    ] 200
[2026-10-18 10:29:15,383.383 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:29:15,424.424 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:29:25,439.439 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:29:25,474.474 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:29:25,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:29:25,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:29:25,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:29:25,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:29:27,537.537 INFO    ] ================================================
[2026-10-18 10:29:27,553.553 INFO    ] Launching Daemon at Sun Oct 18 10:29:27 IST 2026
[2026-10-18 10:29:27,564.564 INFO    ] ================================================
[2026-10-18 10:29:28,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:29:28
[2026-10-18 10:29:28,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:29:29,033.033 INFO    ] Initializing speech engine...
[2026-10-18 10:29:29,042.042 INFO    ] 2026-10-18 10:29:29
[2026-10-18 10:29:29,306.306 INFO    ] 2026-10-18 10:29:29
[2026-10-18 10:29:29,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:29:29,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:29:29,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:29:29,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:29:29,851.851 INFO    ] time= 18/10/2026 10:29:29
[2026-10-18 10:29:29,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:29:29,887.887 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:29:30,043.043 INFO    ] No existing commands found in stream
[2026-10-18 10:29:35,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:29:35,076.076 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-18 10:29:37,710.710 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 10:29:37,713.713 INFO    ] Checking for system updates...
[2026-10-18 10:29:37,749.749 INFO    ] 200
[2026-10-18 10:29:37,751.751 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:29:37,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:29:37,805.805 INFO    ] No update needed
[2026-10-18 10:29:37,808.808 INFO    ] Checking for camera pi updates...
[2026-10-18 10:29:37,841.841 INFO    ] 200
[2026-10-18 10:29:37,843.843 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:29:37,884.884 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:29:47,899.899 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:29:47,935.935 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:29:47,944.944 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:29:47,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:29:47,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:29:47,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:29:50,000.000 INFO    ] ================================================
[2026-10-18 10:29:50,016.016 INFO    ] Launching Daemon at Sun Oct 18 10:29:50 IST 2026
[2026-10-18 10:29:50,027.027 INFO    ] ================================================
[2026-10-18 10:29:50,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:29:50
[2026-10-18 10:29:51,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:29:51,453.453 INFO    ] Initializing speech engine...
[2026-10-18 10:29:51,462.462 INFO    ] 2026-10-18 10:29:51
[2026-10-18 10:29:51,708.708 INFO    ] 2026-10-18 10:29:51
[2026-10-18 10:29:51,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:29:52,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:29:52,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:29:52,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:29:52,269.269 INFO    ] time= 18/10/2026 10:29:52
[2026-10-18 10:29:52,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:29:52,294.294 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:29:52,425.425 INFO    ] No existing commands found in stream
[2026-10-18 10:29:57,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:29:57,442.442 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-18 10:30:02,102.102 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:30:02,105.105 INFO    ] Checking for system updates...
[2026-10-18 10:30:02,237.237 INFO    ] 200
[2026-10-18 10:30:02,249.249 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:30:02,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:30:02,443.443 INFO    ] No update needed
[2026-10-18 10:30:02,455.455 INFO    ] Checking for camera pi updates...
[2026-10-18 10:30:02,541.541 INFO    ] 200
[2026-10-18 10:30:02,545.545 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:30:02,613.613 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:30:12,630.630 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:30:12,670.670 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:30:12,681.681 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:30:12,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:30:12,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:30:12,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:30:14,737.737 INFO    ] ================================================
[2026-10-18 10:30:14,753.753 INFO    ] Launching Daemon at Sun Oct 18 10:30:14 IST 2026
[2026-10-18 10:30:14,764.764 INFO    ] ================================================
[2026-10-18 10:30:15,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:30:15
[2026-10-18 10:30:15,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:30:16,203.203 INFO    ] Initializing speech engine...
[2026-10-18 10:30:16,212.212 INFO    ] 2026-10-18 10:30:16
[2026-10-18 10:30:16,469.469 INFO    ] 2026-10-18 10:30:16
[2026-10-18 10:30:16,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:30:16,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:30:16,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:30:16,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:30:17,030.030 INFO    ] time= 18/10/2026 10:30:17
[2026-10-18 10:30:17,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:30:17,056.056 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:30:17,193.193 INFO    ] No existing commands found in stream
[2026-10-18 10:30:22,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:30:22,218.218 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-18 10:30:23,372.372 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 10:30:23,375.375 INFO    ] Checking for system updates...
[2026-10-18 10:30:23,410.410 INFO    ] 200
[2026-10-18 10:30:23,412.412 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:30:23,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:30:23,477.477 INFO    ] No update needed
[2026-10-18 10:30:23,480.480 INFO    ] Checking for camera pi updates...
[2026-10-18 10:30:23,513.513 INFO    ] 200
[2026-10-18 10:30:23,515.515 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:30:23,556.556 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:30:33,570.570 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:30:33,604.604 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:30:33,613.613 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:30:33,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:30:33,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:30:33,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:30:35,666.666 INFO    ] ================================================
[2026-10-18 10:30:35,682.682 INFO    ] Launching Daemon at Sun Oct 18 10:30:35 IST 2026
[2026-10-18 10:30:35,693.693 INFO    ] ================================================
[2026-10-18 10:30:36,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:30:36
[2026-10-18 10:30:36,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:30:37,141.141 INFO    ] Initializing speech engine...
[2026-10-18 10:30:37,150.150 INFO    ] 2026-10-18 10:30:37
[2026-10-18 10:30:37,416.416 INFO    ] 2026-10-18 10:30:37
[2026-10-18 10:30:37,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:30:37,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:30:37,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:30:37,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:30:37,960.960 INFO    ] time= 18/10/2026 10:30:37
[2026-10-18 10:30:37,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:30:37,982.982 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:30:38,116.116 INFO    ] No existing commands found in stream
[2026-10-18 10:30:43,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:30:43,142.142 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-18 10:30:46,350.350 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:30:46,353.353 INFO    ] Checking for system updates...
[2026-10-18 10:30:46,389.389 INFO    ] 200
[2026-10-18 10:30:46,392.392 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:30:46,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:30:46,451.451 INFO    ] No update needed
[2026-10-18 10:30:46,453.453 INFO    ] Checking for camera pi updates...
[2026-10-18 10:30:46,486.486 INFO    ] 200
[2026-10-18 10:30:46,488.488 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:30:46,532.532 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:30:56,547.547 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:30:56,581.581 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:30:56,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:30:56,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:30:56,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:30:56,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:30:58,643.643 INFO    ] ================================================
[2026-10-18 10:30:58,659.659 INFO    ] Launching Daemon at Sun Oct 18 10:30:58 IST 2026
[2026-10-18 10:30:58,671.671 INFO    ] ================================================
[2026-10-18 10:30:59,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:30:59
[2026-10-18 10:30:59,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:31:00,231.231 INFO    ] Initializing speech engine...
[2026-10-18 10:31:00,240.240 INFO    ] 2026-10-18 10:31:00
[2026-10-18 10:31:00,507.507 INFO    ] 2026-10-18 10:31:00
[2026-10-18 10:31:00,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:31:00,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:31:00,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:31:00,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:31:01,003.003 INFO    ] time= 18/10/2026 10:31:00
[2026-10-18 10:31:01,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:31:01,075.075 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:31:01,222.222 INFO    ] No existing commands found in stream
[2026-10-18 10:31:06,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:31:06,241.241 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-18 10:31:06,901.901 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:31:06,903.903 INFO    ] Checking for system updates...
[2026-10-18 10:31:06,941.941 INFO    ] 200
[2026-10-18 10:31:06,944.944 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:31:06,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:31:06,999.999 INFO    ] No update needed
[2026-10-18 10:31:07,001.001 INFO    ] Checking for camera pi updates...
[2026-10-18 10:31:07,034.034 INFO    ] 200
[2026-10-18 10:31:07,037.037 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:31:07,080.080 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:31:17,095.095 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:31:17,129.129 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:31:17,139.139 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:31:17,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:31:17,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:31:17,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:31:19,192.192 INFO    ] ================================================
[2026-10-18 10:31:19,208.208 INFO    ] Launching Daemon at Sun Oct 18 10:31:19 IST 2026
[2026-10-18 10:31:19,219.219 INFO    ] ================================================
[2026-10-18 10:31:19,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:31:19
[2026-10-18 10:31:20,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:31:20,682.682 INFO    ] Initializing speech engine...
[2026-10-18 10:31:20,691.691 INFO    ] 2026-10-18 10:31:20
[2026-10-18 10:31:20,951.951 INFO    ] 2026-10-18 10:31:20
[2026-10-18 10:31:21,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:31:21,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:31:21,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:31:21,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:31:21,493.493 INFO    ] time= 18/10/2026 10:31:21
[2026-10-18 10:31:21,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:31:21,518.518 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:31:21,648.648 INFO    ] No existing commands found in stream
[2026-10-18 10:31:26,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:31:26,666.666 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-18 10:31:27,635.635 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:31:27,638.638 INFO    ] Checking for system updates...
[2026-10-18 10:31:27,676.676 INFO    ] 200
[2026-10-18 10:31:27,679.679 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:31:27,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:31:27,744.744 INFO    ] No update needed
[2026-10-18 10:31:27,746.746 INFO    ] Checking for camera pi updates...
[2026-10-18 10:31:27,786.786 INFO    ] 200
[2026-10-18 10:31:27,789.789 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:31:27,831.831 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:31:37,848.848 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:31:37,890.890 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:31:37,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:31:37,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:31:37,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:31:37,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:31:39,960.960 INFO    ] ================================================
[2026-10-18 10:31:39,976.976 INFO    ] Launching Daemon at Sun Oct 18 10:31:39 IST 2026
[2026-10-18 10:31:39,987.987 INFO    ] ================================================
[2026-10-18 10:31:40,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:31:40
[2026-10-18 10:31:41,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:31:41,426.426 INFO    ] Initializing speech engine...
[2026-10-18 10:31:41,444.444 INFO    ] 2026-10-18 10:31:41
[2026-10-18 10:31:41,698.698 INFO    ] 2026-10-18 10:31:41
[2026-10-18 10:31:41,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:31:41,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:31:41,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:31:42,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:31:42,174.174 INFO    ] time= 18/10/2026 10:31:42
[2026-10-18 10:31:42,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:31:42,263.263 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:31:42,418.418 INFO    ] No existing commands found in stream
[2026-10-18 10:31:47,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:31:47,444.444 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-18 10:31:48,779.779 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:31:48,782.782 INFO    ] Checking for system updates...
[2026-10-18 10:31:48,819.819 INFO    ] 200
[2026-10-18 10:31:48,822.822 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:31:48,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:31:48,880.880 INFO    ] No update needed
[2026-10-18 10:31:48,883.883 INFO    ] Checking for camera pi updates...
[2026-10-18 10:31:48,918.918 INFO    ] 200
[2026-10-18 10:31:48,921.921 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:31:48,968.968 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:31:58,982.982 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:31:59,023.023 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:31:59,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:31:59,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:31:59,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:31:59,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:32:01,090.090 INFO    ] ================================================
[2026-10-18 10:32:01,106.106 INFO    ] Launching Daemon at Sun Oct 18 10:32:01 IST 2026
[2026-10-18 10:32:01,117.117 INFO    ] ================================================
[2026-10-18 10:32:01,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:32:01
[2026-10-18 10:32:02,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:32:02,811.811 INFO    ] Initializing speech engine...
[2026-10-18 10:32:02,823.823 INFO    ] 2026-10-18 10:32:02
[2026-10-18 10:32:03,118.118 INFO    ] 2026-10-18 10:32:03
[2026-10-18 10:32:03,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:32:03,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:32:03,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:32:03,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:32:03,718.718 INFO    ] time= 18/10/2026 10:32:03
[2026-10-18 10:32:03,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:32:03,778.778 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:32:03,888.888 INFO    ] No existing commands found in stream
[2026-10-18 10:32:08,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:32:08,920.920 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-18 10:32:10,405.405 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:32:10,407.407 INFO    ] Checking for system updates...
[2026-10-18 10:32:10,442.442 INFO    ] 200
[2026-10-18 10:32:10,445.445 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:32:10,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:32:10,506.506 INFO    ] No update needed
[2026-10-18 10:32:10,509.509 INFO    ] Checking for camera pi updates...
[2026-10-18 10:32:10,542.542 INFO    ] 200
[2026-10-18 10:32:10,544.544 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:32:10,584.584 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:32:20,599.599 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:32:20,634.634 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:32:20,643.643 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:32:20,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:32:20,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:32:20,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:32:22,697.697 INFO    ] ================================================
[2026-10-18 10:32:22,712.712 INFO    ] Launching Daemon at Sun Oct 18 10:32:22 IST 2026
[2026-10-18 10:32:22,726.726 INFO    ] ================================================
[2026-10-18 10:32:23,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:32:23
[2026-10-18 10:32:23,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:32:24,193.193 INFO    ] Initializing speech engine...
[2026-10-18 10:32:24,216.216 INFO    ] 2026-10-18 10:32:24
[2026-10-18 10:32:24,471.471 INFO    ] 2026-10-18 10:32:24
[2026-10-18 10:32:24,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:32:24,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:32:24,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:32:24,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:32:24,963.963 INFO    ] time= 18/10/2026 10:32:24
[2026-10-18 10:32:25,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:32:25,052.052 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:32:25,195.195 INFO    ] No existing commands found in stream
[2026-10-18 10:32:30,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:32:30,213.213 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-18 10:32:34,492.492 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:32:34,496.496 INFO    ] Checking for system updates...
[2026-10-18 10:32:34,532.532 INFO    ] 200
[2026-10-18 10:32:34,535.535 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:32:34,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:32:34,592.592 INFO    ] No update needed
[2026-10-18 10:32:34,595.595 INFO    ] Checking for camera pi updates...
[2026-10-18 10:32:34,630.630 INFO    ] 200
[2026-10-18 10:32:34,632.632 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:32:34,674.674 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:32:44,691.691 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:32:44,732.732 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:32:44,743.743 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:32:44,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:32:44,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:32:44,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:32:46,800.800 INFO    ] ================================================
[2026-10-18 10:32:46,816.816 INFO    ] Launching Daemon at Sun Oct 18 10:32:46 IST 2026
[2026-10-18 10:32:46,827.827 INFO    ] ================================================
[2026-10-18 10:32:47,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:32:47
[2026-10-18 10:32:48,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:32:48,378.378 INFO    ] Initializing speech engine...
[2026-10-18 10:32:48,385.385 INFO    ] 2026-10-18 10:32:48
[2026-10-18 10:32:48,651.651 INFO    ] 2026-10-18 10:32:48
[2026-10-18 10:32:48,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:32:48,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:32:48,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:32:49,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:32:49,148.148 INFO    ] time= 18/10/2026 10:32:49
[2026-10-18 10:32:49,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:32:49,214.214 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:32:49,363.363 INFO    ] No existing commands found in stream
[2026-10-18 10:32:54,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:32:54,378.378 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-18 10:32:57,215.215 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 10:32:57,218.218 INFO    ] Checking for system updates...
[2026-10-18 10:32:57,260.260 INFO    ] 200
[2026-10-18 10:32:57,263.263 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:32:57,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:32:57,327.327 INFO    ] No update needed
[2026-10-18 10:32:57,330.330 INFO    ] Checking for camera pi updates...
[2026-10-18 10:32:57,370.370 INFO    ] 200
[2026-10-18 10:32:57,372.372 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:32:57,419.419 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:33:07,437.437 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:33:07,479.479 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:33:07,490.490 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:33:07,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:33:07,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:33:07,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:33:09,550.550 INFO    ] ================================================
[2026-10-18 10:33:09,568.568 INFO    ] Launching Daemon at Sun Oct 18 10:33:09 IST 2026
[2026-10-18 10:33:09,580.580 INFO    ] ================================================
[2026-10-18 10:33:10,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:33:10
[2026-10-18 10:33:10,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:33:11,014.014 INFO    ] Initializing speech engine...
[2026-10-18 10:33:11,022.022 INFO    ] 2026-10-18 10:33:11
[2026-10-18 10:33:11,294.294 INFO    ] 2026-10-18 10:33:11
[2026-10-18 10:33:11,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:33:11,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:33:11,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:33:11,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:33:11,796.796 INFO    ] time= 18/10/2026 10:33:11
[2026-10-18 10:33:11,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:33:11,869.869 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:33:12,024.024 INFO    ] No existing commands found in stream
[2026-10-18 10:33:17,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:33:17,050.050 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-18 10:33:20,362.362 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 10:33:20,365.365 INFO    ] Checking for system updates...
[2026-10-18 10:33:20,401.401 INFO    ] 200
[2026-10-18 10:33:20,403.403 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:33:20,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:33:20,458.458 INFO    ] No update needed
[2026-10-18 10:33:20,460.460 INFO    ] Checking for camera pi updates...
[2026-10-18 10:33:20,493.493 INFO    ] 200
[2026-10-18 10:33:20,496.496 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:33:20,536.536 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:33:30,550.550 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:33:30,584.584 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:33:30,594.594 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:33:30,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:33:30,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:33:30,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:33:32,650.650 INFO    ] ================================================
[2026-10-18 10:33:32,667.667 INFO    ] Launching Daemon at Sun Oct 18 10:33:32 IST 2026
[2026-10-18 10:33:32,679.679 INFO    ] ================================================
[2026-10-18 10:33:33,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:33:33
[2026-10-18 10:33:33,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:33:34,177.177 INFO    ] Initializing speech engine...
[2026-10-18 10:33:34,187.187 INFO    ] 2026-10-18 10:33:34
[2026-10-18 10:33:34,441.441 INFO    ] 2026-10-18 10:33:34
[2026-10-18 10:33:34,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:33:34,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:33:34,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:33:34,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:33:34,988.988 INFO    ] time= 18/10/2026 10:33:34
[2026-10-18 10:33:35,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:33:35,011.011 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:33:35,143.143 INFO    ] No existing commands found in stream
[2026-10-18 10:33:40,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:33:40,174.174 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-18 10:33:44,469.469 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:33:44,472.472 INFO    ] Checking for system updates...
[2026-10-18 10:33:44,508.508 INFO    ] 200
[2026-10-18 10:33:44,510.510 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:33:44,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:33:44,565.565 INFO    ] No update needed
[2026-10-18 10:33:44,567.567 INFO    ] Checking for camera pi updates...
[2026-10-18 10:33:44,601.601 INFO    ] 200
[2026-10-18 10:33:44,604.604 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:33:44,644.644 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:33:54,659.659 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:33:54,694.694 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:33:54,704.704 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:33:54,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:33:54,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:33:54,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:33:56,761.761 INFO    ] ================================================
[2026-10-18 10:33:56,778.778 INFO    ] Launching Daemon at Sun Oct 18 10:33:56 IST 2026
[2026-10-18 10:33:56,790.790 INFO    ] ================================================
[2026-10-18 10:33:57,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:33:57
[2026-10-18 10:33:58,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:33:58,308.308 INFO    ] Initializing speech engine...
[2026-10-18 10:33:58,317.317 INFO    ] 2026-10-18 10:33:58
[2026-10-18 10:33:58,567.567 INFO    ] 2026-10-18 10:33:58
[2026-10-18 10:33:58,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:33:58,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:33:58,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:33:59,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:33:59,121.121 INFO    ] time= 18/10/2026 10:33:59
[2026-10-18 10:33:59,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:33:59,148.148 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:33:59,278.278 INFO    ] No existing commands found in stream
[2026-10-18 10:34:04,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:34:04,309.309 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-18 10:34:06,234.234 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:34:06,237.237 INFO    ] Checking for system updates...
[2026-10-18 10:34:06,273.273 INFO    ] 200
[2026-10-18 10:34:06,275.275 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:34:06,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:34:06,330.330 INFO    ] No update needed
[2026-10-18 10:34:06,332.332 INFO    ] Checking for camera pi updates...
[2026-10-18 10:34:06,370.370 INFO    ] 200
[2026-10-18 10:34:06,373.373 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:34:06,419.419 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:34:16,431.431 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:34:16,467.467 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:34:16,476.476 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:34:16,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:34:16,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:34:16,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:34:18,529.529 INFO    ] ================================================
[2026-10-18 10:34:18,544.544 INFO    ] Launching Daemon at Sun Oct 18 10:34:18 IST 2026
[2026-10-18 10:34:18,556.556 INFO    ] ================================================
[2026-10-18 10:34:19,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:34:19
[2026-10-18 10:34:19,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:34:19,979.979 INFO    ] Initializing speech engine...
[2026-10-18 10:34:19,988.988 INFO    ] 2026-10-18 10:34:19
[2026-10-18 10:34:20,237.237 INFO    ] 2026-10-18 10:34:20
[2026-10-18 10:34:20,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:34:20,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:34:20,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:34:20,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:34:20,739.739 INFO    ] time= 18/10/2026 10:34:20
[2026-10-18 10:34:20,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:34:20,816.816 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:34:20,968.968 INFO    ] No existing commands found in stream
[2026-10-18 10:34:25,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:34:25,999.999 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-18 10:34:27,265.265 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:34:27,268.268 INFO    ] Checking for system updates...
[2026-10-18 10:34:27,304.304 INFO    ] 200
[2026-10-18 10:34:27,306.306 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:34:27,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:34:27,362.362 INFO    ] No update needed
[2026-10-18 10:34:27,364.364 INFO    ] Checking for camera pi updates...
[2026-10-18 10:34:27,398.398 INFO    ] 200
[2026-10-18 10:34:27,400.400 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:34:27,442.442 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:34:37,458.458 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:34:37,492.492 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:34:37,502.502 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:34:37,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:34:37,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:34:37,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:34:39,555.555 INFO    ] ================================================
[2026-10-18 10:34:39,571.571 INFO    ] Launching Daemon at Sun Oct 18 10:34:39 IST 2026
[2026-10-18 10:34:39,582.582 INFO    ] ================================================
[2026-10-18 10:34:40,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:34:40
[2026-10-18 10:34:40,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:34:41,000.000 INFO    ] Initializing speech engine...
[2026-10-18 10:34:41,010.010 INFO    ] 2026-10-18 10:34:41
[2026-10-18 10:34:41,256.256 INFO    ] 2026-10-18 10:34:41
[2026-10-18 10:34:41,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:34:41,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:34:41,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:34:41,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:34:41,808.808 INFO    ] time= 18/10/2026 10:34:41
[2026-10-18 10:34:41,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:34:41,832.832 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:34:41,963.963 INFO    ] No existing commands found in stream
[2026-10-18 10:34:46,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:34:46,993.993 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-18 10:34:48,399.399 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 10:34:48,402.402 INFO    ] Checking for system updates...
[2026-10-18 10:34:48,439.439 INFO    ] 200
[2026-10-18 10:34:48,441.441 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:34:48,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:34:48,499.499 INFO    ] No update needed
[2026-10-18 10:34:48,501.501 INFO    ] Checking for camera pi updates...
[2026-10-18 10:34:48,542.542 INFO    ] 200
[2026-10-18 10:34:48,544.544 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:34:48,590.590 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:34:58,605.605 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:34:58,640.640 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:34:58,649.649 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:34:58,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:34:58,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:34:58,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:35:00,702.702 INFO    ] ================================================
[2026-10-18 10:35:00,719.719 INFO    ] Launching Daemon at Sun Oct 18 10:35:00 IST 2026
[2026-10-18 10:35:00,731.731 INFO    ] ================================================
[2026-10-18 10:35:01,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:35:01
[2026-10-18 10:35:01,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:35:02,706.706 INFO    ] Initializing speech engine...
[2026-10-18 10:35:02,729.729 INFO    ] 2026-10-18 10:35:02
[2026-10-18 10:35:03,143.143 INFO    ] 2026-10-18 10:35:03
[2026-10-18 10:35:03,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:35:03,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:35:03,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:35:03,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:35:03,763.763 INFO    ] time= 18/10/2026 10:35:03
[2026-10-18 10:35:03,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:35:03,877.877 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:35:04,019.019 INFO    ] No existing commands found in stream
[2026-10-18 10:35:09,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:35:09,036.036 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-18 10:35:12,109.109 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 10:35:12,112.112 INFO    ] Checking for system updates...
[2026-10-18 10:35:12,147.147 INFO    ] 200
[2026-10-18 10:35:12,150.150 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:35:12,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:35:12,204.204 INFO    ] No update needed
[2026-10-18 10:35:12,206.206 INFO    ] Checking for camera pi updates...
[2026-10-18 10:35:12,243.243 INFO    ] 200
[2026-10-18 10:35:12,246.246 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:35:12,291.291 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:35:22,305.305 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:35:22,340.340 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:35:22,350.350 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:35:22,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:35:22,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:35:22,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:35:24,402.402 INFO    ] ================================================
[2026-10-18 10:35:24,418.418 INFO    ] Launching Daemon at Sun Oct 18 10:35:24 IST 2026
[2026-10-18 10:35:24,429.429 INFO    ] ================================================
[2026-10-18 10:35:24,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:35:24
[2026-10-18 10:35:25,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:35:25,848.848 INFO    ] Initializing speech engine...
[2026-10-18 10:35:25,857.857 INFO    ] 2026-10-18 10:35:25
[2026-10-18 10:35:26,116.116 INFO    ] 2026-10-18 10:35:26
[2026-10-18 10:35:26,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:35:26,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:35:26,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:35:26,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:35:26,657.657 INFO    ] time= 18/10/2026 10:35:26
[2026-10-18 10:35:26,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:35:26,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:35:26,822.822 INFO    ] No existing commands found in stream
[2026-10-18 10:35:31,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:35:31,851.851 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-18 10:35:35,663.663 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:35:35,666.666 INFO    ] Checking for system updates...
[2026-10-18 10:35:35,701.701 INFO    ] 200
[2026-10-18 10:35:35,704.704 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:35:35,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:35:35,758.758 INFO    ] No update needed
[2026-10-18 10:35:35,761.761 INFO    ] Checking for camera pi updates...
[2026-10-18 10:35:35,799.799 INFO    ] 200
[2026-10-18 10:35:35,801.801 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:35:35,841.841 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:35:45,857.857 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:35:45,892.892 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:35:45,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:35:45,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:35:45,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:35:45,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:35:47,957.957 INFO    ] ================================================
[2026-10-18 10:35:47,972.972 INFO    ] Launching Daemon at Sun Oct 18 10:35:47 IST 2026
[2026-10-18 10:35:47,983.983 INFO    ] ================================================
[2026-10-18 10:35:48,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:35:48
[2026-10-18 10:35:49,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:35:49,409.409 INFO    ] Initializing speech engine...
[2026-10-18 10:35:49,420.420 INFO    ] 2026-10-18 10:35:49
[2026-10-18 10:35:49,678.678 INFO    ] 2026-10-18 10:35:49
[2026-10-18 10:35:49,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:35:49,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:35:49,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:35:50,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:35:50,199.199 INFO    ] time= 18/10/2026 10:35:50
[2026-10-18 10:35:50,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:35:50,247.247 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:35:50,366.366 INFO    ] No existing commands found in stream
[2026-10-18 10:35:55,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:35:55,392.392 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-18 10:35:56,269.269 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 10:35:56,272.272 INFO    ] Checking for system updates...
[2026-10-18 10:35:56,309.309 INFO    ] 200
[2026-10-18 10:35:56,312.312 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:35:56,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:35:56,375.375 INFO    ] No update needed
[2026-10-18 10:35:56,378.378 INFO    ] Checking for camera pi updates...
[2026-10-18 10:35:56,413.413 INFO    ] 200
[2026-10-18 10:35:56,416.416 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:35:56,462.462 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:36:06,481.481 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:36:06,521.521 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:36:06,532.532 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:36:06,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:36:06,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:36:06,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:36:08,588.588 INFO    ] ================================================
[2026-10-18 10:36:08,604.604 INFO    ] Launching Daemon at Sun Oct 18 10:36:08 IST 2026
[2026-10-18 10:36:08,615.615 INFO    ] ================================================
[2026-10-18 10:36:09,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:36:09
[2026-10-18 10:36:09,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:36:10,109.109 INFO    ] Initializing speech engine...
[2026-10-18 10:36:10,128.128 INFO    ] 2026-10-18 10:36:10
[2026-10-18 10:36:10,378.378 INFO    ] 2026-10-18 10:36:10
[2026-10-18 10:36:10,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:36:10,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:36:10,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:36:10,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:36:10,888.888 INFO    ] time= 18/10/2026 10:36:10
[2026-10-18 10:36:10,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:36:10,954.954 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:36:11,072.072 INFO    ] No existing commands found in stream
[2026-10-18 10:36:16,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:36:16,105.105 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-18 10:36:19,407.407 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:36:19,409.409 INFO    ] Checking for system updates...
[2026-10-18 10:36:19,448.448 INFO    ] 200
[2026-10-18 10:36:19,451.451 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:36:19,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:36:19,511.511 INFO    ] No update needed
[2026-10-18 10:36:19,514.514 INFO    ] Checking for camera pi updates...
[2026-10-18 10:36:19,547.547 INFO    ] 200
[2026-10-18 10:36:19,550.550 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:36:19,590.590 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:36:29,605.605 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:36:29,640.640 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:36:29,650.650 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:36:29,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:36:29,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:36:29,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:36:31,704.704 INFO    ] ================================================
[2026-10-18 10:36:31,721.721 INFO    ] Launching Daemon at Sun Oct 18 10:36:31 IST 2026
[2026-10-18 10:36:31,734.734 INFO    ] ================================================
[2026-10-18 10:36:32,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:36:32
[2026-10-18 10:36:33,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:36:33,410.410 INFO    ] Initializing speech engine...
[2026-10-18 10:36:33,419.419 INFO    ] 2026-10-18 10:36:33
[2026-10-18 10:36:33,688.688 INFO    ] 2026-10-18 10:36:33
[2026-10-18 10:36:33,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:36:33,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:36:33,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:36:34,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:36:34,210.210 INFO    ] time= 18/10/2026 10:36:34
[2026-10-18 10:36:34,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:36:34,265.265 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:36:34,414.414 INFO    ] No existing commands found in stream
[2026-10-18 10:36:39,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:36:39,446.446 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-18 10:36:41,255.255 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 10:36:41,258.258 INFO    ] Checking for system updates...
[2026-10-18 10:36:41,294.294 INFO    ] 200
[2026-10-18 10:36:41,297.297 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:36:41,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:36:41,353.353 INFO    ] No update needed
[2026-10-18 10:36:41,355.355 INFO    ] Checking for camera pi updates...
[2026-10-18 10:36:41,390.390 INFO    ] 200
[2026-10-18 10:36:41,393.393 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:36:41,434.434 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:36:51,450.450 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:36:51,490.490 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:36:51,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:36:51,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:36:51,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:36:51,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:36:53,556.556 INFO    ] ================================================
[2026-10-18 10:36:53,572.572 INFO    ] Launching Daemon at Sun Oct 18 10:36:53 IST 2026
[2026-10-18 10:36:53,583.583 INFO    ] ================================================
[2026-10-18 10:36:54,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:36:54
[2026-10-18 10:36:54,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:36:54,982.982 INFO    ] Initializing speech engine...
[2026-10-18 10:36:55,005.005 INFO    ] 2026-10-18 10:36:54
[2026-10-18 10:36:55,261.261 INFO    ] 2026-10-18 10:36:55
[2026-10-18 10:36:55,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:36:55,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:36:55,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:36:55,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:36:55,733.733 INFO    ] time= 18/10/2026 10:36:55
[2026-10-18 10:36:55,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:36:55,832.832 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:36:55,967.967 INFO    ] No existing commands found in stream
[2026-10-18 10:37:00,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:37:00,995.995 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-18 10:37:03,671.671 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:37:03,674.674 INFO    ] Checking for system updates...
[2026-10-18 10:37:03,710.710 INFO    ] 200
[2026-10-18 10:37:03,712.712 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:37:03,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:37:03,767.767 INFO    ] No update needed
[2026-10-18 10:37:03,769.769 INFO    ] Checking for camera pi updates...
[2026-10-18 10:37:03,802.802 INFO    ] 200
[2026-10-18 10:37:03,805.805 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:37:03,845.845 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:37:13,860.860 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:37:13,895.895 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:37:13,904.904 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:37:13,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:37:13,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:37:13,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:37:15,956.956 INFO    ] ================================================
[2026-10-18 10:37:15,972.972 INFO    ] Launching Daemon at Sun Oct 18 10:37:15 IST 2026
[2026-10-18 10:37:15,984.984 INFO    ] ================================================
[2026-10-18 10:37:16,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:37:16
[2026-10-18 10:37:17,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:37:17,420.420 INFO    ] Initializing speech engine...
[2026-10-18 10:37:17,429.429 INFO    ] 2026-10-18 10:37:17
[2026-10-18 10:37:17,691.691 INFO    ] 2026-10-18 10:37:17
[2026-10-18 10:37:17,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:37:17,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:37:17,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:37:18,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:37:18,179.179 INFO    ] time= 18/10/2026 10:37:18
[2026-10-18 10:37:18,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:37:18,241.241 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:37:18,381.381 INFO    ] No existing commands found in stream
[2026-10-18 10:37:23,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:37:23,400.400 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-18 10:37:27,623.623 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:37:27,626.626 INFO    ] Checking for system updates...
[2026-10-18 10:37:27,661.661 INFO    ] 200
[2026-10-18 10:37:27,664.664 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:37:27,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:37:27,724.724 INFO    ] No update needed
[2026-10-18 10:37:27,727.727 INFO    ] Checking for camera pi updates...
[2026-10-18 10:37:27,764.764 INFO    ] 200
[2026-10-18 10:37:27,766.766 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:37:27,811.811 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:37:37,824.824 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:37:37,860.860 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:37:37,870.870 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:37:37,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:37:37,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:37:37,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:37:39,924.924 INFO    ] ================================================
[2026-10-18 10:37:39,940.940 INFO    ] Launching Daemon at Sun Oct 18 10:37:39 IST 2026
[2026-10-18 10:37:39,952.952 INFO    ] ================================================
[2026-10-18 10:37:40,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:37:40
[2026-10-18 10:37:41,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:37:41,388.388 INFO    ] Initializing speech engine...
[2026-10-18 10:37:41,397.397 INFO    ] 2026-10-18 10:37:41
[2026-10-18 10:37:41,643.643 INFO    ] 2026-10-18 10:37:41
[2026-10-18 10:37:41,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:37:41,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:37:41,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:37:42,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:37:42,200.200 INFO    ] time= 18/10/2026 10:37:42
[2026-10-18 10:37:42,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:37:42,221.221 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:37:42,356.356 INFO    ] No existing commands found in stream
[2026-10-18 10:37:47,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:37:47,373.373 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-18 10:37:51,691.691 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:37:51,693.693 INFO    ] Checking for system updates...
[2026-10-18 10:37:51,735.735 INFO    ] 200
[2026-10-18 10:37:51,738.738 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:37:51,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:37:51,794.794 INFO    ] No update needed
[2026-10-18 10:37:51,797.797 INFO    ] Checking for camera pi updates...
[2026-10-18 10:37:51,832.832 INFO    ] 200
[2026-10-18 10:37:51,835.835 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:37:51,876.876 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:38:01,893.893 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:38:01,940.940 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:38:01,953.953 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:38:01,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:38:01,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:38:01,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:38:04,014.014 INFO    ] ================================================
[2026-10-18 10:38:04,030.030 INFO    ] Launching Daemon at Sun Oct 18 10:38:04 IST 2026
[2026-10-18 10:38:04,042.042 INFO    ] ================================================
[2026-10-18 10:38:04,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:38:04
[2026-10-18 10:38:05,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:38:05,484.484 INFO    ] Initializing speech engine...
[2026-10-18 10:38:05,492.492 INFO    ] 2026-10-18 10:38:05
[2026-10-18 10:38:05,755.755 INFO    ] 2026-10-18 10:38:05
[2026-10-18 10:38:05,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:38:06,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:38:06,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:38:06,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:38:06,261.261 INFO    ] time= 18/10/2026 10:38:06
[2026-10-18 10:38:06,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:38:06,333.333 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:38:06,480.480 INFO    ] No existing commands found in stream
[2026-10-18 10:38:11,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:38:11,494.494 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-18 10:38:14,714.714 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 10:38:14,716.716 INFO    ] Checking for system updates...
[2026-10-18 10:38:14,752.752 INFO    ] 200
[2026-10-18 10:38:14,754.754 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:38:14,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:38:14,814.814 INFO    ] No update needed
[2026-10-18 10:38:14,816.816 INFO    ] Checking for camera pi updates...
[2026-10-18 10:38:14,850.850 INFO    ] 200
[2026-10-18 10:38:14,852.852 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:38:14,892.892 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:38:24,907.907 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:38:24,942.942 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:38:24,952.952 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:38:24,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:38:24,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:38:24,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:38:27,003.003 INFO    ] ================================================
[2026-10-18 10:38:27,019.019 INFO    ] Launching Daemon at Sun Oct 18 10:38:27 IST 2026
[2026-10-18 10:38:27,031.031 INFO    ] ================================================
[2026-10-18 10:38:27,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:38:27
[2026-10-18 10:38:28,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:38:28,440.440 INFO    ] Initializing speech engine...
[2026-10-18 10:38:28,449.449 INFO    ] 2026-10-18 10:38:28
[2026-10-18 10:38:28,737.737 INFO    ] 2026-10-18 10:38:28
[2026-10-18 10:38:28,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:38:28,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:38:29,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:38:29,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:38:29,248.248 INFO    ] time= 18/10/2026 10:38:29
[2026-10-18 10:38:29,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:38:29,357.357 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:38:29,486.486 INFO    ] No existing commands found in stream
[2026-10-18 10:38:34,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:38:34,512.512 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-18 10:38:35,427.427 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 10:38:35,430.430 INFO    ] Checking for system updates...
[2026-10-18 10:38:35,468.468 INFO    ] 200
[2026-10-18 10:38:35,471.471 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:38:35,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:38:35,525.525 INFO    ] No update needed
[2026-10-18 10:38:35,527.527 INFO    ] Checking for camera pi updates...
[2026-10-18 10:38:35,564.564 INFO    ] 200
[2026-10-18 10:38:35,566.566 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:38:35,610.610 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:38:45,625.625 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:38:45,660.660 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:38:45,670.670 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:38:45,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:38:45,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:38:45,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:38:47,722.722 INFO    ] ================================================
[2026-10-18 10:38:47,738.738 INFO    ] Launching Daemon at Sun Oct 18 10:38:47 IST 2026
[2026-10-18 10:38:47,750.750 INFO    ] ================================================
[2026-10-18 10:38:48,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:38:48
[2026-10-18 10:38:48,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:38:49,176.176 INFO    ] Initializing speech engine...
[2026-10-18 10:38:49,185.185 INFO    ] 2026-10-18 10:38:49
[2026-10-18 10:38:49,435.435 INFO    ] 2026-10-18 10:38:49
[2026-10-18 10:38:49,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:38:49,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:38:49,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:38:49,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:38:49,979.979 INFO    ] time= 18/10/2026 10:38:49
[2026-10-18 10:38:50,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:38:50,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:38:50,226.226 INFO    ] No existing commands found in stream
[2026-10-18 10:38:55,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:38:55,242.242 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-18 10:38:58,209.209 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:38:58,212.212 INFO    ] Checking for system updates...
[2026-10-18 10:38:58,248.248 INFO    ] 200
[2026-10-18 10:38:58,250.250 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:38:58,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:38:58,309.309 INFO    ] No update needed
[2026-10-18 10:38:58,311.311 INFO    ] Checking for camera pi updates...
[2026-10-18 10:38:58,344.344 INFO    ] 200
[2026-10-18 10:38:58,346.346 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:38:58,386.386 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:39:08,400.400 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:39:08,434.434 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:39:08,444.444 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:39:08,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:39:08,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:39:08,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:39:10,496.496 INFO    ] ================================================
[2026-10-18 10:39:10,511.511 INFO    ] Launching Daemon at Sun Oct 18 10:39:10 IST 2026
[2026-10-18 10:39:10,522.522 INFO    ] ================================================
[2026-10-18 10:39:11,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:39:11
[2026-10-18 10:39:11,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:39:11,994.994 INFO    ] Initializing speech engine...
[2026-10-18 10:39:12,001.001 INFO    ] 2026-10-18 10:39:11
[2026-10-18 10:39:12,270.270 INFO    ] 2026-10-18 10:39:12
[2026-10-18 10:39:12,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:39:12,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:39:12,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:39:12,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:39:12,821.821 INFO    ] time= 18/10/2026 10:39:12
[2026-10-18 10:39:12,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:39:12,848.848 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:39:12,980.980 INFO    ] No existing commands found in stream
[2026-10-18 10:39:18,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:39:18,003.003 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-18 10:39:20,006.006 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:39:20,008.008 INFO    ] Checking for system updates...
[2026-10-18 10:39:20,045.045 INFO    ] 200
[2026-10-18 10:39:20,048.048 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:39:20,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:39:20,104.104 INFO    ] No update needed
[2026-10-18 10:39:20,106.106 INFO    ] Checking for camera pi updates...
[2026-10-18 10:39:20,140.140 INFO    ] 200
[2026-10-18 10:39:20,143.143 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:39:20,182.182 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:39:30,197.197 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:39:30,232.232 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:39:30,242.242 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:39:30,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:39:30,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:39:30,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:39:32,296.296 INFO    ] ================================================
[2026-10-18 10:39:32,312.312 INFO    ] Launching Daemon at Sun Oct 18 10:39:32 IST 2026
[2026-10-18 10:39:32,323.323 INFO    ] ================================================
[2026-10-18 10:39:32,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:39:32
[2026-10-18 10:39:33,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:39:33,750.750 INFO    ] Initializing speech engine...
[2026-10-18 10:39:33,758.758 INFO    ] 2026-10-18 10:39:33
[2026-10-18 10:39:34,008.008 INFO    ] 2026-10-18 10:39:34
[2026-10-18 10:39:34,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:39:34,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:39:34,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:39:34,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:39:34,491.491 INFO    ] time= 18/10/2026 10:39:34
[2026-10-18 10:39:34,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:39:34,580.580 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:39:34,721.721 INFO    ] No existing commands found in stream
[2026-10-18 10:39:39,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:39:39,743.743 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-18 10:39:43,393.393 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:39:43,396.396 INFO    ] Checking for system updates...
[2026-10-18 10:39:43,434.434 INFO    ] 200
[2026-10-18 10:39:43,436.436 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:39:43,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:39:43,492.492 INFO    ] No update needed
[2026-10-18 10:39:43,494.494 INFO    ] Checking for camera pi updates...
[2026-10-18 10:39:43,529.529 INFO    ] 200
[2026-10-18 10:39:43,532.532 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:39:43,576.576 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:39:53,592.592 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:39:53,630.630 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:39:53,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:39:53,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:39:53,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:39:53,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:39:55,695.695 INFO    ] ================================================
[2026-10-18 10:39:55,710.710 INFO    ] Launching Daemon at Sun Oct 18 10:39:55 IST 2026
[2026-10-18 10:39:55,721.721 INFO    ] ================================================
[2026-10-18 10:39:56,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:39:56
[2026-10-18 10:39:56,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:39:57,174.174 INFO    ] Initializing speech engine...
[2026-10-18 10:39:57,183.183 INFO    ] 2026-10-18 10:39:57
[2026-10-18 10:39:57,445.445 INFO    ] 2026-10-18 10:39:57
[2026-10-18 10:39:57,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:39:57,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:39:57,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:39:57,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:39:57,918.918 INFO    ] time= 18/10/2026 10:39:57
[2026-10-18 10:39:57,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:39:57,997.997 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:39:58,137.137 INFO    ] No existing commands found in stream
[2026-10-18 10:40:03,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:40:03,157.157 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-18 10:40:07,779.779 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:40:07,781.781 INFO    ] Checking for system updates...
[2026-10-18 10:40:07,821.821 INFO    ] 200
[2026-10-18 10:40:07,824.824 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:40:07,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:40:07,878.878 INFO    ] No update needed
[2026-10-18 10:40:07,881.881 INFO    ] Checking for camera pi updates...
[2026-10-18 10:40:07,914.914 INFO    ] 200
[2026-10-18 10:40:07,917.917 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:40:07,963.963 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:40:17,978.978 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:40:18,014.014 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:40:18,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:40:18,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:40:18,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:40:18,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:40:20,079.079 INFO    ] ================================================
[2026-10-18 10:40:20,100.100 INFO    ] Launching Daemon at Sun Oct 18 10:40:20 IST 2026
[2026-10-18 10:40:20,117.117 INFO    ] ================================================
[2026-10-18 10:40:20,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:40:20
[2026-10-18 10:40:21,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:40:21,532.532 INFO    ] Initializing speech engine...
[2026-10-18 10:40:21,538.538 INFO    ] 2026-10-18 10:40:21
[2026-10-18 10:40:21,835.835 INFO    ] 2026-10-18 10:40:21
[2026-10-18 10:40:21,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:40:22,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:40:22,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:40:22,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:40:22,334.334 INFO    ] time= 18/10/2026 10:40:22
[2026-10-18 10:40:22,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:40:22,448.448 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:40:22,542.542 INFO    ] No existing commands found in stream
[2026-10-18 10:40:27,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:40:27,557.557 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-18 10:40:31,422.422 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:40:31,425.425 INFO    ] Checking for system updates...
[2026-10-18 10:40:31,468.468 INFO    ] 200
[2026-10-18 10:40:31,471.471 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:40:31,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:40:31,538.538 INFO    ] No update needed
[2026-10-18 10:40:31,540.540 INFO    ] Checking for camera pi updates...
[2026-10-18 10:40:31,576.576 INFO    ] 200
[2026-10-18 10:40:31,578.578 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:40:31,620.620 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:40:41,635.635 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:40:41,670.670 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:40:41,679.679 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:40:41,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:40:41,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:40:41,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:40:43,731.731 INFO    ] ================================================
[2026-10-18 10:40:43,746.746 INFO    ] Launching Daemon at Sun Oct 18 10:40:43 IST 2026
[2026-10-18 10:40:43,763.763 INFO    ] ================================================
[2026-10-18 10:40:44,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:40:44
[2026-10-18 10:40:44,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:40:45,205.205 INFO    ] Initializing speech engine...
[2026-10-18 10:40:45,217.217 INFO    ] 2026-10-18 10:40:45
[2026-10-18 10:40:45,483.483 INFO    ] 2026-10-18 10:40:45
[2026-10-18 10:40:45,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:40:45,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:40:45,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:40:45,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:40:45,959.959 INFO    ] time= 18/10/2026 10:40:45
[2026-10-18 10:40:46,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:40:46,069.069 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:40:46,204.204 INFO    ] No existing commands found in stream
[2026-10-18 10:40:51,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:40:51,230.230 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-18 10:40:53,451.451 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 10:40:53,454.454 INFO    ] Checking for system updates...
[2026-10-18 10:40:53,494.494 INFO    ] 200
[2026-10-18 10:40:53,497.497 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:40:53,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:40:53,560.560 INFO    ] No update needed
[2026-10-18 10:40:53,563.563 INFO    ] Checking for camera pi updates...
[2026-10-18 10:40:53,600.600 INFO    ] 200
[2026-10-18 10:40:53,603.603 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:40:53,644.644 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:41:03,658.658 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:41:03,696.696 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:41:03,707.707 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:41:03,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:41:03,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:41:03,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:41:05,761.761 INFO    ] ================================================
[2026-10-18 10:41:05,776.776 INFO    ] Launching Daemon at Sun Oct 18 10:41:05 IST 2026
[2026-10-18 10:41:05,786.786 INFO    ] ================================================
[2026-10-18 10:41:06,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:41:06
[2026-10-18 10:41:06,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:41:07,202.202 INFO    ] Initializing speech engine...
[2026-10-18 10:41:07,227.227 INFO    ] 2026-10-18 10:41:07
[2026-10-18 10:41:07,493.493 INFO    ] 2026-10-18 10:41:07
[2026-10-18 10:41:07,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:41:07,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:41:07,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:41:07,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:41:07,996.996 INFO    ] time= 18/10/2026 10:41:07
[2026-10-18 10:41:08,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:41:08,109.109 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:41:08,269.269 INFO    ] No existing commands found in stream
[2026-10-18 10:41:13,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:41:13,287.287 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-18 10:41:16,914.914 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 10:41:16,916.916 INFO    ] Checking for system updates...
[2026-10-18 10:41:16,951.951 INFO    ] 200
[2026-10-18 10:41:16,954.954 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:41:17,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:41:17,009.009 INFO    ] No update needed
[2026-10-18 10:41:17,012.012 INFO    ] Checking for camera pi updates...
[2026-10-18 10:41:17,049.049 INFO    ] 200
[2026-10-18 10:41:17,051.051 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:41:17,091.091 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:41:27,107.107 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:41:27,141.141 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:41:27,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:41:27,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:41:27,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:41:27,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:41:29,203.203 INFO    ] ================================================
[2026-10-18 10:41:29,218.218 INFO    ] Launching Daemon at Sun Oct 18 10:41:29 IST 2026
[2026-10-18 10:41:29,228.228 INFO    ] ================================================
[2026-10-18 10:41:29,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:41:29
[2026-10-18 10:41:30,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:41:30,668.668 INFO    ] Initializing speech engine...
[2026-10-18 10:41:30,677.677 INFO    ] 2026-10-18 10:41:30
[2026-10-18 10:41:30,940.940 INFO    ] 2026-10-18 10:41:30
[2026-10-18 10:41:30,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:41:31,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:41:31,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:41:31,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:41:31,354.354 INFO    ] time= 18/10/2026 10:41:31
[2026-10-18 10:41:31,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:41:31,374.374 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:41:31,508.508 INFO    ] No existing commands found in stream
[2026-10-18 10:41:36,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:41:36,536.536 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-18 10:41:37,291.291 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:41:37,293.293 INFO    ] Checking for system updates...
[2026-10-18 10:41:37,329.329 INFO    ] 200
[2026-10-18 10:41:37,332.332 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:41:37,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:41:37,391.391 INFO    ] No update needed
[2026-10-18 10:41:37,393.393 INFO    ] Checking for camera pi updates...
[2026-10-18 10:41:37,429.429 INFO    ] 200
[2026-10-18 10:41:37,432.432 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:41:37,475.475 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:41:47,490.490 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:41:47,525.525 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:41:47,534.534 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:41:47,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:41:47,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:41:47,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:41:49,587.587 INFO    ] ================================================
[2026-10-18 10:41:49,602.602 INFO    ] Launching Daemon at Sun Oct 18 10:41:49 IST 2026
[2026-10-18 10:41:49,613.613 INFO    ] ================================================
[2026-10-18 10:41:50,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:41:50
[2026-10-18 10:41:50,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:41:51,024.024 INFO    ] Initializing speech engine...
[2026-10-18 10:41:51,037.037 INFO    ] 2026-10-18 10:41:51
[2026-10-18 10:41:51,302.302 INFO    ] 2026-10-18 10:41:51
[2026-10-18 10:41:51,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:41:51,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:41:51,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:41:51,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:41:51,791.791 INFO    ] time= 18/10/2026 10:41:51
[2026-10-18 10:41:51,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:41:51,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:41:52,006.006 INFO    ] No existing commands found in stream
[2026-10-18 10:41:57,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:41:57,024.024 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-18 10:41:59,570.570 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 10:41:59,572.572 INFO    ] Checking for system updates...
[2026-10-18 10:41:59,608.608 INFO    ] 200
[2026-10-18 10:41:59,610.610 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:41:59,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:41:59,665.665 INFO    ] No update needed
[2026-10-18 10:41:59,667.667 INFO    ] Checking for camera pi updates...
[2026-10-18 10:41:59,701.701 INFO    ] 200
[2026-10-18 10:41:59,703.703 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:41:59,743.743 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:42:09,757.757 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:42:09,791.791 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:42:09,801.801 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:42:09,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:42:09,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:42:09,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:42:11,853.853 INFO    ] ================================================
[2026-10-18 10:42:11,869.869 INFO    ] Launching Daemon at Sun Oct 18 10:42:11 IST 2026
[2026-10-18 10:42:11,880.880 INFO    ] ================================================
[2026-10-18 10:42:12,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:42:12
[2026-10-18 10:42:13,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:42:13,461.461 INFO    ] Initializing speech engine...
[2026-10-18 10:42:13,474.474 INFO    ] 2026-10-18 10:42:13
[2026-10-18 10:42:13,757.757 INFO    ] 2026-10-18 10:42:13
[2026-10-18 10:42:13,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:42:14,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:42:14,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:42:14,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:42:14,290.290 INFO    ] time= 18/10/2026 10:42:14
[2026-10-18 10:42:14,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:42:14,326.326 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:42:14,475.475 INFO    ] No existing commands found in stream
[2026-10-18 10:42:19,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:42:19,514.514 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-18 10:42:23,975.975 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:42:23,978.978 INFO    ] Checking for system updates...
[2026-10-18 10:42:24,014.014 INFO    ] 200
[2026-10-18 10:42:24,017.017 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:42:24,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:42:24,072.072 INFO    ] No update needed
[2026-10-18 10:42:24,075.075 INFO    ] Checking for camera pi updates...
[2026-10-18 10:42:24,109.109 INFO    ] 200
[2026-10-18 10:42:24,111.111 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:42:24,152.152 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:42:34,167.167 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:42:34,206.206 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:42:34,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:42:34,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:42:34,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:42:34,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:42:36,271.271 INFO    ] ================================================
[2026-10-18 10:42:36,286.286 INFO    ] Launching Daemon at Sun Oct 18 10:42:36 IST 2026
[2026-10-18 10:42:36,297.297 INFO    ] ================================================
[2026-10-18 10:42:36,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:42:36
[2026-10-18 10:42:37,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:42:37,771.771 INFO    ] Initializing speech engine...
[2026-10-18 10:42:37,783.783 INFO    ] 2026-10-18 10:42:37
[2026-10-18 10:42:38,050.050 INFO    ] 2026-10-18 10:42:38
[2026-10-18 10:42:38,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:42:38,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:42:38,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:42:38,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:42:38,506.506 INFO    ] time= 18/10/2026 10:42:38
[2026-10-18 10:42:38,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:42:38,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:42:38,733.733 INFO    ] No existing commands found in stream
[2026-10-18 10:42:43,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:42:43,751.751 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-18 10:42:45,276.276 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:42:45,279.279 INFO    ] Checking for system updates...
[2026-10-18 10:42:45,317.317 INFO    ] 200
[2026-10-18 10:42:45,320.320 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:42:45,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:42:45,374.374 INFO    ] No update needed
[2026-10-18 10:42:45,377.377 INFO    ] Checking for camera pi updates...
[2026-10-18 10:42:45,411.411 INFO    ] 200
[2026-10-18 10:42:45,413.413 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:42:45,457.457 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:42:55,472.472 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:42:55,508.508 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:42:55,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:42:55,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:42:55,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:42:55,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:42:57,572.572 INFO    ] ================================================
[2026-10-18 10:42:57,587.587 INFO    ] Launching Daemon at Sun Oct 18 10:42:57 IST 2026
[2026-10-18 10:42:57,598.598 INFO    ] ================================================
[2026-10-18 10:42:58,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:42:58
[2026-10-18 10:42:58,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:42:59,070.070 INFO    ] Initializing speech engine...
[2026-10-18 10:42:59,079.079 INFO    ] 2026-10-18 10:42:59
[2026-10-18 10:42:59,324.324 INFO    ] 2026-10-18 10:42:59
[2026-10-18 10:42:59,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:42:59,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:42:59,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:42:59,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:42:59,877.877 INFO    ] time= 18/10/2026 10:42:59
[2026-10-18 10:42:59,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:42:59,900.900 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:43:00,030.030 INFO    ] No existing commands found in stream
[2026-10-18 10:43:05,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:43:05,052.052 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-18 10:43:07,620.620 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 10:43:07,623.623 INFO    ] Checking for system updates...
[2026-10-18 10:43:07,659.659 INFO    ] 200
[2026-10-18 10:43:07,661.661 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:43:07,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:43:07,715.715 INFO    ] No update needed
[2026-10-18 10:43:07,718.718 INFO    ] Checking for camera pi updates...
[2026-10-18 10:43:07,751.751 INFO    ] 200
[2026-10-18 10:43:07,753.753 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:43:07,793.793 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:43:17,809.809 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:43:17,843.843 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:43:17,852.852 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:43:17,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:43:17,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:43:17,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:43:19,905.905 INFO    ] ================================================
[2026-10-18 10:43:19,920.920 INFO    ] Launching Daemon at Sun Oct 18 10:43:19 IST 2026
[2026-10-18 10:43:19,931.931 INFO    ] ================================================
[2026-10-18 10:43:20,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:43:20
[2026-10-18 10:43:21,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:43:21,346.346 INFO    ] Initializing speech engine...
[2026-10-18 10:43:21,359.359 INFO    ] 2026-10-18 10:43:21
[2026-10-18 10:43:21,604.604 INFO    ] 2026-10-18 10:43:21
[2026-10-18 10:43:21,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:43:21,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:43:21,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:43:22,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:43:22,092.092 INFO    ] time= 18/10/2026 10:43:22
[2026-10-18 10:43:22,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:43:22,164.164 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:43:22,310.310 INFO    ] No existing commands found in stream
[2026-10-18 10:43:27,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:43:27,331.331 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-18 10:43:31,846.846 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:43:31,848.848 INFO    ] Checking for system updates...
[2026-10-18 10:43:31,887.887 INFO    ] 200
[2026-10-18 10:43:31,890.890 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:43:31,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:43:31,957.957 INFO    ] No update needed
[2026-10-18 10:43:31,960.960 INFO    ] Checking for camera pi updates...
[2026-10-18 10:43:31,999.999 INFO    ] 200
[2026-10-18 10:43:32,002.002 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:43:32,045.045 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:43:42,060.060 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:43:42,094.094 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:43:42,104.104 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:43:42,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:43:42,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:43:42,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:43:44,156.156 INFO    ] ================================================
[2026-10-18 10:43:44,171.171 INFO    ] Launching Daemon at Sun Oct 18 10:43:44 IST 2026
[2026-10-18 10:43:44,182.182 INFO    ] ================================================
[2026-10-18 10:43:44,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:43:44
[2026-10-18 10:43:45,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:43:45,605.605 INFO    ] Initializing speech engine...
[2026-10-18 10:43:45,611.611 INFO    ] 2026-10-18 10:43:45
[2026-10-18 10:43:45,856.856 INFO    ] 2026-10-18 10:43:45
[2026-10-18 10:43:45,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:43:46,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:43:46,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:43:46,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:43:46,411.411 INFO    ] time= 18/10/2026 10:43:46
[2026-10-18 10:43:46,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:43:46,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:43:46,579.579 INFO    ] No existing commands found in stream
[2026-10-18 10:43:51,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:43:51,614.614 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-18 10:43:55,976.976 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 10:43:55,979.979 INFO    ] Checking for system updates...
[2026-10-18 10:43:56,015.015 INFO    ] 200
[2026-10-18 10:43:56,018.018 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:43:56,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:43:56,094.094 INFO    ] No update needed
[2026-10-18 10:43:56,096.096 INFO    ] Checking for camera pi updates...
[2026-10-18 10:43:56,130.130 INFO    ] 200
[2026-10-18 10:43:56,132.132 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:43:56,178.178 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:44:06,193.193 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:44:06,228.228 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:44:06,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:44:06,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:44:06,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:44:06,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:44:08,290.290 INFO    ] ================================================
[2026-10-18 10:44:08,305.305 INFO    ] Launching Daemon at Sun Oct 18 10:44:08 IST 2026
[2026-10-18 10:44:08,316.316 INFO    ] ================================================
[2026-10-18 10:44:08,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:44:08
[2026-10-18 10:44:09,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:44:09,730.730 INFO    ] Initializing speech engine...
[2026-10-18 10:44:09,742.742 INFO    ] 2026-10-18 10:44:09
[2026-10-18 10:44:10,025.025 INFO    ] 2026-10-18 10:44:10
[2026-10-18 10:44:10,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:44:10,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:44:10,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:44:10,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:44:10,515.515 INFO    ] time= 18/10/2026 10:44:10
[2026-10-18 10:44:10,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:44:10,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:44:10,725.725 INFO    ] No existing commands found in stream
[2026-10-18 10:44:15,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:44:15,740.740 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-18 10:44:16,854.854 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:44:16,857.857 INFO    ] Checking for system updates...
[2026-10-18 10:44:16,893.893 INFO    ] 200
[2026-10-18 10:44:16,895.895 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:44:16,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:44:16,951.951 INFO    ] No update needed
[2026-10-18 10:44:16,953.953 INFO    ] Checking for camera pi updates...
[2026-10-18 10:44:16,986.986 INFO    ] 200
[2026-10-18 10:44:16,989.989 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:44:17,029.029 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:44:27,041.041 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:44:27,076.076 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:44:27,085.085 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:44:27,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:44:27,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:44:27,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:44:29,139.139 INFO    ] ================================================
[2026-10-18 10:44:29,154.154 INFO    ] Launching Daemon at Sun Oct 18 10:44:29 IST 2026
[2026-10-18 10:44:29,164.164 INFO    ] ================================================
[2026-10-18 10:44:29,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:44:29
[2026-10-18 10:44:30,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:44:30,597.597 INFO    ] Initializing speech engine...
[2026-10-18 10:44:30,606.606 INFO    ] 2026-10-18 10:44:30
[2026-10-18 10:44:30,853.853 INFO    ] 2026-10-18 10:44:30
[2026-10-18 10:44:30,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:44:31,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:44:31,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:44:31,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:44:31,381.381 INFO    ] time= 18/10/2026 10:44:31
[2026-10-18 10:44:31,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:44:31,426.426 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:44:31,570.570 INFO    ] No existing commands found in stream
[2026-10-18 10:44:36,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:44:36,600.600 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-18 10:44:38,943.943 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 10:44:38,945.945 INFO    ] Checking for system updates...
[2026-10-18 10:44:38,982.982 INFO    ] 200
[2026-10-18 10:44:38,984.984 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:44:39,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:44:39,040.040 INFO    ] No update needed
[2026-10-18 10:44:39,042.042 INFO    ] Checking for camera pi updates...
[2026-10-18 10:44:39,076.076 INFO    ] 200
[2026-10-18 10:44:39,078.078 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:44:39,118.118 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:44:49,134.134 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:44:49,176.176 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:44:49,186.186 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:44:49,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:44:49,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:44:49,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:44:51,239.239 INFO    ] ================================================
[2026-10-18 10:44:51,254.254 INFO    ] Launching Daemon at Sun Oct 18 10:44:51 IST 2026
[2026-10-18 10:44:51,264.264 INFO    ] ================================================
[2026-10-18 10:44:51,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:44:51
[2026-10-18 10:44:52,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:44:52,678.678 INFO    ] Initializing speech engine...
[2026-10-18 10:44:52,687.687 INFO    ] 2026-10-18 10:44:52
[2026-10-18 10:44:52,933.933 INFO    ] 2026-10-18 10:44:52
[2026-10-18 10:44:52,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:44:53,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:44:53,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:44:53,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:44:53,485.485 INFO    ] time= 18/10/2026 10:44:53
[2026-10-18 10:44:53,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:44:53,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:44:53,640.640 INFO    ] No existing commands found in stream
[2026-10-18 10:44:58,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:44:58,665.665 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-18 10:45:02,542.542 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:45:02,546.546 INFO    ] Checking for system updates...
[2026-10-18 10:45:02,589.589 INFO    ] 200
[2026-10-18 10:45:02,592.592 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:45:02,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:45:02,675.675 INFO    ] No update needed
[2026-10-18 10:45:02,678.678 INFO    ] Checking for camera pi updates...
[2026-10-18 10:45:02,725.725 INFO    ] 200
[2026-10-18 10:45:02,728.728 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:45:02,773.773 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:45:12,788.788 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:45:12,824.824 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:45:12,834.834 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:45:12,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:45:12,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:45:12,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:45:14,887.887 INFO    ] ================================================
[2026-10-18 10:45:14,902.902 INFO    ] Launching Daemon at Sun Oct 18 10:45:14 IST 2026
[2026-10-18 10:45:14,913.913 INFO    ] ================================================
[2026-10-18 10:45:15,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:45:15
[2026-10-18 10:45:16,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:45:16,337.337 INFO    ] Initializing speech engine...
[2026-10-18 10:45:16,346.346 INFO    ] 2026-10-18 10:45:16
[2026-10-18 10:45:16,612.612 INFO    ] 2026-10-18 10:45:16
[2026-10-18 10:45:16,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:45:16,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:45:16,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:45:17,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:45:17,110.110 INFO    ] time= 18/10/2026 10:45:17
[2026-10-18 10:45:17,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:45:17,182.182 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:45:17,331.331 INFO    ] No existing commands found in stream
[2026-10-18 10:45:22,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:45:22,343.343 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-18 10:45:25,856.856 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:45:25,858.858 INFO    ] Checking for system updates...
[2026-10-18 10:45:25,893.893 INFO    ] 200
[2026-10-18 10:45:25,896.896 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:45:25,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:45:25,951.951 INFO    ] No update needed
[2026-10-18 10:45:25,953.953 INFO    ] Checking for camera pi updates...
[2026-10-18 10:45:25,988.988 INFO    ] 200
[2026-10-18 10:45:25,990.990 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:45:26,036.036 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:45:36,052.052 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:45:36,087.087 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:45:36,097.097 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:45:36,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:45:36,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:45:36,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:45:38,148.148 INFO    ] ================================================
[2026-10-18 10:45:38,164.164 INFO    ] Launching Daemon at Sun Oct 18 10:45:38 IST 2026
[2026-10-18 10:45:38,175.175 INFO    ] ================================================
[2026-10-18 10:45:38,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:45:38
[2026-10-18 10:45:39,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:45:39,667.667 INFO    ] Initializing speech engine...
[2026-10-18 10:45:39,677.677 INFO    ] 2026-10-18 10:45:39
[2026-10-18 10:45:39,975.975 INFO    ] 2026-10-18 10:45:39
[2026-10-18 10:45:40,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:45:40,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:45:40,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:45:40,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:45:40,489.489 INFO    ] time= 18/10/2026 10:45:40
[2026-10-18 10:45:40,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:45:40,608.608 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:45:40,785.785 INFO    ] No existing commands found in stream
[2026-10-18 10:45:45,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:45:45,804.804 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-18 10:45:47,632.632 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:45:47,635.635 INFO    ] Checking for system updates...
[2026-10-18 10:45:47,673.673 INFO    ] 200
[2026-10-18 10:45:47,676.676 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:45:47,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:45:47,741.741 INFO    ] No update needed
[2026-10-18 10:45:47,743.743 INFO    ] Checking for camera pi updates...
[2026-10-18 10:45:47,779.779 INFO    ] 200
[2026-10-18 10:45:47,782.782 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:45:47,828.828 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:45:57,844.844 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:45:57,880.880 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:45:57,890.890 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:45:57,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:45:57,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:45:57,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:45:59,944.944 INFO    ] ================================================
[2026-10-18 10:45:59,959.959 INFO    ] Launching Daemon at Sun Oct 18 10:45:59 IST 2026
[2026-10-18 10:45:59,969.969 INFO    ] ================================================
[2026-10-18 10:46:00,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:46:00
[2026-10-18 10:46:01,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:46:01,625.625 INFO    ] Initializing speech engine...
[2026-10-18 10:46:01,641.641 INFO    ] 2026-10-18 10:46:01
[2026-10-18 10:46:01,929.929 INFO    ] 2026-10-18 10:46:01
[2026-10-18 10:46:01,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:46:02,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:46:02,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:46:02,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:46:02,416.416 INFO    ] time= 18/10/2026 10:46:02
[2026-10-18 10:46:02,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:46:02,422.422 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:46:02,530.530 INFO    ] No existing commands found in stream
[2026-10-18 10:46:07,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:46:07,542.542 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-18 10:46:09,855.855 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:46:09,858.858 INFO    ] Checking for system updates...
[2026-10-18 10:46:09,893.893 INFO    ] 200
[2026-10-18 10:46:09,896.896 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:46:09,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:46:09,957.957 INFO    ] No update needed
[2026-10-18 10:46:09,960.960 INFO    ] Checking for camera pi updates...
[2026-10-18 10:46:09,997.997 INFO    ] 200
[2026-10-18 10:46:10,000.000 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:46:10,045.045 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:46:20,061.061 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:46:20,096.096 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:46:20,106.106 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:46:20,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:46:20,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:46:20,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:46:22,158.158 INFO    ] ================================================
[2026-10-18 10:46:22,173.173 INFO    ] Launching Daemon at Sun Oct 18 10:46:22 IST 2026
[2026-10-18 10:46:22,184.184 INFO    ] ================================================
[2026-10-18 10:46:22,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:46:22
[2026-10-18 10:46:23,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:46:23,821.821 INFO    ] Initializing speech engine...
[2026-10-18 10:46:23,828.828 INFO    ] 2026-10-18 10:46:23
[2026-10-18 10:46:24,138.138 INFO    ] 2026-10-18 10:46:24
[2026-10-18 10:46:24,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:46:24,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:46:24,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:46:24,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:46:24,860.860 INFO    ] time= 18/10/2026 10:46:24
[2026-10-18 10:46:24,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:46:24,946.946 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:46:25,086.086 INFO    ] No existing commands found in stream
[2026-10-18 10:46:30,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:46:30,108.108 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-18 10:46:31,507.507 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:46:31,510.510 INFO    ] Checking for system updates...
[2026-10-18 10:46:31,547.547 INFO    ] 200
[2026-10-18 10:46:31,550.550 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:46:31,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:46:31,606.606 INFO    ] No update needed
[2026-10-18 10:46:31,609.609 INFO    ] Checking for camera pi updates...
[2026-10-18 10:46:31,643.643 INFO    ] 200
[2026-10-18 10:46:31,646.646 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:46:31,688.688 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:46:41,703.703 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:46:41,744.744 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:46:41,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:46:41,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:46:41,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:46:41,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:46:43,818.818 INFO    ] ================================================
[2026-10-18 10:46:43,834.834 INFO    ] Launching Daemon at Sun Oct 18 10:46:43 IST 2026
[2026-10-18 10:46:43,846.846 INFO    ] ================================================
[2026-10-18 10:46:44,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:46:44
[2026-10-18 10:46:45,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:46:45,285.285 INFO    ] Initializing speech engine...
[2026-10-18 10:46:45,292.292 INFO    ] 2026-10-18 10:46:45
[2026-10-18 10:46:45,547.547 INFO    ] 2026-10-18 10:46:45
[2026-10-18 10:46:45,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:46:45,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:46:45,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:46:45,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:46:46,010.010 INFO    ] time= 18/10/2026 10:46:45
[2026-10-18 10:46:46,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:46:46,103.103 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:46:46,260.260 INFO    ] No existing commands found in stream
[2026-10-18 10:46:51,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:46:51,293.293 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-18 10:46:55,125.125 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 10:46:55,128.128 INFO    ] Checking for system updates...
[2026-10-18 10:46:55,164.164 INFO    ] 200
[2026-10-18 10:46:55,167.167 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:46:55,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:46:55,223.223 INFO    ] No update needed
[2026-10-18 10:46:55,225.225 INFO    ] Checking for camera pi updates...
[2026-10-18 10:46:55,260.260 INFO    ] 200
[2026-10-18 10:46:55,262.262 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:46:55,308.308 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:47:05,320.320 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:47:05,356.356 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:47:05,366.366 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:47:05,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:47:05,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:47:05,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:47:07,420.420 INFO    ] ================================================
[2026-10-18 10:47:07,435.435 INFO    ] Launching Daemon at Sun Oct 18 10:47:07 IST 2026
[2026-10-18 10:47:07,446.446 INFO    ] ================================================
[2026-10-18 10:47:08,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:47:08
[2026-10-18 10:47:08,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:47:08,851.851 INFO    ] Initializing speech engine...
[2026-10-18 10:47:08,864.864 INFO    ] 2026-10-18 10:47:08
[2026-10-18 10:47:09,130.130 INFO    ] 2026-10-18 10:47:09
[2026-10-18 10:47:09,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:47:09,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:47:09,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:47:09,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:47:09,616.616 INFO    ] time= 18/10/2026 10:47:09
[2026-10-18 10:47:09,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:47:09,707.707 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:47:09,827.827 INFO    ] No existing commands found in stream
[2026-10-18 10:47:14,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:47:14,851.851 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-18 10:47:16,182.182 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 10:47:16,184.184 INFO    ] Checking for system updates...
[2026-10-18 10:47:16,223.223 INFO    ] 200
[2026-10-18 10:47:16,226.226 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:47:16,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:47:16,280.280 INFO    ] No update needed
[2026-10-18 10:47:16,282.282 INFO    ] Checking for camera pi updates...
[2026-10-18 10:47:16,316.316 INFO    ] 200
[2026-10-18 10:47:16,318.318 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:47:16,362.362 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:47:26,378.378 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:47:26,412.412 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:47:26,422.422 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:47:26,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:47:26,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:47:26,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:47:28,474.474 INFO    ] ================================================
[2026-10-18 10:47:28,489.489 INFO    ] Launching Daemon at Sun Oct 18 10:47:28 IST 2026
[2026-10-18 10:47:28,500.500 INFO    ] ================================================
[2026-10-18 10:47:29,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:47:29
[2026-10-18 10:47:29,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:47:29,960.960 INFO    ] Initializing speech engine...
[2026-10-18 10:47:29,969.969 INFO    ] 2026-10-18 10:47:29
[2026-10-18 10:47:30,218.218 INFO    ] 2026-10-18 10:47:30
[2026-10-18 10:47:30,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:47:30,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:47:30,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:47:30,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:47:30,726.726 INFO    ] time= 18/10/2026 10:47:30
[2026-10-18 10:47:30,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:47:30,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:47:30,932.932 INFO    ] No existing commands found in stream
[2026-10-18 10:47:35,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:47:35,947.947 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-18 10:47:36,694.694 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 10:47:36,697.697 INFO    ] Checking for system updates...
[2026-10-18 10:47:36,737.737 INFO    ] 200
[2026-10-18 10:47:36,739.739 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:47:36,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:47:36,799.799 INFO    ] No update needed
[2026-10-18 10:47:36,802.802 INFO    ] Checking for camera pi updates...
[2026-10-18 10:47:36,835.835 INFO    ] 200
[2026-10-18 10:47:36,838.838 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:47:36,878.878 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:47:46,892.892 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:47:46,928.928 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:47:46,938.938 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:47:46,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:47:46,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:47:46,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:47:48,991.991 INFO    ] ================================================
[2026-10-18 10:47:49,006.006 INFO    ] Launching Daemon at Sun Oct 18 10:47:49 IST 2026
[2026-10-18 10:47:49,017.017 INFO    ] ================================================
[2026-10-18 10:47:49,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:47:49
[2026-10-18 10:47:50,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:47:50,423.423 INFO    ] Initializing speech engine...
[2026-10-18 10:47:50,431.431 INFO    ] 2026-10-18 10:47:50
[2026-10-18 10:47:50,724.724 INFO    ] 2026-10-18 10:47:50
[2026-10-18 10:47:50,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:47:50,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:47:50,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:47:51,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:47:51,138.138 INFO    ] time= 18/10/2026 10:47:51
[2026-10-18 10:47:51,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:47:51,166.166 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:47:51,298.298 INFO    ] No existing commands found in stream
[2026-10-18 10:47:56,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:47:56,321.321 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-18 10:48:00,488.488 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:48:00,491.491 INFO    ] Checking for system updates...
[2026-10-18 10:48:00,527.527 INFO    ] 200
[2026-10-18 10:48:00,529.529 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:48:00,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:48:00,589.589 INFO    ] No update needed
[2026-10-18 10:48:00,592.592 INFO    ] Checking for camera pi updates...
[2026-10-18 10:48:00,629.629 INFO    ] 200
[2026-10-18 10:48:00,631.631 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:48:00,675.675 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:48:10,690.690 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:48:10,724.724 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:48:10,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:48:10,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:48:10,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:48:10,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:48:12,789.789 INFO    ] ================================================
[2026-10-18 10:48:12,804.804 INFO    ] Launching Daemon at Sun Oct 18 10:48:12 IST 2026
[2026-10-18 10:48:12,815.815 INFO    ] ================================================
[2026-10-18 10:48:13,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:48:13
[2026-10-18 10:48:13,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:48:14,262.262 INFO    ] Initializing speech engine...
[2026-10-18 10:48:14,288.288 INFO    ] 2026-10-18 10:48:14
[2026-10-18 10:48:14,566.566 INFO    ] 2026-10-18 10:48:14
[2026-10-18 10:48:14,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:48:14,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:48:14,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:48:15,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:48:15,121.121 INFO    ] time= 18/10/2026 10:48:15
[2026-10-18 10:48:15,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:48:15,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:48:15,308.308 INFO    ] No existing commands found in stream
[2026-10-18 10:48:20,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:48:20,342.342 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-18 10:48:21,392.392 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:48:21,395.395 INFO    ] Checking for system updates...
[2026-10-18 10:48:21,435.435 INFO    ] 200
[2026-10-18 10:48:21,437.437 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:48:21,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:48:21,499.499 INFO    ] No update needed
[2026-10-18 10:48:21,502.502 INFO    ] Checking for camera pi updates...
[2026-10-18 10:48:21,535.535 INFO    ] 200
[2026-10-18 10:48:21,538.538 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:48:21,578.578 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:48:31,593.593 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:48:31,628.628 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:48:31,638.638 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:48:31,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:48:31,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:48:31,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:48:33,694.694 INFO    ] ================================================
[2026-10-18 10:48:33,709.709 INFO    ] Launching Daemon at Sun Oct 18 10:48:33 IST 2026
[2026-10-18 10:48:33,720.720 INFO    ] ================================================
[2026-10-18 10:48:34,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:48:34
[2026-10-18 10:48:34,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:48:35,178.178 INFO    ] Initializing speech engine...
[2026-10-18 10:48:35,184.184 INFO    ] 2026-10-18 10:48:35
[2026-10-18 10:48:35,444.444 INFO    ] 2026-10-18 10:48:35
[2026-10-18 10:48:35,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:48:35,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:48:35,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:48:35,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:48:35,999.999 INFO    ] time= 18/10/2026 10:48:35
[2026-10-18 10:48:36,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:48:36,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:48:36,141.141 INFO    ] No existing commands found in stream
[2026-10-18 10:48:41,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:48:41,165.165 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-18 10:48:43,318.318 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:48:43,566.566 INFO    ] Checking for system updates...
[2026-10-18 10:48:43,607.607 INFO    ] 200
[2026-10-18 10:48:43,610.610 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:48:43,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:48:43,674.674 INFO    ] No update needed
[2026-10-18 10:48:43,677.677 INFO    ] Checking for camera pi updates...
[2026-10-18 10:48:44,120.120 INFO    ] 200
[2026-10-18 10:48:44,123.123 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:48:44,170.170 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:48:54,187.187 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:48:54,227.227 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:48:54,239.239 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:48:54,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:48:54,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:48:54,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:48:56,296.296 INFO    ] ================================================
[2026-10-18 10:48:56,312.312 INFO    ] Launching Daemon at Sun Oct 18 10:48:56 IST 2026
[2026-10-18 10:48:56,323.323 INFO    ] ================================================
[2026-10-18 10:48:56,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:48:56
[2026-10-18 10:48:57,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:48:57,767.767 INFO    ] Initializing speech engine...
[2026-10-18 10:48:57,776.776 INFO    ] 2026-10-18 10:48:57
[2026-10-18 10:48:58,074.074 INFO    ] 2026-10-18 10:48:58
[2026-10-18 10:48:58,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:48:58,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:48:58,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:48:58,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:48:58,646.646 INFO    ] time= 18/10/2026 10:48:58
[2026-10-18 10:48:58,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:48:58,726.726 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:48:58,884.884 INFO    ] No existing commands found in stream
[2026-10-18 10:49:03,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:49:03,909.909 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-18 10:49:06,339.339 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:49:06,342.342 INFO    ] Checking for system updates...
[2026-10-18 10:49:06,379.379 INFO    ] 200
[2026-10-18 10:49:06,381.381 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:49:06,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:49:06,437.437 INFO    ] No update needed
[2026-10-18 10:49:06,440.440 INFO    ] Checking for camera pi updates...
[2026-10-18 10:49:06,479.479 INFO    ] 200
[2026-10-18 10:49:06,481.481 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:49:06,528.528 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:49:16,538.538 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:49:16,574.574 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:49:16,584.584 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:49:16,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:49:16,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:49:16,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:49:18,638.638 INFO    ] ================================================
[2026-10-18 10:49:18,654.654 INFO    ] Launching Daemon at Sun Oct 18 10:49:18 IST 2026
[2026-10-18 10:49:18,665.665 INFO    ] ================================================
[2026-10-18 10:49:19,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:49:19
[2026-10-18 10:49:20,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:49:20,360.360 INFO    ] Initializing speech engine...
[2026-10-18 10:49:20,373.373 INFO    ] 2026-10-18 10:49:20
[2026-10-18 10:49:20,661.661 INFO    ] 2026-10-18 10:49:20
[2026-10-18 10:49:20,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:49:21,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:49:21,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:49:21,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:49:21,232.232 INFO    ] time= 18/10/2026 10:49:21
[2026-10-18 10:49:21,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:49:21,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:49:21,397.397 INFO    ] No existing commands found in stream
[2026-10-18 10:49:26,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:49:26,431.431 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-18 10:49:27,301.301 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 10:49:27,304.304 INFO    ] Checking for system updates...
[2026-10-18 10:49:27,343.343 INFO    ] 200
[2026-10-18 10:49:27,347.347 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:49:27,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:49:27,413.413 INFO    ] No update needed
[2026-10-18 10:49:27,416.416 INFO    ] Checking for camera pi updates...
[2026-10-18 10:49:27,450.450 INFO    ] 200
[2026-10-18 10:49:27,453.453 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:49:27,493.493 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:49:37,508.508 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:49:37,543.543 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:49:37,553.553 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:49:37,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:49:37,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:49:37,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:49:39,606.606 INFO    ] ================================================
[2026-10-18 10:49:39,622.622 INFO    ] Launching Daemon at Sun Oct 18 10:49:39 IST 2026
[2026-10-18 10:49:39,634.634 INFO    ] ================================================
[2026-10-18 10:49:40,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:49:40
[2026-10-18 10:49:41,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:49:41,333.333 INFO    ] Initializing speech engine...
[2026-10-18 10:49:41,348.348 INFO    ] 2026-10-18 10:49:41
[2026-10-18 10:49:41,636.636 INFO    ] 2026-10-18 10:49:41
[2026-10-18 10:49:41,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:49:41,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:49:41,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:49:42,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:49:42,174.174 INFO    ] time= 18/10/2026 10:49:42
[2026-10-18 10:49:42,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:49:42,222.222 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:49:42,337.337 INFO    ] No existing commands found in stream
[2026-10-18 10:49:47,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:49:47,371.371 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-18 10:49:47,960.960 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:49:47,963.963 INFO    ] Checking for system updates...
[2026-10-18 10:49:48,000.000 INFO    ] 200
[2026-10-18 10:49:48,002.002 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:49:48,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:49:48,058.058 INFO    ] No update needed
[2026-10-18 10:49:48,061.061 INFO    ] Checking for camera pi updates...
[2026-10-18 10:49:48,094.094 INFO    ] 200
[2026-10-18 10:49:48,097.097 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:49:48,140.140 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:49:58,155.155 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:49:58,190.190 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:49:58,200.200 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:49:58,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:49:58,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:49:58,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:50:00,252.252 INFO    ] ================================================
[2026-10-18 10:50:00,268.268 INFO    ] Launching Daemon at Sun Oct 18 10:50:00 IST 2026
[2026-10-18 10:50:00,280.280 INFO    ] ================================================
[2026-10-18 10:50:00,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:50:00
[2026-10-18 10:50:01,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:50:01,721.721 INFO    ] Initializing speech engine...
[2026-10-18 10:50:01,730.730 INFO    ] 2026-10-18 10:50:01
[2026-10-18 10:50:02,041.041 INFO    ] 2026-10-18 10:50:01
[2026-10-18 10:50:02,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:50:02,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:50:02,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:50:02,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:50:02,728.728 INFO    ] time= 18/10/2026 10:50:02
[2026-10-18 10:50:02,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:50:02,735.735 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:50:02,849.849 INFO    ] No existing commands found in stream
[2026-10-18 10:50:07,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:50:07,862.862 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-18 10:50:09,194.194 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 10:50:09,197.197 INFO    ] Checking for system updates...
[2026-10-18 10:50:09,238.238 INFO    ] 200
[2026-10-18 10:50:09,241.241 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:50:09,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:50:09,305.305 INFO    ] No update needed
[2026-10-18 10:50:09,307.307 INFO    ] Checking for camera pi updates...
[2026-10-18 10:50:09,341.341 INFO    ] 200
[2026-10-18 10:50:09,343.343 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:50:09,384.384 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:50:19,399.399 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:50:19,435.435 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:50:19,445.445 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:50:19,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:50:19,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:50:19,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:50:21,497.497 INFO    ] ================================================
[2026-10-18 10:50:21,514.514 INFO    ] Launching Daemon at Sun Oct 18 10:50:21 IST 2026
[2026-10-18 10:50:21,525.525 INFO    ] ================================================
[2026-10-18 10:50:22,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:50:22
[2026-10-18 10:50:22,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:50:23,105.105 INFO    ] Initializing speech engine...
[2026-10-18 10:50:23,115.115 INFO    ] 2026-10-18 10:50:23
[2026-10-18 10:50:23,381.381 INFO    ] 2026-10-18 10:50:23
[2026-10-18 10:50:23,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:50:23,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:50:23,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:50:23,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:50:23,934.934 INFO    ] time= 18/10/2026 10:50:23
[2026-10-18 10:50:23,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:50:23,966.966 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:50:24,107.107 INFO    ] No existing commands found in stream
[2026-10-18 10:50:29,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:50:29,130.130 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-18 10:50:30,451.451 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 10:50:30,453.453 INFO    ] Checking for system updates...
[2026-10-18 10:50:30,490.490 INFO    ] 200
[2026-10-18 10:50:30,492.492 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:50:30,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:50:30,548.548 INFO    ] No update needed
[2026-10-18 10:50:30,551.551 INFO    ] Checking for camera pi updates...
[2026-10-18 10:50:30,584.584 INFO    ] 200
[2026-10-18 10:50:30,587.587 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:50:30,631.631 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:50:40,647.647 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:50:40,682.682 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:50:40,691.691 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:50:40,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:50:40,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:50:40,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:50:42,744.744 INFO    ] ================================================
[2026-10-18 10:50:42,761.761 INFO    ] Launching Daemon at Sun Oct 18 10:50:42 IST 2026
[2026-10-18 10:50:42,771.771 INFO    ] ================================================
[2026-10-18 10:50:43,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:50:43
[2026-10-18 10:50:43,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:50:44,190.190 INFO    ] Initializing speech engine...
[2026-10-18 10:50:44,196.196 INFO    ] 2026-10-18 10:50:44
[2026-10-18 10:50:44,499.499 INFO    ] 2026-10-18 10:50:44
[2026-10-18 10:50:44,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:50:44,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:50:44,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:50:45,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:50:45,017.017 INFO    ] time= 18/10/2026 10:50:45
[2026-10-18 10:50:45,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:50:45,116.116 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:50:45,226.226 INFO    ] No existing commands found in stream
[2026-10-18 10:50:50,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:50:50,241.241 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-18 10:50:51,393.393 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:50:51,396.396 INFO    ] Checking for system updates...
[2026-10-18 10:50:51,437.437 INFO    ] 200
[2026-10-18 10:50:51,440.440 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:50:51,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:50:51,498.498 INFO    ] No update needed
[2026-10-18 10:50:51,501.501 INFO    ] Checking for camera pi updates...
[2026-10-18 10:50:51,540.540 INFO    ] 200
[2026-10-18 10:50:51,543.543 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:50:51,586.586 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:51:01,606.606 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:51:01,676.676 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:51:01,688.688 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:51:01,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:51:01,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:51:01,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:51:03,751.751 INFO    ] ================================================
[2026-10-18 10:51:03,768.768 INFO    ] Launching Daemon at Sun Oct 18 10:51:03 IST 2026
[2026-10-18 10:51:03,779.779 INFO    ] ================================================
[2026-10-18 10:51:04,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:51:04
[2026-10-18 10:51:04,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:51:05,199.199 INFO    ] Initializing speech engine...
[2026-10-18 10:51:05,209.209 INFO    ] 2026-10-18 10:51:05
[2026-10-18 10:51:05,454.454 INFO    ] 2026-10-18 10:51:05
[2026-10-18 10:51:05,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:51:05,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:51:05,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:51:05,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:51:05,941.941 INFO    ] time= 18/10/2026 10:51:05
[2026-10-18 10:51:05,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:51:06,039.039 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:51:06,197.197 INFO    ] No existing commands found in stream
[2026-10-18 10:51:11,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:51:11,224.224 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-18 10:51:14,772.772 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:51:14,775.775 INFO    ] Checking for system updates...
[2026-10-18 10:51:14,811.811 INFO    ] 200
[2026-10-18 10:51:14,813.813 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:51:14,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:51:14,875.875 INFO    ] No update needed
[2026-10-18 10:51:14,877.877 INFO    ] Checking for camera pi updates...
[2026-10-18 10:51:14,915.915 INFO    ] 200
[2026-10-18 10:51:14,917.917 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:51:14,963.963 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:51:24,978.978 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:51:25,014.014 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:51:25,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:51:25,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:51:25,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:51:25,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:51:27,077.077 INFO    ] ================================================
[2026-10-18 10:51:27,092.092 INFO    ] Launching Daemon at Sun Oct 18 10:51:27 IST 2026
[2026-10-18 10:51:27,103.103 INFO    ] ================================================
[2026-10-18 10:51:27,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:51:27
[2026-10-18 10:51:28,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:51:28,560.560 INFO    ] Initializing speech engine...
[2026-10-18 10:51:28,567.567 INFO    ] 2026-10-18 10:51:28
[2026-10-18 10:51:28,865.865 INFO    ] 2026-10-18 10:51:28
[2026-10-18 10:51:28,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:51:29,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:51:29,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:51:29,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:51:29,396.396 INFO    ] time= 18/10/2026 10:51:29
[2026-10-18 10:51:29,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:51:29,485.485 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:51:29,654.654 INFO    ] No existing commands found in stream
[2026-10-18 10:51:34,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:51:34,688.688 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-18 10:51:37,079.079 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:51:37,082.082 INFO    ] Checking for system updates...
[2026-10-18 10:51:37,120.120 INFO    ] 200
[2026-10-18 10:51:37,122.122 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:51:37,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:51:37,177.177 INFO    ] No update needed
[2026-10-18 10:51:37,179.179 INFO    ] Checking for camera pi updates...
[2026-10-18 10:51:37,217.217 INFO    ] 200
[2026-10-18 10:51:37,219.219 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:51:37,259.259 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:51:47,272.272 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:51:47,307.307 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:51:47,317.317 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:51:47,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:51:47,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:51:47,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:51:49,370.370 INFO    ] ================================================
[2026-10-18 10:51:49,385.385 INFO    ] Launching Daemon at Sun Oct 18 10:51:49 IST 2026
[2026-10-18 10:51:49,396.396 INFO    ] ================================================
[2026-10-18 10:51:49,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:51:49
[2026-10-18 10:51:50,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:51:50,851.851 INFO    ] Initializing speech engine...
[2026-10-18 10:51:50,861.861 INFO    ] 2026-10-18 10:51:50
[2026-10-18 10:51:51,129.129 INFO    ] 2026-10-18 10:51:51
[2026-10-18 10:51:51,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:51:51,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:51:51,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:51:51,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:51:51,553.553 INFO    ] time= 18/10/2026 10:51:51
[2026-10-18 10:51:51,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:51:51,603.603 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:51:51,742.742 INFO    ] No existing commands found in stream
[2026-10-18 10:51:56,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:51:56,775.775 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-18 10:51:58,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:51:58,066.066 INFO    ] Checking for system updates...
[2026-10-18 10:51:58,106.106 INFO    ] 200
[2026-10-18 10:51:58,108.108 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:51:58,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:51:58,164.164 INFO    ] No update needed
[2026-10-18 10:51:58,167.167 INFO    ] Checking for camera pi updates...
[2026-10-18 10:51:58,201.201 INFO    ] 200
[2026-10-18 10:51:58,204.204 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:51:58,245.245 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:52:08,259.259 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:52:08,295.295 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:52:08,304.304 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:52:08,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:52:08,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:52:08,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:52:10,357.357 INFO    ] ================================================
[2026-10-18 10:52:10,372.372 INFO    ] Launching Daemon at Sun Oct 18 10:52:10 IST 2026
[2026-10-18 10:52:10,383.383 INFO    ] ================================================
[2026-10-18 10:52:10,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:52:10
[2026-10-18 10:52:11,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:52:11,847.847 INFO    ] Initializing speech engine...
[2026-10-18 10:52:11,854.854 INFO    ] 2026-10-18 10:52:11
[2026-10-18 10:52:12,116.116 INFO    ] 2026-10-18 10:52:12
[2026-10-18 10:52:12,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:52:12,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:52:12,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:52:12,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:52:12,659.659 INFO    ] time= 18/10/2026 10:52:12
[2026-10-18 10:52:12,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:52:12,686.686 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:52:12,815.815 INFO    ] No existing commands found in stream
[2026-10-18 10:52:17,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:52:17,837.837 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-18 10:52:21,616.616 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 10:52:21,619.619 INFO    ] Checking for system updates...
[2026-10-18 10:52:21,659.659 INFO    ] 200
[2026-10-18 10:52:21,662.662 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:52:21,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:52:21,716.716 INFO    ] No update needed
[2026-10-18 10:52:21,719.719 INFO    ] Checking for camera pi updates...
[2026-10-18 10:52:21,752.752 INFO    ] 200
[2026-10-18 10:52:21,755.755 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:52:21,795.795 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:52:31,811.811 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:52:31,848.848 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:52:31,858.858 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:52:31,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:52:31,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:52:31,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:52:33,914.914 INFO    ] ================================================
[2026-10-18 10:52:33,929.929 INFO    ] Launching Daemon at Sun Oct 18 10:52:33 IST 2026
[2026-10-18 10:52:33,941.941 INFO    ] ================================================
[2026-10-18 10:52:34,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:52:34
[2026-10-18 10:52:35,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:52:35,528.528 INFO    ] Initializing speech engine...
[2026-10-18 10:52:35,540.540 INFO    ] 2026-10-18 10:52:35
[2026-10-18 10:52:35,801.801 INFO    ] 2026-10-18 10:52:35
[2026-10-18 10:52:35,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:52:36,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:52:36,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:52:36,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:52:36,234.234 INFO    ] time= 18/10/2026 10:52:36
[2026-10-18 10:52:36,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:52:36,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:52:36,446.446 INFO    ] No existing commands found in stream
[2026-10-18 10:52:41,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:52:41,470.470 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-18 10:52:43,209.209 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:52:43,211.211 INFO    ] Checking for system updates...
[2026-10-18 10:52:43,248.248 INFO    ] 200
[2026-10-18 10:52:43,250.250 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:52:43,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:52:43,305.305 INFO    ] No update needed
[2026-10-18 10:52:43,307.307 INFO    ] Checking for camera pi updates...
[2026-10-18 10:52:43,341.341 INFO    ] 200
[2026-10-18 10:52:43,343.343 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:52:43,383.383 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:52:53,398.398 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:52:53,433.433 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:52:53,443.443 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:52:53,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:52:53,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:52:53,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:52:55,496.496 INFO    ] ================================================
[2026-10-18 10:52:55,512.512 INFO    ] Launching Daemon at Sun Oct 18 10:52:55 IST 2026
[2026-10-18 10:52:55,522.522 INFO    ] ================================================
[2026-10-18 10:52:56,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:52:56
[2026-10-18 10:52:56,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:52:56,990.990 INFO    ] Initializing speech engine...
[2026-10-18 10:52:57,003.003 INFO    ] 2026-10-18 10:52:56
[2026-10-18 10:52:57,287.287 INFO    ] 2026-10-18 10:52:57
[2026-10-18 10:52:57,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:52:57,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:52:57,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:52:57,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:52:57,710.710 INFO    ] time= 18/10/2026 10:52:57
[2026-10-18 10:52:57,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:52:57,724.724 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:52:57,878.878 INFO    ] No existing commands found in stream
[2026-10-18 10:53:02,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:53:02,911.911 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-18 10:53:05,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 10:53:05,371.371 INFO    ] Checking for system updates...
[2026-10-18 10:53:05,407.407 INFO    ] 200
[2026-10-18 10:53:05,410.410 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:53:05,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:53:05,465.465 INFO    ] No update needed
[2026-10-18 10:53:05,467.467 INFO    ] Checking for camera pi updates...
[2026-10-18 10:53:05,500.500 INFO    ] 200
[2026-10-18 10:53:05,502.502 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:53:05,551.551 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:53:15,566.566 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:53:15,601.601 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:53:15,610.610 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:53:15,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:53:15,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:53:15,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:53:17,662.662 INFO    ] ================================================
[2026-10-18 10:53:17,677.677 INFO    ] Launching Daemon at Sun Oct 18 10:53:17 IST 2026
[2026-10-18 10:53:17,689.689 INFO    ] ================================================
[2026-10-18 10:53:18,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:53:18
[2026-10-18 10:53:19,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:53:19,344.344 INFO    ] Initializing speech engine...
[2026-10-18 10:53:19,351.351 INFO    ] 2026-10-18 10:53:19
[2026-10-18 10:53:19,657.657 INFO    ] 2026-10-18 10:53:19
[2026-10-18 10:53:19,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:53:20,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:53:20,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:53:20,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:53:20,248.248 INFO    ] time= 18/10/2026 10:53:20
[2026-10-18 10:53:20,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:53:20,298.298 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:53:20,447.447 INFO    ] No existing commands found in stream
[2026-10-18 10:53:25,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:53:25,482.482 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-18 10:53:28,810.810 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 10:53:28,813.813 INFO    ] Checking for system updates...
[2026-10-18 10:53:28,856.856 INFO    ] 200
[2026-10-18 10:53:28,859.859 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:53:28,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:53:28,915.915 INFO    ] No update needed
[2026-10-18 10:53:28,918.918 INFO    ] Checking for camera pi updates...
[2026-10-18 10:53:28,953.953 INFO    ] 200
[2026-10-18 10:53:28,956.956 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:53:28,997.997 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:53:39,013.013 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:53:39,054.054 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:53:39,066.066 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:53:39,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:53:39,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:53:39,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:53:41,121.121 INFO    ] ================================================
[2026-10-18 10:53:41,136.136 INFO    ] Launching Daemon at Sun Oct 18 10:53:41 IST 2026
[2026-10-18 10:53:41,147.147 INFO    ] ================================================
[2026-10-18 10:53:41,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:53:41
[2026-10-18 10:53:42,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:53:42,565.565 INFO    ] Initializing speech engine...
[2026-10-18 10:53:42,580.580 INFO    ] 2026-10-18 10:53:42
[2026-10-18 10:53:42,872.872 INFO    ] 2026-10-18 10:53:42
[2026-10-18 10:53:42,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:53:43,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:53:43,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:53:43,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:53:43,305.305 INFO    ] time= 18/10/2026 10:53:43
[2026-10-18 10:53:43,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:53:43,317.317 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:53:43,426.426 INFO    ] No existing commands found in stream
[2026-10-18 10:53:48,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:53:48,459.459 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-18 10:53:52,320.320 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:53:52,322.322 INFO    ] Checking for system updates...
[2026-10-18 10:53:52,359.359 INFO    ] 200
[2026-10-18 10:53:52,361.361 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:53:52,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:53:52,424.424 INFO    ] No update needed
[2026-10-18 10:53:52,426.426 INFO    ] Checking for camera pi updates...
[2026-10-18 10:53:52,466.466 INFO    ] 200
[2026-10-18 10:53:52,468.468 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:53:52,508.508 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:54:02,524.524 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:54:02,566.566 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:54:02,579.579 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:54:02,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:54:02,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:54:02,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:54:04,642.642 INFO    ] ================================================
[2026-10-18 10:54:04,659.659 INFO    ] Launching Daemon at Sun Oct 18 10:54:04 IST 2026
[2026-10-18 10:54:04,671.671 INFO    ] ================================================
[2026-10-18 10:54:05,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:54:05
[2026-10-18 10:54:05,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:54:06,159.159 INFO    ] Initializing speech engine...
[2026-10-18 10:54:06,165.165 INFO    ] 2026-10-18 10:54:06
[2026-10-18 10:54:06,478.478 INFO    ] 2026-10-18 10:54:06
[2026-10-18 10:54:06,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:54:06,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:54:06,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:54:06,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:54:06,898.898 INFO    ] time= 18/10/2026 10:54:06
[2026-10-18 10:54:06,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:54:06,939.939 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:54:07,032.032 INFO    ] No existing commands found in stream
[2026-10-18 10:54:12,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:54:12,049.049 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-18 10:54:15,032.032 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 10:54:15,035.035 INFO    ] Checking for system updates...
[2026-10-18 10:54:15,101.101 INFO    ] 200
[2026-10-18 10:54:15,104.104 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:54:15,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:54:15,159.159 INFO    ] No update needed
[2026-10-18 10:54:15,161.161 INFO    ] Checking for camera pi updates...
[2026-10-18 10:54:15,195.195 INFO    ] 200
[2026-10-18 10:54:15,198.198 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:54:15,238.238 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:54:25,253.253 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:54:25,288.288 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:54:25,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:54:25,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:54:25,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:54:25,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:54:27,351.351 INFO    ] ================================================
[2026-10-18 10:54:27,366.366 INFO    ] Launching Daemon at Sun Oct 18 10:54:27 IST 2026
[2026-10-18 10:54:27,378.378 INFO    ] ================================================
[2026-10-18 10:54:27,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:54:27
[2026-10-18 10:54:28,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:54:28,789.789 INFO    ] Initializing speech engine...
[2026-10-18 10:54:28,798.798 INFO    ] 2026-10-18 10:54:28
[2026-10-18 10:54:29,097.097 INFO    ] 2026-10-18 10:54:29
[2026-10-18 10:54:29,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:54:29,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:54:29,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:54:29,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:54:29,486.486 INFO    ] time= 18/10/2026 10:54:29
[2026-10-18 10:54:29,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:54:29,526.526 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:54:29,614.614 INFO    ] No existing commands found in stream
[2026-10-18 10:54:34,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:54:34,629.629 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-18 10:54:36,703.703 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:54:36,706.706 INFO    ] Checking for system updates...
[2026-10-18 10:54:36,741.741 INFO    ] 200
[2026-10-18 10:54:36,743.743 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:54:36,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:54:36,798.798 INFO    ] No update needed
[2026-10-18 10:54:36,800.800 INFO    ] Checking for camera pi updates...
[2026-10-18 10:54:36,834.834 INFO    ] 200
[2026-10-18 10:54:36,836.836 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:54:36,886.886 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:54:46,900.900 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:54:46,935.935 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:54:46,944.944 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:54:46,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:54:46,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:54:46,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:54:49,998.998 INFO    ] ================================================
[2026-10-18 10:54:49,014.014 INFO    ] Launching Daemon at Sun Oct 18 10:54:49 IST 2026
[2026-10-18 10:54:49,027.027 INFO    ] ================================================
[2026-10-18 10:54:49,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:54:49
[2026-10-18 10:54:50,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:54:50,718.718 INFO    ] Initializing speech engine...
[2026-10-18 10:54:50,732.732 INFO    ] 2026-10-18 10:54:50
[2026-10-18 10:54:51,043.043 INFO    ] 2026-10-18 10:54:51
[2026-10-18 10:54:51,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:54:51,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:54:51,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:54:51,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:54:51,575.575 INFO    ] time= 18/10/2026 10:54:51
[2026-10-18 10:54:51,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:54:51,614.614 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:54:51,727.727 INFO    ] No existing commands found in stream
[2026-10-18 10:54:56,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:54:56,756.756 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-18 10:54:57,895.895 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:54:57,898.898 INFO    ] Checking for system updates...
[2026-10-18 10:54:57,936.936 INFO    ] 200
[2026-10-18 10:54:57,939.939 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:54:57,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:54:57,997.997 INFO    ] No update needed
[2026-10-18 10:54:58,000.000 INFO    ] Checking for camera pi updates...
[2026-10-18 10:54:58,039.039 INFO    ] 200
[2026-10-18 10:54:58,042.042 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:54:58,090.090 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:55:08,106.106 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:55:08,146.146 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:55:08,157.157 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:55:08,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:55:08,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:55:08,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:55:10,213.213 INFO    ] ================================================
[2026-10-18 10:55:10,230.230 INFO    ] Launching Daemon at Sun Oct 18 10:55:10 IST 2026
[2026-10-18 10:55:10,241.241 INFO    ] ================================================
[2026-10-18 10:55:10,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:55:10
[2026-10-18 10:55:11,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:55:11,650.650 INFO    ] Initializing speech engine...
[2026-10-18 10:55:11,657.657 INFO    ] 2026-10-18 10:55:11
[2026-10-18 10:55:11,951.951 INFO    ] 2026-10-18 10:55:11
[2026-10-18 10:55:11,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:55:12,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:55:12,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:55:12,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:55:12,362.362 INFO    ] time= 18/10/2026 10:55:12
[2026-10-18 10:55:12,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:55:12,378.378 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:55:12,489.489 INFO    ] No existing commands found in stream
[2026-10-18 10:55:17,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:55:17,517.517 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-18 10:55:18,712.712 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:55:18,715.715 INFO    ] Checking for system updates...
[2026-10-18 10:55:18,750.750 INFO    ] 200
[2026-10-18 10:55:18,752.752 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:55:18,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:55:18,807.807 INFO    ] No update needed
[2026-10-18 10:55:18,809.809 INFO    ] Checking for camera pi updates...
[2026-10-18 10:55:18,843.843 INFO    ] 200
[2026-10-18 10:55:18,845.845 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:55:18,885.885 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:55:28,900.900 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:55:28,934.934 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:55:28,944.944 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:55:28,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:55:28,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:55:28,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:55:31,997.997 INFO    ] ================================================
[2026-10-18 10:55:31,012.012 INFO    ] Launching Daemon at Sun Oct 18 10:55:31 IST 2026
[2026-10-18 10:55:31,024.024 INFO    ] ================================================
[2026-10-18 10:55:31,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:55:31
[2026-10-18 10:55:32,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:55:32,514.514 INFO    ] Initializing speech engine...
[2026-10-18 10:55:32,529.529 INFO    ] 2026-10-18 10:55:32
[2026-10-18 10:55:32,823.823 INFO    ] 2026-10-18 10:55:32
[2026-10-18 10:55:32,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:55:33,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:55:33,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:55:33,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:55:33,383.383 INFO    ] time= 18/10/2026 10:55:33
[2026-10-18 10:55:33,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:55:33,412.412 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:55:33,564.564 INFO    ] No existing commands found in stream
[2026-10-18 10:55:38,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:55:38,599.599 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-18 10:55:41,228.228 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 10:55:41,231.231 INFO    ] Checking for system updates...
[2026-10-18 10:55:41,268.268 INFO    ] 200
[2026-10-18 10:55:41,271.271 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:55:41,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:55:41,334.334 INFO    ] No update needed
[2026-10-18 10:55:41,338.338 INFO    ] Checking for camera pi updates...
[2026-10-18 10:55:41,376.376 INFO    ] 200
[2026-10-18 10:55:41,379.379 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:55:41,425.425 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:55:51,441.441 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:55:51,482.482 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:55:51,493.493 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:55:51,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:55:51,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:55:51,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:55:53,549.549 INFO    ] ================================================
[2026-10-18 10:55:53,565.565 INFO    ] Launching Daemon at Sun Oct 18 10:55:53 IST 2026
[2026-10-18 10:55:53,577.577 INFO    ] ================================================
[2026-10-18 10:55:54,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:55:54
[2026-10-18 10:55:54,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:55:55,216.216 INFO    ] Initializing speech engine...
[2026-10-18 10:55:55,228.228 INFO    ] 2026-10-18 10:55:55
[2026-10-18 10:55:55,551.551 INFO    ] 2026-10-18 10:55:55
[2026-10-18 10:55:55,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:55:55,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:55:55,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:55:56,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:55:56,120.120 INFO    ] time= 18/10/2026 10:55:56
[2026-10-18 10:55:56,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:55:56,144.144 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:55:56,259.259 INFO    ] No existing commands found in stream
[2026-10-18 10:56:01,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:56:01,285.285 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-18 10:56:05,391.391 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 10:56:05,394.394 INFO    ] Checking for system updates...
[2026-10-18 10:56:05,430.430 INFO    ] 200
[2026-10-18 10:56:05,432.432 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:56:05,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:56:05,488.488 INFO    ] No update needed
[2026-10-18 10:56:05,490.490 INFO    ] Checking for camera pi updates...
[2026-10-18 10:56:05,523.523 INFO    ] 200
[2026-10-18 10:56:05,526.526 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:56:05,578.578 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:56:15,594.594 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:56:15,630.630 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:56:15,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:56:15,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:56:15,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:56:15,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:56:17,692.692 INFO    ] ================================================
[2026-10-18 10:56:17,708.708 INFO    ] Launching Daemon at Sun Oct 18 10:56:17 IST 2026
[2026-10-18 10:56:17,719.719 INFO    ] ================================================
[2026-10-18 10:56:18,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:56:18
[2026-10-18 10:56:18,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:56:19,195.195 INFO    ] Initializing speech engine...
[2026-10-18 10:56:19,206.206 INFO    ] 2026-10-18 10:56:19
[2026-10-18 10:56:19,454.454 INFO    ] 2026-10-18 10:56:19
[2026-10-18 10:56:19,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:56:19,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:56:19,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:56:19,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:56:19,955.955 INFO    ] time= 18/10/2026 10:56:19
[2026-10-18 10:56:20,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:56:20,020.020 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:56:20,164.164 INFO    ] No existing commands found in stream
[2026-10-18 10:56:25,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:56:25,180.180 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-18 10:56:27,431.431 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 10:56:27,434.434 INFO    ] Checking for system updates...
[2026-10-18 10:56:27,470.470 INFO    ] 200
[2026-10-18 10:56:27,473.473 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:56:27,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:56:27,529.529 INFO    ] No update needed
[2026-10-18 10:56:27,532.532 INFO    ] Checking for camera pi updates...
[2026-10-18 10:56:27,567.567 INFO    ] 200
[2026-10-18 10:56:27,569.569 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:56:27,611.611 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:56:37,626.626 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:56:37,667.667 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:56:37,678.678 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:56:37,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:56:37,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:56:37,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:56:39,734.734 INFO    ] ================================================
[2026-10-18 10:56:39,751.751 INFO    ] Launching Daemon at Sun Oct 18 10:56:39 IST 2026
[2026-10-18 10:56:39,762.762 INFO    ] ================================================
[2026-10-18 10:56:40,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:56:40
[2026-10-18 10:56:41,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:56:41,366.366 INFO    ] Initializing speech engine...
[2026-10-18 10:56:41,375.375 INFO    ] 2026-10-18 10:56:41
[2026-10-18 10:56:41,661.661 INFO    ] 2026-10-18 10:56:41
[2026-10-18 10:56:41,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:56:41,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:56:41,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:56:42,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:56:42,200.200 INFO    ] time= 18/10/2026 10:56:42
[2026-10-18 10:56:42,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:56:42,244.244 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:56:42,368.368 INFO    ] No existing commands found in stream
[2026-10-18 10:56:47,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:56:47,397.397 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-18 10:56:50,270.270 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:56:50,273.273 INFO    ] Checking for system updates...
[2026-10-18 10:56:50,309.309 INFO    ] 200
[2026-10-18 10:56:50,311.311 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:56:50,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:56:50,367.367 INFO    ] No update needed
[2026-10-18 10:56:50,369.369 INFO    ] Checking for camera pi updates...
[2026-10-18 10:56:50,402.402 INFO    ] 200
[2026-10-18 10:56:50,404.404 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:56:50,446.446 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:57:00,460.460 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:57:00,495.495 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:57:00,505.505 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:57:00,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:57:00,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:57:00,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:57:02,566.566 INFO    ] ================================================
[2026-10-18 10:57:02,583.583 INFO    ] Launching Daemon at Sun Oct 18 10:57:02 IST 2026
[2026-10-18 10:57:02,599.599 INFO    ] ================================================
[2026-10-18 10:57:03,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:57:03
[2026-10-18 10:57:03,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:57:04,207.207 INFO    ] Initializing speech engine...
[2026-10-18 10:57:04,218.218 INFO    ] 2026-10-18 10:57:04
[2026-10-18 10:57:04,507.507 INFO    ] 2026-10-18 10:57:04
[2026-10-18 10:57:04,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:57:04,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:57:04,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:57:05,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:57:05,060.060 INFO    ] time= 18/10/2026 10:57:05
[2026-10-18 10:57:05,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:57:05,089.089 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:57:05,246.246 INFO    ] No existing commands found in stream
[2026-10-18 10:57:10,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:57:10,280.280 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-18 10:57:14,394.394 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:57:14,397.397 INFO    ] Checking for system updates...
[2026-10-18 10:57:14,434.434 INFO    ] 200
[2026-10-18 10:57:14,437.437 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:57:14,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:57:14,495.495 INFO    ] No update needed
[2026-10-18 10:57:14,498.498 INFO    ] Checking for camera pi updates...
[2026-10-18 10:57:14,534.534 INFO    ] 200
[2026-10-18 10:57:14,537.537 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:57:14,580.580 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:57:24,597.597 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:57:24,638.638 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:57:24,649.649 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:57:24,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:57:24,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:57:24,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:57:26,707.707 INFO    ] ================================================
[2026-10-18 10:57:26,723.723 INFO    ] Launching Daemon at Sun Oct 18 10:57:26 IST 2026
[2026-10-18 10:57:26,735.735 INFO    ] ================================================
[2026-10-18 10:57:27,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:57:27
[2026-10-18 10:57:28,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:57:28,427.427 INFO    ] Initializing speech engine...
[2026-10-18 10:57:28,439.439 INFO    ] 2026-10-18 10:57:28
[2026-10-18 10:57:28,732.732 INFO    ] 2026-10-18 10:57:28
[2026-10-18 10:57:28,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:57:29,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:57:29,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:57:29,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:57:29,277.277 INFO    ] time= 18/10/2026 10:57:29
[2026-10-18 10:57:29,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:57:29,326.326 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:57:29,436.436 INFO    ] No existing commands found in stream
[2026-10-18 10:57:34,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:57:34,465.465 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-18 10:57:38,860.860 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:57:38,863.863 INFO    ] Checking for system updates...
[2026-10-18 10:57:38,900.900 INFO    ] 200
[2026-10-18 10:57:38,903.903 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:57:38,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:57:38,968.968 INFO    ] No update needed
[2026-10-18 10:57:38,971.971 INFO    ] Checking for camera pi updates...
[2026-10-18 10:57:39,012.012 INFO    ] 200
[2026-10-18 10:57:39,015.015 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:57:39,057.057 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:57:49,073.073 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:57:49,115.115 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:57:49,126.126 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:57:49,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:57:49,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:57:49,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:57:51,184.184 INFO    ] ================================================
[2026-10-18 10:57:51,199.199 INFO    ] Launching Daemon at Sun Oct 18 10:57:51 IST 2026
[2026-10-18 10:57:51,211.211 INFO    ] ================================================
[2026-10-18 10:57:51,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:57:51
[2026-10-18 10:57:52,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:57:52,802.802 INFO    ] Initializing speech engine...
[2026-10-18 10:57:52,811.811 INFO    ] 2026-10-18 10:57:52
[2026-10-18 10:57:53,095.095 INFO    ] 2026-10-18 10:57:53
[2026-10-18 10:57:53,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:57:53,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:57:53,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:57:53,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:57:53,654.654 INFO    ] time= 18/10/2026 10:57:53
[2026-10-18 10:57:53,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:57:53,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:57:53,837.837 INFO    ] No existing commands found in stream
[2026-10-18 10:57:58,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:57:58,872.872 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-18 10:58:00,083.083 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:58:00,087.087 INFO    ] Checking for system updates...
[2026-10-18 10:58:00,123.123 INFO    ] 200
[2026-10-18 10:58:00,126.126 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:58:00,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:58:00,193.193 INFO    ] No update needed
[2026-10-18 10:58:00,197.197 INFO    ] Checking for camera pi updates...
[2026-10-18 10:58:00,240.240 INFO    ] 200
[2026-10-18 10:58:00,243.243 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:58:00,292.292 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:58:10,310.310 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:58:10,350.350 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:58:10,361.361 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:58:10,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:58:10,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:58:10,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:58:12,416.416 INFO    ] ================================================
[2026-10-18 10:58:12,432.432 INFO    ] Launching Daemon at Sun Oct 18 10:58:12 IST 2026
[2026-10-18 10:58:12,444.444 INFO    ] ================================================
[2026-10-18 10:58:13,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:58:13
[2026-10-18 10:58:13,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:58:13,850.850 INFO    ] Initializing speech engine...
[2026-10-18 10:58:13,855.855 INFO    ] 2026-10-18 10:58:13
[2026-10-18 10:58:14,155.155 INFO    ] 2026-10-18 10:58:14
[2026-10-18 10:58:14,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:58:14,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:58:14,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:58:14,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:58:14,653.653 INFO    ] time= 18/10/2026 10:58:14
[2026-10-18 10:58:14,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:58:14,741.741 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:58:14,834.834 INFO    ] No existing commands found in stream
[2026-10-18 10:58:19,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:58:19,866.866 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-18 10:58:24,038.038 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 10:58:24,041.041 INFO    ] Checking for system updates...
[2026-10-18 10:58:24,077.077 INFO    ] 200
[2026-10-18 10:58:24,079.079 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:58:24,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:58:24,135.135 INFO    ] No update needed
[2026-10-18 10:58:24,137.137 INFO    ] Checking for camera pi updates...
[2026-10-18 10:58:24,170.170 INFO    ] 200
[2026-10-18 10:58:24,173.173 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:58:24,212.212 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:58:34,226.226 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:58:34,260.260 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:58:34,270.270 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:58:34,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:58:34,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:58:34,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:58:36,323.323 INFO    ] ================================================
[2026-10-18 10:58:36,343.343 INFO    ] Launching Daemon at Sun Oct 18 10:58:36 IST 2026
[2026-10-18 10:58:36,354.354 INFO    ] ================================================
[2026-10-18 10:58:36,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:58:36
[2026-10-18 10:58:37,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:58:37,773.773 INFO    ] Initializing speech engine...
[2026-10-18 10:58:37,793.793 INFO    ] 2026-10-18 10:58:37
[2026-10-18 10:58:38,043.043 INFO    ] 2026-10-18 10:58:38
[2026-10-18 10:58:38,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:58:38,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:58:38,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:58:38,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:58:38,611.611 INFO    ] time= 18/10/2026 10:58:38
[2026-10-18 10:58:38,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:58:38,635.635 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:58:38,769.769 INFO    ] No existing commands found in stream
[2026-10-18 10:58:43,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:58:43,784.784 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-18 10:58:46,502.502 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 10:58:46,505.505 INFO    ] Checking for system updates...
[2026-10-18 10:58:46,542.542 INFO    ] 200
[2026-10-18 10:58:46,545.545 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:58:46,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:58:46,602.602 INFO    ] No update needed
[2026-10-18 10:58:46,605.605 INFO    ] Checking for camera pi updates...
[2026-10-18 10:58:46,639.639 INFO    ] 200
[2026-10-18 10:58:46,642.642 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:58:46,684.684 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:58:56,701.701 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:58:56,741.741 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:58:56,753.753 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:58:56,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:58:56,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:58:56,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:58:58,812.812 INFO    ] ================================================
[2026-10-18 10:58:58,827.827 INFO    ] Launching Daemon at Sun Oct 18 10:58:58 IST 2026
[2026-10-18 10:58:58,838.838 INFO    ] ================================================
[2026-10-18 10:58:59,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:58:59
[2026-10-18 10:59:00,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:59:00,302.302 INFO    ] Initializing speech engine...
[2026-10-18 10:59:00,308.308 INFO    ] 2026-10-18 10:59:00
[2026-10-18 10:59:00,568.568 INFO    ] 2026-10-18 10:59:00
[2026-10-18 10:59:00,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:59:00,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:59:00,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:59:01,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:59:01,115.115 INFO    ] time= 18/10/2026 10:59:01
[2026-10-18 10:59:01,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:59:01,142.142 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:59:01,272.272 INFO    ] No existing commands found in stream
[2026-10-18 10:59:06,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:59:06,298.298 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-18 10:59:10,695.695 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 10:59:10,698.698 INFO    ] Checking for system updates...
[2026-10-18 10:59:10,738.738 INFO    ] 200
[2026-10-18 10:59:10,741.741 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:59:10,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 10:59:10,795.795 INFO    ] No update needed
[2026-10-18 10:59:10,798.798 INFO    ] Checking for camera pi updates...
[2026-10-18 10:59:10,832.832 INFO    ] 200
[2026-10-18 10:59:10,835.835 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:59:10,875.875 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:59:20,886.886 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:59:20,921.921 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:59:20,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:59:20,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:59:20,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:59:20,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:59:22,985.985 INFO    ] ================================================
[2026-10-18 10:59:23,000.000 INFO    ] Launching Daemon at Sun Oct 18 10:59:22 IST 2026
[2026-10-18 10:59:23,011.011 INFO    ] ================================================
[2026-10-18 10:59:23,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:59:23
[2026-10-18 10:59:24,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:59:24,537.537 INFO    ] Initializing speech engine...
[2026-10-18 10:59:24,547.547 INFO    ] 2026-10-18 10:59:24
[2026-10-18 10:59:24,792.792 INFO    ] 2026-10-18 10:59:24
[2026-10-18 10:59:24,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:59:25,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:59:25,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:59:25,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:59:25,223.223 INFO    ] time= 18/10/2026 10:59:25
[2026-10-18 10:59:25,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:59:25,301.301 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:59:25,433.433 INFO    ] No existing commands found in stream
[2026-10-18 10:59:30,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:59:30,461.461 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-18 10:59:33,648.648 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:59:33,650.650 INFO    ] Checking for system updates...
[2026-10-18 10:59:33,687.687 INFO    ] 200
[2026-10-18 10:59:33,689.689 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:59:33,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:59:33,744.744 INFO    ] No update needed
[2026-10-18 10:59:33,747.747 INFO    ] Checking for camera pi updates...
[2026-10-18 10:59:33,780.780 INFO    ] 200
[2026-10-18 10:59:33,783.783 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:59:33,823.823 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 10:59:43,838.838 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 10:59:43,873.873 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 10:59:43,882.882 INFO    ] Script finished. Safe exiting...
[2026-10-18 10:59:43,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 10:59:43,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 10:59:43,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 10:59:45,934.934 INFO    ] ================================================
[2026-10-18 10:59:45,949.949 INFO    ] Launching Daemon at Sun Oct 18 10:59:45 IST 2026
[2026-10-18 10:59:45,960.960 INFO    ] ================================================
[2026-10-18 10:59:46,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 10:59:46
[2026-10-18 10:59:47,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 10:59:47,433.433 INFO    ] Initializing speech engine...
[2026-10-18 10:59:47,450.450 INFO    ] 2026-10-18 10:59:47
[2026-10-18 10:59:47,708.708 INFO    ] 2026-10-18 10:59:47
[2026-10-18 10:59:47,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 10:59:48,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 10:59:48,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 10:59:48,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 10:59:48,297.297 INFO    ] time= 18/10/2026 10:59:48
[2026-10-18 10:59:48,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 10:59:48,321.321 INFO    ] Checking for existing commands in stream...
[2026-10-18 10:59:48,446.446 INFO    ] No existing commands found in stream
[2026-10-18 10:59:53,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 10:59:53,464.464 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-18 10:59:55,635.635 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 10:59:55,638.638 INFO    ] Checking for system updates...
[2026-10-18 10:59:55,674.674 INFO    ] 200
[2026-10-18 10:59:55,677.677 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:59:55,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 10:59:55,733.733 INFO    ] No update needed
[2026-10-18 10:59:55,736.736 INFO    ] Checking for camera pi updates...
[2026-10-18 10:59:55,769.769 INFO    ] 200
[2026-10-18 10:59:55,772.772 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 10:59:55,812.812 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:00:05,826.826 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:00:05,938.938 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:00:05,962.962 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:00:05,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:00:05,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:00:06,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:00:08,061.061 INFO    ] ================================================
[2026-10-18 11:00:08,076.076 INFO    ] Launching Daemon at Sun Oct 18 11:00:08 IST 2026
[2026-10-18 11:00:08,087.087 INFO    ] ================================================
[2026-10-18 11:00:08,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:00:08
[2026-10-18 11:00:09,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:00:09,550.550 INFO    ] Initializing speech engine...
[2026-10-18 11:00:09,561.561 INFO    ] 2026-10-18 11:00:09
[2026-10-18 11:00:09,868.868 INFO    ] 2026-10-18 11:00:09
[2026-10-18 11:00:09,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:00:10,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:00:10,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:00:10,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:00:10,366.366 INFO    ] time= 18/10/2026 11:00:10
[2026-10-18 11:00:10,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:00:10,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:00:10,518.518 INFO    ] No existing commands found in stream
[2026-10-18 11:00:15,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:00:15,531.531 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-18 11:00:16,110.110 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:00:16,112.112 INFO    ] Checking for system updates...
[2026-10-18 11:00:16,153.153 INFO    ] 200
[2026-10-18 11:00:16,156.156 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:00:16,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:00:16,219.219 INFO    ] No update needed
[2026-10-18 11:00:16,221.221 INFO    ] Checking for camera pi updates...
[2026-10-18 11:00:16,256.256 INFO    ] 200
[2026-10-18 11:00:16,258.258 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:00:16,300.300 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:00:26,316.316 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:00:26,350.350 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:00:26,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:00:26,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:00:26,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:00:26,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:00:28,414.414 INFO    ] ================================================
[2026-10-18 11:00:28,430.430 INFO    ] Launching Daemon at Sun Oct 18 11:00:28 IST 2026
[2026-10-18 11:00:28,442.442 INFO    ] ================================================
[2026-10-18 11:00:29,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:00:29
[2026-10-18 11:00:29,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:00:29,860.860 INFO    ] Initializing speech engine...
[2026-10-18 11:00:29,873.873 INFO    ] 2026-10-18 11:00:29
[2026-10-18 11:00:30,140.140 INFO    ] 2026-10-18 11:00:30
[2026-10-18 11:00:30,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:00:30,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:00:30,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:00:30,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:00:30,631.631 INFO    ] time= 18/10/2026 11:00:30
[2026-10-18 11:00:30,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:00:30,717.717 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:00:30,869.869 INFO    ] No existing commands found in stream
[2026-10-18 11:00:35,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:00:35,891.891 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-18 11:00:39,817.817 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:00:39,820.820 INFO    ] Checking for system updates...
[2026-10-18 11:00:39,856.856 INFO    ] 200
[2026-10-18 11:00:39,859.859 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:00:39,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:00:39,915.915 INFO    ] No update needed
[2026-10-18 11:00:39,918.918 INFO    ] Checking for camera pi updates...
[2026-10-18 11:00:39,952.952 INFO    ] 200
[2026-10-18 11:00:39,955.955 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:00:39,996.996 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:00:50,012.012 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:00:50,046.046 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:00:50,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:00:50,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:00:50,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:00:50,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:00:52,109.109 INFO    ] ================================================
[2026-10-18 11:00:52,124.124 INFO    ] Launching Daemon at Sun Oct 18 11:00:52 IST 2026
[2026-10-18 11:00:52,136.136 INFO    ] ================================================
[2026-10-18 11:00:52,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:00:52
[2026-10-18 11:00:53,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:00:53,741.741 INFO    ] Initializing speech engine...
[2026-10-18 11:00:53,750.750 INFO    ] 2026-10-18 11:00:53
[2026-10-18 11:00:54,017.017 INFO    ] 2026-10-18 11:00:53
[2026-10-18 11:00:54,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:00:54,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:00:54,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:00:54,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:00:54,509.509 INFO    ] time= 18/10/2026 11:00:54
[2026-10-18 11:00:54,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:00:54,618.618 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:00:54,801.801 INFO    ] No existing commands found in stream
[2026-10-18 11:00:59,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:00:59,830.830 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-18 11:01:02,451.451 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 11:01:02,454.454 INFO    ] Checking for system updates...
[2026-10-18 11:01:02,501.501 INFO    ] 200
[2026-10-18 11:01:02,504.504 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:01:02,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:01:02,571.571 INFO    ] No update needed
[2026-10-18 11:01:02,575.575 INFO    ] Checking for camera pi updates...
[2026-10-18 11:01:02,626.626 INFO    ] 200
[2026-10-18 11:01:02,629.629 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:01:02,688.688 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:01:12,704.704 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:01:12,740.740 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:01:12,749.749 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:01:12,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:01:12,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:01:12,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:01:14,802.802 INFO    ] ================================================
[2026-10-18 11:01:14,817.817 INFO    ] Launching Daemon at Sun Oct 18 11:01:14 IST 2026
[2026-10-18 11:01:14,828.828 INFO    ] ================================================
[2026-10-18 11:01:15,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:01:15
[2026-10-18 11:01:16,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:01:16,478.478 INFO    ] Initializing speech engine...
[2026-10-18 11:01:16,492.492 INFO    ] 2026-10-18 11:01:16
[2026-10-18 11:01:16,812.812 INFO    ] 2026-10-18 11:01:16
[2026-10-18 11:01:16,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:01:17,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:01:17,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:01:17,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:01:17,329.329 INFO    ] time= 18/10/2026 11:01:17
[2026-10-18 11:01:17,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:01:17,367.367 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:01:17,494.494 INFO    ] No existing commands found in stream
[2026-10-18 11:01:22,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:01:22,529.529 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-18 11:01:25,823.823 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:01:25,826.826 INFO    ] Checking for system updates...
[2026-10-18 11:01:25,863.863 INFO    ] 200
[2026-10-18 11:01:25,866.866 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:01:25,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:01:25,924.924 INFO    ] No update needed
[2026-10-18 11:01:25,926.926 INFO    ] Checking for camera pi updates...
[2026-10-18 11:01:25,966.966 INFO    ] 200
[2026-10-18 11:01:25,969.969 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:01:26,010.010 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:01:36,027.027 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:01:36,067.067 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:01:36,078.078 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:01:36,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:01:36,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:01:36,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:01:38,133.133 INFO    ] ================================================
[2026-10-18 11:01:38,148.148 INFO    ] Launching Daemon at Sun Oct 18 11:01:38 IST 2026
[2026-10-18 11:01:38,159.159 INFO    ] ================================================
[2026-10-18 11:01:38,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:01:38
[2026-10-18 11:01:39,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:01:39,591.591 INFO    ] Initializing speech engine...
[2026-10-18 11:01:39,609.609 INFO    ] 2026-10-18 11:01:39
[2026-10-18 11:01:39,863.863 INFO    ] 2026-10-18 11:01:39
[2026-10-18 11:01:39,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:01:40,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:01:40,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:01:40,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:01:40,418.418 INFO    ] time= 18/10/2026 11:01:40
[2026-10-18 11:01:40,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:01:40,445.445 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:01:40,613.613 INFO    ] No existing commands found in stream
[2026-10-18 11:01:45,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:01:45,651.651 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-18 11:01:48,640.640 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:01:48,643.643 INFO    ] Checking for system updates...
[2026-10-18 11:01:48,678.678 INFO    ] 200
[2026-10-18 11:01:48,680.680 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:01:48,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:01:48,734.734 INFO    ] No update needed
[2026-10-18 11:01:48,737.737 INFO    ] Checking for camera pi updates...
[2026-10-18 11:01:48,770.770 INFO    ] 200
[2026-10-18 11:01:48,773.773 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:01:48,815.815 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:01:58,829.829 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:01:58,864.864 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:01:58,874.874 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:01:58,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:01:58,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:01:58,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:02:00,928.928 INFO    ] ================================================
[2026-10-18 11:02:00,943.943 INFO    ] Launching Daemon at Sun Oct 18 11:02:00 IST 2026
[2026-10-18 11:02:00,953.953 INFO    ] ================================================
[2026-10-18 11:02:01,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:02:01
[2026-10-18 11:02:02,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:02:02,684.684 INFO    ] Initializing speech engine...
[2026-10-18 11:02:02,694.694 INFO    ] 2026-10-18 11:02:02
[2026-10-18 11:02:03,042.042 INFO    ] 2026-10-18 11:02:03
[2026-10-18 11:02:03,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:02:03,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:02:03,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:02:03,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:02:03,617.617 INFO    ] time= 18/10/2026 11:02:03
[2026-10-18 11:02:03,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:02:03,674.674 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:02:03,806.806 INFO    ] No existing commands found in stream
[2026-10-18 11:02:08,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:02:08,832.832 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-18 11:02:10,558.558 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:02:10,561.561 INFO    ] Checking for system updates...
[2026-10-18 11:02:10,600.600 INFO    ] 200
[2026-10-18 11:02:10,602.602 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:02:10,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:02:10,658.658 INFO    ] No update needed
[2026-10-18 11:02:10,660.660 INFO    ] Checking for camera pi updates...
[2026-10-18 11:02:10,697.697 INFO    ] 200
[2026-10-18 11:02:10,700.700 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:02:10,745.745 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:02:20,760.760 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:02:20,795.795 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:02:20,804.804 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:02:20,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:02:20,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:02:20,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:02:22,857.857 INFO    ] ================================================
[2026-10-18 11:02:22,872.872 INFO    ] Launching Daemon at Sun Oct 18 11:02:22 IST 2026
[2026-10-18 11:02:22,891.891 INFO    ] ================================================
[2026-10-18 11:02:23,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:02:23
[2026-10-18 11:02:24,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:02:24,312.312 INFO    ] Initializing speech engine...
[2026-10-18 11:02:24,321.321 INFO    ] 2026-10-18 11:02:24
[2026-10-18 11:02:24,580.580 INFO    ] 2026-10-18 11:02:24
[2026-10-18 11:02:24,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:02:24,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:02:24,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:02:25,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:02:25,067.067 INFO    ] time= 18/10/2026 11:02:25
[2026-10-18 11:02:25,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:02:25,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:02:25,292.292 INFO    ] No existing commands found in stream
[2026-10-18 11:02:30,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:02:30,320.320 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-18 11:02:32,976.976 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 11:02:32,979.979 INFO    ] Checking for system updates...
[2026-10-18 11:02:33,017.017 INFO    ] 200
[2026-10-18 11:02:33,019.019 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:02:33,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:02:33,079.079 INFO    ] No update needed
[2026-10-18 11:02:33,082.082 INFO    ] Checking for camera pi updates...
[2026-10-18 11:02:33,118.118 INFO    ] 200
[2026-10-18 11:02:33,121.121 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:02:33,166.166 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:02:43,181.181 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:02:43,215.215 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:02:43,225.225 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:02:43,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:02:43,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:02:43,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:02:45,278.278 INFO    ] ================================================
[2026-10-18 11:02:45,293.293 INFO    ] Launching Daemon at Sun Oct 18 11:02:45 IST 2026
[2026-10-18 11:02:45,305.305 INFO    ] ================================================
[2026-10-18 11:02:45,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:02:45
[2026-10-18 11:02:46,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:02:46,917.917 INFO    ] Initializing speech engine...
[2026-10-18 11:02:46,929.929 INFO    ] 2026-10-18 11:02:46
[2026-10-18 11:02:47,241.241 INFO    ] 2026-10-18 11:02:47
[2026-10-18 11:02:47,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:02:47,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:02:47,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:02:47,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:02:47,759.759 INFO    ] time= 18/10/2026 11:02:47
[2026-10-18 11:02:47,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:02:47,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:02:47,912.912 INFO    ] No existing commands found in stream
[2026-10-18 11:02:52,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:02:52,946.946 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-18 11:02:53,838.838 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 11:02:53,841.841 INFO    ] Checking for system updates...
[2026-10-18 11:02:53,877.877 INFO    ] 200
[2026-10-18 11:02:53,880.880 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:02:53,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:02:53,935.935 INFO    ] No update needed
[2026-10-18 11:02:53,938.938 INFO    ] Checking for camera pi updates...
[2026-10-18 11:02:53,972.972 INFO    ] 200
[2026-10-18 11:02:53,975.975 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:02:54,018.018 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:03:04,032.032 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:03:04,071.071 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:03:04,082.082 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:03:04,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:03:04,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:03:04,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:03:06,137.137 INFO    ] ================================================
[2026-10-18 11:03:06,153.153 INFO    ] Launching Daemon at Sun Oct 18 11:03:06 IST 2026
[2026-10-18 11:03:06,163.163 INFO    ] ================================================
[2026-10-18 11:03:06,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:03:06
[2026-10-18 11:03:07,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:03:07,622.622 INFO    ] Initializing speech engine...
[2026-10-18 11:03:07,646.646 INFO    ] 2026-10-18 11:03:07
[2026-10-18 11:03:07,909.909 INFO    ] 2026-10-18 11:03:07
[2026-10-18 11:03:07,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:03:08,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:03:08,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:03:08,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:03:08,471.471 INFO    ] time= 18/10/2026 11:03:08
[2026-10-18 11:03:08,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:03:08,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:03:08,632.632 INFO    ] No existing commands found in stream
[2026-10-18 11:03:13,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:03:13,663.663 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-18 11:03:18,055.055 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:03:18,058.058 INFO    ] Checking for system updates...
[2026-10-18 11:03:18,096.096 INFO    ] 200
[2026-10-18 11:03:18,099.099 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:03:18,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:03:18,157.157 INFO    ] No update needed
[2026-10-18 11:03:18,159.159 INFO    ] Checking for camera pi updates...
[2026-10-18 11:03:18,195.195 INFO    ] 200
[2026-10-18 11:03:18,198.198 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:03:18,239.239 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:03:28,254.254 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:03:28,290.290 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:03:28,299.299 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:03:28,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:03:28,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:03:28,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:03:30,351.351 INFO    ] ================================================
[2026-10-18 11:03:30,367.367 INFO    ] Launching Daemon at Sun Oct 18 11:03:30 IST 2026
[2026-10-18 11:03:30,377.377 INFO    ] ================================================
[2026-10-18 11:03:30,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:03:30
[2026-10-18 11:03:31,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:03:31,799.799 INFO    ] Initializing speech engine...
[2026-10-18 11:03:31,817.817 INFO    ] 2026-10-18 11:03:31
[2026-10-18 11:03:32,100.100 INFO    ] 2026-10-18 11:03:32
[2026-10-18 11:03:32,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:03:32,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:03:32,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:03:32,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:03:32,535.535 INFO    ] time= 18/10/2026 11:03:32
[2026-10-18 11:03:32,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:03:32,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:03:32,725.725 INFO    ] No existing commands found in stream
[2026-10-18 11:03:37,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:03:37,753.753 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-18 11:03:38,827.827 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:03:38,829.829 INFO    ] Checking for system updates...
[2026-10-18 11:03:38,865.865 INFO    ] 200
[2026-10-18 11:03:38,868.868 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:03:38,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:03:38,922.922 INFO    ] No update needed
[2026-10-18 11:03:38,924.924 INFO    ] Checking for camera pi updates...
[2026-10-18 11:03:38,957.957 INFO    ] 200
[2026-10-18 11:03:38,960.960 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:03:38,999.999 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:03:49,014.014 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:03:49,049.049 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:03:49,059.059 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:03:49,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:03:49,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:03:49,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:03:51,111.111 INFO    ] ================================================
[2026-10-18 11:03:51,127.127 INFO    ] Launching Daemon at Sun Oct 18 11:03:51 IST 2026
[2026-10-18 11:03:51,138.138 INFO    ] ================================================
[2026-10-18 11:03:51,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:03:51
[2026-10-18 11:03:52,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:03:52,748.748 INFO    ] Initializing speech engine...
[2026-10-18 11:03:52,756.756 INFO    ] 2026-10-18 11:03:52
[2026-10-18 11:03:53,028.028 INFO    ] 2026-10-18 11:03:53
[2026-10-18 11:03:53,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:03:53,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:03:53,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:03:53,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:03:53,553.553 INFO    ] time= 18/10/2026 11:03:53
[2026-10-18 11:03:53,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:03:53,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:03:53,793.793 INFO    ] No existing commands found in stream
[2026-10-18 11:03:58,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:03:58,821.821 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-18 11:04:00,194.194 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:04:00,196.196 INFO    ] Checking for system updates...
[2026-10-18 11:04:00,231.231 INFO    ] 200
[2026-10-18 11:04:00,234.234 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:04:00,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:04:00,293.293 INFO    ] No update needed
[2026-10-18 11:04:00,295.295 INFO    ] Checking for camera pi updates...
[2026-10-18 11:04:00,334.334 INFO    ] 200
[2026-10-18 11:04:00,337.337 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:04:00,377.377 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:04:10,389.389 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:04:10,424.424 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:04:10,433.433 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:04:10,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:04:10,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:04:10,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:04:12,486.486 INFO    ] ================================================
[2026-10-18 11:04:12,501.501 INFO    ] Launching Daemon at Sun Oct 18 11:04:12 IST 2026
[2026-10-18 11:04:12,513.513 INFO    ] ================================================
[2026-10-18 11:04:13,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:04:13
[2026-10-18 11:04:13,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:04:13,917.917 INFO    ] Initializing speech engine...
[2026-10-18 11:04:13,922.922 INFO    ] 2026-10-18 11:04:13
[2026-10-18 11:04:14,194.194 INFO    ] 2026-10-18 11:04:14
[2026-10-18 11:04:14,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:04:14,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:04:14,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:04:14,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:04:14,678.678 INFO    ] time= 18/10/2026 11:04:14
[2026-10-18 11:04:14,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:04:14,772.772 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:04:14,918.918 INFO    ] No existing commands found in stream
[2026-10-18 11:04:19,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:04:19,938.938 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-18 11:04:24,301.301 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:04:24,304.304 INFO    ] Checking for system updates...
[2026-10-18 11:04:24,342.342 INFO    ] 200
[2026-10-18 11:04:24,344.344 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:04:24,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:04:24,401.401 INFO    ] No update needed
[2026-10-18 11:04:24,404.404 INFO    ] Checking for camera pi updates...
[2026-10-18 11:04:24,438.438 INFO    ] 200
[2026-10-18 11:04:24,440.440 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:04:24,481.481 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:04:34,493.493 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:04:34,528.528 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:04:34,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:04:34,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:04:34,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:04:34,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:04:36,591.591 INFO    ] ================================================
[2026-10-18 11:04:36,607.607 INFO    ] Launching Daemon at Sun Oct 18 11:04:36 IST 2026
[2026-10-18 11:04:36,619.619 INFO    ] ================================================
[2026-10-18 11:04:37,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:04:37
[2026-10-18 11:04:37,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:04:38,095.095 INFO    ] Initializing speech engine...
[2026-10-18 11:04:38,112.112 INFO    ] 2026-10-18 11:04:38
[2026-10-18 11:04:38,378.378 INFO    ] 2026-10-18 11:04:38
[2026-10-18 11:04:38,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:04:38,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:04:38,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:04:38,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:04:38,793.793 INFO    ] time= 18/10/2026 11:04:38
[2026-10-18 11:04:38,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:04:38,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:04:38,945.945 INFO    ] No existing commands found in stream
[2026-10-18 11:04:43,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:04:43,972.972 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-18 11:04:47,181.181 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:04:47,183.183 INFO    ] Checking for system updates...
[2026-10-18 11:04:47,220.220 INFO    ] 200
[2026-10-18 11:04:47,223.223 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:04:47,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:04:47,284.284 INFO    ] No update needed
[2026-10-18 11:04:47,286.286 INFO    ] Checking for camera pi updates...
[2026-10-18 11:04:47,320.320 INFO    ] 200
[2026-10-18 11:04:47,322.322 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:04:47,365.365 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:04:57,380.380 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:04:57,415.415 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:04:57,424.424 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:04:57,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:04:57,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:04:57,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:04:59,477.477 INFO    ] ================================================
[2026-10-18 11:04:59,493.493 INFO    ] Launching Daemon at Sun Oct 18 11:04:59 IST 2026
[2026-10-18 11:04:59,505.505 INFO    ] ================================================
[2026-10-18 11:05:00,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:05:00
[2026-10-18 11:05:00,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:05:00,973.973 INFO    ] Initializing speech engine...
[2026-10-18 11:05:00,979.979 INFO    ] 2026-10-18 11:05:00
[2026-10-18 11:05:01,222.222 INFO    ] 2026-10-18 11:05:01
[2026-10-18 11:05:01,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:05:01,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:05:01,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:05:01,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:05:01,780.780 INFO    ] time= 18/10/2026 11:05:01
[2026-10-18 11:05:01,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:05:01,804.804 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:05:01,915.915 INFO    ] No existing commands found in stream
[2026-10-18 11:05:06,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:05:06,929.929 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-18 11:05:09,821.821 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:05:09,823.823 INFO    ] Checking for system updates...
[2026-10-18 11:05:09,863.863 INFO    ] 200
[2026-10-18 11:05:09,865.865 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:05:09,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:05:09,921.921 INFO    ] No update needed
[2026-10-18 11:05:09,923.923 INFO    ] Checking for camera pi updates...
[2026-10-18 11:05:09,957.957 INFO    ] 200
[2026-10-18 11:05:09,960.960 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:05:10,000.000 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:05:20,016.016 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:05:20,050.050 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:05:20,060.060 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:05:20,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:05:20,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:05:20,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:05:22,115.115 INFO    ] ================================================
[2026-10-18 11:05:22,130.130 INFO    ] Launching Daemon at Sun Oct 18 11:05:22 IST 2026
[2026-10-18 11:05:22,142.142 INFO    ] ================================================
[2026-10-18 11:05:22,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:05:22
[2026-10-18 11:05:23,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:05:23,582.582 INFO    ] Initializing speech engine...
[2026-10-18 11:05:23,592.592 INFO    ] 2026-10-18 11:05:23
[2026-10-18 11:05:23,854.854 INFO    ] 2026-10-18 11:05:23
[2026-10-18 11:05:23,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:05:24,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:05:24,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:05:24,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:05:24,400.400 INFO    ] time= 18/10/2026 11:05:24
[2026-10-18 11:05:24,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:05:24,425.425 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:05:24,559.559 INFO    ] No existing commands found in stream
[2026-10-18 11:05:29,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:05:29,589.589 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-18 11:05:32,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:05:32,862.862 INFO    ] Checking for system updates...
[2026-10-18 11:05:32,901.901 INFO    ] 200
[2026-10-18 11:05:32,904.904 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:05:32,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:05:32,976.976 INFO    ] No update needed
[2026-10-18 11:05:32,979.979 INFO    ] Checking for camera pi updates...
[2026-10-18 11:05:33,015.015 INFO    ] 200
[2026-10-18 11:05:33,018.018 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:05:33,080.080 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:05:43,095.095 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:05:43,132.132 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:05:43,142.142 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:05:43,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:05:43,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:05:43,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:05:45,195.195 INFO    ] ================================================
[2026-10-18 11:05:45,211.211 INFO    ] Launching Daemon at Sun Oct 18 11:05:45 IST 2026
[2026-10-18 11:05:45,223.223 INFO    ] ================================================
[2026-10-18 11:05:45,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:05:45
[2026-10-18 11:05:46,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:05:46,782.782 INFO    ] Initializing speech engine...
[2026-10-18 11:05:46,793.793 INFO    ] 2026-10-18 11:05:46
[2026-10-18 11:05:47,080.080 INFO    ] 2026-10-18 11:05:47
[2026-10-18 11:05:47,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:05:47,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:05:47,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:05:47,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:05:47,616.616 INFO    ] time= 18/10/2026 11:05:47
[2026-10-18 11:05:47,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:05:47,667.667 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:05:47,827.827 INFO    ] No existing commands found in stream
[2026-10-18 11:05:52,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:05:52,853.853 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-18 11:05:53,391.391 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:05:53,393.393 INFO    ] Checking for system updates...
[2026-10-18 11:05:53,430.430 INFO    ] 200
[2026-10-18 11:05:53,432.432 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:05:53,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:05:53,493.493 INFO    ] No update needed
[2026-10-18 11:05:53,495.495 INFO    ] Checking for camera pi updates...
[2026-10-18 11:05:53,528.528 INFO    ] 200
[2026-10-18 11:05:53,531.531 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:05:53,571.571 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:06:03,587.587 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:06:03,627.627 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:06:03,638.638 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:06:03,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:06:03,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:06:03,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:06:05,696.696 INFO    ] ================================================
[2026-10-18 11:06:05,711.711 INFO    ] Launching Daemon at Sun Oct 18 11:06:05 IST 2026
[2026-10-18 11:06:05,722.722 INFO    ] ================================================
[2026-10-18 11:06:06,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:06:06
[2026-10-18 11:06:06,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:06:07,189.189 INFO    ] Initializing speech engine...
[2026-10-18 11:06:07,196.196 INFO    ] 2026-10-18 11:06:07
[2026-10-18 11:06:07,459.459 INFO    ] 2026-10-18 11:06:07
[2026-10-18 11:06:07,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:06:07,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:06:07,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:06:07,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:06:08,005.005 INFO    ] time= 18/10/2026 11:06:07
[2026-10-18 11:06:08,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:06:08,050.050 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:06:08,156.156 INFO    ] No existing commands found in stream
[2026-10-18 11:06:13,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:06:13,171.171 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-18 11:06:14,765.765 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:06:14,768.768 INFO    ] Checking for system updates...
[2026-10-18 11:06:14,807.807 INFO    ] 200
[2026-10-18 11:06:14,809.809 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:06:14,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:06:14,867.867 INFO    ] No update needed
[2026-10-18 11:06:14,870.870 INFO    ] Checking for camera pi updates...
[2026-10-18 11:06:14,905.905 INFO    ] 200
[2026-10-18 11:06:14,908.908 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:06:14,950.950 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:06:24,967.967 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73dae150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:06:25,007.007 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:06:25,019.019 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:06:25,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:06:25,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:06:25,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:06:27,076.076 INFO    ] ================================================
[2026-10-18 11:06:27,092.092 INFO    ] Launching Daemon at Sun Oct 18 11:06:27 IST 2026
[2026-10-18 11:06:27,103.103 INFO    ] ================================================
[2026-10-18 11:06:27,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:06:27
[2026-10-18 11:06:28,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:06:28,568.568 INFO    ] Initializing speech engine...
[2026-10-18 11:06:28,573.573 INFO    ] 2026-10-18 11:06:28
[2026-10-18 11:06:28,836.836 INFO    ] 2026-10-18 11:06:28
[2026-10-18 11:06:28,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:06:29,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:06:29,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:06:29,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:06:29,382.382 INFO    ] time= 18/10/2026 11:06:29
[2026-10-18 11:06:29,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:06:29,430.430 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:06:29,542.542 INFO    ] No existing commands found in stream
[2026-10-18 11:06:34,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:06:34,570.570 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-18 11:06:37,706.706 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:06:37,709.709 INFO    ] Checking for system updates...
[2026-10-18 11:06:37,745.745 INFO    ] 200
[2026-10-18 11:06:37,748.748 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:06:37,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:06:37,810.810 INFO    ] No update needed
[2026-10-18 11:06:37,812.812 INFO    ] Checking for camera pi updates...
[2026-10-18 11:06:37,845.845 INFO    ] 200
[2026-10-18 11:06:37,848.848 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:06:37,890.890 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:06:47,903.903 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:06:47,939.939 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:06:47,949.949 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:06:47,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:06:47,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:06:47,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:06:50,002.002 INFO    ] ================================================
[2026-10-18 11:06:50,017.017 INFO    ] Launching Daemon at Sun Oct 18 11:06:50 IST 2026
[2026-10-18 11:06:50,029.029 INFO    ] ================================================
[2026-10-18 11:06:50,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:06:50
[2026-10-18 11:06:51,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:06:51,451.451 INFO    ] Initializing speech engine...
[2026-10-18 11:06:51,476.476 INFO    ] 2026-10-18 11:06:51
[2026-10-18 11:06:51,748.748 INFO    ] 2026-10-18 11:06:51
[2026-10-18 11:06:51,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:06:52,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:06:52,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:06:52,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:06:52,264.264 INFO    ] time= 18/10/2026 11:06:52
[2026-10-18 11:06:52,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:06:52,363.363 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:06:52,525.525 INFO    ] No existing commands found in stream
[2026-10-18 11:06:57,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:06:57,559.559 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-18 11:06:59,260.260 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:06:59,263.263 INFO    ] Checking for system updates...
[2026-10-18 11:06:59,298.298 INFO    ] 200
[2026-10-18 11:06:59,301.301 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:06:59,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:06:59,356.356 INFO    ] No update needed
[2026-10-18 11:06:59,358.358 INFO    ] Checking for camera pi updates...
[2026-10-18 11:06:59,395.395 INFO    ] 200
[2026-10-18 11:06:59,398.398 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:06:59,443.443 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:07:09,457.457 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:07:09,497.497 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:07:09,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:07:09,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:07:09,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:07:09,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:07:11,565.565 INFO    ] ================================================
[2026-10-18 11:07:11,581.581 INFO    ] Launching Daemon at Sun Oct 18 11:07:11 IST 2026
[2026-10-18 11:07:11,592.592 INFO    ] ================================================
[2026-10-18 11:07:12,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:07:12
[2026-10-18 11:07:12,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:07:12,999.999 INFO    ] Initializing speech engine...
[2026-10-18 11:07:13,022.022 INFO    ] 2026-10-18 11:07:13
[2026-10-18 11:07:13,277.277 INFO    ] 2026-10-18 11:07:13
[2026-10-18 11:07:13,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:07:13,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:07:13,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:07:13,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:07:13,760.760 INFO    ] time= 18/10/2026 11:07:13
[2026-10-18 11:07:13,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:07:13,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:07:14,003.003 INFO    ] No existing commands found in stream
[2026-10-18 11:07:19,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:07:19,020.020 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-18 11:07:21,450.450 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:07:21,452.452 INFO    ] Checking for system updates...
[2026-10-18 11:07:21,489.489 INFO    ] 200
[2026-10-18 11:07:21,492.492 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:07:21,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:07:21,554.554 INFO    ] No update needed
[2026-10-18 11:07:21,557.557 INFO    ] Checking for camera pi updates...
[2026-10-18 11:07:21,595.595 INFO    ] 200
[2026-10-18 11:07:21,598.598 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:07:21,640.640 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:07:31,657.657 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:07:31,699.699 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:07:31,711.711 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:07:31,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:07:31,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:07:31,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:07:33,769.769 INFO    ] ================================================
[2026-10-18 11:07:33,784.784 INFO    ] Launching Daemon at Sun Oct 18 11:07:33 IST 2026
[2026-10-18 11:07:33,795.795 INFO    ] ================================================
[2026-10-18 11:07:34,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:07:34
[2026-10-18 11:07:34,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:07:35,264.264 INFO    ] Initializing speech engine...
[2026-10-18 11:07:35,273.273 INFO    ] 2026-10-18 11:07:35
[2026-10-18 11:07:35,543.543 INFO    ] 2026-10-18 11:07:35
[2026-10-18 11:07:35,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:07:35,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:07:35,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:07:35,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:07:35,970.970 INFO    ] time= 18/10/2026 11:07:35
[2026-10-18 11:07:35,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:07:36,029.029 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:07:36,165.165 INFO    ] No existing commands found in stream
[2026-10-18 11:07:41,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:07:41,193.193 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-18 11:07:44,493.493 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:07:44,496.496 INFO    ] Checking for system updates...
[2026-10-18 11:07:44,532.532 INFO    ] 200
[2026-10-18 11:07:44,535.535 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:07:44,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:07:44,590.590 INFO    ] No update needed
[2026-10-18 11:07:44,593.593 INFO    ] Checking for camera pi updates...
[2026-10-18 11:07:44,630.630 INFO    ] 200
[2026-10-18 11:07:44,632.632 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:07:44,677.677 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:07:54,692.692 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:07:54,728.728 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:07:54,738.738 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:07:54,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:07:54,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:07:54,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:07:56,790.790 INFO    ] ================================================
[2026-10-18 11:07:56,805.805 INFO    ] Launching Daemon at Sun Oct 18 11:07:56 IST 2026
[2026-10-18 11:07:56,815.815 INFO    ] ================================================
[2026-10-18 11:07:57,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:07:57
[2026-10-18 11:07:57,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:07:58,267.267 INFO    ] Initializing speech engine...
[2026-10-18 11:07:58,278.278 INFO    ] 2026-10-18 11:07:58
[2026-10-18 11:07:58,526.526 INFO    ] 2026-10-18 11:07:58
[2026-10-18 11:07:58,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:07:58,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:07:58,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:07:59,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:07:59,074.074 INFO    ] time= 18/10/2026 11:07:59
[2026-10-18 11:07:59,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:07:59,105.105 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:07:59,255.255 INFO    ] No existing commands found in stream
[2026-10-18 11:08:04,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:08:04,289.289 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-18 11:08:08,269.269 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:08:08,272.272 INFO    ] Checking for system updates...
[2026-10-18 11:08:08,308.308 INFO    ] 200
[2026-10-18 11:08:08,310.310 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:08:08,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:08:08,366.366 INFO    ] No update needed
[2026-10-18 11:08:08,368.368 INFO    ] Checking for camera pi updates...
[2026-10-18 11:08:08,406.406 INFO    ] 200
[2026-10-18 11:08:08,408.408 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:08:08,452.452 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:08:18,468.468 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:08:18,502.502 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:08:18,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:08:18,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:08:18,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:08:18,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:08:20,572.572 INFO    ] ================================================
[2026-10-18 11:08:20,587.587 INFO    ] Launching Daemon at Sun Oct 18 11:08:20 IST 2026
[2026-10-18 11:08:20,597.597 INFO    ] ================================================
[2026-10-18 11:08:21,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:08:21
[2026-10-18 11:08:21,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:08:22,200.200 INFO    ] Initializing speech engine...
[2026-10-18 11:08:22,208.208 INFO    ] 2026-10-18 11:08:22
[2026-10-18 11:08:22,493.493 INFO    ] 2026-10-18 11:08:22
[2026-10-18 11:08:22,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:08:22,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:08:22,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:08:23,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:08:23,045.045 INFO    ] time= 18/10/2026 11:08:23
[2026-10-18 11:08:23,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:08:23,085.085 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:08:23,204.204 INFO    ] No existing commands found in stream
[2026-10-18 11:08:28,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:08:28,243.243 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-18 11:08:30,504.504 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:08:30,507.507 INFO    ] Checking for system updates...
[2026-10-18 11:08:30,544.544 INFO    ] 200
[2026-10-18 11:08:30,547.547 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:08:30,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:08:30,604.604 INFO    ] No update needed
[2026-10-18 11:08:30,607.607 INFO    ] Checking for camera pi updates...
[2026-10-18 11:08:30,641.641 INFO    ] 200
[2026-10-18 11:08:30,644.644 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:08:30,689.689 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:08:40,705.705 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:08:40,745.745 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:08:40,756.756 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:08:40,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:08:40,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:08:40,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:08:42,811.811 INFO    ] ================================================
[2026-10-18 11:08:42,826.826 INFO    ] Launching Daemon at Sun Oct 18 11:08:42 IST 2026
[2026-10-18 11:08:42,837.837 INFO    ] ================================================
[2026-10-18 11:08:43,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:08:43
[2026-10-18 11:08:44,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:08:44,292.292 INFO    ] Initializing speech engine...
[2026-10-18 11:08:44,302.302 INFO    ] 2026-10-18 11:08:44
[2026-10-18 11:08:44,552.552 INFO    ] 2026-10-18 11:08:44
[2026-10-18 11:08:44,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:08:44,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:08:44,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:08:44,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:08:45,009.009 INFO    ] time= 18/10/2026 11:08:44
[2026-10-18 11:08:45,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:08:45,116.116 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:08:45,259.259 INFO    ] No existing commands found in stream
[2026-10-18 11:08:50,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:08:50,279.279 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-18 11:08:53,884.884 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:08:53,887.887 INFO    ] Checking for system updates...
[2026-10-18 11:08:53,943.943 INFO    ] 200
[2026-10-18 11:08:53,946.946 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:08:54,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:08:54,007.007 INFO    ] No update needed
[2026-10-18 11:08:54,010.010 INFO    ] Checking for camera pi updates...
[2026-10-18 11:08:54,043.043 INFO    ] 200
[2026-10-18 11:08:54,045.045 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:08:54,094.094 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:09:04,108.108 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:09:04,142.142 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:09:04,152.152 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:09:04,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:09:04,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:09:04,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:09:06,208.208 INFO    ] ================================================
[2026-10-18 11:09:06,224.224 INFO    ] Launching Daemon at Sun Oct 18 11:09:06 IST 2026
[2026-10-18 11:09:06,235.235 INFO    ] ================================================
[2026-10-18 11:09:06,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:09:06
[2026-10-18 11:09:07,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:09:07,724.724 INFO    ] Initializing speech engine...
[2026-10-18 11:09:07,733.733 INFO    ] 2026-10-18 11:09:07
[2026-10-18 11:09:07,996.996 INFO    ] 2026-10-18 11:09:07
[2026-10-18 11:09:08,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:09:08,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:09:08,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:09:08,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:09:08,508.508 INFO    ] time= 18/10/2026 11:09:08
[2026-10-18 11:09:08,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:09:08,573.573 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:09:08,720.720 INFO    ] No existing commands found in stream
[2026-10-18 11:09:13,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:09:13,745.745 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-18 11:09:17,603.603 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:09:17,606.606 INFO    ] Checking for system updates...
[2026-10-18 11:09:17,642.642 INFO    ] 200
[2026-10-18 11:09:17,644.644 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:09:17,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:09:17,701.701 INFO    ] No update needed
[2026-10-18 11:09:17,703.703 INFO    ] Checking for camera pi updates...
[2026-10-18 11:09:17,737.737 INFO    ] 200
[2026-10-18 11:09:17,739.739 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:09:17,785.785 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:09:27,797.797 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:09:27,832.832 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:09:27,842.842 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:09:27,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:09:27,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:09:27,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:09:29,897.897 INFO    ] ================================================
[2026-10-18 11:09:29,913.913 INFO    ] Launching Daemon at Sun Oct 18 11:09:29 IST 2026
[2026-10-18 11:09:29,924.924 INFO    ] ================================================
[2026-10-18 11:09:30,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:09:30
[2026-10-18 11:09:31,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:09:31,492.492 INFO    ] Initializing speech engine...
[2026-10-18 11:09:31,502.502 INFO    ] 2026-10-18 11:09:31
[2026-10-18 11:09:31,780.780 INFO    ] 2026-10-18 11:09:31
[2026-10-18 11:09:31,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:09:32,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:09:32,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:09:32,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:09:32,293.293 INFO    ] time= 18/10/2026 11:09:32
[2026-10-18 11:09:32,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:09:32,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:09:32,554.554 INFO    ] No existing commands found in stream
[2026-10-18 11:09:37,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:09:37,573.573 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-18 11:09:38,973.973 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:09:38,976.976 INFO    ] Checking for system updates...
[2026-10-18 11:09:39,011.011 INFO    ] 200
[2026-10-18 11:09:39,014.014 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:09:39,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:09:39,070.070 INFO    ] No update needed
[2026-10-18 11:09:39,076.076 INFO    ] Checking for camera pi updates...
[2026-10-18 11:09:39,115.115 INFO    ] 200
[2026-10-18 11:09:39,117.117 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:09:39,179.179 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:09:49,194.194 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:09:49,230.230 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:09:49,239.239 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:09:49,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:09:49,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:09:49,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:09:51,294.294 INFO    ] ================================================
[2026-10-18 11:09:51,309.309 INFO    ] Launching Daemon at Sun Oct 18 11:09:51 IST 2026
[2026-10-18 11:09:51,320.320 INFO    ] ================================================
[2026-10-18 11:09:51,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:09:51
[2026-10-18 11:09:52,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:09:52,737.737 INFO    ] Initializing speech engine...
[2026-10-18 11:09:52,747.747 INFO    ] 2026-10-18 11:09:52
[2026-10-18 11:09:52,992.992 INFO    ] 2026-10-18 11:09:52
[2026-10-18 11:09:53,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:09:53,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:09:53,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:09:53,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:09:53,455.455 INFO    ] time= 18/10/2026 11:09:53
[2026-10-18 11:09:53,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:09:53,552.552 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:09:53,701.701 INFO    ] No existing commands found in stream
[2026-10-18 11:09:58,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:09:58,722.722 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-18 11:10:00,612.612 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 11:10:00,615.615 INFO    ] Checking for system updates...
[2026-10-18 11:10:00,651.651 INFO    ] 200
[2026-10-18 11:10:00,653.653 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:10:00,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:10:00,715.715 INFO    ] No update needed
[2026-10-18 11:10:00,717.717 INFO    ] Checking for camera pi updates...
[2026-10-18 11:10:00,751.751 INFO    ] 200
[2026-10-18 11:10:00,753.753 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:10:00,800.800 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:10:10,816.816 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:10:10,851.851 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:10:10,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:10:10,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:10:10,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:10:10,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:10:12,916.916 INFO    ] ================================================
[2026-10-18 11:10:12,931.931 INFO    ] Launching Daemon at Sun Oct 18 11:10:12 IST 2026
[2026-10-18 11:10:12,942.942 INFO    ] ================================================
[2026-10-18 11:10:13,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:10:13
[2026-10-18 11:10:14,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:10:14,359.359 INFO    ] Initializing speech engine...
[2026-10-18 11:10:14,364.364 INFO    ] 2026-10-18 11:10:14
[2026-10-18 11:10:14,656.656 INFO    ] 2026-10-18 11:10:14
[2026-10-18 11:10:14,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:10:14,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:10:14,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:10:15,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:10:15,205.205 INFO    ] time= 18/10/2026 11:10:15
[2026-10-18 11:10:15,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:10:15,292.292 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:10:15,451.451 INFO    ] No existing commands found in stream
[2026-10-18 11:10:20,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:10:20,474.474 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-18 11:10:20,991.991 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:10:20,994.994 INFO    ] Checking for system updates...
[2026-10-18 11:10:21,030.030 INFO    ] 200
[2026-10-18 11:10:21,033.033 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:10:21,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:10:21,095.095 INFO    ] No update needed
[2026-10-18 11:10:21,098.098 INFO    ] Checking for camera pi updates...
[2026-10-18 11:10:21,132.132 INFO    ] 200
[2026-10-18 11:10:21,135.135 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:10:21,181.181 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:10:31,197.197 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:10:31,237.237 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:10:31,248.248 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:10:31,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:10:31,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:10:31,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:10:33,304.304 INFO    ] ================================================
[2026-10-18 11:10:33,320.320 INFO    ] Launching Daemon at Sun Oct 18 11:10:33 IST 2026
[2026-10-18 11:10:33,331.331 INFO    ] ================================================
[2026-10-18 11:10:33,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:10:33
[2026-10-18 11:10:34,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:10:34,758.758 INFO    ] Initializing speech engine...
[2026-10-18 11:10:34,767.767 INFO    ] 2026-10-18 11:10:34
[2026-10-18 11:10:35,013.013 INFO    ] 2026-10-18 11:10:35
[2026-10-18 11:10:35,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:10:35,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:10:35,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:10:35,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:10:35,555.555 INFO    ] time= 18/10/2026 11:10:35
[2026-10-18 11:10:35,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:10:35,577.577 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:10:35,725.725 INFO    ] No existing commands found in stream
[2026-10-18 11:10:40,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:10:40,747.747 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-18 11:10:45,021.021 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:10:45,024.024 INFO    ] Checking for system updates...
[2026-10-18 11:10:45,061.061 INFO    ] 200
[2026-10-18 11:10:45,064.064 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:10:45,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:10:45,121.121 INFO    ] No update needed
[2026-10-18 11:10:45,124.124 INFO    ] Checking for camera pi updates...
[2026-10-18 11:10:45,161.161 INFO    ] 200
[2026-10-18 11:10:45,164.164 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:10:45,206.206 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:10:55,219.219 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:10:55,258.258 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:10:55,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:10:55,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:10:55,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:10:55,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:10:57,325.325 INFO    ] ================================================
[2026-10-18 11:10:57,340.340 INFO    ] Launching Daemon at Sun Oct 18 11:10:57 IST 2026
[2026-10-18 11:10:57,351.351 INFO    ] ================================================
[2026-10-18 11:10:57,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:10:57
[2026-10-18 11:10:58,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:10:58,772.772 INFO    ] Initializing speech engine...
[2026-10-18 11:10:58,782.782 INFO    ] 2026-10-18 11:10:58
[2026-10-18 11:10:59,028.028 INFO    ] 2026-10-18 11:10:59
[2026-10-18 11:10:59,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:10:59,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:10:59,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:10:59,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:10:59,543.543 INFO    ] time= 18/10/2026 11:10:59
[2026-10-18 11:10:59,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:10:59,593.593 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:10:59,742.742 INFO    ] No existing commands found in stream
[2026-10-18 11:11:04,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:11:04,767.767 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-18 11:11:06,161.161 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 11:11:06,163.163 INFO    ] Checking for system updates...
[2026-10-18 11:11:06,199.199 INFO    ] 200
[2026-10-18 11:11:06,201.201 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:11:06,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:11:06,263.263 INFO    ] No update needed
[2026-10-18 11:11:06,266.266 INFO    ] Checking for camera pi updates...
[2026-10-18 11:11:06,300.300 INFO    ] 200
[2026-10-18 11:11:06,302.302 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:11:06,343.343 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:11:16,358.358 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:11:16,394.394 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:11:16,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:11:16,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:11:16,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:11:16,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:11:18,459.459 INFO    ] ================================================
[2026-10-18 11:11:18,475.475 INFO    ] Launching Daemon at Sun Oct 18 11:11:18 IST 2026
[2026-10-18 11:11:18,486.486 INFO    ] ================================================
[2026-10-18 11:11:19,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:11:19
[2026-10-18 11:11:19,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:11:20,067.067 INFO    ] Initializing speech engine...
[2026-10-18 11:11:20,072.072 INFO    ] 2026-10-18 11:11:20
[2026-10-18 11:11:20,317.317 INFO    ] 2026-10-18 11:11:20
[2026-10-18 11:11:20,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:11:20,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:11:20,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:11:20,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:11:20,869.869 INFO    ] time= 18/10/2026 11:11:20
[2026-10-18 11:11:20,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:11:20,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:11:21,044.044 INFO    ] No existing commands found in stream
[2026-10-18 11:11:26,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:11:26,077.077 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-18 11:11:29,454.454 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:11:29,457.457 INFO    ] Checking for system updates...
[2026-10-18 11:11:29,498.498 INFO    ] 200
[2026-10-18 11:11:29,501.501 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:11:29,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:11:29,566.566 INFO    ] No update needed
[2026-10-18 11:11:29,569.569 INFO    ] Checking for camera pi updates...
[2026-10-18 11:11:29,602.602 INFO    ] 200
[2026-10-18 11:11:29,605.605 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:11:29,646.646 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:11:39,662.662 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:11:39,702.702 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:11:39,712.712 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:11:39,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:11:39,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:11:39,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:11:41,767.767 INFO    ] ================================================
[2026-10-18 11:11:41,782.782 INFO    ] Launching Daemon at Sun Oct 18 11:11:41 IST 2026
[2026-10-18 11:11:41,794.794 INFO    ] ================================================
[2026-10-18 11:11:42,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:11:42
[2026-10-18 11:11:43,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:11:43,439.439 INFO    ] Initializing speech engine...
[2026-10-18 11:11:43,449.449 INFO    ] 2026-10-18 11:11:43
[2026-10-18 11:11:43,751.751 INFO    ] 2026-10-18 11:11:43
[2026-10-18 11:11:43,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:11:44,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:11:44,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:11:44,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:11:44,272.272 INFO    ] time= 18/10/2026 11:11:44
[2026-10-18 11:11:44,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:11:44,310.310 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:11:44,414.414 INFO    ] No existing commands found in stream
[2026-10-18 11:11:49,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:11:49,441.441 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-18 11:11:50,604.604 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:11:50,608.608 INFO    ] Checking for system updates...
[2026-10-18 11:11:50,646.646 INFO    ] 200
[2026-10-18 11:11:50,649.649 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:11:50,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:11:50,704.704 INFO    ] No update needed
[2026-10-18 11:11:50,707.707 INFO    ] Checking for camera pi updates...
[2026-10-18 11:11:50,741.741 INFO    ] 200
[2026-10-18 11:11:50,743.743 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:11:50,784.784 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:12:00,798.798 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:12:00,834.834 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:12:00,844.844 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:12:00,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:12:00,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:12:00,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:12:02,902.902 INFO    ] ================================================
[2026-10-18 11:12:02,925.925 INFO    ] Launching Daemon at Sun Oct 18 11:12:02 IST 2026
[2026-10-18 11:12:02,937.937 INFO    ] ================================================
[2026-10-18 11:12:03,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:12:03
[2026-10-18 11:12:04,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:12:04,607.607 INFO    ] Initializing speech engine...
[2026-10-18 11:12:04,614.614 INFO    ] 2026-10-18 11:12:04
[2026-10-18 11:12:04,896.896 INFO    ] 2026-10-18 11:12:04
[2026-10-18 11:12:04,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:12:05,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:12:05,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:12:05,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:12:05,400.400 INFO    ] time= 18/10/2026 11:12:05
[2026-10-18 11:12:05,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:12:05,432.432 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:12:05,579.579 INFO    ] No existing commands found in stream
[2026-10-18 11:12:10,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:12:10,611.611 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-18 11:12:11,359.359 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:12:11,362.362 INFO    ] Checking for system updates...
[2026-10-18 11:12:11,398.398 INFO    ] 200
[2026-10-18 11:12:11,401.401 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:12:11,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:12:11,461.461 INFO    ] No update needed
[2026-10-18 11:12:11,463.463 INFO    ] Checking for camera pi updates...
[2026-10-18 11:12:11,496.496 INFO    ] 200
[2026-10-18 11:12:11,498.498 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:12:11,546.546 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:12:21,561.561 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:12:21,596.596 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:12:21,605.605 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:12:21,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:12:21,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:12:21,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:12:23,657.657 INFO    ] ================================================
[2026-10-18 11:12:23,672.672 INFO    ] Launching Daemon at Sun Oct 18 11:12:23 IST 2026
[2026-10-18 11:12:23,683.683 INFO    ] ================================================
[2026-10-18 11:12:24,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:12:24
[2026-10-18 11:12:24,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:12:25,108.108 INFO    ] Initializing speech engine...
[2026-10-18 11:12:25,117.117 INFO    ] 2026-10-18 11:12:25
[2026-10-18 11:12:25,368.368 INFO    ] 2026-10-18 11:12:25
[2026-10-18 11:12:25,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:12:25,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:12:25,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:12:25,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:12:25,863.863 INFO    ] time= 18/10/2026 11:12:25
[2026-10-18 11:12:25,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:12:25,948.948 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:12:26,098.098 INFO    ] No existing commands found in stream
[2026-10-18 11:12:31,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:12:31,116.116 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-18 11:12:32,103.103 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:12:32,106.106 INFO    ] Checking for system updates...
[2026-10-18 11:12:32,149.149 INFO    ] 200
[2026-10-18 11:12:32,152.152 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:12:32,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:12:32,217.217 INFO    ] No update needed
[2026-10-18 11:12:32,220.220 INFO    ] Checking for camera pi updates...
[2026-10-18 11:12:32,265.265 INFO    ] 200
[2026-10-18 11:12:32,268.268 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:12:32,314.314 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:12:42,329.329 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:12:42,372.372 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:12:42,382.382 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:12:42,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:12:42,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:12:42,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:12:44,435.435 INFO    ] ================================================
[2026-10-18 11:12:44,450.450 INFO    ] Launching Daemon at Sun Oct 18 11:12:44 IST 2026
[2026-10-18 11:12:44,461.461 INFO    ] ================================================
[2026-10-18 11:12:45,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:12:45
[2026-10-18 11:12:45,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:12:46,064.064 INFO    ] Initializing speech engine...
[2026-10-18 11:12:46,074.074 INFO    ] 2026-10-18 11:12:46
[2026-10-18 11:12:46,345.345 INFO    ] 2026-10-18 11:12:46
[2026-10-18 11:12:46,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:12:46,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:12:46,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:12:46,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:12:46,894.894 INFO    ] time= 18/10/2026 11:12:46
[2026-10-18 11:12:46,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:12:46,921.921 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:12:47,063.063 INFO    ] No existing commands found in stream
[2026-10-18 11:12:52,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:12:52,094.094 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-18 11:12:56,270.270 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 11:12:56,273.273 INFO    ] Checking for system updates...
[2026-10-18 11:12:56,310.310 INFO    ] 200
[2026-10-18 11:12:56,313.313 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:12:56,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:12:56,375.375 INFO    ] No update needed
[2026-10-18 11:12:56,378.378 INFO    ] Checking for camera pi updates...
[2026-10-18 11:12:56,414.414 INFO    ] 200
[2026-10-18 11:12:56,417.417 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:12:56,461.461 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:13:06,476.476 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:13:06,512.512 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:13:06,521.521 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:13:06,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:13:06,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:13:06,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:13:08,574.574 INFO    ] ================================================
[2026-10-18 11:13:08,589.589 INFO    ] Launching Daemon at Sun Oct 18 11:13:08 IST 2026
[2026-10-18 11:13:08,600.600 INFO    ] ================================================
[2026-10-18 11:13:09,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:13:09
[2026-10-18 11:13:09,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:13:10,018.018 INFO    ] Initializing speech engine...
[2026-10-18 11:13:10,027.027 INFO    ] 2026-10-18 11:13:10
[2026-10-18 11:13:10,275.275 INFO    ] 2026-10-18 11:13:10
[2026-10-18 11:13:10,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:13:10,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:13:10,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:13:10,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:13:10,785.785 INFO    ] time= 18/10/2026 11:13:10
[2026-10-18 11:13:10,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:13:10,841.841 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:13:10,982.982 INFO    ] No existing commands found in stream
[2026-10-18 11:13:15,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:13:16,000.000 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-18 11:13:16,959.959 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 11:13:16,962.962 INFO    ] Checking for system updates...
[2026-10-18 11:13:16,998.998 INFO    ] 200
[2026-10-18 11:13:17,001.001 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:13:17,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:13:17,061.061 INFO    ] No update needed
[2026-10-18 11:13:17,063.063 INFO    ] Checking for camera pi updates...
[2026-10-18 11:13:17,097.097 INFO    ] 200
[2026-10-18 11:13:17,099.099 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:13:17,143.143 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:13:27,158.158 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:13:27,193.193 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:13:27,202.202 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:13:27,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:13:27,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:13:27,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:13:29,256.256 INFO    ] ================================================
[2026-10-18 11:13:29,272.272 INFO    ] Launching Daemon at Sun Oct 18 11:13:29 IST 2026
[2026-10-18 11:13:29,283.283 INFO    ] ================================================
[2026-10-18 11:13:29,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:13:29
[2026-10-18 11:13:30,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:13:30,713.713 INFO    ] Initializing speech engine...
[2026-10-18 11:13:30,733.733 INFO    ] 2026-10-18 11:13:30
[2026-10-18 11:13:31,009.009 INFO    ] 2026-10-18 11:13:30
[2026-10-18 11:13:31,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:13:31,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:13:31,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:13:31,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:13:31,421.421 INFO    ] time= 18/10/2026 11:13:31
[2026-10-18 11:13:31,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:13:31,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:13:31,586.586 INFO    ] No existing commands found in stream
[2026-10-18 11:13:36,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:13:36,619.619 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-18 11:13:39,276.276 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:13:39,279.279 INFO    ] Checking for system updates...
[2026-10-18 11:13:39,315.315 INFO    ] 200
[2026-10-18 11:13:39,318.318 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:13:39,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:13:39,372.372 INFO    ] No update needed
[2026-10-18 11:13:39,374.374 INFO    ] Checking for camera pi updates...
[2026-10-18 11:13:39,410.410 INFO    ] 200
[2026-10-18 11:13:39,413.413 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:13:39,453.453 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:13:49,468.468 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:13:49,503.503 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:13:49,512.512 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:13:49,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:13:49,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:13:49,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:13:51,565.565 INFO    ] ================================================
[2026-10-18 11:13:51,580.580 INFO    ] Launching Daemon at Sun Oct 18 11:13:51 IST 2026
[2026-10-18 11:13:51,590.590 INFO    ] ================================================
[2026-10-18 11:13:52,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:13:52
[2026-10-18 11:13:52,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:13:53,187.187 INFO    ] Initializing speech engine...
[2026-10-18 11:13:53,197.197 INFO    ] 2026-10-18 11:13:53
[2026-10-18 11:13:53,486.486 INFO    ] 2026-10-18 11:13:53
[2026-10-18 11:13:53,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:13:53,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:13:53,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:13:54,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:13:54,038.038 INFO    ] time= 18/10/2026 11:13:54
[2026-10-18 11:13:54,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:13:54,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:13:54,207.207 INFO    ] No existing commands found in stream
[2026-10-18 11:13:59,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:13:59,241.241 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-18 11:14:02,069.069 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 11:14:02,073.073 INFO    ] Checking for system updates...
[2026-10-18 11:14:02,121.121 INFO    ] 200
[2026-10-18 11:14:02,124.124 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:14:02,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:14:02,195.195 INFO    ] No update needed
[2026-10-18 11:14:02,198.198 INFO    ] Checking for camera pi updates...
[2026-10-18 11:14:02,239.239 INFO    ] 200
[2026-10-18 11:14:02,242.242 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:14:02,298.298 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:14:12,313.313 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:14:12,350.350 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:14:12,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:14:12,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:14:12,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:14:12,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:14:14,413.413 INFO    ] ================================================
[2026-10-18 11:14:14,428.428 INFO    ] Launching Daemon at Sun Oct 18 11:14:14 IST 2026
[2026-10-18 11:14:14,439.439 INFO    ] ================================================
[2026-10-18 11:14:15,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:14:15
[2026-10-18 11:14:15,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:14:15,865.865 INFO    ] Initializing speech engine...
[2026-10-18 11:14:15,883.883 INFO    ] 2026-10-18 11:14:15
[2026-10-18 11:14:16,157.157 INFO    ] 2026-10-18 11:14:16
[2026-10-18 11:14:16,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:14:16,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:14:16,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:14:16,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:14:16,576.576 INFO    ] time= 18/10/2026 11:14:16
[2026-10-18 11:14:16,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:14:16,591.591 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:14:16,709.709 INFO    ] No existing commands found in stream
[2026-10-18 11:14:21,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:14:21,737.737 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-18 11:14:25,785.785 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:14:25,787.787 INFO    ] Checking for system updates...
[2026-10-18 11:14:25,823.823 INFO    ] 200
[2026-10-18 11:14:25,826.826 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:14:25,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:14:25,887.887 INFO    ] No update needed
[2026-10-18 11:14:25,890.890 INFO    ] Checking for camera pi updates...
[2026-10-18 11:14:25,924.924 INFO    ] 200
[2026-10-18 11:14:25,926.926 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:14:25,967.967 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:14:35,980.980 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:14:36,014.014 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:14:36,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:14:36,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:14:36,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:14:36,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:14:38,076.076 INFO    ] ================================================
[2026-10-18 11:14:38,091.091 INFO    ] Launching Daemon at Sun Oct 18 11:14:38 IST 2026
[2026-10-18 11:14:38,101.101 INFO    ] ================================================
[2026-10-18 11:14:38,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:14:38
[2026-10-18 11:14:39,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:14:39,504.504 INFO    ] Initializing speech engine...
[2026-10-18 11:14:39,518.518 INFO    ] 2026-10-18 11:14:39
[2026-10-18 11:14:39,784.784 INFO    ] 2026-10-18 11:14:39
[2026-10-18 11:14:39,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:14:40,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:14:40,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:14:40,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:14:40,270.270 INFO    ] time= 18/10/2026 11:14:40
[2026-10-18 11:14:40,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:14:40,347.347 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:14:40,496.496 INFO    ] No existing commands found in stream
[2026-10-18 11:14:45,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:14:45,522.522 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-18 11:14:49,153.153 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:14:49,156.156 INFO    ] Checking for system updates...
[2026-10-18 11:14:49,198.198 INFO    ] 200
[2026-10-18 11:14:49,200.200 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:14:49,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:14:49,261.261 INFO    ] No update needed
[2026-10-18 11:14:49,264.264 INFO    ] Checking for camera pi updates...
[2026-10-18 11:14:49,298.298 INFO    ] 200
[2026-10-18 11:14:49,301.301 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:14:49,344.344 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:14:59,361.361 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:14:59,401.401 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:14:59,413.413 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:14:59,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:14:59,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:14:59,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:15:01,505.505 INFO    ] ================================================
[2026-10-18 11:15:01,538.538 INFO    ] Launching Daemon at Sun Oct 18 11:15:01 IST 2026
[2026-10-18 11:15:01,622.622 INFO    ] ================================================
[2026-10-18 11:15:02,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:15:02
[2026-10-18 11:15:03,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:15:03,629.629 INFO    ] Initializing speech engine...
[2026-10-18 11:15:03,644.644 INFO    ] 2026-10-18 11:15:03
[2026-10-18 11:15:03,932.932 INFO    ] 2026-10-18 11:15:03
[2026-10-18 11:15:03,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:15:04,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:15:04,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:15:04,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:15:04,372.372 INFO    ] time= 18/10/2026 11:15:04
[2026-10-18 11:15:04,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:15:04,430.430 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:15:04,589.589 INFO    ] No existing commands found in stream
[2026-10-18 11:15:09,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:15:09,602.602 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-18 11:15:13,400.400 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 11:15:13,403.403 INFO    ] Checking for system updates...
[2026-10-18 11:15:13,439.439 INFO    ] 200
[2026-10-18 11:15:13,441.441 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:15:13,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:15:13,498.498 INFO    ] No update needed
[2026-10-18 11:15:13,500.500 INFO    ] Checking for camera pi updates...
[2026-10-18 11:15:13,534.534 INFO    ] 200
[2026-10-18 11:15:13,537.537 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:15:13,577.577 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:15:23,592.592 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:15:23,627.627 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:15:23,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:15:23,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:15:23,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:15:23,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:15:25,688.688 INFO    ] ================================================
[2026-10-18 11:15:25,705.705 INFO    ] Launching Daemon at Sun Oct 18 11:15:25 IST 2026
[2026-10-18 11:15:25,722.722 INFO    ] ================================================
[2026-10-18 11:15:26,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:15:26
[2026-10-18 11:15:26,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:15:27,139.139 INFO    ] Initializing speech engine...
[2026-10-18 11:15:27,147.147 INFO    ] 2026-10-18 11:15:27
[2026-10-18 11:15:27,436.436 INFO    ] 2026-10-18 11:15:27
[2026-10-18 11:15:27,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:15:27,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:15:27,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:15:27,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:15:27,968.968 INFO    ] time= 18/10/2026 11:15:27
[2026-10-18 11:15:28,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:15:28,062.062 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:15:28,194.194 INFO    ] No existing commands found in stream
[2026-10-18 11:15:33,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:15:33,221.221 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-18 11:15:35,859.859 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:15:35,861.861 INFO    ] Checking for system updates...
[2026-10-18 11:15:35,897.897 INFO    ] 200
[2026-10-18 11:15:35,899.899 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:15:35,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:15:35,960.960 INFO    ] No update needed
[2026-10-18 11:15:35,962.962 INFO    ] Checking for camera pi updates...
[2026-10-18 11:15:35,996.996 INFO    ] 200
[2026-10-18 11:15:35,998.998 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:15:36,039.039 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:15:46,054.054 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:15:46,089.089 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:15:46,099.099 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:15:46,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:15:46,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:15:46,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:15:48,150.150 INFO    ] ================================================
[2026-10-18 11:15:48,166.166 INFO    ] Launching Daemon at Sun Oct 18 11:15:48 IST 2026
[2026-10-18 11:15:48,177.177 INFO    ] ================================================
[2026-10-18 11:15:48,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:15:48
[2026-10-18 11:15:49,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:15:49,614.614 INFO    ] Initializing speech engine...
[2026-10-18 11:15:49,624.624 INFO    ] 2026-10-18 11:15:49
[2026-10-18 11:15:49,872.872 INFO    ] 2026-10-18 11:15:49
[2026-10-18 11:15:49,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:15:50,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:15:50,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:15:50,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:15:50,255.255 INFO    ] time= 18/10/2026 11:15:50
[2026-10-18 11:15:50,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:15:50,323.323 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:15:50,453.453 INFO    ] No existing commands found in stream
[2026-10-18 11:15:55,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:15:55,468.468 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-18 11:15:59,580.580 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:15:59,583.583 INFO    ] Checking for system updates...
[2026-10-18 11:15:59,623.623 INFO    ] 200
[2026-10-18 11:15:59,625.625 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:15:59,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:15:59,681.681 INFO    ] No update needed
[2026-10-18 11:15:59,683.683 INFO    ] Checking for camera pi updates...
[2026-10-18 11:15:59,716.716 INFO    ] 200
[2026-10-18 11:15:59,719.719 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:15:59,760.760 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:16:09,775.775 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:16:09,811.811 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:16:09,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:16:09,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:16:09,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:16:09,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:16:11,874.874 INFO    ] ================================================
[2026-10-18 11:16:11,890.890 INFO    ] Launching Daemon at Sun Oct 18 11:16:11 IST 2026
[2026-10-18 11:16:11,901.901 INFO    ] ================================================
[2026-10-18 11:16:12,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:16:12
[2026-10-18 11:16:13,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:16:13,507.507 INFO    ] Initializing speech engine...
[2026-10-18 11:16:13,519.519 INFO    ] 2026-10-18 11:16:13
[2026-10-18 11:16:13,802.802 INFO    ] 2026-10-18 11:16:13
[2026-10-18 11:16:13,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:16:14,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:16:14,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:16:14,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:16:14,334.334 INFO    ] time= 18/10/2026 11:16:14
[2026-10-18 11:16:14,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:16:14,382.382 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:16:14,488.488 INFO    ] No existing commands found in stream
[2026-10-18 11:16:19,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:16:19,504.504 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-18 11:16:23,279.279 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 11:16:23,282.282 INFO    ] Checking for system updates...
[2026-10-18 11:16:23,319.319 INFO    ] 200
[2026-10-18 11:16:23,322.322 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:16:23,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:16:23,384.384 INFO    ] No update needed
[2026-10-18 11:16:23,387.387 INFO    ] Checking for camera pi updates...
[2026-10-18 11:16:23,421.421 INFO    ] 200
[2026-10-18 11:16:23,424.424 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:16:23,467.467 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:16:33,481.481 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:16:33,521.521 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:16:33,532.532 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:16:33,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:16:33,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:16:33,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:16:35,587.587 INFO    ] ================================================
[2026-10-18 11:16:35,603.603 INFO    ] Launching Daemon at Sun Oct 18 11:16:35 IST 2026
[2026-10-18 11:16:35,613.613 INFO    ] ================================================
[2026-10-18 11:16:36,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:16:36
[2026-10-18 11:16:36,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:16:37,045.045 INFO    ] Initializing speech engine...
[2026-10-18 11:16:37,054.054 INFO    ] 2026-10-18 11:16:37
[2026-10-18 11:16:37,303.303 INFO    ] 2026-10-18 11:16:37
[2026-10-18 11:16:37,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:16:37,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:16:37,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:16:37,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:16:37,876.876 INFO    ] time= 18/10/2026 11:16:37
[2026-10-18 11:16:37,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:16:37,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:16:38,037.037 INFO    ] No existing commands found in stream
[2026-10-18 11:16:43,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:16:43,062.062 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-18 11:16:46,836.836 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:16:46,839.839 INFO    ] Checking for system updates...
[2026-10-18 11:16:46,875.875 INFO    ] 200
[2026-10-18 11:16:46,878.878 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:16:46,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:16:46,940.940 INFO    ] No update needed
[2026-10-18 11:16:46,943.943 INFO    ] Checking for camera pi updates...
[2026-10-18 11:16:46,980.980 INFO    ] 200
[2026-10-18 11:16:46,983.983 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:16:47,033.033 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:16:57,049.049 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:16:57,089.089 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:16:57,100.100 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:16:57,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:16:57,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:16:57,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:16:59,157.157 INFO    ] ================================================
[2026-10-18 11:16:59,172.172 INFO    ] Launching Daemon at Sun Oct 18 11:16:59 IST 2026
[2026-10-18 11:16:59,183.183 INFO    ] ================================================
[2026-10-18 11:16:59,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:16:59
[2026-10-18 11:17:00,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:17:00,689.689 INFO    ] Initializing speech engine...
[2026-10-18 11:17:00,696.696 INFO    ] 2026-10-18 11:17:00
[2026-10-18 11:17:00,950.950 INFO    ] 2026-10-18 11:17:00
[2026-10-18 11:17:00,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:17:01,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:17:01,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:17:01,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:17:01,487.487 INFO    ] time= 18/10/2026 11:17:01
[2026-10-18 11:17:01,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:17:01,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:17:01,577.577 INFO    ] No existing commands found in stream
[2026-10-18 11:17:06,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:17:06,591.591 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-18 11:17:08,098.098 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 11:17:08,100.100 INFO    ] Checking for system updates...
[2026-10-18 11:17:08,137.137 INFO    ] 200
[2026-10-18 11:17:08,139.139 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:17:08,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:17:08,194.194 INFO    ] No update needed
[2026-10-18 11:17:08,197.197 INFO    ] Checking for camera pi updates...
[2026-10-18 11:17:08,231.231 INFO    ] 200
[2026-10-18 11:17:08,234.234 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:17:08,279.279 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:17:18,294.294 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:17:18,329.329 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:17:18,338.338 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:17:18,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:17:18,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:17:18,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:17:20,392.392 INFO    ] ================================================
[2026-10-18 11:17:20,407.407 INFO    ] Launching Daemon at Sun Oct 18 11:17:20 IST 2026
[2026-10-18 11:17:20,418.418 INFO    ] ================================================
[2026-10-18 11:17:21,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:17:21
[2026-10-18 11:17:21,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:17:22,024.024 INFO    ] Initializing speech engine...
[2026-10-18 11:17:22,033.033 INFO    ] 2026-10-18 11:17:22
[2026-10-18 11:17:22,309.309 INFO    ] 2026-10-18 11:17:22
[2026-10-18 11:17:22,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:17:22,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:17:22,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:17:22,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:17:22,808.808 INFO    ] time= 18/10/2026 11:17:22
[2026-10-18 11:17:22,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:17:22,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:17:23,050.050 INFO    ] No existing commands found in stream
[2026-10-18 11:17:28,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:17:28,085.085 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-18 11:17:32,041.041 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 11:17:32,045.045 INFO    ] Checking for system updates...
[2026-10-18 11:17:32,085.085 INFO    ] 200
[2026-10-18 11:17:32,088.088 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:17:32,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:17:32,149.149 INFO    ] No update needed
[2026-10-18 11:17:32,152.152 INFO    ] Checking for camera pi updates...
[2026-10-18 11:17:32,190.190 INFO    ] 200
[2026-10-18 11:17:32,192.192 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:17:32,238.238 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:17:42,254.254 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:17:42,294.294 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:17:42,305.305 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:17:42,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:17:42,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:17:42,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:17:44,360.360 INFO    ] ================================================
[2026-10-18 11:17:44,376.376 INFO    ] Launching Daemon at Sun Oct 18 11:17:44 IST 2026
[2026-10-18 11:17:44,386.386 INFO    ] ================================================
[2026-10-18 11:17:45,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:17:45
[2026-10-18 11:17:45,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:17:45,986.986 INFO    ] Initializing speech engine...
[2026-10-18 11:17:45,994.994 INFO    ] 2026-10-18 11:17:45
[2026-10-18 11:17:46,283.283 INFO    ] 2026-10-18 11:17:46
[2026-10-18 11:17:46,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:17:46,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:17:46,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:17:46,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:17:46,827.827 INFO    ] time= 18/10/2026 11:17:46
[2026-10-18 11:17:46,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:17:46,867.867 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:17:46,993.993 INFO    ] No existing commands found in stream
[2026-10-18 11:17:52,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:17:52,028.028 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-18 11:17:55,837.837 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 11:17:55,839.839 INFO    ] Checking for system updates...
[2026-10-18 11:17:55,879.879 INFO    ] 200
[2026-10-18 11:17:55,881.881 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:17:55,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:17:55,938.938 INFO    ] No update needed
[2026-10-18 11:17:55,941.941 INFO    ] Checking for camera pi updates...
[2026-10-18 11:17:55,978.978 INFO    ] 200
[2026-10-18 11:17:55,981.981 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:17:56,027.027 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:18:06,044.044 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:18:06,082.082 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:18:06,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:18:06,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:18:06,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:18:06,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:18:08,147.147 INFO    ] ================================================
[2026-10-18 11:18:08,162.162 INFO    ] Launching Daemon at Sun Oct 18 11:18:08 IST 2026
[2026-10-18 11:18:08,172.172 INFO    ] ================================================
[2026-10-18 11:18:08,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:18:08
[2026-10-18 11:18:09,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:18:09,722.722 INFO    ] Initializing speech engine...
[2026-10-18 11:18:09,733.733 INFO    ] 2026-10-18 11:18:09
[2026-10-18 11:18:10,003.003 INFO    ] 2026-10-18 11:18:09
[2026-10-18 11:18:10,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:18:10,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:18:10,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:18:10,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:18:10,551.551 INFO    ] time= 18/10/2026 11:18:10
[2026-10-18 11:18:10,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:18:10,579.579 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:18:10,702.702 INFO    ] No existing commands found in stream
[2026-10-18 11:18:15,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:18:15,721.721 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-18 11:18:19,560.560 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 11:18:19,563.563 INFO    ] Checking for system updates...
[2026-10-18 11:18:19,600.600 INFO    ] 200
[2026-10-18 11:18:19,602.602 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:18:19,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:18:19,662.662 INFO    ] No update needed
[2026-10-18 11:18:19,665.665 INFO    ] Checking for camera pi updates...
[2026-10-18 11:18:19,700.700 INFO    ] 200
[2026-10-18 11:18:19,702.702 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:18:19,743.743 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:18:29,759.759 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:18:29,798.798 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:18:29,808.808 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:18:29,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:18:29,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:18:29,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:18:31,865.865 INFO    ] ================================================
[2026-10-18 11:18:31,884.884 INFO    ] Launching Daemon at Sun Oct 18 11:18:31 IST 2026
[2026-10-18 11:18:31,896.896 INFO    ] ================================================
[2026-10-18 11:18:32,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:18:32
[2026-10-18 11:18:33,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:18:33,354.354 INFO    ] Initializing speech engine...
[2026-10-18 11:18:33,367.367 INFO    ] 2026-10-18 11:18:33
[2026-10-18 11:18:33,624.624 INFO    ] 2026-10-18 11:18:33
[2026-10-18 11:18:33,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:18:33,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:18:33,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:18:34,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:18:34,107.107 INFO    ] time= 18/10/2026 11:18:34
[2026-10-18 11:18:34,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:18:34,202.202 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:18:34,328.328 INFO    ] No existing commands found in stream
[2026-10-18 11:18:39,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:18:39,361.361 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-18 11:18:41,312.312 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:18:41,314.314 INFO    ] Checking for system updates...
[2026-10-18 11:18:41,351.351 INFO    ] 200
[2026-10-18 11:18:41,354.354 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:18:41,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:18:41,408.408 INFO    ] No update needed
[2026-10-18 11:18:41,410.410 INFO    ] Checking for camera pi updates...
[2026-10-18 11:18:41,446.446 INFO    ] 200
[2026-10-18 11:18:41,449.449 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:18:41,488.488 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:18:51,503.503 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:18:51,538.538 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:18:51,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:18:51,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:18:51,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:18:51,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:18:53,599.599 INFO    ] ================================================
[2026-10-18 11:18:53,614.614 INFO    ] Launching Daemon at Sun Oct 18 11:18:53 IST 2026
[2026-10-18 11:18:53,625.625 INFO    ] ================================================
[2026-10-18 11:18:54,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:18:54
[2026-10-18 11:18:54,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:18:55,079.079 INFO    ] Initializing speech engine...
[2026-10-18 11:18:55,088.088 INFO    ] 2026-10-18 11:18:55
[2026-10-18 11:18:55,371.371 INFO    ] 2026-10-18 11:18:55
[2026-10-18 11:18:55,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:18:55,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:18:55,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:18:55,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:18:55,814.814 INFO    ] time= 18/10/2026 11:18:55
[2026-10-18 11:18:55,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:18:55,923.923 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:18:56,057.057 INFO    ] No existing commands found in stream
[2026-10-18 11:19:01,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:19:01,072.072 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-18 11:19:02,621.621 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:19:02,624.624 INFO    ] Checking for system updates...
[2026-10-18 11:19:02,666.666 INFO    ] 200
[2026-10-18 11:19:02,669.669 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:19:02,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:19:02,729.729 INFO    ] No update needed
[2026-10-18 11:19:02,733.733 INFO    ] Checking for camera pi updates...
[2026-10-18 11:19:02,769.769 INFO    ] 200
[2026-10-18 11:19:02,771.771 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:19:02,819.819 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:19:12,835.835 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:19:12,870.870 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:19:12,880.880 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:19:12,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:19:12,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:19:12,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:19:14,932.932 INFO    ] ================================================
[2026-10-18 11:19:14,947.947 INFO    ] Launching Daemon at Sun Oct 18 11:19:14 IST 2026
[2026-10-18 11:19:14,958.958 INFO    ] ================================================
[2026-10-18 11:19:15,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:19:15
[2026-10-18 11:19:16,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:19:16,406.406 INFO    ] Initializing speech engine...
[2026-10-18 11:19:16,429.429 INFO    ] 2026-10-18 11:19:16
[2026-10-18 11:19:16,686.686 INFO    ] 2026-10-18 11:19:16
[2026-10-18 11:19:16,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:19:16,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:19:17,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:19:17,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:19:17,261.261 INFO    ] time= 18/10/2026 11:19:17
[2026-10-18 11:19:17,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:19:17,286.286 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:19:17,418.418 INFO    ] No existing commands found in stream
[2026-10-18 11:19:22,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:19:22,443.443 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-18 11:19:23,080.080 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:19:23,082.082 INFO    ] Checking for system updates...
[2026-10-18 11:19:23,118.118 INFO    ] 200
[2026-10-18 11:19:23,120.120 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:19:23,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:19:23,174.174 INFO    ] No update needed
[2026-10-18 11:19:23,176.176 INFO    ] Checking for camera pi updates...
[2026-10-18 11:19:23,211.211 INFO    ] 200
[2026-10-18 11:19:23,214.214 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:19:23,259.259 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:19:33,270.270 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:19:33,309.309 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:19:33,320.320 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:19:33,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:19:33,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:19:33,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:19:35,375.375 INFO    ] ================================================
[2026-10-18 11:19:35,390.390 INFO    ] Launching Daemon at Sun Oct 18 11:19:35 IST 2026
[2026-10-18 11:19:35,401.401 INFO    ] ================================================
[2026-10-18 11:19:35,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:19:35
[2026-10-18 11:19:36,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:19:36,810.810 INFO    ] Initializing speech engine...
[2026-10-18 11:19:36,826.826 INFO    ] 2026-10-18 11:19:36
[2026-10-18 11:19:37,101.101 INFO    ] 2026-10-18 11:19:37
[2026-10-18 11:19:37,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:19:37,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:19:37,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:19:37,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:19:37,610.610 INFO    ] time= 18/10/2026 11:19:37
[2026-10-18 11:19:37,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:19:37,677.677 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:19:37,826.826 INFO    ] No existing commands found in stream
[2026-10-18 11:19:42,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:19:42,848.848 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-18 11:19:46,036.036 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:19:46,039.039 INFO    ] Checking for system updates...
[2026-10-18 11:19:46,074.074 INFO    ] 200
[2026-10-18 11:19:46,077.077 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:19:46,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:19:46,133.133 INFO    ] No update needed
[2026-10-18 11:19:46,135.135 INFO    ] Checking for camera pi updates...
[2026-10-18 11:19:46,169.169 INFO    ] 200
[2026-10-18 11:19:46,171.171 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:19:46,211.211 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:19:56,224.224 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:19:56,259.259 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:19:56,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:19:56,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:19:56,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:19:56,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:19:58,320.320 INFO    ] ================================================
[2026-10-18 11:19:58,336.336 INFO    ] Launching Daemon at Sun Oct 18 11:19:58 IST 2026
[2026-10-18 11:19:58,346.346 INFO    ] ================================================
[2026-10-18 11:19:58,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:19:58
[2026-10-18 11:19:59,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:19:59,969.969 INFO    ] Initializing speech engine...
[2026-10-18 11:19:59,978.978 INFO    ] 2026-10-18 11:19:59
[2026-10-18 11:20:00,257.257 INFO    ] 2026-10-18 11:20:00
[2026-10-18 11:20:00,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:20:00,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:20:00,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:20:00,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:20:00,789.789 INFO    ] time= 18/10/2026 11:20:00
[2026-10-18 11:20:00,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:20:00,840.840 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:20:00,954.954 INFO    ] No existing commands found in stream
[2026-10-18 11:20:05,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:20:05,985.985 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-18 11:20:08,467.467 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 11:20:08,470.470 INFO    ] Checking for system updates...
[2026-10-18 11:20:08,505.505 INFO    ] 200
[2026-10-18 11:20:08,508.508 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:20:08,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:20:08,567.567 INFO    ] No update needed
[2026-10-18 11:20:08,569.569 INFO    ] Checking for camera pi updates...
[2026-10-18 11:20:08,603.603 INFO    ] 200
[2026-10-18 11:20:08,606.606 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:20:08,646.646 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:20:18,661.661 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:20:18,697.697 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:20:18,707.707 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:20:18,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:20:18,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:20:18,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:20:20,760.760 INFO    ] ================================================
[2026-10-18 11:20:20,776.776 INFO    ] Launching Daemon at Sun Oct 18 11:20:20 IST 2026
[2026-10-18 11:20:20,787.787 INFO    ] ================================================
[2026-10-18 11:20:21,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:20:21
[2026-10-18 11:20:22,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:20:22,475.475 INFO    ] Initializing speech engine...
[2026-10-18 11:20:22,489.489 INFO    ] 2026-10-18 11:20:22
[2026-10-18 11:20:22,782.782 INFO    ] 2026-10-18 11:20:22
[2026-10-18 11:20:22,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:20:23,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:20:23,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:20:23,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:20:23,316.316 INFO    ] time= 18/10/2026 11:20:23
[2026-10-18 11:20:23,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:20:23,366.366 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:20:23,510.510 INFO    ] No existing commands found in stream
[2026-10-18 11:20:28,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:20:28,544.544 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-18 11:20:32,509.509 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:20:32,513.513 INFO    ] Checking for system updates...
[2026-10-18 11:20:32,560.560 INFO    ] 200
[2026-10-18 11:20:32,562.562 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:20:32,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:20:32,618.618 INFO    ] No update needed
[2026-10-18 11:20:32,621.621 INFO    ] Checking for camera pi updates...
[2026-10-18 11:20:32,659.659 INFO    ] 200
[2026-10-18 11:20:32,661.661 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:20:32,702.702 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:20:42,721.721 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:20:42,756.756 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:20:42,765.765 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:20:42,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:20:42,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:20:42,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:20:44,817.817 INFO    ] ================================================
[2026-10-18 11:20:44,833.833 INFO    ] Launching Daemon at Sun Oct 18 11:20:44 IST 2026
[2026-10-18 11:20:44,844.844 INFO    ] ================================================
[2026-10-18 11:20:45,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:20:45
[2026-10-18 11:20:46,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:20:46,538.538 INFO    ] Initializing speech engine...
[2026-10-18 11:20:46,546.546 INFO    ] 2026-10-18 11:20:46
[2026-10-18 11:20:46,833.833 INFO    ] 2026-10-18 11:20:46
[2026-10-18 11:20:46,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:20:47,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:20:47,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:20:47,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:20:47,372.372 INFO    ] time= 18/10/2026 11:20:47
[2026-10-18 11:20:47,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:20:47,422.422 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:20:47,533.533 INFO    ] No existing commands found in stream
[2026-10-18 11:20:52,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:20:52,567.567 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-18 11:20:53,722.722 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 11:20:53,725.725 INFO    ] Checking for system updates...
[2026-10-18 11:20:53,767.767 INFO    ] 200
[2026-10-18 11:20:53,769.769 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:20:53,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:20:53,832.832 INFO    ] No update needed
[2026-10-18 11:20:53,834.834 INFO    ] Checking for camera pi updates...
[2026-10-18 11:20:53,868.868 INFO    ] 200
[2026-10-18 11:20:53,871.871 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:20:53,911.911 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:21:03,924.924 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:21:03,960.960 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:21:03,970.970 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:21:03,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:21:03,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:21:03,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:21:06,030.030 INFO    ] ================================================
[2026-10-18 11:21:06,046.046 INFO    ] Launching Daemon at Sun Oct 18 11:21:06 IST 2026
[2026-10-18 11:21:06,056.056 INFO    ] ================================================
[2026-10-18 11:21:06,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:21:06
[2026-10-18 11:21:07,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:21:07,495.495 INFO    ] Initializing speech engine...
[2026-10-18 11:21:07,500.500 INFO    ] 2026-10-18 11:21:07
[2026-10-18 11:21:07,758.758 INFO    ] 2026-10-18 11:21:07
[2026-10-18 11:21:07,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:21:08,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:21:08,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:21:08,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:21:08,299.299 INFO    ] time= 18/10/2026 11:21:08
[2026-10-18 11:21:08,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:21:08,324.324 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:21:08,455.455 INFO    ] No existing commands found in stream
[2026-10-18 11:21:13,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:21:13,481.481 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-18 11:21:17,272.272 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:21:17,275.275 INFO    ] Checking for system updates...
[2026-10-18 11:21:17,328.328 INFO    ] 200
[2026-10-18 11:21:17,331.331 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:21:17,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:21:17,393.393 INFO    ] No update needed
[2026-10-18 11:21:17,395.395 INFO    ] Checking for camera pi updates...
[2026-10-18 11:21:17,433.433 INFO    ] 200
[2026-10-18 11:21:17,436.436 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:21:17,482.482 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:21:27,499.499 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:21:27,543.543 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:21:27,554.554 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:21:27,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:21:27,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:21:27,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:21:29,615.615 INFO    ] ================================================
[2026-10-18 11:21:29,631.631 INFO    ] Launching Daemon at Sun Oct 18 11:21:29 IST 2026
[2026-10-18 11:21:29,642.642 INFO    ] ================================================
[2026-10-18 11:21:30,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:21:30
[2026-10-18 11:21:30,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:21:31,301.301 INFO    ] Initializing speech engine...
[2026-10-18 11:21:31,314.314 INFO    ] 2026-10-18 11:21:31
[2026-10-18 11:21:31,624.624 INFO    ] 2026-10-18 11:21:31
[2026-10-18 11:21:31,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:21:31,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:21:31,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:21:32,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:21:32,210.210 INFO    ] time= 18/10/2026 11:21:32
[2026-10-18 11:21:32,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:21:32,262.262 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:21:32,405.405 INFO    ] No existing commands found in stream
[2026-10-18 11:21:37,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:21:37,458.458 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-18 11:21:39,048.048 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:21:39,051.051 INFO    ] Checking for system updates...
[2026-10-18 11:21:39,090.090 INFO    ] 200
[2026-10-18 11:21:39,093.093 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:21:39,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:21:39,149.149 INFO    ] No update needed
[2026-10-18 11:21:39,153.153 INFO    ] Checking for camera pi updates...
[2026-10-18 11:21:39,191.191 INFO    ] 200
[2026-10-18 11:21:39,193.193 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:21:39,233.233 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:21:49,248.248 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:21:49,284.284 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:21:49,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:21:49,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:21:49,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:21:49,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:21:51,353.353 INFO    ] ================================================
[2026-10-18 11:21:51,369.369 INFO    ] Launching Daemon at Sun Oct 18 11:21:51 IST 2026
[2026-10-18 11:21:51,381.381 INFO    ] ================================================
[2026-10-18 11:21:51,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:21:51
[2026-10-18 11:21:52,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:21:52,809.809 INFO    ] Initializing speech engine...
[2026-10-18 11:21:52,816.816 INFO    ] 2026-10-18 11:21:52
[2026-10-18 11:21:53,074.074 INFO    ] 2026-10-18 11:21:53
[2026-10-18 11:21:53,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:21:53,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:21:53,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:21:53,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:21:53,556.556 INFO    ] time= 18/10/2026 11:21:53
[2026-10-18 11:21:53,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:21:53,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:21:53,772.772 INFO    ] No existing commands found in stream
[2026-10-18 11:21:58,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:21:58,792.792 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-18 11:22:02,873.873 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:22:02,876.876 INFO    ] Checking for system updates...
[2026-10-18 11:22:02,919.919 INFO    ] 200
[2026-10-18 11:22:02,922.922 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:22:02,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:22:02,985.985 INFO    ] No update needed
[2026-10-18 11:22:02,988.988 INFO    ] Checking for camera pi updates...
[2026-10-18 11:22:03,043.043 INFO    ] 200
[2026-10-18 11:22:03,048.048 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:22:03,108.108 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:22:13,126.126 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:22:13,161.161 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:22:13,171.171 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:22:13,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:22:13,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:22:13,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:22:15,226.226 INFO    ] ================================================
[2026-10-18 11:22:15,241.241 INFO    ] Launching Daemon at Sun Oct 18 11:22:15 IST 2026
[2026-10-18 11:22:15,252.252 INFO    ] ================================================
[2026-10-18 11:22:15,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:22:15
[2026-10-18 11:22:16,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:22:16,831.831 INFO    ] Initializing speech engine...
[2026-10-18 11:22:16,840.840 INFO    ] 2026-10-18 11:22:16
[2026-10-18 11:22:17,130.130 INFO    ] 2026-10-18 11:22:17
[2026-10-18 11:22:17,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:22:17,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:22:17,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:22:17,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:22:17,670.670 INFO    ] time= 18/10/2026 11:22:17
[2026-10-18 11:22:17,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:22:17,707.707 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:22:17,876.876 INFO    ] No existing commands found in stream
[2026-10-18 11:22:22,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:22:22,921.921 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-18 11:22:25,436.436 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:22:25,439.439 INFO    ] Checking for system updates...
[2026-10-18 11:22:25,477.477 INFO    ] 200
[2026-10-18 11:22:25,479.479 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:22:25,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:22:25,534.534 INFO    ] No update needed
[2026-10-18 11:22:25,536.536 INFO    ] Checking for camera pi updates...
[2026-10-18 11:22:25,572.572 INFO    ] 200
[2026-10-18 11:22:25,575.575 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:22:25,615.615 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:22:35,630.630 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:22:35,664.664 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:22:35,674.674 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:22:35,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:22:35,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:22:35,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:22:37,727.727 INFO    ] ================================================
[2026-10-18 11:22:37,743.743 INFO    ] Launching Daemon at Sun Oct 18 11:22:37 IST 2026
[2026-10-18 11:22:37,754.754 INFO    ] ================================================
[2026-10-18 11:22:38,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:22:38
[2026-10-18 11:22:38,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:22:39,213.213 INFO    ] Initializing speech engine...
[2026-10-18 11:22:39,222.222 INFO    ] 2026-10-18 11:22:39
[2026-10-18 11:22:39,470.470 INFO    ] 2026-10-18 11:22:39
[2026-10-18 11:22:39,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:22:39,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:22:39,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:22:39,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:22:40,025.025 INFO    ] time= 18/10/2026 11:22:39
[2026-10-18 11:22:40,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:22:40,051.051 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:22:40,173.173 INFO    ] No existing commands found in stream
[2026-10-18 11:22:45,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:22:45,197.197 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-18 11:22:46,919.919 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 11:22:46,922.922 INFO    ] Checking for system updates...
[2026-10-18 11:22:46,961.961 INFO    ] 200
[2026-10-18 11:22:46,964.964 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:22:47,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:22:47,022.022 INFO    ] No update needed
[2026-10-18 11:22:47,024.024 INFO    ] Checking for camera pi updates...
[2026-10-18 11:22:47,062.062 INFO    ] 200
[2026-10-18 11:22:47,065.065 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:22:47,111.111 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:22:57,128.128 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:22:57,167.167 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:22:57,177.177 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:22:57,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:22:57,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:22:57,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:22:59,233.233 INFO    ] ================================================
[2026-10-18 11:22:59,248.248 INFO    ] Launching Daemon at Sun Oct 18 11:22:59 IST 2026
[2026-10-18 11:22:59,259.259 INFO    ] ================================================
[2026-10-18 11:22:59,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:22:59
[2026-10-18 11:23:00,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:23:00,844.844 INFO    ] Initializing speech engine...
[2026-10-18 11:23:00,851.851 INFO    ] 2026-10-18 11:23:00
[2026-10-18 11:23:01,122.122 INFO    ] 2026-10-18 11:23:01
[2026-10-18 11:23:01,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:23:01,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:23:01,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:23:01,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:23:01,669.669 INFO    ] time= 18/10/2026 11:23:01
[2026-10-18 11:23:01,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:23:01,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:23:01,818.818 INFO    ] No existing commands found in stream
[2026-10-18 11:23:06,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:23:06,832.832 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-18 11:23:07,821.821 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:23:07,823.823 INFO    ] Checking for system updates...
[2026-10-18 11:23:07,899.899 INFO    ] 200
[2026-10-18 11:23:07,901.901 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:23:07,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:23:07,962.962 INFO    ] No update needed
[2026-10-18 11:23:07,964.964 INFO    ] Checking for camera pi updates...
[2026-10-18 11:23:08,002.002 INFO    ] 200
[2026-10-18 11:23:08,004.004 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:23:08,045.045 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:23:18,062.062 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:23:18,096.096 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:23:18,106.106 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:23:18,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:23:18,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:23:18,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:23:20,159.159 INFO    ] ================================================
[2026-10-18 11:23:20,174.174 INFO    ] Launching Daemon at Sun Oct 18 11:23:20 IST 2026
[2026-10-18 11:23:20,186.186 INFO    ] ================================================
[2026-10-18 11:23:20,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:23:20
[2026-10-18 11:23:21,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:23:21,628.628 INFO    ] Initializing speech engine...
[2026-10-18 11:23:21,637.637 INFO    ] 2026-10-18 11:23:21
[2026-10-18 11:23:21,883.883 INFO    ] 2026-10-18 11:23:21
[2026-10-18 11:23:21,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:23:22,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:23:22,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:23:22,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:23:22,438.438 INFO    ] time= 18/10/2026 11:23:22
[2026-10-18 11:23:22,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:23:22,461.461 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:23:22,591.591 INFO    ] No existing commands found in stream
[2026-10-18 11:23:27,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:23:27,609.609 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-18 11:23:29,838.838 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:23:29,841.841 INFO    ] Checking for system updates...
[2026-10-18 11:23:29,880.880 INFO    ] 200
[2026-10-18 11:23:29,883.883 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:23:29,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:23:29,938.938 INFO    ] No update needed
[2026-10-18 11:23:29,941.941 INFO    ] Checking for camera pi updates...
[2026-10-18 11:23:29,974.974 INFO    ] 200
[2026-10-18 11:23:29,976.976 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:23:30,020.020 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:23:40,035.035 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:23:40,069.069 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:23:40,079.079 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:23:40,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:23:40,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:23:40,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:23:42,131.131 INFO    ] ================================================
[2026-10-18 11:23:42,147.147 INFO    ] Launching Daemon at Sun Oct 18 11:23:42 IST 2026
[2026-10-18 11:23:42,157.157 INFO    ] ================================================
[2026-10-18 11:23:42,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:23:42
[2026-10-18 11:23:43,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:23:43,714.714 INFO    ] Initializing speech engine...
[2026-10-18 11:23:43,723.723 INFO    ] 2026-10-18 11:23:43
[2026-10-18 11:23:43,983.983 INFO    ] 2026-10-18 11:23:43
[2026-10-18 11:23:44,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:23:44,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:23:44,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:23:44,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:23:44,530.530 INFO    ] time= 18/10/2026 11:23:44
[2026-10-18 11:23:44,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:23:44,555.555 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:23:44,686.686 INFO    ] No existing commands found in stream
[2026-10-18 11:23:49,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:23:49,708.708 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-18 11:23:50,593.593 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:23:50,595.595 INFO    ] Checking for system updates...
[2026-10-18 11:23:50,631.631 INFO    ] 200
[2026-10-18 11:23:50,633.633 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:23:50,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:23:50,687.687 INFO    ] No update needed
[2026-10-18 11:23:50,690.690 INFO    ] Checking for camera pi updates...
[2026-10-18 11:23:50,727.727 INFO    ] 200
[2026-10-18 11:23:50,729.729 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:23:50,773.773 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:24:00,788.788 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:24:00,823.823 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:24:00,832.832 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:24:00,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:24:00,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:24:00,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:24:02,905.905 INFO    ] ================================================
[2026-10-18 11:24:02,927.927 INFO    ] Launching Daemon at Sun Oct 18 11:24:02 IST 2026
[2026-10-18 11:24:02,942.942 INFO    ] ================================================
[2026-10-18 11:24:03,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:24:03
[2026-10-18 11:24:04,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:24:04,569.569 INFO    ] Initializing speech engine...
[2026-10-18 11:24:04,579.579 INFO    ] 2026-10-18 11:24:04
[2026-10-18 11:24:04,869.869 INFO    ] 2026-10-18 11:24:04
[2026-10-18 11:24:04,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:24:05,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:24:05,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:24:05,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:24:05,415.415 INFO    ] time= 18/10/2026 11:24:05
[2026-10-18 11:24:05,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:24:05,451.451 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:24:05,580.580 INFO    ] No existing commands found in stream
[2026-10-18 11:24:10,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:24:10,609.609 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-18 11:24:12,274.274 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:24:12,278.278 INFO    ] Checking for system updates...
[2026-10-18 11:24:12,319.319 INFO    ] 200
[2026-10-18 11:24:12,322.322 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:24:12,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:24:12,385.385 INFO    ] No update needed
[2026-10-18 11:24:12,388.388 INFO    ] Checking for camera pi updates...
[2026-10-18 11:24:12,426.426 INFO    ] 200
[2026-10-18 11:24:12,429.429 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:24:12,476.476 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:24:22,489.489 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:24:22,529.529 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:24:22,541.541 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:24:22,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:24:22,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:24:22,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:24:24,596.596 INFO    ] ================================================
[2026-10-18 11:24:24,611.611 INFO    ] Launching Daemon at Sun Oct 18 11:24:24 IST 2026
[2026-10-18 11:24:24,622.622 INFO    ] ================================================
[2026-10-18 11:24:25,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:24:25
[2026-10-18 11:24:25,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:24:26,048.048 INFO    ] Initializing speech engine...
[2026-10-18 11:24:26,053.053 INFO    ] 2026-10-18 11:24:26
[2026-10-18 11:24:26,349.349 INFO    ] 2026-10-18 11:24:26
[2026-10-18 11:24:26,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:24:26,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:24:26,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:24:26,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:24:26,770.770 INFO    ] time= 18/10/2026 11:24:26
[2026-10-18 11:24:26,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:24:26,782.782 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:24:26,939.939 INFO    ] No existing commands found in stream
[2026-10-18 11:24:31,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:24:31,968.968 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-18 11:24:36,029.029 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:24:36,032.032 INFO    ] Checking for system updates...
[2026-10-18 11:24:36,071.071 INFO    ] 200
[2026-10-18 11:24:36,073.073 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:24:36,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:24:36,134.134 INFO    ] No update needed
[2026-10-18 11:24:36,136.136 INFO    ] Checking for camera pi updates...
[2026-10-18 11:24:36,170.170 INFO    ] 200
[2026-10-18 11:24:36,172.172 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:24:36,212.212 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:24:46,227.227 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:24:46,262.262 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:24:46,272.272 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:24:46,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:24:46,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:24:46,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:24:48,324.324 INFO    ] ================================================
[2026-10-18 11:24:48,339.339 INFO    ] Launching Daemon at Sun Oct 18 11:24:48 IST 2026
[2026-10-18 11:24:48,357.357 INFO    ] ================================================
[2026-10-18 11:24:48,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:24:48
[2026-10-18 11:24:49,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:24:49,833.833 INFO    ] Initializing speech engine...
[2026-10-18 11:24:49,839.839 INFO    ] 2026-10-18 11:24:49
[2026-10-18 11:24:50,102.102 INFO    ] 2026-10-18 11:24:50
[2026-10-18 11:24:50,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:24:50,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:24:50,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:24:50,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:24:50,656.656 INFO    ] time= 18/10/2026 11:24:50
[2026-10-18 11:24:50,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:24:50,682.682 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:24:50,808.808 INFO    ] No existing commands found in stream
[2026-10-18 11:24:55,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:24:55,824.824 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-18 11:24:56,894.894 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 11:24:56,897.897 INFO    ] Checking for system updates...
[2026-10-18 11:24:56,941.941 INFO    ] 200
[2026-10-18 11:24:56,943.943 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:24:57,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:24:57,012.012 INFO    ] No update needed
[2026-10-18 11:24:57,015.015 INFO    ] Checking for camera pi updates...
[2026-10-18 11:24:57,053.053 INFO    ] 200
[2026-10-18 11:24:57,055.055 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:24:57,095.095 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:25:07,125.125 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:25:07,160.160 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:25:07,170.170 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:25:07,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:25:07,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:25:07,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:25:09,223.223 INFO    ] ================================================
[2026-10-18 11:25:09,239.239 INFO    ] Launching Daemon at Sun Oct 18 11:25:09 IST 2026
[2026-10-18 11:25:09,250.250 INFO    ] ================================================
[2026-10-18 11:25:09,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:25:09
[2026-10-18 11:25:10,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:25:10,904.904 INFO    ] Initializing speech engine...
[2026-10-18 11:25:10,910.910 INFO    ] 2026-10-18 11:25:10
[2026-10-18 11:25:11,219.219 INFO    ] 2026-10-18 11:25:11
[2026-10-18 11:25:11,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:25:11,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:25:11,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:25:11,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:25:11,749.749 INFO    ] time= 18/10/2026 11:25:11
[2026-10-18 11:25:11,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:25:11,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:25:11,912.912 INFO    ] No existing commands found in stream
[2026-10-18 11:25:16,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:25:16,947.947 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-18 11:25:19,680.680 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:25:19,683.683 INFO    ] Checking for system updates...
[2026-10-18 11:25:19,721.721 INFO    ] 200
[2026-10-18 11:25:19,724.724 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:25:19,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:25:19,784.784 INFO    ] No update needed
[2026-10-18 11:25:19,786.786 INFO    ] Checking for camera pi updates...
[2026-10-18 11:25:19,828.828 INFO    ] 200
[2026-10-18 11:25:19,830.830 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:25:19,874.874 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:25:29,889.889 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:25:29,925.925 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:25:29,935.935 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:25:29,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:25:29,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:25:29,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:25:31,989.989 INFO    ] ================================================
[2026-10-18 11:25:32,006.006 INFO    ] Launching Daemon at Sun Oct 18 11:25:32 IST 2026
[2026-10-18 11:25:32,018.018 INFO    ] ================================================
[2026-10-18 11:25:32,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:25:32
[2026-10-18 11:25:33,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:25:33,565.565 INFO    ] Initializing speech engine...
[2026-10-18 11:25:33,581.581 INFO    ] 2026-10-18 11:25:33
[2026-10-18 11:25:33,854.854 INFO    ] 2026-10-18 11:25:33
[2026-10-18 11:25:33,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:25:34,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:25:34,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:25:34,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:25:34,391.391 INFO    ] time= 18/10/2026 11:25:34
[2026-10-18 11:25:34,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:25:34,426.426 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:25:34,551.551 INFO    ] No existing commands found in stream
[2026-10-18 11:25:39,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:25:39,590.590 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-18 11:25:41,213.213 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:25:41,215.215 INFO    ] Checking for system updates...
[2026-10-18 11:25:41,255.255 INFO    ] 200
[2026-10-18 11:25:41,258.258 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:25:41,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:25:41,320.320 INFO    ] No update needed
[2026-10-18 11:25:41,322.322 INFO    ] Checking for camera pi updates...
[2026-10-18 11:25:41,356.356 INFO    ] 200
[2026-10-18 11:25:41,358.358 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:25:41,399.399 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:25:51,414.414 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:25:51,449.449 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:25:51,459.459 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:25:51,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:25:51,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:25:51,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:25:53,514.514 INFO    ] ================================================
[2026-10-18 11:25:53,530.530 INFO    ] Launching Daemon at Sun Oct 18 11:25:53 IST 2026
[2026-10-18 11:25:53,541.541 INFO    ] ================================================
[2026-10-18 11:25:54,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:25:54
[2026-10-18 11:25:54,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:25:54,972.972 INFO    ] Initializing speech engine...
[2026-10-18 11:25:54,979.979 INFO    ] 2026-10-18 11:25:54
[2026-10-18 11:25:55,233.233 INFO    ] 2026-10-18 11:25:55
[2026-10-18 11:25:55,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:25:55,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:25:55,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:25:55,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:25:55,780.780 INFO    ] time= 18/10/2026 11:25:55
[2026-10-18 11:25:55,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:25:55,804.804 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:25:55,936.936 INFO    ] No existing commands found in stream
[2026-10-18 11:26:00,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:26:00,953.953 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-18 11:26:03,965.965 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 11:26:03,968.968 INFO    ] Checking for system updates...
[2026-10-18 11:26:04,007.007 INFO    ] 200
[2026-10-18 11:26:04,009.009 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:26:04,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:26:04,069.069 INFO    ] No update needed
[2026-10-18 11:26:04,071.071 INFO    ] Checking for camera pi updates...
[2026-10-18 11:26:04,105.105 INFO    ] 200
[2026-10-18 11:26:04,107.107 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:26:04,148.148 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:26:14,164.164 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:26:14,198.198 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:26:14,208.208 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:26:14,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:26:14,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:26:14,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:26:16,261.261 INFO    ] ================================================
[2026-10-18 11:26:16,277.277 INFO    ] Launching Daemon at Sun Oct 18 11:26:16 IST 2026
[2026-10-18 11:26:16,288.288 INFO    ] ================================================
[2026-10-18 11:26:16,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:26:16
[2026-10-18 11:26:17,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:26:17,892.892 INFO    ] Initializing speech engine...
[2026-10-18 11:26:17,905.905 INFO    ] 2026-10-18 11:26:17
[2026-10-18 11:26:18,185.185 INFO    ] 2026-10-18 11:26:18
[2026-10-18 11:26:18,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:26:18,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:26:18,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:26:18,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:26:18,733.733 INFO    ] time= 18/10/2026 11:26:18
[2026-10-18 11:26:18,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:26:18,772.772 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:26:18,890.890 INFO    ] No existing commands found in stream
[2026-10-18 11:26:23,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:26:23,929.929 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-18 11:26:25,260.260 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:26:25,263.263 INFO    ] Checking for system updates...
[2026-10-18 11:26:25,299.299 INFO    ] 200
[2026-10-18 11:26:25,302.302 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:26:25,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:26:25,425.425 INFO    ] No update needed
[2026-10-18 11:26:25,428.428 INFO    ] Checking for camera pi updates...
[2026-10-18 11:26:25,465.465 INFO    ] 200
[2026-10-18 11:26:25,468.468 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:26:25,513.513 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:26:35,530.530 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:26:35,642.642 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:26:35,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:26:35,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:26:35,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:26:35,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:26:37,708.708 INFO    ] ================================================
[2026-10-18 11:26:37,723.723 INFO    ] Launching Daemon at Sun Oct 18 11:26:37 IST 2026
[2026-10-18 11:26:37,734.734 INFO    ] ================================================
[2026-10-18 11:26:38,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:26:38
[2026-10-18 11:26:39,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:26:39,338.338 INFO    ] Initializing speech engine...
[2026-10-18 11:26:39,348.348 INFO    ] 2026-10-18 11:26:39
[2026-10-18 11:26:39,617.617 INFO    ] 2026-10-18 11:26:39
[2026-10-18 11:26:39,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:26:39,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:26:39,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:26:40,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:26:40,186.186 INFO    ] time= 18/10/2026 11:26:40
[2026-10-18 11:26:40,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:26:40,211.211 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:26:40,348.348 INFO    ] No existing commands found in stream
[2026-10-18 11:26:45,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:26:45,367.367 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-18 11:26:49,537.537 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 11:26:49,540.540 INFO    ] Checking for system updates...
[2026-10-18 11:26:49,580.580 INFO    ] 200
[2026-10-18 11:26:49,583.583 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:26:49,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:26:49,645.645 INFO    ] No update needed
[2026-10-18 11:26:49,648.648 INFO    ] Checking for camera pi updates...
[2026-10-18 11:26:49,686.686 INFO    ] 200
[2026-10-18 11:26:49,689.689 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:26:49,734.734 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:26:59,748.748 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:26:59,788.788 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:26:59,799.799 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:26:59,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:26:59,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:26:59,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:27:01,871.871 INFO    ] ================================================
[2026-10-18 11:27:01,894.894 INFO    ] Launching Daemon at Sun Oct 18 11:27:01 IST 2026
[2026-10-18 11:27:01,929.929 INFO    ] ================================================
[2026-10-18 11:27:02,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:27:02
[2026-10-18 11:27:03,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:27:03,626.626 INFO    ] Initializing speech engine...
[2026-10-18 11:27:03,640.640 INFO    ] 2026-10-18 11:27:03
[2026-10-18 11:27:03,941.941 INFO    ] 2026-10-18 11:27:03
[2026-10-18 11:27:03,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:27:04,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:27:04,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:27:04,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:27:04,434.434 INFO    ] time= 18/10/2026 11:27:04
[2026-10-18 11:27:04,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:27:04,507.507 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:27:04,639.639 INFO    ] No existing commands found in stream
[2026-10-18 11:27:09,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:27:09,666.666 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-18 11:27:12,526.526 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:27:12,529.529 INFO    ] Checking for system updates...
[2026-10-18 11:27:12,566.566 INFO    ] 200
[2026-10-18 11:27:12,568.568 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:27:12,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:27:12,631.631 INFO    ] No update needed
[2026-10-18 11:27:12,633.633 INFO    ] Checking for camera pi updates...
[2026-10-18 11:27:12,671.671 INFO    ] 200
[2026-10-18 11:27:12,674.674 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:27:12,719.719 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:27:22,736.736 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:27:22,775.775 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:27:22,786.786 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:27:22,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:27:22,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:27:22,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:27:24,841.841 INFO    ] ================================================
[2026-10-18 11:27:24,856.856 INFO    ] Launching Daemon at Sun Oct 18 11:27:24 IST 2026
[2026-10-18 11:27:24,867.867 INFO    ] ================================================
[2026-10-18 11:27:25,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:27:25
[2026-10-18 11:27:26,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:27:26,281.281 INFO    ] Initializing speech engine...
[2026-10-18 11:27:26,289.289 INFO    ] 2026-10-18 11:27:26
[2026-10-18 11:27:26,582.582 INFO    ] 2026-10-18 11:27:26
[2026-10-18 11:27:26,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:27:26,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:27:26,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:27:27,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:27:27,081.081 INFO    ] time= 18/10/2026 11:27:27
[2026-10-18 11:27:27,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:27:27,190.190 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:27:27,378.378 INFO    ] No existing commands found in stream
[2026-10-18 11:27:32,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:27:32,398.398 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-18 11:27:34,713.713 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:27:34,716.716 INFO    ] Checking for system updates...
[2026-10-18 11:27:34,752.752 INFO    ] 200
[2026-10-18 11:27:34,754.754 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:27:34,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:27:34,808.808 INFO    ] No update needed
[2026-10-18 11:27:34,811.811 INFO    ] Checking for camera pi updates...
[2026-10-18 11:27:34,847.847 INFO    ] 200
[2026-10-18 11:27:34,850.850 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:27:34,893.893 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:27:44,908.908 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:27:44,942.942 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:27:44,952.952 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:27:44,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:27:44,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:27:44,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:27:47,004.004 INFO    ] ================================================
[2026-10-18 11:27:47,019.019 INFO    ] Launching Daemon at Sun Oct 18 11:27:47 IST 2026
[2026-10-18 11:27:47,030.030 INFO    ] ================================================
[2026-10-18 11:27:47,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:27:47
[2026-10-18 11:27:48,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:27:48,455.455 INFO    ] Initializing speech engine...
[2026-10-18 11:27:48,464.464 INFO    ] 2026-10-18 11:27:48
[2026-10-18 11:27:48,715.715 INFO    ] 2026-10-18 11:27:48
[2026-10-18 11:27:48,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:27:48,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:27:49,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:27:49,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:27:49,285.285 INFO    ] time= 18/10/2026 11:27:49
[2026-10-18 11:27:49,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:27:49,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:27:49,438.438 INFO    ] No existing commands found in stream
[2026-10-18 11:27:54,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:27:54,458.458 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-18 11:27:55,044.044 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 11:27:55,047.047 INFO    ] Checking for system updates...
[2026-10-18 11:27:55,084.084 INFO    ] 200
[2026-10-18 11:27:55,086.086 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:27:55,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:27:55,143.143 INFO    ] No update needed
[2026-10-18 11:27:55,146.146 INFO    ] Checking for camera pi updates...
[2026-10-18 11:27:55,180.180 INFO    ] 200
[2026-10-18 11:27:55,183.183 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:27:55,224.224 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:28:05,239.239 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:28:05,278.278 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:28:05,289.289 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:28:05,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:28:05,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:28:05,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:28:07,344.344 INFO    ] ================================================
[2026-10-18 11:28:07,359.359 INFO    ] Launching Daemon at Sun Oct 18 11:28:07 IST 2026
[2026-10-18 11:28:07,370.370 INFO    ] ================================================
[2026-10-18 11:28:07,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:28:07
[2026-10-18 11:28:08,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:28:08,840.840 INFO    ] Initializing speech engine...
[2026-10-18 11:28:08,848.848 INFO    ] 2026-10-18 11:28:08
[2026-10-18 11:28:09,106.106 INFO    ] 2026-10-18 11:28:09
[2026-10-18 11:28:09,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:28:09,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:28:09,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:28:09,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:28:09,638.638 INFO    ] time= 18/10/2026 11:28:09
[2026-10-18 11:28:09,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:28:09,671.671 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:28:09,815.815 INFO    ] No existing commands found in stream
[2026-10-18 11:28:14,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:28:14,851.851 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-18 11:28:16,665.665 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 11:28:16,668.668 INFO    ] Checking for system updates...
[2026-10-18 11:28:16,704.704 INFO    ] 200
[2026-10-18 11:28:16,706.706 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:28:16,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:28:16,762.762 INFO    ] No update needed
[2026-10-18 11:28:16,765.765 INFO    ] Checking for camera pi updates...
[2026-10-18 11:28:16,803.803 INFO    ] 200
[2026-10-18 11:28:16,805.805 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:28:16,845.845 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:28:26,860.860 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:28:26,896.896 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:28:26,906.906 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:28:26,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:28:26,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:28:26,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:28:28,959.959 INFO    ] ================================================
[2026-10-18 11:28:28,974.974 INFO    ] Launching Daemon at Sun Oct 18 11:28:28 IST 2026
[2026-10-18 11:28:28,985.985 INFO    ] ================================================
[2026-10-18 11:28:29,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:28:29
[2026-10-18 11:28:30,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:28:30,390.390 INFO    ] Initializing speech engine...
[2026-10-18 11:28:30,413.413 INFO    ] 2026-10-18 11:28:30
[2026-10-18 11:28:30,664.664 INFO    ] 2026-10-18 11:28:30
[2026-10-18 11:28:30,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:28:30,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:28:30,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:28:31,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:28:31,219.219 INFO    ] time= 18/10/2026 11:28:31
[2026-10-18 11:28:31,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:28:31,245.245 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:28:31,378.378 INFO    ] No existing commands found in stream
[2026-10-18 11:28:36,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:28:36,411.411 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-18 11:28:39,438.438 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:28:39,441.441 INFO    ] Checking for system updates...
[2026-10-18 11:28:39,476.476 INFO    ] 200
[2026-10-18 11:28:39,478.478 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:28:39,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:28:39,533.533 INFO    ] No update needed
[2026-10-18 11:28:39,536.536 INFO    ] Checking for camera pi updates...
[2026-10-18 11:28:39,570.570 INFO    ] 200
[2026-10-18 11:28:39,572.572 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:28:39,612.612 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:28:49,627.627 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:28:49,662.662 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:28:49,671.671 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:28:49,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:28:49,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:28:49,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:28:51,725.725 INFO    ] ================================================
[2026-10-18 11:28:51,740.740 INFO    ] Launching Daemon at Sun Oct 18 11:28:51 IST 2026
[2026-10-18 11:28:51,751.751 INFO    ] ================================================
[2026-10-18 11:28:52,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:28:52
[2026-10-18 11:28:52,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:28:53,184.184 INFO    ] Initializing speech engine...
[2026-10-18 11:28:53,191.191 INFO    ] 2026-10-18 11:28:53
[2026-10-18 11:28:53,434.434 INFO    ] 2026-10-18 11:28:53
[2026-10-18 11:28:53,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:28:53,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:28:53,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:28:53,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:28:53,923.923 INFO    ] time= 18/10/2026 11:28:53
[2026-10-18 11:28:53,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:28:53,997.997 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:28:54,137.137 INFO    ] No existing commands found in stream
[2026-10-18 11:28:59,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:28:59,156.156 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-18 11:29:00,109.109 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:29:00,112.112 INFO    ] Checking for system updates...
[2026-10-18 11:29:00,149.149 INFO    ] 200
[2026-10-18 11:29:00,151.151 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:29:00,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:29:00,206.206 INFO    ] No update needed
[2026-10-18 11:29:00,208.208 INFO    ] Checking for camera pi updates...
[2026-10-18 11:29:00,241.241 INFO    ] 200
[2026-10-18 11:29:00,243.243 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:29:00,283.283 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:29:10,298.298 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:29:10,333.333 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:29:10,342.342 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:29:10,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:29:10,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:29:10,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:29:12,396.396 INFO    ] ================================================
[2026-10-18 11:29:12,412.412 INFO    ] Launching Daemon at Sun Oct 18 11:29:12 IST 2026
[2026-10-18 11:29:12,423.423 INFO    ] ================================================
[2026-10-18 11:29:13,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:29:13
[2026-10-18 11:29:13,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:29:14,071.071 INFO    ] Initializing speech engine...
[2026-10-18 11:29:14,084.084 INFO    ] 2026-10-18 11:29:14
[2026-10-18 11:29:14,397.397 INFO    ] 2026-10-18 11:29:14
[2026-10-18 11:29:14,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:29:14,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:29:14,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:29:14,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:29:14,904.904 INFO    ] time= 18/10/2026 11:29:14
[2026-10-18 11:29:14,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:29:14,932.932 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:29:15,115.115 INFO    ] No existing commands found in stream
[2026-10-18 11:29:20,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:29:20,149.149 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-18 11:29:21,253.253 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:29:21,256.256 INFO    ] Checking for system updates...
[2026-10-18 11:29:21,293.293 INFO    ] 200
[2026-10-18 11:29:21,296.296 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:29:21,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:29:21,351.351 INFO    ] No update needed
[2026-10-18 11:29:21,354.354 INFO    ] Checking for camera pi updates...
[2026-10-18 11:29:21,387.387 INFO    ] 200
[2026-10-18 11:29:21,390.390 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:29:21,430.430 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:29:31,446.446 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:29:31,480.480 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:29:31,490.490 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:29:31,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:29:31,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:29:31,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:29:33,545.545 INFO    ] ================================================
[2026-10-18 11:29:33,560.560 INFO    ] Launching Daemon at Sun Oct 18 11:29:33 IST 2026
[2026-10-18 11:29:33,571.571 INFO    ] ================================================
[2026-10-18 11:29:34,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:29:34
[2026-10-18 11:29:34,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:29:34,986.986 INFO    ] Initializing speech engine...
[2026-10-18 11:29:34,991.991 INFO    ] 2026-10-18 11:29:34
[2026-10-18 11:29:35,290.290 INFO    ] 2026-10-18 11:29:35
[2026-10-18 11:29:35,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:29:35,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:29:35,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:29:35,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:29:35,717.717 INFO    ] time= 18/10/2026 11:29:35
[2026-10-18 11:29:35,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:29:35,793.793 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:29:35,908.908 INFO    ] No existing commands found in stream
[2026-10-18 11:29:40,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:29:40,936.936 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-18 11:29:44,391.391 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:29:44,394.394 INFO    ] Checking for system updates...
[2026-10-18 11:29:44,430.430 INFO    ] 200
[2026-10-18 11:29:44,433.433 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:29:44,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:29:44,488.488 INFO    ] No update needed
[2026-10-18 11:29:44,491.491 INFO    ] Checking for camera pi updates...
[2026-10-18 11:29:44,524.524 INFO    ] 200
[2026-10-18 11:29:44,527.527 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:29:44,568.568 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:29:54,583.583 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db5150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:29:54,618.618 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:29:54,628.628 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:29:54,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:29:54,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:29:54,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:29:56,679.679 INFO    ] ================================================
[2026-10-18 11:29:56,695.695 INFO    ] Launching Daemon at Sun Oct 18 11:29:56 IST 2026
[2026-10-18 11:29:56,707.707 INFO    ] ================================================
[2026-10-18 11:29:57,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:29:57
[2026-10-18 11:29:57,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:29:58,131.131 INFO    ] Initializing speech engine...
[2026-10-18 11:29:58,140.140 INFO    ] 2026-10-18 11:29:58
[2026-10-18 11:29:58,385.385 INFO    ] 2026-10-18 11:29:58
[2026-10-18 11:29:58,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:29:58,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:29:58,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:29:58,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:29:58,874.874 INFO    ] time= 18/10/2026 11:29:58
[2026-10-18 11:29:58,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:29:58,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:29:59,089.089 INFO    ] No existing commands found in stream
[2026-10-18 11:30:04,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:30:04,108.108 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-18 11:30:07,521.521 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 11:30:07,523.523 INFO    ] Checking for system updates...
[2026-10-18 11:30:07,559.559 INFO    ] 200
[2026-10-18 11:30:07,561.561 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:30:07,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:30:07,615.615 INFO    ] No update needed
[2026-10-18 11:30:07,618.618 INFO    ] Checking for camera pi updates...
[2026-10-18 11:30:07,651.651 INFO    ] 200
[2026-10-18 11:30:07,654.654 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:30:07,694.694 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:30:17,709.709 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:30:17,743.743 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:30:17,753.753 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:30:17,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:30:17,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:30:17,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:30:19,807.807 INFO    ] ================================================
[2026-10-18 11:30:19,822.822 INFO    ] Launching Daemon at Sun Oct 18 11:30:19 IST 2026
[2026-10-18 11:30:19,834.834 INFO    ] ================================================
[2026-10-18 11:30:20,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:30:20
[2026-10-18 11:30:20,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:30:21,244.244 INFO    ] Initializing speech engine...
[2026-10-18 11:30:21,253.253 INFO    ] 2026-10-18 11:30:21
[2026-10-18 11:30:21,544.544 INFO    ] 2026-10-18 11:30:21
[2026-10-18 11:30:21,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:30:21,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:30:21,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:30:21,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:30:21,962.962 INFO    ] time= 18/10/2026 11:30:21
[2026-10-18 11:30:21,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:30:22,017.017 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:30:22,175.175 INFO    ] No existing commands found in stream
[2026-10-18 11:30:27,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:30:27,199.199 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-18 11:30:31,206.206 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:30:31,208.208 INFO    ] Checking for system updates...
[2026-10-18 11:30:31,244.244 INFO    ] 200
[2026-10-18 11:30:31,246.246 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:30:31,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:30:31,302.302 INFO    ] No update needed
[2026-10-18 11:30:31,304.304 INFO    ] Checking for camera pi updates...
[2026-10-18 11:30:31,337.337 INFO    ] 200
[2026-10-18 11:30:31,340.340 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:30:31,392.392 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:30:41,407.407 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:30:41,442.442 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:30:41,451.451 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:30:41,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:30:41,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:30:41,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:30:43,503.503 INFO    ] ================================================
[2026-10-18 11:30:43,519.519 INFO    ] Launching Daemon at Sun Oct 18 11:30:43 IST 2026
[2026-10-18 11:30:43,531.531 INFO    ] ================================================
[2026-10-18 11:30:44,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:30:44
[2026-10-18 11:30:44,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:30:45,151.151 INFO    ] Initializing speech engine...
[2026-10-18 11:30:45,158.158 INFO    ] 2026-10-18 11:30:45
[2026-10-18 11:30:45,473.473 INFO    ] 2026-10-18 11:30:45
[2026-10-18 11:30:45,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:30:45,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:30:45,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:30:45,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:30:45,996.996 INFO    ] time= 18/10/2026 11:30:45
[2026-10-18 11:30:46,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:30:46,033.033 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:30:46,141.141 INFO    ] No existing commands found in stream
[2026-10-18 11:30:51,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:30:51,174.174 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-18 11:30:53,470.470 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:30:53,473.473 INFO    ] Checking for system updates...
[2026-10-18 11:30:53,511.511 INFO    ] 200
[2026-10-18 11:30:53,513.513 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:30:53,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:30:53,569.569 INFO    ] No update needed
[2026-10-18 11:30:53,571.571 INFO    ] Checking for camera pi updates...
[2026-10-18 11:30:53,605.605 INFO    ] 200
[2026-10-18 11:30:53,608.608 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:30:53,649.649 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:31:03,663.663 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:31:03,697.697 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:31:03,707.707 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:31:03,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:31:03,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:31:03,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:31:05,760.760 INFO    ] ================================================
[2026-10-18 11:31:05,777.777 INFO    ] Launching Daemon at Sun Oct 18 11:31:05 IST 2026
[2026-10-18 11:31:05,788.788 INFO    ] ================================================
[2026-10-18 11:31:06,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:31:06
[2026-10-18 11:31:06,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:31:07,216.216 INFO    ] Initializing speech engine...
[2026-10-18 11:31:07,223.223 INFO    ] 2026-10-18 11:31:07
[2026-10-18 11:31:07,478.478 INFO    ] 2026-10-18 11:31:07
[2026-10-18 11:31:07,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:31:07,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:31:07,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:31:07,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:31:08,027.027 INFO    ] time= 18/10/2026 11:31:07
[2026-10-18 11:31:08,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:31:08,052.052 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:31:08,182.182 INFO    ] No existing commands found in stream
[2026-10-18 11:31:13,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:31:13,198.198 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-18 11:31:15,199.199 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:31:15,201.201 INFO    ] Checking for system updates...
[2026-10-18 11:31:15,239.239 INFO    ] 200
[2026-10-18 11:31:15,242.242 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:31:15,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:31:15,297.297 INFO    ] No update needed
[2026-10-18 11:31:15,300.300 INFO    ] Checking for camera pi updates...
[2026-10-18 11:31:15,333.333 INFO    ] 200
[2026-10-18 11:31:15,336.336 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:31:15,377.377 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:31:25,393.393 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:31:25,427.427 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:31:25,437.437 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:31:25,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:31:25,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:31:25,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:31:27,490.490 INFO    ] ================================================
[2026-10-18 11:31:27,506.506 INFO    ] Launching Daemon at Sun Oct 18 11:31:27 IST 2026
[2026-10-18 11:31:27,517.517 INFO    ] ================================================
[2026-10-18 11:31:28,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:31:28
[2026-10-18 11:31:28,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:31:28,949.949 INFO    ] Initializing speech engine...
[2026-10-18 11:31:28,958.958 INFO    ] 2026-10-18 11:31:28
[2026-10-18 11:31:29,211.211 INFO    ] 2026-10-18 11:31:29
[2026-10-18 11:31:29,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:31:29,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:31:29,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:31:29,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:31:29,759.759 INFO    ] time= 18/10/2026 11:31:29
[2026-10-18 11:31:29,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:31:29,783.783 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:31:29,910.910 INFO    ] No existing commands found in stream
[2026-10-18 11:31:34,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:31:34,928.928 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-18 11:31:35,472.472 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 11:31:35,475.475 INFO    ] Checking for system updates...
[2026-10-18 11:31:35,511.511 INFO    ] 200
[2026-10-18 11:31:35,514.514 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:31:35,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:31:35,569.569 INFO    ] No update needed
[2026-10-18 11:31:35,571.571 INFO    ] Checking for camera pi updates...
[2026-10-18 11:31:35,605.605 INFO    ] 200
[2026-10-18 11:31:35,607.607 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:31:35,652.652 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:31:45,666.666 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:31:45,700.700 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:31:45,710.710 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:31:45,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:31:45,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:31:45,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:31:47,762.762 INFO    ] ================================================
[2026-10-18 11:31:47,778.778 INFO    ] Launching Daemon at Sun Oct 18 11:31:47 IST 2026
[2026-10-18 11:31:47,788.788 INFO    ] ================================================
[2026-10-18 11:31:48,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:31:48
[2026-10-18 11:31:48,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:31:49,218.218 INFO    ] Initializing speech engine...
[2026-10-18 11:31:49,232.232 INFO    ] 2026-10-18 11:31:49
[2026-10-18 11:31:49,510.510 INFO    ] 2026-10-18 11:31:49
[2026-10-18 11:31:49,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:31:49,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:31:49,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:31:49,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:31:50,017.017 INFO    ] time= 18/10/2026 11:31:49
[2026-10-18 11:31:50,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:31:50,126.126 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:31:50,265.265 INFO    ] No existing commands found in stream
[2026-10-18 11:31:55,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:31:55,293.293 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-18 11:31:57,257.257 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:31:57,260.260 INFO    ] Checking for system updates...
[2026-10-18 11:31:57,297.297 INFO    ] 200
[2026-10-18 11:31:57,300.300 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:31:57,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:31:57,354.354 INFO    ] No update needed
[2026-10-18 11:31:57,357.357 INFO    ] Checking for camera pi updates...
[2026-10-18 11:31:57,392.392 INFO    ] 200
[2026-10-18 11:31:57,395.395 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:31:57,435.435 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:32:07,450.450 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:32:07,485.485 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:32:07,495.495 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:32:07,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:32:07,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:32:07,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:32:09,547.547 INFO    ] ================================================
[2026-10-18 11:32:09,562.562 INFO    ] Launching Daemon at Sun Oct 18 11:32:09 IST 2026
[2026-10-18 11:32:09,573.573 INFO    ] ================================================
[2026-10-18 11:32:10,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:32:10
[2026-10-18 11:32:10,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:32:10,987.987 INFO    ] Initializing speech engine...
[2026-10-18 11:32:10,996.996 INFO    ] 2026-10-18 11:32:10
[2026-10-18 11:32:11,287.287 INFO    ] 2026-10-18 11:32:11
[2026-10-18 11:32:11,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:32:11,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:32:11,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:32:11,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:32:11,777.777 INFO    ] time= 18/10/2026 11:32:11
[2026-10-18 11:32:11,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:32:11,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:32:12,051.051 INFO    ] No existing commands found in stream
[2026-10-18 11:32:17,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:32:17,071.071 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-18 11:32:19,150.150 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 11:32:19,152.152 INFO    ] Checking for system updates...
[2026-10-18 11:32:19,191.191 INFO    ] 200
[2026-10-18 11:32:19,193.193 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:32:19,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:32:19,253.253 INFO    ] No update needed
[2026-10-18 11:32:19,256.256 INFO    ] Checking for camera pi updates...
[2026-10-18 11:32:19,292.292 INFO    ] 200
[2026-10-18 11:32:19,295.295 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:32:19,339.339 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:32:29,355.355 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:32:29,391.391 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:32:29,401.401 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:32:29,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:32:29,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:32:29,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:32:31,456.456 INFO    ] ================================================
[2026-10-18 11:32:31,471.471 INFO    ] Launching Daemon at Sun Oct 18 11:32:31 IST 2026
[2026-10-18 11:32:31,482.482 INFO    ] ================================================
[2026-10-18 11:32:32,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:32:32
[2026-10-18 11:32:32,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:32:33,050.050 INFO    ] Initializing speech engine...
[2026-10-18 11:32:33,058.058 INFO    ] 2026-10-18 11:32:33
[2026-10-18 11:32:33,352.352 INFO    ] 2026-10-18 11:32:33
[2026-10-18 11:32:33,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:32:33,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:32:33,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:32:33,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:32:33,895.895 INFO    ] time= 18/10/2026 11:32:33
[2026-10-18 11:32:33,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:32:33,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:32:34,061.061 INFO    ] No existing commands found in stream
[2026-10-18 11:32:39,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:32:39,092.092 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-18 11:32:42,863.863 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 11:32:42,867.867 INFO    ] Checking for system updates...
[2026-10-18 11:32:42,910.910 INFO    ] 200
[2026-10-18 11:32:42,913.913 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:32:42,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:32:42,974.974 INFO    ] No update needed
[2026-10-18 11:32:42,977.977 INFO    ] Checking for camera pi updates...
[2026-10-18 11:32:43,011.011 INFO    ] 200
[2026-10-18 11:32:43,013.013 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:32:43,055.055 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:32:53,070.070 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:32:53,106.106 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:32:53,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:32:53,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:32:53,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:32:53,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:32:55,168.168 INFO    ] ================================================
[2026-10-18 11:32:55,184.184 INFO    ] Launching Daemon at Sun Oct 18 11:32:55 IST 2026
[2026-10-18 11:32:55,194.194 INFO    ] ================================================
[2026-10-18 11:32:55,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:32:55
[2026-10-18 11:32:56,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:32:56,647.647 INFO    ] Initializing speech engine...
[2026-10-18 11:32:56,654.654 INFO    ] 2026-10-18 11:32:56
[2026-10-18 11:32:56,913.913 INFO    ] 2026-10-18 11:32:56
[2026-10-18 11:32:56,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:32:57,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:32:57,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:32:57,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:32:57,470.470 INFO    ] time= 18/10/2026 11:32:57
[2026-10-18 11:32:57,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:32:57,506.506 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:32:57,626.626 INFO    ] No existing commands found in stream
[2026-10-18 11:33:02,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:33:02,651.651 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-18 11:33:05,475.475 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:33:05,478.478 INFO    ] Checking for system updates...
[2026-10-18 11:33:05,518.518 INFO    ] 200
[2026-10-18 11:33:05,520.520 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:33:05,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:33:05,576.576 INFO    ] No update needed
[2026-10-18 11:33:05,578.578 INFO    ] Checking for camera pi updates...
[2026-10-18 11:33:05,615.615 INFO    ] 200
[2026-10-18 11:33:05,617.617 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:33:05,657.657 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:33:15,672.672 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:33:15,707.707 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:33:15,717.717 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:33:15,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:33:15,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:33:15,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:33:17,769.769 INFO    ] ================================================
[2026-10-18 11:33:17,789.789 INFO    ] Launching Daemon at Sun Oct 18 11:33:17 IST 2026
[2026-10-18 11:33:17,800.800 INFO    ] ================================================
[2026-10-18 11:33:18,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:33:18
[2026-10-18 11:33:18,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:33:19,277.277 INFO    ] Initializing speech engine...
[2026-10-18 11:33:19,294.294 INFO    ] 2026-10-18 11:33:19
[2026-10-18 11:33:19,576.576 INFO    ] 2026-10-18 11:33:19
[2026-10-18 11:33:19,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:33:19,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:33:19,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:33:20,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:33:20,087.087 INFO    ] time= 18/10/2026 11:33:20
[2026-10-18 11:33:20,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:33:20,158.158 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:33:20,244.244 INFO    ] No existing commands found in stream
[2026-10-18 11:33:25,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:33:25,267.267 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-18 11:33:28,023.023 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 11:33:28,026.026 INFO    ] Checking for system updates...
[2026-10-18 11:33:28,061.061 INFO    ] 200
[2026-10-18 11:33:28,063.063 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:33:28,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:33:28,119.119 INFO    ] No update needed
[2026-10-18 11:33:28,121.121 INFO    ] Checking for camera pi updates...
[2026-10-18 11:33:28,158.158 INFO    ] 200
[2026-10-18 11:33:28,161.161 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:33:28,206.206 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:33:38,220.220 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:33:38,255.255 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:33:38,264.264 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:33:38,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:33:38,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:33:38,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:33:40,317.317 INFO    ] ================================================
[2026-10-18 11:33:40,332.332 INFO    ] Launching Daemon at Sun Oct 18 11:33:40 IST 2026
[2026-10-18 11:33:40,343.343 INFO    ] ================================================
[2026-10-18 11:33:40,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:33:40
[2026-10-18 11:33:41,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:33:41,754.754 INFO    ] Initializing speech engine...
[2026-10-18 11:33:41,760.760 INFO    ] 2026-10-18 11:33:41
[2026-10-18 11:33:42,050.050 INFO    ] 2026-10-18 11:33:42
[2026-10-18 11:33:42,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:33:42,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:33:42,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:33:42,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:33:42,467.467 INFO    ] time= 18/10/2026 11:33:42
[2026-10-18 11:33:42,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:33:42,527.527 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:33:42,680.680 INFO    ] No existing commands found in stream
[2026-10-18 11:33:47,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:33:47,701.701 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-18 11:33:48,435.435 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 11:33:48,439.439 INFO    ] Checking for system updates...
[2026-10-18 11:33:48,487.487 INFO    ] 200
[2026-10-18 11:33:48,490.490 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:33:48,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:33:48,545.545 INFO    ] No update needed
[2026-10-18 11:33:48,548.548 INFO    ] Checking for camera pi updates...
[2026-10-18 11:33:48,585.585 INFO    ] 200
[2026-10-18 11:33:48,588.588 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:33:48,633.633 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:33:58,655.655 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:33:58,701.701 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:33:58,712.712 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:33:58,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:33:58,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:33:58,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:34:00,768.768 INFO    ] ================================================
[2026-10-18 11:34:00,783.783 INFO    ] Launching Daemon at Sun Oct 18 11:34:00 IST 2026
[2026-10-18 11:34:00,793.793 INFO    ] ================================================
[2026-10-18 11:34:01,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:34:01
[2026-10-18 11:34:02,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:34:02,368.368 INFO    ] Initializing speech engine...
[2026-10-18 11:34:02,372.372 INFO    ] 2026-10-18 11:34:02
[2026-10-18 11:34:02,680.680 INFO    ] 2026-10-18 11:34:02
[2026-10-18 11:34:02,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:34:02,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:34:03,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:34:03,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:34:03,236.236 INFO    ] time= 18/10/2026 11:34:03
[2026-10-18 11:34:03,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:34:03,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:34:03,505.505 INFO    ] No existing commands found in stream
[2026-10-18 11:34:08,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:34:08,540.540 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-18 11:34:12,612.612 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:34:12,615.615 INFO    ] Checking for system updates...
[2026-10-18 11:34:12,652.652 INFO    ] 200
[2026-10-18 11:34:12,655.655 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:34:12,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:34:12,718.718 INFO    ] No update needed
[2026-10-18 11:34:12,721.721 INFO    ] Checking for camera pi updates...
[2026-10-18 11:34:12,758.758 INFO    ] 200
[2026-10-18 11:34:12,760.760 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:34:12,805.805 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:34:22,819.819 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:34:22,854.854 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:34:22,864.864 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:34:22,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:34:22,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:34:22,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:34:24,916.916 INFO    ] ================================================
[2026-10-18 11:34:24,932.932 INFO    ] Launching Daemon at Sun Oct 18 11:34:24 IST 2026
[2026-10-18 11:34:24,943.943 INFO    ] ================================================
[2026-10-18 11:34:25,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:34:25
[2026-10-18 11:34:26,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:34:26,361.361 INFO    ] Initializing speech engine...
[2026-10-18 11:34:26,370.370 INFO    ] 2026-10-18 11:34:26
[2026-10-18 11:34:26,616.616 INFO    ] 2026-10-18 11:34:26
[2026-10-18 11:34:26,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:34:26,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:34:26,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:34:27,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:34:27,149.149 INFO    ] time= 18/10/2026 11:34:27
[2026-10-18 11:34:27,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:34:27,181.181 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:34:27,328.328 INFO    ] No existing commands found in stream
[2026-10-18 11:34:32,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:34:32,349.349 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-18 11:34:35,249.249 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 11:34:35,252.252 INFO    ] Checking for system updates...
[2026-10-18 11:34:35,288.288 INFO    ] 200
[2026-10-18 11:34:35,290.290 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:34:35,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:34:35,350.350 INFO    ] No update needed
[2026-10-18 11:34:35,353.353 INFO    ] Checking for camera pi updates...
[2026-10-18 11:34:35,386.386 INFO    ] 200
[2026-10-18 11:34:35,388.388 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:34:35,428.428 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:34:45,443.443 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:34:45,478.478 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:34:45,487.487 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:34:45,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:34:45,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:34:45,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:34:47,541.541 INFO    ] ================================================
[2026-10-18 11:34:47,556.556 INFO    ] Launching Daemon at Sun Oct 18 11:34:47 IST 2026
[2026-10-18 11:34:47,567.567 INFO    ] ================================================
[2026-10-18 11:34:48,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:34:48
[2026-10-18 11:34:48,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:34:49,023.023 INFO    ] Initializing speech engine...
[2026-10-18 11:34:49,032.032 INFO    ] 2026-10-18 11:34:49
[2026-10-18 11:34:49,296.296 INFO    ] 2026-10-18 11:34:49
[2026-10-18 11:34:49,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:34:49,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:34:49,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:34:49,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:34:49,846.846 INFO    ] time= 18/10/2026 11:34:49
[2026-10-18 11:34:49,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:34:49,870.870 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:34:50,000.000 INFO    ] No existing commands found in stream
[2026-10-18 11:34:55,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:34:55,024.024 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-18 11:34:56,650.650 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:34:56,652.652 INFO    ] Checking for system updates...
[2026-10-18 11:34:56,688.688 INFO    ] 200
[2026-10-18 11:34:56,691.691 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:34:56,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:34:56,748.748 INFO    ] No update needed
[2026-10-18 11:34:56,751.751 INFO    ] Checking for camera pi updates...
[2026-10-18 11:34:56,789.789 INFO    ] 200
[2026-10-18 11:34:56,791.791 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:34:56,833.833 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:35:06,849.849 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:35:06,885.885 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:35:06,894.894 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:35:06,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:35:06,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:35:06,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:35:08,948.948 INFO    ] ================================================
[2026-10-18 11:35:08,963.963 INFO    ] Launching Daemon at Sun Oct 18 11:35:08 IST 2026
[2026-10-18 11:35:08,975.975 INFO    ] ================================================
[2026-10-18 11:35:09,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:35:09
[2026-10-18 11:35:10,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:35:10,406.406 INFO    ] Initializing speech engine...
[2026-10-18 11:35:10,423.423 INFO    ] 2026-10-18 11:35:10
[2026-10-18 11:35:10,681.681 INFO    ] 2026-10-18 11:35:10
[2026-10-18 11:35:10,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:35:10,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:35:10,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:35:11,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:35:11,199.199 INFO    ] time= 18/10/2026 11:35:11
[2026-10-18 11:35:11,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:35:11,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:35:11,424.424 INFO    ] No existing commands found in stream
[2026-10-18 11:35:16,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:35:16,439.439 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-18 11:35:18,166.166 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:35:18,169.169 INFO    ] Checking for system updates...
[2026-10-18 11:35:18,209.209 INFO    ] 200
[2026-10-18 11:35:18,211.211 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:35:18,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:35:18,273.273 INFO    ] No update needed
[2026-10-18 11:35:18,275.275 INFO    ] Checking for camera pi updates...
[2026-10-18 11:35:18,308.308 INFO    ] 200
[2026-10-18 11:35:18,311.311 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:35:18,351.351 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:35:28,366.366 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:35:28,403.403 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:35:28,413.413 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:35:28,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:35:28,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:35:28,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:35:30,471.471 INFO    ] ================================================
[2026-10-18 11:35:30,487.487 INFO    ] Launching Daemon at Sun Oct 18 11:35:30 IST 2026
[2026-10-18 11:35:30,499.499 INFO    ] ================================================
[2026-10-18 11:35:31,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:35:31
[2026-10-18 11:35:31,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:35:31,974.974 INFO    ] Initializing speech engine...
[2026-10-18 11:35:31,981.981 INFO    ] 2026-10-18 11:35:31
[2026-10-18 11:35:32,279.279 INFO    ] 2026-10-18 11:35:32
[2026-10-18 11:35:32,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:35:32,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:35:32,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:35:32,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:35:32,780.780 INFO    ] time= 18/10/2026 11:35:32
[2026-10-18 11:35:32,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:35:32,900.900 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:35:33,027.027 INFO    ] No existing commands found in stream
[2026-10-18 11:35:38,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:35:38,053.053 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-18 11:35:40,593.593 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:35:40,596.596 INFO    ] Checking for system updates...
[2026-10-18 11:35:40,633.633 INFO    ] 200
[2026-10-18 11:35:40,636.636 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:35:40,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:35:40,691.691 INFO    ] No update needed
[2026-10-18 11:35:40,696.696 INFO    ] Checking for camera pi updates...
[2026-10-18 11:35:40,733.733 INFO    ] 200
[2026-10-18 11:35:40,735.735 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:35:40,781.781 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:35:50,796.796 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:35:50,831.831 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:35:50,840.840 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:35:50,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:35:50,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:35:50,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:35:52,894.894 INFO    ] ================================================
[2026-10-18 11:35:52,910.910 INFO    ] Launching Daemon at Sun Oct 18 11:35:52 IST 2026
[2026-10-18 11:35:52,921.921 INFO    ] ================================================
[2026-10-18 11:35:53,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:35:53
[2026-10-18 11:35:54,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:35:54,358.358 INFO    ] Initializing speech engine...
[2026-10-18 11:35:54,377.377 INFO    ] 2026-10-18 11:35:54
[2026-10-18 11:35:54,629.629 INFO    ] 2026-10-18 11:35:54
[2026-10-18 11:35:54,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:35:54,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:35:54,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:35:55,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:35:55,127.127 INFO    ] time= 18/10/2026 11:35:55
[2026-10-18 11:35:55,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:35:55,210.210 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:35:55,362.362 INFO    ] No existing commands found in stream
[2026-10-18 11:36:00,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:36:00,392.392 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-18 11:36:01,016.016 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:36:01,019.019 INFO    ] Checking for system updates...
[2026-10-18 11:36:01,059.059 INFO    ] 200
[2026-10-18 11:36:01,062.062 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:36:01,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:36:01,124.124 INFO    ] No update needed
[2026-10-18 11:36:01,126.126 INFO    ] Checking for camera pi updates...
[2026-10-18 11:36:01,160.160 INFO    ] 200
[2026-10-18 11:36:01,162.162 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:36:01,203.203 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:36:11,219.219 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:36:11,254.254 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:36:11,264.264 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:36:11,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:36:11,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:36:11,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:36:13,318.318 INFO    ] ================================================
[2026-10-18 11:36:13,333.333 INFO    ] Launching Daemon at Sun Oct 18 11:36:13 IST 2026
[2026-10-18 11:36:13,343.343 INFO    ] ================================================
[2026-10-18 11:36:13,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:36:13
[2026-10-18 11:36:14,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:36:14,766.766 INFO    ] Initializing speech engine...
[2026-10-18 11:36:14,779.779 INFO    ] 2026-10-18 11:36:14
[2026-10-18 11:36:15,025.025 INFO    ] 2026-10-18 11:36:15
[2026-10-18 11:36:15,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:36:15,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:36:15,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:36:15,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:36:15,543.543 INFO    ] time= 18/10/2026 11:36:15
[2026-10-18 11:36:15,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:36:15,594.594 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:36:15,744.744 INFO    ] No existing commands found in stream
[2026-10-18 11:36:20,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:36:20,770.770 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-18 11:36:23,955.955 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 11:36:23,958.958 INFO    ] Checking for system updates...
[2026-10-18 11:36:23,996.996 INFO    ] 200
[2026-10-18 11:36:23,999.999 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:36:24,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:36:24,058.058 INFO    ] No update needed
[2026-10-18 11:36:24,060.060 INFO    ] Checking for camera pi updates...
[2026-10-18 11:36:24,093.093 INFO    ] 200
[2026-10-18 11:36:24,096.096 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:36:24,141.141 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:36:34,154.154 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:36:34,194.194 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:36:34,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:36:34,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:36:34,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:36:34,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:36:36,263.263 INFO    ] ================================================
[2026-10-18 11:36:36,278.278 INFO    ] Launching Daemon at Sun Oct 18 11:36:36 IST 2026
[2026-10-18 11:36:36,289.289 INFO    ] ================================================
[2026-10-18 11:36:36,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:36:36
[2026-10-18 11:36:37,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:36:37,831.831 INFO    ] Initializing speech engine...
[2026-10-18 11:36:37,841.841 INFO    ] 2026-10-18 11:36:37
[2026-10-18 11:36:38,097.097 INFO    ] 2026-10-18 11:36:38
[2026-10-18 11:36:38,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:36:38,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:36:38,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:36:38,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:36:38,658.658 INFO    ] time= 18/10/2026 11:36:38
[2026-10-18 11:36:38,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:36:38,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:36:38,856.856 INFO    ] No existing commands found in stream
[2026-10-18 11:36:43,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:36:43,890.890 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-18 11:36:45,489.489 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:36:45,492.492 INFO    ] Checking for system updates...
[2026-10-18 11:36:45,527.527 INFO    ] 200
[2026-10-18 11:36:45,530.530 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:36:45,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:36:45,592.592 INFO    ] No update needed
[2026-10-18 11:36:45,595.595 INFO    ] Checking for camera pi updates...
[2026-10-18 11:36:45,628.628 INFO    ] 200
[2026-10-18 11:36:45,631.631 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:36:45,670.670 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:36:55,686.686 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:36:55,724.724 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:36:55,735.735 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:36:55,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:36:55,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:36:55,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:36:57,789.789 INFO    ] ================================================
[2026-10-18 11:36:57,805.805 INFO    ] Launching Daemon at Sun Oct 18 11:36:57 IST 2026
[2026-10-18 11:36:57,816.816 INFO    ] ================================================
[2026-10-18 11:36:58,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:36:58
[2026-10-18 11:36:58,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:36:59,272.272 INFO    ] Initializing speech engine...
[2026-10-18 11:36:59,282.282 INFO    ] 2026-10-18 11:36:59
[2026-10-18 11:36:59,553.553 INFO    ] 2026-10-18 11:36:59
[2026-10-18 11:36:59,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:36:59,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:36:59,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:37:00,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:37:00,081.081 INFO    ] time= 18/10/2026 11:37:00
[2026-10-18 11:37:00,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:37:00,106.106 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:37:00,218.218 INFO    ] No existing commands found in stream
[2026-10-18 11:37:05,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:37:05,247.247 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-18 11:37:06,655.655 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:37:06,657.657 INFO    ] Checking for system updates...
[2026-10-18 11:37:06,695.695 INFO    ] 200
[2026-10-18 11:37:06,698.698 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:37:06,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:37:06,756.756 INFO    ] No update needed
[2026-10-18 11:37:06,759.759 INFO    ] Checking for camera pi updates...
[2026-10-18 11:37:06,792.792 INFO    ] 200
[2026-10-18 11:37:06,794.794 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:37:06,836.836 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:37:16,851.851 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:37:16,889.889 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:37:16,900.900 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:37:16,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:37:16,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:37:16,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:37:18,955.955 INFO    ] ================================================
[2026-10-18 11:37:18,970.970 INFO    ] Launching Daemon at Sun Oct 18 11:37:18 IST 2026
[2026-10-18 11:37:18,980.980 INFO    ] ================================================
[2026-10-18 11:37:19,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:37:19
[2026-10-18 11:37:20,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:37:20,531.531 INFO    ] Initializing speech engine...
[2026-10-18 11:37:20,540.540 INFO    ] 2026-10-18 11:37:20
[2026-10-18 11:37:20,807.807 INFO    ] 2026-10-18 11:37:20
[2026-10-18 11:37:20,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:37:21,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:37:21,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:37:21,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:37:21,357.357 INFO    ] time= 18/10/2026 11:37:21
[2026-10-18 11:37:21,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:37:21,398.398 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:37:21,558.558 INFO    ] No existing commands found in stream
[2026-10-18 11:37:26,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:37:26,587.587 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-18 11:37:29,899.899 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:37:29,901.901 INFO    ] Checking for system updates...
[2026-10-18 11:37:29,940.940 INFO    ] 200
[2026-10-18 11:37:29,943.943 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:37:30,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:37:30,003.003 INFO    ] No update needed
[2026-10-18 11:37:30,006.006 INFO    ] Checking for camera pi updates...
[2026-10-18 11:37:30,040.040 INFO    ] 200
[2026-10-18 11:37:30,043.043 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:37:30,083.083 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:37:40,099.099 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:37:40,137.137 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:37:40,148.148 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:37:40,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:37:40,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:37:40,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:37:42,202.202 INFO    ] ================================================
[2026-10-18 11:37:42,217.217 INFO    ] Launching Daemon at Sun Oct 18 11:37:42 IST 2026
[2026-10-18 11:37:42,228.228 INFO    ] ================================================
[2026-10-18 11:37:42,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:37:42
[2026-10-18 11:37:43,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:37:43,662.662 INFO    ] Initializing speech engine...
[2026-10-18 11:37:43,671.671 INFO    ] 2026-10-18 11:37:43
[2026-10-18 11:37:43,932.932 INFO    ] 2026-10-18 11:37:43
[2026-10-18 11:37:43,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:37:44,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:37:44,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:37:44,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:37:44,404.404 INFO    ] time= 18/10/2026 11:37:44
[2026-10-18 11:37:44,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:37:44,534.534 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:37:44,670.670 INFO    ] No existing commands found in stream
[2026-10-18 11:37:49,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:37:49,695.695 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-18 11:37:51,822.822 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 11:37:51,824.824 INFO    ] Checking for system updates...
[2026-10-18 11:37:51,860.860 INFO    ] 200
[2026-10-18 11:37:51,862.862 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:37:51,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:37:51,917.917 INFO    ] No update needed
[2026-10-18 11:37:51,920.920 INFO    ] Checking for camera pi updates...
[2026-10-18 11:37:51,953.953 INFO    ] 200
[2026-10-18 11:37:51,955.955 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:37:51,998.998 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:38:02,014.014 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:38:02,055.055 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:38:02,066.066 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:38:02,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:38:02,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:38:02,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:38:04,127.127 INFO    ] ================================================
[2026-10-18 11:38:04,143.143 INFO    ] Launching Daemon at Sun Oct 18 11:38:04 IST 2026
[2026-10-18 11:38:04,153.153 INFO    ] ================================================
[2026-10-18 11:38:04,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:38:04
[2026-10-18 11:38:05,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:38:05,609.609 INFO    ] Initializing speech engine...
[2026-10-18 11:38:05,618.618 INFO    ] 2026-10-18 11:38:05
[2026-10-18 11:38:05,873.873 INFO    ] 2026-10-18 11:38:05
[2026-10-18 11:38:05,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:38:06,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:38:06,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:38:06,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:38:06,359.359 INFO    ] time= 18/10/2026 11:38:06
[2026-10-18 11:38:06,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:38:06,432.432 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:38:06,577.577 INFO    ] No existing commands found in stream
[2026-10-18 11:38:11,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:38:11,594.594 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-18 11:38:13,988.988 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:38:13,991.991 INFO    ] Checking for system updates...
[2026-10-18 11:38:14,029.029 INFO    ] 200
[2026-10-18 11:38:14,031.031 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:38:14,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:38:14,086.086 INFO    ] No update needed
[2026-10-18 11:38:14,088.088 INFO    ] Checking for camera pi updates...
[2026-10-18 11:38:14,121.121 INFO    ] 200
[2026-10-18 11:38:14,124.124 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:38:14,164.164 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:38:24,178.178 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:38:24,214.214 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:38:24,224.224 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:38:24,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:38:24,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:38:24,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:38:26,277.277 INFO    ] ================================================
[2026-10-18 11:38:26,292.292 INFO    ] Launching Daemon at Sun Oct 18 11:38:26 IST 2026
[2026-10-18 11:38:26,302.302 INFO    ] ================================================
[2026-10-18 11:38:26,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:38:26
[2026-10-18 11:38:27,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:38:27,728.728 INFO    ] Initializing speech engine...
[2026-10-18 11:38:27,738.738 INFO    ] 2026-10-18 11:38:27
[2026-10-18 11:38:27,997.997 INFO    ] 2026-10-18 11:38:27
[2026-10-18 11:38:28,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:38:28,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:38:28,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:38:28,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:38:28,539.539 INFO    ] time= 18/10/2026 11:38:28
[2026-10-18 11:38:28,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:38:28,563.563 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:38:28,790.790 INFO    ] No existing commands found in stream
[2026-10-18 11:38:33,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:38:33,808.808 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-18 11:38:37,907.907 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:38:37,910.910 INFO    ] Checking for system updates...
[2026-10-18 11:38:37,946.946 INFO    ] 200
[2026-10-18 11:38:37,948.948 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:38:38,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:38:38,006.006 INFO    ] No update needed
[2026-10-18 11:38:38,009.009 INFO    ] Checking for camera pi updates...
[2026-10-18 11:38:38,042.042 INFO    ] 200
[2026-10-18 11:38:38,045.045 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:38:38,089.089 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:38:48,105.105 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:38:48,143.143 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:38:48,153.153 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:38:48,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:38:48,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:38:48,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:38:50,210.210 INFO    ] ================================================
[2026-10-18 11:38:50,226.226 INFO    ] Launching Daemon at Sun Oct 18 11:38:50 IST 2026
[2026-10-18 11:38:50,237.237 INFO    ] ================================================
[2026-10-18 11:38:50,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:38:50
[2026-10-18 11:38:51,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:38:51,793.793 INFO    ] Initializing speech engine...
[2026-10-18 11:38:51,805.805 INFO    ] 2026-10-18 11:38:51
[2026-10-18 11:38:52,074.074 INFO    ] 2026-10-18 11:38:52
[2026-10-18 11:38:52,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:38:52,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:38:52,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:38:52,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:38:52,639.639 INFO    ] time= 18/10/2026 11:38:52
[2026-10-18 11:38:52,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:38:52,678.678 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:38:52,788.788 INFO    ] No existing commands found in stream
[2026-10-18 11:38:57,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:38:57,821.821 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-18 11:39:00,800.800 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:39:00,802.802 INFO    ] Checking for system updates...
[2026-10-18 11:39:00,837.837 INFO    ] 200
[2026-10-18 11:39:00,840.840 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:39:00,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:39:00,899.899 INFO    ] No update needed
[2026-10-18 11:39:00,901.901 INFO    ] Checking for camera pi updates...
[2026-10-18 11:39:00,934.934 INFO    ] 200
[2026-10-18 11:39:00,937.937 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:39:00,980.980 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:39:10,993.993 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:39:11,029.029 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:39:11,039.039 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:39:11,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:39:11,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:39:11,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:39:13,090.090 INFO    ] ================================================
[2026-10-18 11:39:13,105.105 INFO    ] Launching Daemon at Sun Oct 18 11:39:13 IST 2026
[2026-10-18 11:39:13,116.116 INFO    ] ================================================
[2026-10-18 11:39:13,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:39:13
[2026-10-18 11:39:14,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:39:14,534.534 INFO    ] Initializing speech engine...
[2026-10-18 11:39:14,543.543 INFO    ] 2026-10-18 11:39:14
[2026-10-18 11:39:14,789.789 INFO    ] 2026-10-18 11:39:14
[2026-10-18 11:39:14,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:39:15,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:39:15,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:39:15,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:39:15,193.193 INFO    ] time= 18/10/2026 11:39:15
[2026-10-18 11:39:15,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:39:15,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:39:15,360.360 INFO    ] No existing commands found in stream
[2026-10-18 11:39:20,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:39:20,389.389 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-18 11:39:24,365.365 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 11:39:24,368.368 INFO    ] Checking for system updates...
[2026-10-18 11:39:24,406.406 INFO    ] 200
[2026-10-18 11:39:24,409.409 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:39:24,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:39:24,463.463 INFO    ] No update needed
[2026-10-18 11:39:24,465.465 INFO    ] Checking for camera pi updates...
[2026-10-18 11:39:24,498.498 INFO    ] 200
[2026-10-18 11:39:24,500.500 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:39:24,542.542 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:39:34,555.555 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:39:34,590.590 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:39:34,599.599 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:39:34,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:39:34,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:39:34,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:39:36,652.652 INFO    ] ================================================
[2026-10-18 11:39:36,667.667 INFO    ] Launching Daemon at Sun Oct 18 11:39:36 IST 2026
[2026-10-18 11:39:36,678.678 INFO    ] ================================================
[2026-10-18 11:39:37,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:39:37
[2026-10-18 11:39:37,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:39:38,070.070 INFO    ] Initializing speech engine...
[2026-10-18 11:39:38,079.079 INFO    ] 2026-10-18 11:39:38
[2026-10-18 11:39:38,350.350 INFO    ] 2026-10-18 11:39:38
[2026-10-18 11:39:38,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:39:38,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:39:38,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:39:38,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:39:38,843.843 INFO    ] time= 18/10/2026 11:39:38
[2026-10-18 11:39:38,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:39:38,931.931 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:39:39,085.085 INFO    ] No existing commands found in stream
[2026-10-18 11:39:44,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:39:44,106.106 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-18 11:39:48,085.085 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 11:39:48,088.088 INFO    ] Checking for system updates...
[2026-10-18 11:39:48,124.124 INFO    ] 200
[2026-10-18 11:39:48,127.127 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:39:48,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:39:48,183.183 INFO    ] No update needed
[2026-10-18 11:39:48,185.185 INFO    ] Checking for camera pi updates...
[2026-10-18 11:39:48,219.219 INFO    ] 200
[2026-10-18 11:39:48,221.221 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:39:48,262.262 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:39:58,278.278 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:39:58,316.316 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:39:58,326.326 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:39:58,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:39:58,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:39:58,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:40:00,383.383 INFO    ] ================================================
[2026-10-18 11:40:00,398.398 INFO    ] Launching Daemon at Sun Oct 18 11:40:00 IST 2026
[2026-10-18 11:40:00,409.409 INFO    ] ================================================
[2026-10-18 11:40:00,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:40:00
[2026-10-18 11:40:01,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:40:02,486.486 INFO    ] Initializing speech engine...
[2026-10-18 11:40:02,491.491 INFO    ] 2026-10-18 11:40:02
[2026-10-18 11:40:02,927.927 INFO    ] 2026-10-18 11:40:02
[2026-10-18 11:40:02,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:40:03,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:40:03,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:40:03,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:40:03,653.653 INFO    ] time= 18/10/2026 11:40:03
[2026-10-18 11:40:03,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:40:03,742.742 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:40:03,889.889 INFO    ] No existing commands found in stream
[2026-10-18 11:40:08,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:40:08,913.913 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-18 11:40:11,855.855 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:40:11,858.858 INFO    ] Checking for system updates...
[2026-10-18 11:40:11,893.893 INFO    ] 200
[2026-10-18 11:40:11,895.895 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:40:11,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:40:11,955.955 INFO    ] No update needed
[2026-10-18 11:40:11,958.958 INFO    ] Checking for camera pi updates...
[2026-10-18 11:40:11,991.991 INFO    ] 200
[2026-10-18 11:40:11,993.993 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:40:12,034.034 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:40:22,049.049 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:40:22,084.084 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:40:22,093.093 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:40:22,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:40:22,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:40:22,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:40:24,145.145 INFO    ] ================================================
[2026-10-18 11:40:24,161.161 INFO    ] Launching Daemon at Sun Oct 18 11:40:24 IST 2026
[2026-10-18 11:40:24,172.172 INFO    ] ================================================
[2026-10-18 11:40:24,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:40:24
[2026-10-18 11:40:25,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:40:25,683.683 INFO    ] Initializing speech engine...
[2026-10-18 11:40:25,693.693 INFO    ] 2026-10-18 11:40:25
[2026-10-18 11:40:25,943.943 INFO    ] 2026-10-18 11:40:25
[2026-10-18 11:40:25,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:40:26,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:40:26,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:40:26,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:40:26,492.492 INFO    ] time= 18/10/2026 11:40:26
[2026-10-18 11:40:26,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:40:26,528.528 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:40:26,664.664 INFO    ] No existing commands found in stream
[2026-10-18 11:40:31,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:40:31,698.698 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-18 11:40:36,110.110 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 11:40:36,113.113 INFO    ] Checking for system updates...
[2026-10-18 11:40:36,152.152 INFO    ] 200
[2026-10-18 11:40:36,154.154 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:40:36,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:40:36,209.209 INFO    ] No update needed
[2026-10-18 11:40:36,211.211 INFO    ] Checking for camera pi updates...
[2026-10-18 11:40:36,247.247 INFO    ] 200
[2026-10-18 11:40:36,250.250 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:40:36,290.290 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:40:46,306.306 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:40:46,341.341 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:40:46,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:40:46,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:40:46,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:40:46,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:40:48,403.403 INFO    ] ================================================
[2026-10-18 11:40:48,418.418 INFO    ] Launching Daemon at Sun Oct 18 11:40:48 IST 2026
[2026-10-18 11:40:48,429.429 INFO    ] ================================================
[2026-10-18 11:40:48,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:40:48
[2026-10-18 11:40:49,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:40:49,830.830 INFO    ] Initializing speech engine...
[2026-10-18 11:40:49,836.836 INFO    ] 2026-10-18 11:40:49
[2026-10-18 11:40:50,125.125 INFO    ] 2026-10-18 11:40:50
[2026-10-18 11:40:50,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:40:50,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:40:50,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:40:50,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:40:50,511.511 INFO    ] time= 18/10/2026 11:40:50
[2026-10-18 11:40:50,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:40:50,577.577 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:40:50,704.704 INFO    ] No existing commands found in stream
[2026-10-18 11:40:55,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:40:55,720.720 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-18 11:40:57,590.590 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:40:57,593.593 INFO    ] Checking for system updates...
[2026-10-18 11:40:57,628.628 INFO    ] 200
[2026-10-18 11:40:57,631.631 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:40:57,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:40:57,690.690 INFO    ] No update needed
[2026-10-18 11:40:57,692.692 INFO    ] Checking for camera pi updates...
[2026-10-18 11:40:57,728.728 INFO    ] 200
[2026-10-18 11:40:57,731.731 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:40:57,771.771 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:41:07,784.784 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:41:07,819.819 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:41:07,828.828 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:41:07,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:41:07,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:41:07,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:41:09,881.881 INFO    ] ================================================
[2026-10-18 11:41:09,897.897 INFO    ] Launching Daemon at Sun Oct 18 11:41:09 IST 2026
[2026-10-18 11:41:09,908.908 INFO    ] ================================================
[2026-10-18 11:41:10,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:41:10
[2026-10-18 11:41:11,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:41:11,353.353 INFO    ] Initializing speech engine...
[2026-10-18 11:41:11,363.363 INFO    ] 2026-10-18 11:41:11
[2026-10-18 11:41:11,608.608 INFO    ] 2026-10-18 11:41:11
[2026-10-18 11:41:11,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:41:11,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:41:11,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:41:12,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:41:12,147.147 INFO    ] time= 18/10/2026 11:41:12
[2026-10-18 11:41:12,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:41:12,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:41:12,312.312 INFO    ] No existing commands found in stream
[2026-10-18 11:41:17,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:41:17,327.327 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-18 11:41:18,234.234 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:41:18,237.237 INFO    ] Checking for system updates...
[2026-10-18 11:41:18,272.272 INFO    ] 200
[2026-10-18 11:41:18,274.274 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:41:18,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:41:18,337.337 INFO    ] No update needed
[2026-10-18 11:41:18,339.339 INFO    ] Checking for camera pi updates...
[2026-10-18 11:41:18,375.375 INFO    ] 200
[2026-10-18 11:41:18,377.377 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:41:18,418.418 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:41:28,433.433 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:41:28,468.468 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:41:28,478.478 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:41:28,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:41:28,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:41:28,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:41:30,530.530 INFO    ] ================================================
[2026-10-18 11:41:30,546.546 INFO    ] Launching Daemon at Sun Oct 18 11:41:30 IST 2026
[2026-10-18 11:41:30,557.557 INFO    ] ================================================
[2026-10-18 11:41:31,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:41:31
[2026-10-18 11:41:31,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:41:32,188.188 INFO    ] Initializing speech engine...
[2026-10-18 11:41:32,203.203 INFO    ] 2026-10-18 11:41:32
[2026-10-18 11:41:32,495.495 INFO    ] 2026-10-18 11:41:32
[2026-10-18 11:41:32,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:41:32,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:41:32,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:41:33,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:41:33,052.052 INFO    ] time= 18/10/2026 11:41:33
[2026-10-18 11:41:33,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:41:33,103.103 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:41:33,244.244 INFO    ] No existing commands found in stream
[2026-10-18 11:41:38,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:41:38,283.283 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-18 11:41:39,961.961 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:41:39,963.963 INFO    ] Checking for system updates...
[2026-10-18 11:41:40,004.004 INFO    ] 200
[2026-10-18 11:41:40,007.007 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:41:40,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:41:40,068.068 INFO    ] No update needed
[2026-10-18 11:41:40,071.071 INFO    ] Checking for camera pi updates...
[2026-10-18 11:41:40,108.108 INFO    ] 200
[2026-10-18 11:41:40,111.111 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:41:40,157.157 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:41:50,173.173 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:41:50,213.213 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:41:50,224.224 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:41:50,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:41:50,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:41:50,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:41:52,279.279 INFO    ] ================================================
[2026-10-18 11:41:52,295.295 INFO    ] Launching Daemon at Sun Oct 18 11:41:52 IST 2026
[2026-10-18 11:41:52,306.306 INFO    ] ================================================
[2026-10-18 11:41:52,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:41:52
[2026-10-18 11:41:53,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:41:53,734.734 INFO    ] Initializing speech engine...
[2026-10-18 11:41:53,744.744 INFO    ] 2026-10-18 11:41:53
[2026-10-18 11:41:53,990.990 INFO    ] 2026-10-18 11:41:53
[2026-10-18 11:41:54,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:41:54,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:41:54,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:41:54,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:41:54,463.463 INFO    ] time= 18/10/2026 11:41:54
[2026-10-18 11:41:54,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:41:54,548.548 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:41:54,698.698 INFO    ] No existing commands found in stream
[2026-10-18 11:41:59,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:41:59,722.722 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-18 11:42:03,990.990 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:42:03,992.992 INFO    ] Checking for system updates...
[2026-10-18 11:42:04,027.027 INFO    ] 200
[2026-10-18 11:42:04,030.030 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:42:04,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:42:04,089.089 INFO    ] No update needed
[2026-10-18 11:42:04,091.091 INFO    ] Checking for camera pi updates...
[2026-10-18 11:42:04,127.127 INFO    ] 200
[2026-10-18 11:42:04,130.130 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:42:04,169.169 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:42:14,184.184 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:42:14,219.219 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:42:14,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:42:14,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:42:14,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:42:14,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:42:16,282.282 INFO    ] ================================================
[2026-10-18 11:42:16,298.298 INFO    ] Launching Daemon at Sun Oct 18 11:42:16 IST 2026
[2026-10-18 11:42:16,309.309 INFO    ] ================================================
[2026-10-18 11:42:16,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:42:16
[2026-10-18 11:42:17,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:42:17,703.703 INFO    ] Initializing speech engine...
[2026-10-18 11:42:17,717.717 INFO    ] 2026-10-18 11:42:17
[2026-10-18 11:42:17,979.979 INFO    ] 2026-10-18 11:42:17
[2026-10-18 11:42:18,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:42:18,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:42:18,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:42:18,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:42:18,462.462 INFO    ] time= 18/10/2026 11:42:18
[2026-10-18 11:42:18,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:42:18,538.538 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:42:18,686.686 INFO    ] No existing commands found in stream
[2026-10-18 11:42:23,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:42:23,701.701 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-18 11:42:24,815.815 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 11:42:24,818.818 INFO    ] Checking for system updates...
[2026-10-18 11:42:24,853.853 INFO    ] 200
[2026-10-18 11:42:24,856.856 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:42:24,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:42:24,915.915 INFO    ] No update needed
[2026-10-18 11:42:24,917.917 INFO    ] Checking for camera pi updates...
[2026-10-18 11:42:24,951.951 INFO    ] 200
[2026-10-18 11:42:24,953.953 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:42:25,000.000 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:42:35,013.013 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:42:35,048.048 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:42:35,058.058 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:42:35,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:42:35,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:42:35,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:42:37,110.110 INFO    ] ================================================
[2026-10-18 11:42:37,127.127 INFO    ] Launching Daemon at Sun Oct 18 11:42:37 IST 2026
[2026-10-18 11:42:37,139.139 INFO    ] ================================================
[2026-10-18 11:42:37,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:42:37
[2026-10-18 11:42:38,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:42:38,549.549 INFO    ] Initializing speech engine...
[2026-10-18 11:42:38,567.567 INFO    ] 2026-10-18 11:42:38
[2026-10-18 11:42:38,821.821 INFO    ] 2026-10-18 11:42:38
[2026-10-18 11:42:38,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:42:39,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:42:39,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:42:39,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:42:39,356.356 INFO    ] time= 18/10/2026 11:42:39
[2026-10-18 11:42:39,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:42:39,377.377 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:42:39,524.524 INFO    ] No existing commands found in stream
[2026-10-18 11:42:44,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:42:44,550.550 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-18 11:42:46,689.689 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:42:46,692.692 INFO    ] Checking for system updates...
[2026-10-18 11:42:46,730.730 INFO    ] 200
[2026-10-18 11:42:46,732.732 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:42:46,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:42:46,793.793 INFO    ] No update needed
[2026-10-18 11:42:46,795.795 INFO    ] Checking for camera pi updates...
[2026-10-18 11:42:46,829.829 INFO    ] 200
[2026-10-18 11:42:46,831.831 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:42:46,871.871 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:42:56,886.886 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:42:56,920.920 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:42:56,930.930 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:42:56,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:42:56,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:42:56,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:42:58,983.983 INFO    ] ================================================
[2026-10-18 11:42:59,999.999 INFO    ] Launching Daemon at Sun Oct 18 11:42:58 IST 2026
[2026-10-18 11:42:59,010.010 INFO    ] ================================================
[2026-10-18 11:42:59,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:42:59
[2026-10-18 11:43:00,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:43:00,410.410 INFO    ] Initializing speech engine...
[2026-10-18 11:43:00,419.419 INFO    ] 2026-10-18 11:43:00
[2026-10-18 11:43:00,702.702 INFO    ] 2026-10-18 11:43:00
[2026-10-18 11:43:00,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:43:00,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:43:01,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:43:01,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:43:01,182.182 INFO    ] time= 18/10/2026 11:43:01
[2026-10-18 11:43:01,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:43:01,214.214 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:43:01,296.296 INFO    ] No existing commands found in stream
[2026-10-18 11:43:06,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:43:06,309.309 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-18 11:43:08,037.037 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:43:08,040.040 INFO    ] Checking for system updates...
[2026-10-18 11:43:08,076.076 INFO    ] 200
[2026-10-18 11:43:08,078.078 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:43:08,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:43:08,133.133 INFO    ] No update needed
[2026-10-18 11:43:08,136.136 INFO    ] Checking for camera pi updates...
[2026-10-18 11:43:08,170.170 INFO    ] 200
[2026-10-18 11:43:08,172.172 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:43:08,218.218 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:43:18,233.233 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:43:18,269.269 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:43:18,280.280 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:43:18,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:43:18,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:43:18,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:43:20,334.334 INFO    ] ================================================
[2026-10-18 11:43:20,349.349 INFO    ] Launching Daemon at Sun Oct 18 11:43:20 IST 2026
[2026-10-18 11:43:20,361.361 INFO    ] ================================================
[2026-10-18 11:43:20,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:43:20
[2026-10-18 11:43:21,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:43:21,761.761 INFO    ] Initializing speech engine...
[2026-10-18 11:43:21,769.769 INFO    ] 2026-10-18 11:43:21
[2026-10-18 11:43:22,043.043 INFO    ] 2026-10-18 11:43:22
[2026-10-18 11:43:22,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:43:22,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:43:22,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:43:22,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:43:22,535.535 INFO    ] time= 18/10/2026 11:43:22
[2026-10-18 11:43:22,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:43:22,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:43:22,772.772 INFO    ] No existing commands found in stream
[2026-10-18 11:43:27,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:43:27,789.789 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-18 11:43:31,657.657 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:43:31,660.660 INFO    ] Checking for system updates...
[2026-10-18 11:43:31,711.711 INFO    ] 200
[2026-10-18 11:43:31,714.714 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:43:31,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:43:31,773.773 INFO    ] No update needed
[2026-10-18 11:43:31,775.775 INFO    ] Checking for camera pi updates...
[2026-10-18 11:43:31,811.811 INFO    ] 200
[2026-10-18 11:43:31,814.814 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:43:31,863.863 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:43:41,878.878 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:43:41,913.913 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:43:41,922.922 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:43:41,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:43:41,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:43:41,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:43:43,975.975 INFO    ] ================================================
[2026-10-18 11:43:43,991.991 INFO    ] Launching Daemon at Sun Oct 18 11:43:43 IST 2026
[2026-10-18 11:43:44,002.002 INFO    ] ================================================
[2026-10-18 11:43:44,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:43:44
[2026-10-18 11:43:45,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:43:45,656.656 INFO    ] Initializing speech engine...
[2026-10-18 11:43:45,662.662 INFO    ] 2026-10-18 11:43:45
[2026-10-18 11:43:45,970.970 INFO    ] 2026-10-18 11:43:45
[2026-10-18 11:43:46,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:43:46,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:43:46,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:43:46,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:43:46,496.496 INFO    ] time= 18/10/2026 11:43:46
[2026-10-18 11:43:46,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:43:46,536.536 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:43:46,660.660 INFO    ] No existing commands found in stream
[2026-10-18 11:43:51,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:43:51,694.694 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-18 11:43:55,923.923 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 11:43:55,926.926 INFO    ] Checking for system updates...
[2026-10-18 11:43:55,963.963 INFO    ] 200
[2026-10-18 11:43:55,966.966 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:43:56,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:43:56,030.030 INFO    ] No update needed
[2026-10-18 11:43:56,033.033 INFO    ] Checking for camera pi updates...
[2026-10-18 11:43:56,071.071 INFO    ] 200
[2026-10-18 11:43:56,074.074 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:43:56,118.118 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:44:06,136.136 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:44:06,178.178 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:44:06,189.189 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:44:06,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:44:06,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:44:06,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:44:08,250.250 INFO    ] ================================================
[2026-10-18 11:44:08,265.265 INFO    ] Launching Daemon at Sun Oct 18 11:44:08 IST 2026
[2026-10-18 11:44:08,276.276 INFO    ] ================================================
[2026-10-18 11:44:08,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:44:08
[2026-10-18 11:44:09,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:44:09,705.705 INFO    ] Initializing speech engine...
[2026-10-18 11:44:09,714.714 INFO    ] 2026-10-18 11:44:09
[2026-10-18 11:44:09,962.962 INFO    ] 2026-10-18 11:44:09
[2026-10-18 11:44:10,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:44:10,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:44:10,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:44:10,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:44:10,512.512 INFO    ] time= 18/10/2026 11:44:10
[2026-10-18 11:44:10,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:44:10,536.536 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:44:10,690.690 INFO    ] No existing commands found in stream
[2026-10-18 11:44:15,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:44:15,723.723 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-18 11:44:17,313.313 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:44:17,315.315 INFO    ] Checking for system updates...
[2026-10-18 11:44:17,354.354 INFO    ] 200
[2026-10-18 11:44:17,357.357 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:44:17,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:44:17,411.411 INFO    ] No update needed
[2026-10-18 11:44:17,414.414 INFO    ] Checking for camera pi updates...
[2026-10-18 11:44:17,447.447 INFO    ] 200
[2026-10-18 11:44:17,449.449 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:44:17,489.489 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:44:27,505.505 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:44:27,544.544 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:44:27,555.555 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:44:27,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:44:27,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:44:27,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:44:29,612.612 INFO    ] ================================================
[2026-10-18 11:44:29,628.628 INFO    ] Launching Daemon at Sun Oct 18 11:44:29 IST 2026
[2026-10-18 11:44:29,638.638 INFO    ] ================================================
[2026-10-18 11:44:30,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:44:30
[2026-10-18 11:44:30,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:44:31,106.106 INFO    ] Initializing speech engine...
[2026-10-18 11:44:31,113.113 INFO    ] 2026-10-18 11:44:31
[2026-10-18 11:44:31,379.379 INFO    ] 2026-10-18 11:44:31
[2026-10-18 11:44:31,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:44:31,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:44:31,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:44:31,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:44:31,972.972 INFO    ] time= 18/10/2026 11:44:31
[2026-10-18 11:44:31,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:44:32,025.025 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:44:32,203.203 INFO    ] No existing commands found in stream
[2026-10-18 11:44:37,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:44:37,238.238 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-18 11:44:39,759.759 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 11:44:39,762.762 INFO    ] Checking for system updates...
[2026-10-18 11:44:39,798.798 INFO    ] 200
[2026-10-18 11:44:39,800.800 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:44:39,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:44:39,863.863 INFO    ] No update needed
[2026-10-18 11:44:39,865.865 INFO    ] Checking for camera pi updates...
[2026-10-18 11:44:39,902.902 INFO    ] 200
[2026-10-18 11:44:39,904.904 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:44:39,945.945 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:44:49,960.960 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:44:49,996.996 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:44:50,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:44:50,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:44:50,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:44:50,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:44:52,059.059 INFO    ] ================================================
[2026-10-18 11:44:52,074.074 INFO    ] Launching Daemon at Sun Oct 18 11:44:52 IST 2026
[2026-10-18 11:44:52,086.086 INFO    ] ================================================
[2026-10-18 11:44:52,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:44:52
[2026-10-18 11:44:53,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:44:53,490.490 INFO    ] Initializing speech engine...
[2026-10-18 11:44:53,499.499 INFO    ] 2026-10-18 11:44:53
[2026-10-18 11:44:53,791.791 INFO    ] 2026-10-18 11:44:53
[2026-10-18 11:44:53,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:44:54,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:44:54,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:44:54,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:44:54,283.283 INFO    ] time= 18/10/2026 11:44:54
[2026-10-18 11:44:54,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:44:54,376.376 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:44:54,485.485 INFO    ] No existing commands found in stream
[2026-10-18 11:44:59,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:44:59,500.500 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-18 11:45:03,161.161 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:45:03,164.164 INFO    ] Checking for system updates...
[2026-10-18 11:45:03,200.200 INFO    ] 200
[2026-10-18 11:45:03,203.203 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:45:03,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:45:03,266.266 INFO    ] No update needed
[2026-10-18 11:45:03,269.269 INFO    ] Checking for camera pi updates...
[2026-10-18 11:45:03,305.305 INFO    ] 200
[2026-10-18 11:45:03,307.307 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:45:03,352.352 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:45:13,370.370 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:45:13,405.405 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:45:13,414.414 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:45:13,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:45:13,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:45:13,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:45:15,467.467 INFO    ] ================================================
[2026-10-18 11:45:15,483.483 INFO    ] Launching Daemon at Sun Oct 18 11:45:15 IST 2026
[2026-10-18 11:45:15,494.494 INFO    ] ================================================
[2026-10-18 11:45:16,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:45:16
[2026-10-18 11:45:16,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:45:16,918.918 INFO    ] Initializing speech engine...
[2026-10-18 11:45:16,926.926 INFO    ] 2026-10-18 11:45:16
[2026-10-18 11:45:17,216.216 INFO    ] 2026-10-18 11:45:17
[2026-10-18 11:45:17,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:45:17,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:45:17,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:45:17,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:45:17,749.749 INFO    ] time= 18/10/2026 11:45:17
[2026-10-18 11:45:17,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:45:17,795.795 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:45:17,925.925 INFO    ] No existing commands found in stream
[2026-10-18 11:45:22,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:45:22,953.953 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-18 11:45:27,452.452 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:45:27,455.455 INFO    ] Checking for system updates...
[2026-10-18 11:45:27,491.491 INFO    ] 200
[2026-10-18 11:45:27,493.493 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:45:27,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:45:27,549.549 INFO    ] No update needed
[2026-10-18 11:45:27,551.551 INFO    ] Checking for camera pi updates...
[2026-10-18 11:45:27,585.585 INFO    ] 200
[2026-10-18 11:45:27,588.588 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:45:27,634.634 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:45:37,648.648 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:45:37,682.682 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:45:37,692.692 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:45:37,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:45:37,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:45:37,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:45:39,745.745 INFO    ] ================================================
[2026-10-18 11:45:39,761.761 INFO    ] Launching Daemon at Sun Oct 18 11:45:39 IST 2026
[2026-10-18 11:45:39,772.772 INFO    ] ================================================
[2026-10-18 11:45:40,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:45:40
[2026-10-18 11:45:40,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:45:41,197.197 INFO    ] Initializing speech engine...
[2026-10-18 11:45:41,211.211 INFO    ] 2026-10-18 11:45:41
[2026-10-18 11:45:41,502.502 INFO    ] 2026-10-18 11:45:41
[2026-10-18 11:45:41,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:45:41,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:45:41,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:45:41,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:45:41,907.907 INFO    ] time= 18/10/2026 11:45:41
[2026-10-18 11:45:41,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:45:41,964.964 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:45:42,105.105 INFO    ] No existing commands found in stream
[2026-10-18 11:45:47,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:45:47,119.119 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-18 11:45:48,589.589 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:45:48,591.591 INFO    ] Checking for system updates...
[2026-10-18 11:45:48,633.633 INFO    ] 200
[2026-10-18 11:45:48,635.635 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:45:48,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:45:48,690.690 INFO    ] No update needed
[2026-10-18 11:45:48,692.692 INFO    ] Checking for camera pi updates...
[2026-10-18 11:45:48,726.726 INFO    ] 200
[2026-10-18 11:45:48,728.728 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:45:48,775.775 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:45:58,790.790 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:45:58,826.826 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:45:58,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:45:58,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:45:58,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:45:58,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:46:00,888.888 INFO    ] ================================================
[2026-10-18 11:46:00,903.903 INFO    ] Launching Daemon at Sun Oct 18 11:46:00 IST 2026
[2026-10-18 11:46:00,915.915 INFO    ] ================================================
[2026-10-18 11:46:01,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:46:01
[2026-10-18 11:46:02,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:46:02,848.848 INFO    ] Initializing speech engine...
[2026-10-18 11:46:02,851.851 INFO    ] 2026-10-18 11:46:02
[2026-10-18 11:46:03,214.214 INFO    ] 2026-10-18 11:46:03
[2026-10-18 11:46:03,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:46:03,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:46:03,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:46:03,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:46:03,693.693 INFO    ] time= 18/10/2026 11:46:03
[2026-10-18 11:46:03,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:46:03,763.763 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:46:03,906.906 INFO    ] No existing commands found in stream
[2026-10-18 11:46:08,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:46:08,927.927 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-18 11:46:12,483.483 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:46:12,486.486 INFO    ] Checking for system updates...
[2026-10-18 11:46:12,521.521 INFO    ] 200
[2026-10-18 11:46:12,524.524 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:46:12,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:46:12,578.578 INFO    ] No update needed
[2026-10-18 11:46:12,580.580 INFO    ] Checking for camera pi updates...
[2026-10-18 11:46:12,617.617 INFO    ] 200
[2026-10-18 11:46:12,619.619 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:46:12,659.659 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:46:22,674.674 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d35150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:46:22,709.709 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:46:22,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:46:22,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:46:22,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:46:22,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:46:24,772.772 INFO    ] ================================================
[2026-10-18 11:46:24,788.788 INFO    ] Launching Daemon at Sun Oct 18 11:46:24 IST 2026
[2026-10-18 11:46:24,799.799 INFO    ] ================================================
[2026-10-18 11:46:25,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:46:25
[2026-10-18 11:46:25,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:46:26,262.262 INFO    ] Initializing speech engine...
[2026-10-18 11:46:26,265.265 INFO    ] 2026-10-18 11:46:26
[2026-10-18 11:46:26,515.515 INFO    ] 2026-10-18 11:46:26
[2026-10-18 11:46:26,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:46:26,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:46:26,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:46:26,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:46:27,024.024 INFO    ] time= 18/10/2026 11:46:26
[2026-10-18 11:46:27,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:46:27,083.083 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:46:27,237.237 INFO    ] No existing commands found in stream
[2026-10-18 11:46:32,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:46:32,266.266 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-18 11:46:33,891.891 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:46:33,893.893 INFO    ] Checking for system updates...
[2026-10-18 11:46:33,929.929 INFO    ] 200
[2026-10-18 11:46:33,932.932 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:46:33,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:46:33,995.995 INFO    ] No update needed
[2026-10-18 11:46:33,998.998 INFO    ] Checking for camera pi updates...
[2026-10-18 11:46:34,036.036 INFO    ] 200
[2026-10-18 11:46:34,039.039 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:46:34,085.085 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:46:44,102.102 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:46:44,142.142 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:46:44,154.154 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:46:44,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:46:44,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:46:44,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:46:46,211.211 INFO    ] ================================================
[2026-10-18 11:46:46,227.227 INFO    ] Launching Daemon at Sun Oct 18 11:46:46 IST 2026
[2026-10-18 11:46:46,238.238 INFO    ] ================================================
[2026-10-18 11:46:46,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:46:46
[2026-10-18 11:46:47,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:46:47,779.779 INFO    ] Initializing speech engine...
[2026-10-18 11:46:47,804.804 INFO    ] 2026-10-18 11:46:47
[2026-10-18 11:46:48,080.080 INFO    ] 2026-10-18 11:46:48
[2026-10-18 11:46:48,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:46:48,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:46:48,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:46:48,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:46:48,624.624 INFO    ] time= 18/10/2026 11:46:48
[2026-10-18 11:46:48,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:46:48,728.728 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:46:48,865.865 INFO    ] No existing commands found in stream
[2026-10-18 11:46:53,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:46:53,891.891 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-18 11:46:56,390.390 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:46:56,393.393 INFO    ] Checking for system updates...
[2026-10-18 11:46:56,429.429 INFO    ] 200
[2026-10-18 11:46:56,431.431 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:46:56,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:46:56,496.496 INFO    ] No update needed
[2026-10-18 11:46:56,499.499 INFO    ] Checking for camera pi updates...
[2026-10-18 11:46:56,532.532 INFO    ] 200
[2026-10-18 11:46:56,534.534 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:46:56,581.581 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:47:06,597.597 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:47:06,637.637 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:47:06,647.647 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:47:06,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:47:06,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:47:06,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:47:08,700.700 INFO    ] ================================================
[2026-10-18 11:47:08,716.716 INFO    ] Launching Daemon at Sun Oct 18 11:47:08 IST 2026
[2026-10-18 11:47:08,727.727 INFO    ] ================================================
[2026-10-18 11:47:09,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:47:09
[2026-10-18 11:47:09,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:47:10,130.130 INFO    ] Initializing speech engine...
[2026-10-18 11:47:10,145.145 INFO    ] 2026-10-18 11:47:10
[2026-10-18 11:47:10,411.411 INFO    ] 2026-10-18 11:47:10
[2026-10-18 11:47:10,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:47:10,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:47:10,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:47:10,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:47:10,921.921 INFO    ] time= 18/10/2026 11:47:10
[2026-10-18 11:47:10,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:47:10,994.994 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:47:11,144.144 INFO    ] No existing commands found in stream
[2026-10-18 11:47:16,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:47:16,162.162 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-18 11:47:17,747.747 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:47:17,750.750 INFO    ] Checking for system updates...
[2026-10-18 11:47:17,789.789 INFO    ] 200
[2026-10-18 11:47:17,791.791 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:47:17,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:47:17,845.845 INFO    ] No update needed
[2026-10-18 11:47:17,848.848 INFO    ] Checking for camera pi updates...
[2026-10-18 11:47:17,881.881 INFO    ] 200
[2026-10-18 11:47:17,883.883 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:47:17,922.922 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:47:27,937.937 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:47:27,972.972 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:47:27,981.981 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:47:27,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:47:27,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:47:27,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:47:30,035.035 INFO    ] ================================================
[2026-10-18 11:47:30,051.051 INFO    ] Launching Daemon at Sun Oct 18 11:47:30 IST 2026
[2026-10-18 11:47:30,063.063 INFO    ] ================================================
[2026-10-18 11:47:30,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:47:30
[2026-10-18 11:47:31,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:47:31,469.469 INFO    ] Initializing speech engine...
[2026-10-18 11:47:31,493.493 INFO    ] 2026-10-18 11:47:31
[2026-10-18 11:47:31,759.759 INFO    ] 2026-10-18 11:47:31
[2026-10-18 11:47:31,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:47:32,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:47:32,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:47:32,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:47:32,258.258 INFO    ] time= 18/10/2026 11:47:32
[2026-10-18 11:47:32,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:47:32,369.369 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:47:32,522.522 INFO    ] No existing commands found in stream
[2026-10-18 11:47:37,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:47:37,547.547 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-18 11:47:41,563.563 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:47:41,566.566 INFO    ] Checking for system updates...
[2026-10-18 11:47:41,601.601 INFO    ] 200
[2026-10-18 11:47:41,603.603 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:47:41,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:47:41,657.657 INFO    ] No update needed
[2026-10-18 11:47:41,660.660 INFO    ] Checking for camera pi updates...
[2026-10-18 11:47:41,693.693 INFO    ] 200
[2026-10-18 11:47:41,696.696 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:47:41,735.735 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:47:51,750.750 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:47:51,785.785 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:47:51,794.794 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:47:51,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:47:51,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:47:51,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:47:53,851.851 INFO    ] ================================================
[2026-10-18 11:47:53,869.869 INFO    ] Launching Daemon at Sun Oct 18 11:47:53 IST 2026
[2026-10-18 11:47:53,882.882 INFO    ] ================================================
[2026-10-18 11:47:54,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:47:54
[2026-10-18 11:47:55,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:47:55,353.353 INFO    ] Initializing speech engine...
[2026-10-18 11:47:55,372.372 INFO    ] 2026-10-18 11:47:55
[2026-10-18 11:47:55,628.628 INFO    ] 2026-10-18 11:47:55
[2026-10-18 11:47:55,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:47:55,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:47:55,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:47:56,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:47:56,194.194 INFO    ] time= 18/10/2026 11:47:56
[2026-10-18 11:47:56,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:47:56,223.223 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:47:56,360.360 INFO    ] No existing commands found in stream
[2026-10-18 11:48:01,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:48:01,385.385 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-18 11:48:04,851.851 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:48:04,854.854 INFO    ] Checking for system updates...
[2026-10-18 11:48:04,894.894 INFO    ] 200
[2026-10-18 11:48:04,897.897 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:48:04,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:48:04,951.951 INFO    ] No update needed
[2026-10-18 11:48:04,953.953 INFO    ] Checking for camera pi updates...
[2026-10-18 11:48:04,986.986 INFO    ] 200
[2026-10-18 11:48:04,989.989 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:48:05,028.028 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:48:15,044.044 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:48:15,078.078 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:48:15,088.088 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:48:15,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:48:15,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:48:15,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:48:17,142.142 INFO    ] ================================================
[2026-10-18 11:48:17,158.158 INFO    ] Launching Daemon at Sun Oct 18 11:48:17 IST 2026
[2026-10-18 11:48:17,170.170 INFO    ] ================================================
[2026-10-18 11:48:17,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:48:17
[2026-10-18 11:48:18,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:48:18,804.804 INFO    ] Initializing speech engine...
[2026-10-18 11:48:18,818.818 INFO    ] 2026-10-18 11:48:18
[2026-10-18 11:48:19,130.130 INFO    ] 2026-10-18 11:48:19
[2026-10-18 11:48:19,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:48:19,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:48:19,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:48:19,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:48:19,638.638 INFO    ] time= 18/10/2026 11:48:19
[2026-10-18 11:48:19,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:48:19,687.687 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:48:19,812.812 INFO    ] No existing commands found in stream
[2026-10-18 11:48:24,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:48:24,841.841 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-18 11:48:26,954.954 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 11:48:26,958.958 INFO    ] Checking for system updates...
[2026-10-18 11:48:26,994.994 INFO    ] 200
[2026-10-18 11:48:26,997.997 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:48:27,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:48:27,052.052 INFO    ] No update needed
[2026-10-18 11:48:27,055.055 INFO    ] Checking for camera pi updates...
[2026-10-18 11:48:27,089.089 INFO    ] 200
[2026-10-18 11:48:27,092.092 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:48:27,133.133 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:48:37,150.150 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:48:37,189.189 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:48:37,200.200 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:48:37,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:48:37,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:48:37,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:48:39,256.256 INFO    ] ================================================
[2026-10-18 11:48:39,271.271 INFO    ] Launching Daemon at Sun Oct 18 11:48:39 IST 2026
[2026-10-18 11:48:39,282.282 INFO    ] ================================================
[2026-10-18 11:48:39,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:48:39
[2026-10-18 11:48:40,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:48:40,682.682 INFO    ] Initializing speech engine...
[2026-10-18 11:48:40,698.698 INFO    ] 2026-10-18 11:48:40
[2026-10-18 11:48:40,964.964 INFO    ] 2026-10-18 11:48:40
[2026-10-18 11:48:41,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:48:41,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:48:41,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:48:41,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:48:41,535.535 INFO    ] time= 18/10/2026 11:48:41
[2026-10-18 11:48:41,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:48:41,562.562 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:48:41,707.707 INFO    ] No existing commands found in stream
[2026-10-18 11:48:46,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:48:46,741.741 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-18 11:48:47,738.738 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:48:47,740.740 INFO    ] Checking for system updates...
[2026-10-18 11:48:47,776.776 INFO    ] 200
[2026-10-18 11:48:47,778.778 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:48:47,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:48:47,839.839 INFO    ] No update needed
[2026-10-18 11:48:47,841.841 INFO    ] Checking for camera pi updates...
[2026-10-18 11:48:47,874.874 INFO    ] 200
[2026-10-18 11:48:47,877.877 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:48:47,917.917 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:48:57,932.932 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:48:57,966.966 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:48:57,976.976 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:48:57,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:48:57,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:48:57,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:49:00,028.028 INFO    ] ================================================
[2026-10-18 11:49:00,044.044 INFO    ] Launching Daemon at Sun Oct 18 11:49:00 IST 2026
[2026-10-18 11:49:00,056.056 INFO    ] ================================================
[2026-10-18 11:49:00,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:49:00
[2026-10-18 11:49:01,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:49:01,467.467 INFO    ] Initializing speech engine...
[2026-10-18 11:49:01,491.491 INFO    ] 2026-10-18 11:49:01
[2026-10-18 11:49:01,787.787 INFO    ] 2026-10-18 11:49:01
[2026-10-18 11:49:01,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:49:02,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:49:02,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:49:02,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:49:02,256.256 INFO    ] time= 18/10/2026 11:49:02
[2026-10-18 11:49:02,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:49:02,291.291 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:49:02,407.407 INFO    ] No existing commands found in stream
[2026-10-18 11:49:07,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:49:07,441.441 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-18 11:49:11,406.406 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:49:11,408.408 INFO    ] Checking for system updates...
[2026-10-18 11:49:11,444.444 INFO    ] 200
[2026-10-18 11:49:11,447.447 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:49:11,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:49:11,501.501 INFO    ] No update needed
[2026-10-18 11:49:11,504.504 INFO    ] Checking for camera pi updates...
[2026-10-18 11:49:11,541.541 INFO    ] 200
[2026-10-18 11:49:11,544.544 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:49:11,583.583 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:49:21,599.599 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:49:21,633.633 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:49:21,643.643 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:49:21,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:49:21,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:49:21,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:49:23,697.697 INFO    ] ================================================
[2026-10-18 11:49:23,713.713 INFO    ] Launching Daemon at Sun Oct 18 11:49:23 IST 2026
[2026-10-18 11:49:23,724.724 INFO    ] ================================================
[2026-10-18 11:49:24,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:49:24
[2026-10-18 11:49:24,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:49:25,254.254 INFO    ] Initializing speech engine...
[2026-10-18 11:49:25,264.264 INFO    ] 2026-10-18 11:49:25
[2026-10-18 11:49:25,514.514 INFO    ] 2026-10-18 11:49:25
[2026-10-18 11:49:25,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:49:25,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:49:25,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:49:26,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:49:26,081.081 INFO    ] time= 18/10/2026 11:49:26
[2026-10-18 11:49:26,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:49:26,103.103 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:49:26,241.241 INFO    ] No existing commands found in stream
[2026-10-18 11:49:31,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:49:31,267.267 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-18 11:49:32,235.235 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:49:32,238.238 INFO    ] Checking for system updates...
[2026-10-18 11:49:32,276.276 INFO    ] 200
[2026-10-18 11:49:32,279.279 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:49:32,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:49:32,351.351 INFO    ] No update needed
[2026-10-18 11:49:32,354.354 INFO    ] Checking for camera pi updates...
[2026-10-18 11:49:32,392.392 INFO    ] 200
[2026-10-18 11:49:32,395.395 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:49:32,442.442 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:49:42,457.457 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:49:42,492.492 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:49:42,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:49:42,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:49:42,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:49:42,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:49:44,553.553 INFO    ] ================================================
[2026-10-18 11:49:44,569.569 INFO    ] Launching Daemon at Sun Oct 18 11:49:44 IST 2026
[2026-10-18 11:49:44,580.580 INFO    ] ================================================
[2026-10-18 11:49:45,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:49:45
[2026-10-18 11:49:45,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:49:45,994.994 INFO    ] Initializing speech engine...
[2026-10-18 11:49:46,000.000 INFO    ] 2026-10-18 11:49:45
[2026-10-18 11:49:46,305.305 INFO    ] 2026-10-18 11:49:46
[2026-10-18 11:49:46,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:49:46,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:49:46,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:49:46,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:49:46,822.822 INFO    ] time= 18/10/2026 11:49:46
[2026-10-18 11:49:46,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:49:46,909.909 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:49:47,060.060 INFO    ] No existing commands found in stream
[2026-10-18 11:49:52,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:49:52,081.081 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-18 11:49:53,282.282 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:49:53,285.285 INFO    ] Checking for system updates...
[2026-10-18 11:49:53,322.322 INFO    ] 200
[2026-10-18 11:49:53,325.325 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:49:53,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:49:53,388.388 INFO    ] No update needed
[2026-10-18 11:49:53,391.391 INFO    ] Checking for camera pi updates...
[2026-10-18 11:49:53,429.429 INFO    ] 200
[2026-10-18 11:49:53,432.432 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:49:53,473.473 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:50:03,489.489 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:50:03,542.542 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:50:03,560.560 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:50:03,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:50:03,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:50:03,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:50:05,629.629 INFO    ] ================================================
[2026-10-18 11:50:05,644.644 INFO    ] Launching Daemon at Sun Oct 18 11:50:05 IST 2026
[2026-10-18 11:50:05,655.655 INFO    ] ================================================
[2026-10-18 11:50:06,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:50:06
[2026-10-18 11:50:06,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:50:07,069.069 INFO    ] Initializing speech engine...
[2026-10-18 11:50:07,077.077 INFO    ] 2026-10-18 11:50:07
[2026-10-18 11:50:07,374.374 INFO    ] 2026-10-18 11:50:07
[2026-10-18 11:50:07,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:50:07,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:50:07,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:50:07,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:50:07,806.806 INFO    ] time= 18/10/2026 11:50:07
[2026-10-18 11:50:07,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:50:07,867.867 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:50:08,034.034 INFO    ] No existing commands found in stream
[2026-10-18 11:50:13,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:50:13,049.049 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-18 11:50:16,589.589 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 11:50:16,592.592 INFO    ] Checking for system updates...
[2026-10-18 11:50:16,632.632 INFO    ] 200
[2026-10-18 11:50:16,635.635 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:50:16,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:50:16,691.691 INFO    ] No update needed
[2026-10-18 11:50:16,694.694 INFO    ] Checking for camera pi updates...
[2026-10-18 11:50:16,729.729 INFO    ] 200
[2026-10-18 11:50:16,731.731 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:50:16,778.778 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:50:26,793.793 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:50:26,828.828 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:50:26,838.838 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:50:26,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:50:26,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:50:26,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:50:28,890.890 INFO    ] ================================================
[2026-10-18 11:50:28,907.907 INFO    ] Launching Daemon at Sun Oct 18 11:50:28 IST 2026
[2026-10-18 11:50:28,919.919 INFO    ] ================================================
[2026-10-18 11:50:29,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:50:29
[2026-10-18 11:50:30,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:50:30,370.370 INFO    ] Initializing speech engine...
[2026-10-18 11:50:30,385.385 INFO    ] 2026-10-18 11:50:30
[2026-10-18 11:50:30,685.685 INFO    ] 2026-10-18 11:50:30
[2026-10-18 11:50:30,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:50:30,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:50:30,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:50:31,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:50:31,118.118 INFO    ] time= 18/10/2026 11:50:31
[2026-10-18 11:50:31,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:50:31,130.130 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:50:31,214.214 INFO    ] No existing commands found in stream
[2026-10-18 11:50:36,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:50:36,247.247 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-18 11:50:39,054.054 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:50:39,057.057 INFO    ] Checking for system updates...
[2026-10-18 11:50:39,093.093 INFO    ] 200
[2026-10-18 11:50:39,096.096 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:50:39,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:50:39,151.151 INFO    ] No update needed
[2026-10-18 11:50:39,153.153 INFO    ] Checking for camera pi updates...
[2026-10-18 11:50:39,187.187 INFO    ] 200
[2026-10-18 11:50:39,190.190 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:50:39,230.230 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:50:49,245.245 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:50:49,280.280 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:50:49,290.290 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:50:49,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:50:49,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:50:49,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:50:51,343.343 INFO    ] ================================================
[2026-10-18 11:50:51,359.359 INFO    ] Launching Daemon at Sun Oct 18 11:50:51 IST 2026
[2026-10-18 11:50:51,370.370 INFO    ] ================================================
[2026-10-18 11:50:51,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:50:51
[2026-10-18 11:50:52,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:50:52,839.839 INFO    ] Initializing speech engine...
[2026-10-18 11:50:52,855.855 INFO    ] 2026-10-18 11:50:52
[2026-10-18 11:50:53,112.112 INFO    ] 2026-10-18 11:50:53
[2026-10-18 11:50:53,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:50:53,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:50:53,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:50:53,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:50:53,596.596 INFO    ] time= 18/10/2026 11:50:53
[2026-10-18 11:50:53,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:50:53,691.691 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:50:53,817.817 INFO    ] No existing commands found in stream
[2026-10-18 11:50:58,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:50:58,846.846 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-18 11:51:01,771.771 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:51:01,774.774 INFO    ] Checking for system updates...
[2026-10-18 11:51:01,817.817 INFO    ] 200
[2026-10-18 11:51:01,820.820 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:51:01,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:51:01,906.906 INFO    ] No update needed
[2026-10-18 11:51:01,909.909 INFO    ] Checking for camera pi updates...
[2026-10-18 11:51:01,951.951 INFO    ] 200
[2026-10-18 11:51:01,955.955 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:51:02,007.007 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:51:12,022.022 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:51:12,057.057 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:51:12,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:51:12,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:51:12,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:51:12,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:51:14,119.119 INFO    ] ================================================
[2026-10-18 11:51:14,135.135 INFO    ] Launching Daemon at Sun Oct 18 11:51:14 IST 2026
[2026-10-18 11:51:14,145.145 INFO    ] ================================================
[2026-10-18 11:51:14,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:51:14
[2026-10-18 11:51:15,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:51:15,589.589 INFO    ] Initializing speech engine...
[2026-10-18 11:51:15,599.599 INFO    ] 2026-10-18 11:51:15
[2026-10-18 11:51:15,896.896 INFO    ] 2026-10-18 11:51:15
[2026-10-18 11:51:15,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:51:16,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:51:16,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:51:16,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:51:16,326.326 INFO    ] time= 18/10/2026 11:51:16
[2026-10-18 11:51:16,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:51:16,402.402 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:51:16,536.536 INFO    ] No existing commands found in stream
[2026-10-18 11:51:21,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:51:21,549.549 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-18 11:51:22,719.719 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:51:22,722.722 INFO    ] Checking for system updates...
[2026-10-18 11:51:22,757.757 INFO    ] 200
[2026-10-18 11:51:22,760.760 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:51:22,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:51:22,823.823 INFO    ] No update needed
[2026-10-18 11:51:22,826.826 INFO    ] Checking for camera pi updates...
[2026-10-18 11:51:22,860.860 INFO    ] 200
[2026-10-18 11:51:22,862.862 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:51:22,902.902 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:51:32,916.916 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:51:32,950.950 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:51:32,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:51:32,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:51:32,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:51:32,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:51:35,012.012 INFO    ] ================================================
[2026-10-18 11:51:35,028.028 INFO    ] Launching Daemon at Sun Oct 18 11:51:35 IST 2026
[2026-10-18 11:51:35,039.039 INFO    ] ================================================
[2026-10-18 11:51:35,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:51:35
[2026-10-18 11:51:36,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:51:36,461.461 INFO    ] Initializing speech engine...
[2026-10-18 11:51:36,471.471 INFO    ] 2026-10-18 11:51:36
[2026-10-18 11:51:36,715.715 INFO    ] 2026-10-18 11:51:36
[2026-10-18 11:51:36,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:51:37,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:51:37,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:51:37,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:51:37,270.270 INFO    ] time= 18/10/2026 11:51:37
[2026-10-18 11:51:37,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:51:37,294.294 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:51:37,421.421 INFO    ] No existing commands found in stream
[2026-10-18 11:51:42,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:51:42,448.448 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-18 11:51:44,223.223 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:51:44,226.226 INFO    ] Checking for system updates...
[2026-10-18 11:51:44,261.261 INFO    ] 200
[2026-10-18 11:51:44,264.264 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:51:44,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:51:44,319.319 INFO    ] No update needed
[2026-10-18 11:51:44,322.322 INFO    ] Checking for camera pi updates...
[2026-10-18 11:51:44,356.356 INFO    ] 200
[2026-10-18 11:51:44,358.358 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:51:44,398.398 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:51:54,412.412 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:51:54,447.447 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:51:54,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:51:54,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:51:54,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:51:54,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:51:56,508.508 INFO    ] ================================================
[2026-10-18 11:51:56,524.524 INFO    ] Launching Daemon at Sun Oct 18 11:51:56 IST 2026
[2026-10-18 11:51:56,535.535 INFO    ] ================================================
[2026-10-18 11:51:57,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:51:57
[2026-10-18 11:51:57,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:51:58,199.199 INFO    ] Initializing speech engine...
[2026-10-18 11:51:58,210.210 INFO    ] 2026-10-18 11:51:58
[2026-10-18 11:51:58,525.525 INFO    ] 2026-10-18 11:51:58
[2026-10-18 11:51:58,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:51:58,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:51:58,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:51:59,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:51:59,053.053 INFO    ] time= 18/10/2026 11:51:59
[2026-10-18 11:51:59,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:51:59,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:51:59,209.209 INFO    ] No existing commands found in stream
[2026-10-18 11:52:04,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:52:04,243.243 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-18 11:52:07,175.175 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:52:07,178.178 INFO    ] Checking for system updates...
[2026-10-18 11:52:07,214.214 INFO    ] 200
[2026-10-18 11:52:07,217.217 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:52:07,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:52:07,273.273 INFO    ] No update needed
[2026-10-18 11:52:07,275.275 INFO    ] Checking for camera pi updates...
[2026-10-18 11:52:07,311.311 INFO    ] 200
[2026-10-18 11:52:07,313.313 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:52:07,358.358 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:52:17,375.375 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:52:17,415.415 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:52:17,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:52:17,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:52:17,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:52:17,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:52:19,480.480 INFO    ] ================================================
[2026-10-18 11:52:19,496.496 INFO    ] Launching Daemon at Sun Oct 18 11:52:19 IST 2026
[2026-10-18 11:52:19,506.506 INFO    ] ================================================
[2026-10-18 11:52:20,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:52:20
[2026-10-18 11:52:20,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:52:21,109.109 INFO    ] Initializing speech engine...
[2026-10-18 11:52:21,119.119 INFO    ] 2026-10-18 11:52:21
[2026-10-18 11:52:21,398.398 INFO    ] 2026-10-18 11:52:21
[2026-10-18 11:52:21,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:52:21,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:52:21,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:52:21,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:52:21,896.896 INFO    ] time= 18/10/2026 11:52:21
[2026-10-18 11:52:21,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:52:21,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:52:22,130.130 INFO    ] No existing commands found in stream
[2026-10-18 11:52:27,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:52:27,164.164 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-18 11:52:28,667.667 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:52:28,670.670 INFO    ] Checking for system updates...
[2026-10-18 11:52:28,706.706 INFO    ] 200
[2026-10-18 11:52:28,709.709 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:52:28,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:52:28,771.771 INFO    ] No update needed
[2026-10-18 11:52:28,774.774 INFO    ] Checking for camera pi updates...
[2026-10-18 11:52:28,809.809 INFO    ] 200
[2026-10-18 11:52:28,812.812 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:52:28,853.853 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:52:38,869.869 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:52:38,916.916 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:52:38,928.928 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:52:38,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:52:38,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:52:38,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:52:40,986.986 INFO    ] ================================================
[2026-10-18 11:52:41,005.005 INFO    ] Launching Daemon at Sun Oct 18 11:52:40 IST 2026
[2026-10-18 11:52:41,017.017 INFO    ] ================================================
[2026-10-18 11:52:41,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:52:41
[2026-10-18 11:52:42,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:52:42,527.527 INFO    ] Initializing speech engine...
[2026-10-18 11:52:42,535.535 INFO    ] 2026-10-18 11:52:42
[2026-10-18 11:52:42,842.842 INFO    ] 2026-10-18 11:52:42
[2026-10-18 11:52:42,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:52:43,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:52:43,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:52:43,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:52:43,277.277 INFO    ] time= 18/10/2026 11:52:43
[2026-10-18 11:52:43,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:52:43,317.317 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:52:43,463.463 INFO    ] No existing commands found in stream
[2026-10-18 11:52:48,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:52:48,500.500 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-18 11:52:52,328.328 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 11:52:52,331.331 INFO    ] Checking for system updates...
[2026-10-18 11:52:52,369.369 INFO    ] 200
[2026-10-18 11:52:52,371.371 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:52:52,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:52:52,426.426 INFO    ] No update needed
[2026-10-18 11:52:52,428.428 INFO    ] Checking for camera pi updates...
[2026-10-18 11:52:52,462.462 INFO    ] 200
[2026-10-18 11:52:52,464.464 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:52:52,504.504 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:53:02,517.517 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:53:02,564.564 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:53:02,576.576 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:53:02,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:53:02,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:53:02,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:53:04,629.629 INFO    ] ================================================
[2026-10-18 11:53:04,644.644 INFO    ] Launching Daemon at Sun Oct 18 11:53:04 IST 2026
[2026-10-18 11:53:04,662.662 INFO    ] ================================================
[2026-10-18 11:53:05,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:53:05
[2026-10-18 11:53:05,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:53:06,083.083 INFO    ] Initializing speech engine...
[2026-10-18 11:53:06,092.092 INFO    ] 2026-10-18 11:53:06
[2026-10-18 11:53:06,343.343 INFO    ] 2026-10-18 11:53:06
[2026-10-18 11:53:06,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:53:06,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:53:06,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:53:06,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:53:06,829.829 INFO    ] time= 18/10/2026 11:53:06
[2026-10-18 11:53:06,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:53:06,918.918 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:53:07,068.068 INFO    ] No existing commands found in stream
[2026-10-18 11:53:12,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:53:12,084.084 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-18 11:53:14,478.478 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:53:14,481.481 INFO    ] Checking for system updates...
[2026-10-18 11:53:14,516.516 INFO    ] 200
[2026-10-18 11:53:14,519.519 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:53:14,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:53:14,574.574 INFO    ] No update needed
[2026-10-18 11:53:14,576.576 INFO    ] Checking for camera pi updates...
[2026-10-18 11:53:14,609.609 INFO    ] 200
[2026-10-18 11:53:14,611.611 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:53:14,651.651 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:53:24,667.667 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:53:24,701.701 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:53:24,711.711 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:53:24,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:53:24,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:53:24,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:53:26,763.763 INFO    ] ================================================
[2026-10-18 11:53:26,779.779 INFO    ] Launching Daemon at Sun Oct 18 11:53:26 IST 2026
[2026-10-18 11:53:26,789.789 INFO    ] ================================================
[2026-10-18 11:53:27,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:53:27
[2026-10-18 11:53:27,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:53:28,247.247 INFO    ] Initializing speech engine...
[2026-10-18 11:53:28,252.252 INFO    ] 2026-10-18 11:53:28
[2026-10-18 11:53:28,514.514 INFO    ] 2026-10-18 11:53:28
[2026-10-18 11:53:28,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:53:28,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:53:28,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:53:29,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:53:29,057.057 INFO    ] time= 18/10/2026 11:53:29
[2026-10-18 11:53:29,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:53:29,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:53:29,208.208 INFO    ] No existing commands found in stream
[2026-10-18 11:53:34,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:53:34,227.227 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-18 11:53:38,144.144 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:53:38,147.147 INFO    ] Checking for system updates...
[2026-10-18 11:53:38,184.184 INFO    ] 200
[2026-10-18 11:53:38,186.186 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:53:38,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:53:38,242.242 INFO    ] No update needed
[2026-10-18 11:53:38,244.244 INFO    ] Checking for camera pi updates...
[2026-10-18 11:53:38,278.278 INFO    ] 200
[2026-10-18 11:53:38,281.281 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:53:38,321.321 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:53:48,337.337 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:53:48,372.372 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:53:48,381.381 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:53:48,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:53:48,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:53:48,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:53:50,435.435 INFO    ] ================================================
[2026-10-18 11:53:50,451.451 INFO    ] Launching Daemon at Sun Oct 18 11:53:50 IST 2026
[2026-10-18 11:53:50,462.462 INFO    ] ================================================
[2026-10-18 11:53:51,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:53:51
[2026-10-18 11:53:51,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:53:51,875.875 INFO    ] Initializing speech engine...
[2026-10-18 11:53:51,886.886 INFO    ] 2026-10-18 11:53:51
[2026-10-18 11:53:52,134.134 INFO    ] 2026-10-18 11:53:52
[2026-10-18 11:53:52,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:53:52,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:53:52,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:53:52,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:53:52,614.614 INFO    ] time= 18/10/2026 11:53:52
[2026-10-18 11:53:52,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:53:52,694.694 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:53:52,842.842 INFO    ] No existing commands found in stream
[2026-10-18 11:53:57,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:53:57,858.858 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-18 11:54:01,207.207 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:54:01,210.210 INFO    ] Checking for system updates...
[2026-10-18 11:54:01,250.250 INFO    ] 200
[2026-10-18 11:54:01,253.253 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:54:01,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:54:01,312.312 INFO    ] No update needed
[2026-10-18 11:54:01,314.314 INFO    ] Checking for camera pi updates...
[2026-10-18 11:54:01,353.353 INFO    ] 200
[2026-10-18 11:54:01,355.355 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:54:01,401.401 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:54:11,416.416 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:54:11,456.456 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:54:11,467.467 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:54:11,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:54:11,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:54:11,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:54:13,522.522 INFO    ] ================================================
[2026-10-18 11:54:13,538.538 INFO    ] Launching Daemon at Sun Oct 18 11:54:13 IST 2026
[2026-10-18 11:54:13,549.549 INFO    ] ================================================
[2026-10-18 11:54:14,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:54:14
[2026-10-18 11:54:14,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:54:15,150.150 INFO    ] Initializing speech engine...
[2026-10-18 11:54:15,165.165 INFO    ] 2026-10-18 11:54:15
[2026-10-18 11:54:15,431.431 INFO    ] 2026-10-18 11:54:15
[2026-10-18 11:54:15,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:54:15,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:54:15,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:54:15,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:54:15,993.993 INFO    ] time= 18/10/2026 11:54:15
[2026-10-18 11:54:16,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:54:16,018.018 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:54:16,149.149 INFO    ] No existing commands found in stream
[2026-10-18 11:54:21,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:54:21,170.170 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-18 11:54:22,887.887 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:54:22,890.890 INFO    ] Checking for system updates...
[2026-10-18 11:54:22,927.927 INFO    ] 200
[2026-10-18 11:54:22,930.930 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:54:22,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:54:22,985.985 INFO    ] No update needed
[2026-10-18 11:54:22,988.988 INFO    ] Checking for camera pi updates...
[2026-10-18 11:54:23,021.021 INFO    ] 200
[2026-10-18 11:54:23,024.024 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:54:23,065.065 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:54:33,078.078 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:54:33,115.115 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:54:33,126.126 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:54:33,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:54:33,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:54:33,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:54:35,182.182 INFO    ] ================================================
[2026-10-18 11:54:35,197.197 INFO    ] Launching Daemon at Sun Oct 18 11:54:35 IST 2026
[2026-10-18 11:54:35,208.208 INFO    ] ================================================
[2026-10-18 11:54:35,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:54:35
[2026-10-18 11:54:36,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:54:36,729.729 INFO    ] Initializing speech engine...
[2026-10-18 11:54:36,742.742 INFO    ] 2026-10-18 11:54:36
[2026-10-18 11:54:37,007.007 INFO    ] 2026-10-18 11:54:36
[2026-10-18 11:54:37,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:54:37,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:54:37,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:54:37,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:54:37,576.576 INFO    ] time= 18/10/2026 11:54:37
[2026-10-18 11:54:37,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:54:37,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:54:37,735.735 INFO    ] No existing commands found in stream
[2026-10-18 11:54:42,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:54:42,758.758 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-18 11:54:45,751.751 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:54:45,754.754 INFO    ] Checking for system updates...
[2026-10-18 11:54:45,789.789 INFO    ] 200
[2026-10-18 11:54:45,792.792 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:54:45,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:54:45,846.846 INFO    ] No update needed
[2026-10-18 11:54:45,848.848 INFO    ] Checking for camera pi updates...
[2026-10-18 11:54:45,883.883 INFO    ] 200
[2026-10-18 11:54:45,887.887 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:54:45,935.935 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:54:55,950.950 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:54:55,985.985 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:54:55,994.994 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:54:55,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:54:56,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:54:56,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:54:58,048.048 INFO    ] ================================================
[2026-10-18 11:54:58,064.064 INFO    ] Launching Daemon at Sun Oct 18 11:54:58 IST 2026
[2026-10-18 11:54:58,076.076 INFO    ] ================================================
[2026-10-18 11:54:58,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:54:58
[2026-10-18 11:54:59,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:54:59,500.500 INFO    ] Initializing speech engine...
[2026-10-18 11:54:59,506.506 INFO    ] 2026-10-18 11:54:59
[2026-10-18 11:54:59,798.798 INFO    ] 2026-10-18 11:54:59
[2026-10-18 11:54:59,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:55:00,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:55:00,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:55:00,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:55:00,220.220 INFO    ] time= 18/10/2026 11:55:00
[2026-10-18 11:55:00,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:55:00,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:55:00,393.393 INFO    ] No existing commands found in stream
[2026-10-18 11:55:05,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:55:05,421.421 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-18 11:55:09,354.354 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 11:55:09,356.356 INFO    ] Checking for system updates...
[2026-10-18 11:55:09,392.392 INFO    ] 200
[2026-10-18 11:55:09,394.394 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:55:09,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:55:09,448.448 INFO    ] No update needed
[2026-10-18 11:55:09,450.450 INFO    ] Checking for camera pi updates...
[2026-10-18 11:55:09,484.484 INFO    ] 200
[2026-10-18 11:55:09,486.486 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:55:09,526.526 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:55:19,541.541 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:55:19,576.576 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:55:19,586.586 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:55:19,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:55:19,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:55:19,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:55:21,638.638 INFO    ] ================================================
[2026-10-18 11:55:21,655.655 INFO    ] Launching Daemon at Sun Oct 18 11:55:21 IST 2026
[2026-10-18 11:55:21,665.665 INFO    ] ================================================
[2026-10-18 11:55:22,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:55:22
[2026-10-18 11:55:22,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:55:23,092.092 INFO    ] Initializing speech engine...
[2026-10-18 11:55:23,101.101 INFO    ] 2026-10-18 11:55:23
[2026-10-18 11:55:23,346.346 INFO    ] 2026-10-18 11:55:23
[2026-10-18 11:55:23,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:55:23,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:55:23,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:55:23,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:55:23,900.900 INFO    ] time= 18/10/2026 11:55:23
[2026-10-18 11:55:23,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:55:23,929.929 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:55:24,090.090 INFO    ] No existing commands found in stream
[2026-10-18 11:55:29,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:55:29,129.129 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-18 11:55:32,532.532 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:55:32,539.539 INFO    ] Checking for system updates...
[2026-10-18 11:55:32,577.577 INFO    ] 200
[2026-10-18 11:55:32,580.580 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:55:32,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:55:32,641.641 INFO    ] No update needed
[2026-10-18 11:55:32,643.643 INFO    ] Checking for camera pi updates...
[2026-10-18 11:55:32,677.677 INFO    ] 200
[2026-10-18 11:55:32,680.680 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:55:32,721.721 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:55:42,737.737 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:55:42,772.772 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:55:42,782.782 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:55:42,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:55:42,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:55:42,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:55:44,836.836 INFO    ] ================================================
[2026-10-18 11:55:44,851.851 INFO    ] Launching Daemon at Sun Oct 18 11:55:44 IST 2026
[2026-10-18 11:55:44,862.862 INFO    ] ================================================
[2026-10-18 11:55:45,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:55:45
[2026-10-18 11:55:46,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:55:46,283.283 INFO    ] Initializing speech engine...
[2026-10-18 11:55:46,289.289 INFO    ] 2026-10-18 11:55:46
[2026-10-18 11:55:46,545.545 INFO    ] 2026-10-18 11:55:46
[2026-10-18 11:55:46,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:55:46,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:55:46,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:55:47,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:55:47,089.089 INFO    ] time= 18/10/2026 11:55:47
[2026-10-18 11:55:47,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:55:47,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:55:47,246.246 INFO    ] No existing commands found in stream
[2026-10-18 11:55:52,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:55:52,271.271 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-18 11:55:55,541.541 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:55:55,543.543 INFO    ] Checking for system updates...
[2026-10-18 11:55:55,580.580 INFO    ] 200
[2026-10-18 11:55:55,582.582 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:55:55,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:55:55,637.637 INFO    ] No update needed
[2026-10-18 11:55:55,639.639 INFO    ] Checking for camera pi updates...
[2026-10-18 11:55:55,672.672 INFO    ] 200
[2026-10-18 11:55:55,675.675 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:55:55,715.715 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:56:05,731.731 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:56:05,766.766 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:56:05,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:56:05,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:56:05,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:56:05,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:56:07,830.830 INFO    ] ================================================
[2026-10-18 11:56:07,845.845 INFO    ] Launching Daemon at Sun Oct 18 11:56:07 IST 2026
[2026-10-18 11:56:07,855.855 INFO    ] ================================================
[2026-10-18 11:56:08,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:56:08
[2026-10-18 11:56:09,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:56:09,282.282 INFO    ] Initializing speech engine...
[2026-10-18 11:56:09,307.307 INFO    ] 2026-10-18 11:56:09
[2026-10-18 11:56:09,571.571 INFO    ] 2026-10-18 11:56:09
[2026-10-18 11:56:09,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:56:09,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:56:09,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:56:10,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:56:10,130.130 INFO    ] time= 18/10/2026 11:56:10
[2026-10-18 11:56:10,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:56:10,152.152 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:56:10,281.281 INFO    ] No existing commands found in stream
[2026-10-18 11:56:15,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:56:15,299.299 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-18 11:56:16,397.397 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:56:16,399.399 INFO    ] Checking for system updates...
[2026-10-18 11:56:16,435.435 INFO    ] 200
[2026-10-18 11:56:16,437.437 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:56:16,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:56:16,492.492 INFO    ] No update needed
[2026-10-18 11:56:16,494.494 INFO    ] Checking for camera pi updates...
[2026-10-18 11:56:16,531.531 INFO    ] 200
[2026-10-18 11:56:16,534.534 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:56:16,573.573 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:56:26,588.588 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:56:26,623.623 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:56:26,632.632 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:56:26,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:56:26,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:56:26,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:56:28,685.685 INFO    ] ================================================
[2026-10-18 11:56:28,700.700 INFO    ] Launching Daemon at Sun Oct 18 11:56:28 IST 2026
[2026-10-18 11:56:28,711.711 INFO    ] ================================================
[2026-10-18 11:56:29,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:56:29
[2026-10-18 11:56:30,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:56:30,331.331 INFO    ] Initializing speech engine...
[2026-10-18 11:56:30,339.339 INFO    ] 2026-10-18 11:56:30
[2026-10-18 11:56:30,625.625 INFO    ] 2026-10-18 11:56:30
[2026-10-18 11:56:30,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:56:30,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:56:30,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:56:31,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:56:31,164.164 INFO    ] time= 18/10/2026 11:56:31
[2026-10-18 11:56:31,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:56:31,214.214 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:56:31,343.343 INFO    ] No existing commands found in stream
[2026-10-18 11:56:36,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:56:36,378.378 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-18 11:56:38,152.152 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 11:56:38,155.155 INFO    ] Checking for system updates...
[2026-10-18 11:56:38,192.192 INFO    ] 200
[2026-10-18 11:56:38,195.195 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:56:38,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:56:38,252.252 INFO    ] No update needed
[2026-10-18 11:56:38,255.255 INFO    ] Checking for camera pi updates...
[2026-10-18 11:56:38,290.290 INFO    ] 200
[2026-10-18 11:56:38,293.293 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:56:38,338.338 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:56:48,354.354 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:56:48,394.394 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:56:48,406.406 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:56:48,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:56:48,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:56:48,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:56:50,462.462 INFO    ] ================================================
[2026-10-18 11:56:50,477.477 INFO    ] Launching Daemon at Sun Oct 18 11:56:50 IST 2026
[2026-10-18 11:56:50,488.488 INFO    ] ================================================
[2026-10-18 11:56:51,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:56:51
[2026-10-18 11:56:51,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:56:51,896.896 INFO    ] Initializing speech engine...
[2026-10-18 11:56:51,911.911 INFO    ] 2026-10-18 11:56:51
[2026-10-18 11:56:52,179.179 INFO    ] 2026-10-18 11:56:52
[2026-10-18 11:56:52,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:56:52,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:56:52,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:56:52,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:56:52,675.675 INFO    ] time= 18/10/2026 11:56:52
[2026-10-18 11:56:52,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:56:52,755.755 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:56:52,909.909 INFO    ] No existing commands found in stream
[2026-10-18 11:56:57,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:56:57,930.930 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-18 11:57:01,456.456 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 11:57:01,465.465 INFO    ] Checking for system updates...
[2026-10-18 11:57:01,533.533 INFO    ] 200
[2026-10-18 11:57:01,544.544 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:57:01,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:57:01,669.669 INFO    ] No update needed
[2026-10-18 11:57:01,673.673 INFO    ] Checking for camera pi updates...
[2026-10-18 11:57:01,719.719 INFO    ] 200
[2026-10-18 11:57:01,723.723 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:57:01,829.829 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:57:11,845.845 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:57:11,880.880 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:57:11,890.890 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:57:11,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:57:11,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:57:11,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:57:13,942.942 INFO    ] ================================================
[2026-10-18 11:57:13,957.957 INFO    ] Launching Daemon at Sun Oct 18 11:57:13 IST 2026
[2026-10-18 11:57:13,968.968 INFO    ] ================================================
[2026-10-18 11:57:14,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:57:14
[2026-10-18 11:57:15,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:57:15,383.383 INFO    ] Initializing speech engine...
[2026-10-18 11:57:15,391.391 INFO    ] 2026-10-18 11:57:15
[2026-10-18 11:57:15,681.681 INFO    ] 2026-10-18 11:57:15
[2026-10-18 11:57:15,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:57:15,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:57:16,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:57:16,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:57:16,208.208 INFO    ] time= 18/10/2026 11:57:16
[2026-10-18 11:57:16,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:57:16,307.307 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:57:16,453.453 INFO    ] No existing commands found in stream
[2026-10-18 11:57:21,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:57:21,479.479 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-18 11:57:24,019.019 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:57:24,021.021 INFO    ] Checking for system updates...
[2026-10-18 11:57:24,060.060 INFO    ] 200
[2026-10-18 11:57:24,062.062 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:57:24,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:57:24,116.116 INFO    ] No update needed
[2026-10-18 11:57:24,119.119 INFO    ] Checking for camera pi updates...
[2026-10-18 11:57:24,152.152 INFO    ] 200
[2026-10-18 11:57:24,154.154 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:57:24,194.194 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:57:34,207.207 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:57:34,241.241 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:57:34,251.251 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:57:34,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:57:34,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:57:34,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:57:36,303.303 INFO    ] ================================================
[2026-10-18 11:57:36,318.318 INFO    ] Launching Daemon at Sun Oct 18 11:57:36 IST 2026
[2026-10-18 11:57:36,329.329 INFO    ] ================================================
[2026-10-18 11:57:36,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:57:36
[2026-10-18 11:57:37,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:57:37,779.779 INFO    ] Initializing speech engine...
[2026-10-18 11:57:37,796.796 INFO    ] 2026-10-18 11:57:37
[2026-10-18 11:57:38,084.084 INFO    ] 2026-10-18 11:57:38
[2026-10-18 11:57:38,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:57:38,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:57:38,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:57:38,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:57:38,569.569 INFO    ] time= 18/10/2026 11:57:38
[2026-10-18 11:57:38,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:57:38,612.612 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:57:38,731.731 INFO    ] No existing commands found in stream
[2026-10-18 11:57:43,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:57:43,744.744 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-18 11:57:46,284.284 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:57:46,287.287 INFO    ] Checking for system updates...
[2026-10-18 11:57:46,327.327 INFO    ] 200
[2026-10-18 11:57:46,330.330 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:57:46,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:57:46,393.393 INFO    ] No update needed
[2026-10-18 11:57:46,396.396 INFO    ] Checking for camera pi updates...
[2026-10-18 11:57:46,431.431 INFO    ] 200
[2026-10-18 11:57:46,433.433 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:57:46,476.476 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:57:56,492.492 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:57:56,532.532 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:57:56,543.543 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:57:56,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:57:56,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:57:56,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:57:58,600.600 INFO    ] ================================================
[2026-10-18 11:57:58,615.615 INFO    ] Launching Daemon at Sun Oct 18 11:57:58 IST 2026
[2026-10-18 11:57:58,625.625 INFO    ] ================================================
[2026-10-18 11:57:59,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:57:59
[2026-10-18 11:57:59,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:58:00,032.032 INFO    ] Initializing speech engine...
[2026-10-18 11:58:00,056.056 INFO    ] 2026-10-18 11:58:00
[2026-10-18 11:58:00,309.309 INFO    ] 2026-10-18 11:58:00
[2026-10-18 11:58:00,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:58:00,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:58:00,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:58:00,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:58:00,872.872 INFO    ] time= 18/10/2026 11:58:00
[2026-10-18 11:58:00,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:58:00,902.902 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:58:01,050.050 INFO    ] No existing commands found in stream
[2026-10-18 11:58:06,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:58:06,084.084 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-18 11:58:09,061.061 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:58:09,063.063 INFO    ] Checking for system updates...
[2026-10-18 11:58:09,100.100 INFO    ] 200
[2026-10-18 11:58:09,103.103 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:58:09,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:58:09,165.165 INFO    ] No update needed
[2026-10-18 11:58:09,167.167 INFO    ] Checking for camera pi updates...
[2026-10-18 11:58:09,201.201 INFO    ] 200
[2026-10-18 11:58:09,203.203 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:58:09,243.243 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:58:19,258.258 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:58:19,294.294 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:58:19,304.304 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:58:19,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:58:19,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:58:19,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:58:21,358.358 INFO    ] ================================================
[2026-10-18 11:58:21,373.373 INFO    ] Launching Daemon at Sun Oct 18 11:58:21 IST 2026
[2026-10-18 11:58:21,384.384 INFO    ] ================================================
[2026-10-18 11:58:22,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:58:22
[2026-10-18 11:58:22,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:58:22,892.892 INFO    ] Initializing speech engine...
[2026-10-18 11:58:22,910.910 INFO    ] 2026-10-18 11:58:22
[2026-10-18 11:58:23,161.161 INFO    ] 2026-10-18 11:58:23
[2026-10-18 11:58:23,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:58:23,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:58:23,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:58:23,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:58:23,716.716 INFO    ] time= 18/10/2026 11:58:23
[2026-10-18 11:58:23,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:58:23,741.741 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:58:23,874.874 INFO    ] No existing commands found in stream
[2026-10-18 11:58:28,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:58:28,904.904 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-18 11:58:31,961.961 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 11:58:31,964.964 INFO    ] Checking for system updates...
[2026-10-18 11:58:32,002.002 INFO    ] 200
[2026-10-18 11:58:32,005.005 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:58:32,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:58:32,063.063 INFO    ] No update needed
[2026-10-18 11:58:32,066.066 INFO    ] Checking for camera pi updates...
[2026-10-18 11:58:32,107.107 INFO    ] 200
[2026-10-18 11:58:32,109.109 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:58:32,155.155 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:58:42,170.170 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:58:42,206.206 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:58:42,216.216 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:58:42,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:58:42,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:58:42,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:58:44,268.268 INFO    ] ================================================
[2026-10-18 11:58:44,284.284 INFO    ] Launching Daemon at Sun Oct 18 11:58:44 IST 2026
[2026-10-18 11:58:44,296.296 INFO    ] ================================================
[2026-10-18 11:58:44,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:58:44
[2026-10-18 11:58:45,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:58:45,954.954 INFO    ] Initializing speech engine...
[2026-10-18 11:58:45,963.963 INFO    ] 2026-10-18 11:58:45
[2026-10-18 11:58:46,284.284 INFO    ] 2026-10-18 11:58:46
[2026-10-18 11:58:46,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:58:46,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:58:46,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:58:46,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:58:46,819.819 INFO    ] time= 18/10/2026 11:58:46
[2026-10-18 11:58:46,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:58:46,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:58:46,984.984 INFO    ] No existing commands found in stream
[2026-10-18 11:58:52,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:58:52,017.017 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-18 11:58:54,042.042 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 11:58:54,045.045 INFO    ] Checking for system updates...
[2026-10-18 11:58:54,081.081 INFO    ] 200
[2026-10-18 11:58:54,084.084 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:58:54,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:58:54,148.148 INFO    ] No update needed
[2026-10-18 11:58:54,152.152 INFO    ] Checking for camera pi updates...
[2026-10-18 11:58:54,191.191 INFO    ] 200
[2026-10-18 11:58:54,194.194 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:58:54,235.235 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:59:04,250.250 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:59:04,285.285 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:59:04,294.294 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:59:04,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:59:04,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:59:04,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:59:06,346.346 INFO    ] ================================================
[2026-10-18 11:59:06,362.362 INFO    ] Launching Daemon at Sun Oct 18 11:59:06 IST 2026
[2026-10-18 11:59:06,373.373 INFO    ] ================================================
[2026-10-18 11:59:06,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:59:06
[2026-10-18 11:59:07,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:59:07,811.811 INFO    ] Initializing speech engine...
[2026-10-18 11:59:07,824.824 INFO    ] 2026-10-18 11:59:07
[2026-10-18 11:59:08,075.075 INFO    ] 2026-10-18 11:59:08
[2026-10-18 11:59:08,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:59:08,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:59:08,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:59:08,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:59:08,637.637 INFO    ] time= 18/10/2026 11:59:08
[2026-10-18 11:59:08,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:59:08,654.654 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:59:08,827.827 INFO    ] No existing commands found in stream
[2026-10-18 11:59:13,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:59:13,855.855 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-18 11:59:16,815.815 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 11:59:16,818.818 INFO    ] Checking for system updates...
[2026-10-18 11:59:16,855.855 INFO    ] 200
[2026-10-18 11:59:16,857.857 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:59:16,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 11:59:16,913.913 INFO    ] No update needed
[2026-10-18 11:59:16,915.915 INFO    ] Checking for camera pi updates...
[2026-10-18 11:59:16,948.948 INFO    ] 200
[2026-10-18 11:59:16,951.951 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:59:16,997.997 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:59:27,013.013 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:59:27,047.047 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:59:27,057.057 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:59:27,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:59:27,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:59:27,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:59:29,109.109 INFO    ] ================================================
[2026-10-18 11:59:29,125.125 INFO    ] Launching Daemon at Sun Oct 18 11:59:29 IST 2026
[2026-10-18 11:59:29,136.136 INFO    ] ================================================
[2026-10-18 11:59:29,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:59:29
[2026-10-18 11:59:30,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:59:30,601.601 INFO    ] Initializing speech engine...
[2026-10-18 11:59:30,615.615 INFO    ] 2026-10-18 11:59:30
[2026-10-18 11:59:30,883.883 INFO    ] 2026-10-18 11:59:30
[2026-10-18 11:59:30,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:59:31,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:59:31,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:59:31,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:59:31,368.368 INFO    ] time= 18/10/2026 11:59:31
[2026-10-18 11:59:31,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:59:31,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:59:31,605.605 INFO    ] No existing commands found in stream
[2026-10-18 11:59:36,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 11:59:36,623.623 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-18 11:59:40,849.849 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 11:59:40,851.851 INFO    ] Checking for system updates...
[2026-10-18 11:59:40,887.887 INFO    ] 200
[2026-10-18 11:59:40,889.889 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:59:40,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 11:59:40,943.943 INFO    ] No update needed
[2026-10-18 11:59:40,946.946 INFO    ] Checking for camera pi updates...
[2026-10-18 11:59:40,979.979 INFO    ] 200
[2026-10-18 11:59:40,981.981 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 11:59:41,022.022 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 11:59:51,037.037 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 11:59:51,072.072 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 11:59:51,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-18 11:59:51,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 11:59:51,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 11:59:51,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 11:59:53,133.133 INFO    ] ================================================
[2026-10-18 11:59:53,149.149 INFO    ] Launching Daemon at Sun Oct 18 11:59:53 IST 2026
[2026-10-18 11:59:53,160.160 INFO    ] ================================================
[2026-10-18 11:59:53,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 11:59:53
[2026-10-18 11:59:54,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 11:59:54,824.824 INFO    ] Initializing speech engine...
[2026-10-18 11:59:54,833.833 INFO    ] 2026-10-18 11:59:54
[2026-10-18 11:59:55,129.129 INFO    ] 2026-10-18 11:59:55
[2026-10-18 11:59:55,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 11:59:55,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 11:59:55,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 11:59:55,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 11:59:55,864.864 INFO    ] time= 18/10/2026 11:59:55
[2026-10-18 11:59:55,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 11:59:55,938.938 INFO    ] Checking for existing commands in stream...
[2026-10-18 11:59:56,074.074 INFO    ] No existing commands found in stream
[2026-10-18 12:00:01,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:00:01,087.087 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-18 12:00:09,073.073 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:00:09,076.076 INFO    ] Checking for system updates...
[2026-10-18 12:00:09,112.112 INFO    ] 200
[2026-10-18 12:00:09,114.114 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:00:09,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:00:09,169.169 INFO    ] No update needed
[2026-10-18 12:00:09,171.171 INFO    ] Checking for camera pi updates...
[2026-10-18 12:00:09,206.206 INFO    ] 200
[2026-10-18 12:00:09,209.209 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:00:09,250.250 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:00:19,265.265 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:00:19,301.301 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:00:19,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:00:19,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:00:19,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:00:19,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:00:21,366.366 INFO    ] ================================================
[2026-10-18 12:00:21,382.382 INFO    ] Launching Daemon at Sun Oct 18 12:00:21 IST 2026
[2026-10-18 12:00:21,394.394 INFO    ] ================================================
[2026-10-18 12:00:21,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:00:21
[2026-10-18 12:00:22,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:00:22,820.820 INFO    ] Initializing speech engine...
[2026-10-18 12:00:22,829.829 INFO    ] 2026-10-18 12:00:22
[2026-10-18 12:00:23,080.080 INFO    ] 2026-10-18 12:00:23
[2026-10-18 12:00:23,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:00:23,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:00:23,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:00:23,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:00:23,606.606 INFO    ] time= 18/10/2026 12:00:23
[2026-10-18 12:00:23,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:00:23,657.657 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:00:23,807.807 INFO    ] No existing commands found in stream
[2026-10-18 12:00:28,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:00:28,822.822 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-18 12:00:32,669.669 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:00:32,671.671 INFO    ] Checking for system updates...
[2026-10-18 12:00:32,710.710 INFO    ] 200
[2026-10-18 12:00:32,713.713 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:00:32,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:00:32,773.773 INFO    ] No update needed
[2026-10-18 12:00:32,776.776 INFO    ] Checking for camera pi updates...
[2026-10-18 12:00:32,812.812 INFO    ] 200
[2026-10-18 12:00:32,814.814 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:00:32,865.865 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:00:42,880.880 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:00:42,915.915 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:00:42,924.924 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:00:42,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:00:42,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:00:42,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:00:44,976.976 INFO    ] ================================================
[2026-10-18 12:00:44,992.992 INFO    ] Launching Daemon at Sun Oct 18 12:00:44 IST 2026
[2026-10-18 12:00:45,002.002 INFO    ] ================================================
[2026-10-18 12:00:45,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:00:45
[2026-10-18 12:00:46,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:00:46,423.423 INFO    ] Initializing speech engine...
[2026-10-18 12:00:46,432.432 INFO    ] 2026-10-18 12:00:46
[2026-10-18 12:00:46,693.693 INFO    ] 2026-10-18 12:00:46
[2026-10-18 12:00:46,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:00:46,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:00:46,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:00:47,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:00:47,232.232 INFO    ] time= 18/10/2026 12:00:47
[2026-10-18 12:00:47,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:00:47,260.260 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:00:47,392.392 INFO    ] No existing commands found in stream
[2026-10-18 12:00:52,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:00:52,418.418 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-18 12:00:56,946.946 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:00:56,949.949 INFO    ] Checking for system updates...
[2026-10-18 12:00:56,986.986 INFO    ] 200
[2026-10-18 12:00:56,989.989 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:00:57,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:00:57,045.045 INFO    ] No update needed
[2026-10-18 12:00:57,048.048 INFO    ] Checking for camera pi updates...
[2026-10-18 12:00:57,087.087 INFO    ] 200
[2026-10-18 12:00:57,090.090 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:00:57,142.142 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:01:07,159.159 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:01:07,200.200 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:01:07,212.212 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:01:07,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:01:07,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:01:07,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:01:09,277.277 INFO    ] ================================================
[2026-10-18 12:01:09,292.292 INFO    ] Launching Daemon at Sun Oct 18 12:01:09 IST 2026
[2026-10-18 12:01:09,303.303 INFO    ] ================================================
[2026-10-18 12:01:09,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:01:09
[2026-10-18 12:01:10,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:01:10,706.706 INFO    ] Initializing speech engine...
[2026-10-18 12:01:10,718.718 INFO    ] 2026-10-18 12:01:10
[2026-10-18 12:01:10,992.992 INFO    ] 2026-10-18 12:01:10
[2026-10-18 12:01:11,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:01:11,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:01:11,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:01:11,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:01:11,547.547 INFO    ] time= 18/10/2026 12:01:11
[2026-10-18 12:01:11,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:01:11,577.577 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:01:11,732.732 INFO    ] No existing commands found in stream
[2026-10-18 12:01:16,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:01:16,766.766 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-18 12:01:20,041.041 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:01:20,044.044 INFO    ] Checking for system updates...
[2026-10-18 12:01:20,085.085 INFO    ] 200
[2026-10-18 12:01:20,088.088 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:01:20,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:01:20,162.162 INFO    ] No update needed
[2026-10-18 12:01:20,164.164 INFO    ] Checking for camera pi updates...
[2026-10-18 12:01:20,200.200 INFO    ] 200
[2026-10-18 12:01:20,203.203 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:01:20,244.244 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:01:30,259.259 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:01:30,294.294 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:01:30,305.305 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:01:30,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:01:30,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:01:30,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:01:32,360.360 INFO    ] ================================================
[2026-10-18 12:01:32,377.377 INFO    ] Launching Daemon at Sun Oct 18 12:01:32 IST 2026
[2026-10-18 12:01:32,389.389 INFO    ] ================================================
[2026-10-18 12:01:32,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:01:32
[2026-10-18 12:01:33,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:01:33,867.867 INFO    ] Initializing speech engine...
[2026-10-18 12:01:33,876.876 INFO    ] 2026-10-18 12:01:33
[2026-10-18 12:01:34,124.124 INFO    ] 2026-10-18 12:01:34
[2026-10-18 12:01:34,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:01:34,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:01:34,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:01:34,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:01:34,613.613 INFO    ] time= 18/10/2026 12:01:34
[2026-10-18 12:01:34,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:01:34,684.684 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:01:34,830.830 INFO    ] No existing commands found in stream
[2026-10-18 12:01:39,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:01:39,848.848 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-18 12:01:40,883.883 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:01:40,886.886 INFO    ] Checking for system updates...
[2026-10-18 12:01:40,924.924 INFO    ] 200
[2026-10-18 12:01:40,927.927 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:01:40,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:01:40,988.988 INFO    ] No update needed
[2026-10-18 12:01:40,990.990 INFO    ] Checking for camera pi updates...
[2026-10-18 12:01:41,028.028 INFO    ] 200
[2026-10-18 12:01:41,030.030 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:01:41,071.071 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:01:51,085.085 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:01:51,120.120 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:01:51,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:01:51,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:01:51,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:01:51,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:01:53,182.182 INFO    ] ================================================
[2026-10-18 12:01:53,198.198 INFO    ] Launching Daemon at Sun Oct 18 12:01:53 IST 2026
[2026-10-18 12:01:53,209.209 INFO    ] ================================================
[2026-10-18 12:01:53,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:01:53
[2026-10-18 12:01:54,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:01:54,687.687 INFO    ] Initializing speech engine...
[2026-10-18 12:01:54,694.694 INFO    ] 2026-10-18 12:01:54
[2026-10-18 12:01:54,956.956 INFO    ] 2026-10-18 12:01:54
[2026-10-18 12:01:54,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:01:55,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:01:55,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:01:55,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:01:55,439.439 INFO    ] time= 18/10/2026 12:01:55
[2026-10-18 12:01:55,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:01:55,507.507 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:01:55,642.642 INFO    ] No existing commands found in stream
[2026-10-18 12:02:00,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:02:00,666.666 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-18 12:02:02,870.870 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:02:02,873.873 INFO    ] Checking for system updates...
[2026-10-18 12:02:02,913.913 INFO    ] 200
[2026-10-18 12:02:02,916.916 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:02:02,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:02:02,988.988 INFO    ] No update needed
[2026-10-18 12:02:02,993.993 INFO    ] Checking for camera pi updates...
[2026-10-18 12:02:03,058.058 INFO    ] 200
[2026-10-18 12:02:03,062.062 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:02:03,136.136 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:02:13,153.153 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:02:13,189.189 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:02:13,199.199 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:02:13,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:02:13,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:02:13,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:02:15,254.254 INFO    ] ================================================
[2026-10-18 12:02:15,270.270 INFO    ] Launching Daemon at Sun Oct 18 12:02:15 IST 2026
[2026-10-18 12:02:15,281.281 INFO    ] ================================================
[2026-10-18 12:02:15,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:02:15
[2026-10-18 12:02:16,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:02:16,744.744 INFO    ] Initializing speech engine...
[2026-10-18 12:02:16,750.750 INFO    ] 2026-10-18 12:02:16
[2026-10-18 12:02:17,050.050 INFO    ] 2026-10-18 12:02:17
[2026-10-18 12:02:17,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:02:17,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:02:17,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:02:17,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:02:17,449.449 INFO    ] time= 18/10/2026 12:02:17
[2026-10-18 12:02:17,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:02:17,480.480 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:02:17,621.621 INFO    ] No existing commands found in stream
[2026-10-18 12:02:22,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:02:22,654.654 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-18 12:02:23,297.297 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:02:23,300.300 INFO    ] Checking for system updates...
[2026-10-18 12:02:23,336.336 INFO    ] 200
[2026-10-18 12:02:23,338.338 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:02:23,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:02:23,400.400 INFO    ] No update needed
[2026-10-18 12:02:23,402.402 INFO    ] Checking for camera pi updates...
[2026-10-18 12:02:23,436.436 INFO    ] 200
[2026-10-18 12:02:23,438.438 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:02:23,484.484 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:02:33,497.497 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:02:33,532.532 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:02:33,541.541 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:02:33,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:02:33,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:02:33,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:02:35,594.594 INFO    ] ================================================
[2026-10-18 12:02:35,610.610 INFO    ] Launching Daemon at Sun Oct 18 12:02:35 IST 2026
[2026-10-18 12:02:35,622.622 INFO    ] ================================================
[2026-10-18 12:02:36,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:02:36
[2026-10-18 12:02:36,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:02:37,038.038 INFO    ] Initializing speech engine...
[2026-10-18 12:02:37,043.043 INFO    ] 2026-10-18 12:02:37
[2026-10-18 12:02:37,350.350 INFO    ] 2026-10-18 12:02:37
[2026-10-18 12:02:37,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:02:37,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:02:37,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:02:37,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:02:37,859.859 INFO    ] time= 18/10/2026 12:02:37
[2026-10-18 12:02:37,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:02:37,948.948 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:02:38,064.064 INFO    ] No existing commands found in stream
[2026-10-18 12:02:43,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:02:43,092.092 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-18 12:02:43,700.700 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:02:43,703.703 INFO    ] Checking for system updates...
[2026-10-18 12:02:43,742.742 INFO    ] 200
[2026-10-18 12:02:43,744.744 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:02:43,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:02:43,800.800 INFO    ] No update needed
[2026-10-18 12:02:43,802.802 INFO    ] Checking for camera pi updates...
[2026-10-18 12:02:43,839.839 INFO    ] 200
[2026-10-18 12:02:43,842.842 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:02:43,882.882 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:02:53,897.897 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:02:53,932.932 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:02:53,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:02:53,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:02:53,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:02:53,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:02:55,994.994 INFO    ] ================================================
[2026-10-18 12:02:56,009.009 INFO    ] Launching Daemon at Sun Oct 18 12:02:56 IST 2026
[2026-10-18 12:02:56,019.019 INFO    ] ================================================
[2026-10-18 12:02:56,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:02:56
[2026-10-18 12:02:57,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:02:57,453.453 INFO    ] Initializing speech engine...
[2026-10-18 12:02:57,467.467 INFO    ] 2026-10-18 12:02:57
[2026-10-18 12:02:57,773.773 INFO    ] 2026-10-18 12:02:57
[2026-10-18 12:02:57,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:02:58,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:02:58,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:02:58,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:02:58,234.234 INFO    ] time= 18/10/2026 12:02:58
[2026-10-18 12:02:58,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:02:58,252.252 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:02:58,333.333 INFO    ] No existing commands found in stream
[2026-10-18 12:03:03,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:03:03,361.361 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-18 12:03:07,816.816 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:03:07,818.818 INFO    ] Checking for system updates...
[2026-10-18 12:03:07,854.854 INFO    ] 200
[2026-10-18 12:03:07,856.856 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:03:07,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:03:07,911.911 INFO    ] No update needed
[2026-10-18 12:03:07,913.913 INFO    ] Checking for camera pi updates...
[2026-10-18 12:03:07,947.947 INFO    ] 200
[2026-10-18 12:03:07,950.950 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:03:07,995.995 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:03:18,010.010 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:03:18,045.045 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:03:18,054.054 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:03:18,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:03:18,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:03:18,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:03:20,108.108 INFO    ] ================================================
[2026-10-18 12:03:20,124.124 INFO    ] Launching Daemon at Sun Oct 18 12:03:20 IST 2026
[2026-10-18 12:03:20,134.134 INFO    ] ================================================
[2026-10-18 12:03:20,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:03:20
[2026-10-18 12:03:21,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:03:21,575.575 INFO    ] Initializing speech engine...
[2026-10-18 12:03:21,584.584 INFO    ] 2026-10-18 12:03:21
[2026-10-18 12:03:21,846.846 INFO    ] 2026-10-18 12:03:21
[2026-10-18 12:03:21,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:03:22,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:03:22,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:03:22,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:03:22,393.393 INFO    ] time= 18/10/2026 12:03:22
[2026-10-18 12:03:22,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:03:22,417.417 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:03:22,549.549 INFO    ] No existing commands found in stream
[2026-10-18 12:03:27,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:03:27,574.574 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-18 12:03:31,772.772 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:03:31,775.775 INFO    ] Checking for system updates...
[2026-10-18 12:03:31,827.827 INFO    ] 200
[2026-10-18 12:03:31,831.831 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:03:31,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:03:31,903.903 INFO    ] No update needed
[2026-10-18 12:03:31,908.908 INFO    ] Checking for camera pi updates...
[2026-10-18 12:03:31,950.950 INFO    ] 200
[2026-10-18 12:03:31,953.953 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:03:32,007.007 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:03:42,023.023 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:03:42,058.058 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:03:42,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:03:42,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:03:42,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:03:42,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:03:44,121.121 INFO    ] ================================================
[2026-10-18 12:03:44,138.138 INFO    ] Launching Daemon at Sun Oct 18 12:03:44 IST 2026
[2026-10-18 12:03:44,150.150 INFO    ] ================================================
[2026-10-18 12:03:44,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:03:44
[2026-10-18 12:03:45,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:03:45,575.575 INFO    ] Initializing speech engine...
[2026-10-18 12:03:45,582.582 INFO    ] 2026-10-18 12:03:45
[2026-10-18 12:03:45,825.825 INFO    ] 2026-10-18 12:03:45
[2026-10-18 12:03:45,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:03:46,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:03:46,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:03:46,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:03:46,310.310 INFO    ] time= 18/10/2026 12:03:46
[2026-10-18 12:03:46,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:03:46,385.385 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:03:46,528.528 INFO    ] No existing commands found in stream
[2026-10-18 12:03:51,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:03:51,547.547 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-18 12:03:53,598.598 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:03:53,600.600 INFO    ] Checking for system updates...
[2026-10-18 12:03:53,637.637 INFO    ] 200
[2026-10-18 12:03:53,640.640 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:03:53,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:03:53,696.696 INFO    ] No update needed
[2026-10-18 12:03:53,699.699 INFO    ] Checking for camera pi updates...
[2026-10-18 12:03:53,738.738 INFO    ] 200
[2026-10-18 12:03:53,741.741 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:03:53,786.786 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:04:03,800.800 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:04:03,841.841 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:04:03,852.852 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:04:03,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:04:03,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:04:03,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:04:05,908.908 INFO    ] ================================================
[2026-10-18 12:04:05,924.924 INFO    ] Launching Daemon at Sun Oct 18 12:04:05 IST 2026
[2026-10-18 12:04:05,936.936 INFO    ] ================================================
[2026-10-18 12:04:06,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:04:06
[2026-10-18 12:04:07,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:04:07,502.502 INFO    ] Initializing speech engine...
[2026-10-18 12:04:07,509.509 INFO    ] 2026-10-18 12:04:07
[2026-10-18 12:04:07,770.770 INFO    ] 2026-10-18 12:04:07
[2026-10-18 12:04:07,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:04:08,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:04:08,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:04:08,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:04:08,272.272 INFO    ] time= 18/10/2026 12:04:08
[2026-10-18 12:04:08,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:04:08,326.326 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:04:08,466.466 INFO    ] No existing commands found in stream
[2026-10-18 12:04:13,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:04:13,486.486 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-18 12:04:17,496.496 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:04:17,499.499 INFO    ] Checking for system updates...
[2026-10-18 12:04:17,539.539 INFO    ] 200
[2026-10-18 12:04:17,542.542 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:04:17,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:04:17,596.596 INFO    ] No update needed
[2026-10-18 12:04:17,599.599 INFO    ] Checking for camera pi updates...
[2026-10-18 12:04:17,632.632 INFO    ] 200
[2026-10-18 12:04:17,635.635 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:04:17,681.681 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:04:27,694.694 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:04:27,729.729 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:04:27,739.739 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:04:27,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:04:27,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:04:27,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:04:29,791.791 INFO    ] ================================================
[2026-10-18 12:04:29,807.807 INFO    ] Launching Daemon at Sun Oct 18 12:04:29 IST 2026
[2026-10-18 12:04:29,818.818 INFO    ] ================================================
[2026-10-18 12:04:30,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:04:30
[2026-10-18 12:04:31,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:04:31,316.316 INFO    ] Initializing speech engine...
[2026-10-18 12:04:31,326.326 INFO    ] 2026-10-18 12:04:31
[2026-10-18 12:04:31,572.572 INFO    ] 2026-10-18 12:04:31
[2026-10-18 12:04:31,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:04:31,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:04:31,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:04:32,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:04:32,118.118 INFO    ] time= 18/10/2026 12:04:32
[2026-10-18 12:04:32,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:04:32,181.181 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:04:32,374.374 INFO    ] No existing commands found in stream
[2026-10-18 12:04:37,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:04:37,415.415 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-18 12:04:40,477.477 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:04:40,480.480 INFO    ] Checking for system updates...
[2026-10-18 12:04:40,518.518 INFO    ] 200
[2026-10-18 12:04:40,520.520 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:04:40,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:04:40,575.575 INFO    ] No update needed
[2026-10-18 12:04:40,578.578 INFO    ] Checking for camera pi updates...
[2026-10-18 12:04:40,612.612 INFO    ] 200
[2026-10-18 12:04:40,614.614 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:04:40,660.660 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:04:50,674.674 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:04:50,709.709 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:04:50,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:04:50,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:04:50,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:04:50,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:04:52,772.772 INFO    ] ================================================
[2026-10-18 12:04:52,788.788 INFO    ] Launching Daemon at Sun Oct 18 12:04:52 IST 2026
[2026-10-18 12:04:52,800.800 INFO    ] ================================================
[2026-10-18 12:04:53,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:04:53
[2026-10-18 12:04:54,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:04:54,308.308 INFO    ] Initializing speech engine...
[2026-10-18 12:04:54,326.326 INFO    ] 2026-10-18 12:04:54
[2026-10-18 12:04:54,605.605 INFO    ] 2026-10-18 12:04:54
[2026-10-18 12:04:54,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:04:54,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:04:54,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:04:55,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:04:55,124.124 INFO    ] time= 18/10/2026 12:04:55
[2026-10-18 12:04:55,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:04:55,196.196 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:04:55,328.328 INFO    ] No existing commands found in stream
[2026-10-18 12:05:00,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:05:00,351.351 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-18 12:05:00,986.986 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:05:00,988.988 INFO    ] Checking for system updates...
[2026-10-18 12:05:01,024.024 INFO    ] 200
[2026-10-18 12:05:01,027.027 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:05:01,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:05:01,083.083 INFO    ] No update needed
[2026-10-18 12:05:01,086.086 INFO    ] Checking for camera pi updates...
[2026-10-18 12:05:01,121.121 INFO    ] 200
[2026-10-18 12:05:01,124.124 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:05:01,166.166 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:05:11,181.181 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:05:11,216.216 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:05:11,226.226 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:05:11,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:05:11,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:05:11,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:05:13,279.279 INFO    ] ================================================
[2026-10-18 12:05:13,294.294 INFO    ] Launching Daemon at Sun Oct 18 12:05:13 IST 2026
[2026-10-18 12:05:13,305.305 INFO    ] ================================================
[2026-10-18 12:05:13,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:05:13
[2026-10-18 12:05:14,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:05:14,760.760 INFO    ] Initializing speech engine...
[2026-10-18 12:05:14,771.771 INFO    ] 2026-10-18 12:05:14
[2026-10-18 12:05:15,031.031 INFO    ] 2026-10-18 12:05:15
[2026-10-18 12:05:15,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:05:15,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:05:15,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:05:15,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:05:15,520.520 INFO    ] time= 18/10/2026 12:05:15
[2026-10-18 12:05:15,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:05:15,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:05:15,728.728 INFO    ] No existing commands found in stream
[2026-10-18 12:05:20,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:05:20,748.748 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-18 12:05:24,949.949 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:05:24,952.952 INFO    ] Checking for system updates...
[2026-10-18 12:05:24,987.987 INFO    ] 200
[2026-10-18 12:05:24,990.990 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:05:25,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:05:25,049.049 INFO    ] No update needed
[2026-10-18 12:05:25,052.052 INFO    ] Checking for camera pi updates...
[2026-10-18 12:05:25,089.089 INFO    ] 200
[2026-10-18 12:05:25,091.091 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:05:25,140.140 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:05:35,156.156 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:05:35,193.193 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:05:35,204.204 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:05:35,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:05:35,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:05:35,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:05:37,258.258 INFO    ] ================================================
[2026-10-18 12:05:37,274.274 INFO    ] Launching Daemon at Sun Oct 18 12:05:37 IST 2026
[2026-10-18 12:05:37,284.284 INFO    ] ================================================
[2026-10-18 12:05:37,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:05:37
[2026-10-18 12:05:38,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:05:38,706.706 INFO    ] Initializing speech engine...
[2026-10-18 12:05:38,710.710 INFO    ] 2026-10-18 12:05:38
[2026-10-18 12:05:38,962.962 INFO    ] 2026-10-18 12:05:38
[2026-10-18 12:05:38,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:05:39,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:05:39,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:05:39,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:05:39,466.466 INFO    ] time= 18/10/2026 12:05:39
[2026-10-18 12:05:39,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:05:39,534.534 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:05:39,657.657 INFO    ] No existing commands found in stream
[2026-10-18 12:05:44,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:05:44,685.685 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-18 12:05:47,769.769 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:05:47,772.772 INFO    ] Checking for system updates...
[2026-10-18 12:05:47,807.807 INFO    ] 200
[2026-10-18 12:05:47,810.810 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:05:47,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:05:47,868.868 INFO    ] No update needed
[2026-10-18 12:05:47,871.871 INFO    ] Checking for camera pi updates...
[2026-10-18 12:05:47,906.906 INFO    ] 200
[2026-10-18 12:05:47,909.909 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:05:47,951.951 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:05:57,966.966 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:05:58,001.001 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:05:58,010.010 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:05:58,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:05:58,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:05:58,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:06:00,063.063 INFO    ] ================================================
[2026-10-18 12:06:00,078.078 INFO    ] Launching Daemon at Sun Oct 18 12:06:00 IST 2026
[2026-10-18 12:06:00,088.088 INFO    ] ================================================
[2026-10-18 12:06:00,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:06:00
[2026-10-18 12:06:01,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:06:01,541.541 INFO    ] Initializing speech engine...
[2026-10-18 12:06:01,551.551 INFO    ] 2026-10-18 12:06:01
[2026-10-18 12:06:01,803.803 INFO    ] 2026-10-18 12:06:01
[2026-10-18 12:06:01,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:06:02,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:06:02,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:06:02,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:06:02,223.223 INFO    ] time= 18/10/2026 12:06:02
[2026-10-18 12:06:02,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:06:02,230.230 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:06:02,298.298 INFO    ] No existing commands found in stream
[2026-10-18 12:06:07,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:06:07,311.311 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-18 12:06:09,197.197 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:06:09,200.200 INFO    ] Checking for system updates...
[2026-10-18 12:06:09,240.240 INFO    ] 200
[2026-10-18 12:06:09,242.242 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:06:09,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:06:09,299.299 INFO    ] No update needed
[2026-10-18 12:06:09,302.302 INFO    ] Checking for camera pi updates...
[2026-10-18 12:06:09,337.337 INFO    ] 200
[2026-10-18 12:06:09,340.340 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:06:09,381.381 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:06:19,398.398 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:06:19,438.438 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:06:19,449.449 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:06:19,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:06:19,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:06:19,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:06:21,506.506 INFO    ] ================================================
[2026-10-18 12:06:21,522.522 INFO    ] Launching Daemon at Sun Oct 18 12:06:21 IST 2026
[2026-10-18 12:06:21,532.532 INFO    ] ================================================
[2026-10-18 12:06:22,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:06:22
[2026-10-18 12:06:22,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:06:22,980.980 INFO    ] Initializing speech engine...
[2026-10-18 12:06:22,991.991 INFO    ] 2026-10-18 12:06:22
[2026-10-18 12:06:23,257.257 INFO    ] 2026-10-18 12:06:23
[2026-10-18 12:06:23,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:06:23,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:06:23,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:06:23,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:06:23,790.790 INFO    ] time= 18/10/2026 12:06:23
[2026-10-18 12:06:23,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:06:23,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:06:23,958.958 INFO    ] No existing commands found in stream
[2026-10-18 12:06:28,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:06:28,991.991 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-18 12:06:31,270.270 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:06:31,272.272 INFO    ] Checking for system updates...
[2026-10-18 12:06:31,314.314 INFO    ] 200
[2026-10-18 12:06:31,317.317 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:06:31,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:06:31,380.380 INFO    ] No update needed
[2026-10-18 12:06:31,383.383 INFO    ] Checking for camera pi updates...
[2026-10-18 12:06:31,417.417 INFO    ] 200
[2026-10-18 12:06:31,420.420 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:06:31,461.461 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:06:41,477.477 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:06:41,521.521 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:06:41,533.533 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:06:41,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:06:41,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:06:41,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:06:43,595.595 INFO    ] ================================================
[2026-10-18 12:06:43,611.611 INFO    ] Launching Daemon at Sun Oct 18 12:06:43 IST 2026
[2026-10-18 12:06:43,623.623 INFO    ] ================================================
[2026-10-18 12:06:44,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:06:44
[2026-10-18 12:06:44,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:06:45,143.143 INFO    ] Initializing speech engine...
[2026-10-18 12:06:45,153.153 INFO    ] 2026-10-18 12:06:45
[2026-10-18 12:06:45,402.402 INFO    ] 2026-10-18 12:06:45
[2026-10-18 12:06:45,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:06:45,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:06:45,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:06:45,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:06:45,958.958 INFO    ] time= 18/10/2026 12:06:45
[2026-10-18 12:06:45,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:06:45,983.983 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:06:46,117.117 INFO    ] No existing commands found in stream
[2026-10-18 12:06:51,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:06:51,145.145 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-18 12:06:53,950.950 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:06:53,952.952 INFO    ] Checking for system updates...
[2026-10-18 12:06:53,992.992 INFO    ] 200
[2026-10-18 12:06:53,995.995 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:06:54,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:06:54,057.057 INFO    ] No update needed
[2026-10-18 12:06:54,059.059 INFO    ] Checking for camera pi updates...
[2026-10-18 12:06:54,092.092 INFO    ] 200
[2026-10-18 12:06:54,095.095 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:06:54,137.137 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:07:04,149.149 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:07:04,184.184 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:07:04,194.194 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:07:04,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:07:04,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:07:04,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:07:06,249.249 INFO    ] ================================================
[2026-10-18 12:07:06,264.264 INFO    ] Launching Daemon at Sun Oct 18 12:07:06 IST 2026
[2026-10-18 12:07:06,276.276 INFO    ] ================================================
[2026-10-18 12:07:06,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:07:06
[2026-10-18 12:07:07,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:07:07,693.693 INFO    ] Initializing speech engine...
[2026-10-18 12:07:07,717.717 INFO    ] 2026-10-18 12:07:07
[2026-10-18 12:07:07,994.994 INFO    ] 2026-10-18 12:07:07
[2026-10-18 12:07:08,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:07:08,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:07:08,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:07:08,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:07:08,419.419 INFO    ] time= 18/10/2026 12:07:08
[2026-10-18 12:07:08,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:07:08,431.431 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:07:08,602.602 INFO    ] No existing commands found in stream
[2026-10-18 12:07:13,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:07:13,640.640 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-18 12:07:14,139.139 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:07:14,141.141 INFO    ] Checking for system updates...
[2026-10-18 12:07:14,178.178 INFO    ] 200
[2026-10-18 12:07:14,180.180 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:07:14,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:07:14,234.234 INFO    ] No update needed
[2026-10-18 12:07:14,237.237 INFO    ] Checking for camera pi updates...
[2026-10-18 12:07:14,271.271 INFO    ] 200
[2026-10-18 12:07:14,273.273 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:07:14,313.313 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:07:24,328.328 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:07:24,364.364 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:07:24,374.374 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:07:24,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:07:24,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:07:24,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:07:26,427.427 INFO    ] ================================================
[2026-10-18 12:07:26,442.442 INFO    ] Launching Daemon at Sun Oct 18 12:07:26 IST 2026
[2026-10-18 12:07:26,453.453 INFO    ] ================================================
[2026-10-18 12:07:27,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:07:27
[2026-10-18 12:07:27,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:07:27,899.899 INFO    ] Initializing speech engine...
[2026-10-18 12:07:27,905.905 INFO    ] 2026-10-18 12:07:27
[2026-10-18 12:07:28,152.152 INFO    ] 2026-10-18 12:07:28
[2026-10-18 12:07:28,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:07:28,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:07:28,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:07:28,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:07:28,706.706 INFO    ] time= 18/10/2026 12:07:28
[2026-10-18 12:07:28,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:07:28,730.730 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:07:28,863.863 INFO    ] No existing commands found in stream
[2026-10-18 12:07:33,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:07:33,888.888 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-18 12:07:36,052.052 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:07:36,055.055 INFO    ] Checking for system updates...
[2026-10-18 12:07:36,095.095 INFO    ] 200
[2026-10-18 12:07:36,098.098 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:07:36,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:07:36,153.153 INFO    ] No update needed
[2026-10-18 12:07:36,155.155 INFO    ] Checking for camera pi updates...
[2026-10-18 12:07:36,189.189 INFO    ] 200
[2026-10-18 12:07:36,192.192 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:07:36,233.233 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:07:46,248.248 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:07:46,284.284 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:07:46,294.294 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:07:46,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:07:46,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:07:46,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:07:48,347.347 INFO    ] ================================================
[2026-10-18 12:07:48,362.362 INFO    ] Launching Daemon at Sun Oct 18 12:07:48 IST 2026
[2026-10-18 12:07:48,373.373 INFO    ] ================================================
[2026-10-18 12:07:49,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:07:49
[2026-10-18 12:07:49,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:07:50,009.009 INFO    ] Initializing speech engine...
[2026-10-18 12:07:50,018.018 INFO    ] 2026-10-18 12:07:50
[2026-10-18 12:07:50,291.291 INFO    ] 2026-10-18 12:07:50
[2026-10-18 12:07:50,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:07:50,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:07:50,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:07:50,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:07:50,857.857 INFO    ] time= 18/10/2026 12:07:50
[2026-10-18 12:07:50,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:07:50,891.891 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:07:51,022.022 INFO    ] No existing commands found in stream
[2026-10-18 12:07:56,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:07:56,048.048 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-18 12:07:56,626.626 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:07:56,629.629 INFO    ] Checking for system updates...
[2026-10-18 12:07:56,670.670 INFO    ] 200
[2026-10-18 12:07:56,673.673 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:07:56,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:07:56,735.735 INFO    ] No update needed
[2026-10-18 12:07:56,737.737 INFO    ] Checking for camera pi updates...
[2026-10-18 12:07:56,771.771 INFO    ] 200
[2026-10-18 12:07:56,773.773 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:07:56,813.813 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:08:06,828.828 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:08:06,863.863 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:08:06,874.874 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:08:06,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:08:06,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:08:06,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:08:08,927.927 INFO    ] ================================================
[2026-10-18 12:08:08,942.942 INFO    ] Launching Daemon at Sun Oct 18 12:08:08 IST 2026
[2026-10-18 12:08:08,953.953 INFO    ] ================================================
[2026-10-18 12:08:09,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:08:09
[2026-10-18 12:08:10,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:08:10,365.365 INFO    ] Initializing speech engine...
[2026-10-18 12:08:10,386.386 INFO    ] 2026-10-18 12:08:10
[2026-10-18 12:08:10,663.663 INFO    ] 2026-10-18 12:08:10
[2026-10-18 12:08:10,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:08:10,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:08:10,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:08:11,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:08:11,214.214 INFO    ] time= 18/10/2026 12:08:11
[2026-10-18 12:08:11,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:08:11,299.299 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:08:11,437.437 INFO    ] No existing commands found in stream
[2026-10-18 12:08:16,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:08:16,466.466 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-18 12:08:17,509.509 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:08:17,512.512 INFO    ] Checking for system updates...
[2026-10-18 12:08:17,547.547 INFO    ] 200
[2026-10-18 12:08:17,549.549 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:08:17,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:08:17,603.603 INFO    ] No update needed
[2026-10-18 12:08:17,606.606 INFO    ] Checking for camera pi updates...
[2026-10-18 12:08:17,639.639 INFO    ] 200
[2026-10-18 12:08:17,641.641 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:08:17,681.681 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:08:27,696.696 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:08:27,731.731 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:08:27,740.740 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:08:27,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:08:27,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:08:27,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:08:29,793.793 INFO    ] ================================================
[2026-10-18 12:08:29,809.809 INFO    ] Launching Daemon at Sun Oct 18 12:08:29 IST 2026
[2026-10-18 12:08:29,820.820 INFO    ] ================================================
[2026-10-18 12:08:30,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:08:30
[2026-10-18 12:08:30,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:08:31,248.248 INFO    ] Initializing speech engine...
[2026-10-18 12:08:31,257.257 INFO    ] 2026-10-18 12:08:31
[2026-10-18 12:08:31,503.503 INFO    ] 2026-10-18 12:08:31
[2026-10-18 12:08:31,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:08:31,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:08:31,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:08:32,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:08:32,071.071 INFO    ] time= 18/10/2026 12:08:32
[2026-10-18 12:08:32,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:08:32,100.100 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:08:32,249.249 INFO    ] No existing commands found in stream
[2026-10-18 12:08:37,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:08:37,284.284 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-18 12:08:38,145.145 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:08:38,151.151 INFO    ] Checking for system updates...
[2026-10-18 12:08:38,190.190 INFO    ] 200
[2026-10-18 12:08:38,193.193 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:08:38,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:08:38,248.248 INFO    ] No update needed
[2026-10-18 12:08:38,254.254 INFO    ] Checking for camera pi updates...
[2026-10-18 12:08:38,292.292 INFO    ] 200
[2026-10-18 12:08:38,294.294 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:08:38,335.335 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:08:48,352.352 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:08:48,393.393 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:08:48,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:08:48,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:08:48,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:08:48,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:08:50,461.461 INFO    ] ================================================
[2026-10-18 12:08:50,477.477 INFO    ] Launching Daemon at Sun Oct 18 12:08:50 IST 2026
[2026-10-18 12:08:50,488.488 INFO    ] ================================================
[2026-10-18 12:08:51,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:08:51
[2026-10-18 12:08:51,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:08:51,898.898 INFO    ] Initializing speech engine...
[2026-10-18 12:08:51,913.913 INFO    ] 2026-10-18 12:08:51
[2026-10-18 12:08:52,183.183 INFO    ] 2026-10-18 12:08:52
[2026-10-18 12:08:52,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:08:52,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:08:52,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:08:52,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:08:52,733.733 INFO    ] time= 18/10/2026 12:08:52
[2026-10-18 12:08:52,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:08:52,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:08:52,914.914 INFO    ] No existing commands found in stream
[2026-10-18 12:08:57,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:08:57,942.942 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-18 12:08:58,912.912 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:08:58,915.915 INFO    ] Checking for system updates...
[2026-10-18 12:08:58,954.954 INFO    ] 200
[2026-10-18 12:08:58,957.957 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:08:59,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:08:59,026.026 INFO    ] No update needed
[2026-10-18 12:08:59,029.029 INFO    ] Checking for camera pi updates...
[2026-10-18 12:08:59,062.062 INFO    ] 200
[2026-10-18 12:08:59,065.065 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:08:59,105.105 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:09:09,119.119 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:09:09,155.155 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:09:09,165.165 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:09:09,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:09:09,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:09:09,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:09:11,220.220 INFO    ] ================================================
[2026-10-18 12:09:11,235.235 INFO    ] Launching Daemon at Sun Oct 18 12:09:11 IST 2026
[2026-10-18 12:09:11,247.247 INFO    ] ================================================
[2026-10-18 12:09:11,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:09:11
[2026-10-18 12:09:12,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:09:12,833.833 INFO    ] Initializing speech engine...
[2026-10-18 12:09:12,840.840 INFO    ] 2026-10-18 12:09:12
[2026-10-18 12:09:13,095.095 INFO    ] 2026-10-18 12:09:13
[2026-10-18 12:09:13,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:09:13,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:09:13,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:09:13,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:09:13,582.582 INFO    ] time= 18/10/2026 12:09:13
[2026-10-18 12:09:13,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:09:13,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:09:13,797.797 INFO    ] No existing commands found in stream
[2026-10-18 12:09:18,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:09:18,827.827 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-18 12:09:21,647.647 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:09:21,650.650 INFO    ] Checking for system updates...
[2026-10-18 12:09:21,686.686 INFO    ] 200
[2026-10-18 12:09:21,688.688 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:09:21,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:09:21,756.756 INFO    ] No update needed
[2026-10-18 12:09:21,758.758 INFO    ] Checking for camera pi updates...
[2026-10-18 12:09:21,797.797 INFO    ] 200
[2026-10-18 12:09:21,799.799 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:09:21,839.839 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:09:31,854.854 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:09:31,888.888 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:09:31,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:09:31,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:09:31,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:09:31,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:09:33,952.952 INFO    ] ================================================
[2026-10-18 12:09:33,968.968 INFO    ] Launching Daemon at Sun Oct 18 12:09:33 IST 2026
[2026-10-18 12:09:33,979.979 INFO    ] ================================================
[2026-10-18 12:09:34,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:09:34
[2026-10-18 12:09:35,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:09:35,480.480 INFO    ] Initializing speech engine...
[2026-10-18 12:09:35,493.493 INFO    ] 2026-10-18 12:09:35
[2026-10-18 12:09:35,805.805 INFO    ] 2026-10-18 12:09:35
[2026-10-18 12:09:35,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:09:36,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:09:36,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:09:36,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:09:36,395.395 INFO    ] time= 18/10/2026 12:09:36
[2026-10-18 12:09:36,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:09:36,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:09:36,609.609 INFO    ] No existing commands found in stream
[2026-10-18 12:09:41,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:09:41,648.648 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-18 12:09:44,517.517 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:09:44,520.520 INFO    ] Checking for system updates...
[2026-10-18 12:09:44,560.560 INFO    ] 200
[2026-10-18 12:09:44,563.563 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:09:44,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:09:44,626.626 INFO    ] No update needed
[2026-10-18 12:09:44,628.628 INFO    ] Checking for camera pi updates...
[2026-10-18 12:09:44,662.662 INFO    ] 200
[2026-10-18 12:09:44,664.664 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:09:44,704.704 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:09:54,720.720 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:09:54,755.755 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:09:54,765.765 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:09:54,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:09:54,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:09:54,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:09:56,818.818 INFO    ] ================================================
[2026-10-18 12:09:56,834.834 INFO    ] Launching Daemon at Sun Oct 18 12:09:56 IST 2026
[2026-10-18 12:09:56,845.845 INFO    ] ================================================
[2026-10-18 12:09:57,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:09:57
[2026-10-18 12:09:58,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:09:58,322.322 INFO    ] Initializing speech engine...
[2026-10-18 12:09:58,331.331 INFO    ] 2026-10-18 12:09:58
[2026-10-18 12:09:58,592.592 INFO    ] 2026-10-18 12:09:58
[2026-10-18 12:09:58,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:09:58,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:09:58,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:09:59,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:09:59,133.133 INFO    ] time= 18/10/2026 12:09:59
[2026-10-18 12:09:59,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:09:59,161.161 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:09:59,352.352 INFO    ] No existing commands found in stream
[2026-10-18 12:10:04,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:10:04,380.380 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-18 12:10:08,439.439 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:10:08,442.442 INFO    ] Checking for system updates...
[2026-10-18 12:10:08,482.482 INFO    ] 200
[2026-10-18 12:10:08,485.485 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:10:08,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:10:08,549.549 INFO    ] No update needed
[2026-10-18 12:10:08,551.551 INFO    ] Checking for camera pi updates...
[2026-10-18 12:10:08,586.586 INFO    ] 200
[2026-10-18 12:10:08,588.588 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:10:08,634.634 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:10:18,649.649 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:10:18,685.685 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:10:18,695.695 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:10:18,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:10:18,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:10:18,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:10:20,749.749 INFO    ] ================================================
[2026-10-18 12:10:20,765.765 INFO    ] Launching Daemon at Sun Oct 18 12:10:20 IST 2026
[2026-10-18 12:10:20,776.776 INFO    ] ================================================
[2026-10-18 12:10:21,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:10:21
[2026-10-18 12:10:21,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:10:22,247.247 INFO    ] Initializing speech engine...
[2026-10-18 12:10:22,255.255 INFO    ] 2026-10-18 12:10:22
[2026-10-18 12:10:22,526.526 INFO    ] 2026-10-18 12:10:22
[2026-10-18 12:10:22,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:10:22,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:10:22,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:10:23,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:10:23,060.060 INFO    ] time= 18/10/2026 12:10:23
[2026-10-18 12:10:23,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:10:23,107.107 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:10:23,224.224 INFO    ] No existing commands found in stream
[2026-10-18 12:10:28,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:10:28,257.257 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-18 12:10:32,139.139 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:10:32,142.142 INFO    ] Checking for system updates...
[2026-10-18 12:10:32,182.182 INFO    ] 200
[2026-10-18 12:10:32,185.185 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:10:32,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:10:32,249.249 INFO    ] No update needed
[2026-10-18 12:10:32,252.252 INFO    ] Checking for camera pi updates...
[2026-10-18 12:10:32,288.288 INFO    ] 200
[2026-10-18 12:10:32,291.291 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:10:32,333.333 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:10:42,349.349 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:10:42,385.385 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:10:42,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:10:42,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:10:42,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:10:42,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:10:44,448.448 INFO    ] ================================================
[2026-10-18 12:10:44,464.464 INFO    ] Launching Daemon at Sun Oct 18 12:10:44 IST 2026
[2026-10-18 12:10:44,477.477 INFO    ] ================================================
[2026-10-18 12:10:45,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:10:45
[2026-10-18 12:10:45,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:10:45,876.876 INFO    ] Initializing speech engine...
[2026-10-18 12:10:45,890.890 INFO    ] 2026-10-18 12:10:45
[2026-10-18 12:10:46,155.155 INFO    ] 2026-10-18 12:10:46
[2026-10-18 12:10:46,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:10:46,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:10:46,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:10:46,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:10:46,671.671 INFO    ] time= 18/10/2026 12:10:46
[2026-10-18 12:10:46,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:10:46,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:10:46,854.854 INFO    ] No existing commands found in stream
[2026-10-18 12:10:51,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:10:51,878.878 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-18 12:10:52,706.706 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:10:52,709.709 INFO    ] Checking for system updates...
[2026-10-18 12:10:52,749.749 INFO    ] 200
[2026-10-18 12:10:52,752.752 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:10:52,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:10:52,813.813 INFO    ] No update needed
[2026-10-18 12:10:52,816.816 INFO    ] Checking for camera pi updates...
[2026-10-18 12:10:52,849.849 INFO    ] 200
[2026-10-18 12:10:52,852.852 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:10:52,892.892 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:11:02,906.906 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:11:02,945.945 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:11:02,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:11:02,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:11:02,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:11:02,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:11:05,014.014 INFO    ] ================================================
[2026-10-18 12:11:05,030.030 INFO    ] Launching Daemon at Sun Oct 18 12:11:05 IST 2026
[2026-10-18 12:11:05,041.041 INFO    ] ================================================
[2026-10-18 12:11:05,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:11:05
[2026-10-18 12:11:06,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:11:06,457.457 INFO    ] Initializing speech engine...
[2026-10-18 12:11:06,466.466 INFO    ] 2026-10-18 12:11:06
[2026-10-18 12:11:06,725.725 INFO    ] 2026-10-18 12:11:06
[2026-10-18 12:11:06,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:11:06,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:11:07,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:11:07,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:11:07,202.202 INFO    ] time= 18/10/2026 12:11:07
[2026-10-18 12:11:07,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:11:07,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:11:07,406.406 INFO    ] No existing commands found in stream
[2026-10-18 12:11:12,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:11:12,433.433 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-18 12:11:13,878.878 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:11:13,881.881 INFO    ] Checking for system updates...
[2026-10-18 12:11:13,916.916 INFO    ] 200
[2026-10-18 12:11:13,919.919 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:11:13,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:11:13,975.975 INFO    ] No update needed
[2026-10-18 12:11:13,977.977 INFO    ] Checking for camera pi updates...
[2026-10-18 12:11:14,015.015 INFO    ] 200
[2026-10-18 12:11:14,017.017 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:11:14,062.062 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:11:24,077.077 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:11:24,112.112 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:11:24,121.121 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:11:24,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:11:24,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:11:24,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:11:26,174.174 INFO    ] ================================================
[2026-10-18 12:11:26,191.191 INFO    ] Launching Daemon at Sun Oct 18 12:11:26 IST 2026
[2026-10-18 12:11:26,202.202 INFO    ] ================================================
[2026-10-18 12:11:26,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:11:26
[2026-10-18 12:11:27,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:11:27,661.661 INFO    ] Initializing speech engine...
[2026-10-18 12:11:27,678.678 INFO    ] 2026-10-18 12:11:27
[2026-10-18 12:11:27,934.934 INFO    ] 2026-10-18 12:11:27
[2026-10-18 12:11:27,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:11:28,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:11:28,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:11:29,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:11:29,419.419 INFO    ] time= 18/10/2026 12:11:29
[2026-10-18 12:11:29,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:11:29,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:11:29,563.563 INFO    ] No existing commands found in stream
[2026-10-18 12:11:34,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:11:34,596.596 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-18 12:11:36,216.216 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:11:36,218.218 INFO    ] Checking for system updates...
[2026-10-18 12:11:36,259.259 INFO    ] 200
[2026-10-18 12:11:36,261.261 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:11:36,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:11:36,325.325 INFO    ] No update needed
[2026-10-18 12:11:36,328.328 INFO    ] Checking for camera pi updates...
[2026-10-18 12:11:36,362.362 INFO    ] 200
[2026-10-18 12:11:36,365.365 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:11:36,405.405 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:11:46,417.417 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:11:46,453.453 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:11:46,462.462 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:11:46,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:11:46,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:11:46,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:11:48,516.516 INFO    ] ================================================
[2026-10-18 12:11:48,532.532 INFO    ] Launching Daemon at Sun Oct 18 12:11:48 IST 2026
[2026-10-18 12:11:48,544.544 INFO    ] ================================================
[2026-10-18 12:11:49,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:11:49
[2026-10-18 12:11:49,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:11:50,010.010 INFO    ] Initializing speech engine...
[2026-10-18 12:11:50,016.016 INFO    ] 2026-10-18 12:11:50
[2026-10-18 12:11:50,263.263 INFO    ] 2026-10-18 12:11:50
[2026-10-18 12:11:50,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:11:50,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:11:50,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:11:50,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:11:50,820.820 INFO    ] time= 18/10/2026 12:11:50
[2026-10-18 12:11:50,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:11:50,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:11:50,974.974 INFO    ] No existing commands found in stream
[2026-10-18 12:11:55,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:11:55,992.992 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-18 12:11:56,860.860 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:11:56,863.863 INFO    ] Checking for system updates...
[2026-10-18 12:11:56,900.900 INFO    ] 200
[2026-10-18 12:11:56,903.903 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:11:56,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:11:56,959.959 INFO    ] No update needed
[2026-10-18 12:11:56,962.962 INFO    ] Checking for camera pi updates...
[2026-10-18 12:11:57,002.002 INFO    ] 200
[2026-10-18 12:11:57,005.005 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:11:57,066.066 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:12:07,082.082 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:12:07,122.122 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:12:07,134.134 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:12:07,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:12:07,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:12:07,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:12:09,191.191 INFO    ] ================================================
[2026-10-18 12:12:09,207.207 INFO    ] Launching Daemon at Sun Oct 18 12:12:09 IST 2026
[2026-10-18 12:12:09,217.217 INFO    ] ================================================
[2026-10-18 12:12:09,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:12:09
[2026-10-18 12:12:10,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:12:10,620.620 INFO    ] Initializing speech engine...
[2026-10-18 12:12:10,635.635 INFO    ] 2026-10-18 12:12:10
[2026-10-18 12:12:10,901.901 INFO    ] 2026-10-18 12:12:10
[2026-10-18 12:12:10,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:12:11,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:12:11,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:12:11,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:12:11,467.467 INFO    ] time= 18/10/2026 12:12:11
[2026-10-18 12:12:11,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:12:11,490.490 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:12:11,620.620 INFO    ] No existing commands found in stream
[2026-10-18 12:12:16,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:12:16,639.639 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-18 12:12:19,396.396 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:12:19,399.399 INFO    ] Checking for system updates...
[2026-10-18 12:12:19,438.438 INFO    ] 200
[2026-10-18 12:12:19,441.441 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:12:19,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:12:19,496.496 INFO    ] No update needed
[2026-10-18 12:12:19,499.499 INFO    ] Checking for camera pi updates...
[2026-10-18 12:12:19,534.534 INFO    ] 200
[2026-10-18 12:12:19,536.536 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:12:19,582.582 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:12:29,597.597 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:12:29,632.632 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:12:29,642.642 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:12:29,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:12:29,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:12:29,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:12:31,697.697 INFO    ] ================================================
[2026-10-18 12:12:31,718.718 INFO    ] Launching Daemon at Sun Oct 18 12:12:31 IST 2026
[2026-10-18 12:12:31,732.732 INFO    ] ================================================
[2026-10-18 12:12:32,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:12:32
[2026-10-18 12:12:32,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:12:33,259.259 INFO    ] Initializing speech engine...
[2026-10-18 12:12:33,272.272 INFO    ] 2026-10-18 12:12:33
[2026-10-18 12:12:33,555.555 INFO    ] 2026-10-18 12:12:33
[2026-10-18 12:12:33,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:12:33,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:12:33,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:12:34,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:12:34,099.099 INFO    ] time= 18/10/2026 12:12:34
[2026-10-18 12:12:34,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:12:34,136.136 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:12:34,265.265 INFO    ] No existing commands found in stream
[2026-10-18 12:12:39,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:12:39,304.304 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-18 12:12:41,413.413 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:12:41,416.416 INFO    ] Checking for system updates...
[2026-10-18 12:12:41,453.453 INFO    ] 200
[2026-10-18 12:12:41,457.457 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:12:41,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:12:41,511.511 INFO    ] No update needed
[2026-10-18 12:12:41,514.514 INFO    ] Checking for camera pi updates...
[2026-10-18 12:12:41,552.552 INFO    ] 200
[2026-10-18 12:12:41,554.554 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:12:41,595.595 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:12:51,610.610 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:12:51,645.645 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:12:51,654.654 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:12:51,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:12:51,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:12:51,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:12:53,707.707 INFO    ] ================================================
[2026-10-18 12:12:53,723.723 INFO    ] Launching Daemon at Sun Oct 18 12:12:53 IST 2026
[2026-10-18 12:12:53,735.735 INFO    ] ================================================
[2026-10-18 12:12:54,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:12:54
[2026-10-18 12:12:55,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:12:55,427.427 INFO    ] Initializing speech engine...
[2026-10-18 12:12:55,440.440 INFO    ] 2026-10-18 12:12:55
[2026-10-18 12:12:55,725.725 INFO    ] 2026-10-18 12:12:55
[2026-10-18 12:12:55,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:12:56,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:12:56,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:12:56,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:12:56,266.266 INFO    ] time= 18/10/2026 12:12:56
[2026-10-18 12:12:56,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:12:56,314.314 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:12:56,446.446 INFO    ] No existing commands found in stream
[2026-10-18 12:13:01,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:13:01,481.481 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-18 12:13:03,931.931 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:13:03,934.934 INFO    ] Checking for system updates...
[2026-10-18 12:13:03,975.975 INFO    ] 200
[2026-10-18 12:13:03,978.978 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:13:04,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:13:04,041.041 INFO    ] No update needed
[2026-10-18 12:13:04,043.043 INFO    ] Checking for camera pi updates...
[2026-10-18 12:13:04,093.093 INFO    ] 200
[2026-10-18 12:13:04,096.096 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:13:04,137.137 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:13:14,152.152 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:13:14,187.187 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:13:14,196.196 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:13:14,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:13:14,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:13:14,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:13:16,249.249 INFO    ] ================================================
[2026-10-18 12:13:16,264.264 INFO    ] Launching Daemon at Sun Oct 18 12:13:16 IST 2026
[2026-10-18 12:13:16,276.276 INFO    ] ================================================
[2026-10-18 12:13:16,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:13:16
[2026-10-18 12:13:17,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:13:17,867.867 INFO    ] Initializing speech engine...
[2026-10-18 12:13:17,875.875 INFO    ] 2026-10-18 12:13:17
[2026-10-18 12:13:18,148.148 INFO    ] 2026-10-18 12:13:18
[2026-10-18 12:13:18,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:13:18,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:13:18,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:13:18,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:13:18,718.718 INFO    ] time= 18/10/2026 12:13:18
[2026-10-18 12:13:18,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:13:18,742.742 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:13:18,860.860 INFO    ] No existing commands found in stream
[2026-10-18 12:13:23,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:13:23,890.890 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-18 12:13:26,825.825 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:13:26,828.828 INFO    ] Checking for system updates...
[2026-10-18 12:13:26,864.864 INFO    ] 200
[2026-10-18 12:13:26,870.870 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:13:26,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:13:26,933.933 INFO    ] No update needed
[2026-10-18 12:13:26,936.936 INFO    ] Checking for camera pi updates...
[2026-10-18 12:13:26,970.970 INFO    ] 200
[2026-10-18 12:13:26,972.972 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:13:27,013.013 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:13:37,028.028 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:13:37,064.064 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:13:37,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:13:37,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:13:37,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:13:37,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:13:39,126.126 INFO    ] ================================================
[2026-10-18 12:13:39,142.142 INFO    ] Launching Daemon at Sun Oct 18 12:13:39 IST 2026
[2026-10-18 12:13:39,153.153 INFO    ] ================================================
[2026-10-18 12:13:39,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:13:39
[2026-10-18 12:13:40,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:13:40,787.787 INFO    ] Initializing speech engine...
[2026-10-18 12:13:40,796.796 INFO    ] 2026-10-18 12:13:40
[2026-10-18 12:13:41,073.073 INFO    ] 2026-10-18 12:13:41
[2026-10-18 12:13:41,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:13:41,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:13:41,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:13:41,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:13:41,623.623 INFO    ] time= 18/10/2026 12:13:41
[2026-10-18 12:13:41,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:13:41,673.673 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:13:41,841.841 INFO    ] No existing commands found in stream
[2026-10-18 12:13:46,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:13:46,875.875 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-18 12:13:51,014.014 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:13:51,017.017 INFO    ] Checking for system updates...
[2026-10-18 12:13:51,054.054 INFO    ] 200
[2026-10-18 12:13:51,056.056 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:13:51,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:13:51,112.112 INFO    ] No update needed
[2026-10-18 12:13:51,114.114 INFO    ] Checking for camera pi updates...
[2026-10-18 12:13:51,151.151 INFO    ] 200
[2026-10-18 12:13:51,154.154 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:13:51,199.199 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:14:01,213.213 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:14:01,248.248 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:14:01,258.258 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:14:01,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:14:01,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:14:01,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:14:03,314.314 INFO    ] ================================================
[2026-10-18 12:14:03,332.332 INFO    ] Launching Daemon at Sun Oct 18 12:14:03 IST 2026
[2026-10-18 12:14:03,343.343 INFO    ] ================================================
[2026-10-18 12:14:03,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:14:03
[2026-10-18 12:14:04,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:14:04,889.889 INFO    ] Initializing speech engine...
[2026-10-18 12:14:04,898.898 INFO    ] 2026-10-18 12:14:04
[2026-10-18 12:14:05,168.168 INFO    ] 2026-10-18 12:14:05
[2026-10-18 12:14:05,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:14:05,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:14:05,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:14:05,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:14:05,682.682 INFO    ] time= 18/10/2026 12:14:05
[2026-10-18 12:14:05,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:14:05,788.788 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:14:05,947.947 INFO    ] No existing commands found in stream
[2026-10-18 12:14:10,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:14:10,970.970 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-18 12:14:13,395.395 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:14:13,398.398 INFO    ] Checking for system updates...
[2026-10-18 12:14:13,437.437 INFO    ] 200
[2026-10-18 12:14:13,440.440 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:14:13,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:14:13,494.494 INFO    ] No update needed
[2026-10-18 12:14:13,496.496 INFO    ] Checking for camera pi updates...
[2026-10-18 12:14:13,533.533 INFO    ] 200
[2026-10-18 12:14:13,536.536 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:14:13,577.577 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:14:23,592.592 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:14:23,631.631 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:14:23,642.642 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:14:23,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:14:23,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:14:23,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:14:25,697.697 INFO    ] ================================================
[2026-10-18 12:14:25,713.713 INFO    ] Launching Daemon at Sun Oct 18 12:14:25 IST 2026
[2026-10-18 12:14:25,724.724 INFO    ] ================================================
[2026-10-18 12:14:26,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:14:26
[2026-10-18 12:14:26,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:14:27,134.134 INFO    ] Initializing speech engine...
[2026-10-18 12:14:27,148.148 INFO    ] 2026-10-18 12:14:27
[2026-10-18 12:14:27,411.411 INFO    ] 2026-10-18 12:14:27
[2026-10-18 12:14:27,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:14:27,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:14:27,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:14:27,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:14:27,906.906 INFO    ] time= 18/10/2026 12:14:27
[2026-10-18 12:14:27,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:14:27,974.974 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:14:28,104.104 INFO    ] No existing commands found in stream
[2026-10-18 12:14:33,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:14:33,133.133 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-18 12:14:35,296.296 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:14:35,299.299 INFO    ] Checking for system updates...
[2026-10-18 12:14:35,338.338 INFO    ] 200
[2026-10-18 12:14:35,341.341 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:14:35,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:14:35,396.396 INFO    ] No update needed
[2026-10-18 12:14:35,398.398 INFO    ] Checking for camera pi updates...
[2026-10-18 12:14:35,432.432 INFO    ] 200
[2026-10-18 12:14:35,434.434 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:14:35,476.476 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:14:45,492.492 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:14:45,531.531 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:14:45,542.542 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:14:45,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:14:45,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:14:45,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:14:47,599.599 INFO    ] ================================================
[2026-10-18 12:14:47,614.614 INFO    ] Launching Daemon at Sun Oct 18 12:14:47 IST 2026
[2026-10-18 12:14:47,626.626 INFO    ] ================================================
[2026-10-18 12:14:48,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:14:48
[2026-10-18 12:14:48,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:14:49,080.080 INFO    ] Initializing speech engine...
[2026-10-18 12:14:49,091.091 INFO    ] 2026-10-18 12:14:49
[2026-10-18 12:14:49,365.365 INFO    ] 2026-10-18 12:14:49
[2026-10-18 12:14:49,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:14:49,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:14:49,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:14:49,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:14:49,897.897 INFO    ] time= 18/10/2026 12:14:49
[2026-10-18 12:14:49,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:14:49,927.927 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:14:50,075.075 INFO    ] No existing commands found in stream
[2026-10-18 12:14:55,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:14:55,108.108 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-18 12:14:56,487.487 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:14:56,490.490 INFO    ] Checking for system updates...
[2026-10-18 12:14:56,527.527 INFO    ] 200
[2026-10-18 12:14:56,530.530 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:14:56,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:14:56,591.591 INFO    ] No update needed
[2026-10-18 12:14:56,594.594 INFO    ] Checking for camera pi updates...
[2026-10-18 12:14:56,631.631 INFO    ] 200
[2026-10-18 12:14:56,633.633 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:14:56,679.679 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:15:06,694.694 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:15:06,731.731 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:15:06,741.741 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:15:06,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:15:06,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:15:06,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:15:08,803.803 INFO    ] ================================================
[2026-10-18 12:15:08,819.819 INFO    ] Launching Daemon at Sun Oct 18 12:15:08 IST 2026
[2026-10-18 12:15:08,830.830 INFO    ] ================================================
[2026-10-18 12:15:09,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:15:09
[2026-10-18 12:15:09,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:15:10,242.242 INFO    ] Initializing speech engine...
[2026-10-18 12:15:10,248.248 INFO    ] 2026-10-18 12:15:10
[2026-10-18 12:15:10,554.554 INFO    ] 2026-10-18 12:15:10
[2026-10-18 12:15:10,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:15:10,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:15:10,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:15:10,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:15:10,987.987 INFO    ] time= 18/10/2026 12:15:10
[2026-10-18 12:15:10,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:15:11,003.003 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:15:11,133.133 INFO    ] No existing commands found in stream
[2026-10-18 12:15:16,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:15:16,162.162 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-18 12:15:17,252.252 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:15:17,255.255 INFO    ] Checking for system updates...
[2026-10-18 12:15:17,296.296 INFO    ] 200
[2026-10-18 12:15:17,298.298 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 12:15:17,301.301 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-18 12:15:17,304.304 INFO    ] Checking for camera pi updates...
[2026-10-18 12:15:17,344.344 INFO    ] 200
[2026-10-18 12:15:17,347.347 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 12:15:17,350.350 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-18 12:15:17,352.352 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:15:17,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:15:17,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:15:17,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:15:19,408.408 INFO    ] ================================================
[2026-10-18 12:15:19,423.423 INFO    ] Launching Daemon at Sun Oct 18 12:15:19 IST 2026
[2026-10-18 12:15:19,435.435 INFO    ] ================================================
[2026-10-18 12:15:20,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:15:20
[2026-10-18 12:15:20,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:15:21,127.127 INFO    ] Initializing speech engine...
[2026-10-18 12:15:21,138.138 INFO    ] 2026-10-18 12:15:21
[2026-10-18 12:15:21,433.433 INFO    ] 2026-10-18 12:15:21
[2026-10-18 12:15:21,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:15:21,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:15:21,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:15:21,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:15:21,978.978 INFO    ] time= 18/10/2026 12:15:21
[2026-10-18 12:15:22,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:15:22,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:15:22,142.142 INFO    ] No existing commands found in stream
[2026-10-18 12:15:27,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:15:27,177.177 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-18 12:15:28,095.095 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:15:28,098.098 INFO    ] Checking for system updates...
[2026-10-18 12:15:28,134.134 INFO    ] 200
[2026-10-18 12:15:28,136.136 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:15:28,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:15:28,200.200 INFO    ] No update needed
[2026-10-18 12:15:28,202.202 INFO    ] Checking for camera pi updates...
[2026-10-18 12:15:28,240.240 INFO    ] 200
[2026-10-18 12:15:28,242.242 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:15:28,282.282 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:15:38,298.298 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:15:38,333.333 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:15:38,343.343 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:15:38,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:15:38,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:15:38,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:15:40,397.397 INFO    ] ================================================
[2026-10-18 12:15:40,413.413 INFO    ] Launching Daemon at Sun Oct 18 12:15:40 IST 2026
[2026-10-18 12:15:40,425.425 INFO    ] ================================================
[2026-10-18 12:15:40,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:15:40
[2026-10-18 12:15:41,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:15:41,846.846 INFO    ] Initializing speech engine...
[2026-10-18 12:15:41,855.855 INFO    ] 2026-10-18 12:15:41
[2026-10-18 12:15:42,101.101 INFO    ] 2026-10-18 12:15:42
[2026-10-18 12:15:42,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:15:42,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:15:42,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:15:42,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:15:42,652.652 INFO    ] time= 18/10/2026 12:15:42
[2026-10-18 12:15:42,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:15:42,675.675 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:15:42,808.808 INFO    ] No existing commands found in stream
[2026-10-18 12:15:47,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:15:47,834.834 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-18 12:15:50,449.449 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:15:50,452.452 INFO    ] Checking for system updates...
[2026-10-18 12:15:50,492.492 INFO    ] 200
[2026-10-18 12:15:50,495.495 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:15:50,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:15:50,553.553 INFO    ] No update needed
[2026-10-18 12:15:50,555.555 INFO    ] Checking for camera pi updates...
[2026-10-18 12:15:50,594.594 INFO    ] 200
[2026-10-18 12:15:50,597.597 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:15:50,643.643 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:16:00,660.660 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:16:00,700.700 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:16:00,711.711 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:16:00,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:16:00,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:16:00,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:16:02,777.777 INFO    ] ================================================
[2026-10-18 12:16:02,793.793 INFO    ] Launching Daemon at Sun Oct 18 12:16:02 IST 2026
[2026-10-18 12:16:02,804.804 INFO    ] ================================================
[2026-10-18 12:16:03,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:16:03
[2026-10-18 12:16:04,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:16:04,281.281 INFO    ] Initializing speech engine...
[2026-10-18 12:16:04,302.302 INFO    ] 2026-10-18 12:16:04
[2026-10-18 12:16:04,568.568 INFO    ] 2026-10-18 12:16:04
[2026-10-18 12:16:04,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:16:04,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:16:04,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:16:04,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:16:04,985.985 INFO    ] time= 18/10/2026 12:16:04
[2026-10-18 12:16:05,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:16:05,060.060 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:16:05,187.187 INFO    ] No existing commands found in stream
[2026-10-18 12:16:10,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:16:10,214.214 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-18 12:16:11,494.494 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:16:11,497.497 INFO    ] Checking for system updates...
[2026-10-18 12:16:11,533.533 INFO    ] 200
[2026-10-18 12:16:11,536.536 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:16:11,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:16:11,590.590 INFO    ] No update needed
[2026-10-18 12:16:11,592.592 INFO    ] Checking for camera pi updates...
[2026-10-18 12:16:11,629.629 INFO    ] 200
[2026-10-18 12:16:11,632.632 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:16:11,673.673 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:16:21,688.688 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:16:21,723.723 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:16:21,733.733 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:16:21,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:16:21,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:16:21,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:16:23,786.786 INFO    ] ================================================
[2026-10-18 12:16:23,802.802 INFO    ] Launching Daemon at Sun Oct 18 12:16:23 IST 2026
[2026-10-18 12:16:23,816.816 INFO    ] ================================================
[2026-10-18 12:16:24,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:16:24
[2026-10-18 12:16:25,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:16:25,281.281 INFO    ] Initializing speech engine...
[2026-10-18 12:16:25,289.289 INFO    ] 2026-10-18 12:16:25
[2026-10-18 12:16:25,531.531 INFO    ] 2026-10-18 12:16:25
[2026-10-18 12:16:25,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:16:25,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:16:25,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:16:26,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:16:26,084.084 INFO    ] time= 18/10/2026 12:16:26
[2026-10-18 12:16:26,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:16:26,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:16:26,253.253 INFO    ] No existing commands found in stream
[2026-10-18 12:16:31,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:16:31,293.293 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-18 12:16:33,735.735 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:16:33,738.738 INFO    ] Checking for system updates...
[2026-10-18 12:16:33,778.778 INFO    ] 200
[2026-10-18 12:16:33,780.780 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:16:33,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:16:33,834.834 INFO    ] No update needed
[2026-10-18 12:16:33,837.837 INFO    ] Checking for camera pi updates...
[2026-10-18 12:16:33,871.871 INFO    ] 200
[2026-10-18 12:16:33,873.873 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:16:33,914.914 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:16:43,929.929 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:16:43,963.963 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:16:43,973.973 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:16:43,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:16:43,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:16:43,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:16:46,026.026 INFO    ] ================================================
[2026-10-18 12:16:46,042.042 INFO    ] Launching Daemon at Sun Oct 18 12:16:46 IST 2026
[2026-10-18 12:16:46,053.053 INFO    ] ================================================
[2026-10-18 12:16:46,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:16:46
[2026-10-18 12:16:47,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:16:47,623.623 INFO    ] Initializing speech engine...
[2026-10-18 12:16:47,636.636 INFO    ] 2026-10-18 12:16:47
[2026-10-18 12:16:47,900.900 INFO    ] 2026-10-18 12:16:47
[2026-10-18 12:16:47,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:16:48,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:16:48,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:16:48,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:16:48,445.445 INFO    ] time= 18/10/2026 12:16:48
[2026-10-18 12:16:48,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:16:48,470.470 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:16:48,598.598 INFO    ] No existing commands found in stream
[2026-10-18 12:16:53,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:16:53,620.620 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-18 12:16:56,978.978 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:16:56,981.981 INFO    ] Checking for system updates...
[2026-10-18 12:16:57,018.018 INFO    ] 200
[2026-10-18 12:16:57,021.021 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:16:57,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:16:57,078.078 INFO    ] No update needed
[2026-10-18 12:16:57,081.081 INFO    ] Checking for camera pi updates...
[2026-10-18 12:16:57,115.115 INFO    ] 200
[2026-10-18 12:16:57,118.118 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:16:57,165.165 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:17:07,181.181 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:17:07,221.221 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:17:07,232.232 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:17:07,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:17:07,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:17:07,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:17:09,289.289 INFO    ] ================================================
[2026-10-18 12:17:09,304.304 INFO    ] Launching Daemon at Sun Oct 18 12:17:09 IST 2026
[2026-10-18 12:17:09,315.315 INFO    ] ================================================
[2026-10-18 12:17:09,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:17:09
[2026-10-18 12:17:10,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:17:10,747.747 INFO    ] Initializing speech engine...
[2026-10-18 12:17:10,756.756 INFO    ] 2026-10-18 12:17:10
[2026-10-18 12:17:11,005.005 INFO    ] 2026-10-18 12:17:10
[2026-10-18 12:17:11,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:17:11,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:17:11,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:17:11,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:17:11,467.467 INFO    ] time= 18/10/2026 12:17:11
[2026-10-18 12:17:11,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:17:11,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:17:11,733.733 INFO    ] No existing commands found in stream
[2026-10-18 12:17:16,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:17:16,749.749 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-18 12:17:18,612.612 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:17:18,615.615 INFO    ] Checking for system updates...
[2026-10-18 12:17:18,653.653 INFO    ] 200
[2026-10-18 12:17:18,656.656 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:17:18,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:17:18,711.711 INFO    ] No update needed
[2026-10-18 12:17:18,713.713 INFO    ] Checking for camera pi updates...
[2026-10-18 12:17:18,750.750 INFO    ] 200
[2026-10-18 12:17:18,753.753 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:17:18,798.798 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:17:28,813.813 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:17:28,848.848 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:17:28,857.857 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:17:28,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:17:28,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:17:28,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:17:30,909.909 INFO    ] ================================================
[2026-10-18 12:17:30,924.924 INFO    ] Launching Daemon at Sun Oct 18 12:17:30 IST 2026
[2026-10-18 12:17:30,936.936 INFO    ] ================================================
[2026-10-18 12:17:31,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:17:31
[2026-10-18 12:17:32,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:17:32,418.418 INFO    ] Initializing speech engine...
[2026-10-18 12:17:32,428.428 INFO    ] 2026-10-18 12:17:32
[2026-10-18 12:17:32,715.715 INFO    ] 2026-10-18 12:17:32
[2026-10-18 12:17:32,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:17:32,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:17:32,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:17:33,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:17:33,139.139 INFO    ] time= 18/10/2026 12:17:33
[2026-10-18 12:17:33,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:17:33,186.186 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:17:33,324.324 INFO    ] No existing commands found in stream
[2026-10-18 12:17:38,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:17:38,351.351 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-18 12:17:39,869.869 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:17:39,871.871 INFO    ] Checking for system updates...
[2026-10-18 12:17:39,908.908 INFO    ] 200
[2026-10-18 12:17:39,911.911 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:17:39,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:17:39,973.973 INFO    ] No update needed
[2026-10-18 12:17:39,976.976 INFO    ] Checking for camera pi updates...
[2026-10-18 12:17:40,013.013 INFO    ] 200
[2026-10-18 12:17:40,016.016 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:17:40,056.056 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:17:50,072.072 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:17:50,106.106 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:17:50,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:17:50,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:17:50,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:17:50,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:17:52,168.168 INFO    ] ================================================
[2026-10-18 12:17:52,183.183 INFO    ] Launching Daemon at Sun Oct 18 12:17:52 IST 2026
[2026-10-18 12:17:52,194.194 INFO    ] ================================================
[2026-10-18 12:17:52,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:17:52
[2026-10-18 12:17:53,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:17:53,692.692 INFO    ] Initializing speech engine...
[2026-10-18 12:17:53,711.711 INFO    ] 2026-10-18 12:17:53
[2026-10-18 12:17:53,962.962 INFO    ] 2026-10-18 12:17:53
[2026-10-18 12:17:53,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:17:54,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:17:54,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:17:54,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:17:54,449.449 INFO    ] time= 18/10/2026 12:17:54
[2026-10-18 12:17:54,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:17:54,539.539 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:17:54,691.691 INFO    ] No existing commands found in stream
[2026-10-18 12:17:59,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:17:59,718.718 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-18 12:18:02,641.641 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:18:02,649.649 INFO    ] Checking for system updates...
[2026-10-18 12:18:02,693.693 INFO    ] 200
[2026-10-18 12:18:02,696.696 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:18:02,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:18:02,762.762 INFO    ] No update needed
[2026-10-18 12:18:02,766.766 INFO    ] Checking for camera pi updates...
[2026-10-18 12:18:02,801.801 INFO    ] 200
[2026-10-18 12:18:02,804.804 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:18:02,858.858 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:18:12,874.874 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:18:12,912.912 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:18:12,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:18:12,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:18:12,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:18:12,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:18:14,977.977 INFO    ] ================================================
[2026-10-18 12:18:14,991.991 INFO    ] Launching Daemon at Sun Oct 18 12:18:14 IST 2026
[2026-10-18 12:18:15,002.002 INFO    ] ================================================
[2026-10-18 12:18:15,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:18:15
[2026-10-18 12:18:16,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:18:16,498.498 INFO    ] Initializing speech engine...
[2026-10-18 12:18:16,517.517 INFO    ] 2026-10-18 12:18:16
[2026-10-18 12:18:16,798.798 INFO    ] 2026-10-18 12:18:16
[2026-10-18 12:18:16,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:18:17,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:18:17,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:18:17,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:18:17,313.313 INFO    ] time= 18/10/2026 12:18:17
[2026-10-18 12:18:17,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:18:17,382.382 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:18:17,531.531 INFO    ] No existing commands found in stream
[2026-10-18 12:18:22,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:18:22,549.549 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-18 12:18:24,467.467 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:18:24,470.470 INFO    ] Checking for system updates...
[2026-10-18 12:18:24,506.506 INFO    ] 200
[2026-10-18 12:18:24,509.509 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:18:24,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:18:24,564.564 INFO    ] No update needed
[2026-10-18 12:18:24,567.567 INFO    ] Checking for camera pi updates...
[2026-10-18 12:18:24,601.601 INFO    ] 200
[2026-10-18 12:18:24,604.604 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:18:24,645.645 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:18:34,660.660 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:18:34,698.698 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:18:34,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:18:34,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:18:34,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:18:34,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:18:36,763.763 INFO    ] ================================================
[2026-10-18 12:18:36,778.778 INFO    ] Launching Daemon at Sun Oct 18 12:18:36 IST 2026
[2026-10-18 12:18:36,788.788 INFO    ] ================================================
[2026-10-18 12:18:37,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:18:37
[2026-10-18 12:18:37,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:18:38,203.203 INFO    ] Initializing speech engine...
[2026-10-18 12:18:38,223.223 INFO    ] 2026-10-18 12:18:38
[2026-10-18 12:18:38,474.474 INFO    ] 2026-10-18 12:18:38
[2026-10-18 12:18:38,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:18:38,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:18:38,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:18:38,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:18:38,986.986 INFO    ] time= 18/10/2026 12:18:38
[2026-10-18 12:18:39,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:18:39,054.054 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:18:39,187.187 INFO    ] No existing commands found in stream
[2026-10-18 12:18:44,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:18:44,216.216 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-18 12:18:46,759.759 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:18:46,762.762 INFO    ] Checking for system updates...
[2026-10-18 12:18:46,802.802 INFO    ] 200
[2026-10-18 12:18:46,804.804 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:18:46,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:18:46,874.874 INFO    ] No update needed
[2026-10-18 12:18:46,876.876 INFO    ] Checking for camera pi updates...
[2026-10-18 12:18:46,914.914 INFO    ] 200
[2026-10-18 12:18:46,917.917 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:18:46,967.967 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:18:56,984.984 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:18:57,023.023 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:18:57,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:18:57,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:18:57,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:18:57,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:18:59,089.089 INFO    ] ================================================
[2026-10-18 12:18:59,105.105 INFO    ] Launching Daemon at Sun Oct 18 12:18:59 IST 2026
[2026-10-18 12:18:59,115.115 INFO    ] ================================================
[2026-10-18 12:18:59,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:18:59
[2026-10-18 12:19:00,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:19:00,544.544 INFO    ] Initializing speech engine...
[2026-10-18 12:19:00,553.553 INFO    ] 2026-10-18 12:19:00
[2026-10-18 12:19:00,813.813 INFO    ] 2026-10-18 12:19:00
[2026-10-18 12:19:00,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:19:01,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:19:01,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:19:01,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:19:01,289.289 INFO    ] time= 18/10/2026 12:19:01
[2026-10-18 12:19:01,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:19:01,322.322 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:19:01,406.406 INFO    ] No existing commands found in stream
[2026-10-18 12:19:06,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:19:06,424.424 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-18 12:19:07,776.776 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:19:07,779.779 INFO    ] Checking for system updates...
[2026-10-18 12:19:07,814.814 INFO    ] 200
[2026-10-18 12:19:07,817.817 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:19:07,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:19:07,876.876 INFO    ] No update needed
[2026-10-18 12:19:07,878.878 INFO    ] Checking for camera pi updates...
[2026-10-18 12:19:07,912.912 INFO    ] 200
[2026-10-18 12:19:07,914.914 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:19:07,955.955 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:19:17,968.968 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:19:18,002.002 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:19:18,012.012 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:19:18,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:19:18,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:19:18,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:19:20,064.064 INFO    ] ================================================
[2026-10-18 12:19:20,079.079 INFO    ] Launching Daemon at Sun Oct 18 12:19:20 IST 2026
[2026-10-18 12:19:20,090.090 INFO    ] ================================================
[2026-10-18 12:19:20,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:19:20
[2026-10-18 12:19:21,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:19:21,701.701 INFO    ] Initializing speech engine...
[2026-10-18 12:19:21,709.709 INFO    ] 2026-10-18 12:19:21
[2026-10-18 12:19:22,026.026 INFO    ] 2026-10-18 12:19:21
[2026-10-18 12:19:22,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:19:22,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:19:22,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:19:22,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:19:22,548.548 INFO    ] time= 18/10/2026 12:19:22
[2026-10-18 12:19:22,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:19:22,599.599 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:19:22,744.744 INFO    ] No existing commands found in stream
[2026-10-18 12:19:27,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:19:27,784.784 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-18 12:19:29,805.805 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:19:29,808.808 INFO    ] Checking for system updates...
[2026-10-18 12:19:29,843.843 INFO    ] 200
[2026-10-18 12:19:29,846.846 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:19:29,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:19:29,902.902 INFO    ] No update needed
[2026-10-18 12:19:29,904.904 INFO    ] Checking for camera pi updates...
[2026-10-18 12:19:29,940.940 INFO    ] 200
[2026-10-18 12:19:29,942.942 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:19:29,984.984 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:19:39,999.999 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:19:40,039.039 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:19:40,050.050 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:19:40,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:19:40,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:19:40,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:19:42,105.105 INFO    ] ================================================
[2026-10-18 12:19:42,121.121 INFO    ] Launching Daemon at Sun Oct 18 12:19:42 IST 2026
[2026-10-18 12:19:42,132.132 INFO    ] ================================================
[2026-10-18 12:19:42,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:19:42
[2026-10-18 12:19:43,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:19:43,544.544 INFO    ] Initializing speech engine...
[2026-10-18 12:19:43,567.567 INFO    ] 2026-10-18 12:19:43
[2026-10-18 12:19:43,826.826 INFO    ] 2026-10-18 12:19:43
[2026-10-18 12:19:43,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:19:44,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:19:44,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:19:44,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:19:44,379.379 INFO    ] time= 18/10/2026 12:19:44
[2026-10-18 12:19:44,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:19:44,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:19:44,534.534 INFO    ] No existing commands found in stream
[2026-10-18 12:19:49,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:19:49,551.551 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-18 12:19:51,344.344 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:19:51,347.347 INFO    ] Checking for system updates...
[2026-10-18 12:19:51,384.384 INFO    ] 200
[2026-10-18 12:19:51,387.387 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:19:51,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:19:51,442.442 INFO    ] No update needed
[2026-10-18 12:19:51,445.445 INFO    ] Checking for camera pi updates...
[2026-10-18 12:19:51,482.482 INFO    ] 200
[2026-10-18 12:19:51,485.485 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:19:51,527.527 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:20:01,546.546 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:20:01,638.638 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:20:01,667.667 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:20:01,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:20:01,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:20:01,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:20:03,750.750 INFO    ] ================================================
[2026-10-18 12:20:03,765.765 INFO    ] Launching Daemon at Sun Oct 18 12:20:03 IST 2026
[2026-10-18 12:20:03,776.776 INFO    ] ================================================
[2026-10-18 12:20:04,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:20:04
[2026-10-18 12:20:05,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:20:05,420.420 INFO    ] Initializing speech engine...
[2026-10-18 12:20:05,428.428 INFO    ] 2026-10-18 12:20:05
[2026-10-18 12:20:05,700.700 INFO    ] 2026-10-18 12:20:05
[2026-10-18 12:20:05,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:20:05,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:20:06,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:20:06,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:20:06,270.270 INFO    ] time= 18/10/2026 12:20:06
[2026-10-18 12:20:06,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:20:06,299.299 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:20:06,441.441 INFO    ] No existing commands found in stream
[2026-10-18 12:20:11,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:20:11,471.471 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-18 12:20:12,590.590 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:20:12,593.593 INFO    ] Checking for system updates...
[2026-10-18 12:20:12,634.634 INFO    ] 200
[2026-10-18 12:20:12,637.637 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:20:12,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:20:12,703.703 INFO    ] No update needed
[2026-10-18 12:20:12,706.706 INFO    ] Checking for camera pi updates...
[2026-10-18 12:20:12,740.740 INFO    ] 200
[2026-10-18 12:20:12,743.743 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:20:12,785.785 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:20:22,801.801 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:20:22,842.842 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:20:22,853.853 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:20:22,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:20:22,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:20:22,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:20:24,910.910 INFO    ] ================================================
[2026-10-18 12:20:24,925.925 INFO    ] Launching Daemon at Sun Oct 18 12:20:24 IST 2026
[2026-10-18 12:20:24,936.936 INFO    ] ================================================
[2026-10-18 12:20:25,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:20:25
[2026-10-18 12:20:26,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:20:26,431.431 INFO    ] Initializing speech engine...
[2026-10-18 12:20:26,449.449 INFO    ] 2026-10-18 12:20:26
[2026-10-18 12:20:26,702.702 INFO    ] 2026-10-18 12:20:26
[2026-10-18 12:20:26,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:20:26,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:20:27,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:20:27,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:20:27,178.178 INFO    ] time= 18/10/2026 12:20:27
[2026-10-18 12:20:27,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:20:27,280.280 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:20:27,415.415 INFO    ] No existing commands found in stream
[2026-10-18 12:20:32,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:20:32,446.446 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-18 12:20:35,638.638 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:20:35,640.640 INFO    ] Checking for system updates...
[2026-10-18 12:20:35,676.676 INFO    ] 200
[2026-10-18 12:20:35,679.679 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:20:35,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:20:35,733.733 INFO    ] No update needed
[2026-10-18 12:20:35,736.736 INFO    ] Checking for camera pi updates...
[2026-10-18 12:20:35,773.773 INFO    ] 200
[2026-10-18 12:20:35,776.776 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:20:35,821.821 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:20:45,835.835 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:20:45,870.870 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:20:45,880.880 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:20:45,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:20:45,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:20:45,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:20:47,931.931 INFO    ] ================================================
[2026-10-18 12:20:47,947.947 INFO    ] Launching Daemon at Sun Oct 18 12:20:47 IST 2026
[2026-10-18 12:20:47,958.958 INFO    ] ================================================
[2026-10-18 12:20:48,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:20:48
[2026-10-18 12:20:49,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:20:49,497.497 INFO    ] Initializing speech engine...
[2026-10-18 12:20:49,505.505 INFO    ] 2026-10-18 12:20:49
[2026-10-18 12:20:49,757.757 INFO    ] 2026-10-18 12:20:49
[2026-10-18 12:20:49,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:20:50,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:20:50,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:20:50,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:20:50,326.326 INFO    ] time= 18/10/2026 12:20:50
[2026-10-18 12:20:50,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:20:50,351.351 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:20:50,483.483 INFO    ] No existing commands found in stream
[2026-10-18 12:20:55,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:20:55,498.498 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-18 12:20:56,316.316 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:20:56,318.318 INFO    ] Checking for system updates...
[2026-10-18 12:20:56,358.358 INFO    ] 200
[2026-10-18 12:20:56,360.360 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:20:56,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:20:56,414.414 INFO    ] No update needed
[2026-10-18 12:20:56,417.417 INFO    ] Checking for camera pi updates...
[2026-10-18 12:20:56,450.450 INFO    ] 200
[2026-10-18 12:20:56,453.453 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:20:56,494.494 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:21:06,509.509 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:21:06,544.544 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:21:06,553.553 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:21:06,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:21:06,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:21:06,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:21:08,606.606 INFO    ] ================================================
[2026-10-18 12:21:08,621.621 INFO    ] Launching Daemon at Sun Oct 18 12:21:08 IST 2026
[2026-10-18 12:21:08,632.632 INFO    ] ================================================
[2026-10-18 12:21:09,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:21:09
[2026-10-18 12:21:09,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:21:10,093.093 INFO    ] Initializing speech engine...
[2026-10-18 12:21:10,099.099 INFO    ] 2026-10-18 12:21:10
[2026-10-18 12:21:10,359.359 INFO    ] 2026-10-18 12:21:10
[2026-10-18 12:21:10,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:21:10,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:21:10,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:21:10,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:21:10,848.848 INFO    ] time= 18/10/2026 12:21:10
[2026-10-18 12:21:10,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:21:10,911.911 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:21:11,061.061 INFO    ] No existing commands found in stream
[2026-10-18 12:21:16,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:21:16,089.089 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-18 12:21:19,368.368 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:21:19,371.371 INFO    ] Checking for system updates...
[2026-10-18 12:21:19,407.407 INFO    ] 200
[2026-10-18 12:21:19,409.409 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:21:19,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:21:19,463.463 INFO    ] No update needed
[2026-10-18 12:21:19,466.466 INFO    ] Checking for camera pi updates...
[2026-10-18 12:21:19,504.504 INFO    ] 200
[2026-10-18 12:21:19,507.507 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:21:19,549.549 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:21:29,565.565 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:21:29,600.600 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:21:29,610.610 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:21:29,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:21:29,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:21:29,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:21:31,664.664 INFO    ] ================================================
[2026-10-18 12:21:31,680.680 INFO    ] Launching Daemon at Sun Oct 18 12:21:31 IST 2026
[2026-10-18 12:21:31,691.691 INFO    ] ================================================
[2026-10-18 12:21:32,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:21:32
[2026-10-18 12:21:32,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:21:33,234.234 INFO    ] Initializing speech engine...
[2026-10-18 12:21:33,243.243 INFO    ] 2026-10-18 12:21:33
[2026-10-18 12:21:33,545.545 INFO    ] 2026-10-18 12:21:33
[2026-10-18 12:21:33,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:21:33,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:21:33,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:21:34,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:21:34,076.076 INFO    ] time= 18/10/2026 12:21:34
[2026-10-18 12:21:34,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:21:34,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:21:34,333.333 INFO    ] No existing commands found in stream
[2026-10-18 12:21:39,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:21:39,372.372 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-18 12:21:40,746.746 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:21:40,748.748 INFO    ] Checking for system updates...
[2026-10-18 12:21:40,784.784 INFO    ] 200
[2026-10-18 12:21:40,787.787 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:21:40,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:21:40,842.842 INFO    ] No update needed
[2026-10-18 12:21:40,844.844 INFO    ] Checking for camera pi updates...
[2026-10-18 12:21:40,878.878 INFO    ] 200
[2026-10-18 12:21:40,881.881 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:21:40,921.921 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:21:50,936.936 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:21:50,972.972 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:21:50,982.982 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:21:50,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:21:50,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:21:50,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:21:53,034.034 INFO    ] ================================================
[2026-10-18 12:21:53,050.050 INFO    ] Launching Daemon at Sun Oct 18 12:21:53 IST 2026
[2026-10-18 12:21:53,060.060 INFO    ] ================================================
[2026-10-18 12:21:53,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:21:53
[2026-10-18 12:21:54,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:21:54,535.535 INFO    ] Initializing speech engine...
[2026-10-18 12:21:54,550.550 INFO    ] 2026-10-18 12:21:54
[2026-10-18 12:21:54,815.815 INFO    ] 2026-10-18 12:21:54
[2026-10-18 12:21:54,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:21:55,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:21:55,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:21:55,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:21:55,366.366 INFO    ] time= 18/10/2026 12:21:55
[2026-10-18 12:21:55,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:21:55,391.391 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:21:55,518.518 INFO    ] No existing commands found in stream
[2026-10-18 12:22:00,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:22:00,549.549 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-18 12:22:02,464.464 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:22:02,467.467 INFO    ] Checking for system updates...
[2026-10-18 12:22:02,512.512 INFO    ] 200
[2026-10-18 12:22:02,515.515 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:22:02,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:22:02,580.580 INFO    ] No update needed
[2026-10-18 12:22:02,583.583 INFO    ] Checking for camera pi updates...
[2026-10-18 12:22:02,627.627 INFO    ] 200
[2026-10-18 12:22:02,629.629 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:22:02,675.675 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:22:12,691.691 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:22:12,725.725 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:22:12,735.735 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:22:12,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:22:12,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:22:12,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:22:14,787.787 INFO    ] ================================================
[2026-10-18 12:22:14,802.802 INFO    ] Launching Daemon at Sun Oct 18 12:22:14 IST 2026
[2026-10-18 12:22:14,813.813 INFO    ] ================================================
[2026-10-18 12:22:15,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:22:15
[2026-10-18 12:22:15,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:22:16,268.268 INFO    ] Initializing speech engine...
[2026-10-18 12:22:16,278.278 INFO    ] 2026-10-18 12:22:16
[2026-10-18 12:22:16,538.538 INFO    ] 2026-10-18 12:22:16
[2026-10-18 12:22:16,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:22:16,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:22:16,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:22:17,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:22:17,085.085 INFO    ] time= 18/10/2026 12:22:17
[2026-10-18 12:22:17,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:22:17,109.109 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:22:17,241.241 INFO    ] No existing commands found in stream
[2026-10-18 12:22:22,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:22:22,266.266 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-18 12:22:24,680.680 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:22:24,683.683 INFO    ] Checking for system updates...
[2026-10-18 12:22:24,723.723 INFO    ] 200
[2026-10-18 12:22:24,725.725 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:22:24,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:22:24,780.780 INFO    ] No update needed
[2026-10-18 12:22:24,782.782 INFO    ] Checking for camera pi updates...
[2026-10-18 12:22:24,816.816 INFO    ] 200
[2026-10-18 12:22:24,818.818 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:22:24,859.859 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:22:34,874.874 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:22:34,914.914 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:22:34,925.925 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:22:34,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:22:34,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:22:34,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:22:36,980.980 INFO    ] ================================================
[2026-10-18 12:22:37,995.995 INFO    ] Launching Daemon at Sun Oct 18 12:22:36 IST 2026
[2026-10-18 12:22:37,005.005 INFO    ] ================================================
[2026-10-18 12:22:37,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:22:37
[2026-10-18 12:22:38,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:22:38,440.440 INFO    ] Initializing speech engine...
[2026-10-18 12:22:38,458.458 INFO    ] 2026-10-18 12:22:38
[2026-10-18 12:22:38,711.711 INFO    ] 2026-10-18 12:22:38
[2026-10-18 12:22:38,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:22:39,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:22:39,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:22:39,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:22:39,249.249 INFO    ] time= 18/10/2026 12:22:39
[2026-10-18 12:22:39,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:22:39,287.287 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:22:39,439.439 INFO    ] No existing commands found in stream
[2026-10-18 12:22:44,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:22:44,460.460 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-18 12:22:47,647.647 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:22:47,650.650 INFO    ] Checking for system updates...
[2026-10-18 12:22:47,685.685 INFO    ] 200
[2026-10-18 12:22:47,688.688 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:22:47,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:22:47,742.742 INFO    ] No update needed
[2026-10-18 12:22:47,745.745 INFO    ] Checking for camera pi updates...
[2026-10-18 12:22:47,782.782 INFO    ] 200
[2026-10-18 12:22:47,784.784 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:22:47,829.829 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:22:57,844.844 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:22:57,879.879 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:22:57,889.889 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:22:57,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:22:57,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:22:57,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:22:59,941.941 INFO    ] ================================================
[2026-10-18 12:22:59,956.956 INFO    ] Launching Daemon at Sun Oct 18 12:22:59 IST 2026
[2026-10-18 12:22:59,967.967 INFO    ] ================================================
[2026-10-18 12:23:00,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:23:00
[2026-10-18 12:23:01,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:23:01,374.374 INFO    ] Initializing speech engine...
[2026-10-18 12:23:01,382.382 INFO    ] 2026-10-18 12:23:01
[2026-10-18 12:23:01,649.649 INFO    ] 2026-10-18 12:23:01
[2026-10-18 12:23:01,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:23:01,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:23:01,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:23:02,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:23:02,155.155 INFO    ] time= 18/10/2026 12:23:02
[2026-10-18 12:23:02,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:23:02,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:23:02,307.307 INFO    ] No existing commands found in stream
[2026-10-18 12:23:07,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:23:07,322.322 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-18 12:23:08,856.856 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:23:08,858.858 INFO    ] Checking for system updates...
[2026-10-18 12:23:08,897.897 INFO    ] 200
[2026-10-18 12:23:08,900.900 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:23:08,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:23:08,954.954 INFO    ] No update needed
[2026-10-18 12:23:08,957.957 INFO    ] Checking for camera pi updates...
[2026-10-18 12:23:08,994.994 INFO    ] 200
[2026-10-18 12:23:08,996.996 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:23:09,036.036 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:23:19,050.050 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:23:19,085.085 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:23:19,094.094 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:23:19,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:23:19,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:23:19,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:23:21,148.148 INFO    ] ================================================
[2026-10-18 12:23:21,163.163 INFO    ] Launching Daemon at Sun Oct 18 12:23:21 IST 2026
[2026-10-18 12:23:21,174.174 INFO    ] ================================================
[2026-10-18 12:23:21,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:23:21
[2026-10-18 12:23:22,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:23:22,805.805 INFO    ] Initializing speech engine...
[2026-10-18 12:23:22,817.817 INFO    ] 2026-10-18 12:23:22
[2026-10-18 12:23:23,098.098 INFO    ] 2026-10-18 12:23:23
[2026-10-18 12:23:23,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:23:23,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:23:23,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:23:23,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:23:23,650.650 INFO    ] time= 18/10/2026 12:23:23
[2026-10-18 12:23:23,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:23:23,677.677 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:23:23,810.810 INFO    ] No existing commands found in stream
[2026-10-18 12:23:28,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:23:28,834.834 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-18 12:23:31,735.735 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:23:31,740.740 INFO    ] Checking for system updates...
[2026-10-18 12:23:31,780.780 INFO    ] 200
[2026-10-18 12:23:31,783.783 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:23:31,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:23:31,845.845 INFO    ] No update needed
[2026-10-18 12:23:31,848.848 INFO    ] Checking for camera pi updates...
[2026-10-18 12:23:31,888.888 INFO    ] 200
[2026-10-18 12:23:31,891.891 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:23:31,935.935 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:23:41,950.950 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:23:41,985.985 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:23:41,995.995 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:23:41,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:23:42,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:23:42,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:23:44,048.048 INFO    ] ================================================
[2026-10-18 12:23:44,064.064 INFO    ] Launching Daemon at Sun Oct 18 12:23:44 IST 2026
[2026-10-18 12:23:44,075.075 INFO    ] ================================================
[2026-10-18 12:23:44,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:23:44
[2026-10-18 12:23:45,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:23:45,490.490 INFO    ] Initializing speech engine...
[2026-10-18 12:23:45,503.503 INFO    ] 2026-10-18 12:23:45
[2026-10-18 12:23:45,790.790 INFO    ] 2026-10-18 12:23:45
[2026-10-18 12:23:45,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:23:46,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:23:46,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:23:46,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:23:46,210.210 INFO    ] time= 18/10/2026 12:23:46
[2026-10-18 12:23:46,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:23:46,222.222 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:23:46,300.300 INFO    ] No existing commands found in stream
[2026-10-18 12:23:51,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:23:51,338.338 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-18 12:23:52,650.650 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:23:52,652.652 INFO    ] Checking for system updates...
[2026-10-18 12:23:52,692.692 INFO    ] 200
[2026-10-18 12:23:52,694.694 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:23:52,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:23:52,755.755 INFO    ] No update needed
[2026-10-18 12:23:52,758.758 INFO    ] Checking for camera pi updates...
[2026-10-18 12:23:52,791.791 INFO    ] 200
[2026-10-18 12:23:52,793.793 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:23:52,834.834 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:24:02,850.850 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:24:02,889.889 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:24:02,900.900 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:24:02,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:24:02,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:24:02,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:24:04,960.960 INFO    ] ================================================
[2026-10-18 12:24:04,975.975 INFO    ] Launching Daemon at Sun Oct 18 12:24:04 IST 2026
[2026-10-18 12:24:04,986.986 INFO    ] ================================================
[2026-10-18 12:24:05,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:24:05
[2026-10-18 12:24:06,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:24:06,410.410 INFO    ] Initializing speech engine...
[2026-10-18 12:24:06,417.417 INFO    ] 2026-10-18 12:24:06
[2026-10-18 12:24:06,674.674 INFO    ] 2026-10-18 12:24:06
[2026-10-18 12:24:06,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:24:06,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:24:06,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:24:07,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:24:07,182.182 INFO    ] time= 18/10/2026 12:24:07
[2026-10-18 12:24:07,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:24:07,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:24:07,393.393 INFO    ] No existing commands found in stream
[2026-10-18 12:24:12,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:24:12,409.409 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-18 12:24:14,733.733 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:24:14,736.736 INFO    ] Checking for system updates...
[2026-10-18 12:24:14,771.771 INFO    ] 200
[2026-10-18 12:24:14,774.774 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:24:14,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:24:14,831.831 INFO    ] No update needed
[2026-10-18 12:24:14,833.833 INFO    ] Checking for camera pi updates...
[2026-10-18 12:24:14,871.871 INFO    ] 200
[2026-10-18 12:24:14,873.873 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:24:14,913.913 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:24:24,928.928 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:24:24,965.965 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:24:24,976.976 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:24:24,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:24:24,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:24:24,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:24:27,031.031 INFO    ] ================================================
[2026-10-18 12:24:27,046.046 INFO    ] Launching Daemon at Sun Oct 18 12:24:27 IST 2026
[2026-10-18 12:24:27,056.056 INFO    ] ================================================
[2026-10-18 12:24:27,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:24:27
[2026-10-18 12:24:28,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:24:28,583.583 INFO    ] Initializing speech engine...
[2026-10-18 12:24:28,592.592 INFO    ] 2026-10-18 12:24:28
[2026-10-18 12:24:28,841.841 INFO    ] 2026-10-18 12:24:28
[2026-10-18 12:24:28,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:24:29,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:24:29,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:24:29,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:24:29,346.346 INFO    ] time= 18/10/2026 12:24:29
[2026-10-18 12:24:29,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:24:29,419.419 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:24:29,561.561 INFO    ] No existing commands found in stream
[2026-10-18 12:24:34,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:24:34,581.581 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-18 12:24:37,773.773 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:24:37,776.776 INFO    ] Checking for system updates...
[2026-10-18 12:24:37,811.811 INFO    ] 200
[2026-10-18 12:24:37,813.813 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:24:37,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:24:37,867.867 INFO    ] No update needed
[2026-10-18 12:24:37,870.870 INFO    ] Checking for camera pi updates...
[2026-10-18 12:24:37,903.903 INFO    ] 200
[2026-10-18 12:24:37,905.905 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:24:37,946.946 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:24:47,960.960 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:24:47,995.995 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:24:48,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:24:48,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:24:48,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:24:48,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:24:50,057.057 INFO    ] ================================================
[2026-10-18 12:24:50,072.072 INFO    ] Launching Daemon at Sun Oct 18 12:24:50 IST 2026
[2026-10-18 12:24:50,083.083 INFO    ] ================================================
[2026-10-18 12:24:50,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:24:50
[2026-10-18 12:24:51,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:24:51,504.504 INFO    ] Initializing speech engine...
[2026-10-18 12:24:51,513.513 INFO    ] 2026-10-18 12:24:51
[2026-10-18 12:24:51,759.759 INFO    ] 2026-10-18 12:24:51
[2026-10-18 12:24:51,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:24:52,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:24:52,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:24:52,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:24:52,331.331 INFO    ] time= 18/10/2026 12:24:52
[2026-10-18 12:24:52,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:24:52,369.369 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:24:52,525.525 INFO    ] No existing commands found in stream
[2026-10-18 12:24:57,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:24:57,553.553 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-18 12:24:58,980.980 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:24:58,982.982 INFO    ] Checking for system updates...
[2026-10-18 12:24:59,023.023 INFO    ] 200
[2026-10-18 12:24:59,025.025 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:24:59,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:24:59,087.087 INFO    ] No update needed
[2026-10-18 12:24:59,089.089 INFO    ] Checking for camera pi updates...
[2026-10-18 12:24:59,124.124 INFO    ] 200
[2026-10-18 12:24:59,126.126 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:24:59,169.169 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:25:09,183.183 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:25:09,225.225 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:25:09,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:25:09,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:25:09,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:25:09,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:25:11,295.295 INFO    ] ================================================
[2026-10-18 12:25:11,310.310 INFO    ] Launching Daemon at Sun Oct 18 12:25:11 IST 2026
[2026-10-18 12:25:11,321.321 INFO    ] ================================================
[2026-10-18 12:25:11,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:25:11
[2026-10-18 12:25:12,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:25:12,735.735 INFO    ] Initializing speech engine...
[2026-10-18 12:25:12,743.743 INFO    ] 2026-10-18 12:25:12
[2026-10-18 12:25:13,049.049 INFO    ] 2026-10-18 12:25:13
[2026-10-18 12:25:13,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:25:13,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:25:13,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:25:13,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:25:13,450.450 INFO    ] time= 18/10/2026 12:25:13
[2026-10-18 12:25:13,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:25:13,502.502 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:25:13,647.647 INFO    ] No existing commands found in stream
[2026-10-18 12:25:18,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:25:18,665.665 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-18 12:25:19,941.941 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:25:19,944.944 INFO    ] Checking for system updates...
[2026-10-18 12:25:19,986.986 INFO    ] 200
[2026-10-18 12:25:19,989.989 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:25:20,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:25:20,045.045 INFO    ] No update needed
[2026-10-18 12:25:20,048.048 INFO    ] Checking for camera pi updates...
[2026-10-18 12:25:20,088.088 INFO    ] 200
[2026-10-18 12:25:20,091.091 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:25:20,138.138 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:25:30,154.154 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:25:30,195.195 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:25:30,207.207 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:25:30,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:25:30,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:25:30,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:25:32,265.265 INFO    ] ================================================
[2026-10-18 12:25:32,289.289 INFO    ] Launching Daemon at Sun Oct 18 12:25:32 IST 2026
[2026-10-18 12:25:32,301.301 INFO    ] ================================================
[2026-10-18 12:25:32,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:25:32
[2026-10-18 12:25:33,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:25:33,760.760 INFO    ] Initializing speech engine...
[2026-10-18 12:25:33,780.780 INFO    ] 2026-10-18 12:25:33
[2026-10-18 12:25:34,031.031 INFO    ] 2026-10-18 12:25:34
[2026-10-18 12:25:34,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:25:34,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:25:34,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:25:34,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:25:34,593.593 INFO    ] time= 18/10/2026 12:25:34
[2026-10-18 12:25:34,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:25:34,623.623 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:25:34,765.765 INFO    ] No existing commands found in stream
[2026-10-18 12:25:39,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:25:39,783.783 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-18 12:25:42,755.755 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:25:42,758.758 INFO    ] Checking for system updates...
[2026-10-18 12:25:42,793.793 INFO    ] 200
[2026-10-18 12:25:42,796.796 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:25:42,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:25:42,851.851 INFO    ] No update needed
[2026-10-18 12:25:42,853.853 INFO    ] Checking for camera pi updates...
[2026-10-18 12:25:42,887.887 INFO    ] 200
[2026-10-18 12:25:42,889.889 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:25:42,929.929 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:25:52,944.944 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:25:52,979.979 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:25:52,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:25:52,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:25:52,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:25:53,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:25:55,042.042 INFO    ] ================================================
[2026-10-18 12:25:55,058.058 INFO    ] Launching Daemon at Sun Oct 18 12:25:55 IST 2026
[2026-10-18 12:25:55,068.068 INFO    ] ================================================
[2026-10-18 12:25:55,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:25:55
[2026-10-18 12:25:56,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:25:56,544.544 INFO    ] Initializing speech engine...
[2026-10-18 12:25:56,553.553 INFO    ] 2026-10-18 12:25:56
[2026-10-18 12:25:56,813.813 INFO    ] 2026-10-18 12:25:56
[2026-10-18 12:25:56,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:25:57,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:25:57,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:25:57,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:25:57,313.313 INFO    ] time= 18/10/2026 12:25:57
[2026-10-18 12:25:57,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:25:57,372.372 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:25:57,507.507 INFO    ] No existing commands found in stream
[2026-10-18 12:26:02,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:26:02,532.532 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-18 12:26:05,565.565 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:26:05,568.568 INFO    ] Checking for system updates...
[2026-10-18 12:26:05,604.604 INFO    ] 200
[2026-10-18 12:26:05,606.606 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:26:05,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:26:05,663.663 INFO    ] No update needed
[2026-10-18 12:26:05,665.665 INFO    ] Checking for camera pi updates...
[2026-10-18 12:26:05,699.699 INFO    ] 200
[2026-10-18 12:26:05,701.701 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:26:05,741.741 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:26:15,757.757 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:26:15,793.793 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:26:15,802.802 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:26:15,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:26:15,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:26:15,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:26:17,855.855 INFO    ] ================================================
[2026-10-18 12:26:17,870.870 INFO    ] Launching Daemon at Sun Oct 18 12:26:17 IST 2026
[2026-10-18 12:26:17,881.881 INFO    ] ================================================
[2026-10-18 12:26:18,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:26:18
[2026-10-18 12:26:19,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:26:19,314.314 INFO    ] Initializing speech engine...
[2026-10-18 12:26:19,328.328 INFO    ] 2026-10-18 12:26:19
[2026-10-18 12:26:19,584.584 INFO    ] 2026-10-18 12:26:19
[2026-10-18 12:26:19,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:26:19,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:26:19,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:26:20,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:26:20,137.137 INFO    ] time= 18/10/2026 12:26:20
[2026-10-18 12:26:20,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:26:20,162.162 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:26:20,290.290 INFO    ] No existing commands found in stream
[2026-10-18 12:26:25,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:26:25,310.310 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-18 12:26:28,276.276 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:26:28,278.278 INFO    ] Checking for system updates...
[2026-10-18 12:26:28,314.314 INFO    ] 200
[2026-10-18 12:26:28,317.317 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:26:28,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:26:28,379.379 INFO    ] No update needed
[2026-10-18 12:26:28,381.381 INFO    ] Checking for camera pi updates...
[2026-10-18 12:26:28,416.416 INFO    ] 200
[2026-10-18 12:26:28,419.419 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:26:28,460.460 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:26:38,474.474 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:26:38,509.509 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:26:38,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:26:38,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:26:38,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:26:38,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:26:40,572.572 INFO    ] ================================================
[2026-10-18 12:26:40,588.588 INFO    ] Launching Daemon at Sun Oct 18 12:26:40 IST 2026
[2026-10-18 12:26:40,598.598 INFO    ] ================================================
[2026-10-18 12:26:41,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:26:41
[2026-10-18 12:26:41,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:26:42,036.036 INFO    ] Initializing speech engine...
[2026-10-18 12:26:42,051.051 INFO    ] 2026-10-18 12:26:42
[2026-10-18 12:26:42,317.317 INFO    ] 2026-10-18 12:26:42
[2026-10-18 12:26:42,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:26:42,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:26:42,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:26:42,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:26:42,838.838 INFO    ] time= 18/10/2026 12:26:42
[2026-10-18 12:26:42,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:26:42,895.895 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:26:43,046.046 INFO    ] No existing commands found in stream
[2026-10-18 12:26:48,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:26:48,077.077 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-18 12:26:51,623.623 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:26:51,626.626 INFO    ] Checking for system updates...
[2026-10-18 12:26:51,667.667 INFO    ] 200
[2026-10-18 12:26:51,670.670 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:26:51,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:26:51,724.724 INFO    ] No update needed
[2026-10-18 12:26:51,727.727 INFO    ] Checking for camera pi updates...
[2026-10-18 12:26:51,765.765 INFO    ] 200
[2026-10-18 12:26:51,767.767 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:26:51,808.808 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:27:01,824.824 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:27:01,871.871 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:27:01,884.884 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:27:01,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:27:01,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:27:01,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:27:03,944.944 INFO    ] ================================================
[2026-10-18 12:27:03,960.960 INFO    ] Launching Daemon at Sun Oct 18 12:27:03 IST 2026
[2026-10-18 12:27:03,970.970 INFO    ] ================================================
[2026-10-18 12:27:04,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:27:04
[2026-10-18 12:27:05,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:27:05,609.609 INFO    ] Initializing speech engine...
[2026-10-18 12:27:05,623.623 INFO    ] 2026-10-18 12:27:05
[2026-10-18 12:27:05,903.903 INFO    ] 2026-10-18 12:27:05
[2026-10-18 12:27:05,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:27:06,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:27:06,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:27:06,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:27:06,454.454 INFO    ] time= 18/10/2026 12:27:06
[2026-10-18 12:27:06,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:27:06,491.491 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:27:06,597.597 INFO    ] No existing commands found in stream
[2026-10-18 12:27:11,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:27:11,631.631 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-18 12:27:14,430.430 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:27:14,434.434 INFO    ] Checking for system updates...
[2026-10-18 12:27:14,471.471 INFO    ] 200
[2026-10-18 12:27:14,474.474 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:27:14,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:27:14,544.544 INFO    ] No update needed
[2026-10-18 12:27:14,547.547 INFO    ] Checking for camera pi updates...
[2026-10-18 12:27:14,590.590 INFO    ] 200
[2026-10-18 12:27:14,592.592 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:27:14,639.639 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:27:24,655.655 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6e150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:27:24,696.696 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:27:24,707.707 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:27:24,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:27:24,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:27:24,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:27:26,762.762 INFO    ] ================================================
[2026-10-18 12:27:26,777.777 INFO    ] Launching Daemon at Sun Oct 18 12:27:26 IST 2026
[2026-10-18 12:27:26,788.788 INFO    ] ================================================
[2026-10-18 12:27:27,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:27:27
[2026-10-18 12:27:28,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:27:28,423.423 INFO    ] Initializing speech engine...
[2026-10-18 12:27:28,432.432 INFO    ] 2026-10-18 12:27:28
[2026-10-18 12:27:28,724.724 INFO    ] 2026-10-18 12:27:28
[2026-10-18 12:27:28,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:27:29,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:27:29,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:27:29,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:27:29,258.258 INFO    ] time= 18/10/2026 12:27:29
[2026-10-18 12:27:29,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:27:29,308.308 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:27:29,489.489 INFO    ] No existing commands found in stream
[2026-10-18 12:27:34,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:27:34,524.524 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-18 12:27:37,403.403 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:27:37,406.406 INFO    ] Checking for system updates...
[2026-10-18 12:27:37,443.443 INFO    ] 200
[2026-10-18 12:27:37,446.446 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:27:37,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:27:37,509.509 INFO    ] No update needed
[2026-10-18 12:27:37,512.512 INFO    ] Checking for camera pi updates...
[2026-10-18 12:27:37,547.547 INFO    ] 200
[2026-10-18 12:27:37,549.549 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:27:37,591.591 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:27:47,607.607 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:27:47,647.647 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:27:47,659.659 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:27:47,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:27:47,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:27:47,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:27:49,721.721 INFO    ] ================================================
[2026-10-18 12:27:49,737.737 INFO    ] Launching Daemon at Sun Oct 18 12:27:49 IST 2026
[2026-10-18 12:27:49,747.747 INFO    ] ================================================
[2026-10-18 12:27:50,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:27:50
[2026-10-18 12:27:50,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:27:51,184.184 INFO    ] Initializing speech engine...
[2026-10-18 12:27:51,190.190 INFO    ] 2026-10-18 12:27:51
[2026-10-18 12:27:51,450.450 INFO    ] 2026-10-18 12:27:51
[2026-10-18 12:27:51,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:27:51,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:27:51,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:27:51,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:27:51,934.934 INFO    ] time= 18/10/2026 12:27:51
[2026-10-18 12:27:51,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:27:52,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:27:52,136.136 INFO    ] No existing commands found in stream
[2026-10-18 12:27:57,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:27:57,159.159 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-18 12:28:01,237.237 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:28:01,239.239 INFO    ] Checking for system updates...
[2026-10-18 12:28:01,275.275 INFO    ] 200
[2026-10-18 12:28:01,278.278 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:28:01,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:28:01,336.336 INFO    ] No update needed
[2026-10-18 12:28:01,339.339 INFO    ] Checking for camera pi updates...
[2026-10-18 12:28:01,376.376 INFO    ] 200
[2026-10-18 12:28:01,378.378 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:28:01,419.419 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:28:11,434.434 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:28:11,469.469 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:28:11,479.479 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:28:11,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:28:11,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:28:11,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:28:13,531.531 INFO    ] ================================================
[2026-10-18 12:28:13,546.546 INFO    ] Launching Daemon at Sun Oct 18 12:28:13 IST 2026
[2026-10-18 12:28:13,557.557 INFO    ] ================================================
[2026-10-18 12:28:14,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:28:14
[2026-10-18 12:28:14,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:28:15,013.013 INFO    ] Initializing speech engine...
[2026-10-18 12:28:15,026.026 INFO    ] 2026-10-18 12:28:15
[2026-10-18 12:28:15,306.306 INFO    ] 2026-10-18 12:28:15
[2026-10-18 12:28:15,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:28:15,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:28:15,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:28:15,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:28:15,856.856 INFO    ] time= 18/10/2026 12:28:15
[2026-10-18 12:28:15,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:28:15,907.907 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:28:16,035.035 INFO    ] No existing commands found in stream
[2026-10-18 12:28:21,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:28:21,064.064 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-18 12:28:23,056.056 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:28:23,059.059 INFO    ] Checking for system updates...
[2026-10-18 12:28:23,102.102 INFO    ] 200
[2026-10-18 12:28:23,105.105 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:28:23,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:28:23,160.160 INFO    ] No update needed
[2026-10-18 12:28:23,163.163 INFO    ] Checking for camera pi updates...
[2026-10-18 12:28:23,197.197 INFO    ] 200
[2026-10-18 12:28:23,200.200 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:28:23,245.245 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:28:33,259.259 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:28:33,298.298 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:28:33,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:28:33,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:28:33,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:28:33,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:28:35,365.365 INFO    ] ================================================
[2026-10-18 12:28:35,380.380 INFO    ] Launching Daemon at Sun Oct 18 12:28:35 IST 2026
[2026-10-18 12:28:35,391.391 INFO    ] ================================================
[2026-10-18 12:28:35,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:28:35
[2026-10-18 12:28:36,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:28:36,814.814 INFO    ] Initializing speech engine...
[2026-10-18 12:28:36,823.823 INFO    ] 2026-10-18 12:28:36
[2026-10-18 12:28:37,074.074 INFO    ] 2026-10-18 12:28:37
[2026-10-18 12:28:37,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:28:37,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:28:37,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:28:37,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:28:37,619.619 INFO    ] time= 18/10/2026 12:28:37
[2026-10-18 12:28:37,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:28:37,650.650 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:28:37,799.799 INFO    ] No existing commands found in stream
[2026-10-18 12:28:42,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:28:42,813.813 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-18 12:28:47,212.212 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:28:47,214.214 INFO    ] Checking for system updates...
[2026-10-18 12:28:47,250.250 INFO    ] 200
[2026-10-18 12:28:47,252.252 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:28:47,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:28:47,307.307 INFO    ] No update needed
[2026-10-18 12:28:47,309.309 INFO    ] Checking for camera pi updates...
[2026-10-18 12:28:47,346.346 INFO    ] 200
[2026-10-18 12:28:47,348.348 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:28:47,388.388 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:28:57,403.403 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:28:57,438.438 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:28:57,448.448 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:28:57,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:28:57,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:28:57,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:28:59,501.501 INFO    ] ================================================
[2026-10-18 12:28:59,516.516 INFO    ] Launching Daemon at Sun Oct 18 12:28:59 IST 2026
[2026-10-18 12:28:59,527.527 INFO    ] ================================================
[2026-10-18 12:29:00,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:29:00
[2026-10-18 12:29:00,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:29:00,986.986 INFO    ] Initializing speech engine...
[2026-10-18 12:29:00,992.992 INFO    ] 2026-10-18 12:29:00
[2026-10-18 12:29:01,252.252 INFO    ] 2026-10-18 12:29:01
[2026-10-18 12:29:01,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:29:01,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:29:01,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:29:01,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:29:01,718.718 INFO    ] time= 18/10/2026 12:29:01
[2026-10-18 12:29:01,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:29:01,747.747 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:29:01,823.823 INFO    ] No existing commands found in stream
[2026-10-18 12:29:06,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:29:06,836.836 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-18 12:29:09,735.735 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:29:09,738.738 INFO    ] Checking for system updates...
[2026-10-18 12:29:09,773.773 INFO    ] 200
[2026-10-18 12:29:09,776.776 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:29:09,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:29:09,836.836 INFO    ] No update needed
[2026-10-18 12:29:09,838.838 INFO    ] Checking for camera pi updates...
[2026-10-18 12:29:09,874.874 INFO    ] 200
[2026-10-18 12:29:09,877.877 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:29:09,920.920 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:29:19,934.934 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:29:19,970.970 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:29:19,979.979 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:29:19,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:29:19,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:29:19,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:29:22,034.034 INFO    ] ================================================
[2026-10-18 12:29:22,050.050 INFO    ] Launching Daemon at Sun Oct 18 12:29:22 IST 2026
[2026-10-18 12:29:22,060.060 INFO    ] ================================================
[2026-10-18 12:29:22,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:29:22
[2026-10-18 12:29:23,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:29:23,650.650 INFO    ] Initializing speech engine...
[2026-10-18 12:29:23,659.659 INFO    ] 2026-10-18 12:29:23
[2026-10-18 12:29:23,928.928 INFO    ] 2026-10-18 12:29:23
[2026-10-18 12:29:23,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:29:24,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:29:24,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:29:24,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:29:24,408.408 INFO    ] time= 18/10/2026 12:29:24
[2026-10-18 12:29:24,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:29:24,499.499 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:29:24,653.653 INFO    ] No existing commands found in stream
[2026-10-18 12:29:29,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:29:29,675.675 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-18 12:29:31,270.270 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:29:31,273.273 INFO    ] Checking for system updates...
[2026-10-18 12:29:31,309.309 INFO    ] 200
[2026-10-18 12:29:31,311.311 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:29:31,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:29:31,371.371 INFO    ] No update needed
[2026-10-18 12:29:31,373.373 INFO    ] Checking for camera pi updates...
[2026-10-18 12:29:31,407.407 INFO    ] 200
[2026-10-18 12:29:31,409.409 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:29:31,449.449 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:29:41,464.464 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:29:41,498.498 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:29:41,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:29:41,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:29:41,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:29:41,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:29:43,560.560 INFO    ] ================================================
[2026-10-18 12:29:43,575.575 INFO    ] Launching Daemon at Sun Oct 18 12:29:43 IST 2026
[2026-10-18 12:29:43,585.585 INFO    ] ================================================
[2026-10-18 12:29:44,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:29:44
[2026-10-18 12:29:44,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:29:45,124.124 INFO    ] Initializing speech engine...
[2026-10-18 12:29:45,132.132 INFO    ] 2026-10-18 12:29:45
[2026-10-18 12:29:45,452.452 INFO    ] 2026-10-18 12:29:45
[2026-10-18 12:29:45,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:29:45,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:29:45,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:29:45,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:29:45,971.971 INFO    ] time= 18/10/2026 12:29:45
[2026-10-18 12:29:45,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:29:46,018.018 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:29:46,189.189 INFO    ] No existing commands found in stream
[2026-10-18 12:29:51,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:29:51,223.223 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-18 12:29:55,187.187 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:29:55,190.190 INFO    ] Checking for system updates...
[2026-10-18 12:29:55,226.226 INFO    ] 200
[2026-10-18 12:29:55,229.229 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:29:55,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:29:55,299.299 INFO    ] No update needed
[2026-10-18 12:29:55,301.301 INFO    ] Checking for camera pi updates...
[2026-10-18 12:29:55,341.341 INFO    ] 200
[2026-10-18 12:29:55,344.344 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:29:55,387.387 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:30:05,402.402 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:30:05,436.436 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:30:05,446.446 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:30:05,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:30:05,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:30:05,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:30:07,499.499 INFO    ] ================================================
[2026-10-18 12:30:07,514.514 INFO    ] Launching Daemon at Sun Oct 18 12:30:07 IST 2026
[2026-10-18 12:30:07,525.525 INFO    ] ================================================
[2026-10-18 12:30:08,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:30:08
[2026-10-18 12:30:08,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:30:08,941.941 INFO    ] Initializing speech engine...
[2026-10-18 12:30:08,960.960 INFO    ] 2026-10-18 12:30:08
[2026-10-18 12:30:09,211.211 INFO    ] 2026-10-18 12:30:09
[2026-10-18 12:30:09,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:30:09,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:30:09,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:30:09,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:30:09,714.714 INFO    ] time= 18/10/2026 12:30:09
[2026-10-18 12:30:09,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:30:09,786.786 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:30:09,935.935 INFO    ] No existing commands found in stream
[2026-10-18 12:30:14,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:30:14,950.950 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-18 12:30:17,762.762 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:30:17,766.766 INFO    ] Checking for system updates...
[2026-10-18 12:30:17,804.804 INFO    ] 200
[2026-10-18 12:30:17,807.807 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:30:17,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:30:17,865.865 INFO    ] No update needed
[2026-10-18 12:30:17,868.868 INFO    ] Checking for camera pi updates...
[2026-10-18 12:30:17,904.904 INFO    ] 200
[2026-10-18 12:30:17,906.906 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:30:17,947.947 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:30:27,962.962 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:30:27,997.997 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:30:28,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:30:28,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:30:28,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:30:28,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:30:30,059.059 INFO    ] ================================================
[2026-10-18 12:30:30,075.075 INFO    ] Launching Daemon at Sun Oct 18 12:30:30 IST 2026
[2026-10-18 12:30:30,086.086 INFO    ] ================================================
[2026-10-18 12:30:30,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:30:30
[2026-10-18 12:30:31,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:30:31,608.608 INFO    ] Initializing speech engine...
[2026-10-18 12:30:31,614.614 INFO    ] 2026-10-18 12:30:31
[2026-10-18 12:30:31,890.890 INFO    ] 2026-10-18 12:30:31
[2026-10-18 12:30:31,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:30:32,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:30:32,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:30:32,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:30:32,427.427 INFO    ] time= 18/10/2026 12:30:32
[2026-10-18 12:30:32,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:30:32,497.497 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:30:32,648.648 INFO    ] No existing commands found in stream
[2026-10-18 12:30:37,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:30:37,670.670 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-18 12:30:40,805.805 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:30:40,807.807 INFO    ] Checking for system updates...
[2026-10-18 12:30:40,843.843 INFO    ] 200
[2026-10-18 12:30:40,845.845 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:30:40,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:30:40,901.901 INFO    ] No update needed
[2026-10-18 12:30:40,903.903 INFO    ] Checking for camera pi updates...
[2026-10-18 12:30:40,939.939 INFO    ] 200
[2026-10-18 12:30:40,941.941 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:30:40,981.981 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:30:50,997.997 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:30:51,031.031 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:30:51,047.047 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:30:51,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:30:51,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:30:51,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:30:53,100.100 INFO    ] ================================================
[2026-10-18 12:30:53,116.116 INFO    ] Launching Daemon at Sun Oct 18 12:30:53 IST 2026
[2026-10-18 12:30:53,127.127 INFO    ] ================================================
[2026-10-18 12:30:53,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:30:53
[2026-10-18 12:30:54,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:30:54,754.754 INFO    ] Initializing speech engine...
[2026-10-18 12:30:54,766.766 INFO    ] 2026-10-18 12:30:54
[2026-10-18 12:30:55,055.055 INFO    ] 2026-10-18 12:30:55
[2026-10-18 12:30:55,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:30:55,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:30:55,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:30:55,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:30:55,591.591 INFO    ] time= 18/10/2026 12:30:55
[2026-10-18 12:30:55,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:30:55,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:30:55,762.762 INFO    ] No existing commands found in stream
[2026-10-18 12:31:00,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:31:00,796.796 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-18 12:31:04,914.914 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:31:04,917.917 INFO    ] Checking for system updates...
[2026-10-18 12:31:04,956.956 INFO    ] 200
[2026-10-18 12:31:04,959.959 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:31:05,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:31:05,019.019 INFO    ] No update needed
[2026-10-18 12:31:05,021.021 INFO    ] Checking for camera pi updates...
[2026-10-18 12:31:05,057.057 INFO    ] 200
[2026-10-18 12:31:05,060.060 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:31:05,101.101 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:31:15,116.116 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:31:15,152.152 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:31:15,161.161 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:31:15,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:31:15,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:31:15,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:31:17,215.215 INFO    ] ================================================
[2026-10-18 12:31:17,230.230 INFO    ] Launching Daemon at Sun Oct 18 12:31:17 IST 2026
[2026-10-18 12:31:17,242.242 INFO    ] ================================================
[2026-10-18 12:31:17,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:31:17
[2026-10-18 12:31:18,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:31:18,669.669 INFO    ] Initializing speech engine...
[2026-10-18 12:31:18,678.678 INFO    ] 2026-10-18 12:31:18
[2026-10-18 12:31:18,938.938 INFO    ] 2026-10-18 12:31:18
[2026-10-18 12:31:18,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:31:19,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:31:19,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:31:19,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:31:19,421.421 INFO    ] time= 18/10/2026 12:31:19
[2026-10-18 12:31:19,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:31:19,505.505 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:31:19,659.659 INFO    ] No existing commands found in stream
[2026-10-18 12:31:24,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:31:24,677.677 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-18 12:31:28,921.921 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:31:28,924.924 INFO    ] Checking for system updates...
[2026-10-18 12:31:28,960.960 INFO    ] 200
[2026-10-18 12:31:28,962.962 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:31:29,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:31:29,022.022 INFO    ] No update needed
[2026-10-18 12:31:29,024.024 INFO    ] Checking for camera pi updates...
[2026-10-18 12:31:29,058.058 INFO    ] 200
[2026-10-18 12:31:29,060.060 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:31:29,104.104 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:31:39,120.120 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:31:39,154.154 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:31:39,167.167 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:31:39,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:31:39,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:31:39,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:31:41,221.221 INFO    ] ================================================
[2026-10-18 12:31:41,237.237 INFO    ] Launching Daemon at Sun Oct 18 12:31:41 IST 2026
[2026-10-18 12:31:41,248.248 INFO    ] ================================================
[2026-10-18 12:31:41,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:31:41
[2026-10-18 12:31:42,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:31:42,834.834 INFO    ] Initializing speech engine...
[2026-10-18 12:31:42,844.844 INFO    ] 2026-10-18 12:31:42
[2026-10-18 12:31:43,113.113 INFO    ] 2026-10-18 12:31:43
[2026-10-18 12:31:43,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:31:43,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:31:43,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:31:43,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:31:43,678.678 INFO    ] time= 18/10/2026 12:31:43
[2026-10-18 12:31:43,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:31:43,706.706 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:31:43,852.852 INFO    ] No existing commands found in stream
[2026-10-18 12:31:48,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:31:48,893.893 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-18 12:31:50,183.183 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:31:50,186.186 INFO    ] Checking for system updates...
[2026-10-18 12:31:50,228.228 INFO    ] 200
[2026-10-18 12:31:50,231.231 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:31:50,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:31:50,286.286 INFO    ] No update needed
[2026-10-18 12:31:50,289.289 INFO    ] Checking for camera pi updates...
[2026-10-18 12:31:50,323.323 INFO    ] 200
[2026-10-18 12:31:50,326.326 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:31:50,367.367 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:32:00,380.380 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:32:00,414.414 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:32:00,424.424 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:32:00,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:32:00,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:32:00,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:32:02,479.479 INFO    ] ================================================
[2026-10-18 12:32:02,502.502 INFO    ] Launching Daemon at Sun Oct 18 12:32:02 IST 2026
[2026-10-18 12:32:02,515.515 INFO    ] ================================================
[2026-10-18 12:32:03,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:32:03
[2026-10-18 12:32:03,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:32:04,145.145 INFO    ] Initializing speech engine...
[2026-10-18 12:32:04,153.153 INFO    ] 2026-10-18 12:32:04
[2026-10-18 12:32:04,424.424 INFO    ] 2026-10-18 12:32:04
[2026-10-18 12:32:04,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:32:04,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:32:04,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:32:04,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:32:04,955.955 INFO    ] time= 18/10/2026 12:32:04
[2026-10-18 12:32:04,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:32:04,979.979 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:32:05,089.089 INFO    ] No existing commands found in stream
[2026-10-18 12:32:10,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:32:10,120.120 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-18 12:32:10,651.651 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:32:10,654.654 INFO    ] Checking for system updates...
[2026-10-18 12:32:10,693.693 INFO    ] 200
[2026-10-18 12:32:10,696.696 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:32:10,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:32:10,755.755 INFO    ] No update needed
[2026-10-18 12:32:10,758.758 INFO    ] Checking for camera pi updates...
[2026-10-18 12:32:10,794.794 INFO    ] 200
[2026-10-18 12:32:10,796.796 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:32:10,845.845 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:32:20,860.860 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:32:20,899.899 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:32:20,909.909 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:32:20,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:32:20,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:32:20,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:32:22,963.963 INFO    ] ================================================
[2026-10-18 12:32:22,979.979 INFO    ] Launching Daemon at Sun Oct 18 12:32:22 IST 2026
[2026-10-18 12:32:22,989.989 INFO    ] ================================================
[2026-10-18 12:32:23,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:32:23
[2026-10-18 12:32:24,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:32:24,406.406 INFO    ] Initializing speech engine...
[2026-10-18 12:32:24,422.422 INFO    ] 2026-10-18 12:32:24
[2026-10-18 12:32:24,699.699 INFO    ] 2026-10-18 12:32:24
[2026-10-18 12:32:24,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:32:24,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:32:24,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:32:25,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:32:25,108.108 INFO    ] time= 18/10/2026 12:32:25
[2026-10-18 12:32:25,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:32:25,166.166 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:32:25,317.317 INFO    ] No existing commands found in stream
[2026-10-18 12:32:30,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:32:30,339.339 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-18 12:32:31,354.354 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:32:31,357.357 INFO    ] Checking for system updates...
[2026-10-18 12:32:31,396.396 INFO    ] 200
[2026-10-18 12:32:31,398.398 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:32:31,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:32:31,453.453 INFO    ] No update needed
[2026-10-18 12:32:31,455.455 INFO    ] Checking for camera pi updates...
[2026-10-18 12:32:31,488.488 INFO    ] 200
[2026-10-18 12:32:31,491.491 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:32:31,531.531 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:32:41,546.546 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:32:41,580.580 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:32:41,590.590 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:32:41,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:32:41,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:32:41,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:32:43,642.642 INFO    ] ================================================
[2026-10-18 12:32:43,658.658 INFO    ] Launching Daemon at Sun Oct 18 12:32:43 IST 2026
[2026-10-18 12:32:43,668.668 INFO    ] ================================================
[2026-10-18 12:32:44,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:32:44
[2026-10-18 12:32:44,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:32:45,125.125 INFO    ] Initializing speech engine...
[2026-10-18 12:32:45,146.146 INFO    ] 2026-10-18 12:32:45
[2026-10-18 12:32:45,416.416 INFO    ] 2026-10-18 12:32:45
[2026-10-18 12:32:45,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:32:45,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:32:45,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:32:45,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:32:45,836.836 INFO    ] time= 18/10/2026 12:32:45
[2026-10-18 12:32:45,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:32:45,874.874 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:32:46,017.017 INFO    ] No existing commands found in stream
[2026-10-18 12:32:51,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:32:51,040.040 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-18 12:32:52,361.361 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:32:52,364.364 INFO    ] Checking for system updates...
[2026-10-18 12:32:52,399.399 INFO    ] 200
[2026-10-18 12:32:52,402.402 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:32:52,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:32:52,457.457 INFO    ] No update needed
[2026-10-18 12:32:52,459.459 INFO    ] Checking for camera pi updates...
[2026-10-18 12:32:52,493.493 INFO    ] 200
[2026-10-18 12:32:52,495.495 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:32:52,536.536 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:33:02,550.550 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:33:02,590.590 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:33:02,602.602 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:33:02,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:33:02,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:33:02,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:33:04,659.659 INFO    ] ================================================
[2026-10-18 12:33:04,675.675 INFO    ] Launching Daemon at Sun Oct 18 12:33:04 IST 2026
[2026-10-18 12:33:04,686.686 INFO    ] ================================================
[2026-10-18 12:33:05,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:33:05
[2026-10-18 12:33:05,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:33:06,133.133 INFO    ] Initializing speech engine...
[2026-10-18 12:33:06,158.158 INFO    ] 2026-10-18 12:33:06
[2026-10-18 12:33:06,434.434 INFO    ] 2026-10-18 12:33:06
[2026-10-18 12:33:06,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:33:06,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:33:06,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:33:06,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:33:06,942.942 INFO    ] time= 18/10/2026 12:33:06
[2026-10-18 12:33:07,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:33:07,068.068 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:33:07,235.235 INFO    ] No existing commands found in stream
[2026-10-18 12:33:12,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:33:12,253.253 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-18 12:33:14,792.792 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:33:14,795.795 INFO    ] Checking for system updates...
[2026-10-18 12:33:14,835.835 INFO    ] 200
[2026-10-18 12:33:14,837.837 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:33:14,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:33:14,898.898 INFO    ] No update needed
[2026-10-18 12:33:14,901.901 INFO    ] Checking for camera pi updates...
[2026-10-18 12:33:14,937.937 INFO    ] 200
[2026-10-18 12:33:14,940.940 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:33:14,984.984 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:33:24,999.999 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:33:25,035.035 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:33:25,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:33:25,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:33:25,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:33:25,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:33:27,097.097 INFO    ] ================================================
[2026-10-18 12:33:27,113.113 INFO    ] Launching Daemon at Sun Oct 18 12:33:27 IST 2026
[2026-10-18 12:33:27,123.123 INFO    ] ================================================
[2026-10-18 12:33:27,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:33:27
[2026-10-18 12:33:28,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:33:28,737.737 INFO    ] Initializing speech engine...
[2026-10-18 12:33:28,749.749 INFO    ] 2026-10-18 12:33:28
[2026-10-18 12:33:29,034.034 INFO    ] 2026-10-18 12:33:29
[2026-10-18 12:33:29,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:33:29,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:33:29,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:33:29,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:33:29,564.564 INFO    ] time= 18/10/2026 12:33:29
[2026-10-18 12:33:29,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:33:29,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:33:29,710.710 INFO    ] No existing commands found in stream
[2026-10-18 12:33:34,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:33:34,735.735 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-18 12:33:35,662.662 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:33:35,666.666 INFO    ] Checking for system updates...
[2026-10-18 12:33:35,706.706 INFO    ] 200
[2026-10-18 12:33:35,709.709 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:33:35,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:33:35,772.772 INFO    ] No update needed
[2026-10-18 12:33:35,775.775 INFO    ] Checking for camera pi updates...
[2026-10-18 12:33:35,813.813 INFO    ] 200
[2026-10-18 12:33:35,816.816 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:33:35,863.863 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:33:45,879.879 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:33:45,919.919 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:33:45,930.930 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:33:45,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:33:45,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:33:45,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:33:47,986.986 INFO    ] ================================================
[2026-10-18 12:33:48,001.001 INFO    ] Launching Daemon at Sun Oct 18 12:33:47 IST 2026
[2026-10-18 12:33:48,012.012 INFO    ] ================================================
[2026-10-18 12:33:48,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:33:48
[2026-10-18 12:33:49,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:33:49,602.602 INFO    ] Initializing speech engine...
[2026-10-18 12:33:49,609.609 INFO    ] 2026-10-18 12:33:49
[2026-10-18 12:33:49,884.884 INFO    ] 2026-10-18 12:33:49
[2026-10-18 12:33:49,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:33:50,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:33:50,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:33:50,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:33:50,434.434 INFO    ] time= 18/10/2026 12:33:50
[2026-10-18 12:33:50,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:33:50,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:33:50,611.611 INFO    ] No existing commands found in stream
[2026-10-18 12:33:55,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:33:55,646.646 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-18 12:33:58,566.566 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:33:58,569.569 INFO    ] Checking for system updates...
[2026-10-18 12:33:58,605.605 INFO    ] 200
[2026-10-18 12:33:58,608.608 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:33:58,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:33:58,666.666 INFO    ] No update needed
[2026-10-18 12:33:58,669.669 INFO    ] Checking for camera pi updates...
[2026-10-18 12:33:58,704.704 INFO    ] 200
[2026-10-18 12:33:58,707.707 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:33:58,749.749 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:34:08,764.764 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:34:08,806.806 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:34:08,817.817 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:34:08,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:34:08,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:34:08,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:34:10,874.874 INFO    ] ================================================
[2026-10-18 12:34:10,890.890 INFO    ] Launching Daemon at Sun Oct 18 12:34:10 IST 2026
[2026-10-18 12:34:10,901.901 INFO    ] ================================================
[2026-10-18 12:34:11,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:34:11
[2026-10-18 12:34:12,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:34:12,403.403 INFO    ] Initializing speech engine...
[2026-10-18 12:34:12,414.414 INFO    ] 2026-10-18 12:34:12
[2026-10-18 12:34:12,682.682 INFO    ] 2026-10-18 12:34:12
[2026-10-18 12:34:12,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:34:13,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:34:13,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:34:13,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:34:13,213.213 INFO    ] time= 18/10/2026 12:34:13
[2026-10-18 12:34:13,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:34:13,259.259 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:34:13,367.367 INFO    ] No existing commands found in stream
[2026-10-18 12:34:18,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:34:18,390.390 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-18 12:34:18,984.984 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:34:18,987.987 INFO    ] Checking for system updates...
[2026-10-18 12:34:19,027.027 INFO    ] 200
[2026-10-18 12:34:19,030.030 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:34:19,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:34:19,092.092 INFO    ] No update needed
[2026-10-18 12:34:19,095.095 INFO    ] Checking for camera pi updates...
[2026-10-18 12:34:19,132.132 INFO    ] 200
[2026-10-18 12:34:19,135.135 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:34:19,181.181 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:34:29,194.194 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:34:29,229.229 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:34:29,238.238 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:34:29,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:34:29,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:34:29,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:34:31,293.293 INFO    ] ================================================
[2026-10-18 12:34:31,310.310 INFO    ] Launching Daemon at Sun Oct 18 12:34:31 IST 2026
[2026-10-18 12:34:31,322.322 INFO    ] ================================================
[2026-10-18 12:34:32,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:34:32
[2026-10-18 12:34:32,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:34:33,054.054 INFO    ] Initializing speech engine...
[2026-10-18 12:34:33,062.062 INFO    ] 2026-10-18 12:34:33
[2026-10-18 12:34:33,381.381 INFO    ] 2026-10-18 12:34:33
[2026-10-18 12:34:33,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:34:33,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:34:33,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:34:33,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:34:33,926.926 INFO    ] time= 18/10/2026 12:34:33
[2026-10-18 12:34:33,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:34:33,952.952 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:34:34,101.101 INFO    ] No existing commands found in stream
[2026-10-18 12:34:39,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:34:39,129.129 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-18 12:34:42,673.673 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:34:42,676.676 INFO    ] Checking for system updates...
[2026-10-18 12:34:42,712.712 INFO    ] 200
[2026-10-18 12:34:42,714.714 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:34:42,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:34:42,769.769 INFO    ] No update needed
[2026-10-18 12:34:42,771.771 INFO    ] Checking for camera pi updates...
[2026-10-18 12:34:42,804.804 INFO    ] 200
[2026-10-18 12:34:42,807.807 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:34:42,847.847 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:34:52,862.862 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:34:52,897.897 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:34:52,906.906 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:34:52,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:34:52,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:34:52,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:34:54,959.959 INFO    ] ================================================
[2026-10-18 12:34:54,974.974 INFO    ] Launching Daemon at Sun Oct 18 12:34:54 IST 2026
[2026-10-18 12:34:54,984.984 INFO    ] ================================================
[2026-10-18 12:34:55,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:34:55
[2026-10-18 12:34:56,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:34:56,461.461 INFO    ] Initializing speech engine...
[2026-10-18 12:34:56,477.477 INFO    ] 2026-10-18 12:34:56
[2026-10-18 12:34:56,755.755 INFO    ] 2026-10-18 12:34:56
[2026-10-18 12:34:56,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:34:57,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:34:57,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:34:57,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:34:57,298.298 INFO    ] time= 18/10/2026 12:34:57
[2026-10-18 12:34:57,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:34:57,383.383 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:34:57,520.520 INFO    ] No existing commands found in stream
[2026-10-18 12:35:02,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:35:02,552.552 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-18 12:35:04,305.305 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:35:04,308.308 INFO    ] Checking for system updates...
[2026-10-18 12:35:04,348.348 INFO    ] 200
[2026-10-18 12:35:04,350.350 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:35:04,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:35:04,412.412 INFO    ] No update needed
[2026-10-18 12:35:04,414.414 INFO    ] Checking for camera pi updates...
[2026-10-18 12:35:04,449.449 INFO    ] 200
[2026-10-18 12:35:04,452.452 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:35:04,492.492 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:35:14,508.508 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:35:14,547.547 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:35:14,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:35:14,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:35:14,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:35:14,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:35:16,613.613 INFO    ] ================================================
[2026-10-18 12:35:16,628.628 INFO    ] Launching Daemon at Sun Oct 18 12:35:16 IST 2026
[2026-10-18 12:35:16,638.638 INFO    ] ================================================
[2026-10-18 12:35:17,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:35:17
[2026-10-18 12:35:17,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:35:18,067.067 INFO    ] Initializing speech engine...
[2026-10-18 12:35:18,078.078 INFO    ] 2026-10-18 12:35:18
[2026-10-18 12:35:18,342.342 INFO    ] 2026-10-18 12:35:18
[2026-10-18 12:35:18,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:35:18,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:35:18,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:35:18,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:35:18,886.886 INFO    ] time= 18/10/2026 12:35:18
[2026-10-18 12:35:18,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:35:18,911.911 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:35:19,043.043 INFO    ] No existing commands found in stream
[2026-10-18 12:35:24,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:35:24,068.068 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-18 12:35:25,027.027 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:35:25,030.030 INFO    ] Checking for system updates...
[2026-10-18 12:35:25,068.068 INFO    ] 200
[2026-10-18 12:35:25,070.070 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:35:25,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:35:25,125.125 INFO    ] No update needed
[2026-10-18 12:35:25,128.128 INFO    ] Checking for camera pi updates...
[2026-10-18 12:35:25,161.161 INFO    ] 200
[2026-10-18 12:35:25,163.163 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:35:25,204.204 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:35:35,219.219 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:35:35,254.254 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:35:35,264.264 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:35:35,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:35:35,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:35:35,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:35:37,317.317 INFO    ] ================================================
[2026-10-18 12:35:37,333.333 INFO    ] Launching Daemon at Sun Oct 18 12:35:37 IST 2026
[2026-10-18 12:35:37,344.344 INFO    ] ================================================
[2026-10-18 12:35:37,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:35:37
[2026-10-18 12:35:38,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:35:38,765.765 INFO    ] Initializing speech engine...
[2026-10-18 12:35:38,774.774 INFO    ] 2026-10-18 12:35:38
[2026-10-18 12:35:39,029.029 INFO    ] 2026-10-18 12:35:39
[2026-10-18 12:35:39,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:35:39,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:35:39,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:35:39,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:35:39,506.506 INFO    ] time= 18/10/2026 12:35:39
[2026-10-18 12:35:39,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:35:39,575.575 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:35:39,720.720 INFO    ] No existing commands found in stream
[2026-10-18 12:35:44,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:35:44,738.738 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-18 12:35:46,216.216 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:35:46,218.218 INFO    ] Checking for system updates...
[2026-10-18 12:35:46,254.254 INFO    ] 200
[2026-10-18 12:35:46,256.256 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:35:46,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:35:46,312.312 INFO    ] No update needed
[2026-10-18 12:35:46,314.314 INFO    ] Checking for camera pi updates...
[2026-10-18 12:35:46,348.348 INFO    ] 200
[2026-10-18 12:35:46,350.350 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:35:46,390.390 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:35:56,406.406 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:35:56,441.441 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:35:56,450.450 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:35:56,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:35:56,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:35:56,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:35:58,502.502 INFO    ] ================================================
[2026-10-18 12:35:58,518.518 INFO    ] Launching Daemon at Sun Oct 18 12:35:58 IST 2026
[2026-10-18 12:35:58,529.529 INFO    ] ================================================
[2026-10-18 12:35:59,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:35:59
[2026-10-18 12:35:59,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:36:00,141.141 INFO    ] Initializing speech engine...
[2026-10-18 12:36:00,155.155 INFO    ] 2026-10-18 12:36:00
[2026-10-18 12:36:00,440.440 INFO    ] 2026-10-18 12:36:00
[2026-10-18 12:36:00,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:36:00,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:36:00,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:36:00,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:36:00,977.977 INFO    ] time= 18/10/2026 12:36:00
[2026-10-18 12:36:00,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:36:01,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:36:01,139.139 INFO    ] No existing commands found in stream
[2026-10-18 12:36:06,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:36:06,152.152 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-18 12:36:07,528.528 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:36:07,530.530 INFO    ] Checking for system updates...
[2026-10-18 12:36:07,569.569 INFO    ] 200
[2026-10-18 12:36:07,571.571 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:36:07,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:36:07,626.626 INFO    ] No update needed
[2026-10-18 12:36:07,629.629 INFO    ] Checking for camera pi updates...
[2026-10-18 12:36:07,663.663 INFO    ] 200
[2026-10-18 12:36:07,666.666 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:36:07,706.706 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:36:17,720.720 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:36:17,756.756 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:36:17,766.766 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:36:17,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:36:17,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:36:17,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:36:19,819.819 INFO    ] ================================================
[2026-10-18 12:36:19,837.837 INFO    ] Launching Daemon at Sun Oct 18 12:36:19 IST 2026
[2026-10-18 12:36:19,848.848 INFO    ] ================================================
[2026-10-18 12:36:20,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:36:20
[2026-10-18 12:36:21,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:36:21,313.313 INFO    ] Initializing speech engine...
[2026-10-18 12:36:21,330.330 INFO    ] 2026-10-18 12:36:21
[2026-10-18 12:36:21,616.616 INFO    ] 2026-10-18 12:36:21
[2026-10-18 12:36:21,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:36:21,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:36:21,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:36:22,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:36:22,040.040 INFO    ] time= 18/10/2026 12:36:22
[2026-10-18 12:36:22,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:36:22,054.054 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:36:22,204.204 INFO    ] No existing commands found in stream
[2026-10-18 12:36:27,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:36:27,232.232 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-18 12:36:31,363.363 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:36:31,366.366 INFO    ] Checking for system updates...
[2026-10-18 12:36:31,404.404 INFO    ] 200
[2026-10-18 12:36:31,408.408 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:36:31,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:36:31,471.471 INFO    ] No update needed
[2026-10-18 12:36:31,474.474 INFO    ] Checking for camera pi updates...
[2026-10-18 12:36:31,514.514 INFO    ] 200
[2026-10-18 12:36:31,517.517 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:36:31,566.566 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:36:41,578.578 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:36:41,614.614 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:36:41,624.624 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:36:41,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:36:41,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:36:41,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:36:43,676.676 INFO    ] ================================================
[2026-10-18 12:36:43,692.692 INFO    ] Launching Daemon at Sun Oct 18 12:36:43 IST 2026
[2026-10-18 12:36:43,704.704 INFO    ] ================================================
[2026-10-18 12:36:44,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:36:44
[2026-10-18 12:36:44,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:36:45,279.279 INFO    ] Initializing speech engine...
[2026-10-18 12:36:45,288.288 INFO    ] 2026-10-18 12:36:45
[2026-10-18 12:36:45,554.554 INFO    ] 2026-10-18 12:36:45
[2026-10-18 12:36:45,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:36:45,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:36:45,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:36:46,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:36:46,094.094 INFO    ] time= 18/10/2026 12:36:46
[2026-10-18 12:36:46,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:36:46,187.187 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:36:46,327.327 INFO    ] No existing commands found in stream
[2026-10-18 12:36:51,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:36:51,360.360 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-18 12:36:53,875.875 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:36:53,878.878 INFO    ] Checking for system updates...
[2026-10-18 12:36:53,914.914 INFO    ] 200
[2026-10-18 12:36:53,916.916 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:36:53,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:36:53,978.978 INFO    ] No update needed
[2026-10-18 12:36:53,980.980 INFO    ] Checking for camera pi updates...
[2026-10-18 12:36:54,013.013 INFO    ] 200
[2026-10-18 12:36:54,016.016 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:36:54,057.057 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:37:04,072.072 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:37:04,106.106 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:37:04,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:37:04,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:37:04,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:37:04,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:37:06,172.172 INFO    ] ================================================
[2026-10-18 12:37:06,188.188 INFO    ] Launching Daemon at Sun Oct 18 12:37:06 IST 2026
[2026-10-18 12:37:06,200.200 INFO    ] ================================================
[2026-10-18 12:37:06,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:37:06
[2026-10-18 12:37:07,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:37:07,785.785 INFO    ] Initializing speech engine...
[2026-10-18 12:37:07,793.793 INFO    ] 2026-10-18 12:37:07
[2026-10-18 12:37:08,043.043 INFO    ] 2026-10-18 12:37:08
[2026-10-18 12:37:08,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:37:08,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:37:08,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:37:08,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:37:08,538.538 INFO    ] time= 18/10/2026 12:37:08
[2026-10-18 12:37:08,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:37:08,617.617 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:37:08,772.772 INFO    ] No existing commands found in stream
[2026-10-18 12:37:13,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:37:13,793.793 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-18 12:37:18,261.261 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:37:18,263.263 INFO    ] Checking for system updates...
[2026-10-18 12:37:18,302.302 INFO    ] 200
[2026-10-18 12:37:18,305.305 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:37:18,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:37:18,366.366 INFO    ] No update needed
[2026-10-18 12:37:18,369.369 INFO    ] Checking for camera pi updates...
[2026-10-18 12:37:18,402.402 INFO    ] 200
[2026-10-18 12:37:18,404.404 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:37:18,449.449 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:37:28,464.464 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:37:28,499.499 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:37:28,509.509 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:37:28,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:37:28,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:37:28,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:37:30,562.562 INFO    ] ================================================
[2026-10-18 12:37:30,578.578 INFO    ] Launching Daemon at Sun Oct 18 12:37:30 IST 2026
[2026-10-18 12:37:30,589.589 INFO    ] ================================================
[2026-10-18 12:37:31,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:37:31
[2026-10-18 12:37:31,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:37:32,293.293 INFO    ] Initializing speech engine...
[2026-10-18 12:37:32,300.300 INFO    ] 2026-10-18 12:37:32
[2026-10-18 12:37:32,605.605 INFO    ] 2026-10-18 12:37:32
[2026-10-18 12:37:32,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:37:32,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:37:32,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:37:33,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:37:33,163.163 INFO    ] time= 18/10/2026 12:37:33
[2026-10-18 12:37:33,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:37:33,213.213 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:37:33,330.330 INFO    ] No existing commands found in stream
[2026-10-18 12:37:38,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:37:38,359.359 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-18 12:37:39,357.357 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:37:39,359.359 INFO    ] Checking for system updates...
[2026-10-18 12:37:39,396.396 INFO    ] 200
[2026-10-18 12:37:39,398.398 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:37:39,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:37:39,453.453 INFO    ] No update needed
[2026-10-18 12:37:39,456.456 INFO    ] Checking for camera pi updates...
[2026-10-18 12:37:39,489.489 INFO    ] 200
[2026-10-18 12:37:39,491.491 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:37:39,532.532 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:37:49,547.547 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:37:49,582.582 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:37:49,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:37:49,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:37:49,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:37:49,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:37:51,643.643 INFO    ] ================================================
[2026-10-18 12:37:51,659.659 INFO    ] Launching Daemon at Sun Oct 18 12:37:51 IST 2026
[2026-10-18 12:37:51,670.670 INFO    ] ================================================
[2026-10-18 12:37:52,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:37:52
[2026-10-18 12:37:52,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:37:53,128.128 INFO    ] Initializing speech engine...
[2026-10-18 12:37:53,139.139 INFO    ] 2026-10-18 12:37:53
[2026-10-18 12:37:53,400.400 INFO    ] 2026-10-18 12:37:53
[2026-10-18 12:37:53,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:37:53,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:37:53,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:37:53,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:37:53,944.944 INFO    ] time= 18/10/2026 12:37:53
[2026-10-18 12:37:53,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:37:53,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:37:54,100.100 INFO    ] No existing commands found in stream
[2026-10-18 12:37:59,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:37:59,119.119 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-18 12:38:02,211.211 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:38:02,214.214 INFO    ] Checking for system updates...
[2026-10-18 12:38:02,261.261 INFO    ] 200
[2026-10-18 12:38:02,263.263 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:38:02,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:38:02,324.324 INFO    ] No update needed
[2026-10-18 12:38:02,327.327 INFO    ] Checking for camera pi updates...
[2026-10-18 12:38:02,370.370 INFO    ] 200
[2026-10-18 12:38:02,373.373 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:38:02,437.437 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:38:12,453.453 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:38:12,489.489 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:38:12,499.499 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:38:12,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:38:12,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:38:12,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:38:14,553.553 INFO    ] ================================================
[2026-10-18 12:38:14,568.568 INFO    ] Launching Daemon at Sun Oct 18 12:38:14 IST 2026
[2026-10-18 12:38:14,579.579 INFO    ] ================================================
[2026-10-18 12:38:15,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:38:15
[2026-10-18 12:38:15,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:38:16,016.016 INFO    ] Initializing speech engine...
[2026-10-18 12:38:16,026.026 INFO    ] 2026-10-18 12:38:16
[2026-10-18 12:38:16,282.282 INFO    ] 2026-10-18 12:38:16
[2026-10-18 12:38:16,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:38:16,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:38:16,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:38:16,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:38:16,766.766 INFO    ] time= 18/10/2026 12:38:16
[2026-10-18 12:38:16,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:38:16,875.875 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:38:17,010.010 INFO    ] No existing commands found in stream
[2026-10-18 12:38:22,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:38:22,043.043 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-18 12:38:23,715.715 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:38:23,718.718 INFO    ] Checking for system updates...
[2026-10-18 12:38:23,758.758 INFO    ] 200
[2026-10-18 12:38:23,760.760 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:38:23,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:38:23,819.819 INFO    ] No update needed
[2026-10-18 12:38:23,822.822 INFO    ] Checking for camera pi updates...
[2026-10-18 12:38:23,855.855 INFO    ] 200
[2026-10-18 12:38:23,857.857 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:38:23,902.902 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:38:33,916.916 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:38:33,951.951 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:38:33,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:38:33,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:38:33,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:38:33,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:38:36,014.014 INFO    ] ================================================
[2026-10-18 12:38:36,029.029 INFO    ] Launching Daemon at Sun Oct 18 12:38:36 IST 2026
[2026-10-18 12:38:36,040.040 INFO    ] ================================================
[2026-10-18 12:38:36,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:38:36
[2026-10-18 12:38:37,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:38:37,501.501 INFO    ] Initializing speech engine...
[2026-10-18 12:38:37,507.507 INFO    ] 2026-10-18 12:38:37
[2026-10-18 12:38:37,769.769 INFO    ] 2026-10-18 12:38:37
[2026-10-18 12:38:37,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:38:38,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:38:38,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:38:38,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:38:38,326.326 INFO    ] time= 18/10/2026 12:38:38
[2026-10-18 12:38:38,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:38:38,361.361 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:38:38,478.478 INFO    ] No existing commands found in stream
[2026-10-18 12:38:43,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:38:43,510.510 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-18 12:38:45,577.577 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:38:45,580.580 INFO    ] Checking for system updates...
[2026-10-18 12:38:45,620.620 INFO    ] 200
[2026-10-18 12:38:45,622.622 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:38:45,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:38:45,678.678 INFO    ] No update needed
[2026-10-18 12:38:45,680.680 INFO    ] Checking for camera pi updates...
[2026-10-18 12:38:45,719.719 INFO    ] 200
[2026-10-18 12:38:45,722.722 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:38:45,767.767 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:38:55,782.782 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:38:55,819.819 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:38:55,829.829 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:38:55,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:38:55,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:38:55,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:38:57,881.881 INFO    ] ================================================
[2026-10-18 12:38:57,897.897 INFO    ] Launching Daemon at Sun Oct 18 12:38:57 IST 2026
[2026-10-18 12:38:57,908.908 INFO    ] ================================================
[2026-10-18 12:38:58,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:38:58
[2026-10-18 12:38:59,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:38:59,397.397 INFO    ] Initializing speech engine...
[2026-10-18 12:38:59,407.407 INFO    ] 2026-10-18 12:38:59
[2026-10-18 12:38:59,670.670 INFO    ] 2026-10-18 12:38:59
[2026-10-18 12:38:59,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:38:59,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:38:59,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:39:00,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:39:00,166.166 INFO    ] time= 18/10/2026 12:39:00
[2026-10-18 12:39:00,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:39:00,226.226 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:39:00,372.372 INFO    ] No existing commands found in stream
[2026-10-18 12:39:05,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:39:05,387.387 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-18 12:39:09,130.130 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:39:09,133.133 INFO    ] Checking for system updates...
[2026-10-18 12:39:09,170.170 INFO    ] 200
[2026-10-18 12:39:09,172.172 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:39:09,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:39:09,227.227 INFO    ] No update needed
[2026-10-18 12:39:09,230.230 INFO    ] Checking for camera pi updates...
[2026-10-18 12:39:09,264.264 INFO    ] 200
[2026-10-18 12:39:09,267.267 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:39:09,307.307 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:39:19,322.322 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:39:19,358.358 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:39:19,368.368 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:39:19,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:39:19,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:39:19,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:39:21,423.423 INFO    ] ================================================
[2026-10-18 12:39:21,439.439 INFO    ] Launching Daemon at Sun Oct 18 12:39:21 IST 2026
[2026-10-18 12:39:21,449.449 INFO    ] ================================================
[2026-10-18 12:39:22,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:39:22
[2026-10-18 12:39:22,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:39:22,887.887 INFO    ] Initializing speech engine...
[2026-10-18 12:39:22,910.910 INFO    ] 2026-10-18 12:39:22
[2026-10-18 12:39:23,165.165 INFO    ] 2026-10-18 12:39:23
[2026-10-18 12:39:23,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:39:23,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:39:23,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:39:23,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:39:23,660.660 INFO    ] time= 18/10/2026 12:39:23
[2026-10-18 12:39:23,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:39:23,740.740 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:39:23,876.876 INFO    ] No existing commands found in stream
[2026-10-18 12:39:28,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:39:28,893.893 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-18 12:39:32,849.849 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:39:32,851.851 INFO    ] Checking for system updates...
[2026-10-18 12:39:32,892.892 INFO    ] 200
[2026-10-18 12:39:32,894.894 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:39:32,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:39:32,955.955 INFO    ] No update needed
[2026-10-18 12:39:32,958.958 INFO    ] Checking for camera pi updates...
[2026-10-18 12:39:32,991.991 INFO    ] 200
[2026-10-18 12:39:32,993.993 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:39:33,038.038 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:39:43,053.053 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:39:43,088.088 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:39:43,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:39:43,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:39:43,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:39:43,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:39:45,150.150 INFO    ] ================================================
[2026-10-18 12:39:45,166.166 INFO    ] Launching Daemon at Sun Oct 18 12:39:45 IST 2026
[2026-10-18 12:39:45,177.177 INFO    ] ================================================
[2026-10-18 12:39:45,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:39:45
[2026-10-18 12:39:46,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:39:46,820.820 INFO    ] Initializing speech engine...
[2026-10-18 12:39:46,828.828 INFO    ] 2026-10-18 12:39:46
[2026-10-18 12:39:47,076.076 INFO    ] 2026-10-18 12:39:47
[2026-10-18 12:39:47,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:39:47,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:39:47,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:39:47,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:39:47,644.644 INFO    ] time= 18/10/2026 12:39:47
[2026-10-18 12:39:47,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:39:47,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:39:47,817.817 INFO    ] No existing commands found in stream
[2026-10-18 12:39:52,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:39:52,851.851 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-18 12:39:57,229.229 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:39:57,231.231 INFO    ] Checking for system updates...
[2026-10-18 12:39:57,271.271 INFO    ] 200
[2026-10-18 12:39:57,274.274 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:39:57,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:39:57,329.329 INFO    ] No update needed
[2026-10-18 12:39:57,331.331 INFO    ] Checking for camera pi updates...
[2026-10-18 12:39:57,369.369 INFO    ] 200
[2026-10-18 12:39:57,371.371 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:39:57,417.417 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:40:07,432.432 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:40:07,468.468 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:40:07,478.478 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:40:07,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:40:07,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:40:07,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:40:09,531.531 INFO    ] ================================================
[2026-10-18 12:40:09,547.547 INFO    ] Launching Daemon at Sun Oct 18 12:40:09 IST 2026
[2026-10-18 12:40:09,558.558 INFO    ] ================================================
[2026-10-18 12:40:10,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:40:10
[2026-10-18 12:40:10,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:40:10,977.977 INFO    ] Initializing speech engine...
[2026-10-18 12:40:10,996.996 INFO    ] 2026-10-18 12:40:10
[2026-10-18 12:40:11,243.243 INFO    ] 2026-10-18 12:40:11
[2026-10-18 12:40:11,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:40:11,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:40:11,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:40:11,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:40:11,740.740 INFO    ] time= 18/10/2026 12:40:11
[2026-10-18 12:40:11,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:40:11,808.808 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:40:11,953.953 INFO    ] No existing commands found in stream
[2026-10-18 12:40:16,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:40:16,970.970 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-18 12:40:19,356.356 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:40:19,358.358 INFO    ] Checking for system updates...
[2026-10-18 12:40:19,394.394 INFO    ] 200
[2026-10-18 12:40:19,396.396 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:40:19,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:40:19,451.451 INFO    ] No update needed
[2026-10-18 12:40:19,453.453 INFO    ] Checking for camera pi updates...
[2026-10-18 12:40:19,486.486 INFO    ] 200
[2026-10-18 12:40:19,489.489 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:40:19,528.528 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:40:29,544.544 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:40:29,579.579 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:40:29,588.588 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:40:29,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:40:29,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:40:29,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:40:31,644.644 INFO    ] ================================================
[2026-10-18 12:40:31,662.662 INFO    ] Launching Daemon at Sun Oct 18 12:40:31 IST 2026
[2026-10-18 12:40:31,674.674 INFO    ] ================================================
[2026-10-18 12:40:32,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:40:32
[2026-10-18 12:40:32,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:40:33,191.191 INFO    ] Initializing speech engine...
[2026-10-18 12:40:33,198.198 INFO    ] 2026-10-18 12:40:33
[2026-10-18 12:40:33,463.463 INFO    ] 2026-10-18 12:40:33
[2026-10-18 12:40:33,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:40:33,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:40:33,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:40:33,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:40:34,013.013 INFO    ] time= 18/10/2026 12:40:33
[2026-10-18 12:40:34,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:40:34,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:40:34,190.190 INFO    ] No existing commands found in stream
[2026-10-18 12:40:39,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:40:39,225.225 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-18 12:40:42,124.124 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:40:42,128.128 INFO    ] Checking for system updates...
[2026-10-18 12:40:42,169.169 INFO    ] 200
[2026-10-18 12:40:42,172.172 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:40:42,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:40:42,236.236 INFO    ] No update needed
[2026-10-18 12:40:42,239.239 INFO    ] Checking for camera pi updates...
[2026-10-18 12:40:42,274.274 INFO    ] 200
[2026-10-18 12:40:42,277.277 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:40:42,324.324 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:40:52,340.340 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:40:52,381.381 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:40:52,392.392 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:40:52,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:40:52,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:40:52,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:40:54,449.449 INFO    ] ================================================
[2026-10-18 12:40:54,464.464 INFO    ] Launching Daemon at Sun Oct 18 12:40:54 IST 2026
[2026-10-18 12:40:54,475.475 INFO    ] ================================================
[2026-10-18 12:40:55,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:40:55
[2026-10-18 12:40:55,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:40:56,131.131 INFO    ] Initializing speech engine...
[2026-10-18 12:40:56,143.143 INFO    ] 2026-10-18 12:40:56
[2026-10-18 12:40:56,427.427 INFO    ] 2026-10-18 12:40:56
[2026-10-18 12:40:56,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:40:56,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:40:56,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:40:56,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:40:56,977.977 INFO    ] time= 18/10/2026 12:40:56
[2026-10-18 12:40:56,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:40:57,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:40:57,127.127 INFO    ] No existing commands found in stream
[2026-10-18 12:41:02,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:41:02,161.161 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-18 12:41:06,063.063 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:41:06,066.066 INFO    ] Checking for system updates...
[2026-10-18 12:41:06,108.108 INFO    ] 200
[2026-10-18 12:41:06,111.111 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:41:06,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:41:06,174.174 INFO    ] No update needed
[2026-10-18 12:41:06,177.177 INFO    ] Checking for camera pi updates...
[2026-10-18 12:41:06,212.212 INFO    ] 200
[2026-10-18 12:41:06,214.214 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:41:06,261.261 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:41:16,277.277 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:41:16,317.317 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:41:16,328.328 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:41:16,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:41:16,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:41:16,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:41:18,385.385 INFO    ] ================================================
[2026-10-18 12:41:18,401.401 INFO    ] Launching Daemon at Sun Oct 18 12:41:18 IST 2026
[2026-10-18 12:41:18,412.412 INFO    ] ================================================
[2026-10-18 12:41:18,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:41:18
[2026-10-18 12:41:19,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:41:19,862.862 INFO    ] Initializing speech engine...
[2026-10-18 12:41:19,872.872 INFO    ] 2026-10-18 12:41:19
[2026-10-18 12:41:20,121.121 INFO    ] 2026-10-18 12:41:20
[2026-10-18 12:41:20,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:41:20,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:41:20,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:41:20,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:41:20,688.688 INFO    ] time= 18/10/2026 12:41:20
[2026-10-18 12:41:20,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:41:20,714.714 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:41:20,868.868 INFO    ] No existing commands found in stream
[2026-10-18 12:41:25,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:41:25,901.901 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-18 12:41:27,277.277 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:41:27,279.279 INFO    ] Checking for system updates...
[2026-10-18 12:41:27,319.319 INFO    ] 200
[2026-10-18 12:41:27,322.322 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:41:27,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:41:27,377.377 INFO    ] No update needed
[2026-10-18 12:41:27,379.379 INFO    ] Checking for camera pi updates...
[2026-10-18 12:41:27,413.413 INFO    ] 200
[2026-10-18 12:41:27,416.416 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:41:27,456.456 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:41:37,472.472 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:41:37,508.508 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:41:37,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:41:37,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:41:37,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:41:37,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:41:39,572.572 INFO    ] ================================================
[2026-10-18 12:41:39,587.587 INFO    ] Launching Daemon at Sun Oct 18 12:41:39 IST 2026
[2026-10-18 12:41:39,598.598 INFO    ] ================================================
[2026-10-18 12:41:40,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:41:40
[2026-10-18 12:41:40,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:41:41,059.059 INFO    ] Initializing speech engine...
[2026-10-18 12:41:41,068.068 INFO    ] 2026-10-18 12:41:41
[2026-10-18 12:41:41,320.320 INFO    ] 2026-10-18 12:41:41
[2026-10-18 12:41:41,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:41:41,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:41:41,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:41:41,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:41:41,878.878 INFO    ] time= 18/10/2026 12:41:41
[2026-10-18 12:41:41,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:41:41,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:41:42,035.035 INFO    ] No existing commands found in stream
[2026-10-18 12:41:47,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:41:47,060.060 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-18 12:41:50,246.246 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:41:50,249.249 INFO    ] Checking for system updates...
[2026-10-18 12:41:50,286.286 INFO    ] 200
[2026-10-18 12:41:50,289.289 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:41:50,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:41:50,345.345 INFO    ] No update needed
[2026-10-18 12:41:50,348.348 INFO    ] Checking for camera pi updates...
[2026-10-18 12:41:50,383.383 INFO    ] 200
[2026-10-18 12:41:50,386.386 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:41:50,427.427 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:42:00,443.443 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:42:00,484.484 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:42:00,495.495 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:42:00,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:42:00,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:42:00,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:42:02,567.567 INFO    ] ================================================
[2026-10-18 12:42:02,584.584 INFO    ] Launching Daemon at Sun Oct 18 12:42:02 IST 2026
[2026-10-18 12:42:02,601.601 INFO    ] ================================================
[2026-10-18 12:42:03,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:42:03
[2026-10-18 12:42:03,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:42:04,149.149 INFO    ] Initializing speech engine...
[2026-10-18 12:42:04,163.163 INFO    ] 2026-10-18 12:42:04
[2026-10-18 12:42:04,430.430 INFO    ] 2026-10-18 12:42:04
[2026-10-18 12:42:04,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:42:04,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:42:04,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:42:04,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:42:04,977.977 INFO    ] time= 18/10/2026 12:42:04
[2026-10-18 12:42:05,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:42:05,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:42:05,137.137 INFO    ] No existing commands found in stream
[2026-10-18 12:42:10,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:42:10,168.168 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-18 12:42:13,663.663 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:42:13,667.667 INFO    ] Checking for system updates...
[2026-10-18 12:42:13,707.707 INFO    ] 200
[2026-10-18 12:42:13,710.710 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:42:13,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:42:13,771.771 INFO    ] No update needed
[2026-10-18 12:42:13,774.774 INFO    ] Checking for camera pi updates...
[2026-10-18 12:42:13,809.809 INFO    ] 200
[2026-10-18 12:42:13,811.811 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:42:13,852.852 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:42:23,869.869 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:42:23,909.909 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:42:23,920.920 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:42:23,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:42:23,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:42:23,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:42:25,976.976 INFO    ] ================================================
[2026-10-18 12:42:25,991.991 INFO    ] Launching Daemon at Sun Oct 18 12:42:25 IST 2026
[2026-10-18 12:42:26,002.002 INFO    ] ================================================
[2026-10-18 12:42:26,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:42:26
[2026-10-18 12:42:27,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:42:27,458.458 INFO    ] Initializing speech engine...
[2026-10-18 12:42:27,463.463 INFO    ] 2026-10-18 12:42:27
[2026-10-18 12:42:27,726.726 INFO    ] 2026-10-18 12:42:27
[2026-10-18 12:42:27,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:42:28,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:42:28,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:42:28,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:42:28,269.269 INFO    ] time= 18/10/2026 12:42:28
[2026-10-18 12:42:28,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:42:28,298.298 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:42:28,425.425 INFO    ] No existing commands found in stream
[2026-10-18 12:42:33,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:42:33,454.454 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-18 12:42:34,668.668 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:42:34,671.671 INFO    ] Checking for system updates...
[2026-10-18 12:42:34,708.708 INFO    ] 200
[2026-10-18 12:42:34,711.711 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:42:34,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:42:34,778.778 INFO    ] No update needed
[2026-10-18 12:42:34,781.781 INFO    ] Checking for camera pi updates...
[2026-10-18 12:42:34,819.819 INFO    ] 200
[2026-10-18 12:42:34,822.822 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:42:34,869.869 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:42:44,884.884 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:42:44,925.925 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:42:44,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:42:44,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:42:44,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:42:44,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:42:46,994.994 INFO    ] ================================================
[2026-10-18 12:42:47,009.009 INFO    ] Launching Daemon at Sun Oct 18 12:42:47 IST 2026
[2026-10-18 12:42:47,020.020 INFO    ] ================================================
[2026-10-18 12:42:47,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:42:47
[2026-10-18 12:42:48,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:42:48,655.655 INFO    ] Initializing speech engine...
[2026-10-18 12:42:48,663.663 INFO    ] 2026-10-18 12:42:48
[2026-10-18 12:42:48,952.952 INFO    ] 2026-10-18 12:42:48
[2026-10-18 12:42:49,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:42:49,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:42:49,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:42:49,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:42:49,507.507 INFO    ] time= 18/10/2026 12:42:49
[2026-10-18 12:42:49,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:42:49,556.556 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:42:49,686.686 INFO    ] No existing commands found in stream
[2026-10-18 12:42:54,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:42:54,715.715 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-18 12:42:56,596.596 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:42:56,599.599 INFO    ] Checking for system updates...
[2026-10-18 12:42:56,636.636 INFO    ] 200
[2026-10-18 12:42:56,639.639 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:42:56,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:42:56,695.695 INFO    ] No update needed
[2026-10-18 12:42:56,698.698 INFO    ] Checking for camera pi updates...
[2026-10-18 12:42:56,733.733 INFO    ] 200
[2026-10-18 12:42:56,736.736 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:42:56,778.778 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:43:06,795.795 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:43:06,835.835 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:43:06,846.846 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:43:06,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:43:06,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:43:06,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:43:08,901.901 INFO    ] ================================================
[2026-10-18 12:43:08,916.916 INFO    ] Launching Daemon at Sun Oct 18 12:43:08 IST 2026
[2026-10-18 12:43:08,927.927 INFO    ] ================================================
[2026-10-18 12:43:09,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:43:09
[2026-10-18 12:43:10,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:43:10,391.391 INFO    ] Initializing speech engine...
[2026-10-18 12:43:10,400.400 INFO    ] 2026-10-18 12:43:10
[2026-10-18 12:43:10,698.698 INFO    ] 2026-10-18 12:43:10
[2026-10-18 12:43:10,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:43:10,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:43:11,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:43:11,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:43:11,223.223 INFO    ] time= 18/10/2026 12:43:11
[2026-10-18 12:43:11,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:43:11,342.342 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:43:11,511.511 INFO    ] No existing commands found in stream
[2026-10-18 12:43:16,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:43:16,530.530 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-18 12:43:19,451.451 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:43:19,454.454 INFO    ] Checking for system updates...
[2026-10-18 12:43:19,489.489 INFO    ] 200
[2026-10-18 12:43:19,491.491 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:43:19,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:43:19,546.546 INFO    ] No update needed
[2026-10-18 12:43:19,549.549 INFO    ] Checking for camera pi updates...
[2026-10-18 12:43:19,587.587 INFO    ] 200
[2026-10-18 12:43:19,589.589 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:43:19,631.631 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:43:29,647.647 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:43:29,683.683 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:43:29,692.692 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:43:29,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:43:29,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:43:29,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:43:31,748.748 INFO    ] ================================================
[2026-10-18 12:43:31,764.764 INFO    ] Launching Daemon at Sun Oct 18 12:43:31 IST 2026
[2026-10-18 12:43:31,775.775 INFO    ] ================================================
[2026-10-18 12:43:32,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:43:32
[2026-10-18 12:43:33,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:43:33,252.252 INFO    ] Initializing speech engine...
[2026-10-18 12:43:33,258.258 INFO    ] 2026-10-18 12:43:33
[2026-10-18 12:43:33,560.560 INFO    ] 2026-10-18 12:43:33
[2026-10-18 12:43:33,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:43:33,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:43:33,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:43:33,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:43:33,986.986 INFO    ] time= 18/10/2026 12:43:33
[2026-10-18 12:43:33,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:43:33,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:43:34,103.103 INFO    ] No existing commands found in stream
[2026-10-18 12:43:39,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:43:39,131.131 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-18 12:43:40,030.030 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:43:40,033.033 INFO    ] Checking for system updates...
[2026-10-18 12:43:40,070.070 INFO    ] 200
[2026-10-18 12:43:40,073.073 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:43:40,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:43:40,140.140 INFO    ] No update needed
[2026-10-18 12:43:40,143.143 INFO    ] Checking for camera pi updates...
[2026-10-18 12:43:40,177.177 INFO    ] 200
[2026-10-18 12:43:40,179.179 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:43:40,219.219 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:43:50,233.233 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:43:50,268.268 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:43:50,278.278 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:43:50,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:43:50,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:43:50,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:43:52,330.330 INFO    ] ================================================
[2026-10-18 12:43:52,345.345 INFO    ] Launching Daemon at Sun Oct 18 12:43:52 IST 2026
[2026-10-18 12:43:52,356.356 INFO    ] ================================================
[2026-10-18 12:43:52,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:43:52
[2026-10-18 12:43:53,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:43:53,789.789 INFO    ] Initializing speech engine...
[2026-10-18 12:43:53,798.798 INFO    ] 2026-10-18 12:43:53
[2026-10-18 12:43:54,096.096 INFO    ] 2026-10-18 12:43:54
[2026-10-18 12:43:54,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:43:54,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:43:54,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:43:54,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:43:54,523.523 INFO    ] time= 18/10/2026 12:43:54
[2026-10-18 12:43:54,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:43:54,537.537 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:43:54,668.668 INFO    ] No existing commands found in stream
[2026-10-18 12:43:59,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:43:59,696.696 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-18 12:44:01,154.154 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:44:01,156.156 INFO    ] Checking for system updates...
[2026-10-18 12:44:01,192.192 INFO    ] 200
[2026-10-18 12:44:01,195.195 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:44:01,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:44:01,250.250 INFO    ] No update needed
[2026-10-18 12:44:01,253.253 INFO    ] Checking for camera pi updates...
[2026-10-18 12:44:01,332.332 INFO    ] 200
[2026-10-18 12:44:01,344.344 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:44:01,423.423 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:44:11,447.447 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:44:11,483.483 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:44:11,492.492 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:44:11,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:44:11,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:44:11,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:44:13,545.545 INFO    ] ================================================
[2026-10-18 12:44:13,560.560 INFO    ] Launching Daemon at Sun Oct 18 12:44:13 IST 2026
[2026-10-18 12:44:13,571.571 INFO    ] ================================================
[2026-10-18 12:44:14,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:44:14
[2026-10-18 12:44:14,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:44:15,202.202 INFO    ] Initializing speech engine...
[2026-10-18 12:44:15,215.215 INFO    ] 2026-10-18 12:44:15
[2026-10-18 12:44:15,500.500 INFO    ] 2026-10-18 12:44:15
[2026-10-18 12:44:15,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:44:15,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:44:15,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:44:16,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:44:16,049.049 INFO    ] time= 18/10/2026 12:44:16
[2026-10-18 12:44:16,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:44:16,097.097 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:44:16,218.218 INFO    ] No existing commands found in stream
[2026-10-18 12:44:21,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:44:21,262.262 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-18 12:44:24,313.313 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:44:24,316.316 INFO    ] Checking for system updates...
[2026-10-18 12:44:24,353.353 INFO    ] 200
[2026-10-18 12:44:24,356.356 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:44:24,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:44:24,413.413 INFO    ] No update needed
[2026-10-18 12:44:24,416.416 INFO    ] Checking for camera pi updates...
[2026-10-18 12:44:24,454.454 INFO    ] 200
[2026-10-18 12:44:24,457.457 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:44:24,498.498 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:44:34,511.511 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:44:34,552.552 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:44:34,563.563 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:44:34,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:44:34,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:44:34,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:44:36,619.619 INFO    ] ================================================
[2026-10-18 12:44:36,634.634 INFO    ] Launching Daemon at Sun Oct 18 12:44:36 IST 2026
[2026-10-18 12:44:36,645.645 INFO    ] ================================================
[2026-10-18 12:44:37,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:44:37
[2026-10-18 12:44:37,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:44:38,116.116 INFO    ] Initializing speech engine...
[2026-10-18 12:44:38,125.125 INFO    ] 2026-10-18 12:44:38
[2026-10-18 12:44:38,389.389 INFO    ] 2026-10-18 12:44:38
[2026-10-18 12:44:38,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:44:38,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:44:38,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:44:38,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:44:38,867.867 INFO    ] time= 18/10/2026 12:44:38
[2026-10-18 12:44:38,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:44:38,939.939 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:44:39,073.073 INFO    ] No existing commands found in stream
[2026-10-18 12:44:44,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:44:44,098.098 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-18 12:44:45,323.323 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:44:45,326.326 INFO    ] Checking for system updates...
[2026-10-18 12:44:45,366.366 INFO    ] 200
[2026-10-18 12:44:45,368.368 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:44:45,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:44:45,423.423 INFO    ] No update needed
[2026-10-18 12:44:45,425.425 INFO    ] Checking for camera pi updates...
[2026-10-18 12:44:45,459.459 INFO    ] 200
[2026-10-18 12:44:45,462.462 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:44:45,502.502 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:44:55,518.518 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:44:55,553.553 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:44:55,563.563 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:44:55,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:44:55,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:44:55,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:44:57,617.617 INFO    ] ================================================
[2026-10-18 12:44:57,632.632 INFO    ] Launching Daemon at Sun Oct 18 12:44:57 IST 2026
[2026-10-18 12:44:57,643.643 INFO    ] ================================================
[2026-10-18 12:44:58,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:44:58
[2026-10-18 12:44:58,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:44:59,275.275 INFO    ] Initializing speech engine...
[2026-10-18 12:44:59,288.288 INFO    ] 2026-10-18 12:44:59
[2026-10-18 12:44:59,575.575 INFO    ] 2026-10-18 12:44:59
[2026-10-18 12:44:59,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:44:59,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:44:59,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:45:00,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:45:00,133.133 INFO    ] time= 18/10/2026 12:45:00
[2026-10-18 12:45:00,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:45:00,173.173 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:45:00,282.282 INFO    ] No existing commands found in stream
[2026-10-18 12:45:05,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:45:05,314.314 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-18 12:45:07,796.796 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:45:07,799.799 INFO    ] Checking for system updates...
[2026-10-18 12:45:07,836.836 INFO    ] 200
[2026-10-18 12:45:07,839.839 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:45:07,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:45:07,897.897 INFO    ] No update needed
[2026-10-18 12:45:07,901.901 INFO    ] Checking for camera pi updates...
[2026-10-18 12:45:07,939.939 INFO    ] 200
[2026-10-18 12:45:07,942.942 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:45:07,984.984 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:45:18,001.001 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:45:18,042.042 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:45:18,053.053 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:45:18,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:45:18,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:45:18,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:45:20,109.109 INFO    ] ================================================
[2026-10-18 12:45:20,124.124 INFO    ] Launching Daemon at Sun Oct 18 12:45:20 IST 2026
[2026-10-18 12:45:20,135.135 INFO    ] ================================================
[2026-10-18 12:45:20,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:45:20
[2026-10-18 12:45:21,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:45:21,598.598 INFO    ] Initializing speech engine...
[2026-10-18 12:45:21,604.604 INFO    ] 2026-10-18 12:45:21
[2026-10-18 12:45:21,880.880 INFO    ] 2026-10-18 12:45:21
[2026-10-18 12:45:21,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:45:22,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:45:22,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:45:22,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:45:22,416.416 INFO    ] time= 18/10/2026 12:45:22
[2026-10-18 12:45:22,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:45:22,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:45:22,594.594 INFO    ] No existing commands found in stream
[2026-10-18 12:45:27,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:45:27,627.627 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-18 12:45:28,913.913 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:45:28,916.916 INFO    ] Checking for system updates...
[2026-10-18 12:45:28,953.953 INFO    ] 200
[2026-10-18 12:45:28,956.956 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:45:29,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:45:29,013.013 INFO    ] No update needed
[2026-10-18 12:45:29,016.016 INFO    ] Checking for camera pi updates...
[2026-10-18 12:45:29,051.051 INFO    ] 200
[2026-10-18 12:45:29,054.054 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:45:29,095.095 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:45:39,112.112 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:45:39,153.153 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:45:39,165.165 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:45:39,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:45:39,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:45:39,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:45:41,222.222 INFO    ] ================================================
[2026-10-18 12:45:41,237.237 INFO    ] Launching Daemon at Sun Oct 18 12:45:41 IST 2026
[2026-10-18 12:45:41,248.248 INFO    ] ================================================
[2026-10-18 12:45:41,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:45:41
[2026-10-18 12:45:42,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:45:42,888.888 INFO    ] Initializing speech engine...
[2026-10-18 12:45:42,897.897 INFO    ] 2026-10-18 12:45:42
[2026-10-18 12:45:43,184.184 INFO    ] 2026-10-18 12:45:43
[2026-10-18 12:45:43,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:45:43,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:45:43,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:45:43,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:45:43,735.735 INFO    ] time= 18/10/2026 12:45:43
[2026-10-18 12:45:43,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:45:43,774.774 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:45:43,898.898 INFO    ] No existing commands found in stream
[2026-10-18 12:45:48,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:45:48,928.928 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-18 12:45:50,410.410 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:45:50,413.413 INFO    ] Checking for system updates...
[2026-10-18 12:45:50,454.454 INFO    ] 200
[2026-10-18 12:45:50,457.457 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:45:50,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:45:50,513.513 INFO    ] No update needed
[2026-10-18 12:45:50,516.516 INFO    ] Checking for camera pi updates...
[2026-10-18 12:45:50,551.551 INFO    ] 200
[2026-10-18 12:45:50,554.554 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:45:50,595.595 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:46:00,611.611 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:46:00,652.652 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:46:00,663.663 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:46:00,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:46:00,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:46:00,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:46:02,723.723 INFO    ] ================================================
[2026-10-18 12:46:02,740.740 INFO    ] Launching Daemon at Sun Oct 18 12:46:02 IST 2026
[2026-10-18 12:46:02,753.753 INFO    ] ================================================
[2026-10-18 12:46:03,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:46:03
[2026-10-18 12:46:04,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:46:04,317.317 INFO    ] Initializing speech engine...
[2026-10-18 12:46:04,322.322 INFO    ] 2026-10-18 12:46:04
[2026-10-18 12:46:04,603.603 INFO    ] 2026-10-18 12:46:04
[2026-10-18 12:46:04,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:46:04,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:46:04,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:46:05,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:46:05,106.106 INFO    ] time= 18/10/2026 12:46:05
[2026-10-18 12:46:05,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:46:05,173.173 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:46:05,342.342 INFO    ] No existing commands found in stream
[2026-10-18 12:46:10,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:46:10,381.381 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-18 12:46:13,403.403 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:46:13,406.406 INFO    ] Checking for system updates...
[2026-10-18 12:46:13,441.441 INFO    ] 200
[2026-10-18 12:46:13,444.444 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:46:13,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:46:13,500.500 INFO    ] No update needed
[2026-10-18 12:46:13,502.502 INFO    ] Checking for camera pi updates...
[2026-10-18 12:46:13,536.536 INFO    ] 200
[2026-10-18 12:46:13,538.538 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:46:13,579.579 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:46:23,595.595 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:46:23,630.630 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:46:23,639.639 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:46:23,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:46:23,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:46:23,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:46:25,693.693 INFO    ] ================================================
[2026-10-18 12:46:25,709.709 INFO    ] Launching Daemon at Sun Oct 18 12:46:25 IST 2026
[2026-10-18 12:46:25,721.721 INFO    ] ================================================
[2026-10-18 12:46:26,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:46:26
[2026-10-18 12:46:27,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:46:27,360.360 INFO    ] Initializing speech engine...
[2026-10-18 12:46:27,372.372 INFO    ] 2026-10-18 12:46:27
[2026-10-18 12:46:27,681.681 INFO    ] 2026-10-18 12:46:27
[2026-10-18 12:46:27,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:46:28,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:46:28,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:46:28,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:46:28,340.340 INFO    ] time= 18/10/2026 12:46:28
[2026-10-18 12:46:28,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:46:28,445.445 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:46:28,627.627 INFO    ] No existing commands found in stream
[2026-10-18 12:46:33,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:46:33,647.647 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-18 12:46:37,082.082 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:46:37,085.085 INFO    ] Checking for system updates...
[2026-10-18 12:46:37,122.122 INFO    ] 200
[2026-10-18 12:46:37,125.125 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:46:37,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:46:37,181.181 INFO    ] No update needed
[2026-10-18 12:46:37,184.184 INFO    ] Checking for camera pi updates...
[2026-10-18 12:46:37,218.218 INFO    ] 200
[2026-10-18 12:46:37,221.221 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:46:37,262.262 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:46:47,278.278 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:46:47,322.322 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:46:47,334.334 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:46:47,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:46:47,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:46:47,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:46:49,389.389 INFO    ] ================================================
[2026-10-18 12:46:49,405.405 INFO    ] Launching Daemon at Sun Oct 18 12:46:49 IST 2026
[2026-10-18 12:46:49,417.417 INFO    ] ================================================
[2026-10-18 12:46:50,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:46:50
[2026-10-18 12:46:50,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:46:50,946.946 INFO    ] Initializing speech engine...
[2026-10-18 12:46:50,957.957 INFO    ] 2026-10-18 12:46:50
[2026-10-18 12:46:51,226.226 INFO    ] 2026-10-18 12:46:51
[2026-10-18 12:46:51,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:46:51,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:46:51,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:46:51,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:46:51,652.652 INFO    ] time= 18/10/2026 12:46:51
[2026-10-18 12:46:51,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:46:51,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:46:51,807.807 INFO    ] No existing commands found in stream
[2026-10-18 12:46:56,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:46:56,841.841 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-18 12:46:58,465.465 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:46:58,468.468 INFO    ] Checking for system updates...
[2026-10-18 12:46:58,503.503 INFO    ] 200
[2026-10-18 12:46:58,505.505 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:46:58,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:46:58,561.561 INFO    ] No update needed
[2026-10-18 12:46:58,563.563 INFO    ] Checking for camera pi updates...
[2026-10-18 12:46:58,600.600 INFO    ] 200
[2026-10-18 12:46:58,602.602 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:46:58,642.642 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:47:08,657.657 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:47:08,692.692 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:47:08,701.701 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:47:08,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:47:08,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:47:08,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:47:10,755.755 INFO    ] ================================================
[2026-10-18 12:47:10,770.770 INFO    ] Launching Daemon at Sun Oct 18 12:47:10 IST 2026
[2026-10-18 12:47:10,782.782 INFO    ] ================================================
[2026-10-18 12:47:11,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:47:11
[2026-10-18 12:47:11,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:47:12,209.209 INFO    ] Initializing speech engine...
[2026-10-18 12:47:12,218.218 INFO    ] 2026-10-18 12:47:12
[2026-10-18 12:47:12,465.465 INFO    ] 2026-10-18 12:47:12
[2026-10-18 12:47:12,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:47:12,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:47:12,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:47:12,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:47:12,987.987 INFO    ] time= 18/10/2026 12:47:12
[2026-10-18 12:47:12,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:47:12,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:47:13,070.070 INFO    ] No existing commands found in stream
[2026-10-18 12:47:18,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:47:18,103.103 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-18 12:47:20,352.352 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:47:20,355.355 INFO    ] Checking for system updates...
[2026-10-18 12:47:20,391.391 INFO    ] 200
[2026-10-18 12:47:20,393.393 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:47:20,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:47:20,449.449 INFO    ] No update needed
[2026-10-18 12:47:20,451.451 INFO    ] Checking for camera pi updates...
[2026-10-18 12:47:20,484.484 INFO    ] 200
[2026-10-18 12:47:20,487.487 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:47:20,527.527 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:47:30,542.542 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:47:30,577.577 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:47:30,586.586 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:47:30,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:47:30,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:47:30,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:47:32,645.645 INFO    ] ================================================
[2026-10-18 12:47:32,671.671 INFO    ] Launching Daemon at Sun Oct 18 12:47:32 IST 2026
[2026-10-18 12:47:32,683.683 INFO    ] ================================================
[2026-10-18 12:47:33,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:47:33
[2026-10-18 12:47:33,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:47:34,179.179 INFO    ] Initializing speech engine...
[2026-10-18 12:47:34,197.197 INFO    ] 2026-10-18 12:47:34
[2026-10-18 12:47:34,465.465 INFO    ] 2026-10-18 12:47:34
[2026-10-18 12:47:34,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:47:34,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:47:34,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:47:34,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:47:35,044.044 INFO    ] time= 18/10/2026 12:47:34
[2026-10-18 12:47:35,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:47:35,084.084 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:47:35,202.202 INFO    ] No existing commands found in stream
[2026-10-18 12:47:40,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:47:40,240.240 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-18 12:47:43,111.111 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:47:43,114.114 INFO    ] Checking for system updates...
[2026-10-18 12:47:43,151.151 INFO    ] 200
[2026-10-18 12:47:43,154.154 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:47:43,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:47:43,210.210 INFO    ] No update needed
[2026-10-18 12:47:43,212.212 INFO    ] Checking for camera pi updates...
[2026-10-18 12:47:43,247.247 INFO    ] 200
[2026-10-18 12:47:43,250.250 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:47:43,291.291 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:47:53,307.307 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:47:53,348.348 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:47:53,359.359 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:47:53,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:47:53,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:47:53,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:47:55,416.416 INFO    ] ================================================
[2026-10-18 12:47:55,432.432 INFO    ] Launching Daemon at Sun Oct 18 12:47:55 IST 2026
[2026-10-18 12:47:55,448.448 INFO    ] ================================================
[2026-10-18 12:47:56,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:47:56
[2026-10-18 12:47:56,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:47:56,921.921 INFO    ] Initializing speech engine...
[2026-10-18 12:47:56,928.928 INFO    ] 2026-10-18 12:47:56
[2026-10-18 12:47:57,186.186 INFO    ] 2026-10-18 12:47:57
[2026-10-18 12:47:57,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:47:57,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:47:57,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:47:57,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:47:57,726.726 INFO    ] time= 18/10/2026 12:47:57
[2026-10-18 12:47:57,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:47:57,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:47:57,885.885 INFO    ] No existing commands found in stream
[2026-10-18 12:48:02,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:48:02,918.918 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-18 12:48:04,036.036 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:48:04,039.039 INFO    ] Checking for system updates...
[2026-10-18 12:48:04,074.074 INFO    ] 200
[2026-10-18 12:48:04,077.077 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:48:04,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:48:04,133.133 INFO    ] No update needed
[2026-10-18 12:48:04,135.135 INFO    ] Checking for camera pi updates...
[2026-10-18 12:48:04,169.169 INFO    ] 200
[2026-10-18 12:48:04,172.172 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:48:04,213.213 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:48:14,228.228 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:48:14,262.262 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:48:14,272.272 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:48:14,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:48:14,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:48:14,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:48:16,324.324 INFO    ] ================================================
[2026-10-18 12:48:16,339.339 INFO    ] Launching Daemon at Sun Oct 18 12:48:16 IST 2026
[2026-10-18 12:48:16,354.354 INFO    ] ================================================
[2026-10-18 12:48:16,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:48:16
[2026-10-18 12:48:17,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:48:17,775.775 INFO    ] Initializing speech engine...
[2026-10-18 12:48:17,784.784 INFO    ] 2026-10-18 12:48:17
[2026-10-18 12:48:18,036.036 INFO    ] 2026-10-18 12:48:18
[2026-10-18 12:48:18,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:48:18,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:48:18,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:48:18,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:48:18,594.594 INFO    ] time= 18/10/2026 12:48:18
[2026-10-18 12:48:18,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:48:18,622.622 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:48:18,762.762 INFO    ] No existing commands found in stream
[2026-10-18 12:48:23,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:48:23,788.788 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-18 12:48:26,559.559 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:48:26,561.561 INFO    ] Checking for system updates...
[2026-10-18 12:48:26,601.601 INFO    ] 200
[2026-10-18 12:48:26,604.604 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:48:26,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:48:26,666.666 INFO    ] No update needed
[2026-10-18 12:48:26,669.669 INFO    ] Checking for camera pi updates...
[2026-10-18 12:48:26,702.702 INFO    ] 200
[2026-10-18 12:48:26,704.704 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:48:26,744.744 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:48:36,759.759 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:48:36,794.794 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:48:36,804.804 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:48:36,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:48:36,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:48:36,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:48:38,857.857 INFO    ] ================================================
[2026-10-18 12:48:38,872.872 INFO    ] Launching Daemon at Sun Oct 18 12:48:38 IST 2026
[2026-10-18 12:48:38,883.883 INFO    ] ================================================
[2026-10-18 12:48:39,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:48:39
[2026-10-18 12:48:40,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:48:40,355.355 INFO    ] Initializing speech engine...
[2026-10-18 12:48:40,364.364 INFO    ] 2026-10-18 12:48:40
[2026-10-18 12:48:40,611.611 INFO    ] 2026-10-18 12:48:40
[2026-10-18 12:48:40,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:48:40,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:48:40,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:48:41,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:48:41,141.141 INFO    ] time= 18/10/2026 12:48:41
[2026-10-18 12:48:41,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:48:41,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:48:41,323.323 INFO    ] No existing commands found in stream
[2026-10-18 12:48:46,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:48:46,341.341 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-18 12:48:50,426.426 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:48:50,429.429 INFO    ] Checking for system updates...
[2026-10-18 12:48:50,469.469 INFO    ] 200
[2026-10-18 12:48:50,472.472 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:48:50,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:48:50,527.527 INFO    ] No update needed
[2026-10-18 12:48:50,529.529 INFO    ] Checking for camera pi updates...
[2026-10-18 12:48:50,567.567 INFO    ] 200
[2026-10-18 12:48:50,569.569 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:48:50,609.609 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:49:00,624.624 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:49:00,659.659 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:49:00,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:49:00,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:49:00,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:49:00,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:49:02,729.729 INFO    ] ================================================
[2026-10-18 12:49:02,747.747 INFO    ] Launching Daemon at Sun Oct 18 12:49:02 IST 2026
[2026-10-18 12:49:02,760.760 INFO    ] ================================================
[2026-10-18 12:49:03,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:49:03
[2026-10-18 12:49:03,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:49:04,258.258 INFO    ] Initializing speech engine...
[2026-10-18 12:49:04,263.263 INFO    ] 2026-10-18 12:49:04
[2026-10-18 12:49:04,511.511 INFO    ] 2026-10-18 12:49:04
[2026-10-18 12:49:04,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:49:04,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:49:04,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:49:05,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:49:05,070.070 INFO    ] time= 18/10/2026 12:49:05
[2026-10-18 12:49:05,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:49:05,117.117 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:49:05,278.278 INFO    ] No existing commands found in stream
[2026-10-18 12:49:10,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:49:10,306.306 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-18 12:49:14,738.738 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:49:14,741.741 INFO    ] Checking for system updates...
[2026-10-18 12:49:14,778.778 INFO    ] 200
[2026-10-18 12:49:14,780.780 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:49:14,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:49:14,836.836 INFO    ] No update needed
[2026-10-18 12:49:14,839.839 INFO    ] Checking for camera pi updates...
[2026-10-18 12:49:14,875.875 INFO    ] 200
[2026-10-18 12:49:14,878.878 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:49:14,919.919 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:49:24,935.935 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:49:24,971.971 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:49:24,981.981 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:49:24,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:49:24,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:49:24,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:49:27,035.035 INFO    ] ================================================
[2026-10-18 12:49:27,050.050 INFO    ] Launching Daemon at Sun Oct 18 12:49:27 IST 2026
[2026-10-18 12:49:27,061.061 INFO    ] ================================================
[2026-10-18 12:49:27,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:49:27
[2026-10-18 12:49:28,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:49:28,482.482 INFO    ] Initializing speech engine...
[2026-10-18 12:49:28,491.491 INFO    ] 2026-10-18 12:49:28
[2026-10-18 12:49:28,737.737 INFO    ] 2026-10-18 12:49:28
[2026-10-18 12:49:28,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:49:29,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:49:29,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:49:29,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:49:29,291.291 INFO    ] time= 18/10/2026 12:49:29
[2026-10-18 12:49:29,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:49:29,316.316 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:49:29,448.448 INFO    ] No existing commands found in stream
[2026-10-18 12:49:34,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:49:34,469.469 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-18 12:49:37,991.991 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:49:37,993.993 INFO    ] Checking for system updates...
[2026-10-18 12:49:38,032.032 INFO    ] 200
[2026-10-18 12:49:38,035.035 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:49:38,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:49:38,093.093 INFO    ] No update needed
[2026-10-18 12:49:38,095.095 INFO    ] Checking for camera pi updates...
[2026-10-18 12:49:38,132.132 INFO    ] 200
[2026-10-18 12:49:38,134.134 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:49:38,176.176 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:49:48,191.191 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:49:48,227.227 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:49:48,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:49:48,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:49:48,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:49:48,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:49:50,289.289 INFO    ] ================================================
[2026-10-18 12:49:50,304.304 INFO    ] Launching Daemon at Sun Oct 18 12:49:50 IST 2026
[2026-10-18 12:49:50,315.315 INFO    ] ================================================
[2026-10-18 12:49:50,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:49:50
[2026-10-18 12:49:51,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:49:51,816.816 INFO    ] Initializing speech engine...
[2026-10-18 12:49:51,835.835 INFO    ] 2026-10-18 12:49:51
[2026-10-18 12:49:52,099.099 INFO    ] 2026-10-18 12:49:52
[2026-10-18 12:49:52,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:49:52,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:49:52,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:49:52,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:49:52,611.611 INFO    ] time= 18/10/2026 12:49:52
[2026-10-18 12:49:52,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:49:52,709.709 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:49:52,876.876 INFO    ] No existing commands found in stream
[2026-10-18 12:49:57,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:49:57,891.891 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-18 12:49:59,055.055 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:49:59,058.058 INFO    ] Checking for system updates...
[2026-10-18 12:49:59,093.093 INFO    ] 200
[2026-10-18 12:49:59,096.096 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:49:59,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:49:59,151.151 INFO    ] No update needed
[2026-10-18 12:49:59,153.153 INFO    ] Checking for camera pi updates...
[2026-10-18 12:49:59,189.189 INFO    ] 200
[2026-10-18 12:49:59,191.191 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:49:59,234.234 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:50:09,248.248 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:50:09,282.282 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:50:09,292.292 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:50:09,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:50:09,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:50:09,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:50:11,344.344 INFO    ] ================================================
[2026-10-18 12:50:11,359.359 INFO    ] Launching Daemon at Sun Oct 18 12:50:11 IST 2026
[2026-10-18 12:50:11,371.371 INFO    ] ================================================
[2026-10-18 12:50:12,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:50:12
[2026-10-18 12:50:12,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:50:13,010.010 INFO    ] Initializing speech engine...
[2026-10-18 12:50:13,023.023 INFO    ] 2026-10-18 12:50:13
[2026-10-18 12:50:13,309.309 INFO    ] 2026-10-18 12:50:13
[2026-10-18 12:50:13,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:50:13,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:50:13,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:50:13,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:50:13,860.860 INFO    ] time= 18/10/2026 12:50:13
[2026-10-18 12:50:13,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:50:13,909.909 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:50:14,020.020 INFO    ] No existing commands found in stream
[2026-10-18 12:50:19,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:50:19,054.054 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-18 12:50:20,444.444 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:50:20,447.447 INFO    ] Checking for system updates...
[2026-10-18 12:50:20,488.488 INFO    ] 200
[2026-10-18 12:50:20,490.490 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:50:20,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:50:20,550.550 INFO    ] No update needed
[2026-10-18 12:50:20,552.552 INFO    ] Checking for camera pi updates...
[2026-10-18 12:50:20,590.590 INFO    ] 200
[2026-10-18 12:50:20,592.592 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:50:20,632.632 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:50:30,648.648 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:50:30,684.684 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:50:30,694.694 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:50:30,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:50:30,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:50:30,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:50:32,754.754 INFO    ] ================================================
[2026-10-18 12:50:32,776.776 INFO    ] Launching Daemon at Sun Oct 18 12:50:32 IST 2026
[2026-10-18 12:50:32,788.788 INFO    ] ================================================
[2026-10-18 12:50:33,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:50:33
[2026-10-18 12:50:34,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:50:34,331.331 INFO    ] Initializing speech engine...
[2026-10-18 12:50:34,340.340 INFO    ] 2026-10-18 12:50:34
[2026-10-18 12:50:34,600.600 INFO    ] 2026-10-18 12:50:34
[2026-10-18 12:50:34,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:50:34,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:50:34,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:50:35,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:50:35,150.150 INFO    ] time= 18/10/2026 12:50:35
[2026-10-18 12:50:35,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:50:35,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:50:35,303.303 INFO    ] No existing commands found in stream
[2026-10-18 12:50:40,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:50:40,321.321 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-18 12:50:43,031.031 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:50:43,033.033 INFO    ] Checking for system updates...
[2026-10-18 12:50:43,069.069 INFO    ] 200
[2026-10-18 12:50:43,071.071 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:50:43,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:50:43,134.134 INFO    ] No update needed
[2026-10-18 12:50:43,136.136 INFO    ] Checking for camera pi updates...
[2026-10-18 12:50:43,171.171 INFO    ] 200
[2026-10-18 12:50:43,173.173 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:50:43,219.219 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:50:53,236.236 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:50:53,275.275 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:50:53,286.286 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:50:53,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:50:53,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:50:53,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:50:55,342.342 INFO    ] ================================================
[2026-10-18 12:50:55,358.358 INFO    ] Launching Daemon at Sun Oct 18 12:50:55 IST 2026
[2026-10-18 12:50:55,369.369 INFO    ] ================================================
[2026-10-18 12:50:56,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:50:56
[2026-10-18 12:50:56,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:50:56,900.900 INFO    ] Initializing speech engine...
[2026-10-18 12:50:56,925.925 INFO    ] 2026-10-18 12:50:56
[2026-10-18 12:50:57,200.200 INFO    ] 2026-10-18 12:50:57
[2026-10-18 12:50:57,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:50:57,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:50:57,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:50:57,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:50:57,704.704 INFO    ] time= 18/10/2026 12:50:57
[2026-10-18 12:50:57,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:50:57,792.792 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:50:57,910.910 INFO    ] No existing commands found in stream
[2026-10-18 12:51:02,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:51:02,922.922 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-18 12:51:03,486.486 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:51:03,489.489 INFO    ] Checking for system updates...
[2026-10-18 12:51:03,532.532 INFO    ] 200
[2026-10-18 12:51:03,535.535 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:51:03,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:51:03,597.597 INFO    ] No update needed
[2026-10-18 12:51:03,600.600 INFO    ] Checking for camera pi updates...
[2026-10-18 12:51:03,634.634 INFO    ] 200
[2026-10-18 12:51:03,637.637 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:51:03,681.681 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:51:13,697.697 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:51:13,733.733 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:51:13,743.743 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:51:13,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:51:13,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:51:13,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:51:15,796.796 INFO    ] ================================================
[2026-10-18 12:51:15,812.812 INFO    ] Launching Daemon at Sun Oct 18 12:51:15 IST 2026
[2026-10-18 12:51:15,823.823 INFO    ] ================================================
[2026-10-18 12:51:16,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:51:16
[2026-10-18 12:51:16,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:51:17,239.239 INFO    ] Initializing speech engine...
[2026-10-18 12:51:17,263.263 INFO    ] 2026-10-18 12:51:17
[2026-10-18 12:51:17,521.521 INFO    ] 2026-10-18 12:51:17
[2026-10-18 12:51:17,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:51:17,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:51:17,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:51:18,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:51:18,102.102 INFO    ] time= 18/10/2026 12:51:18
[2026-10-18 12:51:18,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:51:18,127.127 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:51:18,269.269 INFO    ] No existing commands found in stream
[2026-10-18 12:51:23,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:51:23,302.302 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-18 12:51:27,540.540 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:51:27,542.542 INFO    ] Checking for system updates...
[2026-10-18 12:51:27,582.582 INFO    ] 200
[2026-10-18 12:51:27,584.584 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:51:27,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:51:27,640.640 INFO    ] No update needed
[2026-10-18 12:51:27,642.642 INFO    ] Checking for camera pi updates...
[2026-10-18 12:51:27,680.680 INFO    ] 200
[2026-10-18 12:51:27,683.683 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:51:27,724.724 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:51:37,740.740 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:51:37,781.781 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:51:37,792.792 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:51:37,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:51:37,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:51:37,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:51:39,847.847 INFO    ] ================================================
[2026-10-18 12:51:39,863.863 INFO    ] Launching Daemon at Sun Oct 18 12:51:39 IST 2026
[2026-10-18 12:51:39,874.874 INFO    ] ================================================
[2026-10-18 12:51:40,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:51:40
[2026-10-18 12:51:41,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:51:41,302.302 INFO    ] Initializing speech engine...
[2026-10-18 12:51:41,307.307 INFO    ] 2026-10-18 12:51:41
[2026-10-18 12:51:41,579.579 INFO    ] 2026-10-18 12:51:41
[2026-10-18 12:51:41,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:51:41,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:51:41,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:51:42,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:51:42,110.110 INFO    ] time= 18/10/2026 12:51:42
[2026-10-18 12:51:42,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:51:42,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:51:42,273.273 INFO    ] No existing commands found in stream
[2026-10-18 12:51:47,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:51:47,301.301 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-18 12:51:51,197.197 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:51:51,199.199 INFO    ] Checking for system updates...
[2026-10-18 12:51:51,239.239 INFO    ] 200
[2026-10-18 12:51:51,242.242 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:51:51,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:51:51,297.297 INFO    ] No update needed
[2026-10-18 12:51:51,299.299 INFO    ] Checking for camera pi updates...
[2026-10-18 12:51:51,333.333 INFO    ] 200
[2026-10-18 12:51:51,335.335 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:51:51,381.381 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:52:01,397.397 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:52:01,432.432 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:52:01,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:52:01,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:52:01,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:52:01,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:52:03,498.498 INFO    ] ================================================
[2026-10-18 12:52:03,514.514 INFO    ] Launching Daemon at Sun Oct 18 12:52:03 IST 2026
[2026-10-18 12:52:03,525.525 INFO    ] ================================================
[2026-10-18 12:52:04,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:52:04
[2026-10-18 12:52:04,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:52:05,006.006 INFO    ] Initializing speech engine...
[2026-10-18 12:52:05,014.014 INFO    ] 2026-10-18 12:52:05
[2026-10-18 12:52:05,267.267 INFO    ] 2026-10-18 12:52:05
[2026-10-18 12:52:05,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:52:05,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:52:05,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:52:05,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:52:05,833.833 INFO    ] time= 18/10/2026 12:52:05
[2026-10-18 12:52:05,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:52:05,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:52:05,991.991 INFO    ] No existing commands found in stream
[2026-10-18 12:52:11,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:52:11,006.006 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-18 12:52:12,421.421 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:52:12,424.424 INFO    ] Checking for system updates...
[2026-10-18 12:52:12,462.462 INFO    ] 200
[2026-10-18 12:52:12,464.464 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:52:12,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:52:12,525.525 INFO    ] No update needed
[2026-10-18 12:52:12,528.528 INFO    ] Checking for camera pi updates...
[2026-10-18 12:52:12,564.564 INFO    ] 200
[2026-10-18 12:52:12,567.567 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:52:12,611.611 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:52:22,627.627 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:52:22,665.665 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:52:22,676.676 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:52:22,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:52:22,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:52:22,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:52:24,731.731 INFO    ] ================================================
[2026-10-18 12:52:24,747.747 INFO    ] Launching Daemon at Sun Oct 18 12:52:24 IST 2026
[2026-10-18 12:52:24,757.757 INFO    ] ================================================
[2026-10-18 12:52:25,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:52:25
[2026-10-18 12:52:25,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:52:26,224.224 INFO    ] Initializing speech engine...
[2026-10-18 12:52:26,232.232 INFO    ] 2026-10-18 12:52:26
[2026-10-18 12:52:26,493.493 INFO    ] 2026-10-18 12:52:26
[2026-10-18 12:52:26,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:52:26,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:52:26,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:52:26,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:52:26,956.956 INFO    ] time= 18/10/2026 12:52:26
[2026-10-18 12:52:27,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:52:27,050.050 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:52:27,195.195 INFO    ] No existing commands found in stream
[2026-10-18 12:52:32,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:52:32,213.213 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-18 12:52:35,600.600 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:52:35,603.603 INFO    ] Checking for system updates...
[2026-10-18 12:52:35,643.643 INFO    ] 200
[2026-10-18 12:52:35,646.646 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:52:35,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:52:35,708.708 INFO    ] No update needed
[2026-10-18 12:52:35,710.710 INFO    ] Checking for camera pi updates...
[2026-10-18 12:52:35,747.747 INFO    ] 200
[2026-10-18 12:52:35,750.750 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:52:35,795.795 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:52:45,810.810 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:52:45,845.845 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:52:45,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:52:45,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:52:45,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:52:45,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:52:47,907.907 INFO    ] ================================================
[2026-10-18 12:52:47,922.922 INFO    ] Launching Daemon at Sun Oct 18 12:52:47 IST 2026
[2026-10-18 12:52:47,933.933 INFO    ] ================================================
[2026-10-18 12:52:48,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:52:48
[2026-10-18 12:52:49,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:52:49,395.395 INFO    ] Initializing speech engine...
[2026-10-18 12:52:49,409.409 INFO    ] 2026-10-18 12:52:49
[2026-10-18 12:52:49,673.673 INFO    ] 2026-10-18 12:52:49
[2026-10-18 12:52:49,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:52:49,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:52:50,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:52:50,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:52:50,289.289 INFO    ] time= 18/10/2026 12:52:50
[2026-10-18 12:52:50,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:52:50,312.312 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:52:50,472.472 INFO    ] No existing commands found in stream
[2026-10-18 12:52:55,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:52:55,506.506 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-18 12:52:59,039.039 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:52:59,042.042 INFO    ] Checking for system updates...
[2026-10-18 12:52:59,080.080 INFO    ] 200
[2026-10-18 12:52:59,082.082 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:52:59,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:52:59,138.138 INFO    ] No update needed
[2026-10-18 12:52:59,141.141 INFO    ] Checking for camera pi updates...
[2026-10-18 12:52:59,177.177 INFO    ] 200
[2026-10-18 12:52:59,179.179 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:52:59,219.219 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:53:09,234.234 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:53:09,270.270 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:53:09,280.280 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:53:09,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:53:09,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:53:09,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:53:11,334.334 INFO    ] ================================================
[2026-10-18 12:53:11,350.350 INFO    ] Launching Daemon at Sun Oct 18 12:53:11 IST 2026
[2026-10-18 12:53:11,361.361 INFO    ] ================================================
[2026-10-18 12:53:11,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:53:11
[2026-10-18 12:53:12,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:53:12,776.776 INFO    ] Initializing speech engine...
[2026-10-18 12:53:12,783.783 INFO    ] 2026-10-18 12:53:12
[2026-10-18 12:53:13,080.080 INFO    ] 2026-10-18 12:53:13
[2026-10-18 12:53:13,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:53:13,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:53:13,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:53:13,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:53:13,511.511 INFO    ] time= 18/10/2026 12:53:13
[2026-10-18 12:53:13,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:53:13,585.585 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:53:13,720.720 INFO    ] No existing commands found in stream
[2026-10-18 12:53:18,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:53:18,747.747 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-18 12:53:19,878.878 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:53:19,881.881 INFO    ] Checking for system updates...
[2026-10-18 12:53:19,920.920 INFO    ] 200
[2026-10-18 12:53:19,922.922 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:53:19,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:53:19,977.977 INFO    ] No update needed
[2026-10-18 12:53:19,979.979 INFO    ] Checking for camera pi updates...
[2026-10-18 12:53:20,016.016 INFO    ] 200
[2026-10-18 12:53:20,019.019 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:53:20,063.063 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:53:30,078.078 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:53:30,113.113 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:53:30,122.122 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:53:30,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:53:30,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:53:30,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:53:32,178.178 INFO    ] ================================================
[2026-10-18 12:53:32,194.194 INFO    ] Launching Daemon at Sun Oct 18 12:53:32 IST 2026
[2026-10-18 12:53:32,206.206 INFO    ] ================================================
[2026-10-18 12:53:32,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:53:32
[2026-10-18 12:53:33,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:53:33,769.769 INFO    ] Initializing speech engine...
[2026-10-18 12:53:33,783.783 INFO    ] 2026-10-18 12:53:33
[2026-10-18 12:53:34,069.069 INFO    ] 2026-10-18 12:53:34
[2026-10-18 12:53:34,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:53:34,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:53:34,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:53:34,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:53:34,599.599 INFO    ] time= 18/10/2026 12:53:34
[2026-10-18 12:53:34,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:53:34,649.649 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:53:34,798.798 INFO    ] No existing commands found in stream
[2026-10-18 12:53:39,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:53:39,832.832 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-18 12:53:40,831.831 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:53:40,834.834 INFO    ] Checking for system updates...
[2026-10-18 12:53:40,871.871 INFO    ] 200
[2026-10-18 12:53:40,874.874 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:53:40,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:53:40,930.930 INFO    ] No update needed
[2026-10-18 12:53:40,933.933 INFO    ] Checking for camera pi updates...
[2026-10-18 12:53:40,968.968 INFO    ] 200
[2026-10-18 12:53:40,971.971 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:53:41,017.017 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:53:51,034.034 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:53:51,073.073 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:53:51,085.085 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:53:51,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:53:51,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:53:51,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:53:53,140.140 INFO    ] ================================================
[2026-10-18 12:53:53,162.162 INFO    ] Launching Daemon at Sun Oct 18 12:53:53 IST 2026
[2026-10-18 12:53:53,174.174 INFO    ] ================================================
[2026-10-18 12:53:53,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:53:53
[2026-10-18 12:53:54,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:53:54,612.612 INFO    ] Initializing speech engine...
[2026-10-18 12:53:54,619.619 INFO    ] 2026-10-18 12:53:54
[2026-10-18 12:53:54,878.878 INFO    ] 2026-10-18 12:53:54
[2026-10-18 12:53:54,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:53:55,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:53:55,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:53:55,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:53:55,440.440 INFO    ] time= 18/10/2026 12:53:55
[2026-10-18 12:53:55,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:53:55,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:53:55,601.601 INFO    ] No existing commands found in stream
[2026-10-18 12:54:00,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:54:00,618.618 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-18 12:54:01,214.214 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:54:01,217.217 INFO    ] Checking for system updates...
[2026-10-18 12:54:01,258.258 INFO    ] 200
[2026-10-18 12:54:01,261.261 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:54:01,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:54:01,317.317 INFO    ] No update needed
[2026-10-18 12:54:01,319.319 INFO    ] Checking for camera pi updates...
[2026-10-18 12:54:01,357.357 INFO    ] 200
[2026-10-18 12:54:01,362.362 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:54:01,459.459 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:54:11,480.480 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:54:11,514.514 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:54:11,523.523 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:54:11,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:54:11,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:54:11,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:54:13,577.577 INFO    ] ================================================
[2026-10-18 12:54:13,592.592 INFO    ] Launching Daemon at Sun Oct 18 12:54:13 IST 2026
[2026-10-18 12:54:13,604.604 INFO    ] ================================================
[2026-10-18 12:54:14,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:54:14
[2026-10-18 12:54:14,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:54:15,055.055 INFO    ] Initializing speech engine...
[2026-10-18 12:54:15,064.064 INFO    ] 2026-10-18 12:54:15
[2026-10-18 12:54:15,360.360 INFO    ] 2026-10-18 12:54:15
[2026-10-18 12:54:15,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:54:15,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:54:15,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:54:15,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:54:15,779.779 INFO    ] time= 18/10/2026 12:54:15
[2026-10-18 12:54:15,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:54:15,833.833 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:54:15,966.966 INFO    ] No existing commands found in stream
[2026-10-18 12:54:21,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:54:21,004.004 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-18 12:54:25,208.208 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:54:25,211.211 INFO    ] Checking for system updates...
[2026-10-18 12:54:25,247.247 INFO    ] 200
[2026-10-18 12:54:25,249.249 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:54:25,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:54:25,310.310 INFO    ] No update needed
[2026-10-18 12:54:25,313.313 INFO    ] Checking for camera pi updates...
[2026-10-18 12:54:25,350.350 INFO    ] 200
[2026-10-18 12:54:25,352.352 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:54:25,392.392 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:54:35,405.405 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:54:35,440.440 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:54:35,450.450 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:54:35,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:54:35,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:54:35,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:54:37,503.503 INFO    ] ================================================
[2026-10-18 12:54:37,519.519 INFO    ] Launching Daemon at Sun Oct 18 12:54:37 IST 2026
[2026-10-18 12:54:37,530.530 INFO    ] ================================================
[2026-10-18 12:54:38,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:54:38
[2026-10-18 12:54:38,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:54:38,937.937 INFO    ] Initializing speech engine...
[2026-10-18 12:54:38,945.945 INFO    ] 2026-10-18 12:54:38
[2026-10-18 12:54:39,218.218 INFO    ] 2026-10-18 12:54:39
[2026-10-18 12:54:39,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:54:39,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:54:39,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:54:39,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:54:39,785.785 INFO    ] time= 18/10/2026 12:54:39
[2026-10-18 12:54:39,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:54:39,810.810 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:54:39,945.945 INFO    ] No existing commands found in stream
[2026-10-18 12:54:44,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:54:44,970.970 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-18 12:54:48,529.529 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:54:48,532.532 INFO    ] Checking for system updates...
[2026-10-18 12:54:48,569.569 INFO    ] 200
[2026-10-18 12:54:48,572.572 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:54:48,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:54:48,627.627 INFO    ] No update needed
[2026-10-18 12:54:48,630.630 INFO    ] Checking for camera pi updates...
[2026-10-18 12:54:48,665.665 INFO    ] 200
[2026-10-18 12:54:48,668.668 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:54:48,708.708 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:54:58,723.723 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:54:58,757.757 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:54:58,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:54:58,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:54:58,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:54:58,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:55:00,820.820 INFO    ] ================================================
[2026-10-18 12:55:00,835.835 INFO    ] Launching Daemon at Sun Oct 18 12:55:00 IST 2026
[2026-10-18 12:55:00,846.846 INFO    ] ================================================
[2026-10-18 12:55:01,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:55:01
[2026-10-18 12:55:02,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:55:02,886.886 INFO    ] Initializing speech engine...
[2026-10-18 12:55:02,892.892 INFO    ] 2026-10-18 12:55:02
[2026-10-18 12:55:03,229.229 INFO    ] 2026-10-18 12:55:03
[2026-10-18 12:55:03,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:55:03,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:55:03,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:55:03,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:55:03,754.754 INFO    ] time= 18/10/2026 12:55:03
[2026-10-18 12:55:03,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:55:03,858.858 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:55:03,995.995 INFO    ] No existing commands found in stream
[2026-10-18 12:55:09,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:55:09,024.024 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-18 12:55:10,490.490 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:55:10,492.492 INFO    ] Checking for system updates...
[2026-10-18 12:55:10,531.531 INFO    ] 200
[2026-10-18 12:55:10,534.534 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:55:10,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:55:10,591.591 INFO    ] No update needed
[2026-10-18 12:55:10,593.593 INFO    ] Checking for camera pi updates...
[2026-10-18 12:55:10,627.627 INFO    ] 200
[2026-10-18 12:55:10,630.630 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:55:10,674.674 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:55:20,691.691 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:55:20,729.729 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:55:20,740.740 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:55:20,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:55:20,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:55:20,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:55:22,794.794 INFO    ] ================================================
[2026-10-18 12:55:22,809.809 INFO    ] Launching Daemon at Sun Oct 18 12:55:22 IST 2026
[2026-10-18 12:55:22,821.821 INFO    ] ================================================
[2026-10-18 12:55:23,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:55:23
[2026-10-18 12:55:23,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:55:24,243.243 INFO    ] Initializing speech engine...
[2026-10-18 12:55:24,255.255 INFO    ] 2026-10-18 12:55:24
[2026-10-18 12:55:24,505.505 INFO    ] 2026-10-18 12:55:24
[2026-10-18 12:55:24,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:55:24,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:55:24,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:55:24,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:55:24,991.991 INFO    ] time= 18/10/2026 12:55:24
[2026-10-18 12:55:25,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:55:25,106.106 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:55:25,268.268 INFO    ] No existing commands found in stream
[2026-10-18 12:55:30,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:55:30,302.302 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-18 12:55:33,953.953 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 12:55:33,956.956 INFO    ] Checking for system updates...
[2026-10-18 12:55:33,994.994 INFO    ] 200
[2026-10-18 12:55:33,997.997 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:55:34,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:55:34,051.051 INFO    ] No update needed
[2026-10-18 12:55:34,053.053 INFO    ] Checking for camera pi updates...
[2026-10-18 12:55:34,089.089 INFO    ] 200
[2026-10-18 12:55:34,091.091 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:55:34,132.132 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:55:44,147.147 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:55:44,181.181 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:55:44,191.191 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:55:44,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:55:44,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:55:44,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:55:46,243.243 INFO    ] ================================================
[2026-10-18 12:55:46,259.259 INFO    ] Launching Daemon at Sun Oct 18 12:55:46 IST 2026
[2026-10-18 12:55:46,270.270 INFO    ] ================================================
[2026-10-18 12:55:46,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:55:46
[2026-10-18 12:55:47,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:55:47,682.682 INFO    ] Initializing speech engine...
[2026-10-18 12:55:47,694.694 INFO    ] 2026-10-18 12:55:47
[2026-10-18 12:55:47,978.978 INFO    ] 2026-10-18 12:55:47
[2026-10-18 12:55:48,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:55:48,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:55:48,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:55:48,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:55:48,581.581 INFO    ] time= 18/10/2026 12:55:48
[2026-10-18 12:55:48,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:55:48,609.609 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:55:48,714.714 INFO    ] No existing commands found in stream
[2026-10-18 12:55:53,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:55:53,742.742 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-18 12:55:55,300.300 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:55:55,303.303 INFO    ] Checking for system updates...
[2026-10-18 12:55:55,338.338 INFO    ] 200
[2026-10-18 12:55:55,341.341 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:55:55,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:55:55,400.400 INFO    ] No update needed
[2026-10-18 12:55:55,402.402 INFO    ] Checking for camera pi updates...
[2026-10-18 12:55:55,435.435 INFO    ] 200
[2026-10-18 12:55:55,438.438 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:55:55,477.477 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:56:05,492.492 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:56:05,527.527 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:56:05,537.537 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:56:05,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:56:05,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:56:05,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:56:07,589.589 INFO    ] ================================================
[2026-10-18 12:56:07,605.605 INFO    ] Launching Daemon at Sun Oct 18 12:56:07 IST 2026
[2026-10-18 12:56:07,616.616 INFO    ] ================================================
[2026-10-18 12:56:08,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:56:08
[2026-10-18 12:56:08,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:56:09,081.081 INFO    ] Initializing speech engine...
[2026-10-18 12:56:09,088.088 INFO    ] 2026-10-18 12:56:09
[2026-10-18 12:56:09,352.352 INFO    ] 2026-10-18 12:56:09
[2026-10-18 12:56:09,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:56:09,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:56:09,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:56:09,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:56:09,832.832 INFO    ] time= 18/10/2026 12:56:09
[2026-10-18 12:56:09,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:56:09,904.904 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:56:10,062.062 INFO    ] No existing commands found in stream
[2026-10-18 12:56:15,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:56:15,095.095 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-18 12:56:17,634.634 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:56:17,637.637 INFO    ] Checking for system updates...
[2026-10-18 12:56:17,673.673 INFO    ] 200
[2026-10-18 12:56:17,676.676 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:56:17,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:56:17,731.731 INFO    ] No update needed
[2026-10-18 12:56:17,737.737 INFO    ] Checking for camera pi updates...
[2026-10-18 12:56:17,778.778 INFO    ] 200
[2026-10-18 12:56:17,781.781 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:56:17,829.829 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:56:27,845.845 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:56:27,884.884 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:56:27,895.895 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:56:27,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:56:27,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:56:27,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:56:29,951.951 INFO    ] ================================================
[2026-10-18 12:56:29,967.967 INFO    ] Launching Daemon at Sun Oct 18 12:56:29 IST 2026
[2026-10-18 12:56:29,979.979 INFO    ] ================================================
[2026-10-18 12:56:30,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:56:30
[2026-10-18 12:56:31,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:56:31,562.562 INFO    ] Initializing speech engine...
[2026-10-18 12:56:31,570.570 INFO    ] 2026-10-18 12:56:31
[2026-10-18 12:56:31,850.850 INFO    ] 2026-10-18 12:56:31
[2026-10-18 12:56:31,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:56:32,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:56:32,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:56:32,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:56:32,416.416 INFO    ] time= 18/10/2026 12:56:32
[2026-10-18 12:56:32,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:56:32,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:56:32,629.629 INFO    ] No existing commands found in stream
[2026-10-18 12:56:37,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:56:37,662.662 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-18 12:56:39,138.138 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:56:39,141.141 INFO    ] Checking for system updates...
[2026-10-18 12:56:39,180.180 INFO    ] 200
[2026-10-18 12:56:39,183.183 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:56:39,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:56:39,237.237 INFO    ] No update needed
[2026-10-18 12:56:39,240.240 INFO    ] Checking for camera pi updates...
[2026-10-18 12:56:39,276.276 INFO    ] 200
[2026-10-18 12:56:39,278.278 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:56:39,319.319 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:56:49,333.333 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:56:49,368.368 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:56:49,378.378 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:56:49,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:56:49,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:56:49,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:56:51,431.431 INFO    ] ================================================
[2026-10-18 12:56:51,447.447 INFO    ] Launching Daemon at Sun Oct 18 12:56:51 IST 2026
[2026-10-18 12:56:51,458.458 INFO    ] ================================================
[2026-10-18 12:56:52,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:56:52
[2026-10-18 12:56:52,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:56:53,048.048 INFO    ] Initializing speech engine...
[2026-10-18 12:56:53,056.056 INFO    ] 2026-10-18 12:56:53
[2026-10-18 12:56:53,325.325 INFO    ] 2026-10-18 12:56:53
[2026-10-18 12:56:53,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:56:53,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:56:53,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:56:53,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:56:53,895.895 INFO    ] time= 18/10/2026 12:56:53
[2026-10-18 12:56:53,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:56:53,944.944 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:56:54,056.056 INFO    ] No existing commands found in stream
[2026-10-18 12:56:59,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:56:59,089.089 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-18 12:56:59,743.743 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 12:56:59,746.746 INFO    ] Checking for system updates...
[2026-10-18 12:56:59,782.782 INFO    ] 200
[2026-10-18 12:56:59,784.784 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:56:59,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:56:59,847.847 INFO    ] No update needed
[2026-10-18 12:56:59,849.849 INFO    ] Checking for camera pi updates...
[2026-10-18 12:56:59,882.882 INFO    ] 200
[2026-10-18 12:56:59,884.884 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:56:59,924.924 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:57:09,940.940 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:57:09,979.979 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:57:09,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:57:09,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:57:09,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:57:10,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:57:12,043.043 INFO    ] ================================================
[2026-10-18 12:57:12,059.059 INFO    ] Launching Daemon at Sun Oct 18 12:57:12 IST 2026
[2026-10-18 12:57:12,070.070 INFO    ] ================================================
[2026-10-18 12:57:12,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:57:12
[2026-10-18 12:57:13,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:57:13,494.494 INFO    ] Initializing speech engine...
[2026-10-18 12:57:13,516.516 INFO    ] 2026-10-18 12:57:13
[2026-10-18 12:57:13,772.772 INFO    ] 2026-10-18 12:57:13
[2026-10-18 12:57:13,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:57:14,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:57:14,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:57:14,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:57:14,322.322 INFO    ] time= 18/10/2026 12:57:14
[2026-10-18 12:57:14,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:57:14,374.374 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:57:14,518.518 INFO    ] No existing commands found in stream
[2026-10-18 12:57:19,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:57:19,547.547 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-18 12:57:20,186.186 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:57:20,189.189 INFO    ] Checking for system updates...
[2026-10-18 12:57:20,224.224 INFO    ] 200
[2026-10-18 12:57:20,227.227 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:57:20,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:57:20,281.281 INFO    ] No update needed
[2026-10-18 12:57:20,284.284 INFO    ] Checking for camera pi updates...
[2026-10-18 12:57:20,317.317 INFO    ] 200
[2026-10-18 12:57:20,319.319 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:57:20,363.363 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:57:30,377.377 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:57:30,412.412 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:57:30,422.422 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:57:30,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:57:30,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:57:30,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:57:32,476.476 INFO    ] ================================================
[2026-10-18 12:57:32,493.493 INFO    ] Launching Daemon at Sun Oct 18 12:57:32 IST 2026
[2026-10-18 12:57:32,506.506 INFO    ] ================================================
[2026-10-18 12:57:33,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:57:33
[2026-10-18 12:57:33,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:57:33,958.958 INFO    ] Initializing speech engine...
[2026-10-18 12:57:33,976.976 INFO    ] 2026-10-18 12:57:33
[2026-10-18 12:57:34,227.227 INFO    ] 2026-10-18 12:57:34
[2026-10-18 12:57:34,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:57:34,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:57:34,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:57:34,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:57:34,737.737 INFO    ] time= 18/10/2026 12:57:34
[2026-10-18 12:57:34,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:57:34,834.834 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:57:34,977.977 INFO    ] No existing commands found in stream
[2026-10-18 12:57:40,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:57:40,004.004 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-18 12:57:42,627.627 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:57:42,630.630 INFO    ] Checking for system updates...
[2026-10-18 12:57:42,668.668 INFO    ] 200
[2026-10-18 12:57:42,670.670 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:57:42,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:57:42,731.731 INFO    ] No update needed
[2026-10-18 12:57:42,733.733 INFO    ] Checking for camera pi updates...
[2026-10-18 12:57:42,770.770 INFO    ] 200
[2026-10-18 12:57:42,772.772 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:57:42,813.813 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:57:52,828.828 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:57:52,863.863 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:57:52,873.873 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:57:52,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:57:52,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:57:52,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:57:54,925.925 INFO    ] ================================================
[2026-10-18 12:57:54,940.940 INFO    ] Launching Daemon at Sun Oct 18 12:57:54 IST 2026
[2026-10-18 12:57:54,951.951 INFO    ] ================================================
[2026-10-18 12:57:55,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:57:55
[2026-10-18 12:57:56,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:57:56,506.506 INFO    ] Initializing speech engine...
[2026-10-18 12:57:56,531.531 INFO    ] 2026-10-18 12:57:56
[2026-10-18 12:57:56,800.800 INFO    ] 2026-10-18 12:57:56
[2026-10-18 12:57:56,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:57:57,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:57:57,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:57:57,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:57:57,343.343 INFO    ] time= 18/10/2026 12:57:57
[2026-10-18 12:57:57,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:57:57,427.427 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:57:57,560.560 INFO    ] No existing commands found in stream
[2026-10-18 12:58:02,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:58:02,591.591 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-18 12:58:03,639.639 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:58:03,643.643 INFO    ] Checking for system updates...
[2026-10-18 12:58:03,688.688 INFO    ] 200
[2026-10-18 12:58:03,693.693 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:58:03,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:58:03,761.761 INFO    ] No update needed
[2026-10-18 12:58:03,764.764 INFO    ] Checking for camera pi updates...
[2026-10-18 12:58:03,803.803 INFO    ] 200
[2026-10-18 12:58:03,806.806 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:58:03,847.847 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:58:13,864.864 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:58:13,904.904 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:58:13,915.915 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:58:13,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:58:13,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:58:13,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:58:15,970.970 INFO    ] ================================================
[2026-10-18 12:58:15,985.985 INFO    ] Launching Daemon at Sun Oct 18 12:58:15 IST 2026
[2026-10-18 12:58:16,995.995 INFO    ] ================================================
[2026-10-18 12:58:16,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:58:16
[2026-10-18 12:58:17,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:58:17,456.456 INFO    ] Initializing speech engine...
[2026-10-18 12:58:17,471.471 INFO    ] 2026-10-18 12:58:17
[2026-10-18 12:58:17,760.760 INFO    ] 2026-10-18 12:58:17
[2026-10-18 12:58:17,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:58:18,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:58:18,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:58:18,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:58:18,262.262 INFO    ] time= 18/10/2026 12:58:18
[2026-10-18 12:58:18,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:58:18,366.366 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:58:18,527.527 INFO    ] No existing commands found in stream
[2026-10-18 12:58:23,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:58:23,557.557 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-18 12:58:26,089.089 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 12:58:26,091.091 INFO    ] Checking for system updates...
[2026-10-18 12:58:26,127.127 INFO    ] 200
[2026-10-18 12:58:26,129.129 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:58:26,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:58:26,184.184 INFO    ] No update needed
[2026-10-18 12:58:26,187.187 INFO    ] Checking for camera pi updates...
[2026-10-18 12:58:26,222.222 INFO    ] 200
[2026-10-18 12:58:26,225.225 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:58:26,267.267 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:58:36,283.283 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:58:36,318.318 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:58:36,328.328 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:58:36,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:58:36,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:58:36,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:58:38,381.381 INFO    ] ================================================
[2026-10-18 12:58:38,397.397 INFO    ] Launching Daemon at Sun Oct 18 12:58:38 IST 2026
[2026-10-18 12:58:38,409.409 INFO    ] ================================================
[2026-10-18 12:58:39,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:58:39
[2026-10-18 12:58:39,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:58:40,040.040 INFO    ] Initializing speech engine...
[2026-10-18 12:58:40,052.052 INFO    ] 2026-10-18 12:58:40
[2026-10-18 12:58:40,338.338 INFO    ] 2026-10-18 12:58:40
[2026-10-18 12:58:40,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:58:40,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:58:40,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:58:40,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:58:40,907.907 INFO    ] time= 18/10/2026 12:58:40
[2026-10-18 12:58:40,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:58:40,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:58:41,063.063 INFO    ] No existing commands found in stream
[2026-10-18 12:58:46,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:58:46,092.092 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-18 12:58:50,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 12:58:50,363.363 INFO    ] Checking for system updates...
[2026-10-18 12:58:50,401.401 INFO    ] 200
[2026-10-18 12:58:50,404.404 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:58:50,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:58:50,462.462 INFO    ] No update needed
[2026-10-18 12:58:50,465.465 INFO    ] Checking for camera pi updates...
[2026-10-18 12:58:50,503.503 INFO    ] 200
[2026-10-18 12:58:50,507.507 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:58:50,549.549 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:59:00,565.565 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:59:00,606.606 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:59:00,618.618 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:59:00,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:59:00,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:59:00,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:59:02,677.677 INFO    ] ================================================
[2026-10-18 12:59:02,696.696 INFO    ] Launching Daemon at Sun Oct 18 12:59:02 IST 2026
[2026-10-18 12:59:02,714.714 INFO    ] ================================================
[2026-10-18 12:59:03,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:59:03
[2026-10-18 12:59:04,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:59:04,277.277 INFO    ] Initializing speech engine...
[2026-10-18 12:59:04,285.285 INFO    ] 2026-10-18 12:59:04
[2026-10-18 12:59:04,580.580 INFO    ] 2026-10-18 12:59:04
[2026-10-18 12:59:04,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:59:04,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:59:04,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:59:04,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:59:05,000.000 INFO    ] time= 18/10/2026 12:59:04
[2026-10-18 12:59:05,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:59:05,020.020 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:59:05,151.151 INFO    ] No existing commands found in stream
[2026-10-18 12:59:10,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:59:10,179.179 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-18 12:59:10,820.820 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 12:59:10,822.822 INFO    ] Checking for system updates...
[2026-10-18 12:59:10,858.858 INFO    ] 200
[2026-10-18 12:59:10,861.861 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:59:10,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:59:10,916.916 INFO    ] No update needed
[2026-10-18 12:59:10,918.918 INFO    ] Checking for camera pi updates...
[2026-10-18 12:59:10,952.952 INFO    ] 200
[2026-10-18 12:59:10,954.954 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:59:10,996.996 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:59:21,009.009 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:59:21,047.047 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:59:21,057.057 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:59:21,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:59:21,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:59:21,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:59:23,114.114 INFO    ] ================================================
[2026-10-18 12:59:23,128.128 INFO    ] Launching Daemon at Sun Oct 18 12:59:23 IST 2026
[2026-10-18 12:59:23,139.139 INFO    ] ================================================
[2026-10-18 12:59:23,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:59:23
[2026-10-18 12:59:24,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:59:24,699.699 INFO    ] Initializing speech engine...
[2026-10-18 12:59:24,711.711 INFO    ] 2026-10-18 12:59:24
[2026-10-18 12:59:25,002.002 INFO    ] 2026-10-18 12:59:24
[2026-10-18 12:59:25,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:59:25,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:59:25,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:59:25,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:59:25,548.548 INFO    ] time= 18/10/2026 12:59:25
[2026-10-18 12:59:25,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:59:25,595.595 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:59:25,712.712 INFO    ] No existing commands found in stream
[2026-10-18 12:59:30,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:59:30,746.746 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-18 12:59:34,781.781 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:59:34,785.785 INFO    ] Checking for system updates...
[2026-10-18 12:59:34,825.825 INFO    ] 200
[2026-10-18 12:59:34,828.828 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:59:34,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 12:59:34,884.884 INFO    ] No update needed
[2026-10-18 12:59:34,887.887 INFO    ] Checking for camera pi updates...
[2026-10-18 12:59:34,921.921 INFO    ] 200
[2026-10-18 12:59:34,924.924 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:59:34,966.966 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 12:59:44,983.983 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 12:59:45,022.022 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 12:59:45,033.033 INFO    ] Script finished. Safe exiting...
[2026-10-18 12:59:45,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 12:59:45,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 12:59:45,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 12:59:47,088.088 INFO    ] ================================================
[2026-10-18 12:59:47,103.103 INFO    ] Launching Daemon at Sun Oct 18 12:59:47 IST 2026
[2026-10-18 12:59:47,114.114 INFO    ] ================================================
[2026-10-18 12:59:47,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 12:59:47
[2026-10-18 12:59:48,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 12:59:48,521.521 INFO    ] Initializing speech engine...
[2026-10-18 12:59:48,527.527 INFO    ] 2026-10-18 12:59:48
[2026-10-18 12:59:48,821.821 INFO    ] 2026-10-18 12:59:48
[2026-10-18 12:59:48,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 12:59:49,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 12:59:49,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 12:59:49,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 12:59:49,312.312 INFO    ] time= 18/10/2026 12:59:49
[2026-10-18 12:59:49,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 12:59:49,415.415 INFO    ] Checking for existing commands in stream...
[2026-10-18 12:59:49,581.581 INFO    ] No existing commands found in stream
[2026-10-18 12:59:54,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 12:59:54,601.601 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-18 12:59:55,788.788 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 12:59:55,791.791 INFO    ] Checking for system updates...
[2026-10-18 12:59:55,827.827 INFO    ] 200
[2026-10-18 12:59:55,830.830 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:59:55,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 12:59:55,888.888 INFO    ] No update needed
[2026-10-18 12:59:55,890.890 INFO    ] Checking for camera pi updates...
[2026-10-18 12:59:55,925.925 INFO    ] 200
[2026-10-18 12:59:55,928.928 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 12:59:55,969.969 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:00:05,988.988 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:00:06,102.102 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:00:06,115.115 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:00:06,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:00:06,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:00:06,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:00:08,207.207 INFO    ] ================================================
[2026-10-18 13:00:08,223.223 INFO    ] Launching Daemon at Sun Oct 18 13:00:08 IST 2026
[2026-10-18 13:00:08,234.234 INFO    ] ================================================
[2026-10-18 13:00:08,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:00:08
[2026-10-18 13:00:09,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:00:09,871.871 INFO    ] Initializing speech engine...
[2026-10-18 13:00:09,884.884 INFO    ] 2026-10-18 13:00:09
[2026-10-18 13:00:10,164.164 INFO    ] 2026-10-18 13:00:10
[2026-10-18 13:00:10,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:00:10,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:00:10,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:00:10,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:00:10,942.942 INFO    ] time= 18/10/2026 13:00:10
[2026-10-18 13:00:10,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:00:11,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:00:11,212.212 INFO    ] No existing commands found in stream
[2026-10-18 13:00:16,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:00:16,252.252 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-18 13:00:20,122.122 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:00:20,125.125 INFO    ] Checking for system updates...
[2026-10-18 13:00:20,162.162 INFO    ] 200
[2026-10-18 13:00:20,165.165 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:00:20,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:00:20,227.227 INFO    ] No update needed
[2026-10-18 13:00:20,230.230 INFO    ] Checking for camera pi updates...
[2026-10-18 13:00:20,266.266 INFO    ] 200
[2026-10-18 13:00:20,269.269 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:00:20,310.310 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:00:30,327.327 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:00:30,367.367 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:00:30,378.378 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:00:30,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:00:30,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:00:30,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:00:32,434.434 INFO    ] ================================================
[2026-10-18 13:00:32,449.449 INFO    ] Launching Daemon at Sun Oct 18 13:00:32 IST 2026
[2026-10-18 13:00:32,460.460 INFO    ] ================================================
[2026-10-18 13:00:33,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:00:33
[2026-10-18 13:00:33,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:00:34,049.049 INFO    ] Initializing speech engine...
[2026-10-18 13:00:34,056.056 INFO    ] 2026-10-18 13:00:34
[2026-10-18 13:00:34,329.329 INFO    ] 2026-10-18 13:00:34
[2026-10-18 13:00:34,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:00:34,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:00:34,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:00:34,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:00:34,818.818 INFO    ] time= 18/10/2026 13:00:34
[2026-10-18 13:00:34,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:00:34,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:00:35,032.032 INFO    ] No existing commands found in stream
[2026-10-18 13:00:40,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:00:40,049.049 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-18 13:00:44,269.269 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:00:44,272.272 INFO    ] Checking for system updates...
[2026-10-18 13:00:44,307.307 INFO    ] 200
[2026-10-18 13:00:44,310.310 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:00:44,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:00:44,365.365 INFO    ] No update needed
[2026-10-18 13:00:44,368.368 INFO    ] Checking for camera pi updates...
[2026-10-18 13:00:44,401.401 INFO    ] 200
[2026-10-18 13:00:44,403.403 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:00:44,446.446 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:00:54,461.461 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:00:54,496.496 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:00:54,505.505 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:00:54,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:00:54,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:00:54,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:00:56,560.560 INFO    ] ================================================
[2026-10-18 13:00:56,578.578 INFO    ] Launching Daemon at Sun Oct 18 13:00:56 IST 2026
[2026-10-18 13:00:56,589.589 INFO    ] ================================================
[2026-10-18 13:00:57,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:00:57
[2026-10-18 13:00:57,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:00:57,996.996 INFO    ] Initializing speech engine...
[2026-10-18 13:00:58,009.009 INFO    ] 2026-10-18 13:00:57
[2026-10-18 13:00:58,271.271 INFO    ] 2026-10-18 13:00:58
[2026-10-18 13:00:58,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:00:58,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:00:58,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:00:58,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:00:58,824.824 INFO    ] time= 18/10/2026 13:00:58
[2026-10-18 13:00:58,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:00:58,847.847 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:00:58,978.978 INFO    ] No existing commands found in stream
[2026-10-18 13:01:03,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:01:03,993.993 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-18 13:01:05,522.522 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:01:05,525.525 INFO    ] Checking for system updates...
[2026-10-18 13:01:05,560.560 INFO    ] 200
[2026-10-18 13:01:05,563.563 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:01:05,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:01:05,617.617 INFO    ] No update needed
[2026-10-18 13:01:05,620.620 INFO    ] Checking for camera pi updates...
[2026-10-18 13:01:05,653.653 INFO    ] 200
[2026-10-18 13:01:05,656.656 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:01:05,696.696 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:01:15,712.712 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:01:15,747.747 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:01:15,756.756 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:01:15,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:01:15,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:01:15,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:01:17,809.809 INFO    ] ================================================
[2026-10-18 13:01:17,825.825 INFO    ] Launching Daemon at Sun Oct 18 13:01:17 IST 2026
[2026-10-18 13:01:17,835.835 INFO    ] ================================================
[2026-10-18 13:01:18,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:01:18
[2026-10-18 13:01:19,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:01:19,295.295 INFO    ] Initializing speech engine...
[2026-10-18 13:01:19,304.304 INFO    ] 2026-10-18 13:01:19
[2026-10-18 13:01:19,553.553 INFO    ] 2026-10-18 13:01:19
[2026-10-18 13:01:19,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:01:19,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:01:19,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:01:19,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:01:20,052.052 INFO    ] time= 18/10/2026 13:01:19
[2026-10-18 13:01:20,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:01:20,121.121 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:01:20,265.265 INFO    ] No existing commands found in stream
[2026-10-18 13:01:25,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:01:25,283.283 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-18 13:01:29,117.117 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:01:29,119.119 INFO    ] Checking for system updates...
[2026-10-18 13:01:29,156.156 INFO    ] 200
[2026-10-18 13:01:29,159.159 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:01:29,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:01:29,223.223 INFO    ] No update needed
[2026-10-18 13:01:29,226.226 INFO    ] Checking for camera pi updates...
[2026-10-18 13:01:29,260.260 INFO    ] 200
[2026-10-18 13:01:29,262.262 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:01:29,302.302 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:01:39,316.316 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:01:39,351.351 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:01:39,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:01:39,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:01:39,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:01:39,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:01:41,414.414 INFO    ] ================================================
[2026-10-18 13:01:41,429.429 INFO    ] Launching Daemon at Sun Oct 18 13:01:41 IST 2026
[2026-10-18 13:01:41,441.441 INFO    ] ================================================
[2026-10-18 13:01:42,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:01:42
[2026-10-18 13:01:42,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:01:42,867.867 INFO    ] Initializing speech engine...
[2026-10-18 13:01:42,876.876 INFO    ] 2026-10-18 13:01:42
[2026-10-18 13:01:43,123.123 INFO    ] 2026-10-18 13:01:43
[2026-10-18 13:01:43,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:01:43,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:01:43,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:01:43,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:01:43,676.676 INFO    ] time= 18/10/2026 13:01:43
[2026-10-18 13:01:43,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:01:43,700.700 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:01:43,831.831 INFO    ] No existing commands found in stream
[2026-10-18 13:01:48,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:01:48,849.849 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-18 13:01:49,418.418 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:01:49,420.420 INFO    ] Checking for system updates...
[2026-10-18 13:01:49,457.457 INFO    ] 200
[2026-10-18 13:01:49,459.459 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:01:49,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:01:49,516.516 INFO    ] No update needed
[2026-10-18 13:01:49,519.519 INFO    ] Checking for camera pi updates...
[2026-10-18 13:01:49,556.556 INFO    ] 200
[2026-10-18 13:01:49,559.559 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:01:49,600.600 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:01:59,616.616 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:01:59,650.650 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:01:59,660.660 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:01:59,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:01:59,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:01:59,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:02:01,714.714 INFO    ] ================================================
[2026-10-18 13:02:01,734.734 INFO    ] Launching Daemon at Sun Oct 18 13:02:01 IST 2026
[2026-10-18 13:02:01,753.753 INFO    ] ================================================
[2026-10-18 13:02:02,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:02:02
[2026-10-18 13:02:03,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:02:03,486.486 INFO    ] Initializing speech engine...
[2026-10-18 13:02:03,505.505 INFO    ] 2026-10-18 13:02:03
[2026-10-18 13:02:03,798.798 INFO    ] 2026-10-18 13:02:03
[2026-10-18 13:02:03,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:02:04,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:02:04,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:02:04,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:02:04,357.357 INFO    ] time= 18/10/2026 13:02:04
[2026-10-18 13:02:04,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:02:04,379.379 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:02:04,509.509 INFO    ] No existing commands found in stream
[2026-10-18 13:02:09,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:02:09,530.530 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-18 13:02:11,617.617 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:02:11,620.620 INFO    ] Checking for system updates...
[2026-10-18 13:02:11,655.655 INFO    ] 200
[2026-10-18 13:02:11,657.657 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:02:11,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:02:11,711.711 INFO    ] No update needed
[2026-10-18 13:02:11,714.714 INFO    ] Checking for camera pi updates...
[2026-10-18 13:02:11,747.747 INFO    ] 200
[2026-10-18 13:02:11,749.749 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:02:11,789.789 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:02:21,804.804 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:02:21,839.839 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:02:21,849.849 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:02:21,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:02:21,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:02:21,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:02:23,900.900 INFO    ] ================================================
[2026-10-18 13:02:23,917.917 INFO    ] Launching Daemon at Sun Oct 18 13:02:23 IST 2026
[2026-10-18 13:02:23,928.928 INFO    ] ================================================
[2026-10-18 13:02:24,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:02:24
[2026-10-18 13:02:25,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:02:25,360.360 INFO    ] Initializing speech engine...
[2026-10-18 13:02:25,369.369 INFO    ] 2026-10-18 13:02:25
[2026-10-18 13:02:25,667.667 INFO    ] 2026-10-18 13:02:25
[2026-10-18 13:02:25,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:02:25,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:02:26,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:02:26,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:02:26,180.180 INFO    ] time= 18/10/2026 13:02:26
[2026-10-18 13:02:26,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:02:26,263.263 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:02:26,369.369 INFO    ] No existing commands found in stream
[2026-10-18 13:02:31,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:02:31,384.384 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-18 13:02:32,916.916 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:02:32,920.920 INFO    ] Checking for system updates...
[2026-10-18 13:02:32,963.963 INFO    ] 200
[2026-10-18 13:02:32,966.966 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:02:33,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:02:33,028.028 INFO    ] No update needed
[2026-10-18 13:02:33,030.030 INFO    ] Checking for camera pi updates...
[2026-10-18 13:02:33,064.064 INFO    ] 200
[2026-10-18 13:02:33,069.069 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:02:33,111.111 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:02:43,129.129 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:02:43,168.168 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:02:43,179.179 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:02:43,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:02:43,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:02:43,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:02:45,234.234 INFO    ] ================================================
[2026-10-18 13:02:45,255.255 INFO    ] Launching Daemon at Sun Oct 18 13:02:45 IST 2026
[2026-10-18 13:02:45,267.267 INFO    ] ================================================
[2026-10-18 13:02:45,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:02:45
[2026-10-18 13:02:46,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:02:46,870.870 INFO    ] Initializing speech engine...
[2026-10-18 13:02:46,883.883 INFO    ] 2026-10-18 13:02:46
[2026-10-18 13:02:47,171.171 INFO    ] 2026-10-18 13:02:47
[2026-10-18 13:02:47,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:02:47,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:02:47,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:02:47,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:02:47,730.730 INFO    ] time= 18/10/2026 13:02:47
[2026-10-18 13:02:47,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:02:47,769.769 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:02:47,884.884 INFO    ] No existing commands found in stream
[2026-10-18 13:02:52,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:02:52,918.918 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-18 13:02:53,457.457 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:02:53,460.460 INFO    ] Checking for system updates...
[2026-10-18 13:02:53,500.500 INFO    ] 200
[2026-10-18 13:02:53,503.503 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:02:53,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:02:53,560.560 INFO    ] No update needed
[2026-10-18 13:02:53,563.563 INFO    ] Checking for camera pi updates...
[2026-10-18 13:02:53,600.600 INFO    ] 200
[2026-10-18 13:02:53,603.603 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:02:53,644.644 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:03:03,658.658 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:03:03,707.707 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:03:03,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:03:03,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:03:03,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:03:03,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:03:05,774.774 INFO    ] ================================================
[2026-10-18 13:03:05,789.789 INFO    ] Launching Daemon at Sun Oct 18 13:03:05 IST 2026
[2026-10-18 13:03:05,799.799 INFO    ] ================================================
[2026-10-18 13:03:06,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:03:06
[2026-10-18 13:03:06,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:03:07,240.240 INFO    ] Initializing speech engine...
[2026-10-18 13:03:07,247.247 INFO    ] 2026-10-18 13:03:07
[2026-10-18 13:03:07,540.540 INFO    ] 2026-10-18 13:03:07
[2026-10-18 13:03:07,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:03:07,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:03:07,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:03:07,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:03:07,956.956 INFO    ] time= 18/10/2026 13:03:07
[2026-10-18 13:03:07,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:03:08,012.012 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:03:08,143.143 INFO    ] No existing commands found in stream
[2026-10-18 13:03:13,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:03:13,181.181 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-18 13:03:15,039.039 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:03:15,042.042 INFO    ] Checking for system updates...
[2026-10-18 13:03:15,077.077 INFO    ] 200
[2026-10-18 13:03:15,079.079 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:03:15,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:03:15,134.134 INFO    ] No update needed
[2026-10-18 13:03:15,137.137 INFO    ] Checking for camera pi updates...
[2026-10-18 13:03:15,172.172 INFO    ] 200
[2026-10-18 13:03:15,174.174 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:03:15,217.217 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:03:25,232.232 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:03:25,268.268 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:03:25,278.278 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:03:25,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:03:25,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:03:25,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:03:27,330.330 INFO    ] ================================================
[2026-10-18 13:03:27,347.347 INFO    ] Launching Daemon at Sun Oct 18 13:03:27 IST 2026
[2026-10-18 13:03:27,357.357 INFO    ] ================================================
[2026-10-18 13:03:27,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:03:27
[2026-10-18 13:03:28,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:03:28,944.944 INFO    ] Initializing speech engine...
[2026-10-18 13:03:28,953.953 INFO    ] 2026-10-18 13:03:28
[2026-10-18 13:03:29,226.226 INFO    ] 2026-10-18 13:03:29
[2026-10-18 13:03:29,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:03:29,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:03:29,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:03:29,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:03:29,759.759 INFO    ] time= 18/10/2026 13:03:29
[2026-10-18 13:03:29,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:03:29,804.804 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:03:29,955.955 INFO    ] No existing commands found in stream
[2026-10-18 13:03:34,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:03:34,991.991 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-18 13:03:38,991.991 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:03:38,994.994 INFO    ] Checking for system updates...
[2026-10-18 13:03:39,031.031 INFO    ] 200
[2026-10-18 13:03:39,034.034 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:03:39,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:03:39,090.090 INFO    ] No update needed
[2026-10-18 13:03:39,092.092 INFO    ] Checking for camera pi updates...
[2026-10-18 13:03:39,127.127 INFO    ] 200
[2026-10-18 13:03:39,129.129 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:03:39,171.171 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:03:49,187.187 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:03:49,225.225 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:03:49,236.236 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:03:49,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:03:49,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:03:49,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:03:51,290.290 INFO    ] ================================================
[2026-10-18 13:03:51,305.305 INFO    ] Launching Daemon at Sun Oct 18 13:03:51 IST 2026
[2026-10-18 13:03:51,317.317 INFO    ] ================================================
[2026-10-18 13:03:51,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:03:51
[2026-10-18 13:03:52,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:03:52,748.748 INFO    ] Initializing speech engine...
[2026-10-18 13:03:52,759.759 INFO    ] 2026-10-18 13:03:52
[2026-10-18 13:03:53,029.029 INFO    ] 2026-10-18 13:03:53
[2026-10-18 13:03:53,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:03:53,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:03:53,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:03:53,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:03:53,565.565 INFO    ] time= 18/10/2026 13:03:53
[2026-10-18 13:03:53,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:03:53,634.634 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:03:53,757.757 INFO    ] No existing commands found in stream
[2026-10-18 13:03:58,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:03:58,782.782 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-18 13:04:01,687.687 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:04:01,689.689 INFO    ] Checking for system updates...
[2026-10-18 13:04:01,731.731 INFO    ] 200
[2026-10-18 13:04:01,738.738 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:04:01,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:04:01,866.866 INFO    ] No update needed
[2026-10-18 13:04:01,876.876 INFO    ] Checking for camera pi updates...
[2026-10-18 13:04:01,957.957 INFO    ] 200
[2026-10-18 13:04:01,971.971 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:04:02,052.052 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:04:12,067.067 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:04:12,101.101 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:04:12,111.111 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:04:12,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:04:12,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:04:12,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:04:14,164.164 INFO    ] ================================================
[2026-10-18 13:04:14,179.179 INFO    ] Launching Daemon at Sun Oct 18 13:04:14 IST 2026
[2026-10-18 13:04:14,190.190 INFO    ] ================================================
[2026-10-18 13:04:14,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:04:14
[2026-10-18 13:04:15,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:04:15,660.660 INFO    ] Initializing speech engine...
[2026-10-18 13:04:15,665.665 INFO    ] 2026-10-18 13:04:15
[2026-10-18 13:04:15,926.926 INFO    ] 2026-10-18 13:04:15
[2026-10-18 13:04:15,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:04:16,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:04:16,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:04:16,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:04:16,468.468 INFO    ] time= 18/10/2026 13:04:16
[2026-10-18 13:04:16,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:04:16,494.494 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:04:16,629.629 INFO    ] No existing commands found in stream
[2026-10-18 13:04:21,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:04:21,662.662 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-18 13:04:24,240.240 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:04:24,242.242 INFO    ] Checking for system updates...
[2026-10-18 13:04:24,280.280 INFO    ] 200
[2026-10-18 13:04:24,283.283 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:04:24,335.335 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:04:24,338.338 INFO    ] No update needed
[2026-10-18 13:04:24,341.341 INFO    ] Checking for camera pi updates...
[2026-10-18 13:04:24,374.374 INFO    ] 200
[2026-10-18 13:04:24,378.378 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:04:24,419.419 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:04:34,431.431 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:04:34,470.470 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:04:34,481.481 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:04:34,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:04:34,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:04:34,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:04:36,538.538 INFO    ] ================================================
[2026-10-18 13:04:36,553.553 INFO    ] Launching Daemon at Sun Oct 18 13:04:36 IST 2026
[2026-10-18 13:04:36,564.564 INFO    ] ================================================
[2026-10-18 13:04:37,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:04:37
[2026-10-18 13:04:37,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:04:37,960.960 INFO    ] Initializing speech engine...
[2026-10-18 13:04:37,975.975 INFO    ] 2026-10-18 13:04:37
[2026-10-18 13:04:38,236.236 INFO    ] 2026-10-18 13:04:38
[2026-10-18 13:04:38,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:04:38,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:04:38,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:04:38,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:04:38,746.746 INFO    ] time= 18/10/2026 13:04:38
[2026-10-18 13:04:38,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:04:38,840.840 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:04:38,982.982 INFO    ] No existing commands found in stream
[2026-10-18 13:04:44,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:04:44,010.010 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-18 13:04:45,802.802 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:04:45,804.804 INFO    ] Checking for system updates...
[2026-10-18 13:04:45,840.840 INFO    ] 200
[2026-10-18 13:04:45,842.842 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:04:45,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:04:45,896.896 INFO    ] No update needed
[2026-10-18 13:04:45,899.899 INFO    ] Checking for camera pi updates...
[2026-10-18 13:04:45,936.936 INFO    ] 200
[2026-10-18 13:04:45,939.939 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:04:45,978.978 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:04:55,993.993 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:04:56,028.028 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:04:56,037.037 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:04:56,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:04:56,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:04:56,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:04:58,090.090 INFO    ] ================================================
[2026-10-18 13:04:58,105.105 INFO    ] Launching Daemon at Sun Oct 18 13:04:58 IST 2026
[2026-10-18 13:04:58,116.116 INFO    ] ================================================
[2026-10-18 13:04:58,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:04:58
[2026-10-18 13:04:59,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:04:59,682.682 INFO    ] Initializing speech engine...
[2026-10-18 13:04:59,691.691 INFO    ] 2026-10-18 13:04:59
[2026-10-18 13:04:59,958.958 INFO    ] 2026-10-18 13:04:59
[2026-10-18 13:05:00,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:05:00,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:05:00,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:05:00,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:05:00,518.518 INFO    ] time= 18/10/2026 13:05:00
[2026-10-18 13:05:00,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:05:00,553.553 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:05:00,681.681 INFO    ] No existing commands found in stream
[2026-10-18 13:05:05,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:05:05,715.715 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-18 13:05:08,318.318 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:05:08,321.321 INFO    ] Checking for system updates...
[2026-10-18 13:05:08,358.358 INFO    ] 200
[2026-10-18 13:05:08,360.360 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:05:08,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:05:08,422.422 INFO    ] No update needed
[2026-10-18 13:05:08,425.425 INFO    ] Checking for camera pi updates...
[2026-10-18 13:05:08,459.459 INFO    ] 200
[2026-10-18 13:05:08,462.462 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:05:08,502.502 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:05:18,519.519 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:05:18,557.557 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:05:18,568.568 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:05:18,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:05:18,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:05:18,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:05:20,623.623 INFO    ] ================================================
[2026-10-18 13:05:20,638.638 INFO    ] Launching Daemon at Sun Oct 18 13:05:20 IST 2026
[2026-10-18 13:05:20,650.650 INFO    ] ================================================
[2026-10-18 13:05:21,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:05:21
[2026-10-18 13:05:21,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:05:22,112.112 INFO    ] Initializing speech engine...
[2026-10-18 13:05:22,127.127 INFO    ] 2026-10-18 13:05:22
[2026-10-18 13:05:22,398.398 INFO    ] 2026-10-18 13:05:22
[2026-10-18 13:05:22,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:05:22,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:05:22,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:05:22,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:05:22,893.893 INFO    ] time= 18/10/2026 13:05:22
[2026-10-18 13:05:22,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:05:23,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:05:23,167.167 INFO    ] No existing commands found in stream
[2026-10-18 13:05:28,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:05:28,195.195 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-18 13:05:29,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:05:29,533.533 INFO    ] Checking for system updates...
[2026-10-18 13:05:29,570.570 INFO    ] 200
[2026-10-18 13:05:29,572.572 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:05:29,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:05:29,626.626 INFO    ] No update needed
[2026-10-18 13:05:29,629.629 INFO    ] Checking for camera pi updates...
[2026-10-18 13:05:29,663.663 INFO    ] 200
[2026-10-18 13:05:29,666.666 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:05:29,707.707 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:05:39,721.721 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:05:39,756.756 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:05:39,766.766 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:05:39,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:05:39,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:05:39,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:05:41,819.819 INFO    ] ================================================
[2026-10-18 13:05:41,834.834 INFO    ] Launching Daemon at Sun Oct 18 13:05:41 IST 2026
[2026-10-18 13:05:41,844.844 INFO    ] ================================================
[2026-10-18 13:05:42,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:05:42
[2026-10-18 13:05:43,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:05:43,323.323 INFO    ] Initializing speech engine...
[2026-10-18 13:05:43,343.343 INFO    ] 2026-10-18 13:05:43
[2026-10-18 13:05:43,607.607 INFO    ] 2026-10-18 13:05:43
[2026-10-18 13:05:43,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:05:43,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:05:43,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:05:44,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:05:44,124.124 INFO    ] time= 18/10/2026 13:05:44
[2026-10-18 13:05:44,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:05:44,222.222 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:05:44,374.374 INFO    ] No existing commands found in stream
[2026-10-18 13:05:49,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:05:49,402.402 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-18 13:05:52,132.132 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:05:52,135.135 INFO    ] Checking for system updates...
[2026-10-18 13:05:52,171.171 INFO    ] 200
[2026-10-18 13:05:52,173.173 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:05:52,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:05:52,228.228 INFO    ] No update needed
[2026-10-18 13:05:52,230.230 INFO    ] Checking for camera pi updates...
[2026-10-18 13:05:52,263.263 INFO    ] 200
[2026-10-18 13:05:52,266.266 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:05:52,310.310 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:06:02,325.325 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:06:02,366.366 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:06:02,378.378 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:06:02,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:06:02,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:06:02,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:06:04,437.437 INFO    ] ================================================
[2026-10-18 13:06:04,452.452 INFO    ] Launching Daemon at Sun Oct 18 13:06:04 IST 2026
[2026-10-18 13:06:04,463.463 INFO    ] ================================================
[2026-10-18 13:06:05,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:06:05
[2026-10-18 13:06:05,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:06:06,077.077 INFO    ] Initializing speech engine...
[2026-10-18 13:06:06,092.092 INFO    ] 2026-10-18 13:06:06
[2026-10-18 13:06:06,403.403 INFO    ] 2026-10-18 13:06:06
[2026-10-18 13:06:06,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:06:06,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:06:06,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:06:06,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:06:06,928.928 INFO    ] time= 18/10/2026 13:06:06
[2026-10-18 13:06:06,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:06:06,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:06:07,127.127 INFO    ] No existing commands found in stream
[2026-10-18 13:06:12,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:06:12,161.161 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-18 13:06:15,321.321 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:06:15,324.324 INFO    ] Checking for system updates...
[2026-10-18 13:06:15,361.361 INFO    ] 200
[2026-10-18 13:06:15,364.364 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:06:15,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:06:15,420.420 INFO    ] No update needed
[2026-10-18 13:06:15,422.422 INFO    ] Checking for camera pi updates...
[2026-10-18 13:06:15,456.456 INFO    ] 200
[2026-10-18 13:06:15,459.459 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:06:15,500.500 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:06:25,516.516 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:06:25,555.555 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:06:25,565.565 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:06:25,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:06:25,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:06:25,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:06:27,622.622 INFO    ] ================================================
[2026-10-18 13:06:27,638.638 INFO    ] Launching Daemon at Sun Oct 18 13:06:27 IST 2026
[2026-10-18 13:06:27,648.648 INFO    ] ================================================
[2026-10-18 13:06:28,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:06:28
[2026-10-18 13:06:28,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:06:29,101.101 INFO    ] Initializing speech engine...
[2026-10-18 13:06:29,124.124 INFO    ] 2026-10-18 13:06:29
[2026-10-18 13:06:29,379.379 INFO    ] 2026-10-18 13:06:29
[2026-10-18 13:06:29,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:06:29,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:06:29,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:06:29,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:06:29,875.875 INFO    ] time= 18/10/2026 13:06:29
[2026-10-18 13:06:29,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:06:29,954.954 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:06:30,090.090 INFO    ] No existing commands found in stream
[2026-10-18 13:06:35,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:06:35,114.114 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-18 13:06:37,489.489 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 13:06:37,492.492 INFO    ] Checking for system updates...
[2026-10-18 13:06:37,528.528 INFO    ] 200
[2026-10-18 13:06:37,531.531 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:06:37,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:06:37,587.587 INFO    ] No update needed
[2026-10-18 13:06:37,589.589 INFO    ] Checking for camera pi updates...
[2026-10-18 13:06:37,626.626 INFO    ] 200
[2026-10-18 13:06:37,629.629 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:06:37,672.672 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:06:47,686.686 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:06:47,721.721 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:06:47,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:06:47,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:06:47,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:06:47,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:06:49,785.785 INFO    ] ================================================
[2026-10-18 13:06:49,800.800 INFO    ] Launching Daemon at Sun Oct 18 13:06:49 IST 2026
[2026-10-18 13:06:49,811.811 INFO    ] ================================================
[2026-10-18 13:06:50,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:06:50
[2026-10-18 13:06:50,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:06:51,277.277 INFO    ] Initializing speech engine...
[2026-10-18 13:06:51,287.287 INFO    ] 2026-10-18 13:06:51
[2026-10-18 13:06:51,553.553 INFO    ] 2026-10-18 13:06:51
[2026-10-18 13:06:51,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:06:51,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:06:51,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:06:52,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:06:52,040.040 INFO    ] time= 18/10/2026 13:06:52
[2026-10-18 13:06:52,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:06:52,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:06:52,324.324 INFO    ] No existing commands found in stream
[2026-10-18 13:06:57,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:06:57,352.352 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-18 13:06:58,294.294 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:06:58,297.297 INFO    ] Checking for system updates...
[2026-10-18 13:06:58,332.332 INFO    ] 200
[2026-10-18 13:06:58,334.334 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:06:58,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:06:58,390.390 INFO    ] No update needed
[2026-10-18 13:06:58,392.392 INFO    ] Checking for camera pi updates...
[2026-10-18 13:06:58,426.426 INFO    ] 200
[2026-10-18 13:06:58,428.428 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:06:58,472.472 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:07:08,488.488 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:07:08,527.527 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:07:08,537.537 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:07:08,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:07:08,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:07:08,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:07:10,592.592 INFO    ] ================================================
[2026-10-18 13:07:10,607.607 INFO    ] Launching Daemon at Sun Oct 18 13:07:10 IST 2026
[2026-10-18 13:07:10,618.618 INFO    ] ================================================
[2026-10-18 13:07:11,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:07:11
[2026-10-18 13:07:11,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:07:12,200.200 INFO    ] Initializing speech engine...
[2026-10-18 13:07:12,213.213 INFO    ] 2026-10-18 13:07:12
[2026-10-18 13:07:12,519.519 INFO    ] 2026-10-18 13:07:12
[2026-10-18 13:07:12,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:07:12,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:07:12,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:07:13,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:07:13,028.028 INFO    ] time= 18/10/2026 13:07:13
[2026-10-18 13:07:13,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:07:13,076.076 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:07:13,183.183 INFO    ] No existing commands found in stream
[2026-10-18 13:07:18,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:07:18,208.208 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-18 13:07:19,832.832 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:07:19,835.835 INFO    ] Checking for system updates...
[2026-10-18 13:07:19,872.872 INFO    ] 200
[2026-10-18 13:07:19,875.875 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:07:19,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:07:19,930.930 INFO    ] No update needed
[2026-10-18 13:07:19,933.933 INFO    ] Checking for camera pi updates...
[2026-10-18 13:07:19,967.967 INFO    ] 200
[2026-10-18 13:07:19,969.969 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:07:20,010.010 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:07:30,026.026 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:07:30,065.065 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:07:30,076.076 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:07:30,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:07:30,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:07:30,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:07:32,132.132 INFO    ] ================================================
[2026-10-18 13:07:32,148.148 INFO    ] Launching Daemon at Sun Oct 18 13:07:32 IST 2026
[2026-10-18 13:07:32,160.160 INFO    ] ================================================
[2026-10-18 13:07:32,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:07:32
[2026-10-18 13:07:33,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:07:33,598.598 INFO    ] Initializing speech engine...
[2026-10-18 13:07:33,607.607 INFO    ] 2026-10-18 13:07:33
[2026-10-18 13:07:33,866.866 INFO    ] 2026-10-18 13:07:33
[2026-10-18 13:07:33,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:07:34,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:07:34,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:07:34,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:07:34,405.405 INFO    ] time= 18/10/2026 13:07:34
[2026-10-18 13:07:34,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:07:34,430.430 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:07:34,561.561 INFO    ] No existing commands found in stream
[2026-10-18 13:07:39,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:07:39,579.579 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-18 13:07:42,399.399 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:07:42,402.402 INFO    ] Checking for system updates...
[2026-10-18 13:07:42,441.441 INFO    ] 200
[2026-10-18 13:07:42,444.444 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:07:42,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:07:42,499.499 INFO    ] No update needed
[2026-10-18 13:07:42,502.502 INFO    ] Checking for camera pi updates...
[2026-10-18 13:07:42,536.536 INFO    ] 200
[2026-10-18 13:07:42,539.539 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:07:42,584.584 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:07:52,600.600 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:07:52,641.641 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:07:52,652.652 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:07:52,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:07:52,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:07:52,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:07:54,708.708 INFO    ] ================================================
[2026-10-18 13:07:54,723.723 INFO    ] Launching Daemon at Sun Oct 18 13:07:54 IST 2026
[2026-10-18 13:07:54,734.734 INFO    ] ================================================
[2026-10-18 13:07:55,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:07:55
[2026-10-18 13:07:55,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:07:56,141.141 INFO    ] Initializing speech engine...
[2026-10-18 13:07:56,164.164 INFO    ] 2026-10-18 13:07:56
[2026-10-18 13:07:56,421.421 INFO    ] 2026-10-18 13:07:56
[2026-10-18 13:07:56,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:07:56,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:07:56,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:07:56,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:07:56,918.918 INFO    ] time= 18/10/2026 13:07:56
[2026-10-18 13:07:56,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:07:56,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:07:57,115.115 INFO    ] No existing commands found in stream
[2026-10-18 13:08:02,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:08:02,142.142 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-18 13:08:03,360.360 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:08:03,363.363 INFO    ] Checking for system updates...
[2026-10-18 13:08:03,413.413 INFO    ] 200
[2026-10-18 13:08:03,416.416 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:08:03,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:08:03,500.500 INFO    ] No update needed
[2026-10-18 13:08:03,502.502 INFO    ] Checking for camera pi updates...
[2026-10-18 13:08:03,536.536 INFO    ] 200
[2026-10-18 13:08:03,539.539 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:08:03,591.591 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:08:13,608.608 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:08:13,652.652 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:08:13,663.663 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:08:13,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:08:13,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:08:13,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:08:15,719.719 INFO    ] ================================================
[2026-10-18 13:08:15,734.734 INFO    ] Launching Daemon at Sun Oct 18 13:08:15 IST 2026
[2026-10-18 13:08:15,746.746 INFO    ] ================================================
[2026-10-18 13:08:16,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:08:16
[2026-10-18 13:08:17,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:08:17,361.361 INFO    ] Initializing speech engine...
[2026-10-18 13:08:17,368.368 INFO    ] 2026-10-18 13:08:17
[2026-10-18 13:08:17,624.624 INFO    ] 2026-10-18 13:08:17
[2026-10-18 13:08:17,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:08:17,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:08:17,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:08:18,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:08:18,167.167 INFO    ] time= 18/10/2026 13:08:18
[2026-10-18 13:08:18,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:08:18,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:08:18,319.319 INFO    ] No existing commands found in stream
[2026-10-18 13:08:23,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:08:23,337.337 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-18 13:08:25,745.745 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:08:25,747.747 INFO    ] Checking for system updates...
[2026-10-18 13:08:25,784.784 INFO    ] 200
[2026-10-18 13:08:25,786.786 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:08:25,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:08:25,840.840 INFO    ] No update needed
[2026-10-18 13:08:25,843.843 INFO    ] Checking for camera pi updates...
[2026-10-18 13:08:25,876.876 INFO    ] 200
[2026-10-18 13:08:25,879.879 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:08:25,918.918 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:08:35,934.934 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:08:35,969.969 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:08:35,978.978 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:08:35,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:08:35,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:08:35,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:08:38,031.031 INFO    ] ================================================
[2026-10-18 13:08:38,046.046 INFO    ] Launching Daemon at Sun Oct 18 13:08:38 IST 2026
[2026-10-18 13:08:38,058.058 INFO    ] ================================================
[2026-10-18 13:08:38,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:08:38
[2026-10-18 13:08:39,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:08:39,728.728 INFO    ] Initializing speech engine...
[2026-10-18 13:08:39,739.739 INFO    ] 2026-10-18 13:08:39
[2026-10-18 13:08:39,996.996 INFO    ] 2026-10-18 13:08:39
[2026-10-18 13:08:40,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:08:40,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:08:40,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:08:40,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:08:40,428.428 INFO    ] time= 18/10/2026 13:08:40
[2026-10-18 13:08:40,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:08:40,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:08:40,580.580 INFO    ] No existing commands found in stream
[2026-10-18 13:08:45,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:08:45,608.608 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-18 13:08:47,598.598 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:08:47,601.601 INFO    ] Checking for system updates...
[2026-10-18 13:08:47,641.641 INFO    ] 200
[2026-10-18 13:08:47,644.644 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:08:47,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:08:47,699.699 INFO    ] No update needed
[2026-10-18 13:08:47,701.701 INFO    ] Checking for camera pi updates...
[2026-10-18 13:08:47,735.735 INFO    ] 200
[2026-10-18 13:08:47,737.737 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:08:47,783.783 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:08:57,798.798 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:08:57,834.834 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:08:57,843.843 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:08:57,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:08:57,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:08:57,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:08:59,897.897 INFO    ] ================================================
[2026-10-18 13:08:59,913.913 INFO    ] Launching Daemon at Sun Oct 18 13:08:59 IST 2026
[2026-10-18 13:08:59,924.924 INFO    ] ================================================
[2026-10-18 13:09:00,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:09:00
[2026-10-18 13:09:01,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:09:01,358.358 INFO    ] Initializing speech engine...
[2026-10-18 13:09:01,367.367 INFO    ] 2026-10-18 13:09:01
[2026-10-18 13:09:01,627.627 INFO    ] 2026-10-18 13:09:01
[2026-10-18 13:09:01,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:09:01,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:09:01,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:09:02,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:09:02,115.115 INFO    ] time= 18/10/2026 13:09:02
[2026-10-18 13:09:02,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:09:02,140.140 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:09:02,219.219 INFO    ] No existing commands found in stream
[2026-10-18 13:09:07,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:09:07,237.237 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-18 13:09:09,954.954 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:09:09,956.956 INFO    ] Checking for system updates...
[2026-10-18 13:09:09,993.993 INFO    ] 200
[2026-10-18 13:09:09,995.995 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:09:10,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:09:10,059.059 INFO    ] No update needed
[2026-10-18 13:09:10,062.062 INFO    ] Checking for camera pi updates...
[2026-10-18 13:09:10,095.095 INFO    ] 200
[2026-10-18 13:09:10,098.098 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:09:10,138.138 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:09:20,152.152 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:09:20,188.188 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:09:20,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:09:20,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:09:20,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:09:20,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:09:22,253.253 INFO    ] ================================================
[2026-10-18 13:09:22,268.268 INFO    ] Launching Daemon at Sun Oct 18 13:09:22 IST 2026
[2026-10-18 13:09:22,279.279 INFO    ] ================================================
[2026-10-18 13:09:22,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:09:22
[2026-10-18 13:09:23,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:09:23,704.704 INFO    ] Initializing speech engine...
[2026-10-18 13:09:23,713.713 INFO    ] 2026-10-18 13:09:23
[2026-10-18 13:09:23,966.966 INFO    ] 2026-10-18 13:09:23
[2026-10-18 13:09:24,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:09:24,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:09:24,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:09:24,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:09:24,428.428 INFO    ] time= 18/10/2026 13:09:24
[2026-10-18 13:09:24,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:09:24,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:09:24,696.696 INFO    ] No existing commands found in stream
[2026-10-18 13:09:29,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:09:29,713.713 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-18 13:09:33,559.559 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:09:33,561.561 INFO    ] Checking for system updates...
[2026-10-18 13:09:33,597.597 INFO    ] 200
[2026-10-18 13:09:33,600.600 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:09:33,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:09:33,654.654 INFO    ] No update needed
[2026-10-18 13:09:33,656.656 INFO    ] Checking for camera pi updates...
[2026-10-18 13:09:33,694.694 INFO    ] 200
[2026-10-18 13:09:33,697.697 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:09:33,737.737 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:09:43,752.752 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:09:43,787.787 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:09:43,797.797 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:09:43,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:09:43,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:09:43,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:09:45,851.851 INFO    ] ================================================
[2026-10-18 13:09:45,867.867 INFO    ] Launching Daemon at Sun Oct 18 13:09:45 IST 2026
[2026-10-18 13:09:45,880.880 INFO    ] ================================================
[2026-10-18 13:09:46,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:09:46
[2026-10-18 13:09:47,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:09:47,296.296 INFO    ] Initializing speech engine...
[2026-10-18 13:09:47,310.310 INFO    ] 2026-10-18 13:09:47
[2026-10-18 13:09:47,595.595 INFO    ] 2026-10-18 13:09:47
[2026-10-18 13:09:47,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:09:47,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:09:47,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:09:48,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:09:48,018.018 INFO    ] time= 18/10/2026 13:09:48
[2026-10-18 13:09:48,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:09:48,051.051 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:09:48,187.187 INFO    ] No existing commands found in stream
[2026-10-18 13:09:53,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:09:53,221.221 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-18 13:09:56,006.006 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:09:56,008.008 INFO    ] Checking for system updates...
[2026-10-18 13:09:56,048.048 INFO    ] 200
[2026-10-18 13:09:56,050.050 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:09:56,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:09:56,104.104 INFO    ] No update needed
[2026-10-18 13:09:56,107.107 INFO    ] Checking for camera pi updates...
[2026-10-18 13:09:56,145.145 INFO    ] 200
[2026-10-18 13:09:56,147.147 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:09:56,187.187 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:10:06,204.204 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:10:06,239.239 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:10:06,248.248 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:10:06,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:10:06,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:10:06,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:10:08,301.301 INFO    ] ================================================
[2026-10-18 13:10:08,317.317 INFO    ] Launching Daemon at Sun Oct 18 13:10:08 IST 2026
[2026-10-18 13:10:08,329.329 INFO    ] ================================================
[2026-10-18 13:10:08,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:10:08
[2026-10-18 13:10:09,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:10:09,756.756 INFO    ] Initializing speech engine...
[2026-10-18 13:10:09,767.767 INFO    ] 2026-10-18 13:10:09
[2026-10-18 13:10:10,020.020 INFO    ] 2026-10-18 13:10:10
[2026-10-18 13:10:10,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:10:10,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:10:10,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:10:10,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:10:10,503.503 INFO    ] time= 18/10/2026 13:10:10
[2026-10-18 13:10:10,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:10:10,585.585 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:10:10,731.731 INFO    ] No existing commands found in stream
[2026-10-18 13:10:15,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:10:15,749.749 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-18 13:10:16,347.347 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 13:10:16,350.350 INFO    ] Checking for system updates...
[2026-10-18 13:10:16,390.390 INFO    ] 200
[2026-10-18 13:10:16,392.392 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:10:16,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:10:16,453.453 INFO    ] No update needed
[2026-10-18 13:10:16,456.456 INFO    ] Checking for camera pi updates...
[2026-10-18 13:10:16,489.489 INFO    ] 200
[2026-10-18 13:10:16,491.491 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:10:16,531.531 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:10:26,547.547 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:10:26,581.581 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:10:26,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:10:26,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:10:26,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:10:26,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:10:28,646.646 INFO    ] ================================================
[2026-10-18 13:10:28,662.662 INFO    ] Launching Daemon at Sun Oct 18 13:10:28 IST 2026
[2026-10-18 13:10:28,674.674 INFO    ] ================================================
[2026-10-18 13:10:29,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:10:29
[2026-10-18 13:10:29,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:10:30,098.098 INFO    ] Initializing speech engine...
[2026-10-18 13:10:30,107.107 INFO    ] 2026-10-18 13:10:30
[2026-10-18 13:10:30,363.363 INFO    ] 2026-10-18 13:10:30
[2026-10-18 13:10:30,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:10:30,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:10:30,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:10:30,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:10:30,904.904 INFO    ] time= 18/10/2026 13:10:30
[2026-10-18 13:10:30,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:10:30,927.927 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:10:31,057.057 INFO    ] No existing commands found in stream
[2026-10-18 13:10:36,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:10:36,078.078 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-18 13:10:38,286.286 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:10:38,289.289 INFO    ] Checking for system updates...
[2026-10-18 13:10:38,327.327 INFO    ] 200
[2026-10-18 13:10:38,330.330 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:10:38,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:10:38,385.385 INFO    ] No update needed
[2026-10-18 13:10:38,388.388 INFO    ] Checking for camera pi updates...
[2026-10-18 13:10:38,427.427 INFO    ] 200
[2026-10-18 13:10:38,430.430 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:10:38,471.471 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:10:48,485.485 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:10:48,526.526 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:10:48,537.537 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:10:48,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:10:48,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:10:48,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:10:50,594.594 INFO    ] ================================================
[2026-10-18 13:10:50,610.610 INFO    ] Launching Daemon at Sun Oct 18 13:10:50 IST 2026
[2026-10-18 13:10:50,622.622 INFO    ] ================================================
[2026-10-18 13:10:51,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:10:51
[2026-10-18 13:10:51,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:10:52,043.043 INFO    ] Initializing speech engine...
[2026-10-18 13:10:52,052.052 INFO    ] 2026-10-18 13:10:52
[2026-10-18 13:10:52,298.298 INFO    ] 2026-10-18 13:10:52
[2026-10-18 13:10:52,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:10:52,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:10:52,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:10:52,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:10:52,854.854 INFO    ] time= 18/10/2026 13:10:52
[2026-10-18 13:10:52,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:10:52,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:10:53,011.011 INFO    ] No existing commands found in stream
[2026-10-18 13:10:58,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:10:58,043.043 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-18 13:11:01,144.144 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:11:01,146.146 INFO    ] Checking for system updates...
[2026-10-18 13:11:01,186.186 INFO    ] 200
[2026-10-18 13:11:01,189.189 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:11:01,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:11:01,243.243 INFO    ] No update needed
[2026-10-18 13:11:01,245.245 INFO    ] Checking for camera pi updates...
[2026-10-18 13:11:01,283.283 INFO    ] 200
[2026-10-18 13:11:01,286.286 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:11:01,331.331 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:11:11,344.344 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:11:11,379.379 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:11:11,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:11:11,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:11:11,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:11:11,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:11:13,444.444 INFO    ] ================================================
[2026-10-18 13:11:13,459.459 INFO    ] Launching Daemon at Sun Oct 18 13:11:13 IST 2026
[2026-10-18 13:11:13,470.470 INFO    ] ================================================
[2026-10-18 13:11:14,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:11:14
[2026-10-18 13:11:14,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:11:14,888.888 INFO    ] Initializing speech engine...
[2026-10-18 13:11:14,897.897 INFO    ] 2026-10-18 13:11:14
[2026-10-18 13:11:15,142.142 INFO    ] 2026-10-18 13:11:15
[2026-10-18 13:11:15,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:11:15,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:11:15,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:11:15,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:11:15,699.699 INFO    ] time= 18/10/2026 13:11:15
[2026-10-18 13:11:15,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:11:15,724.724 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:11:15,865.865 INFO    ] No existing commands found in stream
[2026-10-18 13:11:20,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:11:20,894.894 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-18 13:11:24,722.722 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:11:24,724.724 INFO    ] Checking for system updates...
[2026-10-18 13:11:24,759.759 INFO    ] 200
[2026-10-18 13:11:24,762.762 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:11:24,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:11:24,817.817 INFO    ] No update needed
[2026-10-18 13:11:24,819.819 INFO    ] Checking for camera pi updates...
[2026-10-18 13:11:24,857.857 INFO    ] 200
[2026-10-18 13:11:24,859.859 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:11:24,905.905 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:11:34,917.917 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:11:34,952.952 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:11:34,962.962 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:11:34,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:11:34,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:11:34,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:11:37,017.017 INFO    ] ================================================
[2026-10-18 13:11:37,032.032 INFO    ] Launching Daemon at Sun Oct 18 13:11:37 IST 2026
[2026-10-18 13:11:37,043.043 INFO    ] ================================================
[2026-10-18 13:11:37,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:11:37
[2026-10-18 13:11:38,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:11:38,490.490 INFO    ] Initializing speech engine...
[2026-10-18 13:11:38,499.499 INFO    ] 2026-10-18 13:11:38
[2026-10-18 13:11:38,744.744 INFO    ] 2026-10-18 13:11:38
[2026-10-18 13:11:38,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:11:39,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:11:39,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:11:39,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:11:39,252.252 INFO    ] time= 18/10/2026 13:11:39
[2026-10-18 13:11:39,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:11:39,310.310 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:11:39,457.457 INFO    ] No existing commands found in stream
[2026-10-18 13:11:44,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:11:44,479.479 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-18 13:11:47,385.385 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:11:47,388.388 INFO    ] Checking for system updates...
[2026-10-18 13:11:47,430.430 INFO    ] 200
[2026-10-18 13:11:47,433.433 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:11:47,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:11:47,502.502 INFO    ] No update needed
[2026-10-18 13:11:47,505.505 INFO    ] Checking for camera pi updates...
[2026-10-18 13:11:47,541.541 INFO    ] 200
[2026-10-18 13:11:47,543.543 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:11:47,591.591 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:11:57,607.607 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:11:57,642.642 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:11:57,652.652 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:11:57,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:11:57,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:11:57,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:11:59,704.704 INFO    ] ================================================
[2026-10-18 13:11:59,720.720 INFO    ] Launching Daemon at Sun Oct 18 13:11:59 IST 2026
[2026-10-18 13:11:59,732.732 INFO    ] ================================================
[2026-10-18 13:12:00,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:12:00
[2026-10-18 13:12:00,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:12:01,138.138 INFO    ] Initializing speech engine...
[2026-10-18 13:12:01,145.145 INFO    ] 2026-10-18 13:12:01
[2026-10-18 13:12:01,416.416 INFO    ] 2026-10-18 13:12:01
[2026-10-18 13:12:01,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:12:01,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:12:01,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:12:01,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:12:01,930.930 INFO    ] time= 18/10/2026 13:12:01
[2026-10-18 13:12:01,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:12:01,952.952 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:12:02,022.022 INFO    ] No existing commands found in stream
[2026-10-18 13:12:07,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:12:07,035.035 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-18 13:12:08,402.402 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:12:08,405.405 INFO    ] Checking for system updates...
[2026-10-18 13:12:08,447.447 INFO    ] 200
[2026-10-18 13:12:08,450.450 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:12:08,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:12:08,506.506 INFO    ] No update needed
[2026-10-18 13:12:08,509.509 INFO    ] Checking for camera pi updates...
[2026-10-18 13:12:08,548.548 INFO    ] 200
[2026-10-18 13:12:08,551.551 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:12:08,601.601 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:12:18,616.616 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:12:18,652.652 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:12:18,661.661 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:12:18,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:12:18,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:12:18,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:12:20,714.714 INFO    ] ================================================
[2026-10-18 13:12:20,729.729 INFO    ] Launching Daemon at Sun Oct 18 13:12:20 IST 2026
[2026-10-18 13:12:20,740.740 INFO    ] ================================================
[2026-10-18 13:12:21,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:12:21
[2026-10-18 13:12:21,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:12:22,154.154 INFO    ] Initializing speech engine...
[2026-10-18 13:12:22,162.162 INFO    ] 2026-10-18 13:12:22
[2026-10-18 13:12:22,443.443 INFO    ] 2026-10-18 13:12:22
[2026-10-18 13:12:22,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:12:22,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:12:22,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:12:22,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:12:22,939.939 INFO    ] time= 18/10/2026 13:12:22
[2026-10-18 13:12:22,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:12:23,053.053 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:12:23,200.200 INFO    ] No existing commands found in stream
[2026-10-18 13:12:28,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:12:28,220.220 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-18 13:12:32,109.109 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:12:32,112.112 INFO    ] Checking for system updates...
[2026-10-18 13:12:32,166.166 INFO    ] 200
[2026-10-18 13:12:32,169.169 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:12:32,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:12:32,233.233 INFO    ] No update needed
[2026-10-18 13:12:32,236.236 INFO    ] Checking for camera pi updates...
[2026-10-18 13:12:32,303.303 INFO    ] 200
[2026-10-18 13:12:32,306.306 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:12:32,357.357 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:12:42,373.373 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:12:42,407.407 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:12:42,417.417 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:12:42,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:12:42,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:12:42,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:12:44,471.471 INFO    ] ================================================
[2026-10-18 13:12:44,487.487 INFO    ] Launching Daemon at Sun Oct 18 13:12:44 IST 2026
[2026-10-18 13:12:44,499.499 INFO    ] ================================================
[2026-10-18 13:12:45,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:12:45
[2026-10-18 13:12:45,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:12:45,945.945 INFO    ] Initializing speech engine...
[2026-10-18 13:12:45,952.952 INFO    ] 2026-10-18 13:12:45
[2026-10-18 13:12:46,210.210 INFO    ] 2026-10-18 13:12:46
[2026-10-18 13:12:46,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:12:46,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:12:46,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:12:46,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:12:46,752.752 INFO    ] time= 18/10/2026 13:12:46
[2026-10-18 13:12:46,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:12:46,777.777 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:12:46,903.903 INFO    ] No existing commands found in stream
[2026-10-18 13:12:51,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:12:51,919.919 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-18 13:12:56,275.275 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:12:56,278.278 INFO    ] Checking for system updates...
[2026-10-18 13:12:56,318.318 INFO    ] 200
[2026-10-18 13:12:56,321.321 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:12:56,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:12:56,377.377 INFO    ] No update needed
[2026-10-18 13:12:56,379.379 INFO    ] Checking for camera pi updates...
[2026-10-18 13:12:56,417.417 INFO    ] 200
[2026-10-18 13:12:56,419.419 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:12:56,459.459 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:13:06,474.474 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:13:06,509.509 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:13:06,519.519 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:13:06,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:13:06,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:13:06,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:13:08,573.573 INFO    ] ================================================
[2026-10-18 13:13:08,589.589 INFO    ] Launching Daemon at Sun Oct 18 13:13:08 IST 2026
[2026-10-18 13:13:08,600.600 INFO    ] ================================================
[2026-10-18 13:13:09,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:13:09
[2026-10-18 13:13:09,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:13:10,000.000 INFO    ] Initializing speech engine...
[2026-10-18 13:13:10,008.008 INFO    ] 2026-10-18 13:13:10
[2026-10-18 13:13:10,281.281 INFO    ] 2026-10-18 13:13:10
[2026-10-18 13:13:10,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:13:10,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:13:10,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:13:10,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:13:10,756.756 INFO    ] time= 18/10/2026 13:13:10
[2026-10-18 13:13:10,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:13:10,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:13:11,001.001 INFO    ] No existing commands found in stream
[2026-10-18 13:13:16,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:13:16,020.020 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-18 13:13:16,589.589 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:13:16,592.592 INFO    ] Checking for system updates...
[2026-10-18 13:13:16,629.629 INFO    ] 200
[2026-10-18 13:13:16,632.632 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:13:16,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:13:16,687.687 INFO    ] No update needed
[2026-10-18 13:13:16,690.690 INFO    ] Checking for camera pi updates...
[2026-10-18 13:13:16,725.725 INFO    ] 200
[2026-10-18 13:13:16,728.728 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:13:16,769.769 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:13:26,786.786 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:13:26,827.827 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:13:26,838.838 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:13:26,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:13:26,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:13:26,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:13:28,894.894 INFO    ] ================================================
[2026-10-18 13:13:28,909.909 INFO    ] Launching Daemon at Sun Oct 18 13:13:28 IST 2026
[2026-10-18 13:13:28,921.921 INFO    ] ================================================
[2026-10-18 13:13:29,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:13:29
[2026-10-18 13:13:30,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:13:30,343.343 INFO    ] Initializing speech engine...
[2026-10-18 13:13:30,351.351 INFO    ] 2026-10-18 13:13:30
[2026-10-18 13:13:30,602.602 INFO    ] 2026-10-18 13:13:30
[2026-10-18 13:13:30,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:13:30,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:13:30,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:13:31,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:13:31,110.110 INFO    ] time= 18/10/2026 13:13:31
[2026-10-18 13:13:31,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:13:31,214.214 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:13:31,358.358 INFO    ] No existing commands found in stream
[2026-10-18 13:13:36,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:13:36,382.382 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-18 13:13:40,951.951 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:13:40,953.953 INFO    ] Checking for system updates...
[2026-10-18 13:13:40,994.994 INFO    ] 200
[2026-10-18 13:13:40,997.997 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:13:41,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:13:41,065.065 INFO    ] No update needed
[2026-10-18 13:13:41,068.068 INFO    ] Checking for camera pi updates...
[2026-10-18 13:13:41,106.106 INFO    ] 200
[2026-10-18 13:13:41,109.109 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:13:41,159.159 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:13:51,173.173 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:13:51,212.212 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:13:51,223.223 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:13:51,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:13:51,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:13:51,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:13:53,279.279 INFO    ] ================================================
[2026-10-18 13:13:53,294.294 INFO    ] Launching Daemon at Sun Oct 18 13:13:53 IST 2026
[2026-10-18 13:13:53,305.305 INFO    ] ================================================
[2026-10-18 13:13:53,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:13:53
[2026-10-18 13:13:54,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:13:54,753.753 INFO    ] Initializing speech engine...
[2026-10-18 13:13:54,760.760 INFO    ] 2026-10-18 13:13:54
[2026-10-18 13:13:55,021.021 INFO    ] 2026-10-18 13:13:55
[2026-10-18 13:13:55,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:13:55,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:13:55,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:13:55,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:13:55,509.509 INFO    ] time= 18/10/2026 13:13:55
[2026-10-18 13:13:55,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:13:55,573.573 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:13:55,719.719 INFO    ] No existing commands found in stream
[2026-10-18 13:14:00,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:14:00,741.741 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-18 13:14:04,361.361 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 13:14:04,363.363 INFO    ] Checking for system updates...
[2026-10-18 13:14:04,402.402 INFO    ] 200
[2026-10-18 13:14:04,405.405 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:14:04,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:14:04,460.460 INFO    ] No update needed
[2026-10-18 13:14:04,463.463 INFO    ] Checking for camera pi updates...
[2026-10-18 13:14:04,503.503 INFO    ] 200
[2026-10-18 13:14:04,505.505 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:14:04,545.545 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:14:14,559.559 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:14:14,595.595 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:14:14,605.605 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:14:14,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:14:14,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:14:14,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:14:16,659.659 INFO    ] ================================================
[2026-10-18 13:14:16,674.674 INFO    ] Launching Daemon at Sun Oct 18 13:14:16 IST 2026
[2026-10-18 13:14:16,685.685 INFO    ] ================================================
[2026-10-18 13:14:17,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:14:17
[2026-10-18 13:14:17,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:14:18,087.087 INFO    ] Initializing speech engine...
[2026-10-18 13:14:18,100.100 INFO    ] 2026-10-18 13:14:18
[2026-10-18 13:14:18,352.352 INFO    ] 2026-10-18 13:14:18
[2026-10-18 13:14:18,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:14:18,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:14:18,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:14:18,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:14:18,937.937 INFO    ] time= 18/10/2026 13:14:18
[2026-10-18 13:14:18,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:14:18,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:14:19,107.107 INFO    ] No existing commands found in stream
[2026-10-18 13:14:24,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:14:24,141.141 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-18 13:14:27,294.294 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:14:27,297.297 INFO    ] Checking for system updates...
[2026-10-18 13:14:27,336.336 INFO    ] 200
[2026-10-18 13:14:27,338.338 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:14:27,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:14:27,393.393 INFO    ] No update needed
[2026-10-18 13:14:27,395.395 INFO    ] Checking for camera pi updates...
[2026-10-18 13:14:27,432.432 INFO    ] 200
[2026-10-18 13:14:27,434.434 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:14:27,474.474 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:14:37,489.489 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:14:37,523.523 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:14:37,533.533 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:14:37,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:14:37,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:14:37,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:14:39,585.585 INFO    ] ================================================
[2026-10-18 13:14:39,601.601 INFO    ] Launching Daemon at Sun Oct 18 13:14:39 IST 2026
[2026-10-18 13:14:39,611.611 INFO    ] ================================================
[2026-10-18 13:14:40,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:14:40
[2026-10-18 13:14:40,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:14:41,021.021 INFO    ] Initializing speech engine...
[2026-10-18 13:14:41,030.030 INFO    ] 2026-10-18 13:14:41
[2026-10-18 13:14:41,320.320 INFO    ] 2026-10-18 13:14:41
[2026-10-18 13:14:41,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:14:41,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:14:41,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:14:41,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:14:41,847.847 INFO    ] time= 18/10/2026 13:14:41
[2026-10-18 13:14:41,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:14:41,935.935 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:14:42,085.085 INFO    ] No existing commands found in stream
[2026-10-18 13:14:47,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:14:47,105.105 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-18 13:14:50,802.802 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:14:50,805.805 INFO    ] Checking for system updates...
[2026-10-18 13:14:50,840.840 INFO    ] 200
[2026-10-18 13:14:50,843.843 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:14:50,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:14:50,902.902 INFO    ] No update needed
[2026-10-18 13:14:50,905.905 INFO    ] Checking for camera pi updates...
[2026-10-18 13:14:50,941.941 INFO    ] 200
[2026-10-18 13:14:50,944.944 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:14:50,988.988 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:15:01,003.003 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:15:01,040.040 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:15:01,050.050 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:15:01,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:15:01,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:15:01,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:15:03,141.141 INFO    ] ================================================
[2026-10-18 13:15:03,164.164 INFO    ] Launching Daemon at Sun Oct 18 13:15:03 IST 2026
[2026-10-18 13:15:03,180.180 INFO    ] ================================================
[2026-10-18 13:15:03,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:15:03
[2026-10-18 13:15:04,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:15:04,708.708 INFO    ] Initializing speech engine...
[2026-10-18 13:15:04,718.718 INFO    ] 2026-10-18 13:15:04
[2026-10-18 13:15:04,962.962 INFO    ] 2026-10-18 13:15:04
[2026-10-18 13:15:04,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:15:05,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:15:05,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:15:05,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:15:05,445.445 INFO    ] time= 18/10/2026 13:15:05
[2026-10-18 13:15:05,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:15:05,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:15:05,676.676 INFO    ] No existing commands found in stream
[2026-10-18 13:15:10,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:15:10,704.704 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-18 13:15:12,909.909 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:15:12,912.912 INFO    ] Checking for system updates...
[2026-10-18 13:15:12,949.949 INFO    ] 200
[2026-10-18 13:15:12,951.951 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:15:13,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:15:13,008.008 INFO    ] No update needed
[2026-10-18 13:15:13,010.010 INFO    ] Checking for camera pi updates...
[2026-10-18 13:15:13,059.059 INFO    ] 200
[2026-10-18 13:15:13,062.062 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:15:13,102.102 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:15:23,117.117 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:15:23,153.153 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:15:23,163.163 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:15:23,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:15:23,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:15:23,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:15:25,218.218 INFO    ] ================================================
[2026-10-18 13:15:25,234.234 INFO    ] Launching Daemon at Sun Oct 18 13:15:25 IST 2026
[2026-10-18 13:15:25,246.246 INFO    ] ================================================
[2026-10-18 13:15:25,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:15:25
[2026-10-18 13:15:26,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:15:26,895.895 INFO    ] Initializing speech engine...
[2026-10-18 13:15:26,907.907 INFO    ] 2026-10-18 13:15:26
[2026-10-18 13:15:27,194.194 INFO    ] 2026-10-18 13:15:27
[2026-10-18 13:15:27,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:15:27,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:15:27,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:15:27,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:15:27,754.754 INFO    ] time= 18/10/2026 13:15:27
[2026-10-18 13:15:27,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:15:27,803.803 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:15:27,976.976 INFO    ] No existing commands found in stream
[2026-10-18 13:15:33,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:15:33,010.010 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-18 13:15:35,459.459 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:15:35,462.462 INFO    ] Checking for system updates...
[2026-10-18 13:15:35,502.502 INFO    ] 200
[2026-10-18 13:15:35,505.505 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:15:35,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:15:35,561.561 INFO    ] No update needed
[2026-10-18 13:15:35,564.564 INFO    ] Checking for camera pi updates...
[2026-10-18 13:15:35,598.598 INFO    ] 200
[2026-10-18 13:15:35,601.601 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:15:35,646.646 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:15:45,662.662 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:15:45,698.698 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:15:45,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:15:45,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:15:45,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:15:45,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:15:47,767.767 INFO    ] ================================================
[2026-10-18 13:15:47,783.783 INFO    ] Launching Daemon at Sun Oct 18 13:15:47 IST 2026
[2026-10-18 13:15:47,794.794 INFO    ] ================================================
[2026-10-18 13:15:48,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:15:48
[2026-10-18 13:15:48,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:15:49,253.253 INFO    ] Initializing speech engine...
[2026-10-18 13:15:49,260.260 INFO    ] 2026-10-18 13:15:49
[2026-10-18 13:15:49,519.519 INFO    ] 2026-10-18 13:15:49
[2026-10-18 13:15:49,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:15:49,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:15:49,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:15:50,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:15:50,064.064 INFO    ] time= 18/10/2026 13:15:50
[2026-10-18 13:15:50,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:15:50,113.113 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:15:50,237.237 INFO    ] No existing commands found in stream
[2026-10-18 13:15:55,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:15:55,271.271 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-18 13:15:58,047.047 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:15:58,050.050 INFO    ] Checking for system updates...
[2026-10-18 13:15:58,091.091 INFO    ] 200
[2026-10-18 13:15:58,094.094 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:15:58,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:15:58,157.157 INFO    ] No update needed
[2026-10-18 13:15:58,159.159 INFO    ] Checking for camera pi updates...
[2026-10-18 13:15:58,197.197 INFO    ] 200
[2026-10-18 13:15:58,200.200 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:15:58,253.253 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:16:08,268.268 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:16:08,305.305 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:16:08,315.315 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:16:08,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:16:08,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:16:08,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:16:10,370.370 INFO    ] ================================================
[2026-10-18 13:16:10,385.385 INFO    ] Launching Daemon at Sun Oct 18 13:16:10 IST 2026
[2026-10-18 13:16:10,396.396 INFO    ] ================================================
[2026-10-18 13:16:11,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:16:11
[2026-10-18 13:16:11,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:16:12,018.018 INFO    ] Initializing speech engine...
[2026-10-18 13:16:12,032.032 INFO    ] 2026-10-18 13:16:12
[2026-10-18 13:16:12,324.324 INFO    ] 2026-10-18 13:16:12
[2026-10-18 13:16:12,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:16:12,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:16:12,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:16:12,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:16:12,843.843 INFO    ] time= 18/10/2026 13:16:12
[2026-10-18 13:16:12,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:16:12,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:16:12,994.994 INFO    ] No existing commands found in stream
[2026-10-18 13:16:18,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:16:18,027.027 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-18 13:16:20,127.127 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:16:20,129.129 INFO    ] Checking for system updates...
[2026-10-18 13:16:20,166.166 INFO    ] 200
[2026-10-18 13:16:20,168.168 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:16:20,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:16:20,223.223 INFO    ] No update needed
[2026-10-18 13:16:20,226.226 INFO    ] Checking for camera pi updates...
[2026-10-18 13:16:20,260.260 INFO    ] 200
[2026-10-18 13:16:20,262.262 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:16:20,302.302 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:16:30,317.317 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:16:30,353.353 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:16:30,363.363 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:16:30,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:16:30,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:16:30,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:16:32,422.422 INFO    ] ================================================
[2026-10-18 13:16:32,440.440 INFO    ] Launching Daemon at Sun Oct 18 13:16:32 IST 2026
[2026-10-18 13:16:32,451.451 INFO    ] ================================================
[2026-10-18 13:16:33,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:16:33
[2026-10-18 13:16:33,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:16:33,883.883 INFO    ] Initializing speech engine...
[2026-10-18 13:16:33,889.889 INFO    ] 2026-10-18 13:16:33
[2026-10-18 13:16:34,149.149 INFO    ] 2026-10-18 13:16:34
[2026-10-18 13:16:34,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:16:34,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:16:34,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:16:34,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:16:34,690.690 INFO    ] time= 18/10/2026 13:16:34
[2026-10-18 13:16:34,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:16:34,714.714 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:16:34,858.858 INFO    ] No existing commands found in stream
[2026-10-18 13:16:39,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:16:39,898.898 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-18 13:16:42,141.141 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:16:42,144.144 INFO    ] Checking for system updates...
[2026-10-18 13:16:42,182.182 INFO    ] 200
[2026-10-18 13:16:42,185.185 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:16:42,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:16:42,240.240 INFO    ] No update needed
[2026-10-18 13:16:42,242.242 INFO    ] Checking for camera pi updates...
[2026-10-18 13:16:42,277.277 INFO    ] 200
[2026-10-18 13:16:42,279.279 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:16:42,319.319 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:16:52,334.334 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:16:52,369.369 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:16:52,379.379 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:16:52,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:16:52,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:16:52,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:16:54,432.432 INFO    ] ================================================
[2026-10-18 13:16:54,447.447 INFO    ] Launching Daemon at Sun Oct 18 13:16:54 IST 2026
[2026-10-18 13:16:54,458.458 INFO    ] ================================================
[2026-10-18 13:16:55,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:16:55
[2026-10-18 13:16:55,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:16:55,919.919 INFO    ] Initializing speech engine...
[2026-10-18 13:16:55,925.925 INFO    ] 2026-10-18 13:16:55
[2026-10-18 13:16:56,223.223 INFO    ] 2026-10-18 13:16:56
[2026-10-18 13:16:56,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:16:56,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:16:56,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:16:56,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:16:56,754.754 INFO    ] time= 18/10/2026 13:16:56
[2026-10-18 13:16:56,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:16:56,863.863 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:16:57,009.009 INFO    ] No existing commands found in stream
[2026-10-18 13:17:02,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:17:02,048.048 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-18 13:17:04,676.676 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:17:04,679.679 INFO    ] Checking for system updates...
[2026-10-18 13:17:04,717.717 INFO    ] 200
[2026-10-18 13:17:04,720.720 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:17:04,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:17:04,779.779 INFO    ] No update needed
[2026-10-18 13:17:04,782.782 INFO    ] Checking for camera pi updates...
[2026-10-18 13:17:04,817.817 INFO    ] 200
[2026-10-18 13:17:04,820.820 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:17:04,860.860 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:17:14,876.876 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:17:14,911.911 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:17:14,921.921 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:17:14,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:17:14,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:17:14,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:17:16,974.974 INFO    ] ================================================
[2026-10-18 13:17:16,990.990 INFO    ] Launching Daemon at Sun Oct 18 13:17:16 IST 2026
[2026-10-18 13:17:17,001.001 INFO    ] ================================================
[2026-10-18 13:17:17,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:17:17
[2026-10-18 13:17:18,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:17:18,596.596 INFO    ] Initializing speech engine...
[2026-10-18 13:17:18,623.623 INFO    ] 2026-10-18 13:17:18
[2026-10-18 13:17:18,921.921 INFO    ] 2026-10-18 13:17:18
[2026-10-18 13:17:19,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:17:19,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:17:19,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:17:19,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:17:19,438.438 INFO    ] time= 18/10/2026 13:17:19
[2026-10-18 13:17:19,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:17:19,486.486 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:17:19,657.657 INFO    ] No existing commands found in stream
[2026-10-18 13:17:24,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:17:24,691.691 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-18 13:17:26,217.217 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:17:26,220.220 INFO    ] Checking for system updates...
[2026-10-18 13:17:26,257.257 INFO    ] 200
[2026-10-18 13:17:26,259.259 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:17:26,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:17:26,319.319 INFO    ] No update needed
[2026-10-18 13:17:26,321.321 INFO    ] Checking for camera pi updates...
[2026-10-18 13:17:26,354.354 INFO    ] 200
[2026-10-18 13:17:26,357.357 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:17:26,397.397 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:17:36,413.413 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:17:36,448.448 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:17:36,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:17:36,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:17:36,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:17:36,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:17:38,509.509 INFO    ] ================================================
[2026-10-18 13:17:38,525.525 INFO    ] Launching Daemon at Sun Oct 18 13:17:38 IST 2026
[2026-10-18 13:17:38,536.536 INFO    ] ================================================
[2026-10-18 13:17:39,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:17:39
[2026-10-18 13:17:39,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:17:40,092.092 INFO    ] Initializing speech engine...
[2026-10-18 13:17:40,101.101 INFO    ] 2026-10-18 13:17:40
[2026-10-18 13:17:40,373.373 INFO    ] 2026-10-18 13:17:40
[2026-10-18 13:17:40,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:17:40,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:17:40,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:17:40,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:17:40,922.922 INFO    ] time= 18/10/2026 13:17:40
[2026-10-18 13:17:40,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:17:40,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:17:41,089.089 INFO    ] No existing commands found in stream
[2026-10-18 13:17:46,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:17:46,117.117 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-18 13:17:48,114.114 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:17:48,117.117 INFO    ] Checking for system updates...
[2026-10-18 13:17:48,153.153 INFO    ] 200
[2026-10-18 13:17:48,156.156 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:17:48,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:17:48,210.210 INFO    ] No update needed
[2026-10-18 13:17:48,213.213 INFO    ] Checking for camera pi updates...
[2026-10-18 13:17:48,247.247 INFO    ] 200
[2026-10-18 13:17:48,249.249 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:17:48,290.290 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:17:58,305.305 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:17:58,340.340 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:17:58,350.350 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:17:58,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:17:58,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:17:58,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:18:00,402.402 INFO    ] ================================================
[2026-10-18 13:18:00,418.418 INFO    ] Launching Daemon at Sun Oct 18 13:18:00 IST 2026
[2026-10-18 13:18:00,430.430 INFO    ] ================================================
[2026-10-18 13:18:01,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:18:01
[2026-10-18 13:18:01,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:18:01,893.893 INFO    ] Initializing speech engine...
[2026-10-18 13:18:01,910.910 INFO    ] 2026-10-18 13:18:01
[2026-10-18 13:18:02,378.378 INFO    ] 2026-10-18 13:18:02
[2026-10-18 13:18:02,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:18:02,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:18:02,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:18:02,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:18:02,947.947 INFO    ] time= 18/10/2026 13:18:02
[2026-10-18 13:18:02,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:18:02,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:18:03,143.143 INFO    ] No existing commands found in stream
[2026-10-18 13:18:08,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:18:08,173.173 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-18 13:18:10,237.237 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:18:10,240.240 INFO    ] Checking for system updates...
[2026-10-18 13:18:10,277.277 INFO    ] 200
[2026-10-18 13:18:10,280.280 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:18:10,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:18:10,344.344 INFO    ] No update needed
[2026-10-18 13:18:10,347.347 INFO    ] Checking for camera pi updates...
[2026-10-18 13:18:10,386.386 INFO    ] 200
[2026-10-18 13:18:10,388.388 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:18:10,439.439 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:18:20,455.455 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:18:20,495.495 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:18:20,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:18:20,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:18:20,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:18:20,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:18:22,562.562 INFO    ] ================================================
[2026-10-18 13:18:22,578.578 INFO    ] Launching Daemon at Sun Oct 18 13:18:22 IST 2026
[2026-10-18 13:18:22,590.590 INFO    ] ================================================
[2026-10-18 13:18:23,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:18:23
[2026-10-18 13:18:23,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:18:24,076.076 INFO    ] Initializing speech engine...
[2026-10-18 13:18:24,087.087 INFO    ] 2026-10-18 13:18:24
[2026-10-18 13:18:24,398.398 INFO    ] 2026-10-18 13:18:24
[2026-10-18 13:18:24,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:18:24,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:18:24,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:18:24,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:18:24,908.908 INFO    ] time= 18/10/2026 13:18:24
[2026-10-18 13:18:24,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:18:24,956.956 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:18:25,083.083 INFO    ] No existing commands found in stream
[2026-10-18 13:18:30,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:18:30,112.112 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-18 13:18:32,062.062 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:18:32,066.066 INFO    ] Checking for system updates...
[2026-10-18 13:18:32,109.109 INFO    ] 200
[2026-10-18 13:18:32,112.112 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:18:32,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:18:32,184.184 INFO    ] No update needed
[2026-10-18 13:18:32,187.187 INFO    ] Checking for camera pi updates...
[2026-10-18 13:18:32,225.225 INFO    ] 200
[2026-10-18 13:18:32,228.228 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:18:32,273.273 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:18:42,288.288 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:18:42,329.329 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:18:42,340.340 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:18:42,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:18:42,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:18:42,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:18:44,398.398 INFO    ] ================================================
[2026-10-18 13:18:44,413.413 INFO    ] Launching Daemon at Sun Oct 18 13:18:44 IST 2026
[2026-10-18 13:18:44,425.425 INFO    ] ================================================
[2026-10-18 13:18:45,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:18:45
[2026-10-18 13:18:45,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:18:45,889.889 INFO    ] Initializing speech engine...
[2026-10-18 13:18:45,898.898 INFO    ] 2026-10-18 13:18:45
[2026-10-18 13:18:46,149.149 INFO    ] 2026-10-18 13:18:46
[2026-10-18 13:18:46,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:18:46,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:18:46,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:18:46,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:18:46,619.619 INFO    ] time= 18/10/2026 13:18:46
[2026-10-18 13:18:46,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:18:46,717.717 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:18:46,827.827 INFO    ] No existing commands found in stream
[2026-10-18 13:18:51,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:18:51,841.841 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-18 13:18:52,975.975 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:18:52,978.978 INFO    ] Checking for system updates...
[2026-10-18 13:18:53,014.014 INFO    ] 200
[2026-10-18 13:18:53,017.017 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:18:53,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:18:53,071.071 INFO    ] No update needed
[2026-10-18 13:18:53,074.074 INFO    ] Checking for camera pi updates...
[2026-10-18 13:18:53,108.108 INFO    ] 200
[2026-10-18 13:18:53,110.110 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:18:53,150.150 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:19:03,162.162 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:19:03,198.198 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:19:03,208.208 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:19:03,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:19:03,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:19:03,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:19:05,261.261 INFO    ] ================================================
[2026-10-18 13:19:05,277.277 INFO    ] Launching Daemon at Sun Oct 18 13:19:05 IST 2026
[2026-10-18 13:19:05,289.289 INFO    ] ================================================
[2026-10-18 13:19:05,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:19:05
[2026-10-18 13:19:06,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:19:06,740.740 INFO    ] Initializing speech engine...
[2026-10-18 13:19:06,746.746 INFO    ] 2026-10-18 13:19:06
[2026-10-18 13:19:07,008.008 INFO    ] 2026-10-18 13:19:07
[2026-10-18 13:19:07,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:19:07,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:19:07,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:19:07,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:19:07,507.507 INFO    ] time= 18/10/2026 13:19:07
[2026-10-18 13:19:07,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:19:07,561.561 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:19:07,706.706 INFO    ] No existing commands found in stream
[2026-10-18 13:19:12,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:19:12,721.721 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-18 13:19:16,428.428 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:19:16,430.430 INFO    ] Checking for system updates...
[2026-10-18 13:19:16,471.471 INFO    ] 200
[2026-10-18 13:19:16,474.474 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:19:16,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:19:16,528.528 INFO    ] No update needed
[2026-10-18 13:19:16,531.531 INFO    ] Checking for camera pi updates...
[2026-10-18 13:19:16,564.564 INFO    ] 200
[2026-10-18 13:19:16,567.567 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:19:16,607.607 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:19:26,622.622 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:19:26,657.657 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:19:26,667.667 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:19:26,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:19:26,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:19:26,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:19:28,720.720 INFO    ] ================================================
[2026-10-18 13:19:28,737.737 INFO    ] Launching Daemon at Sun Oct 18 13:19:28 IST 2026
[2026-10-18 13:19:28,748.748 INFO    ] ================================================
[2026-10-18 13:19:29,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:19:29
[2026-10-18 13:19:29,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:19:30,146.146 INFO    ] Initializing speech engine...
[2026-10-18 13:19:30,170.170 INFO    ] 2026-10-18 13:19:30
[2026-10-18 13:19:30,423.423 INFO    ] 2026-10-18 13:19:30
[2026-10-18 13:19:30,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:19:30,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:19:30,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:19:30,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:19:30,981.981 INFO    ] time= 18/10/2026 13:19:30
[2026-10-18 13:19:30,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:19:31,005.005 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:19:31,135.135 INFO    ] No existing commands found in stream
[2026-10-18 13:19:36,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:19:36,150.150 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-18 13:19:37,244.244 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:19:37,246.246 INFO    ] Checking for system updates...
[2026-10-18 13:19:37,282.282 INFO    ] 200
[2026-10-18 13:19:37,284.284 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:19:37,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:19:37,341.341 INFO    ] No update needed
[2026-10-18 13:19:37,344.344 INFO    ] Checking for camera pi updates...
[2026-10-18 13:19:37,377.377 INFO    ] 200
[2026-10-18 13:19:37,380.380 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:19:37,420.420 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:19:47,435.435 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:19:47,470.470 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:19:47,479.479 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:19:47,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:19:47,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:19:47,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:19:49,533.533 INFO    ] ================================================
[2026-10-18 13:19:49,549.549 INFO    ] Launching Daemon at Sun Oct 18 13:19:49 IST 2026
[2026-10-18 13:19:49,560.560 INFO    ] ================================================
[2026-10-18 13:19:50,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:19:50
[2026-10-18 13:19:50,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:19:51,003.003 INFO    ] Initializing speech engine...
[2026-10-18 13:19:51,013.013 INFO    ] 2026-10-18 13:19:51
[2026-10-18 13:19:51,281.281 INFO    ] 2026-10-18 13:19:51
[2026-10-18 13:19:51,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:19:51,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:19:51,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:19:51,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:19:51,705.705 INFO    ] time= 18/10/2026 13:19:51
[2026-10-18 13:19:51,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:19:51,717.717 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:19:51,854.854 INFO    ] No existing commands found in stream
[2026-10-18 13:19:56,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:19:56,887.887 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-18 13:20:00,559.559 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:20:00,562.562 INFO    ] Checking for system updates...
[2026-10-18 13:20:00,598.598 INFO    ] 200
[2026-10-18 13:20:00,601.601 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:20:00,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:20:00,655.655 INFO    ] No update needed
[2026-10-18 13:20:00,657.657 INFO    ] Checking for camera pi updates...
[2026-10-18 13:20:00,690.690 INFO    ] 200
[2026-10-18 13:20:00,693.693 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:20:00,732.732 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:20:10,748.748 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:20:10,782.782 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:20:10,792.792 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:20:10,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:20:10,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:20:10,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:20:12,845.845 INFO    ] ================================================
[2026-10-18 13:20:12,861.861 INFO    ] Launching Daemon at Sun Oct 18 13:20:12 IST 2026
[2026-10-18 13:20:12,872.872 INFO    ] ================================================
[2026-10-18 13:20:13,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:20:13
[2026-10-18 13:20:14,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:20:14,346.346 INFO    ] Initializing speech engine...
[2026-10-18 13:20:14,378.378 INFO    ] 2026-10-18 13:20:14
[2026-10-18 13:20:14,629.629 INFO    ] 2026-10-18 13:20:14
[2026-10-18 13:20:14,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:20:14,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:20:14,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:20:15,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:20:15,124.124 INFO    ] time= 18/10/2026 13:20:15
[2026-10-18 13:20:15,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:20:15,197.197 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:20:15,345.345 INFO    ] No existing commands found in stream
[2026-10-18 13:20:20,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:20:20,367.367 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-18 13:20:22,638.638 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:20:22,641.641 INFO    ] Checking for system updates...
[2026-10-18 13:20:22,678.678 INFO    ] 200
[2026-10-18 13:20:22,681.681 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:20:22,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:20:22,739.739 INFO    ] No update needed
[2026-10-18 13:20:22,742.742 INFO    ] Checking for camera pi updates...
[2026-10-18 13:20:22,776.776 INFO    ] 200
[2026-10-18 13:20:22,779.779 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:20:22,823.823 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:20:32,837.837 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:20:32,873.873 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:20:32,883.883 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:20:32,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:20:32,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:20:32,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:20:34,937.937 INFO    ] ================================================
[2026-10-18 13:20:34,952.952 INFO    ] Launching Daemon at Sun Oct 18 13:20:34 IST 2026
[2026-10-18 13:20:34,964.964 INFO    ] ================================================
[2026-10-18 13:20:35,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:20:35
[2026-10-18 13:20:36,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:20:36,386.386 INFO    ] Initializing speech engine...
[2026-10-18 13:20:36,395.395 INFO    ] 2026-10-18 13:20:36
[2026-10-18 13:20:36,645.645 INFO    ] 2026-10-18 13:20:36
[2026-10-18 13:20:36,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:20:36,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:20:36,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:20:37,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:20:37,214.214 INFO    ] time= 18/10/2026 13:20:37
[2026-10-18 13:20:37,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:20:37,238.238 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:20:37,382.382 INFO    ] No existing commands found in stream
[2026-10-18 13:20:42,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:20:42,411.411 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-18 13:20:44,537.537 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:20:44,540.540 INFO    ] Checking for system updates...
[2026-10-18 13:20:44,576.576 INFO    ] 200
[2026-10-18 13:20:44,579.579 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:20:44,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:20:44,633.633 INFO    ] No update needed
[2026-10-18 13:20:44,635.635 INFO    ] Checking for camera pi updates...
[2026-10-18 13:20:44,668.668 INFO    ] 200
[2026-10-18 13:20:44,671.671 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:20:44,710.710 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:20:54,724.724 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:20:54,759.759 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:20:54,768.768 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:20:54,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:20:54,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:20:54,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:20:56,822.822 INFO    ] ================================================
[2026-10-18 13:20:56,837.837 INFO    ] Launching Daemon at Sun Oct 18 13:20:56 IST 2026
[2026-10-18 13:20:56,848.848 INFO    ] ================================================
[2026-10-18 13:20:57,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:20:57
[2026-10-18 13:20:58,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:20:58,404.404 INFO    ] Initializing speech engine...
[2026-10-18 13:20:58,415.415 INFO    ] 2026-10-18 13:20:58
[2026-10-18 13:20:58,675.675 INFO    ] 2026-10-18 13:20:58
[2026-10-18 13:20:58,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:20:58,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:20:58,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:20:59,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:20:59,248.248 INFO    ] time= 18/10/2026 13:20:59
[2026-10-18 13:20:59,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:20:59,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:20:59,433.433 INFO    ] No existing commands found in stream
[2026-10-18 13:21:04,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:21:04,462.462 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-18 13:21:08,441.441 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:21:08,444.444 INFO    ] Checking for system updates...
[2026-10-18 13:21:08,481.481 INFO    ] 200
[2026-10-18 13:21:08,483.483 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:21:08,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:21:08,539.539 INFO    ] No update needed
[2026-10-18 13:21:08,542.542 INFO    ] Checking for camera pi updates...
[2026-10-18 13:21:08,577.577 INFO    ] 200
[2026-10-18 13:21:08,579.579 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:21:08,621.621 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:21:18,637.637 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:21:18,675.675 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:21:18,686.686 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:21:18,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:21:18,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:21:18,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:21:20,741.741 INFO    ] ================================================
[2026-10-18 13:21:20,758.758 INFO    ] Launching Daemon at Sun Oct 18 13:21:20 IST 2026
[2026-10-18 13:21:20,769.769 INFO    ] ================================================
[2026-10-18 13:21:21,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:21:21
[2026-10-18 13:21:22,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:21:22,348.348 INFO    ] Initializing speech engine...
[2026-10-18 13:21:22,358.358 INFO    ] 2026-10-18 13:21:22
[2026-10-18 13:21:22,649.649 INFO    ] 2026-10-18 13:21:22
[2026-10-18 13:21:22,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:21:22,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:21:22,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:21:23,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:21:23,185.185 INFO    ] time= 18/10/2026 13:21:23
[2026-10-18 13:21:23,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:21:23,210.210 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:21:23,341.341 INFO    ] No existing commands found in stream
[2026-10-18 13:21:28,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:21:28,373.373 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-18 13:21:31,158.158 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:21:31,161.161 INFO    ] Checking for system updates...
[2026-10-18 13:21:31,198.198 INFO    ] 200
[2026-10-18 13:21:31,201.201 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:21:31,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:21:31,257.257 INFO    ] No update needed
[2026-10-18 13:21:31,259.259 INFO    ] Checking for camera pi updates...
[2026-10-18 13:21:31,293.293 INFO    ] 200
[2026-10-18 13:21:31,296.296 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:21:31,337.337 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:21:41,353.353 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:21:41,392.392 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:21:41,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:21:41,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:21:41,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:21:41,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:21:43,458.458 INFO    ] ================================================
[2026-10-18 13:21:43,474.474 INFO    ] Launching Daemon at Sun Oct 18 13:21:43 IST 2026
[2026-10-18 13:21:43,487.487 INFO    ] ================================================
[2026-10-18 13:21:44,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:21:44
[2026-10-18 13:21:44,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:21:45,073.073 INFO    ] Initializing speech engine...
[2026-10-18 13:21:45,082.082 INFO    ] 2026-10-18 13:21:45
[2026-10-18 13:21:45,350.350 INFO    ] 2026-10-18 13:21:45
[2026-10-18 13:21:45,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:21:45,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:21:45,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:21:45,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:21:45,916.916 INFO    ] time= 18/10/2026 13:21:45
[2026-10-18 13:21:45,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:21:45,940.940 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:21:46,073.073 INFO    ] No existing commands found in stream
[2026-10-18 13:21:51,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:21:51,096.096 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-18 13:21:53,374.374 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:21:53,377.377 INFO    ] Checking for system updates...
[2026-10-18 13:21:53,413.413 INFO    ] 200
[2026-10-18 13:21:53,416.416 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:21:53,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:21:53,471.471 INFO    ] No update needed
[2026-10-18 13:21:53,474.474 INFO    ] Checking for camera pi updates...
[2026-10-18 13:21:53,511.511 INFO    ] 200
[2026-10-18 13:21:53,513.513 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:21:53,555.555 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:22:03,569.569 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:22:03,610.610 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:22:03,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:22:03,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:22:03,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:22:03,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:22:05,682.682 INFO    ] ================================================
[2026-10-18 13:22:05,697.697 INFO    ] Launching Daemon at Sun Oct 18 13:22:05 IST 2026
[2026-10-18 13:22:05,708.708 INFO    ] ================================================
[2026-10-18 13:22:06,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:22:06
[2026-10-18 13:22:06,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:22:07,163.163 INFO    ] Initializing speech engine...
[2026-10-18 13:22:07,179.179 INFO    ] 2026-10-18 13:22:07
[2026-10-18 13:22:07,453.453 INFO    ] 2026-10-18 13:22:07
[2026-10-18 13:22:07,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:22:07,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:22:07,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:22:07,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:22:07,993.993 INFO    ] time= 18/10/2026 13:22:07
[2026-10-18 13:22:08,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:22:08,104.104 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:22:08,243.243 INFO    ] No existing commands found in stream
[2026-10-18 13:22:13,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:22:13,269.269 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-18 13:22:16,576.576 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:22:16,578.578 INFO    ] Checking for system updates...
[2026-10-18 13:22:16,618.618 INFO    ] 200
[2026-10-18 13:22:16,621.621 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:22:16,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:22:16,675.675 INFO    ] No update needed
[2026-10-18 13:22:16,678.678 INFO    ] Checking for camera pi updates...
[2026-10-18 13:22:16,712.712 INFO    ] 200
[2026-10-18 13:22:16,714.714 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:22:16,754.754 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:22:26,770.770 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:22:26,806.806 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:22:26,816.816 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:22:26,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:22:26,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:22:26,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:22:28,869.869 INFO    ] ================================================
[2026-10-18 13:22:28,885.885 INFO    ] Launching Daemon at Sun Oct 18 13:22:28 IST 2026
[2026-10-18 13:22:28,896.896 INFO    ] ================================================
[2026-10-18 13:22:29,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:22:29
[2026-10-18 13:22:30,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:22:30,542.542 INFO    ] Initializing speech engine...
[2026-10-18 13:22:30,554.554 INFO    ] 2026-10-18 13:22:30
[2026-10-18 13:22:30,845.845 INFO    ] 2026-10-18 13:22:30
[2026-10-18 13:22:30,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:22:31,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:22:31,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:22:31,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:22:31,416.416 INFO    ] time= 18/10/2026 13:22:31
[2026-10-18 13:22:31,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:22:31,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:22:31,607.607 INFO    ] No existing commands found in stream
[2026-10-18 13:22:36,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:22:36,636.636 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-18 13:22:39,156.156 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 13:22:39,159.159 INFO    ] Checking for system updates...
[2026-10-18 13:22:39,197.197 INFO    ] 200
[2026-10-18 13:22:39,200.200 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:22:39,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:22:39,255.255 INFO    ] No update needed
[2026-10-18 13:22:39,258.258 INFO    ] Checking for camera pi updates...
[2026-10-18 13:22:39,292.292 INFO    ] 200
[2026-10-18 13:22:39,295.295 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:22:39,337.337 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:22:49,354.354 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:22:49,395.395 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:22:49,406.406 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:22:49,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:22:49,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:22:49,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:22:51,462.462 INFO    ] ================================================
[2026-10-18 13:22:51,478.478 INFO    ] Launching Daemon at Sun Oct 18 13:22:51 IST 2026
[2026-10-18 13:22:51,490.490 INFO    ] ================================================
[2026-10-18 13:22:52,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:22:52
[2026-10-18 13:22:52,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:22:52,909.909 INFO    ] Initializing speech engine...
[2026-10-18 13:22:52,918.918 INFO    ] 2026-10-18 13:22:52
[2026-10-18 13:22:53,169.169 INFO    ] 2026-10-18 13:22:53
[2026-10-18 13:22:53,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:22:53,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:22:53,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:22:53,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:22:53,719.719 INFO    ] time= 18/10/2026 13:22:53
[2026-10-18 13:22:53,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:22:53,752.752 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:22:53,904.904 INFO    ] No existing commands found in stream
[2026-10-18 13:22:58,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:22:58,938.938 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-18 13:23:00,512.512 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:23:00,515.515 INFO    ] Checking for system updates...
[2026-10-18 13:23:00,551.551 INFO    ] 200
[2026-10-18 13:23:00,554.554 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:23:00,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:23:00,608.608 INFO    ] No update needed
[2026-10-18 13:23:00,610.610 INFO    ] Checking for camera pi updates...
[2026-10-18 13:23:00,643.643 INFO    ] 200
[2026-10-18 13:23:00,645.645 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:23:00,686.686 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:23:10,701.701 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:23:10,735.735 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:23:10,745.745 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:23:10,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:23:10,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:23:10,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:23:12,798.798 INFO    ] ================================================
[2026-10-18 13:23:12,814.814 INFO    ] Launching Daemon at Sun Oct 18 13:23:12 IST 2026
[2026-10-18 13:23:12,824.824 INFO    ] ================================================
[2026-10-18 13:23:13,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:23:13
[2026-10-18 13:23:14,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:23:14,281.281 INFO    ] Initializing speech engine...
[2026-10-18 13:23:14,291.291 INFO    ] 2026-10-18 13:23:14
[2026-10-18 13:23:14,539.539 INFO    ] 2026-10-18 13:23:14
[2026-10-18 13:23:14,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:23:14,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:23:14,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:23:15,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:23:15,093.093 INFO    ] time= 18/10/2026 13:23:15
[2026-10-18 13:23:15,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:23:15,120.120 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:23:15,260.260 INFO    ] No existing commands found in stream
[2026-10-18 13:23:20,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:23:20,294.294 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-18 13:23:24,231.231 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:23:24,234.234 INFO    ] Checking for system updates...
[2026-10-18 13:23:24,274.274 INFO    ] 200
[2026-10-18 13:23:24,277.277 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:23:24,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:23:24,332.332 INFO    ] No update needed
[2026-10-18 13:23:24,335.335 INFO    ] Checking for camera pi updates...
[2026-10-18 13:23:24,371.371 INFO    ] 200
[2026-10-18 13:23:24,374.374 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:23:24,414.414 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:23:34,430.430 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:23:34,470.470 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:23:34,481.481 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:23:34,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:23:34,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:23:34,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:23:36,538.538 INFO    ] ================================================
[2026-10-18 13:23:36,554.554 INFO    ] Launching Daemon at Sun Oct 18 13:23:36 IST 2026
[2026-10-18 13:23:36,566.566 INFO    ] ================================================
[2026-10-18 13:23:37,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:23:37
[2026-10-18 13:23:37,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:23:37,984.984 INFO    ] Initializing speech engine...
[2026-10-18 13:23:37,993.993 INFO    ] 2026-10-18 13:23:37
[2026-10-18 13:23:38,238.238 INFO    ] 2026-10-18 13:23:38
[2026-10-18 13:23:38,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:23:38,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:23:38,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:23:38,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:23:38,790.790 INFO    ] time= 18/10/2026 13:23:38
[2026-10-18 13:23:38,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:23:38,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:23:38,939.939 INFO    ] No existing commands found in stream
[2026-10-18 13:23:43,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:23:43,959.959 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-18 13:23:47,475.475 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 13:23:47,478.478 INFO    ] Checking for system updates...
[2026-10-18 13:23:47,514.514 INFO    ] 200
[2026-10-18 13:23:47,517.517 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:23:47,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:23:47,572.572 INFO    ] No update needed
[2026-10-18 13:23:47,574.574 INFO    ] Checking for camera pi updates...
[2026-10-18 13:23:47,612.612 INFO    ] 200
[2026-10-18 13:23:47,614.614 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:23:47,660.660 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:23:57,672.672 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:23:57,707.707 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:23:57,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:23:57,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:23:57,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:23:57,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:23:59,773.773 INFO    ] ================================================
[2026-10-18 13:23:59,789.789 INFO    ] Launching Daemon at Sun Oct 18 13:23:59 IST 2026
[2026-10-18 13:23:59,800.800 INFO    ] ================================================
[2026-10-18 13:24:00,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:24:00
[2026-10-18 13:24:01,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:24:01,483.483 INFO    ] Initializing speech engine...
[2026-10-18 13:24:01,487.487 INFO    ] 2026-10-18 13:24:01
[2026-10-18 13:24:01,971.971 INFO    ] 2026-10-18 13:24:01
[2026-10-18 13:24:02,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:24:02,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:24:02,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:24:02,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:24:02,517.517 INFO    ] time= 18/10/2026 13:24:02
[2026-10-18 13:24:02,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:24:02,611.611 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:24:02,783.783 INFO    ] No existing commands found in stream
[2026-10-18 13:24:07,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:24:07,811.811 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-18 13:24:10,783.783 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:24:10,786.786 INFO    ] Checking for system updates...
[2026-10-18 13:24:10,826.826 INFO    ] 200
[2026-10-18 13:24:10,828.828 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:24:10,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:24:10,887.887 INFO    ] No update needed
[2026-10-18 13:24:10,889.889 INFO    ] Checking for camera pi updates...
[2026-10-18 13:24:10,924.924 INFO    ] 200
[2026-10-18 13:24:10,926.926 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:24:10,970.970 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:24:20,985.985 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:24:21,021.021 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:24:21,031.031 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:24:21,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:24:21,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:24:21,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:24:23,084.084 INFO    ] ================================================
[2026-10-18 13:24:23,100.100 INFO    ] Launching Daemon at Sun Oct 18 13:24:23 IST 2026
[2026-10-18 13:24:23,111.111 INFO    ] ================================================
[2026-10-18 13:24:23,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:24:23
[2026-10-18 13:24:24,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:24:24,529.529 INFO    ] Initializing speech engine...
[2026-10-18 13:24:24,538.538 INFO    ] 2026-10-18 13:24:24
[2026-10-18 13:24:24,789.789 INFO    ] 2026-10-18 13:24:24
[2026-10-18 13:24:24,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:24:25,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:24:25,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:24:25,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:24:25,336.336 INFO    ] time= 18/10/2026 13:24:25
[2026-10-18 13:24:25,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:24:25,363.363 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:24:25,494.494 INFO    ] No existing commands found in stream
[2026-10-18 13:24:30,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:24:30,524.524 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-18 13:24:34,061.061 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:24:34,064.064 INFO    ] Checking for system updates...
[2026-10-18 13:24:34,100.100 INFO    ] 200
[2026-10-18 13:24:34,102.102 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:24:34,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:24:34,157.157 INFO    ] No update needed
[2026-10-18 13:24:34,160.160 INFO    ] Checking for camera pi updates...
[2026-10-18 13:24:34,193.193 INFO    ] 200
[2026-10-18 13:24:34,195.195 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:24:34,240.240 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:24:44,255.255 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:24:44,290.290 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:24:44,299.299 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:24:44,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:24:44,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:24:44,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:24:46,353.353 INFO    ] ================================================
[2026-10-18 13:24:46,369.369 INFO    ] Launching Daemon at Sun Oct 18 13:24:46 IST 2026
[2026-10-18 13:24:46,380.380 INFO    ] ================================================
[2026-10-18 13:24:46,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:24:46
[2026-10-18 13:24:47,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:24:47,799.799 INFO    ] Initializing speech engine...
[2026-10-18 13:24:47,814.814 INFO    ] 2026-10-18 13:24:47
[2026-10-18 13:24:48,084.084 INFO    ] 2026-10-18 13:24:48
[2026-10-18 13:24:48,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:24:48,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:24:48,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:24:48,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:24:48,609.609 INFO    ] time= 18/10/2026 13:24:48
[2026-10-18 13:24:48,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:24:48,667.667 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:24:48,817.817 INFO    ] No existing commands found in stream
[2026-10-18 13:24:53,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:24:53,843.843 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-18 13:24:57,274.274 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:24:57,277.277 INFO    ] Checking for system updates...
[2026-10-18 13:24:57,313.313 INFO    ] 200
[2026-10-18 13:24:57,316.316 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:24:57,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:24:57,371.371 INFO    ] No update needed
[2026-10-18 13:24:57,373.373 INFO    ] Checking for camera pi updates...
[2026-10-18 13:24:57,410.410 INFO    ] 200
[2026-10-18 13:24:57,413.413 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:24:57,457.457 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:25:07,473.473 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:25:07,508.508 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:25:07,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:25:07,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:25:07,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:25:07,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:25:09,570.570 INFO    ] ================================================
[2026-10-18 13:25:09,586.586 INFO    ] Launching Daemon at Sun Oct 18 13:25:09 IST 2026
[2026-10-18 13:25:09,598.598 INFO    ] ================================================
[2026-10-18 13:25:10,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:25:10
[2026-10-18 13:25:10,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:25:11,019.019 INFO    ] Initializing speech engine...
[2026-10-18 13:25:11,038.038 INFO    ] 2026-10-18 13:25:11
[2026-10-18 13:25:11,284.284 INFO    ] 2026-10-18 13:25:11
[2026-10-18 13:25:11,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:25:11,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:25:11,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:25:11,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:25:11,847.847 INFO    ] time= 18/10/2026 13:25:11
[2026-10-18 13:25:11,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:25:11,864.864 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:25:12,014.014 INFO    ] No existing commands found in stream
[2026-10-18 13:25:17,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:25:17,029.029 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-18 13:25:21,240.240 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:25:21,243.243 INFO    ] Checking for system updates...
[2026-10-18 13:25:21,279.279 INFO    ] 200
[2026-10-18 13:25:21,282.282 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:25:21,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:25:21,337.337 INFO    ] No update needed
[2026-10-18 13:25:21,340.340 INFO    ] Checking for camera pi updates...
[2026-10-18 13:25:21,375.375 INFO    ] 200
[2026-10-18 13:25:21,378.378 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:25:21,422.422 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:25:31,438.438 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:25:31,477.477 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:25:31,487.487 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:25:31,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:25:31,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:25:31,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:25:33,543.543 INFO    ] ================================================
[2026-10-18 13:25:33,558.558 INFO    ] Launching Daemon at Sun Oct 18 13:25:33 IST 2026
[2026-10-18 13:25:33,570.570 INFO    ] ================================================
[2026-10-18 13:25:34,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:25:34
[2026-10-18 13:25:34,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:25:35,003.003 INFO    ] Initializing speech engine...
[2026-10-18 13:25:35,011.011 INFO    ] 2026-10-18 13:25:35
[2026-10-18 13:25:35,305.305 INFO    ] 2026-10-18 13:25:35
[2026-10-18 13:25:35,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:25:35,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:25:35,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:25:35,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:25:35,809.809 INFO    ] time= 18/10/2026 13:25:35
[2026-10-18 13:25:35,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:25:35,917.917 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:25:36,087.087 INFO    ] No existing commands found in stream
[2026-10-18 13:25:41,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:25:41,110.110 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-18 13:25:43,850.850 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:25:43,853.853 INFO    ] Checking for system updates...
[2026-10-18 13:25:43,893.893 INFO    ] 200
[2026-10-18 13:25:43,896.896 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:25:43,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:25:43,957.957 INFO    ] No update needed
[2026-10-18 13:25:43,960.960 INFO    ] Checking for camera pi updates...
[2026-10-18 13:25:43,994.994 INFO    ] 200
[2026-10-18 13:25:43,997.997 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:25:44,041.041 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:25:54,057.057 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:25:54,096.096 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:25:54,107.107 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:25:54,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:25:54,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:25:54,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:25:56,161.161 INFO    ] ================================================
[2026-10-18 13:25:56,178.178 INFO    ] Launching Daemon at Sun Oct 18 13:25:56 IST 2026
[2026-10-18 13:25:56,189.189 INFO    ] ================================================
[2026-10-18 13:25:56,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:25:56
[2026-10-18 13:25:57,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:25:57,763.763 INFO    ] Initializing speech engine...
[2026-10-18 13:25:57,774.774 INFO    ] 2026-10-18 13:25:57
[2026-10-18 13:25:58,044.044 INFO    ] 2026-10-18 13:25:58
[2026-10-18 13:25:58,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:25:58,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:25:58,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:25:58,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:25:58,609.609 INFO    ] time= 18/10/2026 13:25:58
[2026-10-18 13:25:58,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:25:58,634.634 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:25:58,770.770 INFO    ] No existing commands found in stream
[2026-10-18 13:26:03,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:26:03,805.805 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-18 13:26:05,696.696 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 13:26:05,699.699 INFO    ] Checking for system updates...
[2026-10-18 13:26:05,738.738 INFO    ] 200
[2026-10-18 13:26:05,741.741 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:26:05,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:26:05,800.800 INFO    ] No update needed
[2026-10-18 13:26:05,803.803 INFO    ] Checking for camera pi updates...
[2026-10-18 13:26:05,837.837 INFO    ] 200
[2026-10-18 13:26:05,840.840 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:26:05,883.883 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:26:15,896.896 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:26:15,934.934 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:26:15,944.944 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:26:15,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:26:15,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:26:15,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:26:18,004.004 INFO    ] ================================================
[2026-10-18 13:26:18,020.020 INFO    ] Launching Daemon at Sun Oct 18 13:26:18 IST 2026
[2026-10-18 13:26:18,032.032 INFO    ] ================================================
[2026-10-18 13:26:18,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:26:18
[2026-10-18 13:26:19,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:26:19,463.463 INFO    ] Initializing speech engine...
[2026-10-18 13:26:19,470.470 INFO    ] 2026-10-18 13:26:19
[2026-10-18 13:26:19,758.758 INFO    ] 2026-10-18 13:26:19
[2026-10-18 13:26:19,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:26:20,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:26:20,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:26:20,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:26:20,289.289 INFO    ] time= 18/10/2026 13:26:20
[2026-10-18 13:26:20,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:26:20,371.371 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:26:20,533.533 INFO    ] No existing commands found in stream
[2026-10-18 13:26:25,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:26:25,549.549 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-18 13:26:27,010.010 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:26:27,013.013 INFO    ] Checking for system updates...
[2026-10-18 13:26:27,050.050 INFO    ] 200
[2026-10-18 13:26:27,053.053 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:26:27,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:26:27,111.111 INFO    ] No update needed
[2026-10-18 13:26:27,113.113 INFO    ] Checking for camera pi updates...
[2026-10-18 13:26:27,147.147 INFO    ] 200
[2026-10-18 13:26:27,150.150 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:26:27,190.190 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:26:37,206.206 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:26:37,241.241 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:26:37,251.251 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:26:37,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:26:37,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:26:37,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:26:39,304.304 INFO    ] ================================================
[2026-10-18 13:26:39,319.319 INFO    ] Launching Daemon at Sun Oct 18 13:26:39 IST 2026
[2026-10-18 13:26:39,330.330 INFO    ] ================================================
[2026-10-18 13:26:39,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:26:39
[2026-10-18 13:26:40,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:26:40,723.723 INFO    ] Initializing speech engine...
[2026-10-18 13:26:40,731.731 INFO    ] 2026-10-18 13:26:40
[2026-10-18 13:26:41,004.004 INFO    ] 2026-10-18 13:26:40
[2026-10-18 13:26:41,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:26:41,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:26:41,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:26:41,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:26:41,536.536 INFO    ] time= 18/10/2026 13:26:41
[2026-10-18 13:26:41,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:26:41,582.582 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:26:41,735.735 INFO    ] No existing commands found in stream
[2026-10-18 13:26:46,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:26:46,763.763 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-18 13:26:48,257.257 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 13:26:48,260.260 INFO    ] Checking for system updates...
[2026-10-18 13:26:48,296.296 INFO    ] 200
[2026-10-18 13:26:48,299.299 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:26:48,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:26:48,355.355 INFO    ] No update needed
[2026-10-18 13:26:48,358.358 INFO    ] Checking for camera pi updates...
[2026-10-18 13:26:48,392.392 INFO    ] 200
[2026-10-18 13:26:48,394.394 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:26:48,435.435 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:26:58,450.450 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:26:58,484.484 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:26:58,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:26:58,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:26:58,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:26:58,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:27:00,546.546 INFO    ] ================================================
[2026-10-18 13:27:00,562.562 INFO    ] Launching Daemon at Sun Oct 18 13:27:00 IST 2026
[2026-10-18 13:27:00,573.573 INFO    ] ================================================
[2026-10-18 13:27:01,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:27:01
[2026-10-18 13:27:01,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:27:02,251.251 INFO    ] Initializing speech engine...
[2026-10-18 13:27:02,267.267 INFO    ] 2026-10-18 13:27:02
[2026-10-18 13:27:02,587.587 INFO    ] 2026-10-18 13:27:02
[2026-10-18 13:27:02,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:27:02,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:27:02,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:27:03,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:27:03,143.143 INFO    ] time= 18/10/2026 13:27:03
[2026-10-18 13:27:03,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:27:03,220.220 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:27:03,349.349 INFO    ] No existing commands found in stream
[2026-10-18 13:27:08,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:27:08,382.382 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-18 13:27:10,432.432 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:27:10,435.435 INFO    ] Checking for system updates...
[2026-10-18 13:27:10,471.471 INFO    ] 200
[2026-10-18 13:27:10,473.473 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:27:10,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:27:10,527.527 INFO    ] No update needed
[2026-10-18 13:27:10,530.530 INFO    ] Checking for camera pi updates...
[2026-10-18 13:27:10,563.563 INFO    ] 200
[2026-10-18 13:27:10,565.565 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:27:10,605.605 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:27:20,620.620 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:27:20,655.655 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:27:20,665.665 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:27:20,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:27:20,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:27:20,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:27:22,717.717 INFO    ] ================================================
[2026-10-18 13:27:22,733.733 INFO    ] Launching Daemon at Sun Oct 18 13:27:22 IST 2026
[2026-10-18 13:27:22,744.744 INFO    ] ================================================
[2026-10-18 13:27:23,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:27:23
[2026-10-18 13:27:23,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:27:24,195.195 INFO    ] Initializing speech engine...
[2026-10-18 13:27:24,201.201 INFO    ] 2026-10-18 13:27:24
[2026-10-18 13:27:24,462.462 INFO    ] 2026-10-18 13:27:24
[2026-10-18 13:27:24,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:27:24,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:27:24,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:27:24,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:27:25,005.005 INFO    ] time= 18/10/2026 13:27:24
[2026-10-18 13:27:25,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:27:25,031.031 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:27:25,163.163 INFO    ] No existing commands found in stream
[2026-10-18 13:27:30,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:27:30,194.194 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-18 13:27:30,832.832 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:27:30,835.835 INFO    ] Checking for system updates...
[2026-10-18 13:27:30,875.875 INFO    ] 200
[2026-10-18 13:27:30,878.878 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:27:30,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:27:30,933.933 INFO    ] No update needed
[2026-10-18 13:27:30,935.935 INFO    ] Checking for camera pi updates...
[2026-10-18 13:27:30,968.968 INFO    ] 200
[2026-10-18 13:27:30,971.971 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:27:31,010.010 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:27:41,025.025 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:27:41,061.061 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:27:41,071.071 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:27:41,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:27:41,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:27:41,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:27:43,124.124 INFO    ] ================================================
[2026-10-18 13:27:43,141.141 INFO    ] Launching Daemon at Sun Oct 18 13:27:43 IST 2026
[2026-10-18 13:27:43,152.152 INFO    ] ================================================
[2026-10-18 13:27:43,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:27:43
[2026-10-18 13:27:44,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:27:44,628.628 INFO    ] Initializing speech engine...
[2026-10-18 13:27:44,637.637 INFO    ] 2026-10-18 13:27:44
[2026-10-18 13:27:44,906.906 INFO    ] 2026-10-18 13:27:44
[2026-10-18 13:27:44,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:27:45,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:27:45,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:27:45,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:27:45,438.438 INFO    ] time= 18/10/2026 13:27:45
[2026-10-18 13:27:45,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:27:45,541.541 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:27:45,676.676 INFO    ] No existing commands found in stream
[2026-10-18 13:27:50,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:27:50,704.704 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-18 13:27:53,967.967 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:27:53,970.970 INFO    ] Checking for system updates...
[2026-10-18 13:27:54,007.007 INFO    ] 200
[2026-10-18 13:27:54,010.010 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:27:54,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:27:54,065.065 INFO    ] No update needed
[2026-10-18 13:27:54,068.068 INFO    ] Checking for camera pi updates...
[2026-10-18 13:27:54,103.103 INFO    ] 200
[2026-10-18 13:27:54,105.105 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:27:54,146.146 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:28:04,161.161 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:28:04,200.200 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:28:04,211.211 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:28:04,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:28:04,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:28:04,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:28:06,266.266 INFO    ] ================================================
[2026-10-18 13:28:06,282.282 INFO    ] Launching Daemon at Sun Oct 18 13:28:06 IST 2026
[2026-10-18 13:28:06,293.293 INFO    ] ================================================
[2026-10-18 13:28:06,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:28:06
[2026-10-18 13:28:07,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:28:07,744.744 INFO    ] Initializing speech engine...
[2026-10-18 13:28:07,754.754 INFO    ] 2026-10-18 13:28:07
[2026-10-18 13:28:08,016.016 INFO    ] 2026-10-18 13:28:08
[2026-10-18 13:28:08,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:28:08,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:28:08,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:28:08,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:28:08,559.559 INFO    ] time= 18/10/2026 13:28:08
[2026-10-18 13:28:08,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:28:08,586.586 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:28:08,736.736 INFO    ] No existing commands found in stream
[2026-10-18 13:28:13,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:28:13,765.765 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-18 13:28:16,950.950 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:28:16,953.953 INFO    ] Checking for system updates...
[2026-10-18 13:28:16,989.989 INFO    ] 200
[2026-10-18 13:28:16,992.992 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:28:17,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:28:17,048.048 INFO    ] No update needed
[2026-10-18 13:28:17,051.051 INFO    ] Checking for camera pi updates...
[2026-10-18 13:28:17,085.085 INFO    ] 200
[2026-10-18 13:28:17,088.088 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:28:17,129.129 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:28:27,145.145 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:28:27,184.184 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:28:27,195.195 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:28:27,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:28:27,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:28:27,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:28:29,252.252 INFO    ] ================================================
[2026-10-18 13:28:29,268.268 INFO    ] Launching Daemon at Sun Oct 18 13:28:29 IST 2026
[2026-10-18 13:28:29,279.279 INFO    ] ================================================
[2026-10-18 13:28:29,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:28:29
[2026-10-18 13:28:30,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:28:30,691.691 INFO    ] Initializing speech engine...
[2026-10-18 13:28:30,714.714 INFO    ] 2026-10-18 13:28:30
[2026-10-18 13:28:30,969.969 INFO    ] 2026-10-18 13:28:30
[2026-10-18 13:28:31,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:28:31,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:28:31,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:28:31,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:28:31,485.485 INFO    ] time= 18/10/2026 13:28:31
[2026-10-18 13:28:31,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:28:31,547.547 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:28:31,706.706 INFO    ] No existing commands found in stream
[2026-10-18 13:28:36,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:28:36,732.732 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-18 13:28:39,274.274 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:28:39,276.276 INFO    ] Checking for system updates...
[2026-10-18 13:28:39,315.315 INFO    ] 200
[2026-10-18 13:28:39,318.318 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:28:39,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:28:39,372.372 INFO    ] No update needed
[2026-10-18 13:28:39,374.374 INFO    ] Checking for camera pi updates...
[2026-10-18 13:28:39,407.407 INFO    ] 200
[2026-10-18 13:28:39,409.409 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:28:39,456.456 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:28:49,472.472 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:28:49,507.507 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:28:49,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:28:49,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:28:49,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:28:49,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:28:51,569.569 INFO    ] ================================================
[2026-10-18 13:28:51,585.585 INFO    ] Launching Daemon at Sun Oct 18 13:28:51 IST 2026
[2026-10-18 13:28:51,596.596 INFO    ] ================================================
[2026-10-18 13:28:52,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:28:52
[2026-10-18 13:28:52,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:28:53,214.214 INFO    ] Initializing speech engine...
[2026-10-18 13:28:53,223.223 INFO    ] 2026-10-18 13:28:53
[2026-10-18 13:28:53,493.493 INFO    ] 2026-10-18 13:28:53
[2026-10-18 13:28:53,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:28:53,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:28:53,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:28:54,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:28:54,059.059 INFO    ] time= 18/10/2026 13:28:54
[2026-10-18 13:28:54,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:28:54,086.086 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:28:54,218.218 INFO    ] No existing commands found in stream
[2026-10-18 13:28:59,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:28:59,238.238 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-18 13:29:02,252.252 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:29:02,256.256 INFO    ] Checking for system updates...
[2026-10-18 13:29:02,300.300 INFO    ] 200
[2026-10-18 13:29:02,304.304 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:29:02,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:29:02,382.382 INFO    ] No update needed
[2026-10-18 13:29:02,386.386 INFO    ] Checking for camera pi updates...
[2026-10-18 13:29:02,430.430 INFO    ] 200
[2026-10-18 13:29:02,433.433 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:29:02,480.480 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:29:12,496.496 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:29:12,531.531 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:29:12,541.541 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:29:12,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:29:12,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:29:12,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:29:14,594.594 INFO    ] ================================================
[2026-10-18 13:29:14,610.610 INFO    ] Launching Daemon at Sun Oct 18 13:29:14 IST 2026
[2026-10-18 13:29:14,621.621 INFO    ] ================================================
[2026-10-18 13:29:15,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:29:15
[2026-10-18 13:29:15,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:29:16,093.093 INFO    ] Initializing speech engine...
[2026-10-18 13:29:16,102.102 INFO    ] 2026-10-18 13:29:16
[2026-10-18 13:29:16,368.368 INFO    ] 2026-10-18 13:29:16
[2026-10-18 13:29:16,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:29:16,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:29:16,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:29:16,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:29:16,869.869 INFO    ] time= 18/10/2026 13:29:16
[2026-10-18 13:29:16,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:29:16,962.962 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:29:17,115.115 INFO    ] No existing commands found in stream
[2026-10-18 13:29:22,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:29:22,132.132 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-18 13:29:26,284.284 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 13:29:26,286.286 INFO    ] Checking for system updates...
[2026-10-18 13:29:26,322.322 INFO    ] 200
[2026-10-18 13:29:26,325.325 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:29:26,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:29:26,380.380 INFO    ] No update needed
[2026-10-18 13:29:26,382.382 INFO    ] Checking for camera pi updates...
[2026-10-18 13:29:26,415.415 INFO    ] 200
[2026-10-18 13:29:26,417.417 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:29:26,457.457 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:29:36,472.472 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:29:36,507.507 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:29:36,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:29:36,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:29:36,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:29:36,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:29:38,574.574 INFO    ] ================================================
[2026-10-18 13:29:38,589.589 INFO    ] Launching Daemon at Sun Oct 18 13:29:38 IST 2026
[2026-10-18 13:29:38,601.601 INFO    ] ================================================
[2026-10-18 13:29:39,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:29:39
[2026-10-18 13:29:39,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:29:40,021.021 INFO    ] Initializing speech engine...
[2026-10-18 13:29:40,030.030 INFO    ] 2026-10-18 13:29:40
[2026-10-18 13:29:40,278.278 INFO    ] 2026-10-18 13:29:40
[2026-10-18 13:29:40,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:29:40,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:29:40,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:29:40,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:29:40,771.771 INFO    ] time= 18/10/2026 13:29:40
[2026-10-18 13:29:40,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:29:40,852.852 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:29:41,000.000 INFO    ] No existing commands found in stream
[2026-10-18 13:29:46,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:29:46,016.016 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-18 13:29:49,131.131 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:29:49,133.133 INFO    ] Checking for system updates...
[2026-10-18 13:29:49,168.168 INFO    ] 200
[2026-10-18 13:29:49,171.171 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:29:49,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:29:49,226.226 INFO    ] No update needed
[2026-10-18 13:29:49,229.229 INFO    ] Checking for camera pi updates...
[2026-10-18 13:29:49,265.265 INFO    ] 200
[2026-10-18 13:29:49,268.268 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:29:49,308.308 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:29:59,323.323 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:29:59,358.358 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:29:59,368.368 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:29:59,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:29:59,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:29:59,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:30:01,419.419 INFO    ] ================================================
[2026-10-18 13:30:01,434.434 INFO    ] Launching Daemon at Sun Oct 18 13:30:01 IST 2026
[2026-10-18 13:30:01,445.445 INFO    ] ================================================
[2026-10-18 13:30:02,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:30:02
[2026-10-18 13:30:03,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:30:04,130.130 INFO    ] Initializing speech engine...
[2026-10-18 13:30:04,143.143 INFO    ] 2026-10-18 13:30:04
[2026-10-18 13:30:04,441.441 INFO    ] 2026-10-18 13:30:04
[2026-10-18 13:30:04,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:30:04,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:30:04,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:30:04,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:30:04,986.986 INFO    ] time= 18/10/2026 13:30:04
[2026-10-18 13:30:05,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:30:05,022.022 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:30:05,149.149 INFO    ] No existing commands found in stream
[2026-10-18 13:30:10,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:30:10,179.179 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-18 13:30:11,131.131 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:30:11,134.134 INFO    ] Checking for system updates...
[2026-10-18 13:30:11,171.171 INFO    ] 200
[2026-10-18 13:30:11,173.173 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:30:11,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:30:11,232.232 INFO    ] No update needed
[2026-10-18 13:30:11,234.234 INFO    ] Checking for camera pi updates...
[2026-10-18 13:30:11,272.272 INFO    ] 200
[2026-10-18 13:30:11,275.275 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:30:11,316.316 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:30:21,332.332 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:30:21,367.367 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:30:21,376.376 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:30:21,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:30:21,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:30:21,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:30:23,428.428 INFO    ] ================================================
[2026-10-18 13:30:23,443.443 INFO    ] Launching Daemon at Sun Oct 18 13:30:23 IST 2026
[2026-10-18 13:30:23,454.454 INFO    ] ================================================
[2026-10-18 13:30:24,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:30:24
[2026-10-18 13:30:24,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:30:24,899.899 INFO    ] Initializing speech engine...
[2026-10-18 13:30:24,904.904 INFO    ] 2026-10-18 13:30:24
[2026-10-18 13:30:25,208.208 INFO    ] 2026-10-18 13:30:25
[2026-10-18 13:30:25,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:30:25,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:30:25,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:30:25,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:30:25,745.745 INFO    ] time= 18/10/2026 13:30:25
[2026-10-18 13:30:25,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:30:25,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:30:25,995.995 INFO    ] No existing commands found in stream
[2026-10-18 13:30:31,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:30:31,026.026 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-18 13:30:31,786.786 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:30:31,788.788 INFO    ] Checking for system updates...
[2026-10-18 13:30:31,827.827 INFO    ] 200
[2026-10-18 13:30:31,830.830 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:30:31,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:30:31,917.917 INFO    ] No update needed
[2026-10-18 13:30:31,919.919 INFO    ] Checking for camera pi updates...
[2026-10-18 13:30:31,956.956 INFO    ] 200
[2026-10-18 13:30:31,959.959 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:30:32,007.007 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:30:42,022.022 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:30:42,057.057 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:30:42,066.066 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:30:42,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:30:42,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:30:42,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:30:44,118.118 INFO    ] ================================================
[2026-10-18 13:30:44,134.134 INFO    ] Launching Daemon at Sun Oct 18 13:30:44 IST 2026
[2026-10-18 13:30:44,146.146 INFO    ] ================================================
[2026-10-18 13:30:44,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:30:44
[2026-10-18 13:30:45,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:30:45,809.809 INFO    ] Initializing speech engine...
[2026-10-18 13:30:45,820.820 INFO    ] 2026-10-18 13:30:45
[2026-10-18 13:30:46,130.130 INFO    ] 2026-10-18 13:30:46
[2026-10-18 13:30:46,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:30:46,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:30:46,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:30:46,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:30:46,682.682 INFO    ] time= 18/10/2026 13:30:46
[2026-10-18 13:30:46,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:30:46,702.702 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:30:46,837.837 INFO    ] No existing commands found in stream
[2026-10-18 13:30:51,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:30:51,871.871 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-10-18 13:30:56,397.397 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 13:30:56,400.400 INFO    ] Checking for system updates...
[2026-10-18 13:30:56,436.436 INFO    ] 200
[2026-10-18 13:30:56,439.439 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:30:56,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:30:56,502.502 INFO    ] No update needed
[2026-10-18 13:30:56,504.504 INFO    ] Checking for camera pi updates...
[2026-10-18 13:30:56,542.542 INFO    ] 200
[2026-10-18 13:30:56,544.544 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:30:56,587.587 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:31:06,602.602 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:31:06,638.638 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:31:06,648.648 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:31:06,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:31:06,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:31:06,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:31:08,700.700 INFO    ] ================================================
[2026-10-18 13:31:08,715.715 INFO    ] Launching Daemon at Sun Oct 18 13:31:08 IST 2026
[2026-10-18 13:31:08,726.726 INFO    ] ================================================
[2026-10-18 13:31:09,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:31:09
[2026-10-18 13:31:09,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:31:10,170.170 INFO    ] Initializing speech engine...
[2026-10-18 13:31:10,179.179 INFO    ] 2026-10-18 13:31:10
[2026-10-18 13:31:10,429.429 INFO    ] 2026-10-18 13:31:10
[2026-10-18 13:31:10,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:31:10,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:31:10,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:31:10,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:31:10,998.998 INFO    ] time= 18/10/2026 13:31:10
[2026-10-18 13:31:11,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:31:11,023.023 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:31:11,157.157 INFO    ] No existing commands found in stream
[2026-10-18 13:31:16,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:31:16,174.174 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-18 13:31:17,530.530 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:31:17,532.532 INFO    ] Checking for system updates...
[2026-10-18 13:31:17,569.569 INFO    ] 200
[2026-10-18 13:31:17,571.571 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:31:17,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:31:17,627.627 INFO    ] No update needed
[2026-10-18 13:31:17,629.629 INFO    ] Checking for camera pi updates...
[2026-10-18 13:31:17,667.667 INFO    ] 200
[2026-10-18 13:31:17,670.670 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:31:17,710.710 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:31:27,723.723 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:31:27,758.758 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:31:27,768.768 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:31:27,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:31:27,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:31:27,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:31:29,821.821 INFO    ] ================================================
[2026-10-18 13:31:29,836.836 INFO    ] Launching Daemon at Sun Oct 18 13:31:29 IST 2026
[2026-10-18 13:31:29,853.853 INFO    ] ================================================
[2026-10-18 13:31:30,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:31:30
[2026-10-18 13:31:31,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:31:31,295.295 INFO    ] Initializing speech engine...
[2026-10-18 13:31:31,307.307 INFO    ] 2026-10-18 13:31:31
[2026-10-18 13:31:31,612.612 INFO    ] 2026-10-18 13:31:31
[2026-10-18 13:31:31,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:31:31,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:31:31,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:31:32,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:31:32,188.188 INFO    ] time= 18/10/2026 13:31:32
[2026-10-18 13:31:32,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:31:32,218.218 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:31:32,356.356 INFO    ] No existing commands found in stream
[2026-10-18 13:31:37,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:31:37,395.395 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-18 13:31:38,099.099 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:31:38,101.101 INFO    ] Checking for system updates...
[2026-10-18 13:31:38,139.139 INFO    ] 200
[2026-10-18 13:31:38,142.142 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:31:38,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:31:38,206.206 INFO    ] No update needed
[2026-10-18 13:31:38,209.209 INFO    ] Checking for camera pi updates...
[2026-10-18 13:31:38,243.243 INFO    ] 200
[2026-10-18 13:31:38,246.246 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:31:38,289.289 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:31:48,305.305 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:31:48,346.346 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:31:48,357.357 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:31:48,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:31:48,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:31:48,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:31:50,415.415 INFO    ] ================================================
[2026-10-18 13:31:50,431.431 INFO    ] Launching Daemon at Sun Oct 18 13:31:50 IST 2026
[2026-10-18 13:31:50,443.443 INFO    ] ================================================
[2026-10-18 13:31:51,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:31:51
[2026-10-18 13:31:51,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:31:51,857.857 INFO    ] Initializing speech engine...
[2026-10-18 13:31:51,865.865 INFO    ] 2026-10-18 13:31:51
[2026-10-18 13:31:52,165.165 INFO    ] 2026-10-18 13:31:52
[2026-10-18 13:31:52,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:31:52,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:31:52,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:31:52,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:31:52,658.658 INFO    ] time= 18/10/2026 13:31:52
[2026-10-18 13:31:52,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:31:52,690.690 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:31:52,824.824 INFO    ] No existing commands found in stream
[2026-10-18 13:31:57,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:31:57,840.840 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-18 13:32:02,043.043 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:32:02,047.047 INFO    ] Checking for system updates...
[2026-10-18 13:32:02,100.100 INFO    ] 200
[2026-10-18 13:32:02,104.104 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:32:02,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:32:02,170.170 INFO    ] No update needed
[2026-10-18 13:32:02,173.173 INFO    ] Checking for camera pi updates...
[2026-10-18 13:32:02,221.221 INFO    ] 200
[2026-10-18 13:32:02,224.224 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:32:02,270.270 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:32:12,285.285 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:32:12,320.320 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:32:12,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:32:12,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:32:12,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:32:12,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:32:14,386.386 INFO    ] ================================================
[2026-10-18 13:32:14,402.402 INFO    ] Launching Daemon at Sun Oct 18 13:32:14 IST 2026
[2026-10-18 13:32:14,413.413 INFO    ] ================================================
[2026-10-18 13:32:15,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:32:15
[2026-10-18 13:32:15,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:32:16,012.012 INFO    ] Initializing speech engine...
[2026-10-18 13:32:16,020.020 INFO    ] 2026-10-18 13:32:16
[2026-10-18 13:32:16,332.332 INFO    ] 2026-10-18 13:32:16
[2026-10-18 13:32:16,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:32:16,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:32:16,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:32:16,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:32:16,884.884 INFO    ] time= 18/10/2026 13:32:16
[2026-10-18 13:32:16,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:32:16,902.902 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:32:17,063.063 INFO    ] No existing commands found in stream
[2026-10-18 13:32:22,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:32:22,098.098 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-18 13:32:24,496.496 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:32:24,499.499 INFO    ] Checking for system updates...
[2026-10-18 13:32:24,536.536 INFO    ] 200
[2026-10-18 13:32:24,539.539 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:32:24,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:32:24,596.596 INFO    ] No update needed
[2026-10-18 13:32:24,599.599 INFO    ] Checking for camera pi updates...
[2026-10-18 13:32:24,637.637 INFO    ] 200
[2026-10-18 13:32:24,639.639 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:32:24,686.686 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:32:34,702.702 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:32:34,741.741 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:32:34,752.752 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:32:34,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:32:34,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:32:34,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:32:36,807.807 INFO    ] ================================================
[2026-10-18 13:32:36,823.823 INFO    ] Launching Daemon at Sun Oct 18 13:32:36 IST 2026
[2026-10-18 13:32:36,835.835 INFO    ] ================================================
[2026-10-18 13:32:37,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:32:37
[2026-10-18 13:32:38,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:32:38,443.443 INFO    ] Initializing speech engine...
[2026-10-18 13:32:38,451.451 INFO    ] 2026-10-18 13:32:38
[2026-10-18 13:32:38,723.723 INFO    ] 2026-10-18 13:32:38
[2026-10-18 13:32:38,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:32:39,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:32:39,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:32:39,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:32:39,290.290 INFO    ] time= 18/10/2026 13:32:39
[2026-10-18 13:32:39,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:32:39,326.326 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:32:39,449.449 INFO    ] No existing commands found in stream
[2026-10-18 13:32:44,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:32:44,484.484 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-18 13:32:47,110.110 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:32:47,112.112 INFO    ] Checking for system updates...
[2026-10-18 13:32:47,150.150 INFO    ] 200
[2026-10-18 13:32:47,153.153 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:32:47,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:32:47,209.209 INFO    ] No update needed
[2026-10-18 13:32:47,211.211 INFO    ] Checking for camera pi updates...
[2026-10-18 13:32:47,247.247 INFO    ] 200
[2026-10-18 13:32:47,250.250 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:32:47,291.291 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:32:57,307.307 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:32:57,354.354 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:32:57,365.365 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:32:57,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:32:57,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:32:57,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:32:59,420.420 INFO    ] ================================================
[2026-10-18 13:32:59,436.436 INFO    ] Launching Daemon at Sun Oct 18 13:32:59 IST 2026
[2026-10-18 13:32:59,448.448 INFO    ] ================================================
[2026-10-18 13:33:00,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:33:00
[2026-10-18 13:33:00,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:33:00,876.876 INFO    ] Initializing speech engine...
[2026-10-18 13:33:00,885.885 INFO    ] 2026-10-18 13:33:00
[2026-10-18 13:33:01,178.178 INFO    ] 2026-10-18 13:33:01
[2026-10-18 13:33:01,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:33:01,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:33:01,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:33:01,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:33:01,635.635 INFO    ] time= 18/10/2026 13:33:01
[2026-10-18 13:33:01,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:33:01,643.643 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:33:01,747.747 INFO    ] No existing commands found in stream
[2026-10-18 13:33:06,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:33:06,760.760 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-18 13:33:08,589.589 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:33:08,591.591 INFO    ] Checking for system updates...
[2026-10-18 13:33:08,626.626 INFO    ] 200
[2026-10-18 13:33:08,629.629 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:33:08,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:33:08,683.683 INFO    ] No update needed
[2026-10-18 13:33:08,685.685 INFO    ] Checking for camera pi updates...
[2026-10-18 13:33:08,719.719 INFO    ] 200
[2026-10-18 13:33:08,721.721 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:33:08,762.762 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:33:18,777.777 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:33:18,811.811 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:33:18,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:33:18,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:33:18,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:33:18,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:33:20,873.873 INFO    ] ================================================
[2026-10-18 13:33:20,890.890 INFO    ] Launching Daemon at Sun Oct 18 13:33:20 IST 2026
[2026-10-18 13:33:20,901.901 INFO    ] ================================================
[2026-10-18 13:33:21,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:33:21
[2026-10-18 13:33:22,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:33:22,346.346 INFO    ] Initializing speech engine...
[2026-10-18 13:33:22,354.354 INFO    ] 2026-10-18 13:33:22
[2026-10-18 13:33:22,653.653 INFO    ] 2026-10-18 13:33:22
[2026-10-18 13:33:22,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:33:22,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:33:22,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:33:23,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:33:23,092.092 INFO    ] time= 18/10/2026 13:33:23
[2026-10-18 13:33:23,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:33:23,160.160 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:33:23,287.287 INFO    ] No existing commands found in stream
[2026-10-18 13:33:28,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:33:28,314.314 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-18 13:33:31,556.556 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 13:33:31,560.560 INFO    ] Checking for system updates...
[2026-10-18 13:33:31,604.604 INFO    ] 200
[2026-10-18 13:33:31,607.607 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:33:31,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:33:31,667.667 INFO    ] No update needed
[2026-10-18 13:33:31,670.670 INFO    ] Checking for camera pi updates...
[2026-10-18 13:33:31,712.712 INFO    ] 200
[2026-10-18 13:33:31,715.715 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:33:31,765.765 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:33:41,780.780 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:33:41,815.815 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:33:41,825.825 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:33:41,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:33:41,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:33:41,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:33:43,878.878 INFO    ] ================================================
[2026-10-18 13:33:43,894.894 INFO    ] Launching Daemon at Sun Oct 18 13:33:43 IST 2026
[2026-10-18 13:33:43,905.905 INFO    ] ================================================
[2026-10-18 13:33:44,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:33:44
[2026-10-18 13:33:45,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:33:45,374.374 INFO    ] Initializing speech engine...
[2026-10-18 13:33:45,397.397 INFO    ] 2026-10-18 13:33:45
[2026-10-18 13:33:45,663.663 INFO    ] 2026-10-18 13:33:45
[2026-10-18 13:33:45,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:33:45,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:33:45,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:33:46,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:33:46,168.168 INFO    ] time= 18/10/2026 13:33:46
[2026-10-18 13:33:46,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:33:46,240.240 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:33:46,372.372 INFO    ] No existing commands found in stream
[2026-10-18 13:33:51,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:33:51,404.404 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-18 13:33:52,421.421 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:33:52,424.424 INFO    ] Checking for system updates...
[2026-10-18 13:33:52,473.473 INFO    ] 200
[2026-10-18 13:33:52,477.477 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:33:52,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:33:52,540.540 INFO    ] No update needed
[2026-10-18 13:33:52,542.542 INFO    ] Checking for camera pi updates...
[2026-10-18 13:33:52,577.577 INFO    ] 200
[2026-10-18 13:33:52,580.580 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:33:52,621.621 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:34:02,635.635 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:34:02,679.679 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:34:02,692.692 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:34:02,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:34:02,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:34:02,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:34:04,753.753 INFO    ] ================================================
[2026-10-18 13:34:04,769.769 INFO    ] Launching Daemon at Sun Oct 18 13:34:04 IST 2026
[2026-10-18 13:34:04,781.781 INFO    ] ================================================
[2026-10-18 13:34:05,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:34:05
[2026-10-18 13:34:05,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:34:06,194.194 INFO    ] Initializing speech engine...
[2026-10-18 13:34:06,208.208 INFO    ] 2026-10-18 13:34:06
[2026-10-18 13:34:06,488.488 INFO    ] 2026-10-18 13:34:06
[2026-10-18 13:34:06,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:34:06,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:34:06,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:34:06,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:34:06,904.904 INFO    ] time= 18/10/2026 13:34:06
[2026-10-18 13:34:06,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:34:06,958.958 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:34:07,103.103 INFO    ] No existing commands found in stream
[2026-10-18 13:34:12,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:34:12,138.138 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-18 13:34:13,019.019 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:34:13,021.021 INFO    ] Checking for system updates...
[2026-10-18 13:34:13,057.057 INFO    ] 200
[2026-10-18 13:34:13,059.059 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:34:13,111.111 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:34:13,113.113 INFO    ] No update needed
[2026-10-18 13:34:13,116.116 INFO    ] Checking for camera pi updates...
[2026-10-18 13:34:13,149.149 INFO    ] 200
[2026-10-18 13:34:13,151.151 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:34:13,191.191 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:34:23,206.206 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:34:23,240.240 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:34:23,250.250 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:34:23,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:34:23,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:34:23,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:34:25,302.302 INFO    ] ================================================
[2026-10-18 13:34:25,319.319 INFO    ] Launching Daemon at Sun Oct 18 13:34:25 IST 2026
[2026-10-18 13:34:25,330.330 INFO    ] ================================================
[2026-10-18 13:34:25,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:34:25
[2026-10-18 13:34:26,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:34:26,738.738 INFO    ] Initializing speech engine...
[2026-10-18 13:34:26,747.747 INFO    ] 2026-10-18 13:34:26
[2026-10-18 13:34:27,038.038 INFO    ] 2026-10-18 13:34:27
[2026-10-18 13:34:27,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:34:27,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:34:27,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:34:27,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:34:27,530.530 INFO    ] time= 18/10/2026 13:34:27
[2026-10-18 13:34:27,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:34:27,629.629 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:34:27,798.798 INFO    ] No existing commands found in stream
[2026-10-18 13:34:32,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:34:32,818.818 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-18 13:34:36,315.315 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:34:36,318.318 INFO    ] Checking for system updates...
[2026-10-18 13:34:36,355.355 INFO    ] 200
[2026-10-18 13:34:36,357.357 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:34:36,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:34:36,413.413 INFO    ] No update needed
[2026-10-18 13:34:36,415.415 INFO    ] Checking for camera pi updates...
[2026-10-18 13:34:36,452.452 INFO    ] 200
[2026-10-18 13:34:36,454.454 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:34:36,495.495 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:34:46,510.510 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:34:46,545.545 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:34:46,554.554 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:34:46,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:34:46,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:34:46,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:34:48,606.606 INFO    ] ================================================
[2026-10-18 13:34:48,621.621 INFO    ] Launching Daemon at Sun Oct 18 13:34:48 IST 2026
[2026-10-18 13:34:48,632.632 INFO    ] ================================================
[2026-10-18 13:34:49,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:34:49
[2026-10-18 13:34:49,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:34:50,043.043 INFO    ] Initializing speech engine...
[2026-10-18 13:34:50,060.060 INFO    ] 2026-10-18 13:34:50
[2026-10-18 13:34:50,309.309 INFO    ] 2026-10-18 13:34:50
[2026-10-18 13:34:50,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:34:50,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:34:50,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:34:50,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:34:50,788.788 INFO    ] time= 18/10/2026 13:34:50
[2026-10-18 13:34:50,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:34:50,878.878 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:34:51,033.033 INFO    ] No existing commands found in stream
[2026-10-18 13:34:56,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:34:56,059.059 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-18 13:34:58,582.582 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 13:34:58,585.585 INFO    ] Checking for system updates...
[2026-10-18 13:34:58,623.623 INFO    ] 200
[2026-10-18 13:34:58,626.626 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:34:58,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:34:58,680.680 INFO    ] No update needed
[2026-10-18 13:34:58,683.683 INFO    ] Checking for camera pi updates...
[2026-10-18 13:34:58,717.717 INFO    ] 200
[2026-10-18 13:34:58,719.719 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:34:58,758.758 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:35:08,773.773 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:35:08,808.808 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:35:08,817.817 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:35:08,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:35:08,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:35:08,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:35:10,870.870 INFO    ] ================================================
[2026-10-18 13:35:10,886.886 INFO    ] Launching Daemon at Sun Oct 18 13:35:10 IST 2026
[2026-10-18 13:35:10,896.896 INFO    ] ================================================
[2026-10-18 13:35:11,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:35:11
[2026-10-18 13:35:12,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:35:12,331.331 INFO    ] Initializing speech engine...
[2026-10-18 13:35:12,339.339 INFO    ] 2026-10-18 13:35:12
[2026-10-18 13:35:12,613.613 INFO    ] 2026-10-18 13:35:12
[2026-10-18 13:35:12,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:35:12,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:35:12,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:35:13,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:35:13,022.022 INFO    ] time= 18/10/2026 13:35:13
[2026-10-18 13:35:13,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:35:13,067.067 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:35:13,205.205 INFO    ] No existing commands found in stream
[2026-10-18 13:35:18,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:35:18,228.228 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-18 13:35:20,790.790 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:35:20,792.792 INFO    ] Checking for system updates...
[2026-10-18 13:35:20,832.832 INFO    ] 200
[2026-10-18 13:35:20,835.835 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:35:20,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:35:20,891.891 INFO    ] No update needed
[2026-10-18 13:35:20,893.893 INFO    ] Checking for camera pi updates...
[2026-10-18 13:35:20,927.927 INFO    ] 200
[2026-10-18 13:35:20,929.929 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:35:20,969.969 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:35:30,984.984 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:35:31,019.019 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:35:31,028.028 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:35:31,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:35:31,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:35:31,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:35:33,081.081 INFO    ] ================================================
[2026-10-18 13:35:33,097.097 INFO    ] Launching Daemon at Sun Oct 18 13:35:33 IST 2026
[2026-10-18 13:35:33,107.107 INFO    ] ================================================
[2026-10-18 13:35:33,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:35:33
[2026-10-18 13:35:34,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:35:34,531.531 INFO    ] Initializing speech engine...
[2026-10-18 13:35:34,538.538 INFO    ] 2026-10-18 13:35:34
[2026-10-18 13:35:34,834.834 INFO    ] 2026-10-18 13:35:34
[2026-10-18 13:35:34,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:35:35,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:35:35,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:35:35,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:35:35,263.263 INFO    ] time= 18/10/2026 13:35:35
[2026-10-18 13:35:35,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:35:35,293.293 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:35:35,422.422 INFO    ] No existing commands found in stream
[2026-10-18 13:35:40,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:35:40,450.450 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-18 13:35:41,015.015 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:35:41,018.018 INFO    ] Checking for system updates...
[2026-10-18 13:35:41,054.054 INFO    ] 200
[2026-10-18 13:35:41,056.056 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:35:41,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:35:41,113.113 INFO    ] No update needed
[2026-10-18 13:35:41,116.116 INFO    ] Checking for camera pi updates...
[2026-10-18 13:35:41,149.149 INFO    ] 200
[2026-10-18 13:35:41,151.151 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:35:41,191.191 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:35:51,206.206 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:35:51,241.241 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:35:51,250.250 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:35:51,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:35:51,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:35:51,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:35:53,304.304 INFO    ] ================================================
[2026-10-18 13:35:53,319.319 INFO    ] Launching Daemon at Sun Oct 18 13:35:53 IST 2026
[2026-10-18 13:35:53,331.331 INFO    ] ================================================
[2026-10-18 13:35:53,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:35:53
[2026-10-18 13:35:54,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:35:54,761.761 INFO    ] Initializing speech engine...
[2026-10-18 13:35:54,767.767 INFO    ] 2026-10-18 13:35:54
[2026-10-18 13:35:55,066.066 INFO    ] 2026-10-18 13:35:55
[2026-10-18 13:35:55,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:35:55,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:35:55,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:35:55,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:35:55,471.471 INFO    ] time= 18/10/2026 13:35:55
[2026-10-18 13:35:55,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:35:55,538.538 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:35:55,664.664 INFO    ] No existing commands found in stream
[2026-10-18 13:36:00,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:36:00,678.678 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-18 13:36:02,186.186 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 13:36:02,189.189 INFO    ] Checking for system updates...
[2026-10-18 13:36:02,236.236 INFO    ] 200
[2026-10-18 13:36:02,239.239 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:36:02,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:36:02,304.304 INFO    ] No update needed
[2026-10-18 13:36:02,307.307 INFO    ] Checking for camera pi updates...
[2026-10-18 13:36:02,350.350 INFO    ] 200
[2026-10-18 13:36:02,353.353 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:36:02,404.404 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:36:12,419.419 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:36:12,455.455 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:36:12,464.464 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:36:12,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:36:12,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:36:12,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:36:14,517.517 INFO    ] ================================================
[2026-10-18 13:36:14,533.533 INFO    ] Launching Daemon at Sun Oct 18 13:36:14 IST 2026
[2026-10-18 13:36:14,544.544 INFO    ] ================================================
[2026-10-18 13:36:15,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:36:15
[2026-10-18 13:36:15,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:36:15,990.990 INFO    ] Initializing speech engine...
[2026-10-18 13:36:16,000.000 INFO    ] 2026-10-18 13:36:15
[2026-10-18 13:36:16,259.259 INFO    ] 2026-10-18 13:36:16
[2026-10-18 13:36:16,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:36:16,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:36:16,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:36:16,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:36:16,805.805 INFO    ] time= 18/10/2026 13:36:16
[2026-10-18 13:36:16,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:36:16,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:36:16,952.952 INFO    ] No existing commands found in stream
[2026-10-18 13:36:21,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:36:21,969.969 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-18 13:36:23,209.209 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:36:23,211.211 INFO    ] Checking for system updates...
[2026-10-18 13:36:23,249.249 INFO    ] 200
[2026-10-18 13:36:23,251.251 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:36:23,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:36:23,307.307 INFO    ] No update needed
[2026-10-18 13:36:23,310.310 INFO    ] Checking for camera pi updates...
[2026-10-18 13:36:23,349.349 INFO    ] 200
[2026-10-18 13:36:23,352.352 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:36:23,398.398 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:36:33,411.411 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:36:33,451.451 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:36:33,462.462 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:36:33,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:36:33,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:36:33,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:36:35,517.517 INFO    ] ================================================
[2026-10-18 13:36:35,532.532 INFO    ] Launching Daemon at Sun Oct 18 13:36:35 IST 2026
[2026-10-18 13:36:35,544.544 INFO    ] ================================================
[2026-10-18 13:36:36,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:36:36
[2026-10-18 13:36:36,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:36:37,005.005 INFO    ] Initializing speech engine...
[2026-10-18 13:36:37,026.026 INFO    ] 2026-10-18 13:36:37
[2026-10-18 13:36:37,294.294 INFO    ] 2026-10-18 13:36:37
[2026-10-18 13:36:37,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:36:37,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:36:37,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:36:37,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:36:37,796.796 INFO    ] time= 18/10/2026 13:36:37
[2026-10-18 13:36:37,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:36:37,905.905 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:36:38,067.067 INFO    ] No existing commands found in stream
[2026-10-18 13:36:43,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:36:43,096.096 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-18 13:36:44,049.049 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 13:36:44,052.052 INFO    ] Checking for system updates...
[2026-10-18 13:36:44,088.088 INFO    ] 200
[2026-10-18 13:36:44,090.090 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:36:44,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:36:44,148.148 INFO    ] No update needed
[2026-10-18 13:36:44,151.151 INFO    ] Checking for camera pi updates...
[2026-10-18 13:36:44,184.184 INFO    ] 200
[2026-10-18 13:36:44,187.187 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:36:44,228.228 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:36:54,243.243 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:36:54,279.279 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:36:54,289.289 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:36:54,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:36:54,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:36:54,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:36:56,342.342 INFO    ] ================================================
[2026-10-18 13:36:56,358.358 INFO    ] Launching Daemon at Sun Oct 18 13:36:56 IST 2026
[2026-10-18 13:36:56,369.369 INFO    ] ================================================
[2026-10-18 13:36:56,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:36:56
[2026-10-18 13:36:57,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:36:57,792.792 INFO    ] Initializing speech engine...
[2026-10-18 13:36:57,801.801 INFO    ] 2026-10-18 13:36:57
[2026-10-18 13:36:58,050.050 INFO    ] 2026-10-18 13:36:58
[2026-10-18 13:36:58,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:36:58,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:36:58,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:36:58,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:36:58,551.551 INFO    ] time= 18/10/2026 13:36:58
[2026-10-18 13:36:58,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:36:58,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:36:58,771.771 INFO    ] No existing commands found in stream
[2026-10-18 13:37:03,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:37:03,791.791 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-18 13:37:05,479.479 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:37:05,481.481 INFO    ] Checking for system updates...
[2026-10-18 13:37:05,519.519 INFO    ] 200
[2026-10-18 13:37:05,522.522 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:37:05,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:37:05,576.576 INFO    ] No update needed
[2026-10-18 13:37:05,579.579 INFO    ] Checking for camera pi updates...
[2026-10-18 13:37:05,612.612 INFO    ] 200
[2026-10-18 13:37:05,615.615 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:37:05,659.659 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:37:15,674.674 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:37:15,709.709 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:37:15,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:37:15,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:37:15,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:37:15,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:37:17,771.771 INFO    ] ================================================
[2026-10-18 13:37:17,787.787 INFO    ] Launching Daemon at Sun Oct 18 13:37:17 IST 2026
[2026-10-18 13:37:17,798.798 INFO    ] ================================================
[2026-10-18 13:37:18,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:37:18
[2026-10-18 13:37:18,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:37:19,221.221 INFO    ] Initializing speech engine...
[2026-10-18 13:37:19,230.230 INFO    ] 2026-10-18 13:37:19
[2026-10-18 13:37:19,483.483 INFO    ] 2026-10-18 13:37:19
[2026-10-18 13:37:19,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:37:19,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:37:19,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:37:19,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:37:20,036.036 INFO    ] time= 18/10/2026 13:37:19
[2026-10-18 13:37:20,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:37:20,062.062 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:37:20,194.194 INFO    ] No existing commands found in stream
[2026-10-18 13:37:25,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:37:25,220.220 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-18 13:37:28,058.058 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:37:28,060.060 INFO    ] Checking for system updates...
[2026-10-18 13:37:28,097.097 INFO    ] 200
[2026-10-18 13:37:28,099.099 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:37:28,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:37:28,160.160 INFO    ] No update needed
[2026-10-18 13:37:28,162.162 INFO    ] Checking for camera pi updates...
[2026-10-18 13:37:28,196.196 INFO    ] 200
[2026-10-18 13:37:28,199.199 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:37:28,242.242 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:37:38,256.256 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:37:38,292.292 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:37:38,302.302 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:37:38,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:37:38,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:37:38,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:37:40,356.356 INFO    ] ================================================
[2026-10-18 13:37:40,372.372 INFO    ] Launching Daemon at Sun Oct 18 13:37:40 IST 2026
[2026-10-18 13:37:40,383.383 INFO    ] ================================================
[2026-10-18 13:37:40,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:37:40
[2026-10-18 13:37:41,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:37:41,793.793 INFO    ] Initializing speech engine...
[2026-10-18 13:37:41,807.807 INFO    ] 2026-10-18 13:37:41
[2026-10-18 13:37:42,093.093 INFO    ] 2026-10-18 13:37:42
[2026-10-18 13:37:42,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:37:42,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:37:42,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:37:42,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:37:42,605.605 INFO    ] time= 18/10/2026 13:37:42
[2026-10-18 13:37:42,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:37:42,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:37:42,837.837 INFO    ] No existing commands found in stream
[2026-10-18 13:37:47,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:37:47,866.866 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-18 13:37:48,470.470 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:37:48,473.473 INFO    ] Checking for system updates...
[2026-10-18 13:37:48,509.509 INFO    ] 200
[2026-10-18 13:37:48,512.512 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:37:48,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:37:48,567.567 INFO    ] No update needed
[2026-10-18 13:37:48,570.570 INFO    ] Checking for camera pi updates...
[2026-10-18 13:37:48,605.605 INFO    ] 200
[2026-10-18 13:37:48,608.608 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:37:48,650.650 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:37:58,666.666 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:37:58,705.705 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:37:58,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:37:58,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:37:58,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:37:58,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:38:00,772.772 INFO    ] ================================================
[2026-10-18 13:38:00,788.788 INFO    ] Launching Daemon at Sun Oct 18 13:38:00 IST 2026
[2026-10-18 13:38:00,799.799 INFO    ] ================================================
[2026-10-18 13:38:01,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:38:01
[2026-10-18 13:38:02,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:38:02,487.487 INFO    ] Initializing speech engine...
[2026-10-18 13:38:02,496.496 INFO    ] 2026-10-18 13:38:02
[2026-10-18 13:38:02,780.780 INFO    ] 2026-10-18 13:38:02
[2026-10-18 13:38:02,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:38:03,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:38:03,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:38:03,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:38:03,264.264 INFO    ] time= 18/10/2026 13:38:03
[2026-10-18 13:38:03,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:38:03,378.378 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:38:03,486.486 INFO    ] No existing commands found in stream
[2026-10-18 13:38:08,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:38:08,528.528 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-18 13:38:11,077.077 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:38:11,080.080 INFO    ] Checking for system updates...
[2026-10-18 13:38:11,118.118 INFO    ] 200
[2026-10-18 13:38:11,120.120 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:38:11,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:38:11,181.181 INFO    ] No update needed
[2026-10-18 13:38:11,184.184 INFO    ] Checking for camera pi updates...
[2026-10-18 13:38:11,218.218 INFO    ] 200
[2026-10-18 13:38:11,220.220 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:38:11,261.261 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:38:21,276.276 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:38:21,310.310 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:38:21,320.320 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:38:21,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:38:21,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:38:21,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:38:23,372.372 INFO    ] ================================================
[2026-10-18 13:38:23,387.387 INFO    ] Launching Daemon at Sun Oct 18 13:38:23 IST 2026
[2026-10-18 13:38:23,398.398 INFO    ] ================================================
[2026-10-18 13:38:23,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:38:23
[2026-10-18 13:38:24,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:38:24,857.857 INFO    ] Initializing speech engine...
[2026-10-18 13:38:24,872.872 INFO    ] 2026-10-18 13:38:24
[2026-10-18 13:38:25,146.146 INFO    ] 2026-10-18 13:38:25
[2026-10-18 13:38:25,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:38:25,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:38:25,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:38:25,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:38:25,563.563 INFO    ] time= 18/10/2026 13:38:25
[2026-10-18 13:38:25,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:38:25,639.639 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:38:25,752.752 INFO    ] No existing commands found in stream
[2026-10-18 13:38:30,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:38:30,791.791 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-18 13:38:32,589.589 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:38:32,592.592 INFO    ] Checking for system updates...
[2026-10-18 13:38:32,633.633 INFO    ] 200
[2026-10-18 13:38:32,636.636 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:38:32,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:38:32,697.697 INFO    ] No update needed
[2026-10-18 13:38:32,700.700 INFO    ] Checking for camera pi updates...
[2026-10-18 13:38:32,736.736 INFO    ] 200
[2026-10-18 13:38:32,738.738 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:38:32,786.786 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:38:42,802.802 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:38:42,837.837 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:38:42,847.847 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:38:42,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:38:42,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:38:42,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:38:44,900.900 INFO    ] ================================================
[2026-10-18 13:38:44,916.916 INFO    ] Launching Daemon at Sun Oct 18 13:38:44 IST 2026
[2026-10-18 13:38:44,926.926 INFO    ] ================================================
[2026-10-18 13:38:45,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:38:45
[2026-10-18 13:38:46,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:38:46,364.364 INFO    ] Initializing speech engine...
[2026-10-18 13:38:46,373.373 INFO    ] 2026-10-18 13:38:46
[2026-10-18 13:38:46,666.666 INFO    ] 2026-10-18 13:38:46
[2026-10-18 13:38:46,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:38:46,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:38:46,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:38:47,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:38:47,082.082 INFO    ] time= 18/10/2026 13:38:47
[2026-10-18 13:38:47,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:38:47,132.132 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:38:47,270.270 INFO    ] No existing commands found in stream
[2026-10-18 13:38:52,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:38:52,303.303 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-18 13:38:56,470.470 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:38:56,473.473 INFO    ] Checking for system updates...
[2026-10-18 13:38:56,511.511 INFO    ] 200
[2026-10-18 13:38:56,513.513 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:38:56,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:38:56,567.567 INFO    ] No update needed
[2026-10-18 13:38:56,570.570 INFO    ] Checking for camera pi updates...
[2026-10-18 13:38:56,603.603 INFO    ] 200
[2026-10-18 13:38:56,605.605 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:38:56,645.645 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:39:06,660.660 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:39:06,697.697 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:39:06,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:39:06,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:39:06,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:39:06,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:39:08,765.765 INFO    ] ================================================
[2026-10-18 13:39:08,781.781 INFO    ] Launching Daemon at Sun Oct 18 13:39:08 IST 2026
[2026-10-18 13:39:08,793.793 INFO    ] ================================================
[2026-10-18 13:39:09,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:39:09
[2026-10-18 13:39:09,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:39:10,251.251 INFO    ] Initializing speech engine...
[2026-10-18 13:39:10,260.260 INFO    ] 2026-10-18 13:39:10
[2026-10-18 13:39:10,557.557 INFO    ] 2026-10-18 13:39:10
[2026-10-18 13:39:10,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:39:10,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:39:10,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:39:11,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:39:11,094.094 INFO    ] time= 18/10/2026 13:39:11
[2026-10-18 13:39:11,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:39:11,197.197 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:39:11,338.338 INFO    ] No existing commands found in stream
[2026-10-18 13:39:16,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:39:16,371.371 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-18 13:39:17,074.074 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:39:17,077.077 INFO    ] Checking for system updates...
[2026-10-18 13:39:17,114.114 INFO    ] 200
[2026-10-18 13:39:17,117.117 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:39:17,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:39:17,179.179 INFO    ] No update needed
[2026-10-18 13:39:17,181.181 INFO    ] Checking for camera pi updates...
[2026-10-18 13:39:17,218.218 INFO    ] 200
[2026-10-18 13:39:17,220.220 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:39:17,260.260 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:39:27,275.275 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:39:27,310.310 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:39:27,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:39:27,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:39:27,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:39:27,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:39:29,371.371 INFO    ] ================================================
[2026-10-18 13:39:29,386.386 INFO    ] Launching Daemon at Sun Oct 18 13:39:29 IST 2026
[2026-10-18 13:39:29,397.397 INFO    ] ================================================
[2026-10-18 13:39:29,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:39:29
[2026-10-18 13:39:30,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:39:30,850.850 INFO    ] Initializing speech engine...
[2026-10-18 13:39:30,860.860 INFO    ] 2026-10-18 13:39:30
[2026-10-18 13:39:31,108.108 INFO    ] 2026-10-18 13:39:31
[2026-10-18 13:39:31,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:39:31,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:39:31,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:39:31,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:39:31,660.660 INFO    ] time= 18/10/2026 13:39:31
[2026-10-18 13:39:31,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:39:31,684.684 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:39:31,814.814 INFO    ] No existing commands found in stream
[2026-10-18 13:39:36,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:39:36,837.837 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-18 13:39:39,144.144 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:39:39,146.146 INFO    ] Checking for system updates...
[2026-10-18 13:39:39,184.184 INFO    ] 200
[2026-10-18 13:39:39,187.187 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:39:39,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:39:39,243.243 INFO    ] No update needed
[2026-10-18 13:39:39,245.245 INFO    ] Checking for camera pi updates...
[2026-10-18 13:39:39,279.279 INFO    ] 200
[2026-10-18 13:39:39,282.282 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:39:39,323.323 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:39:49,339.339 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:39:49,379.379 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:39:49,390.390 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:39:49,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:39:49,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:39:49,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:39:51,447.447 INFO    ] ================================================
[2026-10-18 13:39:51,463.463 INFO    ] Launching Daemon at Sun Oct 18 13:39:51 IST 2026
[2026-10-18 13:39:51,473.473 INFO    ] ================================================
[2026-10-18 13:39:52,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:39:52
[2026-10-18 13:39:52,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:39:53,099.099 INFO    ] Initializing speech engine...
[2026-10-18 13:39:53,113.113 INFO    ] 2026-10-18 13:39:53
[2026-10-18 13:39:53,424.424 INFO    ] 2026-10-18 13:39:53
[2026-10-18 13:39:53,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:39:53,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:39:53,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:39:53,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:39:53,932.932 INFO    ] time= 18/10/2026 13:39:53
[2026-10-18 13:39:53,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:39:53,980.980 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:39:54,098.098 INFO    ] No existing commands found in stream
[2026-10-18 13:39:59,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:39:59,141.141 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-18 13:40:02,690.690 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 13:40:02,694.694 INFO    ] Checking for system updates...
[2026-10-18 13:40:02,751.751 INFO    ] 200
[2026-10-18 13:40:02,754.754 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:40:02,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:40:02,839.839 INFO    ] No update needed
[2026-10-18 13:40:02,843.843 INFO    ] Checking for camera pi updates...
[2026-10-18 13:40:02,897.897 INFO    ] 200
[2026-10-18 13:40:02,901.901 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:40:02,970.970 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:40:12,986.986 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:40:13,022.022 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:40:13,032.032 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:40:13,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:40:13,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:40:13,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:40:15,084.084 INFO    ] ================================================
[2026-10-18 13:40:15,100.100 INFO    ] Launching Daemon at Sun Oct 18 13:40:15 IST 2026
[2026-10-18 13:40:15,110.110 INFO    ] ================================================
[2026-10-18 13:40:15,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:40:15
[2026-10-18 13:40:16,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:40:16,516.516 INFO    ] Initializing speech engine...
[2026-10-18 13:40:16,525.525 INFO    ] 2026-10-18 13:40:16
[2026-10-18 13:40:16,814.814 INFO    ] 2026-10-18 13:40:16
[2026-10-18 13:40:16,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:40:17,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:40:17,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:40:17,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:40:17,303.303 INFO    ] time= 18/10/2026 13:40:17
[2026-10-18 13:40:17,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:40:17,426.426 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:40:17,579.579 INFO    ] No existing commands found in stream
[2026-10-18 13:40:22,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:40:22,607.607 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-18 13:40:27,047.047 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:40:27,049.049 INFO    ] Checking for system updates...
[2026-10-18 13:40:27,104.104 INFO    ] 200
[2026-10-18 13:40:27,109.109 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:40:27,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:40:27,185.185 INFO    ] No update needed
[2026-10-18 13:40:27,188.188 INFO    ] Checking for camera pi updates...
[2026-10-18 13:40:27,222.222 INFO    ] 200
[2026-10-18 13:40:27,225.225 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:40:27,266.266 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:40:37,282.282 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:40:37,322.322 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:40:37,332.332 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:40:37,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:40:37,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:40:37,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:40:39,388.388 INFO    ] ================================================
[2026-10-18 13:40:39,404.404 INFO    ] Launching Daemon at Sun Oct 18 13:40:39 IST 2026
[2026-10-18 13:40:39,414.414 INFO    ] ================================================
[2026-10-18 13:40:39,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:40:39
[2026-10-18 13:40:40,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:40:40,880.880 INFO    ] Initializing speech engine...
[2026-10-18 13:40:40,890.890 INFO    ] 2026-10-18 13:40:40
[2026-10-18 13:40:41,152.152 INFO    ] 2026-10-18 13:40:41
[2026-10-18 13:40:41,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:40:41,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:40:41,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:40:41,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:40:41,694.694 INFO    ] time= 18/10/2026 13:40:41
[2026-10-18 13:40:41,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:40:41,718.718 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:40:41,837.837 INFO    ] No existing commands found in stream
[2026-10-18 13:40:46,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:40:46,861.861 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-18 13:40:47,456.456 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 13:40:47,459.459 INFO    ] Checking for system updates...
[2026-10-18 13:40:47,495.495 INFO    ] 200
[2026-10-18 13:40:47,498.498 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:40:47,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:40:47,556.556 INFO    ] No update needed
[2026-10-18 13:40:47,559.559 INFO    ] Checking for camera pi updates...
[2026-10-18 13:40:47,593.593 INFO    ] 200
[2026-10-18 13:40:47,595.595 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:40:47,640.640 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:40:57,656.656 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:40:57,692.692 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:40:57,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:40:57,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:40:57,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:40:57,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:40:59,756.756 INFO    ] ================================================
[2026-10-18 13:40:59,771.771 INFO    ] Launching Daemon at Sun Oct 18 13:40:59 IST 2026
[2026-10-18 13:40:59,782.782 INFO    ] ================================================
[2026-10-18 13:41:00,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:41:00
[2026-10-18 13:41:00,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:41:01,261.261 INFO    ] Initializing speech engine...
[2026-10-18 13:41:01,271.271 INFO    ] 2026-10-18 13:41:01
[2026-10-18 13:41:01,538.538 INFO    ] 2026-10-18 13:41:01
[2026-10-18 13:41:01,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:41:01,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:41:01,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:41:02,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:41:02,005.005 INFO    ] time= 18/10/2026 13:41:02
[2026-10-18 13:41:02,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:41:02,014.014 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:41:02,152.152 INFO    ] No existing commands found in stream
[2026-10-18 13:41:07,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:41:07,165.165 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-18 13:41:08,903.903 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:41:08,906.906 INFO    ] Checking for system updates...
[2026-10-18 13:41:08,942.942 INFO    ] 200
[2026-10-18 13:41:08,945.945 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:41:08,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:41:08,999.999 INFO    ] No update needed
[2026-10-18 13:41:09,001.001 INFO    ] Checking for camera pi updates...
[2026-10-18 13:41:09,035.035 INFO    ] 200
[2026-10-18 13:41:09,038.038 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:41:09,079.079 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:41:19,094.094 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:41:19,130.130 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:41:19,140.140 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:41:19,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:41:19,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:41:19,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:41:21,196.196 INFO    ] ================================================
[2026-10-18 13:41:21,211.211 INFO    ] Launching Daemon at Sun Oct 18 13:41:21 IST 2026
[2026-10-18 13:41:21,222.222 INFO    ] ================================================
[2026-10-18 13:41:21,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:41:21
[2026-10-18 13:41:22,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:41:22,826.826 INFO    ] Initializing speech engine...
[2026-10-18 13:41:22,840.840 INFO    ] 2026-10-18 13:41:22
[2026-10-18 13:41:23,124.124 INFO    ] 2026-10-18 13:41:23
[2026-10-18 13:41:23,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:41:23,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:41:23,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:41:23,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:41:23,654.654 INFO    ] time= 18/10/2026 13:41:23
[2026-10-18 13:41:23,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:41:23,701.701 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:41:23,837.837 INFO    ] No existing commands found in stream
[2026-10-18 13:41:28,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:41:28,871.871 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-18 13:41:29,440.440 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:41:29,443.443 INFO    ] Checking for system updates...
[2026-10-18 13:41:29,480.480 INFO    ] 200
[2026-10-18 13:41:29,482.482 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:41:29,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:41:29,538.538 INFO    ] No update needed
[2026-10-18 13:41:29,540.540 INFO    ] Checking for camera pi updates...
[2026-10-18 13:41:29,576.576 INFO    ] 200
[2026-10-18 13:41:29,578.578 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:41:29,619.619 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:41:39,633.633 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:41:39,673.673 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:41:39,686.686 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:41:39,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:41:39,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:41:39,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:41:41,741.741 INFO    ] ================================================
[2026-10-18 13:41:41,756.756 INFO    ] Launching Daemon at Sun Oct 18 13:41:41 IST 2026
[2026-10-18 13:41:41,767.767 INFO    ] ================================================
[2026-10-18 13:41:42,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:41:42
[2026-10-18 13:41:42,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:41:43,241.241 INFO    ] Initializing speech engine...
[2026-10-18 13:41:43,251.251 INFO    ] 2026-10-18 13:41:43
[2026-10-18 13:41:43,525.525 INFO    ] 2026-10-18 13:41:43
[2026-10-18 13:41:43,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:41:43,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:41:43,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:41:44,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:41:44,066.066 INFO    ] time= 18/10/2026 13:41:44
[2026-10-18 13:41:44,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:41:44,101.101 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:41:44,222.222 INFO    ] No existing commands found in stream
[2026-10-18 13:41:49,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:41:49,255.255 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-18 13:41:50,690.690 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:41:50,693.693 INFO    ] Checking for system updates...
[2026-10-18 13:41:50,730.730 INFO    ] 200
[2026-10-18 13:41:50,733.733 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:41:50,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:41:50,791.791 INFO    ] No update needed
[2026-10-18 13:41:50,793.793 INFO    ] Checking for camera pi updates...
[2026-10-18 13:41:50,827.827 INFO    ] 200
[2026-10-18 13:41:50,830.830 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:41:50,870.870 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:42:00,885.885 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:42:00,921.921 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:42:00,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:42:00,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:42:00,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:42:00,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:42:02,988.988 INFO    ] ================================================
[2026-10-18 13:42:03,004.004 INFO    ] Launching Daemon at Sun Oct 18 13:42:02 IST 2026
[2026-10-18 13:42:03,015.015 INFO    ] ================================================
[2026-10-18 13:42:03,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:42:03
[2026-10-18 13:42:04,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:42:04,478.478 INFO    ] Initializing speech engine...
[2026-10-18 13:42:04,498.498 INFO    ] 2026-10-18 13:42:04
[2026-10-18 13:42:04,770.770 INFO    ] 2026-10-18 13:42:04
[2026-10-18 13:42:04,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:42:05,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:42:05,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:42:05,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:42:05,199.199 INFO    ] time= 18/10/2026 13:42:05
[2026-10-18 13:42:05,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:42:05,258.258 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:42:05,380.380 INFO    ] No existing commands found in stream
[2026-10-18 13:42:10,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:42:10,413.413 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-18 13:42:12,654.654 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:42:12,657.657 INFO    ] Checking for system updates...
[2026-10-18 13:42:12,693.693 INFO    ] 200
[2026-10-18 13:42:12,696.696 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:42:12,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:42:12,758.758 INFO    ] No update needed
[2026-10-18 13:42:12,761.761 INFO    ] Checking for camera pi updates...
[2026-10-18 13:42:12,794.794 INFO    ] 200
[2026-10-18 13:42:12,797.797 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:42:12,837.837 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:42:22,851.851 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:42:22,887.887 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:42:22,897.897 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:42:22,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:42:22,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:42:22,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:42:24,949.949 INFO    ] ================================================
[2026-10-18 13:42:24,965.965 INFO    ] Launching Daemon at Sun Oct 18 13:42:24 IST 2026
[2026-10-18 13:42:24,976.976 INFO    ] ================================================
[2026-10-18 13:42:25,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:42:25
[2026-10-18 13:42:26,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:42:26,646.646 INFO    ] Initializing speech engine...
[2026-10-18 13:42:26,652.652 INFO    ] 2026-10-18 13:42:26
[2026-10-18 13:42:26,960.960 INFO    ] 2026-10-18 13:42:26
[2026-10-18 13:42:27,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:42:27,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:42:27,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:42:27,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:42:27,518.518 INFO    ] time= 18/10/2026 13:42:27
[2026-10-18 13:42:27,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:42:27,612.612 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:42:27,791.791 INFO    ] No existing commands found in stream
[2026-10-18 13:42:32,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:42:32,820.820 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-18 13:42:34,966.966 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:42:34,969.969 INFO    ] Checking for system updates...
[2026-10-18 13:42:35,006.006 INFO    ] 200
[2026-10-18 13:42:35,009.009 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:42:35,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:42:35,065.065 INFO    ] No update needed
[2026-10-18 13:42:35,068.068 INFO    ] Checking for camera pi updates...
[2026-10-18 13:42:35,101.101 INFO    ] 200
[2026-10-18 13:42:35,103.103 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:42:35,143.143 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:42:45,159.159 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:42:45,193.193 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:42:45,203.203 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:42:45,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:42:45,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:42:45,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:42:47,255.255 INFO    ] ================================================
[2026-10-18 13:42:47,271.271 INFO    ] Launching Daemon at Sun Oct 18 13:42:47 IST 2026
[2026-10-18 13:42:47,282.282 INFO    ] ================================================
[2026-10-18 13:42:47,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:42:47
[2026-10-18 13:42:48,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:42:48,703.703 INFO    ] Initializing speech engine...
[2026-10-18 13:42:48,712.712 INFO    ] 2026-10-18 13:42:48
[2026-10-18 13:42:48,963.963 INFO    ] 2026-10-18 13:42:48
[2026-10-18 13:42:48,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:42:49,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:42:49,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:42:49,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:42:49,510.510 INFO    ] time= 18/10/2026 13:42:49
[2026-10-18 13:42:49,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:42:49,533.533 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:42:49,662.662 INFO    ] No existing commands found in stream
[2026-10-18 13:42:54,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:42:54,689.689 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-18 13:42:55,895.895 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:42:55,898.898 INFO    ] Checking for system updates...
[2026-10-18 13:42:55,934.934 INFO    ] 200
[2026-10-18 13:42:55,936.936 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:42:55,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:42:55,991.991 INFO    ] No update needed
[2026-10-18 13:42:55,993.993 INFO    ] Checking for camera pi updates...
[2026-10-18 13:42:56,026.026 INFO    ] 200
[2026-10-18 13:42:56,028.028 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:42:56,071.071 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:43:06,085.085 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:43:06,120.120 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:43:06,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:43:06,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:43:06,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:43:06,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:43:08,182.182 INFO    ] ================================================
[2026-10-18 13:43:08,198.198 INFO    ] Launching Daemon at Sun Oct 18 13:43:08 IST 2026
[2026-10-18 13:43:08,209.209 INFO    ] ================================================
[2026-10-18 13:43:08,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:43:08
[2026-10-18 13:43:09,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:43:09,674.674 INFO    ] Initializing speech engine...
[2026-10-18 13:43:09,683.683 INFO    ] 2026-10-18 13:43:09
[2026-10-18 13:43:09,941.941 INFO    ] 2026-10-18 13:43:09
[2026-10-18 13:43:09,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:43:10,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:43:10,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:43:10,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:43:10,485.485 INFO    ] time= 18/10/2026 13:43:10
[2026-10-18 13:43:10,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:43:10,512.512 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:43:10,640.640 INFO    ] No existing commands found in stream
[2026-10-18 13:43:15,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:43:15,662.662 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-18 13:43:18,628.628 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 13:43:18,630.630 INFO    ] Checking for system updates...
[2026-10-18 13:43:18,666.666 INFO    ] 200
[2026-10-18 13:43:18,668.668 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:43:18,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:43:18,725.725 INFO    ] No update needed
[2026-10-18 13:43:18,728.728 INFO    ] Checking for camera pi updates...
[2026-10-18 13:43:18,762.762 INFO    ] 200
[2026-10-18 13:43:18,764.764 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:43:18,811.811 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:43:28,826.826 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:43:28,862.862 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:43:28,871.871 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:43:28,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:43:28,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:43:28,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:43:30,924.924 INFO    ] ================================================
[2026-10-18 13:43:30,939.939 INFO    ] Launching Daemon at Sun Oct 18 13:43:30 IST 2026
[2026-10-18 13:43:30,950.950 INFO    ] ================================================
[2026-10-18 13:43:31,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:43:31
[2026-10-18 13:43:32,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:43:32,449.449 INFO    ] Initializing speech engine...
[2026-10-18 13:43:32,465.465 INFO    ] 2026-10-18 13:43:32
[2026-10-18 13:43:32,724.724 INFO    ] 2026-10-18 13:43:32
[2026-10-18 13:43:32,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:43:33,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:43:33,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:43:33,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:43:33,288.288 INFO    ] time= 18/10/2026 13:43:33
[2026-10-18 13:43:33,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:43:33,312.312 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:43:33,467.467 INFO    ] No existing commands found in stream
[2026-10-18 13:43:38,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:43:38,501.501 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-18 13:43:41,857.857 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:43:41,859.859 INFO    ] Checking for system updates...
[2026-10-18 13:43:41,895.895 INFO    ] 200
[2026-10-18 13:43:41,898.898 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:43:41,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:43:41,957.957 INFO    ] No update needed
[2026-10-18 13:43:41,960.960 INFO    ] Checking for camera pi updates...
[2026-10-18 13:43:41,993.993 INFO    ] 200
[2026-10-18 13:43:41,996.996 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:43:42,036.036 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:43:52,048.048 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:43:52,083.083 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:43:52,093.093 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:43:52,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:43:52,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:43:52,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:43:54,147.147 INFO    ] ================================================
[2026-10-18 13:43:54,162.162 INFO    ] Launching Daemon at Sun Oct 18 13:43:54 IST 2026
[2026-10-18 13:43:54,173.173 INFO    ] ================================================
[2026-10-18 13:43:54,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:43:54
[2026-10-18 13:43:55,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:43:55,637.637 INFO    ] Initializing speech engine...
[2026-10-18 13:43:55,646.646 INFO    ] 2026-10-18 13:43:55
[2026-10-18 13:43:55,897.897 INFO    ] 2026-10-18 13:43:55
[2026-10-18 13:43:55,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:43:56,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:43:56,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:43:56,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:43:56,279.279 INFO    ] time= 18/10/2026 13:43:56
[2026-10-18 13:43:56,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:43:56,348.348 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:43:56,473.473 INFO    ] No existing commands found in stream
[2026-10-18 13:44:01,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:44:01,487.487 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-18 13:44:03,378.378 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:44:03,381.381 INFO    ] Checking for system updates...
[2026-10-18 13:44:03,428.428 INFO    ] 200
[2026-10-18 13:44:03,431.431 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:44:03,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:44:03,495.495 INFO    ] No update needed
[2026-10-18 13:44:03,499.499 INFO    ] Checking for camera pi updates...
[2026-10-18 13:44:03,539.539 INFO    ] 200
[2026-10-18 13:44:03,542.542 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:44:03,588.588 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:44:13,603.603 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:44:13,638.638 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:44:13,654.654 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:44:13,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:44:13,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:44:13,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:44:15,707.707 INFO    ] ================================================
[2026-10-18 13:44:15,722.722 INFO    ] Launching Daemon at Sun Oct 18 13:44:15 IST 2026
[2026-10-18 13:44:15,733.733 INFO    ] ================================================
[2026-10-18 13:44:16,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:44:16
[2026-10-18 13:44:16,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:44:17,193.193 INFO    ] Initializing speech engine...
[2026-10-18 13:44:17,200.200 INFO    ] 2026-10-18 13:44:17
[2026-10-18 13:44:17,461.461 INFO    ] 2026-10-18 13:44:17
[2026-10-18 13:44:17,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:44:17,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:44:17,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:44:18,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:44:18,008.008 INFO    ] time= 18/10/2026 13:44:18
[2026-10-18 13:44:18,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:44:18,054.054 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:44:18,175.175 INFO    ] No existing commands found in stream
[2026-10-18 13:44:23,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:44:23,213.213 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-18 13:44:25,396.396 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:44:25,399.399 INFO    ] Checking for system updates...
[2026-10-18 13:44:25,436.436 INFO    ] 200
[2026-10-18 13:44:25,438.438 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:44:25,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:44:25,494.494 INFO    ] No update needed
[2026-10-18 13:44:25,497.497 INFO    ] Checking for camera pi updates...
[2026-10-18 13:44:25,531.531 INFO    ] 200
[2026-10-18 13:44:25,534.534 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:44:25,580.580 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:44:35,596.596 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:44:35,635.635 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:44:35,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:44:35,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:44:35,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:44:35,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:44:37,702.702 INFO    ] ================================================
[2026-10-18 13:44:37,720.720 INFO    ] Launching Daemon at Sun Oct 18 13:44:37 IST 2026
[2026-10-18 13:44:37,731.731 INFO    ] ================================================
[2026-10-18 13:44:38,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:44:38
[2026-10-18 13:44:39,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:44:39,338.338 INFO    ] Initializing speech engine...
[2026-10-18 13:44:39,347.347 INFO    ] 2026-10-18 13:44:39
[2026-10-18 13:44:39,631.631 INFO    ] 2026-10-18 13:44:39
[2026-10-18 13:44:39,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:44:39,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:44:39,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:44:40,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:44:40,178.178 INFO    ] time= 18/10/2026 13:44:40
[2026-10-18 13:44:40,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:44:40,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:44:40,327.327 INFO    ] No existing commands found in stream
[2026-10-18 13:44:45,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:44:45,360.360 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-18 13:44:46,255.255 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:44:46,258.258 INFO    ] Checking for system updates...
[2026-10-18 13:44:46,295.295 INFO    ] 200
[2026-10-18 13:44:46,298.298 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:44:46,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:44:46,361.361 INFO    ] No update needed
[2026-10-18 13:44:46,364.364 INFO    ] Checking for camera pi updates...
[2026-10-18 13:44:46,398.398 INFO    ] 200
[2026-10-18 13:44:46,401.401 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:44:46,443.443 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:44:56,459.459 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:44:56,498.498 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:44:56,509.509 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:44:56,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:44:56,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:44:56,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:44:58,564.564 INFO    ] ================================================
[2026-10-18 13:44:58,580.580 INFO    ] Launching Daemon at Sun Oct 18 13:44:58 IST 2026
[2026-10-18 13:44:58,591.591 INFO    ] ================================================
[2026-10-18 13:44:59,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:44:59
[2026-10-18 13:44:59,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:45:00,206.206 INFO    ] Initializing speech engine...
[2026-10-18 13:45:00,216.216 INFO    ] 2026-10-18 13:45:00
[2026-10-18 13:45:00,492.492 INFO    ] 2026-10-18 13:45:00
[2026-10-18 13:45:00,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:45:00,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:45:00,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:45:01,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:45:01,072.072 INFO    ] time= 18/10/2026 13:45:01
[2026-10-18 13:45:01,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:45:01,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:45:01,275.275 INFO    ] No existing commands found in stream
[2026-10-18 13:45:06,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:45:06,309.309 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-18 13:45:08,711.711 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:45:08,714.714 INFO    ] Checking for system updates...
[2026-10-18 13:45:08,751.751 INFO    ] 200
[2026-10-18 13:45:08,754.754 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:45:08,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:45:08,809.809 INFO    ] No update needed
[2026-10-18 13:45:08,811.811 INFO    ] Checking for camera pi updates...
[2026-10-18 13:45:08,845.845 INFO    ] 200
[2026-10-18 13:45:08,847.847 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:45:08,888.888 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:45:18,902.902 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:45:18,937.937 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:45:18,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:45:18,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:45:18,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:45:18,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:45:21,999.999 INFO    ] ================================================
[2026-10-18 13:45:21,014.014 INFO    ] Launching Daemon at Sun Oct 18 13:45:21 IST 2026
[2026-10-18 13:45:21,025.025 INFO    ] ================================================
[2026-10-18 13:45:21,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:45:21
[2026-10-18 13:45:22,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:45:22,491.491 INFO    ] Initializing speech engine...
[2026-10-18 13:45:22,506.506 INFO    ] 2026-10-18 13:45:22
[2026-10-18 13:45:22,823.823 INFO    ] 2026-10-18 13:45:22
[2026-10-18 13:45:22,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:45:23,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:45:23,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:45:23,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:45:23,347.347 INFO    ] time= 18/10/2026 13:45:23
[2026-10-18 13:45:23,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:45:23,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:45:23,524.524 INFO    ] No existing commands found in stream
[2026-10-18 13:45:28,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:45:28,559.559 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-18 13:45:32,472.472 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:45:32,476.476 INFO    ] Checking for system updates...
[2026-10-18 13:45:32,515.515 INFO    ] 200
[2026-10-18 13:45:32,518.518 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:45:32,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:45:32,579.579 INFO    ] No update needed
[2026-10-18 13:45:32,582.582 INFO    ] Checking for camera pi updates...
[2026-10-18 13:45:32,618.618 INFO    ] 200
[2026-10-18 13:45:32,621.621 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:45:32,670.670 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:45:42,684.684 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:45:42,719.719 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:45:42,729.729 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:45:42,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:45:42,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:45:42,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:45:44,780.780 INFO    ] ================================================
[2026-10-18 13:45:44,796.796 INFO    ] Launching Daemon at Sun Oct 18 13:45:44 IST 2026
[2026-10-18 13:45:44,807.807 INFO    ] ================================================
[2026-10-18 13:45:45,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:45:45
[2026-10-18 13:45:45,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:45:46,275.275 INFO    ] Initializing speech engine...
[2026-10-18 13:45:46,284.284 INFO    ] 2026-10-18 13:45:46
[2026-10-18 13:45:46,550.550 INFO    ] 2026-10-18 13:45:46
[2026-10-18 13:45:46,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:45:46,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:45:46,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:45:47,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:45:47,097.097 INFO    ] time= 18/10/2026 13:45:47
[2026-10-18 13:45:47,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:45:47,119.119 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:45:47,248.248 INFO    ] No existing commands found in stream
[2026-10-18 13:45:52,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:45:52,264.264 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-18 13:45:53,630.630 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:45:53,633.633 INFO    ] Checking for system updates...
[2026-10-18 13:45:53,669.669 INFO    ] 200
[2026-10-18 13:45:53,671.671 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:45:53,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:45:53,728.728 INFO    ] No update needed
[2026-10-18 13:45:53,735.735 INFO    ] Checking for camera pi updates...
[2026-10-18 13:45:53,772.772 INFO    ] 200
[2026-10-18 13:45:53,775.775 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:45:53,817.817 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:46:03,830.830 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:46:03,871.871 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:46:03,882.882 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:46:03,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:46:03,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:46:03,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:46:05,939.939 INFO    ] ================================================
[2026-10-18 13:46:05,955.955 INFO    ] Launching Daemon at Sun Oct 18 13:46:05 IST 2026
[2026-10-18 13:46:05,965.965 INFO    ] ================================================
[2026-10-18 13:46:06,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:46:06
[2026-10-18 13:46:07,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:46:07,597.597 INFO    ] Initializing speech engine...
[2026-10-18 13:46:07,602.602 INFO    ] 2026-10-18 13:46:07
[2026-10-18 13:46:07,854.854 INFO    ] 2026-10-18 13:46:07
[2026-10-18 13:46:07,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:46:08,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:46:08,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:46:08,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:46:08,409.409 INFO    ] time= 18/10/2026 13:46:08
[2026-10-18 13:46:08,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:46:08,433.433 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:46:08,564.564 INFO    ] No existing commands found in stream
[2026-10-18 13:46:13,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:46:13,579.579 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-18 13:46:15,478.478 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:46:15,481.481 INFO    ] Checking for system updates...
[2026-10-18 13:46:15,517.517 INFO    ] 200
[2026-10-18 13:46:15,519.519 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:46:15,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:46:15,580.580 INFO    ] No update needed
[2026-10-18 13:46:15,583.583 INFO    ] Checking for camera pi updates...
[2026-10-18 13:46:15,618.618 INFO    ] 200
[2026-10-18 13:46:15,621.621 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:46:15,663.663 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:46:25,680.680 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:46:25,721.721 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:46:25,732.732 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:46:25,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:46:25,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:46:25,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:46:27,789.789 INFO    ] ================================================
[2026-10-18 13:46:27,804.804 INFO    ] Launching Daemon at Sun Oct 18 13:46:27 IST 2026
[2026-10-18 13:46:27,816.816 INFO    ] ================================================
[2026-10-18 13:46:28,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:46:28
[2026-10-18 13:46:28,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:46:29,230.230 INFO    ] Initializing speech engine...
[2026-10-18 13:46:29,239.239 INFO    ] 2026-10-18 13:46:29
[2026-10-18 13:46:29,532.532 INFO    ] 2026-10-18 13:46:29
[2026-10-18 13:46:29,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:46:29,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:46:29,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:46:29,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:46:29,954.954 INFO    ] time= 18/10/2026 13:46:29
[2026-10-18 13:46:29,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:46:29,974.974 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:46:30,108.108 INFO    ] No existing commands found in stream
[2026-10-18 13:46:35,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:46:35,141.141 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-18 13:46:36,879.879 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:46:36,881.881 INFO    ] Checking for system updates...
[2026-10-18 13:46:36,917.917 INFO    ] 200
[2026-10-18 13:46:36,919.919 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:46:36,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:46:36,975.975 INFO    ] No update needed
[2026-10-18 13:46:36,977.977 INFO    ] Checking for camera pi updates...
[2026-10-18 13:46:37,014.014 INFO    ] 200
[2026-10-18 13:46:37,017.017 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:46:37,057.057 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:46:47,073.073 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:46:47,108.108 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:46:47,117.117 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:46:47,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:46:47,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:46:47,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:46:49,170.170 INFO    ] ================================================
[2026-10-18 13:46:49,186.186 INFO    ] Launching Daemon at Sun Oct 18 13:46:49 IST 2026
[2026-10-18 13:46:49,198.198 INFO    ] ================================================
[2026-10-18 13:46:49,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:46:49
[2026-10-18 13:46:50,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:46:50,845.845 INFO    ] Initializing speech engine...
[2026-10-18 13:46:50,852.852 INFO    ] 2026-10-18 13:46:50
[2026-10-18 13:46:51,165.165 INFO    ] 2026-10-18 13:46:51
[2026-10-18 13:46:51,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:46:51,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:46:51,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:46:51,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:46:51,675.675 INFO    ] time= 18/10/2026 13:46:51
[2026-10-18 13:46:51,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:46:51,730.730 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:46:51,861.861 INFO    ] No existing commands found in stream
[2026-10-18 13:46:56,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:46:56,879.879 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-18 13:47:00,262.262 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:47:00,264.264 INFO    ] Checking for system updates...
[2026-10-18 13:47:00,300.300 INFO    ] 200
[2026-10-18 13:47:00,302.302 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:47:00,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:47:00,357.357 INFO    ] No update needed
[2026-10-18 13:47:00,360.360 INFO    ] Checking for camera pi updates...
[2026-10-18 13:47:00,394.394 INFO    ] 200
[2026-10-18 13:47:00,396.396 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:47:00,436.436 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:47:10,452.452 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:47:10,487.487 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:47:10,497.497 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:47:10,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:47:10,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:47:10,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:47:12,549.549 INFO    ] ================================================
[2026-10-18 13:47:12,565.565 INFO    ] Launching Daemon at Sun Oct 18 13:47:12 IST 2026
[2026-10-18 13:47:12,577.577 INFO    ] ================================================
[2026-10-18 13:47:13,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:47:13
[2026-10-18 13:47:13,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:47:14,000.000 INFO    ] Initializing speech engine...
[2026-10-18 13:47:14,009.009 INFO    ] 2026-10-18 13:47:14
[2026-10-18 13:47:14,261.261 INFO    ] 2026-10-18 13:47:14
[2026-10-18 13:47:14,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:47:14,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:47:14,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:47:14,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:47:14,771.771 INFO    ] time= 18/10/2026 13:47:14
[2026-10-18 13:47:14,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:47:14,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:47:14,987.987 INFO    ] No existing commands found in stream
[2026-10-18 13:47:19,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:47:20,001.001 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-18 13:47:23,776.776 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:47:23,779.779 INFO    ] Checking for system updates...
[2026-10-18 13:47:23,815.815 INFO    ] 200
[2026-10-18 13:47:23,817.817 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:47:23,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:47:23,872.872 INFO    ] No update needed
[2026-10-18 13:47:23,874.874 INFO    ] Checking for camera pi updates...
[2026-10-18 13:47:23,907.907 INFO    ] 200
[2026-10-18 13:47:23,910.910 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:47:23,950.950 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:47:33,964.964 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:47:33,998.998 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:47:34,007.007 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:47:34,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:47:34,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:47:34,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:47:36,060.060 INFO    ] ================================================
[2026-10-18 13:47:36,076.076 INFO    ] Launching Daemon at Sun Oct 18 13:47:36 IST 2026
[2026-10-18 13:47:36,088.088 INFO    ] ================================================
[2026-10-18 13:47:36,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:47:36
[2026-10-18 13:47:37,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:47:37,497.497 INFO    ] Initializing speech engine...
[2026-10-18 13:47:37,506.506 INFO    ] 2026-10-18 13:47:37
[2026-10-18 13:47:37,782.782 INFO    ] 2026-10-18 13:47:37
[2026-10-18 13:47:37,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:47:38,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:47:38,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:47:38,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:47:38,266.266 INFO    ] time= 18/10/2026 13:47:38
[2026-10-18 13:47:38,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:47:38,360.360 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:47:38,491.491 INFO    ] No existing commands found in stream
[2026-10-18 13:47:43,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:47:43,520.520 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-18 13:47:45,229.229 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:47:45,232.232 INFO    ] Checking for system updates...
[2026-10-18 13:47:45,268.268 INFO    ] 200
[2026-10-18 13:47:45,271.271 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:47:45,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:47:45,327.327 INFO    ] No update needed
[2026-10-18 13:47:45,329.329 INFO    ] Checking for camera pi updates...
[2026-10-18 13:47:45,367.367 INFO    ] 200
[2026-10-18 13:47:45,369.369 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:47:45,414.414 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:47:55,429.429 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:47:55,464.464 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:47:55,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:47:55,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:47:55,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:47:55,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:47:57,525.525 INFO    ] ================================================
[2026-10-18 13:47:57,541.541 INFO    ] Launching Daemon at Sun Oct 18 13:47:57 IST 2026
[2026-10-18 13:47:57,553.553 INFO    ] ================================================
[2026-10-18 13:47:58,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:47:58
[2026-10-18 13:47:58,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:47:58,977.977 INFO    ] Initializing speech engine...
[2026-10-18 13:47:58,985.985 INFO    ] 2026-10-18 13:47:58
[2026-10-18 13:47:59,236.236 INFO    ] 2026-10-18 13:47:59
[2026-10-18 13:47:59,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:47:59,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:47:59,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:47:59,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:47:59,750.750 INFO    ] time= 18/10/2026 13:47:59
[2026-10-18 13:47:59,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:47:59,813.813 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:47:59,963.963 INFO    ] No existing commands found in stream
[2026-10-18 13:48:04,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:48:04,994.994 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-18 13:48:05,502.502 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:48:05,504.504 INFO    ] Checking for system updates...
[2026-10-18 13:48:05,540.540 INFO    ] 200
[2026-10-18 13:48:05,543.543 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:48:05,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:48:05,604.604 INFO    ] No update needed
[2026-10-18 13:48:05,606.606 INFO    ] Checking for camera pi updates...
[2026-10-18 13:48:05,640.640 INFO    ] 200
[2026-10-18 13:48:05,643.643 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:48:05,683.683 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:48:15,695.695 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:48:15,732.732 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:48:15,744.744 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:48:15,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:48:15,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:48:15,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:48:17,799.799 INFO    ] ================================================
[2026-10-18 13:48:17,816.816 INFO    ] Launching Daemon at Sun Oct 18 13:48:17 IST 2026
[2026-10-18 13:48:17,828.828 INFO    ] ================================================
[2026-10-18 13:48:18,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:48:18
[2026-10-18 13:48:19,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:48:19,581.581 INFO    ] Initializing speech engine...
[2026-10-18 13:48:19,597.597 INFO    ] 2026-10-18 13:48:19
[2026-10-18 13:48:19,876.876 INFO    ] 2026-10-18 13:48:19
[2026-10-18 13:48:19,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:48:20,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:48:20,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:48:20,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:48:20,454.454 INFO    ] time= 18/10/2026 13:48:20
[2026-10-18 13:48:20,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:48:20,483.483 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:48:20,617.617 INFO    ] No existing commands found in stream
[2026-10-18 13:48:25,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:48:25,652.652 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-18 13:48:28,017.017 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:48:28,019.019 INFO    ] Checking for system updates...
[2026-10-18 13:48:28,057.057 INFO    ] 200
[2026-10-18 13:48:28,059.059 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:48:28,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:48:28,118.118 INFO    ] No update needed
[2026-10-18 13:48:28,121.121 INFO    ] Checking for camera pi updates...
[2026-10-18 13:48:28,155.155 INFO    ] 200
[2026-10-18 13:48:28,158.158 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:48:28,203.203 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:48:38,216.216 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:48:38,252.252 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:48:38,262.262 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:48:38,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:48:38,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:48:38,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:48:40,315.315 INFO    ] ================================================
[2026-10-18 13:48:40,331.331 INFO    ] Launching Daemon at Sun Oct 18 13:48:40 IST 2026
[2026-10-18 13:48:40,343.343 INFO    ] ================================================
[2026-10-18 13:48:40,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:48:40
[2026-10-18 13:48:41,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:48:41,771.771 INFO    ] Initializing speech engine...
[2026-10-18 13:48:41,779.779 INFO    ] 2026-10-18 13:48:41
[2026-10-18 13:48:42,032.032 INFO    ] 2026-10-18 13:48:42
[2026-10-18 13:48:42,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:48:42,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:48:42,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:48:42,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:48:42,538.538 INFO    ] time= 18/10/2026 13:48:42
[2026-10-18 13:48:42,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:48:42,610.610 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:48:42,760.760 INFO    ] No existing commands found in stream
[2026-10-18 13:48:47,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:48:47,782.782 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-18 13:48:50,148.148 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 13:48:50,150.150 INFO    ] Checking for system updates...
[2026-10-18 13:48:50,190.190 INFO    ] 200
[2026-10-18 13:48:50,192.192 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:48:50,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:48:50,254.254 INFO    ] No update needed
[2026-10-18 13:48:50,256.256 INFO    ] Checking for camera pi updates...
[2026-10-18 13:48:50,293.293 INFO    ] 200
[2026-10-18 13:48:50,296.296 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:48:50,338.338 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:49:00,353.353 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:49:00,388.388 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:49:00,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:49:00,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:49:00,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:49:00,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:49:02,453.453 INFO    ] ================================================
[2026-10-18 13:49:02,477.477 INFO    ] Launching Daemon at Sun Oct 18 13:49:02 IST 2026
[2026-10-18 13:49:02,490.490 INFO    ] ================================================
[2026-10-18 13:49:03,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:49:03
[2026-10-18 13:49:03,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:49:04,244.244 INFO    ] Initializing speech engine...
[2026-10-18 13:49:04,254.254 INFO    ] 2026-10-18 13:49:04
[2026-10-18 13:49:04,528.528 INFO    ] 2026-10-18 13:49:04
[2026-10-18 13:49:04,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:49:04,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:49:04,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:49:05,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:49:05,080.080 INFO    ] time= 18/10/2026 13:49:05
[2026-10-18 13:49:05,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:49:05,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:49:05,249.249 INFO    ] No existing commands found in stream
[2026-10-18 13:49:10,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:49:10,280.280 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-18 13:49:11,530.530 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 13:49:11,533.533 INFO    ] Checking for system updates...
[2026-10-18 13:49:11,573.573 INFO    ] 200
[2026-10-18 13:49:11,576.576 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:49:11,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:49:11,638.638 INFO    ] No update needed
[2026-10-18 13:49:11,640.640 INFO    ] Checking for camera pi updates...
[2026-10-18 13:49:11,675.675 INFO    ] 200
[2026-10-18 13:49:11,677.677 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:49:11,723.723 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:49:21,738.738 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:49:21,774.774 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:49:21,783.783 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:49:21,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:49:21,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:49:21,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:49:23,837.837 INFO    ] ================================================
[2026-10-18 13:49:23,853.853 INFO    ] Launching Daemon at Sun Oct 18 13:49:23 IST 2026
[2026-10-18 13:49:23,864.864 INFO    ] ================================================
[2026-10-18 13:49:24,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:49:24
[2026-10-18 13:49:25,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:49:25,466.466 INFO    ] Initializing speech engine...
[2026-10-18 13:49:25,478.478 INFO    ] 2026-10-18 13:49:25
[2026-10-18 13:49:25,756.756 INFO    ] 2026-10-18 13:49:25
[2026-10-18 13:49:25,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:49:26,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:49:26,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:49:26,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:49:26,302.302 INFO    ] time= 18/10/2026 13:49:26
[2026-10-18 13:49:26,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:49:26,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:49:26,446.446 INFO    ] No existing commands found in stream
[2026-10-18 13:49:31,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:49:31,483.483 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-18 13:49:34,796.796 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:49:34,799.799 INFO    ] Checking for system updates...
[2026-10-18 13:49:34,839.839 INFO    ] 200
[2026-10-18 13:49:34,842.842 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:49:34,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:49:34,897.897 INFO    ] No update needed
[2026-10-18 13:49:34,899.899 INFO    ] Checking for camera pi updates...
[2026-10-18 13:49:34,933.933 INFO    ] 200
[2026-10-18 13:49:34,936.936 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:49:34,976.976 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:49:44,991.991 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:49:45,026.026 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:49:45,036.036 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:49:45,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:49:45,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:49:45,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:49:47,089.089 INFO    ] ================================================
[2026-10-18 13:49:47,104.104 INFO    ] Launching Daemon at Sun Oct 18 13:49:47 IST 2026
[2026-10-18 13:49:47,115.115 INFO    ] ================================================
[2026-10-18 13:49:47,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:49:47
[2026-10-18 13:49:48,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:49:48,561.561 INFO    ] Initializing speech engine...
[2026-10-18 13:49:48,570.570 INFO    ] 2026-10-18 13:49:48
[2026-10-18 13:49:48,816.816 INFO    ] 2026-10-18 13:49:48
[2026-10-18 13:49:48,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:49:49,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:49:49,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:49:49,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:49:49,370.370 INFO    ] time= 18/10/2026 13:49:49
[2026-10-18 13:49:49,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:49:49,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:49:49,526.526 INFO    ] No existing commands found in stream
[2026-10-18 13:49:54,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:49:54,541.541 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-18 13:49:58,969.969 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:49:58,972.972 INFO    ] Checking for system updates...
[2026-10-18 13:49:59,010.010 INFO    ] 200
[2026-10-18 13:49:59,013.013 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:49:59,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:49:59,068.068 INFO    ] No update needed
[2026-10-18 13:49:59,070.070 INFO    ] Checking for camera pi updates...
[2026-10-18 13:49:59,103.103 INFO    ] 200
[2026-10-18 13:49:59,106.106 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:49:59,147.147 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:50:09,161.161 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:50:09,197.197 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:50:09,206.206 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:50:09,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:50:09,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:50:09,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:50:11,259.259 INFO    ] ================================================
[2026-10-18 13:50:11,274.274 INFO    ] Launching Daemon at Sun Oct 18 13:50:11 IST 2026
[2026-10-18 13:50:11,285.285 INFO    ] ================================================
[2026-10-18 13:50:11,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:50:11
[2026-10-18 13:50:12,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:50:12,854.854 INFO    ] Initializing speech engine...
[2026-10-18 13:50:12,862.862 INFO    ] 2026-10-18 13:50:12
[2026-10-18 13:50:13,104.104 INFO    ] 2026-10-18 13:50:13
[2026-10-18 13:50:13,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:50:13,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:50:13,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:50:13,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:50:13,660.660 INFO    ] time= 18/10/2026 13:50:13
[2026-10-18 13:50:13,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:50:13,685.685 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:50:13,816.816 INFO    ] No existing commands found in stream
[2026-10-18 13:50:18,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:50:18,838.838 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-18 13:50:22,235.235 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:50:22,238.238 INFO    ] Checking for system updates...
[2026-10-18 13:50:22,274.274 INFO    ] 200
[2026-10-18 13:50:22,276.276 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:50:22,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:50:22,336.336 INFO    ] No update needed
[2026-10-18 13:50:22,339.339 INFO    ] Checking for camera pi updates...
[2026-10-18 13:50:22,375.375 INFO    ] 200
[2026-10-18 13:50:22,377.377 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:50:22,418.418 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:50:32,432.432 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:50:32,469.469 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:50:32,479.479 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:50:32,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:50:32,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:50:32,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:50:34,534.534 INFO    ] ================================================
[2026-10-18 13:50:34,550.550 INFO    ] Launching Daemon at Sun Oct 18 13:50:34 IST 2026
[2026-10-18 13:50:34,561.561 INFO    ] ================================================
[2026-10-18 13:50:35,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:50:35
[2026-10-18 13:50:35,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:50:36,022.022 INFO    ] Initializing speech engine...
[2026-10-18 13:50:36,030.030 INFO    ] 2026-10-18 13:50:36
[2026-10-18 13:50:36,288.288 INFO    ] 2026-10-18 13:50:36
[2026-10-18 13:50:36,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:50:36,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:50:36,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:50:36,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:50:36,832.832 INFO    ] time= 18/10/2026 13:50:36
[2026-10-18 13:50:36,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:50:36,857.857 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:50:36,988.988 INFO    ] No existing commands found in stream
[2026-10-18 13:50:42,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:50:42,006.006 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-18 13:50:44,797.797 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:50:44,800.800 INFO    ] Checking for system updates...
[2026-10-18 13:50:44,836.836 INFO    ] 200
[2026-10-18 13:50:44,839.839 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:50:44,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:50:44,900.900 INFO    ] No update needed
[2026-10-18 13:50:44,903.903 INFO    ] Checking for camera pi updates...
[2026-10-18 13:50:44,942.942 INFO    ] 200
[2026-10-18 13:50:44,945.945 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:50:44,987.987 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:50:55,003.003 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:50:55,043.043 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:50:55,053.053 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:50:55,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:50:55,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:50:55,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:50:57,109.109 INFO    ] ================================================
[2026-10-18 13:50:57,125.125 INFO    ] Launching Daemon at Sun Oct 18 13:50:57 IST 2026
[2026-10-18 13:50:57,136.136 INFO    ] ================================================
[2026-10-18 13:50:57,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:50:57
[2026-10-18 13:50:58,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:50:58,552.552 INFO    ] Initializing speech engine...
[2026-10-18 13:50:58,561.561 INFO    ] 2026-10-18 13:50:58
[2026-10-18 13:50:58,851.851 INFO    ] 2026-10-18 13:50:58
[2026-10-18 13:50:58,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:50:59,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:50:59,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:50:59,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:50:59,337.337 INFO    ] time= 18/10/2026 13:50:59
[2026-10-18 13:50:59,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:50:59,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:50:59,543.543 INFO    ] No existing commands found in stream
[2026-10-18 13:51:04,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:51:04,558.558 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-18 13:51:09,830.830 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:51:09,833.833 INFO    ] Checking for system updates...
[2026-10-18 13:51:09,874.874 INFO    ] 200
[2026-10-18 13:51:09,877.877 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:51:09,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:51:09,933.933 INFO    ] No update needed
[2026-10-18 13:51:09,936.936 INFO    ] Checking for camera pi updates...
[2026-10-18 13:51:09,970.970 INFO    ] 200
[2026-10-18 13:51:09,973.973 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:51:10,014.014 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:51:20,030.030 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:51:20,070.070 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:51:20,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:51:20,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:51:20,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:51:20,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:51:22,136.136 INFO    ] ================================================
[2026-10-18 13:51:22,151.151 INFO    ] Launching Daemon at Sun Oct 18 13:51:22 IST 2026
[2026-10-18 13:51:22,162.162 INFO    ] ================================================
[2026-10-18 13:51:22,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:51:22
[2026-10-18 13:51:23,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:51:23,566.566 INFO    ] Initializing speech engine...
[2026-10-18 13:51:23,581.581 INFO    ] 2026-10-18 13:51:23
[2026-10-18 13:51:23,846.846 INFO    ] 2026-10-18 13:51:23
[2026-10-18 13:51:23,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:51:24,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:51:24,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:51:24,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:51:24,412.412 INFO    ] time= 18/10/2026 13:51:24
[2026-10-18 13:51:24,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:51:24,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:51:24,576.576 INFO    ] No existing commands found in stream
[2026-10-18 13:51:29,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:51:29,601.601 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-18 13:51:32,061.061 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:51:32,064.064 INFO    ] Checking for system updates...
[2026-10-18 13:51:32,101.101 INFO    ] 200
[2026-10-18 13:51:32,104.104 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:51:32,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:51:32,168.168 INFO    ] No update needed
[2026-10-18 13:51:32,171.171 INFO    ] Checking for camera pi updates...
[2026-10-18 13:51:32,207.207 INFO    ] 200
[2026-10-18 13:51:32,209.209 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:51:32,258.258 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:51:42,273.273 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:51:42,307.307 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:51:42,317.317 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:51:42,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:51:42,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:51:42,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:51:44,369.369 INFO    ] ================================================
[2026-10-18 13:51:44,384.384 INFO    ] Launching Daemon at Sun Oct 18 13:51:44 IST 2026
[2026-10-18 13:51:44,395.395 INFO    ] ================================================
[2026-10-18 13:51:45,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:51:45
[2026-10-18 13:51:45,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:51:45,866.866 INFO    ] Initializing speech engine...
[2026-10-18 13:51:45,875.875 INFO    ] 2026-10-18 13:51:45
[2026-10-18 13:51:46,125.125 INFO    ] 2026-10-18 13:51:46
[2026-10-18 13:51:46,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:51:46,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:51:46,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:51:46,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:51:46,687.687 INFO    ] time= 18/10/2026 13:51:46
[2026-10-18 13:51:46,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:51:46,714.714 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:51:46,849.849 INFO    ] No existing commands found in stream
[2026-10-18 13:51:51,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:51:51,863.863 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-18 13:51:54,035.035 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:51:54,039.039 INFO    ] Checking for system updates...
[2026-10-18 13:51:54,081.081 INFO    ] 200
[2026-10-18 13:51:54,084.084 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:51:54,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:51:54,148.148 INFO    ] No update needed
[2026-10-18 13:51:54,151.151 INFO    ] Checking for camera pi updates...
[2026-10-18 13:51:54,186.186 INFO    ] 200
[2026-10-18 13:51:54,188.188 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:51:54,231.231 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:52:04,245.245 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:52:04,286.286 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:52:04,297.297 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:52:04,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:52:04,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:52:04,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:52:06,352.352 INFO    ] ================================================
[2026-10-18 13:52:06,368.368 INFO    ] Launching Daemon at Sun Oct 18 13:52:06 IST 2026
[2026-10-18 13:52:06,380.380 INFO    ] ================================================
[2026-10-18 13:52:07,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:52:07
[2026-10-18 13:52:07,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:52:07,948.948 INFO    ] Initializing speech engine...
[2026-10-18 13:52:07,954.954 INFO    ] 2026-10-18 13:52:07
[2026-10-18 13:52:08,236.236 INFO    ] 2026-10-18 13:52:08
[2026-10-18 13:52:08,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:52:08,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:52:08,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:52:08,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:52:08,788.788 INFO    ] time= 18/10/2026 13:52:08
[2026-10-18 13:52:08,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:52:08,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:52:08,944.944 INFO    ] No existing commands found in stream
[2026-10-18 13:52:13,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:52:13,962.962 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-18 13:52:17,161.161 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:52:17,164.164 INFO    ] Checking for system updates...
[2026-10-18 13:52:17,204.204 INFO    ] 200
[2026-10-18 13:52:17,207.207 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:52:17,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:52:17,270.270 INFO    ] No update needed
[2026-10-18 13:52:17,272.272 INFO    ] Checking for camera pi updates...
[2026-10-18 13:52:17,306.306 INFO    ] 200
[2026-10-18 13:52:17,308.308 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:52:17,348.348 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:52:27,364.364 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:52:27,404.404 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:52:27,416.416 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:52:27,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:52:27,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:52:27,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:52:29,472.472 INFO    ] ================================================
[2026-10-18 13:52:29,488.488 INFO    ] Launching Daemon at Sun Oct 18 13:52:29 IST 2026
[2026-10-18 13:52:29,499.499 INFO    ] ================================================
[2026-10-18 13:52:30,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:52:30
[2026-10-18 13:52:30,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:52:30,922.922 INFO    ] Initializing speech engine...
[2026-10-18 13:52:30,931.931 INFO    ] 2026-10-18 13:52:30
[2026-10-18 13:52:31,183.183 INFO    ] 2026-10-18 13:52:31
[2026-10-18 13:52:31,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:52:31,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:52:31,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:52:31,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:52:31,677.677 INFO    ] time= 18/10/2026 13:52:31
[2026-10-18 13:52:31,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:52:31,759.759 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:52:31,865.865 INFO    ] No existing commands found in stream
[2026-10-18 13:52:36,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:52:36,904.904 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-18 13:52:37,478.478 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 13:52:37,481.481 INFO    ] Checking for system updates...
[2026-10-18 13:52:37,516.516 INFO    ] 200
[2026-10-18 13:52:37,519.519 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:52:37,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:52:37,573.573 INFO    ] No update needed
[2026-10-18 13:52:37,575.575 INFO    ] Checking for camera pi updates...
[2026-10-18 13:52:37,609.609 INFO    ] 200
[2026-10-18 13:52:37,611.611 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:52:37,651.651 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:52:47,667.667 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:52:47,702.702 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:52:47,711.711 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:52:47,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:52:47,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:52:47,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:52:49,764.764 INFO    ] ================================================
[2026-10-18 13:52:49,780.780 INFO    ] Launching Daemon at Sun Oct 18 13:52:49 IST 2026
[2026-10-18 13:52:49,791.791 INFO    ] ================================================
[2026-10-18 13:52:50,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:52:50
[2026-10-18 13:52:50,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:52:51,196.196 INFO    ] Initializing speech engine...
[2026-10-18 13:52:51,215.215 INFO    ] 2026-10-18 13:52:51
[2026-10-18 13:52:51,477.477 INFO    ] 2026-10-18 13:52:51
[2026-10-18 13:52:51,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:52:51,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:52:51,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:52:51,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:52:51,980.980 INFO    ] time= 18/10/2026 13:52:51
[2026-10-18 13:52:52,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:52:52,052.052 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:52:52,206.206 INFO    ] No existing commands found in stream
[2026-10-18 13:52:57,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:52:57,237.237 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-18 13:53:01,381.381 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:53:01,385.385 INFO    ] Checking for system updates...
[2026-10-18 13:53:01,422.422 INFO    ] 200
[2026-10-18 13:53:01,425.425 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:53:01,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:53:01,485.485 INFO    ] No update needed
[2026-10-18 13:53:01,488.488 INFO    ] Checking for camera pi updates...
[2026-10-18 13:53:01,524.524 INFO    ] 200
[2026-10-18 13:53:01,527.527 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:53:01,578.578 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:53:11,597.597 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:53:11,635.635 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:53:11,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:53:11,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:53:11,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:53:11,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:53:13,703.703 INFO    ] ================================================
[2026-10-18 13:53:13,719.719 INFO    ] Launching Daemon at Sun Oct 18 13:53:13 IST 2026
[2026-10-18 13:53:13,729.729 INFO    ] ================================================
[2026-10-18 13:53:14,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:53:14
[2026-10-18 13:53:14,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:53:15,162.162 INFO    ] Initializing speech engine...
[2026-10-18 13:53:15,168.168 INFO    ] 2026-10-18 13:53:15
[2026-10-18 13:53:15,413.413 INFO    ] 2026-10-18 13:53:15
[2026-10-18 13:53:15,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:53:15,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:53:15,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:53:15,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:53:15,971.971 INFO    ] time= 18/10/2026 13:53:15
[2026-10-18 13:53:15,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:53:15,993.993 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:53:16,124.124 INFO    ] No existing commands found in stream
[2026-10-18 13:53:21,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:53:21,145.145 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-18 13:53:22,147.147 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:53:22,149.149 INFO    ] Checking for system updates...
[2026-10-18 13:53:22,201.201 INFO    ] 200
[2026-10-18 13:53:22,205.205 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 13:53:22,208.208 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-18 13:53:22,211.211 INFO    ] Checking for camera pi updates...
[2026-10-18 13:53:22,260.260 INFO    ] 200
[2026-10-18 13:53:22,263.263 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 13:53:22,267.267 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-18 13:53:22,270.270 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:53:22,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:53:22,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:53:22,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:53:24,328.328 INFO    ] ================================================
[2026-10-18 13:53:24,343.343 INFO    ] Launching Daemon at Sun Oct 18 13:53:24 IST 2026
[2026-10-18 13:53:24,354.354 INFO    ] ================================================
[2026-10-18 13:53:24,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:53:24
[2026-10-18 13:53:25,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:53:25,781.781 INFO    ] Initializing speech engine...
[2026-10-18 13:53:25,794.794 INFO    ] 2026-10-18 13:53:25
[2026-10-18 13:53:26,091.091 INFO    ] 2026-10-18 13:53:26
[2026-10-18 13:53:26,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:53:26,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:53:26,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:53:26,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:53:26,607.607 INFO    ] time= 18/10/2026 13:53:26
[2026-10-18 13:53:26,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:53:26,675.675 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:53:26,846.846 INFO    ] No existing commands found in stream
[2026-10-18 13:53:31,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:53:31,882.882 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-18 13:53:34,892.892 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 13:53:34,895.895 INFO    ] Checking for system updates...
[2026-10-18 13:53:34,932.932 INFO    ] 200
[2026-10-18 13:53:34,935.935 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:53:34,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:53:34,991.991 INFO    ] No update needed
[2026-10-18 13:53:34,993.993 INFO    ] Checking for camera pi updates...
[2026-10-18 13:53:35,028.028 INFO    ] 200
[2026-10-18 13:53:35,031.031 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:53:35,072.072 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:53:45,089.089 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:53:45,129.129 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:53:45,141.141 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:53:45,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:53:45,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:53:45,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:53:47,196.196 INFO    ] ================================================
[2026-10-18 13:53:47,211.211 INFO    ] Launching Daemon at Sun Oct 18 13:53:47 IST 2026
[2026-10-18 13:53:47,222.222 INFO    ] ================================================
[2026-10-18 13:53:47,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:53:47
[2026-10-18 13:53:48,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:53:48,685.685 INFO    ] Initializing speech engine...
[2026-10-18 13:53:48,694.694 INFO    ] 2026-10-18 13:53:48
[2026-10-18 13:53:48,952.952 INFO    ] 2026-10-18 13:53:48
[2026-10-18 13:53:48,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:53:49,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:53:49,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:53:49,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:53:49,498.498 INFO    ] time= 18/10/2026 13:53:49
[2026-10-18 13:53:49,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:53:49,525.525 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:53:49,653.653 INFO    ] No existing commands found in stream
[2026-10-18 13:53:54,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:53:54,669.669 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-18 13:53:57,296.296 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:53:57,299.299 INFO    ] Checking for system updates...
[2026-10-18 13:53:57,334.334 INFO    ] 200
[2026-10-18 13:53:57,337.337 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:53:57,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:53:57,391.391 INFO    ] No update needed
[2026-10-18 13:53:57,394.394 INFO    ] Checking for camera pi updates...
[2026-10-18 13:53:57,428.428 INFO    ] 200
[2026-10-18 13:53:57,430.430 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:53:57,477.477 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:54:07,493.493 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:54:07,529.529 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:54:07,539.539 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:54:07,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:54:07,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:54:07,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:54:09,594.594 INFO    ] ================================================
[2026-10-18 13:54:09,609.609 INFO    ] Launching Daemon at Sun Oct 18 13:54:09 IST 2026
[2026-10-18 13:54:09,621.621 INFO    ] ================================================
[2026-10-18 13:54:10,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:54:10
[2026-10-18 13:54:10,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:54:11,080.080 INFO    ] Initializing speech engine...
[2026-10-18 13:54:11,089.089 INFO    ] 2026-10-18 13:54:11
[2026-10-18 13:54:11,347.347 INFO    ] 2026-10-18 13:54:11
[2026-10-18 13:54:11,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:54:11,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:54:11,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:54:11,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:54:11,888.888 INFO    ] time= 18/10/2026 13:54:11
[2026-10-18 13:54:11,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:54:11,914.914 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:54:12,044.044 INFO    ] No existing commands found in stream
[2026-10-18 13:54:17,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:54:17,067.067 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-18 13:54:20,119.119 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 13:54:20,122.122 INFO    ] Checking for system updates...
[2026-10-18 13:54:20,157.157 INFO    ] 200
[2026-10-18 13:54:20,160.160 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:54:20,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:54:20,214.214 INFO    ] No update needed
[2026-10-18 13:54:20,216.216 INFO    ] Checking for camera pi updates...
[2026-10-18 13:54:20,251.251 INFO    ] 200
[2026-10-18 13:54:20,253.253 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:54:20,294.294 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:54:30,309.309 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:54:30,345.345 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:54:30,355.355 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:54:30,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:54:30,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:54:30,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:54:32,409.409 INFO    ] ================================================
[2026-10-18 13:54:32,427.427 INFO    ] Launching Daemon at Sun Oct 18 13:54:32 IST 2026
[2026-10-18 13:54:32,439.439 INFO    ] ================================================
[2026-10-18 13:54:33,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:54:33
[2026-10-18 13:54:33,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:54:33,998.998 INFO    ] Initializing speech engine...
[2026-10-18 13:54:34,011.011 INFO    ] 2026-10-18 13:54:34
[2026-10-18 13:54:34,277.277 INFO    ] 2026-10-18 13:54:34
[2026-10-18 13:54:34,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:54:34,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:54:34,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:54:34,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:54:34,811.811 INFO    ] time= 18/10/2026 13:54:34
[2026-10-18 13:54:34,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:54:34,858.858 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:54:34,965.965 INFO    ] No existing commands found in stream
[2026-10-18 13:54:39,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:54:39,997.997 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-18 13:54:43,857.857 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:54:43,860.860 INFO    ] Checking for system updates...
[2026-10-18 13:54:43,900.900 INFO    ] 200
[2026-10-18 13:54:43,903.903 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:54:43,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:54:43,957.957 INFO    ] No update needed
[2026-10-18 13:54:43,960.960 INFO    ] Checking for camera pi updates...
[2026-10-18 13:54:43,994.994 INFO    ] 200
[2026-10-18 13:54:43,996.996 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:54:44,037.037 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:54:54,052.052 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:54:54,088.088 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:54:54,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:54:54,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:54:54,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:54:54,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:54:56,151.151 INFO    ] ================================================
[2026-10-18 13:54:56,167.167 INFO    ] Launching Daemon at Sun Oct 18 13:54:56 IST 2026
[2026-10-18 13:54:56,179.179 INFO    ] ================================================
[2026-10-18 13:54:56,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:54:56
[2026-10-18 13:54:57,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:54:57,812.812 INFO    ] Initializing speech engine...
[2026-10-18 13:54:57,820.820 INFO    ] 2026-10-18 13:54:57
[2026-10-18 13:54:58,077.077 INFO    ] 2026-10-18 13:54:58
[2026-10-18 13:54:58,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:54:58,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:54:58,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:54:58,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:54:58,620.620 INFO    ] time= 18/10/2026 13:54:58
[2026-10-18 13:54:58,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:54:58,642.642 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:54:58,768.768 INFO    ] No existing commands found in stream
[2026-10-18 13:55:03,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:55:03,781.781 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-18 13:55:04,427.427 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:55:04,430.430 INFO    ] Checking for system updates...
[2026-10-18 13:55:04,467.467 INFO    ] 200
[2026-10-18 13:55:04,469.469 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:55:04,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:55:04,525.525 INFO    ] No update needed
[2026-10-18 13:55:04,528.528 INFO    ] Checking for camera pi updates...
[2026-10-18 13:55:04,563.563 INFO    ] 200
[2026-10-18 13:55:04,566.566 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:55:04,607.607 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:55:14,623.623 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:55:14,664.664 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:55:14,676.676 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:55:14,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:55:14,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:55:14,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:55:16,731.731 INFO    ] ================================================
[2026-10-18 13:55:16,747.747 INFO    ] Launching Daemon at Sun Oct 18 13:55:16 IST 2026
[2026-10-18 13:55:16,758.758 INFO    ] ================================================
[2026-10-18 13:55:17,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:55:17
[2026-10-18 13:55:17,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:55:18,158.158 INFO    ] Initializing speech engine...
[2026-10-18 13:55:18,173.173 INFO    ] 2026-10-18 13:55:18
[2026-10-18 13:55:18,438.438 INFO    ] 2026-10-18 13:55:18
[2026-10-18 13:55:18,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:55:18,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:55:18,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:55:18,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:55:18,941.941 INFO    ] time= 18/10/2026 13:55:18
[2026-10-18 13:55:19,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:55:19,012.012 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:55:19,170.170 INFO    ] No existing commands found in stream
[2026-10-18 13:55:24,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:55:24,191.191 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-18 13:55:25,679.679 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:55:25,682.682 INFO    ] Checking for system updates...
[2026-10-18 13:55:25,721.721 INFO    ] 200
[2026-10-18 13:55:25,723.723 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:55:25,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:55:25,777.777 INFO    ] No update needed
[2026-10-18 13:55:25,779.779 INFO    ] Checking for camera pi updates...
[2026-10-18 13:55:25,812.812 INFO    ] 200
[2026-10-18 13:55:25,815.815 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:55:25,854.854 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:55:35,868.868 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:55:35,903.903 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:55:35,913.913 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:55:35,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:55:35,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:55:35,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:55:37,966.966 INFO    ] ================================================
[2026-10-18 13:55:37,982.982 INFO    ] Launching Daemon at Sun Oct 18 13:55:37 IST 2026
[2026-10-18 13:55:37,993.993 INFO    ] ================================================
[2026-10-18 13:55:38,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:55:38
[2026-10-18 13:55:39,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:55:39,440.440 INFO    ] Initializing speech engine...
[2026-10-18 13:55:39,449.449 INFO    ] 2026-10-18 13:55:39
[2026-10-18 13:55:39,706.706 INFO    ] 2026-10-18 13:55:39
[2026-10-18 13:55:39,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:55:39,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:55:39,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:55:40,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:55:40,256.256 INFO    ] time= 18/10/2026 13:55:40
[2026-10-18 13:55:40,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:55:40,283.283 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:55:40,417.417 INFO    ] No existing commands found in stream
[2026-10-18 13:55:45,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:55:45,450.450 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-18 13:55:49,021.021 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:55:49,024.024 INFO    ] Checking for system updates...
[2026-10-18 13:55:49,061.061 INFO    ] 200
[2026-10-18 13:55:49,064.064 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:55:49,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:55:49,120.120 INFO    ] No update needed
[2026-10-18 13:55:49,123.123 INFO    ] Checking for camera pi updates...
[2026-10-18 13:55:49,158.158 INFO    ] 200
[2026-10-18 13:55:49,161.161 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:55:49,217.217 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:55:59,231.231 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:55:59,270.270 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:55:59,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:55:59,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:55:59,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:55:59,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:56:01,341.341 INFO    ] ================================================
[2026-10-18 13:56:01,388.388 INFO    ] Launching Daemon at Sun Oct 18 13:56:01 IST 2026
[2026-10-18 13:56:01,403.403 INFO    ] ================================================
[2026-10-18 13:56:02,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:56:02
[2026-10-18 13:56:02,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:56:03,072.072 INFO    ] Initializing speech engine...
[2026-10-18 13:56:03,076.076 INFO    ] 2026-10-18 13:56:03
[2026-10-18 13:56:03,351.351 INFO    ] 2026-10-18 13:56:03
[2026-10-18 13:56:03,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:56:03,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:56:03,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:56:03,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:56:03,890.890 INFO    ] time= 18/10/2026 13:56:03
[2026-10-18 13:56:03,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:56:03,929.929 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:56:04,061.061 INFO    ] No existing commands found in stream
[2026-10-18 13:56:09,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:56:09,079.079 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-18 13:56:11,937.937 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:56:11,941.941 INFO    ] Checking for system updates...
[2026-10-18 13:56:11,979.979 INFO    ] 200
[2026-10-18 13:56:11,981.981 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:56:12,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:56:12,047.047 INFO    ] No update needed
[2026-10-18 13:56:12,050.050 INFO    ] Checking for camera pi updates...
[2026-10-18 13:56:12,084.084 INFO    ] 200
[2026-10-18 13:56:12,087.087 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:56:12,129.129 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:56:22,145.145 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:56:22,187.187 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:56:22,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:56:22,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:56:22,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:56:22,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:56:24,255.255 INFO    ] ================================================
[2026-10-18 13:56:24,270.270 INFO    ] Launching Daemon at Sun Oct 18 13:56:24 IST 2026
[2026-10-18 13:56:24,282.282 INFO    ] ================================================
[2026-10-18 13:56:24,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:56:24
[2026-10-18 13:56:25,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:56:25,750.750 INFO    ] Initializing speech engine...
[2026-10-18 13:56:25,757.757 INFO    ] 2026-10-18 13:56:25
[2026-10-18 13:56:26,019.019 INFO    ] 2026-10-18 13:56:26
[2026-10-18 13:56:26,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:56:26,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:56:26,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:56:26,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:56:26,564.564 INFO    ] time= 18/10/2026 13:56:26
[2026-10-18 13:56:26,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:56:26,586.586 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:56:26,733.733 INFO    ] No existing commands found in stream
[2026-10-18 13:56:31,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:56:31,769.769 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-18 13:56:34,927.927 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:56:34,929.929 INFO    ] Checking for system updates...
[2026-10-18 13:56:34,965.965 INFO    ] 200
[2026-10-18 13:56:34,968.968 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:56:35,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:56:35,022.022 INFO    ] No update needed
[2026-10-18 13:56:35,025.025 INFO    ] Checking for camera pi updates...
[2026-10-18 13:56:35,064.064 INFO    ] 200
[2026-10-18 13:56:35,067.067 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:56:35,113.113 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:56:45,128.128 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:56:45,164.164 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:56:45,174.174 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:56:45,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:56:45,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:56:45,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:56:47,228.228 INFO    ] ================================================
[2026-10-18 13:56:47,244.244 INFO    ] Launching Daemon at Sun Oct 18 13:56:47 IST 2026
[2026-10-18 13:56:47,256.256 INFO    ] ================================================
[2026-10-18 13:56:47,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:56:47
[2026-10-18 13:56:48,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:56:48,732.732 INFO    ] Initializing speech engine...
[2026-10-18 13:56:48,739.739 INFO    ] 2026-10-18 13:56:48
[2026-10-18 13:56:48,992.992 INFO    ] 2026-10-18 13:56:48
[2026-10-18 13:56:49,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:56:49,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:56:49,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:56:49,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:56:49,550.550 INFO    ] time= 18/10/2026 13:56:49
[2026-10-18 13:56:49,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:56:49,579.579 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:56:49,728.728 INFO    ] No existing commands found in stream
[2026-10-18 13:56:54,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:56:54,763.763 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-18 13:56:57,817.817 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:56:57,820.820 INFO    ] Checking for system updates...
[2026-10-18 13:56:57,862.862 INFO    ] 200
[2026-10-18 13:56:57,865.865 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:56:57,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:56:57,929.929 INFO    ] No update needed
[2026-10-18 13:56:57,932.932 INFO    ] Checking for camera pi updates...
[2026-10-18 13:56:57,967.967 INFO    ] 200
[2026-10-18 13:56:57,970.970 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:56:58,011.011 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:57:08,027.027 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:57:08,068.068 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:57:08,079.079 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:57:08,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:57:08,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:57:08,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:57:10,135.135 INFO    ] ================================================
[2026-10-18 13:57:10,150.150 INFO    ] Launching Daemon at Sun Oct 18 13:57:10 IST 2026
[2026-10-18 13:57:10,161.161 INFO    ] ================================================
[2026-10-18 13:57:10,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:57:10
[2026-10-18 13:57:11,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:57:11,625.625 INFO    ] Initializing speech engine...
[2026-10-18 13:57:11,631.631 INFO    ] 2026-10-18 13:57:11
[2026-10-18 13:57:11,891.891 INFO    ] 2026-10-18 13:57:11
[2026-10-18 13:57:11,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:57:12,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:57:12,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:57:12,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:57:12,437.437 INFO    ] time= 18/10/2026 13:57:12
[2026-10-18 13:57:12,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:57:12,461.461 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:57:12,591.591 INFO    ] No existing commands found in stream
[2026-10-18 13:57:17,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:57:17,613.613 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-18 13:57:18,331.331 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:57:18,334.334 INFO    ] Checking for system updates...
[2026-10-18 13:57:18,371.371 INFO    ] 200
[2026-10-18 13:57:18,374.374 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:57:18,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:57:18,430.430 INFO    ] No update needed
[2026-10-18 13:57:18,432.432 INFO    ] Checking for camera pi updates...
[2026-10-18 13:57:18,468.468 INFO    ] 200
[2026-10-18 13:57:18,471.471 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:57:18,512.512 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:57:28,527.527 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:57:28,563.563 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:57:28,572.572 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:57:28,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:57:28,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:57:28,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:57:30,624.624 INFO    ] ================================================
[2026-10-18 13:57:30,639.639 INFO    ] Launching Daemon at Sun Oct 18 13:57:30 IST 2026
[2026-10-18 13:57:30,650.650 INFO    ] ================================================
[2026-10-18 13:57:31,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:57:31
[2026-10-18 13:57:31,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:57:32,115.115 INFO    ] Initializing speech engine...
[2026-10-18 13:57:32,138.138 INFO    ] 2026-10-18 13:57:32
[2026-10-18 13:57:32,403.403 INFO    ] 2026-10-18 13:57:32
[2026-10-18 13:57:32,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:57:32,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:57:32,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:57:32,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:57:32,988.988 INFO    ] time= 18/10/2026 13:57:32
[2026-10-18 13:57:32,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:57:33,014.014 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:57:33,152.152 INFO    ] No existing commands found in stream
[2026-10-18 13:57:38,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:57:38,186.186 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-18 13:57:41,362.362 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:57:41,364.364 INFO    ] Checking for system updates...
[2026-10-18 13:57:41,400.400 INFO    ] 200
[2026-10-18 13:57:41,402.402 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:57:41,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:57:41,456.456 INFO    ] No update needed
[2026-10-18 13:57:41,459.459 INFO    ] Checking for camera pi updates...
[2026-10-18 13:57:41,496.496 INFO    ] 200
[2026-10-18 13:57:41,499.499 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:57:41,544.544 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:57:51,559.559 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:57:51,594.594 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:57:51,604.604 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:57:51,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:57:51,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:57:51,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:57:53,656.656 INFO    ] ================================================
[2026-10-18 13:57:53,671.671 INFO    ] Launching Daemon at Sun Oct 18 13:57:53 IST 2026
[2026-10-18 13:57:53,682.682 INFO    ] ================================================
[2026-10-18 13:57:54,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:57:54
[2026-10-18 13:57:54,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:57:55,252.252 INFO    ] Initializing speech engine...
[2026-10-18 13:57:55,259.259 INFO    ] 2026-10-18 13:57:55
[2026-10-18 13:57:55,511.511 INFO    ] 2026-10-18 13:57:55
[2026-10-18 13:57:55,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:57:55,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:57:55,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:57:56,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:57:56,059.059 INFO    ] time= 18/10/2026 13:57:56
[2026-10-18 13:57:56,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:57:56,107.107 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:57:56,213.213 INFO    ] No existing commands found in stream
[2026-10-18 13:58:01,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:58:01,239.239 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-18 13:58:02,744.744 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 13:58:02,748.748 INFO    ] Checking for system updates...
[2026-10-18 13:58:02,789.789 INFO    ] 200
[2026-10-18 13:58:02,793.793 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:58:02,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:58:02,853.853 INFO    ] No update needed
[2026-10-18 13:58:02,856.856 INFO    ] Checking for camera pi updates...
[2026-10-18 13:58:02,903.903 INFO    ] 200
[2026-10-18 13:58:02,906.906 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:58:02,966.966 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:58:12,984.984 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:58:13,019.019 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:58:13,028.028 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:58:13,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:58:13,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:58:13,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:58:15,081.081 INFO    ] ================================================
[2026-10-18 13:58:15,096.096 INFO    ] Launching Daemon at Sun Oct 18 13:58:15 IST 2026
[2026-10-18 13:58:15,107.107 INFO    ] ================================================
[2026-10-18 13:58:15,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:58:15
[2026-10-18 13:58:16,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:58:16,528.528 INFO    ] Initializing speech engine...
[2026-10-18 13:58:16,537.537 INFO    ] 2026-10-18 13:58:16
[2026-10-18 13:58:16,813.813 INFO    ] 2026-10-18 13:58:16
[2026-10-18 13:58:16,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:58:17,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:58:17,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:58:17,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:58:17,384.384 INFO    ] time= 18/10/2026 13:58:17
[2026-10-18 13:58:17,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:58:17,409.409 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:58:17,544.544 INFO    ] No existing commands found in stream
[2026-10-18 13:58:22,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:58:22,561.561 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-18 13:58:26,537.537 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 13:58:26,540.540 INFO    ] Checking for system updates...
[2026-10-18 13:58:26,575.575 INFO    ] 200
[2026-10-18 13:58:26,578.578 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:58:26,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:58:26,637.637 INFO    ] No update needed
[2026-10-18 13:58:26,640.640 INFO    ] Checking for camera pi updates...
[2026-10-18 13:58:26,674.674 INFO    ] 200
[2026-10-18 13:58:26,677.677 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:58:26,722.722 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:58:36,735.735 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:58:36,770.770 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:58:36,780.780 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:58:36,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:58:36,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:58:36,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:58:38,833.833 INFO    ] ================================================
[2026-10-18 13:58:38,848.848 INFO    ] Launching Daemon at Sun Oct 18 13:58:38 IST 2026
[2026-10-18 13:58:38,859.859 INFO    ] ================================================
[2026-10-18 13:58:39,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:58:39
[2026-10-18 13:58:40,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:58:40,325.325 INFO    ] Initializing speech engine...
[2026-10-18 13:58:40,332.332 INFO    ] 2026-10-18 13:58:40
[2026-10-18 13:58:40,594.594 INFO    ] 2026-10-18 13:58:40
[2026-10-18 13:58:40,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:58:40,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:58:40,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:58:41,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:58:41,146.146 INFO    ] time= 18/10/2026 13:58:41
[2026-10-18 13:58:41,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:58:41,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:58:41,299.299 INFO    ] No existing commands found in stream
[2026-10-18 13:58:46,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:58:46,316.316 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-18 13:58:48,135.135 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 13:58:48,138.138 INFO    ] Checking for system updates...
[2026-10-18 13:58:48,183.183 INFO    ] 200
[2026-10-18 13:58:48,186.186 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:58:48,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:58:48,242.242 INFO    ] No update needed
[2026-10-18 13:58:48,244.244 INFO    ] Checking for camera pi updates...
[2026-10-18 13:58:48,279.279 INFO    ] 200
[2026-10-18 13:58:48,281.281 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:58:48,329.329 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:58:58,345.345 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:58:58,386.386 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:58:58,398.398 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:58:58,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:58:58,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:58:58,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:59:00,454.454 INFO    ] ================================================
[2026-10-18 13:59:00,470.470 INFO    ] Launching Daemon at Sun Oct 18 13:59:00 IST 2026
[2026-10-18 13:59:00,480.480 INFO    ] ================================================
[2026-10-18 13:59:01,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:59:01
[2026-10-18 13:59:01,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:59:01,921.921 INFO    ] Initializing speech engine...
[2026-10-18 13:59:01,931.931 INFO    ] 2026-10-18 13:59:01
[2026-10-18 13:59:02,234.234 INFO    ] 2026-10-18 13:59:02
[2026-10-18 13:59:02,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:59:02,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:59:02,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:59:02,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:59:02,748.748 INFO    ] time= 18/10/2026 13:59:02
[2026-10-18 13:59:02,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:59:02,825.825 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:59:02,965.965 INFO    ] No existing commands found in stream
[2026-10-18 13:59:07,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:59:07,994.994 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-18 13:59:09,415.415 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 13:59:09,419.419 INFO    ] Checking for system updates...
[2026-10-18 13:59:09,456.456 INFO    ] 200
[2026-10-18 13:59:09,458.458 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:59:09,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:59:09,514.514 INFO    ] No update needed
[2026-10-18 13:59:09,517.517 INFO    ] Checking for camera pi updates...
[2026-10-18 13:59:09,552.552 INFO    ] 200
[2026-10-18 13:59:09,555.555 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:59:09,601.601 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:59:19,618.618 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:59:19,658.658 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:59:19,669.669 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:59:19,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:59:19,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:59:19,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:59:21,726.726 INFO    ] ================================================
[2026-10-18 13:59:21,741.741 INFO    ] Launching Daemon at Sun Oct 18 13:59:21 IST 2026
[2026-10-18 13:59:21,752.752 INFO    ] ================================================
[2026-10-18 13:59:22,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:59:22
[2026-10-18 13:59:23,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:59:23,402.402 INFO    ] Initializing speech engine...
[2026-10-18 13:59:23,414.414 INFO    ] 2026-10-18 13:59:23
[2026-10-18 13:59:23,701.701 INFO    ] 2026-10-18 13:59:23
[2026-10-18 13:59:23,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:59:24,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:59:24,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:59:24,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:59:24,281.281 INFO    ] time= 18/10/2026 13:59:24
[2026-10-18 13:59:24,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:59:24,376.376 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:59:24,505.505 INFO    ] No existing commands found in stream
[2026-10-18 13:59:29,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:59:29,540.540 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-18 13:59:31,803.803 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:59:31,806.806 INFO    ] Checking for system updates...
[2026-10-18 13:59:31,843.843 INFO    ] 200
[2026-10-18 13:59:31,846.846 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:59:31,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 13:59:31,902.902 INFO    ] No update needed
[2026-10-18 13:59:31,904.904 INFO    ] Checking for camera pi updates...
[2026-10-18 13:59:31,938.938 INFO    ] 200
[2026-10-18 13:59:31,940.940 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:59:31,985.985 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 13:59:42,000.000 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 13:59:42,035.035 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 13:59:42,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-18 13:59:42,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 13:59:42,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 13:59:42,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 13:59:44,097.097 INFO    ] ================================================
[2026-10-18 13:59:44,112.112 INFO    ] Launching Daemon at Sun Oct 18 13:59:44 IST 2026
[2026-10-18 13:59:44,123.123 INFO    ] ================================================
[2026-10-18 13:59:44,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 13:59:44
[2026-10-18 13:59:45,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 13:59:45,775.775 INFO    ] Initializing speech engine...
[2026-10-18 13:59:45,786.786 INFO    ] 2026-10-18 13:59:45
[2026-10-18 13:59:46,101.101 INFO    ] 2026-10-18 13:59:46
[2026-10-18 13:59:46,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 13:59:46,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 13:59:46,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 13:59:46,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 13:59:46,649.649 INFO    ] time= 18/10/2026 13:59:46
[2026-10-18 13:59:46,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 13:59:46,676.676 INFO    ] Checking for existing commands in stream...
[2026-10-18 13:59:46,840.840 INFO    ] No existing commands found in stream
[2026-10-18 13:59:51,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 13:59:51,872.872 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-18 13:59:52,605.605 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 13:59:52,608.608 INFO    ] Checking for system updates...
[2026-10-18 13:59:52,645.645 INFO    ] 200
[2026-10-18 13:59:52,647.647 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:59:52,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 13:59:52,702.702 INFO    ] No update needed
[2026-10-18 13:59:52,704.704 INFO    ] Checking for camera pi updates...
[2026-10-18 13:59:52,737.737 INFO    ] 200
[2026-10-18 13:59:52,740.740 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 13:59:52,780.780 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:00:02,795.795 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:00:02,912.912 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:00:03,000.000 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:00:03,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:00:03,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:00:03,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:00:05,238.238 INFO    ] ================================================
[2026-10-18 14:00:05,335.335 INFO    ] Launching Daemon at Sun Oct 18 14:00:05 IST 2026
[2026-10-18 14:00:05,449.449 INFO    ] ================================================
[2026-10-18 14:00:06,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:00:06
[2026-10-18 14:00:07,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:00:07,497.497 INFO    ] Initializing speech engine...
[2026-10-18 14:00:07,508.508 INFO    ] 2026-10-18 14:00:07
[2026-10-18 14:00:07,757.757 INFO    ] 2026-10-18 14:00:07
[2026-10-18 14:00:07,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:00:08,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:00:08,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:00:08,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:00:08,324.324 INFO    ] time= 18/10/2026 14:00:08
[2026-10-18 14:00:08,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:00:08,349.349 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:00:08,484.484 INFO    ] No existing commands found in stream
[2026-10-18 14:00:13,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:00:13,510.510 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-18 14:00:15,306.306 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:00:15,309.309 INFO    ] Checking for system updates...
[2026-10-18 14:00:15,346.346 INFO    ] 200
[2026-10-18 14:00:15,349.349 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:00:15,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:00:15,403.403 INFO    ] No update needed
[2026-10-18 14:00:15,406.406 INFO    ] Checking for camera pi updates...
[2026-10-18 14:00:15,448.448 INFO    ] 200
[2026-10-18 14:00:15,450.450 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:00:15,490.490 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:00:25,504.504 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:00:25,539.539 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:00:25,549.549 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:00:25,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:00:25,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:00:25,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:00:27,600.600 INFO    ] ================================================
[2026-10-18 14:00:27,616.616 INFO    ] Launching Daemon at Sun Oct 18 14:00:27 IST 2026
[2026-10-18 14:00:27,627.627 INFO    ] ================================================
[2026-10-18 14:00:28,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:00:28
[2026-10-18 14:00:28,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:00:29,057.057 INFO    ] Initializing speech engine...
[2026-10-18 14:00:29,066.066 INFO    ] 2026-10-18 14:00:29
[2026-10-18 14:00:29,313.313 INFO    ] 2026-10-18 14:00:29
[2026-10-18 14:00:29,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:00:29,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:00:29,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:00:30,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:00:30,036.036 INFO    ] time= 18/10/2026 14:00:30
[2026-10-18 14:00:30,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:00:30,117.117 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:00:30,265.265 INFO    ] No existing commands found in stream
[2026-10-18 14:00:35,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:00:35,285.285 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-18 14:00:37,827.827 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:00:37,829.829 INFO    ] Checking for system updates...
[2026-10-18 14:00:37,865.865 INFO    ] 200
[2026-10-18 14:00:37,868.868 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:00:37,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:00:37,929.929 INFO    ] No update needed
[2026-10-18 14:00:37,931.931 INFO    ] Checking for camera pi updates...
[2026-10-18 14:00:37,966.966 INFO    ] 200
[2026-10-18 14:00:37,968.968 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:00:38,014.014 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:00:48,027.027 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:00:48,063.063 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:00:48,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:00:48,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:00:48,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:00:48,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:00:50,127.127 INFO    ] ================================================
[2026-10-18 14:00:50,142.142 INFO    ] Launching Daemon at Sun Oct 18 14:00:50 IST 2026
[2026-10-18 14:00:50,152.152 INFO    ] ================================================
[2026-10-18 14:00:50,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:00:50
[2026-10-18 14:00:51,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:00:51,591.591 INFO    ] Initializing speech engine...
[2026-10-18 14:00:51,604.604 INFO    ] 2026-10-18 14:00:51
[2026-10-18 14:00:51,870.870 INFO    ] 2026-10-18 14:00:51
[2026-10-18 14:00:51,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:00:52,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:00:52,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:00:52,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:00:52,343.343 INFO    ] time= 18/10/2026 14:00:52
[2026-10-18 14:00:52,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:00:52,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:00:52,587.587 INFO    ] No existing commands found in stream
[2026-10-18 14:00:57,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:00:57,612.612 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-18 14:00:58,645.645 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 14:00:58,648.648 INFO    ] Checking for system updates...
[2026-10-18 14:00:58,688.688 INFO    ] 200
[2026-10-18 14:00:58,690.690 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:00:58,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:00:58,744.744 INFO    ] No update needed
[2026-10-18 14:00:58,747.747 INFO    ] Checking for camera pi updates...
[2026-10-18 14:00:58,780.780 INFO    ] 200
[2026-10-18 14:00:58,782.782 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:00:58,828.828 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:01:08,843.843 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:01:08,879.879 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:01:08,889.889 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:01:08,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:01:08,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:01:08,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:01:10,941.941 INFO    ] ================================================
[2026-10-18 14:01:10,956.956 INFO    ] Launching Daemon at Sun Oct 18 14:01:10 IST 2026
[2026-10-18 14:01:10,967.967 INFO    ] ================================================
[2026-10-18 14:01:11,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:01:11
[2026-10-18 14:01:12,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:01:12,380.380 INFO    ] Initializing speech engine...
[2026-10-18 14:01:12,387.387 INFO    ] 2026-10-18 14:01:12
[2026-10-18 14:01:12,677.677 INFO    ] 2026-10-18 14:01:12
[2026-10-18 14:01:12,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:01:12,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:01:12,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:01:13,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:01:13,172.172 INFO    ] time= 18/10/2026 14:01:13
[2026-10-18 14:01:13,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:01:13,270.270 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:01:13,405.405 INFO    ] No existing commands found in stream
[2026-10-18 14:01:18,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:01:18,432.432 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-18 14:01:19,128.128 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:01:19,130.130 INFO    ] Checking for system updates...
[2026-10-18 14:01:19,166.166 INFO    ] 200
[2026-10-18 14:01:19,168.168 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:01:19,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:01:19,224.224 INFO    ] No update needed
[2026-10-18 14:01:19,226.226 INFO    ] Checking for camera pi updates...
[2026-10-18 14:01:19,259.259 INFO    ] 200
[2026-10-18 14:01:19,262.262 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:01:19,302.302 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:01:29,317.317 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:01:29,352.352 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:01:29,361.361 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:01:29,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:01:29,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:01:29,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:01:31,415.415 INFO    ] ================================================
[2026-10-18 14:01:31,430.430 INFO    ] Launching Daemon at Sun Oct 18 14:01:31 IST 2026
[2026-10-18 14:01:31,441.441 INFO    ] ================================================
[2026-10-18 14:01:32,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:01:32
[2026-10-18 14:01:32,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:01:32,995.995 INFO    ] Initializing speech engine...
[2026-10-18 14:01:33,014.014 INFO    ] 2026-10-18 14:01:32
[2026-10-18 14:01:33,289.289 INFO    ] 2026-10-18 14:01:33
[2026-10-18 14:01:33,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:01:33,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:01:33,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:01:33,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:01:33,842.842 INFO    ] time= 18/10/2026 14:01:33
[2026-10-18 14:01:33,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:01:33,866.866 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:01:34,017.017 INFO    ] No existing commands found in stream
[2026-10-18 14:01:39,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:01:39,051.051 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-18 14:01:41,918.918 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:01:41,921.921 INFO    ] Checking for system updates...
[2026-10-18 14:01:41,958.958 INFO    ] 200
[2026-10-18 14:01:41,961.961 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:01:42,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:01:42,016.016 INFO    ] No update needed
[2026-10-18 14:01:42,019.019 INFO    ] Checking for camera pi updates...
[2026-10-18 14:01:42,057.057 INFO    ] 200
[2026-10-18 14:01:42,059.059 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:01:42,105.105 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:01:52,120.120 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:01:52,155.155 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:01:52,165.165 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:01:52,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:01:52,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:01:52,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:01:54,217.217 INFO    ] ================================================
[2026-10-18 14:01:54,232.232 INFO    ] Launching Daemon at Sun Oct 18 14:01:54 IST 2026
[2026-10-18 14:01:54,243.243 INFO    ] ================================================
[2026-10-18 14:01:54,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:01:54
[2026-10-18 14:01:55,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:01:55,663.663 INFO    ] Initializing speech engine...
[2026-10-18 14:01:55,672.672 INFO    ] 2026-10-18 14:01:55
[2026-10-18 14:01:55,924.924 INFO    ] 2026-10-18 14:01:55
[2026-10-18 14:01:55,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:01:56,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:01:56,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:01:56,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:01:56,492.492 INFO    ] time= 18/10/2026 14:01:56
[2026-10-18 14:01:56,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:01:56,514.514 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:01:56,669.669 INFO    ] No existing commands found in stream
[2026-10-18 14:02:01,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:02:01,705.705 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-18 14:02:05,307.307 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:02:05,310.310 INFO    ] Checking for system updates...
[2026-10-18 14:02:05,346.346 INFO    ] 200
[2026-10-18 14:02:05,349.349 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:02:05,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:02:05,409.409 INFO    ] No update needed
[2026-10-18 14:02:05,411.411 INFO    ] Checking for camera pi updates...
[2026-10-18 14:02:05,450.450 INFO    ] 200
[2026-10-18 14:02:05,452.452 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:02:05,497.497 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:02:15,513.513 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:02:15,552.552 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:02:15,562.562 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:02:15,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:02:15,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:02:15,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:02:17,617.617 INFO    ] ================================================
[2026-10-18 14:02:17,633.633 INFO    ] Launching Daemon at Sun Oct 18 14:02:17 IST 2026
[2026-10-18 14:02:17,643.643 INFO    ] ================================================
[2026-10-18 14:02:18,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:02:18
[2026-10-18 14:02:18,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:02:19,103.103 INFO    ] Initializing speech engine...
[2026-10-18 14:02:19,110.110 INFO    ] 2026-10-18 14:02:19
[2026-10-18 14:02:19,370.370 INFO    ] 2026-10-18 14:02:19
[2026-10-18 14:02:19,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:02:19,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:02:19,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:02:19,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:02:19,917.917 INFO    ] time= 18/10/2026 14:02:19
[2026-10-18 14:02:19,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:02:19,957.957 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:02:20,104.104 INFO    ] No existing commands found in stream
[2026-10-18 14:02:25,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:02:25,138.138 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-18 14:02:27,047.047 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:02:27,049.049 INFO    ] Checking for system updates...
[2026-10-18 14:02:27,085.085 INFO    ] 200
[2026-10-18 14:02:27,088.088 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:02:27,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:02:27,143.143 INFO    ] No update needed
[2026-10-18 14:02:27,145.145 INFO    ] Checking for camera pi updates...
[2026-10-18 14:02:27,178.178 INFO    ] 200
[2026-10-18 14:02:27,181.181 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:02:27,221.221 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:02:37,237.237 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:02:37,273.273 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:02:37,283.283 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:02:37,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:02:37,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:02:37,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:02:39,335.335 INFO    ] ================================================
[2026-10-18 14:02:39,350.350 INFO    ] Launching Daemon at Sun Oct 18 14:02:39 IST 2026
[2026-10-18 14:02:39,361.361 INFO    ] ================================================
[2026-10-18 14:02:39,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:02:39
[2026-10-18 14:02:40,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:02:40,926.926 INFO    ] Initializing speech engine...
[2026-10-18 14:02:40,940.940 INFO    ] 2026-10-18 14:02:40
[2026-10-18 14:02:41,220.220 INFO    ] 2026-10-18 14:02:41
[2026-10-18 14:02:41,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:02:41,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:02:41,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:02:41,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:02:41,807.807 INFO    ] time= 18/10/2026 14:02:41
[2026-10-18 14:02:41,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:02:41,834.834 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:02:41,954.954 INFO    ] No existing commands found in stream
[2026-10-18 14:02:46,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:02:46,983.983 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-18 14:02:49,306.306 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:02:49,309.309 INFO    ] Checking for system updates...
[2026-10-18 14:02:49,345.345 INFO    ] 200
[2026-10-18 14:02:49,348.348 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:02:49,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:02:49,411.411 INFO    ] No update needed
[2026-10-18 14:02:49,413.413 INFO    ] Checking for camera pi updates...
[2026-10-18 14:02:49,447.447 INFO    ] 200
[2026-10-18 14:02:49,449.449 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:02:49,496.496 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:02:59,511.511 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:02:59,545.545 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:02:59,555.555 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:02:59,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:02:59,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:02:59,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:03:01,620.620 INFO    ] ================================================
[2026-10-18 14:03:01,639.639 INFO    ] Launching Daemon at Sun Oct 18 14:03:01 IST 2026
[2026-10-18 14:03:01,678.678 INFO    ] ================================================
[2026-10-18 14:03:02,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:03:02
[2026-10-18 14:03:03,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:03:03,395.395 INFO    ] Initializing speech engine...
[2026-10-18 14:03:03,408.408 INFO    ] 2026-10-18 14:03:03
[2026-10-18 14:03:03,698.698 INFO    ] 2026-10-18 14:03:03
[2026-10-18 14:03:03,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:03:03,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:03:03,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:03:04,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:03:04,154.154 INFO    ] time= 18/10/2026 14:03:04
[2026-10-18 14:03:04,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:03:04,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:03:04,403.403 INFO    ] No existing commands found in stream
[2026-10-18 14:03:09,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:03:09,433.433 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-18 14:03:10,549.549 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:03:10,552.552 INFO    ] Checking for system updates...
[2026-10-18 14:03:10,588.588 INFO    ] 200
[2026-10-18 14:03:10,590.590 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:03:10,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:03:10,653.653 INFO    ] No update needed
[2026-10-18 14:03:10,656.656 INFO    ] Checking for camera pi updates...
[2026-10-18 14:03:10,690.690 INFO    ] 200
[2026-10-18 14:03:10,692.692 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:03:10,733.733 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:03:20,747.747 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:03:20,782.782 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:03:20,792.792 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:03:20,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:03:20,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:03:20,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:03:22,846.846 INFO    ] ================================================
[2026-10-18 14:03:22,862.862 INFO    ] Launching Daemon at Sun Oct 18 14:03:22 IST 2026
[2026-10-18 14:03:22,873.873 INFO    ] ================================================
[2026-10-18 14:03:23,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:03:23
[2026-10-18 14:03:24,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:03:24,303.303 INFO    ] Initializing speech engine...
[2026-10-18 14:03:24,312.312 INFO    ] 2026-10-18 14:03:24
[2026-10-18 14:03:24,564.564 INFO    ] 2026-10-18 14:03:24
[2026-10-18 14:03:24,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:03:24,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:03:24,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:03:25,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:03:25,132.132 INFO    ] time= 18/10/2026 14:03:25
[2026-10-18 14:03:25,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:03:25,164.164 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:03:25,302.302 INFO    ] No existing commands found in stream
[2026-10-18 14:03:30,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:03:30,323.323 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-18 14:03:31,004.004 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:03:31,007.007 INFO    ] Checking for system updates...
[2026-10-18 14:03:31,044.044 INFO    ] 200
[2026-10-18 14:03:31,046.046 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:03:31,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:03:31,101.101 INFO    ] No update needed
[2026-10-18 14:03:31,103.103 INFO    ] Checking for camera pi updates...
[2026-10-18 14:03:31,137.137 INFO    ] 200
[2026-10-18 14:03:31,139.139 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:03:31,180.180 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:03:41,194.194 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:03:41,229.229 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:03:41,243.243 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:03:41,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:03:41,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:03:41,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:03:43,296.296 INFO    ] ================================================
[2026-10-18 14:03:43,316.316 INFO    ] Launching Daemon at Sun Oct 18 14:03:43 IST 2026
[2026-10-18 14:03:43,327.327 INFO    ] ================================================
[2026-10-18 14:03:44,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:03:44
[2026-10-18 14:03:44,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:03:44,968.968 INFO    ] Initializing speech engine...
[2026-10-18 14:03:44,982.982 INFO    ] 2026-10-18 14:03:44
[2026-10-18 14:03:45,295.295 INFO    ] 2026-10-18 14:03:45
[2026-10-18 14:03:45,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:03:45,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:03:45,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:03:45,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:03:45,744.744 INFO    ] time= 18/10/2026 14:03:45
[2026-10-18 14:03:45,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:03:45,778.778 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:03:45,919.919 INFO    ] No existing commands found in stream
[2026-10-18 14:03:50,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:03:50,947.947 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-18 14:03:55,318.318 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 14:03:55,320.320 INFO    ] Checking for system updates...
[2026-10-18 14:03:55,361.361 INFO    ] 200
[2026-10-18 14:03:55,364.364 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:03:55,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:03:55,428.428 INFO    ] No update needed
[2026-10-18 14:03:55,431.431 INFO    ] Checking for camera pi updates...
[2026-10-18 14:03:55,466.466 INFO    ] 200
[2026-10-18 14:03:55,469.469 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:03:55,516.516 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:04:05,532.532 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:04:05,573.573 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:04:05,584.584 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:04:05,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:04:05,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:04:05,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:04:07,640.640 INFO    ] ================================================
[2026-10-18 14:04:07,655.655 INFO    ] Launching Daemon at Sun Oct 18 14:04:07 IST 2026
[2026-10-18 14:04:07,667.667 INFO    ] ================================================
[2026-10-18 14:04:08,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:04:08
[2026-10-18 14:04:08,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:04:09,109.109 INFO    ] Initializing speech engine...
[2026-10-18 14:04:09,134.134 INFO    ] 2026-10-18 14:04:09
[2026-10-18 14:04:09,412.412 INFO    ] 2026-10-18 14:04:09
[2026-10-18 14:04:09,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:04:09,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:04:09,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:04:09,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:04:09,843.843 INFO    ] time= 18/10/2026 14:04:09
[2026-10-18 14:04:09,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:04:09,923.923 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:04:10,066.066 INFO    ] No existing commands found in stream
[2026-10-18 14:04:15,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:04:15,080.080 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-18 14:04:16,633.633 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:04:16,636.636 INFO    ] Checking for system updates...
[2026-10-18 14:04:16,673.673 INFO    ] 200
[2026-10-18 14:04:16,675.675 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:04:16,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:04:16,737.737 INFO    ] No update needed
[2026-10-18 14:04:16,739.739 INFO    ] Checking for camera pi updates...
[2026-10-18 14:04:16,773.773 INFO    ] 200
[2026-10-18 14:04:16,776.776 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:04:16,816.816 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:04:26,832.832 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:04:26,868.868 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:04:26,877.877 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:04:26,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:04:26,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:04:26,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:04:28,932.932 INFO    ] ================================================
[2026-10-18 14:04:28,949.949 INFO    ] Launching Daemon at Sun Oct 18 14:04:28 IST 2026
[2026-10-18 14:04:28,960.960 INFO    ] ================================================
[2026-10-18 14:04:29,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:04:29
[2026-10-18 14:04:30,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:04:30,618.618 INFO    ] Initializing speech engine...
[2026-10-18 14:04:30,627.627 INFO    ] 2026-10-18 14:04:30
[2026-10-18 14:04:30,934.934 INFO    ] 2026-10-18 14:04:30
[2026-10-18 14:04:31,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:04:31,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:04:31,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:04:31,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:04:31,457.457 INFO    ] time= 18/10/2026 14:04:31
[2026-10-18 14:04:31,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:04:31,499.499 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:04:31,628.628 INFO    ] No existing commands found in stream
[2026-10-18 14:04:36,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:04:36,670.670 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-18 14:04:41,166.166 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:04:41,169.169 INFO    ] Checking for system updates...
[2026-10-18 14:04:41,206.206 INFO    ] 200
[2026-10-18 14:04:41,209.209 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:04:41,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:04:41,266.266 INFO    ] No update needed
[2026-10-18 14:04:41,269.269 INFO    ] Checking for camera pi updates...
[2026-10-18 14:04:41,303.303 INFO    ] 200
[2026-10-18 14:04:41,306.306 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:04:41,348.348 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:04:51,365.365 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:04:51,406.406 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:04:51,417.417 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:04:51,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:04:51,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:04:51,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:04:53,474.474 INFO    ] ================================================
[2026-10-18 14:04:53,489.489 INFO    ] Launching Daemon at Sun Oct 18 14:04:53 IST 2026
[2026-10-18 14:04:53,500.500 INFO    ] ================================================
[2026-10-18 14:04:54,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:04:54
[2026-10-18 14:04:54,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:04:55,051.051 INFO    ] Initializing speech engine...
[2026-10-18 14:04:55,065.065 INFO    ] 2026-10-18 14:04:55
[2026-10-18 14:04:55,321.321 INFO    ] 2026-10-18 14:04:55
[2026-10-18 14:04:55,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:04:55,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:04:55,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:04:55,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:04:55,877.877 INFO    ] time= 18/10/2026 14:04:55
[2026-10-18 14:04:55,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:04:55,899.899 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:04:56,016.016 INFO    ] No existing commands found in stream
[2026-10-18 14:05:01,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:05:01,041.041 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-18 14:05:05,430.430 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:05:05,433.433 INFO    ] Checking for system updates...
[2026-10-18 14:05:05,469.469 INFO    ] 200
[2026-10-18 14:05:05,472.472 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:05:05,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:05:05,527.527 INFO    ] No update needed
[2026-10-18 14:05:05,530.530 INFO    ] Checking for camera pi updates...
[2026-10-18 14:05:05,564.564 INFO    ] 200
[2026-10-18 14:05:05,567.567 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:05:05,612.612 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:05:15,628.628 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:05:15,667.667 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:05:15,678.678 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:05:15,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:05:15,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:05:15,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:05:17,734.734 INFO    ] ================================================
[2026-10-18 14:05:17,749.749 INFO    ] Launching Daemon at Sun Oct 18 14:05:17 IST 2026
[2026-10-18 14:05:17,759.759 INFO    ] ================================================
[2026-10-18 14:05:18,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:05:18
[2026-10-18 14:05:18,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:05:19,227.227 INFO    ] Initializing speech engine...
[2026-10-18 14:05:19,235.235 INFO    ] 2026-10-18 14:05:19
[2026-10-18 14:05:19,485.485 INFO    ] 2026-10-18 14:05:19
[2026-10-18 14:05:19,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:05:19,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:05:19,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:05:19,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:05:20,040.040 INFO    ] time= 18/10/2026 14:05:20
[2026-10-18 14:05:20,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:05:20,073.073 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:05:20,249.249 INFO    ] No existing commands found in stream
[2026-10-18 14:05:25,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:05:25,278.278 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-18 14:05:26,107.107 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:05:26,110.110 INFO    ] Checking for system updates...
[2026-10-18 14:05:26,146.146 INFO    ] 200
[2026-10-18 14:05:26,148.148 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:05:26,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:05:26,203.203 INFO    ] No update needed
[2026-10-18 14:05:26,206.206 INFO    ] Checking for camera pi updates...
[2026-10-18 14:05:26,240.240 INFO    ] 200
[2026-10-18 14:05:26,243.243 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:05:26,287.287 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:05:36,303.303 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:05:36,337.337 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:05:36,347.347 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:05:36,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:05:36,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:05:36,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:05:38,400.400 INFO    ] ================================================
[2026-10-18 14:05:38,415.415 INFO    ] Launching Daemon at Sun Oct 18 14:05:38 IST 2026
[2026-10-18 14:05:38,426.426 INFO    ] ================================================
[2026-10-18 14:05:38,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:05:38
[2026-10-18 14:05:39,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:05:39,848.848 INFO    ] Initializing speech engine...
[2026-10-18 14:05:39,854.854 INFO    ] 2026-10-18 14:05:39
[2026-10-18 14:05:40,106.106 INFO    ] 2026-10-18 14:05:40
[2026-10-18 14:05:40,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:05:40,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:05:40,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:05:40,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:05:40,671.671 INFO    ] time= 18/10/2026 14:05:40
[2026-10-18 14:05:40,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:05:40,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:05:40,818.818 INFO    ] No existing commands found in stream
[2026-10-18 14:05:45,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:05:45,841.841 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-18 14:05:46,971.971 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 14:05:46,974.974 INFO    ] Checking for system updates...
[2026-10-18 14:05:47,011.011 INFO    ] 200
[2026-10-18 14:05:47,014.014 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:05:47,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:05:47,069.069 INFO    ] No update needed
[2026-10-18 14:05:47,072.072 INFO    ] Checking for camera pi updates...
[2026-10-18 14:05:47,107.107 INFO    ] 200
[2026-10-18 14:05:47,109.109 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:05:47,151.151 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:05:57,166.166 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:05:57,206.206 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:05:57,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:05:57,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:05:57,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:05:57,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:05:59,273.273 INFO    ] ================================================
[2026-10-18 14:05:59,289.289 INFO    ] Launching Daemon at Sun Oct 18 14:05:59 IST 2026
[2026-10-18 14:05:59,300.300 INFO    ] ================================================
[2026-10-18 14:05:59,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:05:59
[2026-10-18 14:06:00,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:06:00,757.757 INFO    ] Initializing speech engine...
[2026-10-18 14:06:00,777.777 INFO    ] 2026-10-18 14:06:00
[2026-10-18 14:06:01,048.048 INFO    ] 2026-10-18 14:06:01
[2026-10-18 14:06:01,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:06:01,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:06:01,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:06:01,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:06:01,580.580 INFO    ] time= 18/10/2026 14:06:01
[2026-10-18 14:06:01,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:06:01,684.684 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:06:01,842.842 INFO    ] No existing commands found in stream
[2026-10-18 14:06:06,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:06:06,872.872 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-18 14:06:08,410.410 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 14:06:08,412.412 INFO    ] Checking for system updates...
[2026-10-18 14:06:08,448.448 INFO    ] 200
[2026-10-18 14:06:08,451.451 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:06:08,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:06:08,506.506 INFO    ] No update needed
[2026-10-18 14:06:08,509.509 INFO    ] Checking for camera pi updates...
[2026-10-18 14:06:08,542.542 INFO    ] 200
[2026-10-18 14:06:08,544.544 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:06:08,584.584 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:06:18,600.600 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:06:18,636.636 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:06:18,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:06:18,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:06:18,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:06:18,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:06:20,699.699 INFO    ] ================================================
[2026-10-18 14:06:20,714.714 INFO    ] Launching Daemon at Sun Oct 18 14:06:20 IST 2026
[2026-10-18 14:06:20,725.725 INFO    ] ================================================
[2026-10-18 14:06:21,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:06:21
[2026-10-18 14:06:21,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:06:22,153.153 INFO    ] Initializing speech engine...
[2026-10-18 14:06:22,162.162 INFO    ] 2026-10-18 14:06:22
[2026-10-18 14:06:22,407.407 INFO    ] 2026-10-18 14:06:22
[2026-10-18 14:06:22,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:06:22,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:06:22,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:06:22,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:06:22,914.914 INFO    ] time= 18/10/2026 14:06:22
[2026-10-18 14:06:22,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:06:22,973.973 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:06:23,131.131 INFO    ] No existing commands found in stream
[2026-10-18 14:06:28,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:06:28,166.166 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-18 14:06:30,865.865 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:06:30,868.868 INFO    ] Checking for system updates...
[2026-10-18 14:06:30,905.905 INFO    ] 200
[2026-10-18 14:06:30,908.908 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:06:30,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:06:30,964.964 INFO    ] No update needed
[2026-10-18 14:06:30,967.967 INFO    ] Checking for camera pi updates...
[2026-10-18 14:06:31,002.002 INFO    ] 200
[2026-10-18 14:06:31,004.004 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:06:31,047.047 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:06:41,063.063 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:06:41,104.104 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:06:41,115.115 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:06:41,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:06:41,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:06:41,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:06:43,172.172 INFO    ] ================================================
[2026-10-18 14:06:43,188.188 INFO    ] Launching Daemon at Sun Oct 18 14:06:43 IST 2026
[2026-10-18 14:06:43,199.199 INFO    ] ================================================
[2026-10-18 14:06:43,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:06:43
[2026-10-18 14:06:44,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:06:44,626.626 INFO    ] Initializing speech engine...
[2026-10-18 14:06:44,636.636 INFO    ] 2026-10-18 14:06:44
[2026-10-18 14:06:44,895.895 INFO    ] 2026-10-18 14:06:44
[2026-10-18 14:06:44,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:06:45,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:06:45,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:06:45,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:06:45,436.436 INFO    ] time= 18/10/2026 14:06:45
[2026-10-18 14:06:45,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:06:45,463.463 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:06:45,592.592 INFO    ] No existing commands found in stream
[2026-10-18 14:06:50,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:06:50,610.610 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-18 14:06:51,353.353 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:06:51,356.356 INFO    ] Checking for system updates...
[2026-10-18 14:06:51,392.392 INFO    ] 200
[2026-10-18 14:06:51,395.395 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:06:51,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:06:51,453.453 INFO    ] No update needed
[2026-10-18 14:06:51,456.456 INFO    ] Checking for camera pi updates...
[2026-10-18 14:06:51,490.490 INFO    ] 200
[2026-10-18 14:06:51,493.493 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:06:51,534.534 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:07:01,550.550 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:07:01,590.590 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:07:01,601.601 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:07:01,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:07:01,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:07:01,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:07:03,658.658 INFO    ] ================================================
[2026-10-18 14:07:03,674.674 INFO    ] Launching Daemon at Sun Oct 18 14:07:03 IST 2026
[2026-10-18 14:07:03,684.684 INFO    ] ================================================
[2026-10-18 14:07:04,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:07:04
[2026-10-18 14:07:04,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:07:05,112.112 INFO    ] Initializing speech engine...
[2026-10-18 14:07:05,135.135 INFO    ] 2026-10-18 14:07:05
[2026-10-18 14:07:05,392.392 INFO    ] 2026-10-18 14:07:05
[2026-10-18 14:07:05,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:07:05,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:07:05,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:07:05,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:07:05,958.958 INFO    ] time= 18/10/2026 14:07:05
[2026-10-18 14:07:05,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:07:05,983.983 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:07:06,117.117 INFO    ] No existing commands found in stream
[2026-10-18 14:07:11,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:07:11,140.140 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-18 14:07:12,168.168 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:07:12,170.170 INFO    ] Checking for system updates...
[2026-10-18 14:07:12,206.206 INFO    ] 200
[2026-10-18 14:07:12,208.208 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:07:12,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:07:12,280.280 INFO    ] No update needed
[2026-10-18 14:07:12,282.282 INFO    ] Checking for camera pi updates...
[2026-10-18 14:07:12,315.315 INFO    ] 200
[2026-10-18 14:07:12,318.318 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:07:12,358.358 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:07:22,373.373 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:07:22,408.408 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:07:22,417.417 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:07:22,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:07:22,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:07:22,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:07:24,469.469 INFO    ] ================================================
[2026-10-18 14:07:24,485.485 INFO    ] Launching Daemon at Sun Oct 18 14:07:24 IST 2026
[2026-10-18 14:07:24,496.496 INFO    ] ================================================
[2026-10-18 14:07:25,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:07:25
[2026-10-18 14:07:25,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:07:26,143.143 INFO    ] Initializing speech engine...
[2026-10-18 14:07:26,148.148 INFO    ] 2026-10-18 14:07:26
[2026-10-18 14:07:26,431.431 INFO    ] 2026-10-18 14:07:26
[2026-10-18 14:07:26,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:07:26,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:07:26,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:07:26,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:07:27,001.001 INFO    ] time= 18/10/2026 14:07:26
[2026-10-18 14:07:27,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:07:27,094.094 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:07:27,232.232 INFO    ] No existing commands found in stream
[2026-10-18 14:07:32,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:07:32,267.267 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-18 14:07:34,126.126 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:07:34,129.129 INFO    ] Checking for system updates...
[2026-10-18 14:07:34,165.165 INFO    ] 200
[2026-10-18 14:07:34,167.167 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:07:34,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:07:34,224.224 INFO    ] No update needed
[2026-10-18 14:07:34,227.227 INFO    ] Checking for camera pi updates...
[2026-10-18 14:07:34,261.261 INFO    ] 200
[2026-10-18 14:07:34,263.263 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:07:34,305.305 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:07:44,321.321 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:07:44,357.357 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:07:44,366.366 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:07:44,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:07:44,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:07:44,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:07:46,420.420 INFO    ] ================================================
[2026-10-18 14:07:46,436.436 INFO    ] Launching Daemon at Sun Oct 18 14:07:46 IST 2026
[2026-10-18 14:07:46,447.447 INFO    ] ================================================
[2026-10-18 14:07:47,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:07:47
[2026-10-18 14:07:47,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:07:48,087.087 INFO    ] Initializing speech engine...
[2026-10-18 14:07:48,101.101 INFO    ] 2026-10-18 14:07:48
[2026-10-18 14:07:48,388.388 INFO    ] 2026-10-18 14:07:48
[2026-10-18 14:07:48,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:07:48,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:07:48,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:07:48,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:07:48,939.939 INFO    ] time= 18/10/2026 14:07:48
[2026-10-18 14:07:48,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:07:48,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:07:49,119.119 INFO    ] No existing commands found in stream
[2026-10-18 14:07:54,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:07:54,149.149 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-18 14:08:03,762.762 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:08:03,765.765 INFO    ] Checking for system updates...
[2026-10-18 14:08:03,808.808 INFO    ] 200
[2026-10-18 14:08:03,811.811 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:08:03,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:08:03,866.866 INFO    ] No update needed
[2026-10-18 14:08:03,869.869 INFO    ] Checking for camera pi updates...
[2026-10-18 14:08:03,907.907 INFO    ] 200
[2026-10-18 14:08:03,911.911 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:08:03,962.962 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:08:13,980.980 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31350>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:08:14,015.015 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:08:14,025.025 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:08:14,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:08:14,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:08:14,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:08:16,077.077 INFO    ] ================================================
[2026-10-18 14:08:16,093.093 INFO    ] Launching Daemon at Sun Oct 18 14:08:16 IST 2026
[2026-10-18 14:08:16,104.104 INFO    ] ================================================
[2026-10-18 14:08:16,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:08:16
[2026-10-18 14:08:17,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:08:17,535.535 INFO    ] Initializing speech engine...
[2026-10-18 14:08:17,542.542 INFO    ] 2026-10-18 14:08:17
[2026-10-18 14:08:17,801.801 INFO    ] 2026-10-18 14:08:17
[2026-10-18 14:08:17,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:08:18,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:08:18,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:08:18,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:08:18,283.283 INFO    ] time= 18/10/2026 14:08:18
[2026-10-18 14:08:18,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:08:18,352.352 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:08:18,498.498 INFO    ] No existing commands found in stream
[2026-10-18 14:08:23,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:08:23,514.514 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-18 14:08:26,982.982 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 14:08:26,985.985 INFO    ] Checking for system updates...
[2026-10-18 14:08:27,021.021 INFO    ] 200
[2026-10-18 14:08:27,024.024 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:08:27,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:08:27,081.081 INFO    ] No update needed
[2026-10-18 14:08:27,084.084 INFO    ] Checking for camera pi updates...
[2026-10-18 14:08:27,117.117 INFO    ] 200
[2026-10-18 14:08:27,120.120 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:08:27,160.160 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:08:37,174.174 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:08:37,209.209 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:08:37,219.219 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:08:37,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:08:37,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:08:37,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:08:39,271.271 INFO    ] ================================================
[2026-10-18 14:08:39,287.287 INFO    ] Launching Daemon at Sun Oct 18 14:08:39 IST 2026
[2026-10-18 14:08:39,298.298 INFO    ] ================================================
[2026-10-18 14:08:39,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:08:39
[2026-10-18 14:08:40,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:08:40,902.902 INFO    ] Initializing speech engine...
[2026-10-18 14:08:40,915.915 INFO    ] 2026-10-18 14:08:40
[2026-10-18 14:08:41,199.199 INFO    ] 2026-10-18 14:08:41
[2026-10-18 14:08:41,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:08:41,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:08:41,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:08:41,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:08:41,728.728 INFO    ] time= 18/10/2026 14:08:41
[2026-10-18 14:08:41,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:08:41,777.777 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:08:41,921.921 INFO    ] No existing commands found in stream
[2026-10-18 14:08:46,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:08:46,950.950 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-18 14:08:48,903.903 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:08:48,906.906 INFO    ] Checking for system updates...
[2026-10-18 14:08:48,942.942 INFO    ] 200
[2026-10-18 14:08:48,945.945 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:08:48,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:08:49,000.000 INFO    ] No update needed
[2026-10-18 14:08:49,003.003 INFO    ] Checking for camera pi updates...
[2026-10-18 14:08:49,037.037 INFO    ] 200
[2026-10-18 14:08:49,040.040 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:08:49,081.081 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:08:59,098.098 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:08:59,140.140 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:08:59,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:08:59,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:08:59,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:08:59,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:09:01,211.211 INFO    ] ================================================
[2026-10-18 14:09:01,227.227 INFO    ] Launching Daemon at Sun Oct 18 14:09:01 IST 2026
[2026-10-18 14:09:01,238.238 INFO    ] ================================================
[2026-10-18 14:09:01,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:09:01
[2026-10-18 14:09:02,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:09:03,171.171 INFO    ] Initializing speech engine...
[2026-10-18 14:09:03,175.175 INFO    ] 2026-10-18 14:09:03
[2026-10-18 14:09:03,498.498 INFO    ] 2026-10-18 14:09:03
[2026-10-18 14:09:03,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:09:03,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:09:03,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:09:03,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:09:03,984.984 INFO    ] time= 18/10/2026 14:09:03
[2026-10-18 14:09:04,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:09:04,061.061 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:09:04,206.206 INFO    ] No existing commands found in stream
[2026-10-18 14:09:09,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:09:09,251.251 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-18 14:09:10,080.080 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:09:10,084.084 INFO    ] Checking for system updates...
[2026-10-18 14:09:10,130.130 INFO    ] 200
[2026-10-18 14:09:10,133.133 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:09:10,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:09:10,194.194 INFO    ] No update needed
[2026-10-18 14:09:10,197.197 INFO    ] Checking for camera pi updates...
[2026-10-18 14:09:10,231.231 INFO    ] 200
[2026-10-18 14:09:10,233.233 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:09:10,277.277 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:09:20,292.292 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:09:20,327.327 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:09:20,336.336 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:09:20,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:09:20,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:09:20,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:09:22,389.389 INFO    ] ================================================
[2026-10-18 14:09:22,405.405 INFO    ] Launching Daemon at Sun Oct 18 14:09:22 IST 2026
[2026-10-18 14:09:22,416.416 INFO    ] ================================================
[2026-10-18 14:09:22,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:09:22
[2026-10-18 14:09:23,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:09:23,835.835 INFO    ] Initializing speech engine...
[2026-10-18 14:09:23,844.844 INFO    ] 2026-10-18 14:09:23
[2026-10-18 14:09:24,096.096 INFO    ] 2026-10-18 14:09:24
[2026-10-18 14:09:24,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:09:24,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:09:24,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:09:24,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:09:24,642.642 INFO    ] time= 18/10/2026 14:09:24
[2026-10-18 14:09:24,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:09:24,668.668 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:09:24,796.796 INFO    ] No existing commands found in stream
[2026-10-18 14:09:29,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:09:29,821.821 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-18 14:09:31,959.959 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:09:31,961.961 INFO    ] Checking for system updates...
[2026-10-18 14:09:31,998.998 INFO    ] 200
[2026-10-18 14:09:32,000.000 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:09:32,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:09:32,063.063 INFO    ] No update needed
[2026-10-18 14:09:32,066.066 INFO    ] Checking for camera pi updates...
[2026-10-18 14:09:32,100.100 INFO    ] 200
[2026-10-18 14:09:32,102.102 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:09:32,159.159 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:09:42,174.174 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:09:42,210.210 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:09:42,220.220 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:09:42,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:09:42,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:09:42,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:09:44,273.273 INFO    ] ================================================
[2026-10-18 14:09:44,289.289 INFO    ] Launching Daemon at Sun Oct 18 14:09:44 IST 2026
[2026-10-18 14:09:44,300.300 INFO    ] ================================================
[2026-10-18 14:09:44,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:09:44
[2026-10-18 14:09:45,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:09:45,902.902 INFO    ] Initializing speech engine...
[2026-10-18 14:09:45,909.909 INFO    ] 2026-10-18 14:09:45
[2026-10-18 14:09:46,190.190 INFO    ] 2026-10-18 14:09:46
[2026-10-18 14:09:46,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:09:46,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:09:46,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:09:46,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:09:46,725.725 INFO    ] time= 18/10/2026 14:09:46
[2026-10-18 14:09:46,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:09:46,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:09:46,860.860 INFO    ] No existing commands found in stream
[2026-10-18 14:09:51,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:09:51,891.891 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-18 14:09:54,638.638 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 14:09:54,641.641 INFO    ] Checking for system updates...
[2026-10-18 14:09:54,677.677 INFO    ] 200
[2026-10-18 14:09:54,680.680 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:09:54,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:09:54,735.735 INFO    ] No update needed
[2026-10-18 14:09:54,738.738 INFO    ] Checking for camera pi updates...
[2026-10-18 14:09:54,772.772 INFO    ] 200
[2026-10-18 14:09:54,774.774 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:09:54,815.815 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:10:04,831.831 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:10:04,871.871 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:10:04,882.882 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:10:04,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:10:04,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:10:04,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:10:06,937.937 INFO    ] ================================================
[2026-10-18 14:10:06,953.953 INFO    ] Launching Daemon at Sun Oct 18 14:10:06 IST 2026
[2026-10-18 14:10:06,964.964 INFO    ] ================================================
[2026-10-18 14:10:07,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:10:07
[2026-10-18 14:10:08,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:10:08,414.414 INFO    ] Initializing speech engine...
[2026-10-18 14:10:08,431.431 INFO    ] 2026-10-18 14:10:08
[2026-10-18 14:10:08,721.721 INFO    ] 2026-10-18 14:10:08
[2026-10-18 14:10:08,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:10:09,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:10:09,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:10:09,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:10:09,208.208 INFO    ] time= 18/10/2026 14:10:09
[2026-10-18 14:10:09,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:10:09,329.329 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:10:09,464.464 INFO    ] No existing commands found in stream
[2026-10-18 14:10:14,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:10:14,495.495 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-18 14:10:18,446.446 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 14:10:18,449.449 INFO    ] Checking for system updates...
[2026-10-18 14:10:18,485.485 INFO    ] 200
[2026-10-18 14:10:18,488.488 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:10:18,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:10:18,548.548 INFO    ] No update needed
[2026-10-18 14:10:18,551.551 INFO    ] Checking for camera pi updates...
[2026-10-18 14:10:18,585.585 INFO    ] 200
[2026-10-18 14:10:18,588.588 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:10:18,632.632 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:10:28,647.647 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:10:28,682.682 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:10:28,693.693 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:10:28,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:10:28,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:10:28,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:10:30,746.746 INFO    ] ================================================
[2026-10-18 14:10:30,761.761 INFO    ] Launching Daemon at Sun Oct 18 14:10:30 IST 2026
[2026-10-18 14:10:30,773.773 INFO    ] ================================================
[2026-10-18 14:10:31,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:10:31
[2026-10-18 14:10:31,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:10:32,228.228 INFO    ] Initializing speech engine...
[2026-10-18 14:10:32,252.252 INFO    ] 2026-10-18 14:10:32
[2026-10-18 14:10:32,532.532 INFO    ] 2026-10-18 14:10:32
[2026-10-18 14:10:32,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:10:32,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:10:32,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:10:33,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:10:33,121.121 INFO    ] time= 18/10/2026 14:10:33
[2026-10-18 14:10:33,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:10:33,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:10:33,306.306 INFO    ] No existing commands found in stream
[2026-10-18 14:10:38,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:10:38,340.340 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-18 14:10:40,498.498 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 14:10:40,501.501 INFO    ] Checking for system updates...
[2026-10-18 14:10:40,538.538 INFO    ] 200
[2026-10-18 14:10:40,541.541 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:10:40,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:10:40,597.597 INFO    ] No update needed
[2026-10-18 14:10:40,600.600 INFO    ] Checking for camera pi updates...
[2026-10-18 14:10:40,634.634 INFO    ] 200
[2026-10-18 14:10:40,637.637 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:10:40,682.682 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:10:50,697.697 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:10:50,736.736 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:10:50,748.748 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:10:50,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:10:50,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:10:50,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:10:52,802.802 INFO    ] ================================================
[2026-10-18 14:10:52,818.818 INFO    ] Launching Daemon at Sun Oct 18 14:10:52 IST 2026
[2026-10-18 14:10:52,829.829 INFO    ] ================================================
[2026-10-18 14:10:53,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:10:53
[2026-10-18 14:10:53,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:10:54,250.250 INFO    ] Initializing speech engine...
[2026-10-18 14:10:54,258.258 INFO    ] 2026-10-18 14:10:54
[2026-10-18 14:10:54,505.505 INFO    ] 2026-10-18 14:10:54
[2026-10-18 14:10:54,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:10:54,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:10:54,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:10:54,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:10:55,060.060 INFO    ] time= 18/10/2026 14:10:55
[2026-10-18 14:10:55,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:10:55,086.086 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:10:55,216.216 INFO    ] No existing commands found in stream
[2026-10-18 14:11:00,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:11:00,231.231 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-18 14:11:01,690.690 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:11:01,694.694 INFO    ] Checking for system updates...
[2026-10-18 14:11:01,793.793 INFO    ] 200
[2026-10-18 14:11:01,807.807 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:11:01,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:11:01,903.903 INFO    ] No update needed
[2026-10-18 14:11:01,924.924 INFO    ] Checking for camera pi updates...
[2026-10-18 14:11:01,987.987 INFO    ] 200
[2026-10-18 14:11:01,990.990 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:11:02,063.063 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:11:12,080.080 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:11:12,116.116 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:11:12,125.125 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:11:12,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:11:12,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:11:12,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:11:14,179.179 INFO    ] ================================================
[2026-10-18 14:11:14,195.195 INFO    ] Launching Daemon at Sun Oct 18 14:11:14 IST 2026
[2026-10-18 14:11:14,206.206 INFO    ] ================================================
[2026-10-18 14:11:14,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:11:14
[2026-10-18 14:11:15,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:11:15,824.824 INFO    ] Initializing speech engine...
[2026-10-18 14:11:15,834.834 INFO    ] 2026-10-18 14:11:15
[2026-10-18 14:11:16,137.137 INFO    ] 2026-10-18 14:11:16
[2026-10-18 14:11:16,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:11:16,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:11:16,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:11:16,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:11:16,657.657 INFO    ] time= 18/10/2026 14:11:16
[2026-10-18 14:11:16,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:11:16,688.688 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:11:16,826.826 INFO    ] No existing commands found in stream
[2026-10-18 14:11:21,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:11:21,855.855 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-18 14:11:25,707.707 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:11:25,710.710 INFO    ] Checking for system updates...
[2026-10-18 14:11:25,747.747 INFO    ] 200
[2026-10-18 14:11:25,749.749 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:11:25,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:11:25,814.814 INFO    ] No update needed
[2026-10-18 14:11:25,817.817 INFO    ] Checking for camera pi updates...
[2026-10-18 14:11:25,852.852 INFO    ] 200
[2026-10-18 14:11:25,854.854 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:11:25,895.895 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:11:35,911.911 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:11:35,951.951 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:11:35,962.962 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:11:35,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:11:35,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:11:35,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:11:38,016.016 INFO    ] ================================================
[2026-10-18 14:11:38,033.033 INFO    ] Launching Daemon at Sun Oct 18 14:11:38 IST 2026
[2026-10-18 14:11:38,044.044 INFO    ] ================================================
[2026-10-18 14:11:38,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:11:38
[2026-10-18 14:11:39,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:11:39,634.634 INFO    ] Initializing speech engine...
[2026-10-18 14:11:39,641.641 INFO    ] 2026-10-18 14:11:39
[2026-10-18 14:11:39,900.900 INFO    ] 2026-10-18 14:11:39
[2026-10-18 14:11:39,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:11:40,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:11:40,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:11:40,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:11:40,439.439 INFO    ] time= 18/10/2026 14:11:40
[2026-10-18 14:11:40,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:11:40,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:11:40,598.598 INFO    ] No existing commands found in stream
[2026-10-18 14:11:45,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:11:45,623.623 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-18 14:11:46,289.289 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:11:46,292.292 INFO    ] Checking for system updates...
[2026-10-18 14:11:46,327.327 INFO    ] 200
[2026-10-18 14:11:46,329.329 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:11:46,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:11:46,394.394 INFO    ] No update needed
[2026-10-18 14:11:46,397.397 INFO    ] Checking for camera pi updates...
[2026-10-18 14:11:46,430.430 INFO    ] 200
[2026-10-18 14:11:46,432.432 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:11:46,472.472 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:11:56,488.488 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:11:56,523.523 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:11:56,532.532 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:11:56,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:11:56,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:11:56,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:11:58,585.585 INFO    ] ================================================
[2026-10-18 14:11:58,602.602 INFO    ] Launching Daemon at Sun Oct 18 14:11:58 IST 2026
[2026-10-18 14:11:58,613.613 INFO    ] ================================================
[2026-10-18 14:11:59,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:11:59
[2026-10-18 14:11:59,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:12:00,035.035 INFO    ] Initializing speech engine...
[2026-10-18 14:12:00,043.043 INFO    ] 2026-10-18 14:12:00
[2026-10-18 14:12:00,294.294 INFO    ] 2026-10-18 14:12:00
[2026-10-18 14:12:00,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:12:00,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:12:00,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:12:00,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:12:00,851.851 INFO    ] time= 18/10/2026 14:12:00
[2026-10-18 14:12:00,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:12:00,869.869 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:12:01,021.021 INFO    ] No existing commands found in stream
[2026-10-18 14:12:06,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:12:06,046.046 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-18 14:12:08,524.524 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 14:12:08,527.527 INFO    ] Checking for system updates...
[2026-10-18 14:12:08,566.566 INFO    ] 200
[2026-10-18 14:12:08,569.569 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:12:08,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:12:08,629.629 INFO    ] No update needed
[2026-10-18 14:12:08,631.631 INFO    ] Checking for camera pi updates...
[2026-10-18 14:12:08,665.665 INFO    ] 200
[2026-10-18 14:12:08,667.667 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:12:08,712.712 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:12:18,727.727 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:12:18,761.761 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:12:18,771.771 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:12:18,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:12:18,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:12:18,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:12:20,822.822 INFO    ] ================================================
[2026-10-18 14:12:20,838.838 INFO    ] Launching Daemon at Sun Oct 18 14:12:20 IST 2026
[2026-10-18 14:12:20,850.850 INFO    ] ================================================
[2026-10-18 14:12:21,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:12:21
[2026-10-18 14:12:22,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:12:22,257.257 INFO    ] Initializing speech engine...
[2026-10-18 14:12:22,266.266 INFO    ] 2026-10-18 14:12:22
[2026-10-18 14:12:22,557.557 INFO    ] 2026-10-18 14:12:22
[2026-10-18 14:12:22,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:12:22,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:12:22,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:12:23,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:12:23,096.096 INFO    ] time= 18/10/2026 14:12:23
[2026-10-18 14:12:23,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:12:23,193.193 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:12:23,325.325 INFO    ] No existing commands found in stream
[2026-10-18 14:12:28,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:12:28,350.350 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-18 14:12:31,649.649 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:12:31,652.652 INFO    ] Checking for system updates...
[2026-10-18 14:12:31,691.691 INFO    ] 200
[2026-10-18 14:12:31,693.693 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:12:31,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:12:31,757.757 INFO    ] No update needed
[2026-10-18 14:12:31,760.760 INFO    ] Checking for camera pi updates...
[2026-10-18 14:12:31,800.800 INFO    ] 200
[2026-10-18 14:12:31,803.803 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:12:31,859.859 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:12:41,875.875 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:12:41,910.910 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:12:41,919.919 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:12:41,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:12:41,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:12:41,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:12:43,971.971 INFO    ] ================================================
[2026-10-18 14:12:43,986.986 INFO    ] Launching Daemon at Sun Oct 18 14:12:43 IST 2026
[2026-10-18 14:12:44,998.998 INFO    ] ================================================
[2026-10-18 14:12:44,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:12:44
[2026-10-18 14:12:45,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:12:45,448.448 INFO    ] Initializing speech engine...
[2026-10-18 14:12:45,456.456 INFO    ] 2026-10-18 14:12:45
[2026-10-18 14:12:45,708.708 INFO    ] 2026-10-18 14:12:45
[2026-10-18 14:12:45,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:12:45,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:12:45,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:12:46,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:12:46,254.254 INFO    ] time= 18/10/2026 14:12:46
[2026-10-18 14:12:46,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:12:46,275.275 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:12:46,407.407 INFO    ] No existing commands found in stream
[2026-10-18 14:12:51,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:12:51,423.423 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-18 14:12:52,008.008 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:12:52,010.010 INFO    ] Checking for system updates...
[2026-10-18 14:12:52,046.046 INFO    ] 200
[2026-10-18 14:12:52,049.049 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:12:52,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:12:52,102.102 INFO    ] No update needed
[2026-10-18 14:12:52,105.105 INFO    ] Checking for camera pi updates...
[2026-10-18 14:12:52,138.138 INFO    ] 200
[2026-10-18 14:12:52,140.140 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:12:52,185.185 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:13:02,199.199 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:13:02,244.244 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:13:02,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:13:02,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:13:02,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:13:02,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:13:04,319.319 INFO    ] ================================================
[2026-10-18 14:13:04,335.335 INFO    ] Launching Daemon at Sun Oct 18 14:13:04 IST 2026
[2026-10-18 14:13:04,346.346 INFO    ] ================================================
[2026-10-18 14:13:05,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:13:04
[2026-10-18 14:13:05,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:13:05,875.875 INFO    ] Initializing speech engine...
[2026-10-18 14:13:05,887.887 INFO    ] 2026-10-18 14:13:05
[2026-10-18 14:13:06,148.148 INFO    ] 2026-10-18 14:13:06
[2026-10-18 14:13:06,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:13:06,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:13:06,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:13:06,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:13:06,619.619 INFO    ] time= 18/10/2026 14:13:06
[2026-10-18 14:13:06,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:13:06,718.718 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:13:06,830.830 INFO    ] No existing commands found in stream
[2026-10-18 14:13:11,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:13:11,844.844 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-18 14:13:15,127.127 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:13:15,130.130 INFO    ] Checking for system updates...
[2026-10-18 14:13:15,169.169 INFO    ] 200
[2026-10-18 14:13:15,172.172 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:13:15,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:13:15,233.233 INFO    ] No update needed
[2026-10-18 14:13:15,236.236 INFO    ] Checking for camera pi updates...
[2026-10-18 14:13:15,273.273 INFO    ] 200
[2026-10-18 14:13:15,276.276 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:13:15,322.322 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:13:25,336.336 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:13:25,371.371 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:13:25,380.380 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:13:25,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:13:25,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:13:25,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:13:27,434.434 INFO    ] ================================================
[2026-10-18 14:13:27,450.450 INFO    ] Launching Daemon at Sun Oct 18 14:13:27 IST 2026
[2026-10-18 14:13:27,461.461 INFO    ] ================================================
[2026-10-18 14:13:28,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:13:28
[2026-10-18 14:13:28,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:13:28,873.873 INFO    ] Initializing speech engine...
[2026-10-18 14:13:28,880.880 INFO    ] 2026-10-18 14:13:28
[2026-10-18 14:13:29,179.179 INFO    ] 2026-10-18 14:13:29
[2026-10-18 14:13:29,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:13:29,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:13:29,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:13:29,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:13:29,604.604 INFO    ] time= 18/10/2026 14:13:29
[2026-10-18 14:13:29,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:13:29,617.617 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:13:29,758.758 INFO    ] No existing commands found in stream
[2026-10-18 14:13:34,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:13:34,787.787 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-18 14:13:39,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 14:13:39,320.320 INFO    ] Checking for system updates...
[2026-10-18 14:13:39,356.356 INFO    ] 200
[2026-10-18 14:13:39,359.359 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:13:39,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:13:39,419.419 INFO    ] No update needed
[2026-10-18 14:13:39,422.422 INFO    ] Checking for camera pi updates...
[2026-10-18 14:13:39,470.470 INFO    ] 200
[2026-10-18 14:13:39,473.473 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:13:39,517.517 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:13:49,531.531 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:13:49,566.566 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:13:49,575.575 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:13:49,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:13:49,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:13:49,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:13:51,630.630 INFO    ] ================================================
[2026-10-18 14:13:51,646.646 INFO    ] Launching Daemon at Sun Oct 18 14:13:51 IST 2026
[2026-10-18 14:13:51,658.658 INFO    ] ================================================
[2026-10-18 14:13:52,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:13:52
[2026-10-18 14:13:52,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:13:53,114.114 INFO    ] Initializing speech engine...
[2026-10-18 14:13:53,129.129 INFO    ] 2026-10-18 14:13:53
[2026-10-18 14:13:53,398.398 INFO    ] 2026-10-18 14:13:53
[2026-10-18 14:13:53,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:13:53,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:13:53,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:13:53,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:13:53,967.967 INFO    ] time= 18/10/2026 14:13:53
[2026-10-18 14:13:53,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:13:53,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:13:54,128.128 INFO    ] No existing commands found in stream
[2026-10-18 14:13:59,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:13:59,143.143 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-18 14:14:01,612.612 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:14:01,615.615 INFO    ] Checking for system updates...
[2026-10-18 14:14:01,652.652 INFO    ] 200
[2026-10-18 14:14:01,654.654 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:14:01,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:14:01,714.714 INFO    ] No update needed
[2026-10-18 14:14:01,717.717 INFO    ] Checking for camera pi updates...
[2026-10-18 14:14:01,751.751 INFO    ] 200
[2026-10-18 14:14:01,767.767 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:14:01,869.869 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:14:11,892.892 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:14:11,931.931 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:14:11,942.942 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:14:11,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:14:11,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:14:11,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:14:14,997.997 INFO    ] ================================================
[2026-10-18 14:14:14,013.013 INFO    ] Launching Daemon at Sun Oct 18 14:14:14 IST 2026
[2026-10-18 14:14:14,026.026 INFO    ] ================================================
[2026-10-18 14:14:14,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:14:14
[2026-10-18 14:14:15,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:14:15,466.466 INFO    ] Initializing speech engine...
[2026-10-18 14:14:15,475.475 INFO    ] 2026-10-18 14:14:15
[2026-10-18 14:14:15,726.726 INFO    ] 2026-10-18 14:14:15
[2026-10-18 14:14:15,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:14:15,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:14:16,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:14:16,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:14:16,190.190 INFO    ] time= 18/10/2026 14:14:16
[2026-10-18 14:14:16,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:14:16,288.288 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:14:16,419.419 INFO    ] No existing commands found in stream
[2026-10-18 14:14:21,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:14:21,454.454 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-18 14:14:22,033.033 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 14:14:22,036.036 INFO    ] Checking for system updates...
[2026-10-18 14:14:22,072.072 INFO    ] 200
[2026-10-18 14:14:22,075.075 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:14:22,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:14:22,131.131 INFO    ] No update needed
[2026-10-18 14:14:22,134.134 INFO    ] Checking for camera pi updates...
[2026-10-18 14:14:22,170.170 INFO    ] 200
[2026-10-18 14:14:22,173.173 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:14:22,217.217 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:14:32,233.233 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:14:32,271.271 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:14:32,281.281 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:14:32,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:14:32,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:14:32,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:14:34,337.337 INFO    ] ================================================
[2026-10-18 14:14:34,352.352 INFO    ] Launching Daemon at Sun Oct 18 14:14:34 IST 2026
[2026-10-18 14:14:34,363.363 INFO    ] ================================================
[2026-10-18 14:14:34,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:14:34
[2026-10-18 14:14:35,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:14:35,811.811 INFO    ] Initializing speech engine...
[2026-10-18 14:14:35,817.817 INFO    ] 2026-10-18 14:14:35
[2026-10-18 14:14:36,097.097 INFO    ] 2026-10-18 14:14:36
[2026-10-18 14:14:36,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:14:36,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:14:36,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:14:36,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:14:36,544.544 INFO    ] time= 18/10/2026 14:14:36
[2026-10-18 14:14:36,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:14:36,583.583 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:14:36,728.728 INFO    ] No existing commands found in stream
[2026-10-18 14:14:41,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:14:41,759.759 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-18 14:14:43,950.950 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 14:14:43,953.953 INFO    ] Checking for system updates...
[2026-10-18 14:14:43,992.992 INFO    ] 200
[2026-10-18 14:14:43,995.995 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:14:44,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:14:44,057.057 INFO    ] No update needed
[2026-10-18 14:14:44,059.059 INFO    ] Checking for camera pi updates...
[2026-10-18 14:14:44,093.093 INFO    ] 200
[2026-10-18 14:14:44,096.096 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:14:44,142.142 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:14:54,157.157 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:14:54,192.192 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:14:54,202.202 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:14:54,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:14:54,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:14:54,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:14:56,255.255 INFO    ] ================================================
[2026-10-18 14:14:56,270.270 INFO    ] Launching Daemon at Sun Oct 18 14:14:56 IST 2026
[2026-10-18 14:14:56,281.281 INFO    ] ================================================
[2026-10-18 14:14:56,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:14:56
[2026-10-18 14:14:57,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:14:57,741.741 INFO    ] Initializing speech engine...
[2026-10-18 14:14:57,753.753 INFO    ] 2026-10-18 14:14:57
[2026-10-18 14:14:58,015.015 INFO    ] 2026-10-18 14:14:58
[2026-10-18 14:14:58,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:14:58,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:14:58,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:14:58,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:14:58,567.567 INFO    ] time= 18/10/2026 14:14:58
[2026-10-18 14:14:58,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:14:58,594.594 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:14:58,713.713 INFO    ] No existing commands found in stream
[2026-10-18 14:15:03,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:15:03,738.738 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-18 14:15:06,960.960 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 14:15:06,963.963 INFO    ] Checking for system updates...
[2026-10-18 14:15:06,999.999 INFO    ] 200
[2026-10-18 14:15:07,002.002 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:15:07,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:15:07,064.064 INFO    ] No update needed
[2026-10-18 14:15:07,067.067 INFO    ] Checking for camera pi updates...
[2026-10-18 14:15:07,101.101 INFO    ] 200
[2026-10-18 14:15:07,103.103 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:15:07,148.148 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:15:17,164.164 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:15:17,199.199 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:15:17,209.209 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:15:17,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:15:17,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:15:17,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:15:19,264.264 INFO    ] ================================================
[2026-10-18 14:15:19,279.279 INFO    ] Launching Daemon at Sun Oct 18 14:15:19 IST 2026
[2026-10-18 14:15:19,290.290 INFO    ] ================================================
[2026-10-18 14:15:19,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:15:19
[2026-10-18 14:15:20,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:15:20,744.744 INFO    ] Initializing speech engine...
[2026-10-18 14:15:20,768.768 INFO    ] 2026-10-18 14:15:20
[2026-10-18 14:15:21,053.053 INFO    ] 2026-10-18 14:15:21
[2026-10-18 14:15:21,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:15:21,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:15:21,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:15:21,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:15:21,602.602 INFO    ] time= 18/10/2026 14:15:21
[2026-10-18 14:15:21,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:15:21,652.652 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:15:21,788.788 INFO    ] No existing commands found in stream
[2026-10-18 14:15:26,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:15:26,807.807 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-18 14:15:30,882.882 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:15:30,885.885 INFO    ] Checking for system updates...
[2026-10-18 14:15:30,924.924 INFO    ] 200
[2026-10-18 14:15:30,927.927 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:15:30,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:15:30,983.983 INFO    ] No update needed
[2026-10-18 14:15:30,986.986 INFO    ] Checking for camera pi updates...
[2026-10-18 14:15:31,026.026 INFO    ] 200
[2026-10-18 14:15:31,029.029 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:15:31,077.077 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:15:41,091.091 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:15:41,132.132 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:15:41,144.144 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:15:41,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:15:41,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:15:41,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:15:43,199.199 INFO    ] ================================================
[2026-10-18 14:15:43,214.214 INFO    ] Launching Daemon at Sun Oct 18 14:15:43 IST 2026
[2026-10-18 14:15:43,225.225 INFO    ] ================================================
[2026-10-18 14:15:43,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:15:43
[2026-10-18 14:15:44,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:15:44,896.896 INFO    ] Initializing speech engine...
[2026-10-18 14:15:44,902.902 INFO    ] 2026-10-18 14:15:44
[2026-10-18 14:15:45,203.203 INFO    ] 2026-10-18 14:15:45
[2026-10-18 14:15:45,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:15:45,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:15:45,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:15:45,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:15:45,757.757 INFO    ] time= 18/10/2026 14:15:45
[2026-10-18 14:15:45,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:15:45,804.804 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:15:45,937.937 INFO    ] No existing commands found in stream
[2026-10-18 14:15:50,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:15:50,971.971 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-18 14:15:54,006.006 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 14:15:54,009.009 INFO    ] Checking for system updates...
[2026-10-18 14:15:54,050.050 INFO    ] 200
[2026-10-18 14:15:54,052.052 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:15:54,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:15:54,115.115 INFO    ] No update needed
[2026-10-18 14:15:54,118.118 INFO    ] Checking for camera pi updates...
[2026-10-18 14:15:54,154.154 INFO    ] 200
[2026-10-18 14:15:54,157.157 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:15:54,202.202 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:16:04,214.214 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:16:04,250.250 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:16:04,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:16:04,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:16:04,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:16:04,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:16:06,312.312 INFO    ] ================================================
[2026-10-18 14:16:06,328.328 INFO    ] Launching Daemon at Sun Oct 18 14:16:06 IST 2026
[2026-10-18 14:16:06,339.339 INFO    ] ================================================
[2026-10-18 14:16:06,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:16:06
[2026-10-18 14:16:07,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:16:07,749.749 INFO    ] Initializing speech engine...
[2026-10-18 14:16:07,755.755 INFO    ] 2026-10-18 14:16:07
[2026-10-18 14:16:08,053.053 INFO    ] 2026-10-18 14:16:08
[2026-10-18 14:16:08,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:16:08,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:16:08,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:16:08,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:16:08,470.470 INFO    ] time= 18/10/2026 14:16:08
[2026-10-18 14:16:08,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:16:08,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:16:08,624.624 INFO    ] No existing commands found in stream
[2026-10-18 14:16:13,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:16:13,652.652 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-18 14:16:15,699.699 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 14:16:15,702.702 INFO    ] Checking for system updates...
[2026-10-18 14:16:15,738.738 INFO    ] 200
[2026-10-18 14:16:15,740.740 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:16:15,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:16:15,802.802 INFO    ] No update needed
[2026-10-18 14:16:15,804.804 INFO    ] Checking for camera pi updates...
[2026-10-18 14:16:15,837.837 INFO    ] 200
[2026-10-18 14:16:15,840.840 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:16:15,889.889 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:16:25,903.903 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:16:25,938.938 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:16:25,948.948 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:16:25,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:16:25,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:16:25,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:16:28,000.000 INFO    ] ================================================
[2026-10-18 14:16:28,015.015 INFO    ] Launching Daemon at Sun Oct 18 14:16:28 IST 2026
[2026-10-18 14:16:28,026.026 INFO    ] ================================================
[2026-10-18 14:16:28,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:16:28
[2026-10-18 14:16:29,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:16:29,428.428 INFO    ] Initializing speech engine...
[2026-10-18 14:16:29,443.443 INFO    ] 2026-10-18 14:16:29
[2026-10-18 14:16:29,710.710 INFO    ] 2026-10-18 14:16:29
[2026-10-18 14:16:29,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:16:29,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:16:30,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:16:30,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:16:30,276.276 INFO    ] time= 18/10/2026 14:16:30
[2026-10-18 14:16:30,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:16:30,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:16:30,437.437 INFO    ] No existing commands found in stream
[2026-10-18 14:16:35,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:16:35,458.458 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-18 14:16:38,913.913 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:16:38,916.916 INFO    ] Checking for system updates...
[2026-10-18 14:16:38,952.952 INFO    ] 200
[2026-10-18 14:16:38,954.954 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:16:39,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:16:39,009.009 INFO    ] No update needed
[2026-10-18 14:16:39,011.011 INFO    ] Checking for camera pi updates...
[2026-10-18 14:16:39,045.045 INFO    ] 200
[2026-10-18 14:16:39,048.048 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:16:39,089.089 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:16:49,103.103 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:16:49,139.139 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:16:49,148.148 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:16:49,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:16:49,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:16:49,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:16:51,200.200 INFO    ] ================================================
[2026-10-18 14:16:51,215.215 INFO    ] Launching Daemon at Sun Oct 18 14:16:51 IST 2026
[2026-10-18 14:16:51,226.226 INFO    ] ================================================
[2026-10-18 14:16:51,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:16:51
[2026-10-18 14:16:52,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:16:52,663.663 INFO    ] Initializing speech engine...
[2026-10-18 14:16:52,672.672 INFO    ] 2026-10-18 14:16:52
[2026-10-18 14:16:52,919.919 INFO    ] 2026-10-18 14:16:52
[2026-10-18 14:16:52,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:16:53,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:16:53,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:16:53,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:16:53,475.475 INFO    ] time= 18/10/2026 14:16:53
[2026-10-18 14:16:53,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:16:53,498.498 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:16:53,639.639 INFO    ] No existing commands found in stream
[2026-10-18 14:16:58,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:16:58,668.668 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-18 14:17:01,881.881 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:17:01,885.885 INFO    ] Checking for system updates...
[2026-10-18 14:17:01,936.936 INFO    ] 200
[2026-10-18 14:17:01,940.940 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:17:02,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:17:02,017.017 INFO    ] No update needed
[2026-10-18 14:17:02,021.021 INFO    ] Checking for camera pi updates...
[2026-10-18 14:17:02,059.059 INFO    ] 200
[2026-10-18 14:17:02,063.063 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:17:02,113.113 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:17:12,134.134 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:17:12,170.170 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:17:12,180.180 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:17:12,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:17:12,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:17:12,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:17:14,234.234 INFO    ] ================================================
[2026-10-18 14:17:14,250.250 INFO    ] Launching Daemon at Sun Oct 18 14:17:14 IST 2026
[2026-10-18 14:17:14,261.261 INFO    ] ================================================
[2026-10-18 14:17:14,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:17:14
[2026-10-18 14:17:15,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:17:15,695.695 INFO    ] Initializing speech engine...
[2026-10-18 14:17:15,703.703 INFO    ] 2026-10-18 14:17:15
[2026-10-18 14:17:15,961.961 INFO    ] 2026-10-18 14:17:15
[2026-10-18 14:17:15,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:17:16,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:17:16,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:17:16,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:17:16,508.508 INFO    ] time= 18/10/2026 14:17:16
[2026-10-18 14:17:16,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:17:16,532.532 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:17:16,664.664 INFO    ] No existing commands found in stream
[2026-10-18 14:17:21,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:17:21,690.690 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-18 14:17:23,725.725 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:17:23,728.728 INFO    ] Checking for system updates...
[2026-10-18 14:17:23,770.770 INFO    ] 200
[2026-10-18 14:17:23,773.773 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:17:23,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:17:23,837.837 INFO    ] No update needed
[2026-10-18 14:17:23,839.839 INFO    ] Checking for camera pi updates...
[2026-10-18 14:17:23,873.873 INFO    ] 200
[2026-10-18 14:17:23,875.875 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:17:23,922.922 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:17:33,937.937 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:17:33,974.974 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:17:33,984.984 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:17:33,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:17:33,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:17:33,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:17:36,040.040 INFO    ] ================================================
[2026-10-18 14:17:36,056.056 INFO    ] Launching Daemon at Sun Oct 18 14:17:36 IST 2026
[2026-10-18 14:17:36,066.066 INFO    ] ================================================
[2026-10-18 14:17:36,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:17:36
[2026-10-18 14:17:37,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:17:37,521.521 INFO    ] Initializing speech engine...
[2026-10-18 14:17:37,531.531 INFO    ] 2026-10-18 14:17:37
[2026-10-18 14:17:37,792.792 INFO    ] 2026-10-18 14:17:37
[2026-10-18 14:17:37,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:17:38,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:17:38,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:17:38,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:17:38,337.337 INFO    ] time= 18/10/2026 14:17:38
[2026-10-18 14:17:38,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:17:38,361.361 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:17:38,496.496 INFO    ] No existing commands found in stream
[2026-10-18 14:17:43,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:17:43,529.529 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-18 14:17:45,742.742 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 14:17:45,744.744 INFO    ] Checking for system updates...
[2026-10-18 14:17:45,788.788 INFO    ] 200
[2026-10-18 14:17:45,790.790 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:17:45,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:17:45,852.852 INFO    ] No update needed
[2026-10-18 14:17:45,855.855 INFO    ] Checking for camera pi updates...
[2026-10-18 14:17:45,890.890 INFO    ] 200
[2026-10-18 14:17:45,893.893 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:17:45,936.936 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:17:55,952.952 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:17:55,993.993 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:17:56,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:17:56,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:17:56,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:17:56,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:17:58,066.066 INFO    ] ================================================
[2026-10-18 14:17:58,084.084 INFO    ] Launching Daemon at Sun Oct 18 14:17:58 IST 2026
[2026-10-18 14:17:58,096.096 INFO    ] ================================================
[2026-10-18 14:17:58,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:17:58
[2026-10-18 14:17:59,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:17:59,532.532 INFO    ] Initializing speech engine...
[2026-10-18 14:17:59,539.539 INFO    ] 2026-10-18 14:17:59
[2026-10-18 14:17:59,842.842 INFO    ] 2026-10-18 14:17:59
[2026-10-18 14:17:59,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:18:00,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:18:00,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:18:00,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:18:00,278.278 INFO    ] time= 18/10/2026 14:18:00
[2026-10-18 14:18:00,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:18:00,291.291 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:18:00,415.415 INFO    ] No existing commands found in stream
[2026-10-18 14:18:05,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:18:05,448.448 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-18 14:18:09,344.344 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:18:09,348.348 INFO    ] Checking for system updates...
[2026-10-18 14:18:09,388.388 INFO    ] 200
[2026-10-18 14:18:09,391.391 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:18:09,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:18:09,449.449 INFO    ] No update needed
[2026-10-18 14:18:09,451.451 INFO    ] Checking for camera pi updates...
[2026-10-18 14:18:09,490.490 INFO    ] 200
[2026-10-18 14:18:09,492.492 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:18:09,543.543 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:18:19,558.558 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:18:19,592.592 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:18:19,602.602 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:18:19,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:18:19,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:18:19,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:18:21,656.656 INFO    ] ================================================
[2026-10-18 14:18:21,672.672 INFO    ] Launching Daemon at Sun Oct 18 14:18:21 IST 2026
[2026-10-18 14:18:21,683.683 INFO    ] ================================================
[2026-10-18 14:18:22,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:18:22
[2026-10-18 14:18:22,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:18:23,101.101 INFO    ] Initializing speech engine...
[2026-10-18 14:18:23,115.115 INFO    ] 2026-10-18 14:18:23
[2026-10-18 14:18:23,400.400 INFO    ] 2026-10-18 14:18:23
[2026-10-18 14:18:23,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:18:23,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:18:23,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:18:23,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:18:23,823.823 INFO    ] time= 18/10/2026 14:18:23
[2026-10-18 14:18:23,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:18:23,836.836 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:18:23,976.976 INFO    ] No existing commands found in stream
[2026-10-18 14:18:29,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:18:29,009.009 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-18 14:18:30,460.460 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:18:30,462.462 INFO    ] Checking for system updates...
[2026-10-18 14:18:30,502.502 INFO    ] 200
[2026-10-18 14:18:30,504.504 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:18:30,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:18:30,565.565 INFO    ] No update needed
[2026-10-18 14:18:30,568.568 INFO    ] Checking for camera pi updates...
[2026-10-18 14:18:30,602.602 INFO    ] 200
[2026-10-18 14:18:30,604.604 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:18:30,652.652 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:18:40,668.668 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:18:40,709.709 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:18:40,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:18:40,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:18:40,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:18:40,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:18:42,771.771 INFO    ] ================================================
[2026-10-18 14:18:42,787.787 INFO    ] Launching Daemon at Sun Oct 18 14:18:42 IST 2026
[2026-10-18 14:18:42,798.798 INFO    ] ================================================
[2026-10-18 14:18:43,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:18:43
[2026-10-18 14:18:44,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:18:44,384.384 INFO    ] Initializing speech engine...
[2026-10-18 14:18:44,397.397 INFO    ] 2026-10-18 14:18:44
[2026-10-18 14:18:44,668.668 INFO    ] 2026-10-18 14:18:44
[2026-10-18 14:18:44,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:18:45,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:18:45,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:18:45,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:18:45,245.245 INFO    ] time= 18/10/2026 14:18:45
[2026-10-18 14:18:45,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:18:45,296.296 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:18:45,421.421 INFO    ] No existing commands found in stream
[2026-10-18 14:18:50,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:18:50,450.450 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-18 14:18:52,214.214 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 14:18:52,218.218 INFO    ] Checking for system updates...
[2026-10-18 14:18:52,264.264 INFO    ] 200
[2026-10-18 14:18:52,267.267 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:18:52,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:18:52,354.354 INFO    ] No update needed
[2026-10-18 14:18:52,357.357 INFO    ] Checking for camera pi updates...
[2026-10-18 14:18:52,409.409 INFO    ] 200
[2026-10-18 14:18:52,412.412 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:18:52,474.474 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:19:02,489.489 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:19:02,535.535 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:19:02,549.549 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:19:02,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:19:02,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:19:02,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:19:04,612.612 INFO    ] ================================================
[2026-10-18 14:19:04,627.627 INFO    ] Launching Daemon at Sun Oct 18 14:19:04 IST 2026
[2026-10-18 14:19:04,639.639 INFO    ] ================================================
[2026-10-18 14:19:05,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:19:05
[2026-10-18 14:19:05,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:19:06,104.104 INFO    ] Initializing speech engine...
[2026-10-18 14:19:06,109.109 INFO    ] 2026-10-18 14:19:06
[2026-10-18 14:19:06,384.384 INFO    ] 2026-10-18 14:19:06
[2026-10-18 14:19:06,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:19:06,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:19:06,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:19:06,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:19:06,924.924 INFO    ] time= 18/10/2026 14:19:06
[2026-10-18 14:19:06,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:19:06,948.948 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:19:07,073.073 INFO    ] No existing commands found in stream
[2026-10-18 14:19:12,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:19:12,093.093 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-18 14:19:15,629.629 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 14:19:15,631.631 INFO    ] Checking for system updates...
[2026-10-18 14:19:15,669.669 INFO    ] 200
[2026-10-18 14:19:15,672.672 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:19:15,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:19:15,726.726 INFO    ] No update needed
[2026-10-18 14:19:15,729.729 INFO    ] Checking for camera pi updates...
[2026-10-18 14:19:15,762.762 INFO    ] 200
[2026-10-18 14:19:15,764.764 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:19:15,805.805 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:19:25,822.822 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:19:25,861.861 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:19:25,871.871 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:19:25,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:19:25,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:19:25,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:19:27,929.929 INFO    ] ================================================
[2026-10-18 14:19:27,946.946 INFO    ] Launching Daemon at Sun Oct 18 14:19:27 IST 2026
[2026-10-18 14:19:27,957.957 INFO    ] ================================================
[2026-10-18 14:19:28,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:19:28
[2026-10-18 14:19:29,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:19:29,394.394 INFO    ] Initializing speech engine...
[2026-10-18 14:19:29,408.408 INFO    ] 2026-10-18 14:19:29
[2026-10-18 14:19:29,686.686 INFO    ] 2026-10-18 14:19:29
[2026-10-18 14:19:29,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:19:29,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:19:29,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:19:30,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:19:30,218.218 INFO    ] time= 18/10/2026 14:19:30
[2026-10-18 14:19:30,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:19:30,299.299 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:19:30,380.380 INFO    ] No existing commands found in stream
[2026-10-18 14:19:35,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:19:35,419.419 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-18 14:19:36,587.587 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:19:36,589.589 INFO    ] Checking for system updates...
[2026-10-18 14:19:36,627.627 INFO    ] 200
[2026-10-18 14:19:36,629.629 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:19:36,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:19:36,684.684 INFO    ] No update needed
[2026-10-18 14:19:36,687.687 INFO    ] Checking for camera pi updates...
[2026-10-18 14:19:36,720.720 INFO    ] 200
[2026-10-18 14:19:36,723.723 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:19:36,763.763 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:19:46,778.778 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:19:46,813.813 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:19:46,822.822 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:19:46,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:19:46,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:19:46,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:19:48,879.879 INFO    ] ================================================
[2026-10-18 14:19:48,894.894 INFO    ] Launching Daemon at Sun Oct 18 14:19:48 IST 2026
[2026-10-18 14:19:48,905.905 INFO    ] ================================================
[2026-10-18 14:19:49,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:19:49
[2026-10-18 14:19:50,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:19:50,305.305 INFO    ] Initializing speech engine...
[2026-10-18 14:19:50,310.310 INFO    ] 2026-10-18 14:19:50
[2026-10-18 14:19:50,589.589 INFO    ] 2026-10-18 14:19:50
[2026-10-18 14:19:50,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:19:50,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:19:50,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:19:51,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:19:51,106.106 INFO    ] time= 18/10/2026 14:19:51
[2026-10-18 14:19:51,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:19:51,162.162 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:19:51,309.309 INFO    ] No existing commands found in stream
[2026-10-18 14:19:56,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:19:56,321.321 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-18 14:19:59,492.492 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:19:59,494.494 INFO    ] Checking for system updates...
[2026-10-18 14:19:59,532.532 INFO    ] 200
[2026-10-18 14:19:59,535.535 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:19:59,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:19:59,594.594 INFO    ] No update needed
[2026-10-18 14:19:59,598.598 INFO    ] Checking for camera pi updates...
[2026-10-18 14:19:59,631.631 INFO    ] 200
[2026-10-18 14:19:59,634.634 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:19:59,678.678 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:20:09,694.694 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:20:09,735.735 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:20:09,746.746 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:20:09,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:20:09,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:20:09,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:20:11,804.804 INFO    ] ================================================
[2026-10-18 14:20:11,821.821 INFO    ] Launching Daemon at Sun Oct 18 14:20:11 IST 2026
[2026-10-18 14:20:11,833.833 INFO    ] ================================================
[2026-10-18 14:20:12,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:20:12
[2026-10-18 14:20:13,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:20:13,283.283 INFO    ] Initializing speech engine...
[2026-10-18 14:20:13,309.309 INFO    ] 2026-10-18 14:20:13
[2026-10-18 14:20:13,602.602 INFO    ] 2026-10-18 14:20:13
[2026-10-18 14:20:13,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:20:13,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:20:13,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:20:14,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:20:14,029.029 INFO    ] time= 18/10/2026 14:20:14
[2026-10-18 14:20:14,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:20:14,045.045 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:20:14,181.181 INFO    ] No existing commands found in stream
[2026-10-18 14:20:19,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:20:19,214.214 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-18 14:20:22,800.800 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 14:20:22,803.803 INFO    ] Checking for system updates...
[2026-10-18 14:20:22,842.842 INFO    ] 200
[2026-10-18 14:20:22,845.845 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:20:22,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:20:22,906.906 INFO    ] No update needed
[2026-10-18 14:20:22,908.908 INFO    ] Checking for camera pi updates...
[2026-10-18 14:20:22,946.946 INFO    ] 200
[2026-10-18 14:20:22,949.949 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:20:22,996.996 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:20:33,010.010 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:20:33,050.050 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:20:33,061.061 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:20:33,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:20:33,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:20:33,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:20:35,119.119 INFO    ] ================================================
[2026-10-18 14:20:35,135.135 INFO    ] Launching Daemon at Sun Oct 18 14:20:35 IST 2026
[2026-10-18 14:20:35,146.146 INFO    ] ================================================
[2026-10-18 14:20:35,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:20:35
[2026-10-18 14:20:36,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:20:36,563.563 INFO    ] Initializing speech engine...
[2026-10-18 14:20:36,579.579 INFO    ] 2026-10-18 14:20:36
[2026-10-18 14:20:36,867.867 INFO    ] 2026-10-18 14:20:36
[2026-10-18 14:20:36,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:20:37,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:20:37,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:20:37,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:20:37,296.296 INFO    ] time= 18/10/2026 14:20:37
[2026-10-18 14:20:37,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:20:37,351.351 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:20:37,494.494 INFO    ] No existing commands found in stream
[2026-10-18 14:20:42,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:20:42,533.533 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-18 14:20:46,505.505 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:20:46,507.507 INFO    ] Checking for system updates...
[2026-10-18 14:20:46,547.547 INFO    ] 200
[2026-10-18 14:20:46,550.550 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:20:46,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:20:46,606.606 INFO    ] No update needed
[2026-10-18 14:20:46,610.610 INFO    ] Checking for camera pi updates...
[2026-10-18 14:20:46,649.649 INFO    ] 200
[2026-10-18 14:20:46,652.652 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:20:46,699.699 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:20:56,718.718 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:20:56,753.753 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:20:56,763.763 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:20:56,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:20:56,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:20:56,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:20:58,816.816 INFO    ] ================================================
[2026-10-18 14:20:58,832.832 INFO    ] Launching Daemon at Sun Oct 18 14:20:58 IST 2026
[2026-10-18 14:20:58,844.844 INFO    ] ================================================
[2026-10-18 14:20:59,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:20:59
[2026-10-18 14:21:00,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:21:00,513.513 INFO    ] Initializing speech engine...
[2026-10-18 14:21:00,526.526 INFO    ] 2026-10-18 14:21:00
[2026-10-18 14:21:00,841.841 INFO    ] 2026-10-18 14:21:00
[2026-10-18 14:21:00,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:21:01,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:21:01,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:21:01,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:21:01,364.364 INFO    ] time= 18/10/2026 14:21:01
[2026-10-18 14:21:01,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:21:01,411.411 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:21:01,531.531 INFO    ] No existing commands found in stream
[2026-10-18 14:21:06,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:21:06,575.575 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-18 14:21:07,657.657 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:21:07,661.661 INFO    ] Checking for system updates...
[2026-10-18 14:21:07,698.698 INFO    ] 200
[2026-10-18 14:21:07,701.701 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:21:07,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:21:07,766.766 INFO    ] No update needed
[2026-10-18 14:21:07,769.769 INFO    ] Checking for camera pi updates...
[2026-10-18 14:21:07,809.809 INFO    ] 200
[2026-10-18 14:21:07,812.812 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:21:07,870.870 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:21:17,886.886 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:21:17,921.921 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:21:17,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:21:17,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:21:17,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:21:17,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:21:19,986.986 INFO    ] ================================================
[2026-10-18 14:21:20,002.002 INFO    ] Launching Daemon at Sun Oct 18 14:21:19 IST 2026
[2026-10-18 14:21:20,013.013 INFO    ] ================================================
[2026-10-18 14:21:20,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:21:20
[2026-10-18 14:21:21,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:21:21,689.689 INFO    ] Initializing speech engine...
[2026-10-18 14:21:21,703.703 INFO    ] 2026-10-18 14:21:21
[2026-10-18 14:21:21,991.991 INFO    ] 2026-10-18 14:21:21
[2026-10-18 14:21:22,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:21:22,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:21:22,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:21:22,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:21:22,555.555 INFO    ] time= 18/10/2026 14:21:22
[2026-10-18 14:21:22,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:21:22,594.594 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:21:22,737.737 INFO    ] No existing commands found in stream
[2026-10-18 14:21:27,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:21:27,767.767 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-18 14:21:30,029.029 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:21:30,032.032 INFO    ] Checking for system updates...
[2026-10-18 14:21:30,070.070 INFO    ] 200
[2026-10-18 14:21:30,073.073 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:21:30,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:21:30,130.130 INFO    ] No update needed
[2026-10-18 14:21:30,133.133 INFO    ] Checking for camera pi updates...
[2026-10-18 14:21:30,172.172 INFO    ] 200
[2026-10-18 14:21:30,175.175 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:21:30,217.217 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:21:40,233.233 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73dae150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:21:40,274.274 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:21:40,286.286 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:21:40,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:21:40,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:21:40,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:21:42,343.343 INFO    ] ================================================
[2026-10-18 14:21:42,358.358 INFO    ] Launching Daemon at Sun Oct 18 14:21:42 IST 2026
[2026-10-18 14:21:42,370.370 INFO    ] ================================================
[2026-10-18 14:21:42,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:21:42
[2026-10-18 14:21:43,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:21:43,817.817 INFO    ] Initializing speech engine...
[2026-10-18 14:21:43,837.837 INFO    ] 2026-10-18 14:21:43
[2026-10-18 14:21:44,085.085 INFO    ] 2026-10-18 14:21:44
[2026-10-18 14:21:44,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:21:44,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:21:44,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:21:44,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:21:44,511.511 INFO    ] time= 18/10/2026 14:21:44
[2026-10-18 14:21:44,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:21:44,516.516 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:21:44,654.654 INFO    ] No existing commands found in stream
[2026-10-18 14:21:49,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:21:49,682.682 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-18 14:21:52,725.725 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 14:21:52,728.728 INFO    ] Checking for system updates...
[2026-10-18 14:21:52,770.770 INFO    ] 200
[2026-10-18 14:21:52,773.773 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:21:52,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:21:52,829.829 INFO    ] No update needed
[2026-10-18 14:21:52,831.831 INFO    ] Checking for camera pi updates...
[2026-10-18 14:21:52,869.869 INFO    ] 200
[2026-10-18 14:21:52,871.871 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:21:52,911.911 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:22:02,926.926 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:22:02,964.964 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:22:02,975.975 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:22:02,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:22:02,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:22:02,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:22:05,031.031 INFO    ] ================================================
[2026-10-18 14:22:05,047.047 INFO    ] Launching Daemon at Sun Oct 18 14:22:05 IST 2026
[2026-10-18 14:22:05,058.058 INFO    ] ================================================
[2026-10-18 14:22:05,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:22:05
[2026-10-18 14:22:06,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:22:06,511.511 INFO    ] Initializing speech engine...
[2026-10-18 14:22:06,527.527 INFO    ] 2026-10-18 14:22:06
[2026-10-18 14:22:06,816.816 INFO    ] 2026-10-18 14:22:06
[2026-10-18 14:22:06,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:22:07,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:22:07,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:22:07,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:22:07,219.219 INFO    ] time= 18/10/2026 14:22:07
[2026-10-18 14:22:07,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:22:07,264.264 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:22:07,351.351 INFO    ] No existing commands found in stream
[2026-10-18 14:22:12,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:22:12,369.369 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-18 14:22:14,000.000 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:22:14,002.002 INFO    ] Checking for system updates...
[2026-10-18 14:22:14,039.039 INFO    ] 200
[2026-10-18 14:22:14,041.041 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:22:14,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:22:14,106.106 INFO    ] No update needed
[2026-10-18 14:22:14,108.108 INFO    ] Checking for camera pi updates...
[2026-10-18 14:22:14,142.142 INFO    ] 200
[2026-10-18 14:22:14,145.145 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:22:14,184.184 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:22:24,198.198 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:22:24,233.233 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:22:24,243.243 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:22:24,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:22:24,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:22:24,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:22:26,295.295 INFO    ] ================================================
[2026-10-18 14:22:26,311.311 INFO    ] Launching Daemon at Sun Oct 18 14:22:26 IST 2026
[2026-10-18 14:22:26,322.322 INFO    ] ================================================
[2026-10-18 14:22:26,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:22:26
[2026-10-18 14:22:27,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:22:27,948.948 INFO    ] Initializing speech engine...
[2026-10-18 14:22:27,955.955 INFO    ] 2026-10-18 14:22:27
[2026-10-18 14:22:28,257.257 INFO    ] 2026-10-18 14:22:28
[2026-10-18 14:22:28,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:22:28,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:22:28,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:22:28,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:22:28,814.814 INFO    ] time= 18/10/2026 14:22:28
[2026-10-18 14:22:28,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:22:28,839.839 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:22:28,998.998 INFO    ] No existing commands found in stream
[2026-10-18 14:22:34,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:22:34,033.033 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-18 14:22:36,808.808 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 14:22:36,811.811 INFO    ] Checking for system updates...
[2026-10-18 14:22:36,859.859 INFO    ] 200
[2026-10-18 14:22:36,862.862 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:22:36,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:22:36,923.923 INFO    ] No update needed
[2026-10-18 14:22:36,926.926 INFO    ] Checking for camera pi updates...
[2026-10-18 14:22:36,960.960 INFO    ] 200
[2026-10-18 14:22:36,963.963 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:22:37,009.009 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:22:47,025.025 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:22:47,065.065 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:22:47,076.076 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:22:47,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:22:47,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:22:47,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:22:49,132.132 INFO    ] ================================================
[2026-10-18 14:22:49,147.147 INFO    ] Launching Daemon at Sun Oct 18 14:22:49 IST 2026
[2026-10-18 14:22:49,158.158 INFO    ] ================================================
[2026-10-18 14:22:49,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:22:49
[2026-10-18 14:22:50,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:22:50,642.642 INFO    ] Initializing speech engine...
[2026-10-18 14:22:50,666.666 INFO    ] 2026-10-18 14:22:50
[2026-10-18 14:22:50,927.927 INFO    ] 2026-10-18 14:22:50
[2026-10-18 14:22:50,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:22:51,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:22:51,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:22:51,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:22:51,351.351 INFO    ] time= 18/10/2026 14:22:51
[2026-10-18 14:22:51,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:22:51,401.401 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:22:51,541.541 INFO    ] No existing commands found in stream
[2026-10-18 14:22:56,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:22:56,564.564 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-18 14:22:59,806.806 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 14:22:59,808.808 INFO    ] Checking for system updates...
[2026-10-18 14:22:59,844.844 INFO    ] 200
[2026-10-18 14:22:59,847.847 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:22:59,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:22:59,901.901 INFO    ] No update needed
[2026-10-18 14:22:59,903.903 INFO    ] Checking for camera pi updates...
[2026-10-18 14:22:59,938.938 INFO    ] 200
[2026-10-18 14:22:59,940.940 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:22:59,980.980 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:23:09,992.992 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:23:10,026.026 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:23:10,036.036 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:23:10,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:23:10,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:23:10,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:23:12,088.088 INFO    ] ================================================
[2026-10-18 14:23:12,104.104 INFO    ] Launching Daemon at Sun Oct 18 14:23:12 IST 2026
[2026-10-18 14:23:12,115.115 INFO    ] ================================================
[2026-10-18 14:23:12,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:23:12
[2026-10-18 14:23:13,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:23:13,802.802 INFO    ] Initializing speech engine...
[2026-10-18 14:23:13,813.813 INFO    ] 2026-10-18 14:23:13
[2026-10-18 14:23:14,094.094 INFO    ] 2026-10-18 14:23:14
[2026-10-18 14:23:14,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:23:14,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:23:14,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:23:14,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:23:14,584.584 INFO    ] time= 18/10/2026 14:23:14
[2026-10-18 14:23:14,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:23:14,657.657 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:23:14,782.782 INFO    ] No existing commands found in stream
[2026-10-18 14:23:19,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:23:19,815.815 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-18 14:23:23,190.190 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:23:23,192.192 INFO    ] Checking for system updates...
[2026-10-18 14:23:23,228.228 INFO    ] 200
[2026-10-18 14:23:23,230.230 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:23:23,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:23:23,285.285 INFO    ] No update needed
[2026-10-18 14:23:23,288.288 INFO    ] Checking for camera pi updates...
[2026-10-18 14:23:23,321.321 INFO    ] 200
[2026-10-18 14:23:23,323.323 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:23:23,364.364 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:23:33,374.374 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:23:33,410.410 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:23:33,419.419 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:23:33,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:23:33,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:23:33,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:23:35,472.472 INFO    ] ================================================
[2026-10-18 14:23:35,488.488 INFO    ] Launching Daemon at Sun Oct 18 14:23:35 IST 2026
[2026-10-18 14:23:35,499.499 INFO    ] ================================================
[2026-10-18 14:23:36,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:23:36
[2026-10-18 14:23:36,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:23:37,154.154 INFO    ] Initializing speech engine...
[2026-10-18 14:23:37,164.164 INFO    ] 2026-10-18 14:23:37
[2026-10-18 14:23:37,471.471 INFO    ] 2026-10-18 14:23:37
[2026-10-18 14:23:37,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:23:37,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:23:37,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:23:37,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:23:37,978.978 INFO    ] time= 18/10/2026 14:23:37
[2026-10-18 14:23:38,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:23:38,027.027 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:23:38,192.192 INFO    ] No existing commands found in stream
[2026-10-18 14:23:43,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:23:43,232.232 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-18 14:23:46,904.904 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:23:46,907.907 INFO    ] Checking for system updates...
[2026-10-18 14:23:46,944.944 INFO    ] 200
[2026-10-18 14:23:46,947.947 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:23:46,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:23:47,002.002 INFO    ] No update needed
[2026-10-18 14:23:47,004.004 INFO    ] Checking for camera pi updates...
[2026-10-18 14:23:47,044.044 INFO    ] 200
[2026-10-18 14:23:47,047.047 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:23:47,088.088 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:23:57,103.103 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:23:57,141.141 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:23:57,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:23:57,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:23:57,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:23:57,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:23:59,206.206 INFO    ] ================================================
[2026-10-18 14:23:59,222.222 INFO    ] Launching Daemon at Sun Oct 18 14:23:59 IST 2026
[2026-10-18 14:23:59,233.233 INFO    ] ================================================
[2026-10-18 14:23:59,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:23:59
[2026-10-18 14:24:00,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:24:00,639.639 INFO    ] Initializing speech engine...
[2026-10-18 14:24:00,648.648 INFO    ] 2026-10-18 14:24:00
[2026-10-18 14:24:00,944.944 INFO    ] 2026-10-18 14:24:00
[2026-10-18 14:24:00,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:24:01,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:24:01,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:24:04,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:24:04,527.527 INFO    ] time= 18/10/2026 14:24:04
[2026-10-18 14:24:04,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:24:04,532.532 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:24:04,603.603 INFO    ] No existing commands found in stream
[2026-10-18 14:24:09,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:24:09,616.616 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-18 14:24:10,602.602 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:24:10,605.605 INFO    ] Checking for system updates...
[2026-10-18 14:24:10,641.641 INFO    ] 200
[2026-10-18 14:24:10,644.644 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:24:10,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:24:10,698.698 INFO    ] No update needed
[2026-10-18 14:24:10,700.700 INFO    ] Checking for camera pi updates...
[2026-10-18 14:24:10,734.734 INFO    ] 200
[2026-10-18 14:24:10,736.736 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:24:10,777.777 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:24:20,794.794 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d730d0>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:24:20,827.827 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:24:20,837.837 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:24:20,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:24:20,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:24:20,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:24:22,890.890 INFO    ] ================================================
[2026-10-18 14:24:22,906.906 INFO    ] Launching Daemon at Sun Oct 18 14:24:22 IST 2026
[2026-10-18 14:24:22,917.917 INFO    ] ================================================
[2026-10-18 14:24:23,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:24:23
[2026-10-18 14:24:24,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:24:24,326.326 INFO    ] Initializing speech engine...
[2026-10-18 14:24:24,329.329 INFO    ] 2026-10-18 14:24:24
[2026-10-18 14:24:24,604.604 INFO    ] 2026-10-18 14:24:24
[2026-10-18 14:24:24,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:24:24,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:24:24,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:24:25,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:24:25,103.103 INFO    ] time= 18/10/2026 14:24:25
[2026-10-18 14:24:25,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:24:25,177.177 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:24:25,314.314 INFO    ] No existing commands found in stream
[2026-10-18 14:24:30,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:24:30,340.340 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-18 14:24:33,026.026 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:24:33,029.029 INFO    ] Checking for system updates...
[2026-10-18 14:24:33,072.072 INFO    ] 200
[2026-10-18 14:24:33,074.074 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:24:33,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:24:33,133.133 INFO    ] No update needed
[2026-10-18 14:24:33,136.136 INFO    ] Checking for camera pi updates...
[2026-10-18 14:24:33,181.181 INFO    ] 200
[2026-10-18 14:24:33,183.183 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:24:33,224.224 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:24:43,240.240 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:24:43,277.277 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:24:43,287.287 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:24:43,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:24:43,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:24:43,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:24:45,343.343 INFO    ] ================================================
[2026-10-18 14:24:45,360.360 INFO    ] Launching Daemon at Sun Oct 18 14:24:45 IST 2026
[2026-10-18 14:24:45,371.371 INFO    ] ================================================
[2026-10-18 14:24:45,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:24:45
[2026-10-18 14:24:46,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:24:46,799.799 INFO    ] Initializing speech engine...
[2026-10-18 14:24:46,808.808 INFO    ] 2026-10-18 14:24:46
[2026-10-18 14:24:47,050.050 INFO    ] 2026-10-18 14:24:47
[2026-10-18 14:24:47,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:24:47,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:24:47,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:24:47,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:24:47,604.604 INFO    ] time= 18/10/2026 14:24:47
[2026-10-18 14:24:47,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:24:47,628.628 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:24:47,757.757 INFO    ] No existing commands found in stream
[2026-10-18 14:24:52,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:24:52,774.774 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-18 14:24:53,877.877 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 14:24:53,879.879 INFO    ] Checking for system updates...
[2026-10-18 14:24:53,916.916 INFO    ] 200
[2026-10-18 14:24:53,919.919 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:24:53,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:24:53,983.983 INFO    ] No update needed
[2026-10-18 14:24:53,986.986 INFO    ] Checking for camera pi updates...
[2026-10-18 14:24:54,022.022 INFO    ] 200
[2026-10-18 14:24:54,025.025 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:24:54,068.068 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:25:04,083.083 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:25:04,124.124 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:25:04,136.136 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:25:04,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:25:04,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:25:04,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:25:06,192.192 INFO    ] ================================================
[2026-10-18 14:25:06,207.207 INFO    ] Launching Daemon at Sun Oct 18 14:25:06 IST 2026
[2026-10-18 14:25:06,219.219 INFO    ] ================================================
[2026-10-18 14:25:06,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:25:06
[2026-10-18 14:25:07,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:25:07,870.870 INFO    ] Initializing speech engine...
[2026-10-18 14:25:07,877.877 INFO    ] 2026-10-18 14:25:07
[2026-10-18 14:25:08,139.139 INFO    ] 2026-10-18 14:25:08
[2026-10-18 14:25:08,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:25:08,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:25:08,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:25:08,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:25:08,681.681 INFO    ] time= 18/10/2026 14:25:08
[2026-10-18 14:25:08,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:25:08,706.706 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:25:08,840.840 INFO    ] No existing commands found in stream
[2026-10-18 14:25:13,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:25:13,859.859 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-18 14:25:15,615.615 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:25:15,617.617 INFO    ] Checking for system updates...
[2026-10-18 14:25:15,654.654 INFO    ] 200
[2026-10-18 14:25:15,656.656 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:25:15,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:25:15,711.711 INFO    ] No update needed
[2026-10-18 14:25:15,713.713 INFO    ] Checking for camera pi updates...
[2026-10-18 14:25:15,747.747 INFO    ] 200
[2026-10-18 14:25:15,750.750 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:25:15,796.796 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:25:25,811.811 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:25:25,847.847 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:25:25,857.857 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:25:25,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:25:25,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:25:25,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:25:27,919.919 INFO    ] ================================================
[2026-10-18 14:25:27,934.934 INFO    ] Launching Daemon at Sun Oct 18 14:25:27 IST 2026
[2026-10-18 14:25:27,945.945 INFO    ] ================================================
[2026-10-18 14:25:28,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:25:28
[2026-10-18 14:25:29,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:25:29,407.407 INFO    ] Initializing speech engine...
[2026-10-18 14:25:29,416.416 INFO    ] 2026-10-18 14:25:29
[2026-10-18 14:25:29,661.661 INFO    ] 2026-10-18 14:25:29
[2026-10-18 14:25:29,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:25:29,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:25:29,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:25:30,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:25:30,216.216 INFO    ] time= 18/10/2026 14:25:30
[2026-10-18 14:25:30,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:25:30,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:25:30,367.367 INFO    ] No existing commands found in stream
[2026-10-18 14:25:35,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:25:35,384.384 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-18 14:25:37,452.452 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:25:37,454.454 INFO    ] Checking for system updates...
[2026-10-18 14:25:37,492.492 INFO    ] 200
[2026-10-18 14:25:37,494.494 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:25:37,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:25:37,551.551 INFO    ] No update needed
[2026-10-18 14:25:37,553.553 INFO    ] Checking for camera pi updates...
[2026-10-18 14:25:37,590.590 INFO    ] 200
[2026-10-18 14:25:37,593.593 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:25:37,652.652 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:25:47,666.666 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:25:47,707.707 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:25:47,717.717 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:25:47,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:25:47,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:25:47,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:25:49,777.777 INFO    ] ================================================
[2026-10-18 14:25:49,793.793 INFO    ] Launching Daemon at Sun Oct 18 14:25:49 IST 2026
[2026-10-18 14:25:49,805.805 INFO    ] ================================================
[2026-10-18 14:25:50,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:25:50
[2026-10-18 14:25:50,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:25:51,238.238 INFO    ] Initializing speech engine...
[2026-10-18 14:25:51,244.244 INFO    ] 2026-10-18 14:25:51
[2026-10-18 14:25:51,503.503 INFO    ] 2026-10-18 14:25:51
[2026-10-18 14:25:51,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:25:51,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:25:51,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:25:51,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:25:51,959.959 INFO    ] time= 18/10/2026 14:25:51
[2026-10-18 14:25:52,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:25:52,050.050 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:25:52,201.201 INFO    ] No existing commands found in stream
[2026-10-18 14:25:57,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:25:57,227.227 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-18 14:25:59,418.418 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:25:59,421.421 INFO    ] Checking for system updates...
[2026-10-18 14:25:59,456.456 INFO    ] 200
[2026-10-18 14:25:59,459.459 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:25:59,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:25:59,515.515 INFO    ] No update needed
[2026-10-18 14:25:59,517.517 INFO    ] Checking for camera pi updates...
[2026-10-18 14:25:59,551.551 INFO    ] 200
[2026-10-18 14:25:59,554.554 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:25:59,594.594 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:26:09,608.608 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:26:09,643.643 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:26:09,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:26:09,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:26:09,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:26:09,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:26:11,707.707 INFO    ] ================================================
[2026-10-18 14:26:11,722.722 INFO    ] Launching Daemon at Sun Oct 18 14:26:11 IST 2026
[2026-10-18 14:26:11,733.733 INFO    ] ================================================
[2026-10-18 14:26:12,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:26:12
[2026-10-18 14:26:13,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:26:13,291.291 INFO    ] Initializing speech engine...
[2026-10-18 14:26:13,296.296 INFO    ] 2026-10-18 14:26:13
[2026-10-18 14:26:13,560.560 INFO    ] 2026-10-18 14:26:13
[2026-10-18 14:26:13,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:26:13,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:26:13,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:26:14,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:26:14,105.105 INFO    ] time= 18/10/2026 14:26:14
[2026-10-18 14:26:14,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:26:14,145.145 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:26:14,278.278 INFO    ] No existing commands found in stream
[2026-10-18 14:26:19,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:26:19,311.311 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-18 14:26:20,499.499 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:26:20,502.502 INFO    ] Checking for system updates...
[2026-10-18 14:26:20,541.541 INFO    ] 200
[2026-10-18 14:26:20,543.543 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:26:20,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:26:20,599.599 INFO    ] No update needed
[2026-10-18 14:26:20,602.602 INFO    ] Checking for camera pi updates...
[2026-10-18 14:26:20,636.636 INFO    ] 200
[2026-10-18 14:26:20,639.639 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:26:20,679.679 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:26:30,695.695 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:26:30,750.750 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:26:30,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:26:30,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:26:30,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:26:30,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:26:32,816.816 INFO    ] ================================================
[2026-10-18 14:26:32,832.832 INFO    ] Launching Daemon at Sun Oct 18 14:26:32 IST 2026
[2026-10-18 14:26:32,845.845 INFO    ] ================================================
[2026-10-18 14:26:33,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:26:33
[2026-10-18 14:26:34,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:26:34,332.332 INFO    ] Initializing speech engine...
[2026-10-18 14:26:34,341.341 INFO    ] 2026-10-18 14:26:34
[2026-10-18 14:26:34,606.606 INFO    ] 2026-10-18 14:26:34
[2026-10-18 14:26:34,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:26:34,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:26:34,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:26:35,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:26:35,149.149 INFO    ] time= 18/10/2026 14:26:35
[2026-10-18 14:26:35,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:26:35,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:26:35,318.318 INFO    ] No existing commands found in stream
[2026-10-18 14:26:40,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:26:40,353.353 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-18 14:26:41,663.663 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 14:26:41,666.666 INFO    ] Checking for system updates...
[2026-10-18 14:26:41,708.708 INFO    ] 200
[2026-10-18 14:26:41,710.710 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:26:41,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:26:41,771.771 INFO    ] No update needed
[2026-10-18 14:26:41,773.773 INFO    ] Checking for camera pi updates...
[2026-10-18 14:26:41,806.806 INFO    ] 200
[2026-10-18 14:26:41,808.808 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:26:41,849.849 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:26:51,864.864 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:26:51,898.898 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:26:51,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:26:51,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:26:51,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:26:51,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:26:53,961.961 INFO    ] ================================================
[2026-10-18 14:26:53,976.976 INFO    ] Launching Daemon at Sun Oct 18 14:26:53 IST 2026
[2026-10-18 14:26:53,987.987 INFO    ] ================================================
[2026-10-18 14:26:54,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:26:54
[2026-10-18 14:26:55,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:26:55,494.494 INFO    ] Initializing speech engine...
[2026-10-18 14:26:55,503.503 INFO    ] 2026-10-18 14:26:55
[2026-10-18 14:26:55,787.787 INFO    ] 2026-10-18 14:26:55
[2026-10-18 14:26:55,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:26:56,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:26:56,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:26:56,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:26:56,336.336 INFO    ] time= 18/10/2026 14:26:56
[2026-10-18 14:26:56,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:26:56,372.372 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:26:56,483.483 INFO    ] No existing commands found in stream
[2026-10-18 14:27:01,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:27:01,516.516 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-18 14:27:05,462.462 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:27:05,465.465 INFO    ] Checking for system updates...
[2026-10-18 14:27:05,505.505 INFO    ] 200
[2026-10-18 14:27:05,508.508 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:27:05,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:27:05,570.570 INFO    ] No update needed
[2026-10-18 14:27:05,572.572 INFO    ] Checking for camera pi updates...
[2026-10-18 14:27:05,606.606 INFO    ] 200
[2026-10-18 14:27:05,609.609 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:27:05,650.650 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:27:15,664.664 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2030>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:27:15,699.699 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:27:15,709.709 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:27:15,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:27:15,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:27:15,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:27:17,761.761 INFO    ] ================================================
[2026-10-18 14:27:17,777.777 INFO    ] Launching Daemon at Sun Oct 18 14:27:17 IST 2026
[2026-10-18 14:27:17,787.787 INFO    ] ================================================
[2026-10-18 14:27:18,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:27:18
[2026-10-18 14:27:18,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:27:19,219.219 INFO    ] Initializing speech engine...
[2026-10-18 14:27:19,238.238 INFO    ] 2026-10-18 14:27:19
[2026-10-18 14:27:19,490.490 INFO    ] 2026-10-18 14:27:19
[2026-10-18 14:27:19,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:27:19,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:27:19,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:27:20,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:27:20,051.051 INFO    ] time= 18/10/2026 14:27:20
[2026-10-18 14:27:20,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:27:20,076.076 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:27:20,203.203 INFO    ] No existing commands found in stream
[2026-10-18 14:27:25,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:27:25,221.221 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-18 14:27:27,699.699 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:27:27,702.702 INFO    ] Checking for system updates...
[2026-10-18 14:27:27,737.737 INFO    ] 200
[2026-10-18 14:27:27,740.740 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:27:27,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:27:27,794.794 INFO    ] No update needed
[2026-10-18 14:27:27,796.796 INFO    ] Checking for camera pi updates...
[2026-10-18 14:27:27,835.835 INFO    ] 200
[2026-10-18 14:27:27,837.837 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:27:27,882.882 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:27:37,898.898 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:27:37,932.932 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:27:37,942.942 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:27:37,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:27:37,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:27:37,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:27:40,996.996 INFO    ] ================================================
[2026-10-18 14:27:40,011.011 INFO    ] Launching Daemon at Sun Oct 18 14:27:40 IST 2026
[2026-10-18 14:27:40,022.022 INFO    ] ================================================
[2026-10-18 14:27:40,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:27:40
[2026-10-18 14:27:41,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:27:41,446.446 INFO    ] Initializing speech engine...
[2026-10-18 14:27:41,455.455 INFO    ] 2026-10-18 14:27:41
[2026-10-18 14:27:41,705.705 INFO    ] 2026-10-18 14:27:41
[2026-10-18 14:27:41,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:27:41,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:27:42,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:27:42,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:27:42,210.210 INFO    ] time= 18/10/2026 14:27:42
[2026-10-18 14:27:42,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:27:42,281.281 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:27:42,414.414 INFO    ] No existing commands found in stream
[2026-10-18 14:27:47,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:27:47,441.441 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-18 14:27:49,794.794 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:27:49,797.797 INFO    ] Checking for system updates...
[2026-10-18 14:27:49,838.838 INFO    ] 200
[2026-10-18 14:27:49,840.840 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:27:49,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:27:49,894.894 INFO    ] No update needed
[2026-10-18 14:27:49,897.897 INFO    ] Checking for camera pi updates...
[2026-10-18 14:27:49,931.931 INFO    ] 200
[2026-10-18 14:27:49,933.933 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:27:49,973.973 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:27:59,988.988 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:28:00,024.024 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:28:00,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:28:00,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:28:00,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:28:00,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:28:02,090.090 INFO    ] ================================================
[2026-10-18 14:28:02,119.119 INFO    ] Launching Daemon at Sun Oct 18 14:28:02 IST 2026
[2026-10-18 14:28:02,135.135 INFO    ] ================================================
[2026-10-18 14:28:02,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:28:02
[2026-10-18 14:28:03,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:28:03,694.694 INFO    ] Initializing speech engine...
[2026-10-18 14:28:03,726.726 INFO    ] 2026-10-18 14:28:03
[2026-10-18 14:28:04,012.012 INFO    ] 2026-10-18 14:28:03
[2026-10-18 14:28:04,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:28:04,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:28:04,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:28:04,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:28:04,433.433 INFO    ] time= 18/10/2026 14:28:04
[2026-10-18 14:28:04,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:28:04,479.479 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:28:04,554.554 INFO    ] No existing commands found in stream
[2026-10-18 14:28:09,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:28:09,577.577 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-18 14:28:10,106.106 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:28:10,109.109 INFO    ] Checking for system updates...
[2026-10-18 14:28:10,148.148 INFO    ] 200
[2026-10-18 14:28:10,150.150 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:28:10,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:28:10,205.205 INFO    ] No update needed
[2026-10-18 14:28:10,208.208 INFO    ] Checking for camera pi updates...
[2026-10-18 14:28:10,242.242 INFO    ] 200
[2026-10-18 14:28:10,245.245 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:28:10,285.285 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:28:20,299.299 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:28:20,336.336 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:28:20,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:28:20,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:28:20,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:28:20,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:28:22,399.399 INFO    ] ================================================
[2026-10-18 14:28:22,414.414 INFO    ] Launching Daemon at Sun Oct 18 14:28:22 IST 2026
[2026-10-18 14:28:22,425.425 INFO    ] ================================================
[2026-10-18 14:28:22,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:28:22
[2026-10-18 14:28:23,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:28:23,831.831 INFO    ] Initializing speech engine...
[2026-10-18 14:28:23,853.853 INFO    ] 2026-10-18 14:28:23
[2026-10-18 14:28:24,108.108 INFO    ] 2026-10-18 14:28:24
[2026-10-18 14:28:24,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:28:24,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:28:24,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:28:24,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:28:24,662.662 INFO    ] time= 18/10/2026 14:28:24
[2026-10-18 14:28:24,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:28:24,687.687 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:28:24,819.819 INFO    ] No existing commands found in stream
[2026-10-18 14:28:29,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:28:29,849.849 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-18 14:28:32,348.348 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:28:32,352.352 INFO    ] Checking for system updates...
[2026-10-18 14:28:32,397.397 INFO    ] 200
[2026-10-18 14:28:32,402.402 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:28:32,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:28:32,469.469 INFO    ] No update needed
[2026-10-18 14:28:32,472.472 INFO    ] Checking for camera pi updates...
[2026-10-18 14:28:32,519.519 INFO    ] 200
[2026-10-18 14:28:32,521.521 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:28:32,572.572 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:28:42,587.587 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:28:42,622.622 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:28:42,631.631 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:28:42,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:28:42,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:28:42,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:28:44,684.684 INFO    ] ================================================
[2026-10-18 14:28:44,700.700 INFO    ] Launching Daemon at Sun Oct 18 14:28:44 IST 2026
[2026-10-18 14:28:44,711.711 INFO    ] ================================================
[2026-10-18 14:28:45,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:28:45
[2026-10-18 14:28:46,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:28:46,326.326 INFO    ] Initializing speech engine...
[2026-10-18 14:28:46,334.334 INFO    ] 2026-10-18 14:28:46
[2026-10-18 14:28:46,615.615 INFO    ] 2026-10-18 14:28:46
[2026-10-18 14:28:46,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:28:46,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:28:46,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:28:47,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:28:47,158.158 INFO    ] time= 18/10/2026 14:28:47
[2026-10-18 14:28:47,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:28:47,194.194 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:28:47,317.317 INFO    ] No existing commands found in stream
[2026-10-18 14:28:52,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:28:52,352.352 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-18 14:28:57,836.836 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:28:57,839.839 INFO    ] Checking for system updates...
[2026-10-18 14:28:57,880.880 INFO    ] 200
[2026-10-18 14:28:57,882.882 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:28:57,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:28:57,944.944 INFO    ] No update needed
[2026-10-18 14:28:57,947.947 INFO    ] Checking for camera pi updates...
[2026-10-18 14:28:57,984.984 INFO    ] 200
[2026-10-18 14:28:57,987.987 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:28:58,033.033 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:29:08,050.050 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:29:08,089.089 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:29:08,100.100 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:29:08,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:29:08,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:29:08,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:29:10,155.155 INFO    ] ================================================
[2026-10-18 14:29:10,170.170 INFO    ] Launching Daemon at Sun Oct 18 14:29:10 IST 2026
[2026-10-18 14:29:10,181.181 INFO    ] ================================================
[2026-10-18 14:29:10,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:29:10
[2026-10-18 14:29:11,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:29:11,780.780 INFO    ] Initializing speech engine...
[2026-10-18 14:29:11,786.786 INFO    ] 2026-10-18 14:29:11
[2026-10-18 14:29:12,075.075 INFO    ] 2026-10-18 14:29:12
[2026-10-18 14:29:12,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:29:12,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:29:12,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:29:12,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:29:12,634.634 INFO    ] time= 18/10/2026 14:29:12
[2026-10-18 14:29:12,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:29:12,671.671 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:29:12,815.815 INFO    ] No existing commands found in stream
[2026-10-18 14:29:17,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:29:17,850.850 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-18 14:29:19,310.310 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:29:19,313.313 INFO    ] Checking for system updates...
[2026-10-18 14:29:19,354.354 INFO    ] 200
[2026-10-18 14:29:19,358.358 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:29:19,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:29:19,414.414 INFO    ] No update needed
[2026-10-18 14:29:19,417.417 INFO    ] Checking for camera pi updates...
[2026-10-18 14:29:19,456.456 INFO    ] 200
[2026-10-18 14:29:19,459.459 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:29:19,501.501 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:29:29,518.518 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:29:29,558.558 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:29:29,570.570 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:29:29,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:29:29,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:29:29,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:29:31,626.626 INFO    ] ================================================
[2026-10-18 14:29:31,641.641 INFO    ] Launching Daemon at Sun Oct 18 14:29:31 IST 2026
[2026-10-18 14:29:31,652.652 INFO    ] ================================================
[2026-10-18 14:29:32,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:29:32
[2026-10-18 14:29:32,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:29:33,225.225 INFO    ] Initializing speech engine...
[2026-10-18 14:29:33,238.238 INFO    ] 2026-10-18 14:29:33
[2026-10-18 14:29:33,514.514 INFO    ] 2026-10-18 14:29:33
[2026-10-18 14:29:33,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:29:33,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:29:33,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:29:34,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:29:34,085.085 INFO    ] time= 18/10/2026 14:29:34
[2026-10-18 14:29:34,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:29:34,135.135 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:29:34,260.260 INFO    ] No existing commands found in stream
[2026-10-18 14:29:39,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:29:39,294.294 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-18 14:29:42,679.679 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:29:42,682.682 INFO    ] Checking for system updates...
[2026-10-18 14:29:42,719.719 INFO    ] 200
[2026-10-18 14:29:42,722.722 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:29:42,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:29:42,779.779 INFO    ] No update needed
[2026-10-18 14:29:42,782.782 INFO    ] Checking for camera pi updates...
[2026-10-18 14:29:42,817.817 INFO    ] 200
[2026-10-18 14:29:42,820.820 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:29:42,862.862 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:29:52,878.878 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:29:52,919.919 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:29:52,930.930 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:29:52,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:29:52,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:29:52,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:29:54,985.985 INFO    ] ================================================
[2026-10-18 14:29:55,001.001 INFO    ] Launching Daemon at Sun Oct 18 14:29:54 IST 2026
[2026-10-18 14:29:55,012.012 INFO    ] ================================================
[2026-10-18 14:29:55,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:29:55
[2026-10-18 14:29:56,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:29:56,667.667 INFO    ] Initializing speech engine...
[2026-10-18 14:29:56,675.675 INFO    ] 2026-10-18 14:29:56
[2026-10-18 14:29:56,992.992 INFO    ] 2026-10-18 14:29:56
[2026-10-18 14:29:57,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:29:57,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:29:57,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:29:57,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:29:57,520.520 INFO    ] time= 18/10/2026 14:29:57
[2026-10-18 14:29:57,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:29:57,557.557 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:29:57,673.673 INFO    ] No existing commands found in stream
[2026-10-18 14:30:02,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:30:02,713.713 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-18 14:30:09,210.210 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:30:09,213.213 INFO    ] Checking for system updates...
[2026-10-18 14:30:09,255.255 INFO    ] 200
[2026-10-18 14:30:09,258.258 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:30:09,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:30:09,315.315 INFO    ] No update needed
[2026-10-18 14:30:09,318.318 INFO    ] Checking for camera pi updates...
[2026-10-18 14:30:09,353.353 INFO    ] 200
[2026-10-18 14:30:09,356.356 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:30:09,399.399 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:30:19,416.416 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:30:19,458.458 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:30:19,469.469 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:30:19,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:30:19,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:30:19,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:30:21,527.527 INFO    ] ================================================
[2026-10-18 14:30:21,542.542 INFO    ] Launching Daemon at Sun Oct 18 14:30:21 IST 2026
[2026-10-18 14:30:21,553.553 INFO    ] ================================================
[2026-10-18 14:30:22,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:30:22
[2026-10-18 14:30:22,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:30:23,058.058 INFO    ] Initializing speech engine...
[2026-10-18 14:30:23,071.071 INFO    ] 2026-10-18 14:30:23
[2026-10-18 14:30:23,385.385 INFO    ] 2026-10-18 14:30:23
[2026-10-18 14:30:23,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:30:23,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:30:23,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:30:24,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:30:24,078.078 INFO    ] time= 18/10/2026 14:30:24
[2026-10-18 14:30:24,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:30:24,177.177 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:30:24,339.339 INFO    ] No existing commands found in stream
[2026-10-18 14:30:29,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:30:29,373.373 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-18 14:30:33,821.821 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:30:33,824.824 INFO    ] Checking for system updates...
[2026-10-18 14:30:33,859.859 INFO    ] 200
[2026-10-18 14:30:33,862.862 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:30:33,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:30:33,924.924 INFO    ] No update needed
[2026-10-18 14:30:33,931.931 INFO    ] Checking for camera pi updates...
[2026-10-18 14:30:33,965.965 INFO    ] 200
[2026-10-18 14:30:33,967.967 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:30:34,008.008 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:30:44,024.024 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:30:44,059.059 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:30:44,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:30:44,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:30:44,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:30:44,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:30:46,120.120 INFO    ] ================================================
[2026-10-18 14:30:46,136.136 INFO    ] Launching Daemon at Sun Oct 18 14:30:46 IST 2026
[2026-10-18 14:30:46,147.147 INFO    ] ================================================
[2026-10-18 14:30:46,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:30:46
[2026-10-18 14:30:47,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:30:47,570.570 INFO    ] Initializing speech engine...
[2026-10-18 14:30:47,596.596 INFO    ] 2026-10-18 14:30:47
[2026-10-18 14:30:47,877.877 INFO    ] 2026-10-18 14:30:47
[2026-10-18 14:30:47,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:30:48,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:30:48,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:30:48,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:30:48,335.335 INFO    ] time= 18/10/2026 14:30:48
[2026-10-18 14:30:48,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:30:48,459.459 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:30:48,587.587 INFO    ] No existing commands found in stream
[2026-10-18 14:30:53,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:30:53,620.620 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-18 14:30:56,558.558 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:30:56,560.560 INFO    ] Checking for system updates...
[2026-10-18 14:30:56,598.598 INFO    ] 200
[2026-10-18 14:30:56,601.601 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:30:56,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:30:56,667.667 INFO    ] No update needed
[2026-10-18 14:30:56,670.670 INFO    ] Checking for camera pi updates...
[2026-10-18 14:30:56,705.705 INFO    ] 200
[2026-10-18 14:30:56,708.708 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:30:56,756.756 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:31:06,771.771 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:31:06,813.813 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:31:06,825.825 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:31:06,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:31:06,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:31:06,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:31:08,883.883 INFO    ] ================================================
[2026-10-18 14:31:08,899.899 INFO    ] Launching Daemon at Sun Oct 18 14:31:08 IST 2026
[2026-10-18 14:31:08,910.910 INFO    ] ================================================
[2026-10-18 14:31:09,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:31:09
[2026-10-18 14:31:10,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:31:10,536.536 INFO    ] Initializing speech engine...
[2026-10-18 14:31:10,545.545 INFO    ] 2026-10-18 14:31:10
[2026-10-18 14:31:10,792.792 INFO    ] 2026-10-18 14:31:10
[2026-10-18 14:31:10,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:31:11,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:31:11,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:31:11,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:31:11,305.305 INFO    ] time= 18/10/2026 14:31:11
[2026-10-18 14:31:11,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:31:11,370.370 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:31:11,492.492 INFO    ] No existing commands found in stream
[2026-10-18 14:31:16,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:31:16,521.521 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-18 14:31:17,797.797 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:31:17,800.800 INFO    ] Checking for system updates...
[2026-10-18 14:31:17,837.837 INFO    ] 200
[2026-10-18 14:31:17,840.840 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:31:17,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:31:17,899.899 INFO    ] No update needed
[2026-10-18 14:31:17,902.902 INFO    ] Checking for camera pi updates...
[2026-10-18 14:31:17,935.935 INFO    ] 200
[2026-10-18 14:31:17,938.938 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:31:17,978.978 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:31:27,993.993 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:31:28,028.028 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:31:28,038.038 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:31:28,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:31:28,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:31:28,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:31:30,091.091 INFO    ] ================================================
[2026-10-18 14:31:30,107.107 INFO    ] Launching Daemon at Sun Oct 18 14:31:30 IST 2026
[2026-10-18 14:31:30,119.119 INFO    ] ================================================
[2026-10-18 14:31:30,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:31:30
[2026-10-18 14:31:31,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:31:31,555.555 INFO    ] Initializing speech engine...
[2026-10-18 14:31:31,563.563 INFO    ] 2026-10-18 14:31:31
[2026-10-18 14:31:31,863.863 INFO    ] 2026-10-18 14:31:31
[2026-10-18 14:31:31,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:31:32,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:31:32,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:31:32,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:31:32,308.308 INFO    ] time= 18/10/2026 14:31:32
[2026-10-18 14:31:32,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:31:32,313.313 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:31:32,455.455 INFO    ] No existing commands found in stream
[2026-10-18 14:31:37,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:31:37,479.479 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-18 14:31:38,098.098 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:31:38,101.101 INFO    ] Checking for system updates...
[2026-10-18 14:31:38,138.138 INFO    ] 200
[2026-10-18 14:31:38,140.140 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:31:38,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:31:38,196.196 INFO    ] No update needed
[2026-10-18 14:31:38,198.198 INFO    ] Checking for camera pi updates...
[2026-10-18 14:31:38,233.233 INFO    ] 200
[2026-10-18 14:31:38,235.235 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:31:38,275.275 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:31:48,290.290 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:31:48,325.325 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:31:48,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:31:48,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:31:48,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:31:48,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:31:50,392.392 INFO    ] ================================================
[2026-10-18 14:31:50,408.408 INFO    ] Launching Daemon at Sun Oct 18 14:31:50 IST 2026
[2026-10-18 14:31:50,422.422 INFO    ] ================================================
[2026-10-18 14:31:51,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:31:51
[2026-10-18 14:31:51,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:31:51,918.918 INFO    ] Initializing speech engine...
[2026-10-18 14:31:51,925.925 INFO    ] 2026-10-18 14:31:51
[2026-10-18 14:31:52,174.174 INFO    ] 2026-10-18 14:31:52
[2026-10-18 14:31:52,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:31:52,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:31:52,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:31:52,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:31:52,678.678 INFO    ] time= 18/10/2026 14:31:52
[2026-10-18 14:31:52,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:31:52,755.755 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:31:52,882.882 INFO    ] No existing commands found in stream
[2026-10-18 14:31:57,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:31:57,918.918 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-18 14:32:00,566.566 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:32:00,569.569 INFO    ] Checking for system updates...
[2026-10-18 14:32:00,612.612 INFO    ] 200
[2026-10-18 14:32:00,614.614 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 14:32:00,617.617 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-18 14:32:00,620.620 INFO    ] Checking for camera pi updates...
[2026-10-18 14:32:00,663.663 INFO    ] 200
[2026-10-18 14:32:00,666.666 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 14:32:00,669.669 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-18 14:32:00,671.671 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:32:00,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:32:00,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:32:00,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:32:02,737.737 INFO    ] ================================================
[2026-10-18 14:32:02,756.756 INFO    ] Launching Daemon at Sun Oct 18 14:32:02 IST 2026
[2026-10-18 14:32:02,770.770 INFO    ] ================================================
[2026-10-18 14:32:03,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:32:03
[2026-10-18 14:32:04,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:32:04,326.326 INFO    ] Initializing speech engine...
[2026-10-18 14:32:04,332.332 INFO    ] 2026-10-18 14:32:04
[2026-10-18 14:32:04,592.592 INFO    ] 2026-10-18 14:32:04
[2026-10-18 14:32:04,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:32:04,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:32:04,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:32:05,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:32:05,135.135 INFO    ] time= 18/10/2026 14:32:05
[2026-10-18 14:32:05,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:32:05,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:32:05,284.284 INFO    ] No existing commands found in stream
[2026-10-18 14:32:10,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:32:10,301.301 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-18 14:32:11,009.009 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:32:11,011.011 INFO    ] Checking for system updates...
[2026-10-18 14:32:11,047.047 INFO    ] 200
[2026-10-18 14:32:11,049.049 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:32:11,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:32:11,109.109 INFO    ] No update needed
[2026-10-18 14:32:11,111.111 INFO    ] Checking for camera pi updates...
[2026-10-18 14:32:11,145.145 INFO    ] 200
[2026-10-18 14:32:11,148.148 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:32:11,190.190 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:32:21,205.205 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:32:21,239.239 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:32:21,249.249 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:32:21,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:32:21,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:32:21,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:32:23,301.301 INFO    ] ================================================
[2026-10-18 14:32:23,317.317 INFO    ] Launching Daemon at Sun Oct 18 14:32:23 IST 2026
[2026-10-18 14:32:23,328.328 INFO    ] ================================================
[2026-10-18 14:32:23,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:32:23
[2026-10-18 14:32:24,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:32:24,754.754 INFO    ] Initializing speech engine...
[2026-10-18 14:32:24,760.760 INFO    ] 2026-10-18 14:32:24
[2026-10-18 14:32:25,056.056 INFO    ] 2026-10-18 14:32:25
[2026-10-18 14:32:25,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:32:25,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:32:25,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:32:25,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:32:25,471.471 INFO    ] time= 18/10/2026 14:32:25
[2026-10-18 14:32:25,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:32:25,483.483 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:32:25,635.635 INFO    ] No existing commands found in stream
[2026-10-18 14:32:30,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:32:30,663.663 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-18 14:32:34,973.973 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:32:34,976.976 INFO    ] Checking for system updates...
[2026-10-18 14:32:35,013.013 INFO    ] 200
[2026-10-18 14:32:35,016.016 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:32:35,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:32:35,073.073 INFO    ] No update needed
[2026-10-18 14:32:35,076.076 INFO    ] Checking for camera pi updates...
[2026-10-18 14:32:35,110.110 INFO    ] 200
[2026-10-18 14:32:35,113.113 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:32:35,156.156 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:32:45,172.172 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:32:45,212.212 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:32:45,223.223 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:32:45,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:32:45,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:32:45,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:32:47,283.283 INFO    ] ================================================
[2026-10-18 14:32:47,298.298 INFO    ] Launching Daemon at Sun Oct 18 14:32:47 IST 2026
[2026-10-18 14:32:47,308.308 INFO    ] ================================================
[2026-10-18 14:32:47,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:32:47
[2026-10-18 14:32:48,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:32:48,959.959 INFO    ] Initializing speech engine...
[2026-10-18 14:32:48,973.973 INFO    ] 2026-10-18 14:32:48
[2026-10-18 14:32:49,290.290 INFO    ] 2026-10-18 14:32:49
[2026-10-18 14:32:49,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:32:49,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:32:49,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:32:49,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:32:49,807.807 INFO    ] time= 18/10/2026 14:32:49
[2026-10-18 14:32:49,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:32:49,857.857 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:32:49,963.963 INFO    ] No existing commands found in stream
[2026-10-18 14:32:54,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:32:54,990.990 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-18 14:32:57,261.261 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 14:32:57,263.263 INFO    ] Checking for system updates...
[2026-10-18 14:32:57,301.301 INFO    ] 200
[2026-10-18 14:32:57,304.304 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:32:57,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:32:57,368.368 INFO    ] No update needed
[2026-10-18 14:32:57,371.371 INFO    ] Checking for camera pi updates...
[2026-10-18 14:32:57,406.406 INFO    ] 200
[2026-10-18 14:32:57,409.409 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:32:57,451.451 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:33:07,467.467 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:33:07,507.507 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:33:07,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:33:07,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:33:07,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:33:07,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:33:09,572.572 INFO    ] ================================================
[2026-10-18 14:33:09,587.587 INFO    ] Launching Daemon at Sun Oct 18 14:33:09 IST 2026
[2026-10-18 14:33:09,602.602 INFO    ] ================================================
[2026-10-18 14:33:10,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:33:10
[2026-10-18 14:33:10,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:33:11,043.043 INFO    ] Initializing speech engine...
[2026-10-18 14:33:11,051.051 INFO    ] 2026-10-18 14:33:11
[2026-10-18 14:33:11,352.352 INFO    ] 2026-10-18 14:33:11
[2026-10-18 14:33:11,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:33:11,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:33:11,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:33:11,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:33:11,753.753 INFO    ] time= 18/10/2026 14:33:11
[2026-10-18 14:33:11,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:33:11,766.766 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:33:11,904.904 INFO    ] No existing commands found in stream
[2026-10-18 14:33:16,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:33:16,926.926 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-18 14:33:20,437.437 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:33:20,439.439 INFO    ] Checking for system updates...
[2026-10-18 14:33:20,477.477 INFO    ] 200
[2026-10-18 14:33:20,480.480 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:33:20,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:33:20,537.537 INFO    ] No update needed
[2026-10-18 14:33:20,539.539 INFO    ] Checking for camera pi updates...
[2026-10-18 14:33:20,577.577 INFO    ] 200
[2026-10-18 14:33:20,580.580 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:33:20,621.621 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:33:30,636.636 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:33:30,676.676 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:33:30,688.688 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:33:30,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:33:30,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:33:30,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:33:32,745.745 INFO    ] ================================================
[2026-10-18 14:33:32,761.761 INFO    ] Launching Daemon at Sun Oct 18 14:33:32 IST 2026
[2026-10-18 14:33:32,772.772 INFO    ] ================================================
[2026-10-18 14:33:33,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:33:33
[2026-10-18 14:33:34,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:33:34,350.350 INFO    ] Initializing speech engine...
[2026-10-18 14:33:34,353.353 INFO    ] 2026-10-18 14:33:34
[2026-10-18 14:33:34,671.671 INFO    ] 2026-10-18 14:33:34
[2026-10-18 14:33:34,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:33:34,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:33:34,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:33:35,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:33:35,123.123 INFO    ] time= 18/10/2026 14:33:35
[2026-10-18 14:33:35,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:33:35,160.160 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:33:35,302.302 INFO    ] No existing commands found in stream
[2026-10-18 14:33:40,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:33:40,326.326 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-18 14:33:44,786.786 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:33:44,789.789 INFO    ] Checking for system updates...
[2026-10-18 14:33:44,825.825 INFO    ] 200
[2026-10-18 14:33:44,828.828 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:33:44,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:33:44,889.889 INFO    ] No update needed
[2026-10-18 14:33:44,892.892 INFO    ] Checking for camera pi updates...
[2026-10-18 14:33:44,927.927 INFO    ] 200
[2026-10-18 14:33:44,930.930 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:33:44,974.974 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:33:54,990.990 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:33:55,025.025 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:33:55,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:33:55,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:33:55,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:33:55,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:33:57,087.087 INFO    ] ================================================
[2026-10-18 14:33:57,103.103 INFO    ] Launching Daemon at Sun Oct 18 14:33:57 IST 2026
[2026-10-18 14:33:57,114.114 INFO    ] ================================================
[2026-10-18 14:33:57,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:33:57
[2026-10-18 14:33:58,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:33:58,568.568 INFO    ] Initializing speech engine...
[2026-10-18 14:33:58,593.593 INFO    ] 2026-10-18 14:33:58
[2026-10-18 14:33:58,865.865 INFO    ] 2026-10-18 14:33:58
[2026-10-18 14:33:58,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:33:59,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:33:59,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:33:59,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:33:59,288.288 INFO    ] time= 18/10/2026 14:33:59
[2026-10-18 14:33:59,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:33:59,316.316 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:33:59,455.455 INFO    ] No existing commands found in stream
[2026-10-18 14:34:04,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:34:04,478.478 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-18 14:34:08,275.275 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 14:34:08,277.277 INFO    ] Checking for system updates...
[2026-10-18 14:34:08,313.313 INFO    ] 200
[2026-10-18 14:34:08,315.315 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:34:08,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:34:08,380.380 INFO    ] No update needed
[2026-10-18 14:34:08,383.383 INFO    ] Checking for camera pi updates...
[2026-10-18 14:34:08,419.419 INFO    ] 200
[2026-10-18 14:34:08,421.421 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:34:08,462.462 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:34:18,478.478 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db5150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:34:18,512.512 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:34:18,522.522 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:34:18,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:34:18,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:34:18,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:34:20,574.574 INFO    ] ================================================
[2026-10-18 14:34:20,589.589 INFO    ] Launching Daemon at Sun Oct 18 14:34:20 IST 2026
[2026-10-18 14:34:20,601.601 INFO    ] ================================================
[2026-10-18 14:34:21,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:34:21
[2026-10-18 14:34:21,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:34:22,024.024 INFO    ] Initializing speech engine...
[2026-10-18 14:34:22,030.030 INFO    ] 2026-10-18 14:34:22
[2026-10-18 14:34:22,288.288 INFO    ] 2026-10-18 14:34:22
[2026-10-18 14:34:22,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:34:22,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:34:22,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:34:22,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:34:22,828.828 INFO    ] time= 18/10/2026 14:34:22
[2026-10-18 14:34:22,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:34:22,852.852 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:34:22,983.983 INFO    ] No existing commands found in stream
[2026-10-18 14:34:27,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:34:28,000.000 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-18 14:34:32,036.036 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:34:32,039.039 INFO    ] Checking for system updates...
[2026-10-18 14:34:32,078.078 INFO    ] 200
[2026-10-18 14:34:32,081.081 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:34:32,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:34:32,140.140 INFO    ] No update needed
[2026-10-18 14:34:32,142.142 INFO    ] Checking for camera pi updates...
[2026-10-18 14:34:32,177.177 INFO    ] 200
[2026-10-18 14:34:32,180.180 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:34:32,229.229 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:34:42,244.244 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:34:42,279.279 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:34:42,288.288 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:34:42,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:34:42,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:34:42,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:34:44,340.340 INFO    ] ================================================
[2026-10-18 14:34:44,356.356 INFO    ] Launching Daemon at Sun Oct 18 14:34:44 IST 2026
[2026-10-18 14:34:44,367.367 INFO    ] ================================================
[2026-10-18 14:34:44,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:34:44
[2026-10-18 14:34:45,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:34:45,901.901 INFO    ] Initializing speech engine...
[2026-10-18 14:34:45,915.915 INFO    ] 2026-10-18 14:34:45
[2026-10-18 14:34:46,185.185 INFO    ] 2026-10-18 14:34:46
[2026-10-18 14:34:46,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:34:46,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:34:46,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:34:46,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:34:46,663.663 INFO    ] time= 18/10/2026 14:34:46
[2026-10-18 14:34:46,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:34:46,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:34:46,957.957 INFO    ] No existing commands found in stream
[2026-10-18 14:34:51,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:34:51,987.987 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-18 14:34:53,180.180 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:34:53,183.183 INFO    ] Checking for system updates...
[2026-10-18 14:34:53,219.219 INFO    ] 200
[2026-10-18 14:34:53,222.222 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:34:53,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:34:53,276.276 INFO    ] No update needed
[2026-10-18 14:34:53,279.279 INFO    ] Checking for camera pi updates...
[2026-10-18 14:34:53,312.312 INFO    ] 200
[2026-10-18 14:34:53,314.314 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:34:53,354.354 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:35:03,367.367 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:35:03,401.401 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:35:03,413.413 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:35:03,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:35:03,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:35:03,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:35:05,471.471 INFO    ] ================================================
[2026-10-18 14:35:05,487.487 INFO    ] Launching Daemon at Sun Oct 18 14:35:05 IST 2026
[2026-10-18 14:35:05,498.498 INFO    ] ================================================
[2026-10-18 14:35:06,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:35:06
[2026-10-18 14:35:06,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:35:07,058.058 INFO    ] Initializing speech engine...
[2026-10-18 14:35:07,067.067 INFO    ] 2026-10-18 14:35:07
[2026-10-18 14:35:07,351.351 INFO    ] 2026-10-18 14:35:07
[2026-10-18 14:35:07,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:35:07,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:35:07,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:35:07,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:35:07,890.890 INFO    ] time= 18/10/2026 14:35:07
[2026-10-18 14:35:07,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:35:07,926.926 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:35:08,065.065 INFO    ] No existing commands found in stream
[2026-10-18 14:35:13,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:35:13,099.099 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-18 14:35:15,101.101 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:35:15,104.104 INFO    ] Checking for system updates...
[2026-10-18 14:35:15,152.152 INFO    ] 200
[2026-10-18 14:35:15,155.155 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:35:15,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:35:15,210.210 INFO    ] No update needed
[2026-10-18 14:35:15,213.213 INFO    ] Checking for camera pi updates...
[2026-10-18 14:35:15,247.247 INFO    ] 200
[2026-10-18 14:35:15,249.249 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:35:15,290.290 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:35:25,305.305 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:35:25,340.340 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:35:25,349.349 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:35:25,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:35:25,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:35:25,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:35:27,402.402 INFO    ] ================================================
[2026-10-18 14:35:27,418.418 INFO    ] Launching Daemon at Sun Oct 18 14:35:27 IST 2026
[2026-10-18 14:35:27,429.429 INFO    ] ================================================
[2026-10-18 14:35:28,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:35:28
[2026-10-18 14:35:28,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:35:28,980.980 INFO    ] Initializing speech engine...
[2026-10-18 14:35:28,988.988 INFO    ] 2026-10-18 14:35:28
[2026-10-18 14:35:29,258.258 INFO    ] 2026-10-18 14:35:29
[2026-10-18 14:35:29,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:35:29,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:35:29,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:35:29,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:35:29,824.824 INFO    ] time= 18/10/2026 14:35:29
[2026-10-18 14:35:29,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:35:29,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:35:29,990.990 INFO    ] No existing commands found in stream
[2026-10-18 14:35:35,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:35:35,009.009 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-18 14:35:37,021.021 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 14:35:37,023.023 INFO    ] Checking for system updates...
[2026-10-18 14:35:37,060.060 INFO    ] 200
[2026-10-18 14:35:37,062.062 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:35:37,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:35:37,119.119 INFO    ] No update needed
[2026-10-18 14:35:37,121.121 INFO    ] Checking for camera pi updates...
[2026-10-18 14:35:37,158.158 INFO    ] 200
[2026-10-18 14:35:37,160.160 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:35:37,207.207 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:35:47,221.221 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:35:47,259.259 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:35:47,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:35:47,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:35:47,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:35:47,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:35:49,323.323 INFO    ] ================================================
[2026-10-18 14:35:49,339.339 INFO    ] Launching Daemon at Sun Oct 18 14:35:49 IST 2026
[2026-10-18 14:35:49,350.350 INFO    ] ================================================
[2026-10-18 14:35:49,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:35:49
[2026-10-18 14:35:50,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:35:50,821.821 INFO    ] Initializing speech engine...
[2026-10-18 14:35:50,834.834 INFO    ] 2026-10-18 14:35:50
[2026-10-18 14:35:51,110.110 INFO    ] 2026-10-18 14:35:51
[2026-10-18 14:35:51,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:35:51,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:35:51,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:35:51,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:35:51,648.648 INFO    ] time= 18/10/2026 14:35:51
[2026-10-18 14:35:51,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:35:51,689.689 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:35:51,828.828 INFO    ] No existing commands found in stream
[2026-10-18 14:35:56,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:35:56,862.862 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-18 14:35:59,770.770 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:35:59,773.773 INFO    ] Checking for system updates...
[2026-10-18 14:35:59,809.809 INFO    ] 200
[2026-10-18 14:35:59,812.812 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:35:59,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:35:59,868.868 INFO    ] No update needed
[2026-10-18 14:35:59,871.871 INFO    ] Checking for camera pi updates...
[2026-10-18 14:35:59,905.905 INFO    ] 200
[2026-10-18 14:35:59,907.907 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:35:59,949.949 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:36:09,963.963 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:36:09,998.998 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:36:10,007.007 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:36:10,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:36:10,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:36:10,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:36:12,060.060 INFO    ] ================================================
[2026-10-18 14:36:12,076.076 INFO    ] Launching Daemon at Sun Oct 18 14:36:12 IST 2026
[2026-10-18 14:36:12,087.087 INFO    ] ================================================
[2026-10-18 14:36:12,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:36:12
[2026-10-18 14:36:13,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:36:13,497.497 INFO    ] Initializing speech engine...
[2026-10-18 14:36:13,513.513 INFO    ] 2026-10-18 14:36:13
[2026-10-18 14:36:13,766.766 INFO    ] 2026-10-18 14:36:13
[2026-10-18 14:36:13,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:36:14,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:36:14,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:36:14,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:36:14,257.257 INFO    ] time= 18/10/2026 14:36:14
[2026-10-18 14:36:14,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:36:14,330.330 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:36:14,470.470 INFO    ] No existing commands found in stream
[2026-10-18 14:36:19,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:36:19,489.489 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-18 14:36:22,212.212 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:36:22,214.214 INFO    ] Checking for system updates...
[2026-10-18 14:36:22,254.254 INFO    ] 200
[2026-10-18 14:36:22,257.257 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:36:22,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:36:22,311.311 INFO    ] No update needed
[2026-10-18 14:36:22,314.314 INFO    ] Checking for camera pi updates...
[2026-10-18 14:36:22,349.349 INFO    ] 200
[2026-10-18 14:36:22,351.351 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:36:22,393.393 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:36:32,408.408 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:36:32,446.446 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:36:32,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:36:32,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:36:32,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:36:32,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:36:34,513.513 INFO    ] ================================================
[2026-10-18 14:36:34,529.529 INFO    ] Launching Daemon at Sun Oct 18 14:36:34 IST 2026
[2026-10-18 14:36:34,543.543 INFO    ] ================================================
[2026-10-18 14:36:35,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:36:35
[2026-10-18 14:36:35,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:36:36,059.059 INFO    ] Initializing speech engine...
[2026-10-18 14:36:36,067.067 INFO    ] 2026-10-18 14:36:36
[2026-10-18 14:36:36,359.359 INFO    ] 2026-10-18 14:36:36
[2026-10-18 14:36:36,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:36:36,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:36:36,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:36:36,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:36:36,899.899 INFO    ] time= 18/10/2026 14:36:36
[2026-10-18 14:36:36,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:36:36,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:36:37,130.130 INFO    ] No existing commands found in stream
[2026-10-18 14:36:42,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:36:42,153.153 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-18 14:36:46,282.282 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 14:36:46,284.284 INFO    ] Checking for system updates...
[2026-10-18 14:36:46,321.321 INFO    ] 200
[2026-10-18 14:36:46,324.324 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:36:46,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:36:46,381.381 INFO    ] No update needed
[2026-10-18 14:36:46,383.383 INFO    ] Checking for camera pi updates...
[2026-10-18 14:36:46,416.416 INFO    ] 200
[2026-10-18 14:36:46,418.418 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:36:46,463.463 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:36:56,478.478 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:36:56,513.513 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:36:56,522.522 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:36:56,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:36:56,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:36:56,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:36:58,574.574 INFO    ] ================================================
[2026-10-18 14:36:58,589.589 INFO    ] Launching Daemon at Sun Oct 18 14:36:58 IST 2026
[2026-10-18 14:36:58,600.600 INFO    ] ================================================
[2026-10-18 14:36:59,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:36:59
[2026-10-18 14:36:59,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:37:00,098.098 INFO    ] Initializing speech engine...
[2026-10-18 14:37:00,107.107 INFO    ] 2026-10-18 14:37:00
[2026-10-18 14:37:00,363.363 INFO    ] 2026-10-18 14:37:00
[2026-10-18 14:37:00,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:37:00,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:37:00,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:37:00,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:37:00,916.916 INFO    ] time= 18/10/2026 14:37:00
[2026-10-18 14:37:00,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:37:00,940.940 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:37:01,070.070 INFO    ] No existing commands found in stream
[2026-10-18 14:37:06,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:37:06,087.087 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-18 14:37:07,654.654 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:37:07,657.657 INFO    ] Checking for system updates...
[2026-10-18 14:37:07,696.696 INFO    ] 200
[2026-10-18 14:37:07,699.699 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:37:07,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:37:07,760.760 INFO    ] No update needed
[2026-10-18 14:37:07,763.763 INFO    ] Checking for camera pi updates...
[2026-10-18 14:37:07,797.797 INFO    ] 200
[2026-10-18 14:37:07,800.800 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:37:07,841.841 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:37:17,856.856 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:37:17,892.892 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:37:17,903.903 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:37:17,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:37:17,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:37:17,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:37:19,957.957 INFO    ] ================================================
[2026-10-18 14:37:19,972.972 INFO    ] Launching Daemon at Sun Oct 18 14:37:19 IST 2026
[2026-10-18 14:37:19,983.983 INFO    ] ================================================
[2026-10-18 14:37:20,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:37:20
[2026-10-18 14:37:21,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:37:21,639.639 INFO    ] Initializing speech engine...
[2026-10-18 14:37:21,648.648 INFO    ] 2026-10-18 14:37:21
[2026-10-18 14:37:21,934.934 INFO    ] 2026-10-18 14:37:21
[2026-10-18 14:37:22,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:37:22,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:37:22,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:37:22,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:37:22,817.817 INFO    ] time= 18/10/2026 14:37:22
[2026-10-18 14:37:22,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:37:22,934.934 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:37:23,082.082 INFO    ] No existing commands found in stream
[2026-10-18 14:37:28,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:37:28,110.110 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-18 14:37:32,266.266 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:37:32,269.269 INFO    ] Checking for system updates...
[2026-10-18 14:37:32,313.313 INFO    ] 200
[2026-10-18 14:37:32,316.316 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:37:32,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:37:32,377.377 INFO    ] No update needed
[2026-10-18 14:37:32,380.380 INFO    ] Checking for camera pi updates...
[2026-10-18 14:37:32,420.420 INFO    ] 200
[2026-10-18 14:37:32,423.423 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:37:32,468.468 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:37:42,482.482 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:37:42,517.517 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:37:42,526.526 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:37:42,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:37:42,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:37:42,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:37:44,579.579 INFO    ] ================================================
[2026-10-18 14:37:44,594.594 INFO    ] Launching Daemon at Sun Oct 18 14:37:44 IST 2026
[2026-10-18 14:37:44,605.605 INFO    ] ================================================
[2026-10-18 14:37:45,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:37:45
[2026-10-18 14:37:45,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:37:46,047.047 INFO    ] Initializing speech engine...
[2026-10-18 14:37:46,054.054 INFO    ] 2026-10-18 14:37:46
[2026-10-18 14:37:46,331.331 INFO    ] 2026-10-18 14:37:46
[2026-10-18 14:37:46,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:37:46,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:37:46,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:37:46,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:37:46,801.801 INFO    ] time= 18/10/2026 14:37:46
[2026-10-18 14:37:46,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:37:46,889.889 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:37:46,986.986 INFO    ] No existing commands found in stream
[2026-10-18 14:37:51,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:37:52,000.000 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-18 14:37:55,825.825 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:37:55,828.828 INFO    ] Checking for system updates...
[2026-10-18 14:37:55,864.864 INFO    ] 200
[2026-10-18 14:37:55,867.867 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:37:55,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:37:55,923.923 INFO    ] No update needed
[2026-10-18 14:37:55,925.925 INFO    ] Checking for camera pi updates...
[2026-10-18 14:37:55,958.958 INFO    ] 200
[2026-10-18 14:37:55,960.960 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:37:56,001.001 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:38:06,017.017 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:38:06,051.051 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:38:06,061.061 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:38:06,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:38:06,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:38:06,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:38:08,115.115 INFO    ] ================================================
[2026-10-18 14:38:08,130.130 INFO    ] Launching Daemon at Sun Oct 18 14:38:08 IST 2026
[2026-10-18 14:38:08,141.141 INFO    ] ================================================
[2026-10-18 14:38:08,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:38:08
[2026-10-18 14:38:09,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:38:09,606.606 INFO    ] Initializing speech engine...
[2026-10-18 14:38:09,619.619 INFO    ] 2026-10-18 14:38:09
[2026-10-18 14:38:09,908.908 INFO    ] 2026-10-18 14:38:09
[2026-10-18 14:38:09,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:38:10,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:38:10,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:38:10,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:38:10,333.333 INFO    ] time= 18/10/2026 14:38:10
[2026-10-18 14:38:10,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:38:10,391.391 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:38:10,537.537 INFO    ] No existing commands found in stream
[2026-10-18 14:38:15,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:38:15,551.551 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-18 14:38:16,940.940 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 14:38:16,943.943 INFO    ] Checking for system updates...
[2026-10-18 14:38:16,996.996 INFO    ] 200
[2026-10-18 14:38:16,998.998 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:38:17,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:38:17,059.059 INFO    ] No update needed
[2026-10-18 14:38:17,062.062 INFO    ] Checking for camera pi updates...
[2026-10-18 14:38:17,095.095 INFO    ] 200
[2026-10-18 14:38:17,097.097 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:38:17,138.138 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:38:27,152.152 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:38:27,186.186 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:38:27,196.196 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:38:27,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:38:27,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:38:27,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:38:29,248.248 INFO    ] ================================================
[2026-10-18 14:38:29,263.263 INFO    ] Launching Daemon at Sun Oct 18 14:38:29 IST 2026
[2026-10-18 14:38:29,274.274 INFO    ] ================================================
[2026-10-18 14:38:29,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:38:29
[2026-10-18 14:38:30,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:38:30,904.904 INFO    ] Initializing speech engine...
[2026-10-18 14:38:30,916.916 INFO    ] 2026-10-18 14:38:30
[2026-10-18 14:38:31,217.217 INFO    ] 2026-10-18 14:38:31
[2026-10-18 14:38:31,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:38:31,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:38:31,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:38:31,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:38:31,768.768 INFO    ] time= 18/10/2026 14:38:31
[2026-10-18 14:38:31,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:38:31,818.818 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:38:31,971.971 INFO    ] No existing commands found in stream
[2026-10-18 14:38:36,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:38:36,989.989 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-18 14:38:37,816.816 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:38:37,818.818 INFO    ] Checking for system updates...
[2026-10-18 14:38:37,858.858 INFO    ] 200
[2026-10-18 14:38:37,860.860 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:38:37,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:38:37,915.915 INFO    ] No update needed
[2026-10-18 14:38:37,917.917 INFO    ] Checking for camera pi updates...
[2026-10-18 14:38:37,954.954 INFO    ] 200
[2026-10-18 14:38:37,957.957 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:38:37,997.997 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:38:48,012.012 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:38:48,047.047 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:38:48,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:38:48,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:38:48,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:38:48,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:38:50,110.110 INFO    ] ================================================
[2026-10-18 14:38:50,125.125 INFO    ] Launching Daemon at Sun Oct 18 14:38:50 IST 2026
[2026-10-18 14:38:50,136.136 INFO    ] ================================================
[2026-10-18 14:38:50,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:38:50
[2026-10-18 14:38:51,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:38:51,541.541 INFO    ] Initializing speech engine...
[2026-10-18 14:38:51,547.547 INFO    ] 2026-10-18 14:38:51
[2026-10-18 14:38:51,845.845 INFO    ] 2026-10-18 14:38:51
[2026-10-18 14:38:51,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:38:52,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:38:52,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:38:52,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:38:52,347.347 INFO    ] time= 18/10/2026 14:38:52
[2026-10-18 14:38:52,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:38:52,461.461 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:38:52,645.645 INFO    ] No existing commands found in stream
[2026-10-18 14:38:57,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:38:57,673.673 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-18 14:39:00,912.912 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:39:00,915.915 INFO    ] Checking for system updates...
[2026-10-18 14:39:00,951.951 INFO    ] 200
[2026-10-18 14:39:00,954.954 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:39:01,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:39:01,010.010 INFO    ] No update needed
[2026-10-18 14:39:01,012.012 INFO    ] Checking for camera pi updates...
[2026-10-18 14:39:01,046.046 INFO    ] 200
[2026-10-18 14:39:01,049.049 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:39:01,107.107 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:39:11,123.123 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:39:11,159.159 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:39:11,168.168 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:39:11,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:39:11,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:39:11,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:39:13,220.220 INFO    ] ================================================
[2026-10-18 14:39:13,236.236 INFO    ] Launching Daemon at Sun Oct 18 14:39:13 IST 2026
[2026-10-18 14:39:13,247.247 INFO    ] ================================================
[2026-10-18 14:39:13,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:39:13
[2026-10-18 14:39:14,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:39:14,666.666 INFO    ] Initializing speech engine...
[2026-10-18 14:39:14,676.676 INFO    ] 2026-10-18 14:39:14
[2026-10-18 14:39:14,933.933 INFO    ] 2026-10-18 14:39:14
[2026-10-18 14:39:14,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:39:15,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:39:15,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:39:15,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:39:15,477.477 INFO    ] time= 18/10/2026 14:39:15
[2026-10-18 14:39:15,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:39:15,501.501 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:39:15,627.627 INFO    ] No existing commands found in stream
[2026-10-18 14:39:20,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:39:20,641.641 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-18 14:39:23,679.679 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:39:23,682.682 INFO    ] Checking for system updates...
[2026-10-18 14:39:23,718.718 INFO    ] 200
[2026-10-18 14:39:23,721.721 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:39:23,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:39:23,778.778 INFO    ] No update needed
[2026-10-18 14:39:23,780.780 INFO    ] Checking for camera pi updates...
[2026-10-18 14:39:23,818.818 INFO    ] 200
[2026-10-18 14:39:23,820.820 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:39:23,860.860 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:39:33,872.872 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:39:33,907.907 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:39:33,917.917 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:39:33,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:39:33,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:39:33,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:39:35,971.971 INFO    ] ================================================
[2026-10-18 14:39:35,986.986 INFO    ] Launching Daemon at Sun Oct 18 14:39:35 IST 2026
[2026-10-18 14:39:36,997.997 INFO    ] ================================================
[2026-10-18 14:39:36,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:39:36
[2026-10-18 14:39:37,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:39:37,407.407 INFO    ] Initializing speech engine...
[2026-10-18 14:39:37,430.430 INFO    ] 2026-10-18 14:39:37
[2026-10-18 14:39:37,682.682 INFO    ] 2026-10-18 14:39:37
[2026-10-18 14:39:37,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:39:37,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:39:37,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:39:38,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:39:38,231.231 INFO    ] time= 18/10/2026 14:39:38
[2026-10-18 14:39:38,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:39:38,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:39:38,385.385 INFO    ] No existing commands found in stream
[2026-10-18 14:39:43,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:39:43,404.404 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-18 14:39:48,682.682 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 14:39:48,684.684 INFO    ] Checking for system updates...
[2026-10-18 14:39:48,721.721 INFO    ] 200
[2026-10-18 14:39:48,724.724 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:39:48,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:39:48,782.782 INFO    ] No update needed
[2026-10-18 14:39:48,785.785 INFO    ] Checking for camera pi updates...
[2026-10-18 14:39:48,820.820 INFO    ] 200
[2026-10-18 14:39:48,823.823 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:39:48,864.864 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:39:58,880.880 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:39:58,915.915 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:39:58,925.925 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:39:58,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:39:58,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:39:58,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:40:00,978.978 INFO    ] ================================================
[2026-10-18 14:40:00,993.993 INFO    ] Launching Daemon at Sun Oct 18 14:40:00 IST 2026
[2026-10-18 14:40:01,004.004 INFO    ] ================================================
[2026-10-18 14:40:01,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:40:01
[2026-10-18 14:40:02,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:40:03,163.163 INFO    ] Initializing speech engine...
[2026-10-18 14:40:03,182.182 INFO    ] 2026-10-18 14:40:03
[2026-10-18 14:40:03,529.529 INFO    ] 2026-10-18 14:40:03
[2026-10-18 14:40:03,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:40:03,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:40:03,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:40:03,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:40:04,024.024 INFO    ] time= 18/10/2026 14:40:03
[2026-10-18 14:40:04,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:40:04,088.088 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:40:04,208.208 INFO    ] No existing commands found in stream
[2026-10-18 14:40:09,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:40:09,238.238 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-18 14:40:12,258.258 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 14:40:12,261.261 INFO    ] Checking for system updates...
[2026-10-18 14:40:12,297.297 INFO    ] 200
[2026-10-18 14:40:12,300.300 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:40:12,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:40:12,361.361 INFO    ] No update needed
[2026-10-18 14:40:12,363.363 INFO    ] Checking for camera pi updates...
[2026-10-18 14:40:12,400.400 INFO    ] 200
[2026-10-18 14:40:12,403.403 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:40:12,443.443 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:40:22,459.459 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:40:22,493.493 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:40:22,503.503 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:40:22,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:40:22,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:40:22,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:40:24,555.555 INFO    ] ================================================
[2026-10-18 14:40:24,570.570 INFO    ] Launching Daemon at Sun Oct 18 14:40:24 IST 2026
[2026-10-18 14:40:24,581.581 INFO    ] ================================================
[2026-10-18 14:40:25,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:40:25
[2026-10-18 14:40:25,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:40:25,987.987 INFO    ] Initializing speech engine...
[2026-10-18 14:40:26,001.001 INFO    ] 2026-10-18 14:40:25
[2026-10-18 14:40:26,267.267 INFO    ] 2026-10-18 14:40:26
[2026-10-18 14:40:26,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:40:26,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:40:26,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:40:26,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:40:26,769.769 INFO    ] time= 18/10/2026 14:40:26
[2026-10-18 14:40:26,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:40:26,843.843 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:40:26,996.996 INFO    ] No existing commands found in stream
[2026-10-18 14:40:32,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:40:32,012.012 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-18 14:40:34,934.934 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:40:34,937.937 INFO    ] Checking for system updates...
[2026-10-18 14:40:34,977.977 INFO    ] 200
[2026-10-18 14:40:34,979.979 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:40:35,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:40:35,037.037 INFO    ] No update needed
[2026-10-18 14:40:35,040.040 INFO    ] Checking for camera pi updates...
[2026-10-18 14:40:35,077.077 INFO    ] 200
[2026-10-18 14:40:35,080.080 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:40:35,120.120 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:40:45,133.133 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:40:45,171.171 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:40:45,181.181 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:40:45,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:40:45,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:40:45,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:40:47,237.237 INFO    ] ================================================
[2026-10-18 14:40:47,252.252 INFO    ] Launching Daemon at Sun Oct 18 14:40:47 IST 2026
[2026-10-18 14:40:47,263.263 INFO    ] ================================================
[2026-10-18 14:40:47,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:40:47
[2026-10-18 14:40:48,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:40:48,890.890 INFO    ] Initializing speech engine...
[2026-10-18 14:40:48,898.898 INFO    ] 2026-10-18 14:40:48
[2026-10-18 14:40:49,189.189 INFO    ] 2026-10-18 14:40:49
[2026-10-18 14:40:49,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:40:49,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:40:49,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:40:49,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:40:49,750.750 INFO    ] time= 18/10/2026 14:40:49
[2026-10-18 14:40:49,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:40:49,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:40:49,931.931 INFO    ] No existing commands found in stream
[2026-10-18 14:40:54,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:40:54,966.966 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-18 14:40:59,161.161 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:40:59,164.164 INFO    ] Checking for system updates...
[2026-10-18 14:40:59,202.202 INFO    ] 200
[2026-10-18 14:40:59,205.205 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:40:59,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:40:59,262.262 INFO    ] No update needed
[2026-10-18 14:40:59,265.265 INFO    ] Checking for camera pi updates...
[2026-10-18 14:40:59,300.300 INFO    ] 200
[2026-10-18 14:40:59,302.302 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:40:59,349.349 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:41:09,363.363 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:41:09,397.397 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:41:09,407.407 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:41:09,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:41:09,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:41:09,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:41:11,459.459 INFO    ] ================================================
[2026-10-18 14:41:11,474.474 INFO    ] Launching Daemon at Sun Oct 18 14:41:11 IST 2026
[2026-10-18 14:41:11,485.485 INFO    ] ================================================
[2026-10-18 14:41:12,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:41:12
[2026-10-18 14:41:12,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:41:12,948.948 INFO    ] Initializing speech engine...
[2026-10-18 14:41:12,955.955 INFO    ] 2026-10-18 14:41:12
[2026-10-18 14:41:13,216.216 INFO    ] 2026-10-18 14:41:13
[2026-10-18 14:41:13,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:41:13,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:41:13,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:41:13,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:41:13,759.759 INFO    ] time= 18/10/2026 14:41:13
[2026-10-18 14:41:13,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:41:13,805.805 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:41:13,926.926 INFO    ] No existing commands found in stream
[2026-10-18 14:41:18,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:41:18,954.954 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-18 14:41:20,774.774 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 14:41:20,776.776 INFO    ] Checking for system updates...
[2026-10-18 14:41:20,813.813 INFO    ] 200
[2026-10-18 14:41:20,816.816 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:41:20,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:41:20,878.878 INFO    ] No update needed
[2026-10-18 14:41:20,881.881 INFO    ] Checking for camera pi updates...
[2026-10-18 14:41:20,914.914 INFO    ] 200
[2026-10-18 14:41:20,917.917 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:41:20,962.962 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:41:30,977.977 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:41:31,012.012 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:41:31,022.022 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:41:31,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:41:31,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:41:31,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:41:33,075.075 INFO    ] ================================================
[2026-10-18 14:41:33,091.091 INFO    ] Launching Daemon at Sun Oct 18 14:41:33 IST 2026
[2026-10-18 14:41:33,102.102 INFO    ] ================================================
[2026-10-18 14:41:33,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:41:33
[2026-10-18 14:41:34,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:41:34,539.539 INFO    ] Initializing speech engine...
[2026-10-18 14:41:34,548.548 INFO    ] 2026-10-18 14:41:34
[2026-10-18 14:41:34,806.806 INFO    ] 2026-10-18 14:41:34
[2026-10-18 14:41:34,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:41:35,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:41:35,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:41:35,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:41:35,273.273 INFO    ] time= 18/10/2026 14:41:35
[2026-10-18 14:41:35,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:41:35,362.362 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:41:35,507.507 INFO    ] No existing commands found in stream
[2026-10-18 14:41:40,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:41:40,530.530 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-18 14:41:41,278.278 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 14:41:41,284.284 INFO    ] Checking for system updates...
[2026-10-18 14:41:41,323.323 INFO    ] 200
[2026-10-18 14:41:41,325.325 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:41:41,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:41:41,381.381 INFO    ] No update needed
[2026-10-18 14:41:41,383.383 INFO    ] Checking for camera pi updates...
[2026-10-18 14:41:41,420.420 INFO    ] 200
[2026-10-18 14:41:41,423.423 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:41:41,463.463 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:41:51,478.478 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:41:51,513.513 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:41:51,522.522 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:41:51,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:41:51,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:41:51,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:41:53,576.576 INFO    ] ================================================
[2026-10-18 14:41:53,591.591 INFO    ] Launching Daemon at Sun Oct 18 14:41:53 IST 2026
[2026-10-18 14:41:53,602.602 INFO    ] ================================================
[2026-10-18 14:41:54,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:41:54
[2026-10-18 14:41:54,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:41:55,060.060 INFO    ] Initializing speech engine...
[2026-10-18 14:41:55,069.069 INFO    ] 2026-10-18 14:41:55
[2026-10-18 14:41:55,326.326 INFO    ] 2026-10-18 14:41:55
[2026-10-18 14:41:55,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:41:55,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:41:55,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:41:55,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:41:55,856.856 INFO    ] time= 18/10/2026 14:41:55
[2026-10-18 14:41:55,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:41:55,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:41:56,029.029 INFO    ] No existing commands found in stream
[2026-10-18 14:42:01,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:42:01,058.058 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-18 14:42:03,995.995 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:42:03,998.998 INFO    ] Checking for system updates...
[2026-10-18 14:42:04,034.034 INFO    ] 200
[2026-10-18 14:42:04,036.036 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:42:04,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:42:04,093.093 INFO    ] No update needed
[2026-10-18 14:42:04,095.095 INFO    ] Checking for camera pi updates...
[2026-10-18 14:42:04,128.128 INFO    ] 200
[2026-10-18 14:42:04,131.131 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:42:04,176.176 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:42:14,192.192 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:42:14,227.227 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:42:14,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:42:14,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:42:14,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:42:14,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:42:16,290.290 INFO    ] ================================================
[2026-10-18 14:42:16,305.305 INFO    ] Launching Daemon at Sun Oct 18 14:42:16 IST 2026
[2026-10-18 14:42:16,316.316 INFO    ] ================================================
[2026-10-18 14:42:16,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:42:16
[2026-10-18 14:42:17,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:42:17,773.773 INFO    ] Initializing speech engine...
[2026-10-18 14:42:17,780.780 INFO    ] 2026-10-18 14:42:17
[2026-10-18 14:42:18,039.039 INFO    ] 2026-10-18 14:42:18
[2026-10-18 14:42:18,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:42:18,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:42:18,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:42:18,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:42:18,595.595 INFO    ] time= 18/10/2026 14:42:18
[2026-10-18 14:42:18,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:42:18,630.630 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:42:18,760.760 INFO    ] No existing commands found in stream
[2026-10-18 14:42:23,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:42:23,794.794 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-18 14:42:24,893.893 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:42:24,895.895 INFO    ] Checking for system updates...
[2026-10-18 14:42:24,935.935 INFO    ] 200
[2026-10-18 14:42:24,938.938 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:42:24,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:42:24,999.999 INFO    ] No update needed
[2026-10-18 14:42:25,001.001 INFO    ] Checking for camera pi updates...
[2026-10-18 14:42:25,035.035 INFO    ] 200
[2026-10-18 14:42:25,037.037 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:42:25,082.082 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:42:35,098.098 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:42:35,138.138 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:42:35,149.149 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:42:35,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:42:35,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:42:35,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:42:37,207.207 INFO    ] ================================================
[2026-10-18 14:42:37,222.222 INFO    ] Launching Daemon at Sun Oct 18 14:42:37 IST 2026
[2026-10-18 14:42:37,233.233 INFO    ] ================================================
[2026-10-18 14:42:37,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:42:37
[2026-10-18 14:42:38,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:42:38,654.654 INFO    ] Initializing speech engine...
[2026-10-18 14:42:38,671.671 INFO    ] 2026-10-18 14:42:38
[2026-10-18 14:42:38,957.957 INFO    ] 2026-10-18 14:42:38
[2026-10-18 14:42:38,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:42:39,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:42:39,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:42:39,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:42:39,446.446 INFO    ] time= 18/10/2026 14:42:39
[2026-10-18 14:42:39,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:42:39,529.529 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:42:39,617.617 INFO    ] No existing commands found in stream
[2026-10-18 14:42:44,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:42:44,631.631 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-18 14:42:45,197.197 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:42:45,200.200 INFO    ] Checking for system updates...
[2026-10-18 14:42:45,244.244 INFO    ] 200
[2026-10-18 14:42:45,247.247 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:42:45,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:42:45,313.313 INFO    ] No update needed
[2026-10-18 14:42:45,315.315 INFO    ] Checking for camera pi updates...
[2026-10-18 14:42:45,356.356 INFO    ] 200
[2026-10-18 14:42:45,359.359 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:42:45,400.400 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:42:55,416.416 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:42:55,450.450 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:42:55,460.460 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:42:55,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:42:55,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:42:55,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:42:57,511.511 INFO    ] ================================================
[2026-10-18 14:42:57,526.526 INFO    ] Launching Daemon at Sun Oct 18 14:42:57 IST 2026
[2026-10-18 14:42:57,538.538 INFO    ] ================================================
[2026-10-18 14:42:58,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:42:58
[2026-10-18 14:42:58,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:42:58,950.950 INFO    ] Initializing speech engine...
[2026-10-18 14:42:58,958.958 INFO    ] 2026-10-18 14:42:58
[2026-10-18 14:42:59,251.251 INFO    ] 2026-10-18 14:42:59
[2026-10-18 14:42:59,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:42:59,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:42:59,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:42:59,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:42:59,860.860 INFO    ] time= 18/10/2026 14:42:59
[2026-10-18 14:42:59,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:42:59,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:43:00,061.061 INFO    ] No existing commands found in stream
[2026-10-18 14:43:05,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:43:05,077.077 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-18 14:43:07,757.757 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:43:07,759.759 INFO    ] Checking for system updates...
[2026-10-18 14:43:07,796.796 INFO    ] 200
[2026-10-18 14:43:07,798.798 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:43:07,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:43:07,858.858 INFO    ] No update needed
[2026-10-18 14:43:07,860.860 INFO    ] Checking for camera pi updates...
[2026-10-18 14:43:07,901.901 INFO    ] 200
[2026-10-18 14:43:07,903.903 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:43:07,947.947 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:43:17,962.962 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:43:17,996.996 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:43:18,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:43:18,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:43:18,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:43:18,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:43:20,057.057 INFO    ] ================================================
[2026-10-18 14:43:20,073.073 INFO    ] Launching Daemon at Sun Oct 18 14:43:20 IST 2026
[2026-10-18 14:43:20,083.083 INFO    ] ================================================
[2026-10-18 14:43:20,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:43:20
[2026-10-18 14:43:21,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:43:21,677.677 INFO    ] Initializing speech engine...
[2026-10-18 14:43:21,691.691 INFO    ] 2026-10-18 14:43:21
[2026-10-18 14:43:21,975.975 INFO    ] 2026-10-18 14:43:21
[2026-10-18 14:43:22,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:43:22,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:43:22,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:43:22,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:43:22,712.712 INFO    ] time= 18/10/2026 14:43:22
[2026-10-18 14:43:22,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:43:22,788.788 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:43:22,947.947 INFO    ] No existing commands found in stream
[2026-10-18 14:43:27,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:43:27,966.966 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-18 14:43:31,182.182 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:43:31,185.185 INFO    ] Checking for system updates...
[2026-10-18 14:43:31,225.225 INFO    ] 200
[2026-10-18 14:43:31,228.228 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:43:31,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:43:31,291.291 INFO    ] No update needed
[2026-10-18 14:43:31,294.294 INFO    ] Checking for camera pi updates...
[2026-10-18 14:43:31,328.328 INFO    ] 200
[2026-10-18 14:43:31,331.331 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:43:31,376.376 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:43:41,392.392 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:43:41,431.431 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:43:41,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:43:41,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:43:41,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:43:41,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:43:43,497.497 INFO    ] ================================================
[2026-10-18 14:43:43,512.512 INFO    ] Launching Daemon at Sun Oct 18 14:43:43 IST 2026
[2026-10-18 14:43:43,523.523 INFO    ] ================================================
[2026-10-18 14:43:44,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:43:44
[2026-10-18 14:43:44,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:43:45,162.162 INFO    ] Initializing speech engine...
[2026-10-18 14:43:45,170.170 INFO    ] 2026-10-18 14:43:45
[2026-10-18 14:43:45,460.460 INFO    ] 2026-10-18 14:43:45
[2026-10-18 14:43:45,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:43:45,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:43:45,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:43:45,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:43:45,999.999 INFO    ] time= 18/10/2026 14:43:45
[2026-10-18 14:43:46,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:43:46,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:43:46,155.155 INFO    ] No existing commands found in stream
[2026-10-18 14:43:51,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:43:51,179.179 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-18 14:43:54,403.403 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 14:43:54,406.406 INFO    ] Checking for system updates...
[2026-10-18 14:43:54,443.443 INFO    ] 200
[2026-10-18 14:43:54,446.446 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:43:54,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:43:54,509.509 INFO    ] No update needed
[2026-10-18 14:43:54,512.512 INFO    ] Checking for camera pi updates...
[2026-10-18 14:43:54,550.550 INFO    ] 200
[2026-10-18 14:43:54,553.553 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:43:54,595.595 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:44:04,610.610 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:44:04,649.649 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:44:04,660.660 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:44:04,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:44:04,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:44:04,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:44:06,716.716 INFO    ] ================================================
[2026-10-18 14:44:06,732.732 INFO    ] Launching Daemon at Sun Oct 18 14:44:06 IST 2026
[2026-10-18 14:44:06,742.742 INFO    ] ================================================
[2026-10-18 14:44:07,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:44:07
[2026-10-18 14:44:07,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:44:08,172.172 INFO    ] Initializing speech engine...
[2026-10-18 14:44:08,181.181 INFO    ] 2026-10-18 14:44:08
[2026-10-18 14:44:08,434.434 INFO    ] 2026-10-18 14:44:08
[2026-10-18 14:44:08,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:44:08,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:44:08,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:44:08,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:44:08,942.942 INFO    ] time= 18/10/2026 14:44:08
[2026-10-18 14:44:08,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:44:09,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:44:09,157.157 INFO    ] No existing commands found in stream
[2026-10-18 14:44:14,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:44:14,176.176 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-18 14:44:16,405.405 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:44:16,408.408 INFO    ] Checking for system updates...
[2026-10-18 14:44:16,447.447 INFO    ] 200
[2026-10-18 14:44:16,449.449 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:44:16,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:44:16,512.512 INFO    ] No update needed
[2026-10-18 14:44:16,514.514 INFO    ] Checking for camera pi updates...
[2026-10-18 14:44:16,548.548 INFO    ] 200
[2026-10-18 14:44:16,551.551 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:44:16,593.593 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:44:26,608.608 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:44:26,643.643 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:44:26,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:44:26,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:44:26,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:44:26,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:44:28,707.707 INFO    ] ================================================
[2026-10-18 14:44:28,722.722 INFO    ] Launching Daemon at Sun Oct 18 14:44:28 IST 2026
[2026-10-18 14:44:28,733.733 INFO    ] ================================================
[2026-10-18 14:44:29,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:44:29
[2026-10-18 14:44:30,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:44:30,365.365 INFO    ] Initializing speech engine...
[2026-10-18 14:44:30,371.371 INFO    ] 2026-10-18 14:44:30
[2026-10-18 14:44:30,656.656 INFO    ] 2026-10-18 14:44:30
[2026-10-18 14:44:30,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:44:31,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:44:31,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:44:31,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:44:31,385.385 INFO    ] time= 18/10/2026 14:44:31
[2026-10-18 14:44:31,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:44:31,466.466 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:44:31,640.640 INFO    ] No existing commands found in stream
[2026-10-18 14:44:36,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:44:36,660.660 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-18 14:44:37,651.651 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:44:37,654.654 INFO    ] Checking for system updates...
[2026-10-18 14:44:37,691.691 INFO    ] 200
[2026-10-18 14:44:37,695.695 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:44:37,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:44:37,771.771 INFO    ] No update needed
[2026-10-18 14:44:37,774.774 INFO    ] Checking for camera pi updates...
[2026-10-18 14:44:37,813.813 INFO    ] 200
[2026-10-18 14:44:37,816.816 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:44:37,862.862 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:44:47,878.878 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:44:47,918.918 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:44:47,929.929 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:44:47,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:44:47,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:44:47,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:44:49,984.984 INFO    ] ================================================
[2026-10-18 14:44:50,999.999 INFO    ] Launching Daemon at Sun Oct 18 14:44:49 IST 2026
[2026-10-18 14:44:50,010.010 INFO    ] ================================================
[2026-10-18 14:44:50,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:44:50
[2026-10-18 14:44:51,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:44:51,638.638 INFO    ] Initializing speech engine...
[2026-10-18 14:44:51,649.649 INFO    ] 2026-10-18 14:44:51
[2026-10-18 14:44:51,962.962 INFO    ] 2026-10-18 14:44:51
[2026-10-18 14:44:52,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:44:52,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:44:52,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:44:52,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:44:52,463.463 INFO    ] time= 18/10/2026 14:44:52
[2026-10-18 14:44:52,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:44:52,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:44:52,647.647 INFO    ] No existing commands found in stream
[2026-10-18 14:44:57,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:44:57,687.687 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-18 14:45:00,082.082 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:45:00,085.085 INFO    ] Checking for system updates...
[2026-10-18 14:45:00,122.122 INFO    ] 200
[2026-10-18 14:45:00,124.124 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:45:00,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:45:00,181.181 INFO    ] No update needed
[2026-10-18 14:45:00,183.183 INFO    ] Checking for camera pi updates...
[2026-10-18 14:45:00,218.218 INFO    ] 200
[2026-10-18 14:45:00,220.220 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:45:00,261.261 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:45:10,277.277 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:45:10,312.312 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:45:10,322.322 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:45:10,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:45:10,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:45:10,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:45:12,374.374 INFO    ] ================================================
[2026-10-18 14:45:12,389.389 INFO    ] Launching Daemon at Sun Oct 18 14:45:12 IST 2026
[2026-10-18 14:45:12,400.400 INFO    ] ================================================
[2026-10-18 14:45:13,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:45:13
[2026-10-18 14:45:13,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:45:14,031.031 INFO    ] Initializing speech engine...
[2026-10-18 14:45:14,045.045 INFO    ] 2026-10-18 14:45:14
[2026-10-18 14:45:14,325.325 INFO    ] 2026-10-18 14:45:14
[2026-10-18 14:45:14,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:45:14,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:45:14,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:45:14,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:45:14,865.865 INFO    ] time= 18/10/2026 14:45:14
[2026-10-18 14:45:14,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:45:14,911.911 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:45:15,079.079 INFO    ] No existing commands found in stream
[2026-10-18 14:45:20,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:45:20,113.113 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-18 14:45:21,421.421 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:45:21,424.424 INFO    ] Checking for system updates...
[2026-10-18 14:45:21,462.462 INFO    ] 200
[2026-10-18 14:45:21,465.465 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:45:21,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:45:21,521.521 INFO    ] No update needed
[2026-10-18 14:45:21,523.523 INFO    ] Checking for camera pi updates...
[2026-10-18 14:45:21,557.557 INFO    ] 200
[2026-10-18 14:45:21,559.559 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:45:21,605.605 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:45:31,619.619 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:45:31,659.659 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:45:31,670.670 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:45:31,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:45:31,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:45:31,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:45:33,729.729 INFO    ] ================================================
[2026-10-18 14:45:33,744.744 INFO    ] Launching Daemon at Sun Oct 18 14:45:33 IST 2026
[2026-10-18 14:45:33,755.755 INFO    ] ================================================
[2026-10-18 14:45:34,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:45:34
[2026-10-18 14:45:34,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:45:35,192.192 INFO    ] Initializing speech engine...
[2026-10-18 14:45:35,201.201 INFO    ] 2026-10-18 14:45:35
[2026-10-18 14:45:35,447.447 INFO    ] 2026-10-18 14:45:35
[2026-10-18 14:45:35,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:45:35,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:45:35,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:45:35,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:45:36,033.033 INFO    ] time= 18/10/2026 14:45:35
[2026-10-18 14:45:36,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:45:36,062.062 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:45:36,211.211 INFO    ] No existing commands found in stream
[2026-10-18 14:45:41,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:45:41,246.246 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-18 14:45:44,548.548 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:45:44,551.551 INFO    ] Checking for system updates...
[2026-10-18 14:45:44,588.588 INFO    ] 200
[2026-10-18 14:45:44,591.591 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:45:44,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:45:44,647.647 INFO    ] No update needed
[2026-10-18 14:45:44,649.649 INFO    ] Checking for camera pi updates...
[2026-10-18 14:45:44,684.684 INFO    ] 200
[2026-10-18 14:45:44,687.687 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:45:44,727.727 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:45:54,742.742 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:45:54,777.777 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:45:54,787.787 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:45:54,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:45:54,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:45:54,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:45:56,840.840 INFO    ] ================================================
[2026-10-18 14:45:56,855.855 INFO    ] Launching Daemon at Sun Oct 18 14:45:56 IST 2026
[2026-10-18 14:45:56,866.866 INFO    ] ================================================
[2026-10-18 14:45:57,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:45:57
[2026-10-18 14:45:58,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:45:58,311.311 INFO    ] Initializing speech engine...
[2026-10-18 14:45:58,317.317 INFO    ] 2026-10-18 14:45:58
[2026-10-18 14:45:58,624.624 INFO    ] 2026-10-18 14:45:58
[2026-10-18 14:45:58,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:45:58,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:45:58,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:45:59,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:45:59,089.089 INFO    ] time= 18/10/2026 14:45:59
[2026-10-18 14:45:59,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:45:59,201.201 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:45:59,329.329 INFO    ] No existing commands found in stream
[2026-10-18 14:46:04,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:46:04,360.360 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-18 14:46:08,620.620 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:46:08,623.623 INFO    ] Checking for system updates...
[2026-10-18 14:46:08,659.659 INFO    ] 200
[2026-10-18 14:46:08,661.661 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:46:08,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:46:08,730.730 INFO    ] No update needed
[2026-10-18 14:46:08,733.733 INFO    ] Checking for camera pi updates...
[2026-10-18 14:46:08,769.769 INFO    ] 200
[2026-10-18 14:46:08,775.775 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:46:08,816.816 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:46:18,831.831 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:46:18,870.870 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:46:18,880.880 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:46:18,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:46:18,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:46:18,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:46:20,934.934 INFO    ] ================================================
[2026-10-18 14:46:20,949.949 INFO    ] Launching Daemon at Sun Oct 18 14:46:20 IST 2026
[2026-10-18 14:46:20,959.959 INFO    ] ================================================
[2026-10-18 14:46:21,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:46:21
[2026-10-18 14:46:22,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:46:22,385.385 INFO    ] Initializing speech engine...
[2026-10-18 14:46:22,391.391 INFO    ] 2026-10-18 14:46:22
[2026-10-18 14:46:22,679.679 INFO    ] 2026-10-18 14:46:22
[2026-10-18 14:46:22,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:46:22,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:46:23,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:46:23,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:46:23,289.289 INFO    ] time= 18/10/2026 14:46:23
[2026-10-18 14:46:23,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:46:23,312.312 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:46:23,448.448 INFO    ] No existing commands found in stream
[2026-10-18 14:46:28,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:46:28,467.467 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-18 14:46:30,537.537 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:46:30,539.539 INFO    ] Checking for system updates...
[2026-10-18 14:46:30,575.575 INFO    ] 200
[2026-10-18 14:46:30,577.577 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:46:30,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:46:30,636.636 INFO    ] No update needed
[2026-10-18 14:46:30,639.639 INFO    ] Checking for camera pi updates...
[2026-10-18 14:46:30,672.672 INFO    ] 200
[2026-10-18 14:46:30,674.674 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:46:30,714.714 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:46:40,729.729 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:46:40,764.764 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:46:40,774.774 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:46:40,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:46:40,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:46:40,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:46:42,826.826 INFO    ] ================================================
[2026-10-18 14:46:42,841.841 INFO    ] Launching Daemon at Sun Oct 18 14:46:42 IST 2026
[2026-10-18 14:46:42,852.852 INFO    ] ================================================
[2026-10-18 14:46:43,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:46:43
[2026-10-18 14:46:44,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:46:44,284.284 INFO    ] Initializing speech engine...
[2026-10-18 14:46:44,293.293 INFO    ] 2026-10-18 14:46:44
[2026-10-18 14:46:44,573.573 INFO    ] 2026-10-18 14:46:44
[2026-10-18 14:46:44,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:46:44,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:46:44,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:46:44,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:46:45,006.006 INFO    ] time= 18/10/2026 14:46:45
[2026-10-18 14:46:45,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:46:45,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:46:45,193.193 INFO    ] No existing commands found in stream
[2026-10-18 14:46:50,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:46:50,231.231 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-18 14:46:51,299.299 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:46:51,302.302 INFO    ] Checking for system updates...
[2026-10-18 14:46:51,337.337 INFO    ] 200
[2026-10-18 14:46:51,340.340 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:46:51,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:46:51,394.394 INFO    ] No update needed
[2026-10-18 14:46:51,396.396 INFO    ] Checking for camera pi updates...
[2026-10-18 14:46:51,430.430 INFO    ] 200
[2026-10-18 14:46:51,433.433 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:46:51,473.473 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:47:01,488.488 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:47:01,522.522 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:47:01,532.532 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:47:01,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:47:01,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:47:01,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:47:03,588.588 INFO    ] ================================================
[2026-10-18 14:47:03,603.603 INFO    ] Launching Daemon at Sun Oct 18 14:47:03 IST 2026
[2026-10-18 14:47:03,614.614 INFO    ] ================================================
[2026-10-18 14:47:04,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:47:04
[2026-10-18 14:47:04,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:47:05,038.038 INFO    ] Initializing speech engine...
[2026-10-18 14:47:05,047.047 INFO    ] 2026-10-18 14:47:05
[2026-10-18 14:47:05,294.294 INFO    ] 2026-10-18 14:47:05
[2026-10-18 14:47:05,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:47:05,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:47:05,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:47:05,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:47:05,848.848 INFO    ] time= 18/10/2026 14:47:05
[2026-10-18 14:47:05,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:47:05,872.872 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:47:06,005.005 INFO    ] No existing commands found in stream
[2026-10-18 14:47:11,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:47:11,026.026 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-18 14:47:12,342.342 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:47:12,345.345 INFO    ] Checking for system updates...
[2026-10-18 14:47:12,384.384 INFO    ] 200
[2026-10-18 14:47:12,387.387 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:47:12,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:47:12,441.441 INFO    ] No update needed
[2026-10-18 14:47:12,444.444 INFO    ] Checking for camera pi updates...
[2026-10-18 14:47:12,477.477 INFO    ] 200
[2026-10-18 14:47:12,480.480 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:47:12,528.528 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:47:22,543.543 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:47:22,578.578 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:47:22,587.587 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:47:22,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:47:22,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:47:22,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:47:24,639.639 INFO    ] ================================================
[2026-10-18 14:47:24,654.654 INFO    ] Launching Daemon at Sun Oct 18 14:47:24 IST 2026
[2026-10-18 14:47:24,665.665 INFO    ] ================================================
[2026-10-18 14:47:25,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:47:25
[2026-10-18 14:47:25,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:47:26,149.149 INFO    ] Initializing speech engine...
[2026-10-18 14:47:26,163.163 INFO    ] 2026-10-18 14:47:26
[2026-10-18 14:47:26,448.448 INFO    ] 2026-10-18 14:47:26
[2026-10-18 14:47:26,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:47:26,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:47:26,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:47:26,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:47:26,980.980 INFO    ] time= 18/10/2026 14:47:26
[2026-10-18 14:47:27,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:47:27,028.028 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:47:27,140.140 INFO    ] No existing commands found in stream
[2026-10-18 14:47:32,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:47:32,179.179 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-18 14:47:35,817.817 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:47:35,820.820 INFO    ] Checking for system updates...
[2026-10-18 14:47:35,857.857 INFO    ] 200
[2026-10-18 14:47:35,860.860 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:47:35,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:47:35,916.916 INFO    ] No update needed
[2026-10-18 14:47:35,919.919 INFO    ] Checking for camera pi updates...
[2026-10-18 14:47:35,952.952 INFO    ] 200
[2026-10-18 14:47:35,955.955 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:47:35,999.999 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:47:46,014.014 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:47:46,049.049 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:47:46,058.058 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:47:46,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:47:46,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:47:46,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:47:48,111.111 INFO    ] ================================================
[2026-10-18 14:47:48,126.126 INFO    ] Launching Daemon at Sun Oct 18 14:47:48 IST 2026
[2026-10-18 14:47:48,136.136 INFO    ] ================================================
[2026-10-18 14:47:48,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:47:48
[2026-10-18 14:47:49,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:47:49,564.564 INFO    ] Initializing speech engine...
[2026-10-18 14:47:49,572.572 INFO    ] 2026-10-18 14:47:49
[2026-10-18 14:47:49,823.823 INFO    ] 2026-10-18 14:47:49
[2026-10-18 14:47:49,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:47:50,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:47:50,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:47:50,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:47:50,393.393 INFO    ] time= 18/10/2026 14:47:50
[2026-10-18 14:47:50,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:47:50,414.414 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:47:50,535.535 INFO    ] No existing commands found in stream
[2026-10-18 14:47:55,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:47:55,565.565 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-18 14:47:59,439.439 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 14:47:59,442.442 INFO    ] Checking for system updates...
[2026-10-18 14:47:59,481.481 INFO    ] 200
[2026-10-18 14:47:59,483.483 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:47:59,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:47:59,538.538 INFO    ] No update needed
[2026-10-18 14:47:59,541.541 INFO    ] Checking for camera pi updates...
[2026-10-18 14:47:59,577.577 INFO    ] 200
[2026-10-18 14:47:59,580.580 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:47:59,620.620 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:48:09,635.635 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:48:09,669.669 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:48:09,679.679 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:48:09,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:48:09,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:48:09,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:48:11,732.732 INFO    ] ================================================
[2026-10-18 14:48:11,747.747 INFO    ] Launching Daemon at Sun Oct 18 14:48:11 IST 2026
[2026-10-18 14:48:11,757.757 INFO    ] ================================================
[2026-10-18 14:48:12,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:48:12
[2026-10-18 14:48:12,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:48:13,228.228 INFO    ] Initializing speech engine...
[2026-10-18 14:48:13,239.239 INFO    ] 2026-10-18 14:48:13
[2026-10-18 14:48:13,501.501 INFO    ] 2026-10-18 14:48:13
[2026-10-18 14:48:13,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:48:13,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:48:13,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:48:14,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:48:14,045.045 INFO    ] time= 18/10/2026 14:48:14
[2026-10-18 14:48:14,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:48:14,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:48:14,200.200 INFO    ] No existing commands found in stream
[2026-10-18 14:48:19,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:48:19,221.221 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-18 14:48:21,437.437 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:48:21,440.440 INFO    ] Checking for system updates...
[2026-10-18 14:48:21,477.477 INFO    ] 200
[2026-10-18 14:48:21,479.479 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:48:21,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:48:21,539.539 INFO    ] No update needed
[2026-10-18 14:48:21,542.542 INFO    ] Checking for camera pi updates...
[2026-10-18 14:48:21,579.579 INFO    ] 200
[2026-10-18 14:48:21,581.581 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:48:21,621.621 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:48:31,636.636 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:48:31,676.676 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:48:31,688.688 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:48:31,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:48:31,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:48:31,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:48:33,747.747 INFO    ] ================================================
[2026-10-18 14:48:33,764.764 INFO    ] Launching Daemon at Sun Oct 18 14:48:33 IST 2026
[2026-10-18 14:48:33,776.776 INFO    ] ================================================
[2026-10-18 14:48:34,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:48:34
[2026-10-18 14:48:34,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:48:35,235.235 INFO    ] Initializing speech engine...
[2026-10-18 14:48:35,249.249 INFO    ] 2026-10-18 14:48:35
[2026-10-18 14:48:35,538.538 INFO    ] 2026-10-18 14:48:35
[2026-10-18 14:48:35,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:48:35,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:48:35,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:48:35,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:48:35,959.959 INFO    ] time= 18/10/2026 14:48:35
[2026-10-18 14:48:35,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:48:35,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:48:36,126.126 INFO    ] No existing commands found in stream
[2026-10-18 14:48:41,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:48:41,154.154 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-18 14:48:44,380.380 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 14:48:44,383.383 INFO    ] Checking for system updates...
[2026-10-18 14:48:44,419.419 INFO    ] 200
[2026-10-18 14:48:44,421.421 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:48:44,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:48:44,476.476 INFO    ] No update needed
[2026-10-18 14:48:44,479.479 INFO    ] Checking for camera pi updates...
[2026-10-18 14:48:44,512.512 INFO    ] 200
[2026-10-18 14:48:44,514.514 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:48:44,555.555 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:48:54,570.570 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:48:54,606.606 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:48:54,616.616 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:48:54,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:48:54,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:48:54,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:48:56,669.669 INFO    ] ================================================
[2026-10-18 14:48:56,684.684 INFO    ] Launching Daemon at Sun Oct 18 14:48:56 IST 2026
[2026-10-18 14:48:56,695.695 INFO    ] ================================================
[2026-10-18 14:48:57,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:48:57
[2026-10-18 14:48:57,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:48:58,136.136 INFO    ] Initializing speech engine...
[2026-10-18 14:48:58,145.145 INFO    ] 2026-10-18 14:48:58
[2026-10-18 14:48:58,429.429 INFO    ] 2026-10-18 14:48:58
[2026-10-18 14:48:58,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:48:58,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:48:58,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:48:58,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:48:58,879.879 INFO    ] time= 18/10/2026 14:48:58
[2026-10-18 14:48:58,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:48:58,892.892 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:48:59,035.035 INFO    ] No existing commands found in stream
[2026-10-18 14:49:04,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:49:04,059.059 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-18 14:49:06,267.267 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:49:06,269.269 INFO    ] Checking for system updates...
[2026-10-18 14:49:06,310.310 INFO    ] 200
[2026-10-18 14:49:06,313.313 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:49:06,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:49:06,376.376 INFO    ] No update needed
[2026-10-18 14:49:06,380.380 INFO    ] Checking for camera pi updates...
[2026-10-18 14:49:06,419.419 INFO    ] 200
[2026-10-18 14:49:06,422.422 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:49:06,463.463 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:49:16,479.479 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:49:16,519.519 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:49:16,531.531 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:49:16,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:49:16,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:49:16,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:49:18,588.588 INFO    ] ================================================
[2026-10-18 14:49:18,604.604 INFO    ] Launching Daemon at Sun Oct 18 14:49:18 IST 2026
[2026-10-18 14:49:18,615.615 INFO    ] ================================================
[2026-10-18 14:49:19,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:49:19
[2026-10-18 14:49:19,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:49:20,254.254 INFO    ] Initializing speech engine...
[2026-10-18 14:49:20,263.263 INFO    ] 2026-10-18 14:49:20
[2026-10-18 14:49:20,554.554 INFO    ] 2026-10-18 14:49:20
[2026-10-18 14:49:20,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:49:20,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:49:20,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:49:21,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:49:21,114.114 INFO    ] time= 18/10/2026 14:49:21
[2026-10-18 14:49:21,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:49:21,151.151 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:49:21,260.260 INFO    ] No existing commands found in stream
[2026-10-18 14:49:26,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:49:26,275.275 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-18 14:49:29,288.288 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:49:29,291.291 INFO    ] Checking for system updates...
[2026-10-18 14:49:29,332.332 INFO    ] 200
[2026-10-18 14:49:29,335.335 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:49:29,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:49:29,396.396 INFO    ] No update needed
[2026-10-18 14:49:29,399.399 INFO    ] Checking for camera pi updates...
[2026-10-18 14:49:29,433.433 INFO    ] 200
[2026-10-18 14:49:29,436.436 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:49:29,478.478 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:49:39,494.494 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:49:39,535.535 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:49:39,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:49:39,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:49:39,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:49:39,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:49:41,601.601 INFO    ] ================================================
[2026-10-18 14:49:41,618.618 INFO    ] Launching Daemon at Sun Oct 18 14:49:41 IST 2026
[2026-10-18 14:49:41,629.629 INFO    ] ================================================
[2026-10-18 14:49:42,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:49:42
[2026-10-18 14:49:42,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:49:43,028.028 INFO    ] Initializing speech engine...
[2026-10-18 14:49:43,043.043 INFO    ] 2026-10-18 14:49:43
[2026-10-18 14:49:43,309.309 INFO    ] 2026-10-18 14:49:43
[2026-10-18 14:49:43,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:49:43,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:49:43,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:49:43,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:49:43,872.872 INFO    ] time= 18/10/2026 14:49:43
[2026-10-18 14:49:43,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:49:43,900.900 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:49:44,047.047 INFO    ] No existing commands found in stream
[2026-10-18 14:49:49,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:49:49,085.085 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-18 14:49:52,659.659 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:49:52,662.662 INFO    ] Checking for system updates...
[2026-10-18 14:49:52,701.701 INFO    ] 200
[2026-10-18 14:49:52,703.703 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:49:52,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:49:52,764.764 INFO    ] No update needed
[2026-10-18 14:49:52,767.767 INFO    ] Checking for camera pi updates...
[2026-10-18 14:49:52,800.800 INFO    ] 200
[2026-10-18 14:49:52,802.802 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:49:52,848.848 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:50:02,863.863 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:50:02,925.925 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:50:02,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:50:02,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:50:02,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:50:02,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:50:05,008.008 INFO    ] ================================================
[2026-10-18 14:50:05,026.026 INFO    ] Launching Daemon at Sun Oct 18 14:50:05 IST 2026
[2026-10-18 14:50:05,037.037 INFO    ] ================================================
[2026-10-18 14:50:05,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:50:05
[2026-10-18 14:50:06,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:50:06,821.821 INFO    ] Initializing speech engine...
[2026-10-18 14:50:06,829.829 INFO    ] 2026-10-18 14:50:06
[2026-10-18 14:50:07,127.127 INFO    ] 2026-10-18 14:50:07
[2026-10-18 14:50:07,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:50:07,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:50:07,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:50:07,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:50:07,729.729 INFO    ] time= 18/10/2026 14:50:07
[2026-10-18 14:50:07,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:50:07,759.759 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:50:07,916.916 INFO    ] No existing commands found in stream
[2026-10-18 14:50:12,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:50:12,942.942 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-18 14:50:16,881.881 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:50:16,884.884 INFO    ] Checking for system updates...
[2026-10-18 14:50:16,923.923 INFO    ] 200
[2026-10-18 14:50:16,926.926 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:50:16,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:50:16,981.981 INFO    ] No update needed
[2026-10-18 14:50:16,983.983 INFO    ] Checking for camera pi updates...
[2026-10-18 14:50:17,016.016 INFO    ] 200
[2026-10-18 14:50:17,019.019 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:50:17,058.058 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:50:27,073.073 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:50:27,108.108 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:50:27,118.118 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:50:27,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:50:27,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:50:27,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:50:29,172.172 INFO    ] ================================================
[2026-10-18 14:50:29,187.187 INFO    ] Launching Daemon at Sun Oct 18 14:50:29 IST 2026
[2026-10-18 14:50:29,199.199 INFO    ] ================================================
[2026-10-18 14:50:29,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:50:29
[2026-10-18 14:50:30,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:50:30,652.652 INFO    ] Initializing speech engine...
[2026-10-18 14:50:30,660.660 INFO    ] 2026-10-18 14:50:30
[2026-10-18 14:50:30,906.906 INFO    ] 2026-10-18 14:50:30
[2026-10-18 14:50:30,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:50:31,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:50:31,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:50:31,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:50:31,461.461 INFO    ] time= 18/10/2026 14:50:31
[2026-10-18 14:50:31,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:50:31,485.485 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:50:31,615.615 INFO    ] No existing commands found in stream
[2026-10-18 14:50:36,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:50:36,630.630 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-18 14:50:40,086.086 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:50:40,088.088 INFO    ] Checking for system updates...
[2026-10-18 14:50:40,123.123 INFO    ] 200
[2026-10-18 14:50:40,126.126 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:50:40,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:50:40,180.180 INFO    ] No update needed
[2026-10-18 14:50:40,183.183 INFO    ] Checking for camera pi updates...
[2026-10-18 14:50:40,226.226 INFO    ] 200
[2026-10-18 14:50:40,228.228 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:50:40,275.275 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:50:50,290.290 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:50:50,324.324 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:50:50,334.334 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:50:50,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:50:50,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:50:50,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:50:52,387.387 INFO    ] ================================================
[2026-10-18 14:50:52,403.403 INFO    ] Launching Daemon at Sun Oct 18 14:50:52 IST 2026
[2026-10-18 14:50:52,415.415 INFO    ] ================================================
[2026-10-18 14:50:53,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:50:53
[2026-10-18 14:50:53,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:50:54,105.105 INFO    ] Initializing speech engine...
[2026-10-18 14:50:54,111.111 INFO    ] 2026-10-18 14:50:54
[2026-10-18 14:50:54,401.401 INFO    ] 2026-10-18 14:50:54
[2026-10-18 14:50:54,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:50:54,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:50:54,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:50:54,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:50:54,948.948 INFO    ] time= 18/10/2026 14:50:54
[2026-10-18 14:50:54,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:50:54,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:50:55,098.098 INFO    ] No existing commands found in stream
[2026-10-18 14:51:00,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:51:00,127.127 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-18 14:51:03,334.334 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:51:03,338.338 INFO    ] Checking for system updates...
[2026-10-18 14:51:03,376.376 INFO    ] 200
[2026-10-18 14:51:03,379.379 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:51:03,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:51:03,436.436 INFO    ] No update needed
[2026-10-18 14:51:03,439.439 INFO    ] Checking for camera pi updates...
[2026-10-18 14:51:03,473.473 INFO    ] 200
[2026-10-18 14:51:03,475.475 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:51:03,517.517 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:51:13,533.533 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:51:13,569.569 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:51:13,579.579 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:51:13,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:51:13,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:51:13,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:51:15,632.632 INFO    ] ================================================
[2026-10-18 14:51:15,647.647 INFO    ] Launching Daemon at Sun Oct 18 14:51:15 IST 2026
[2026-10-18 14:51:15,658.658 INFO    ] ================================================
[2026-10-18 14:51:16,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:51:16
[2026-10-18 14:51:16,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:51:17,077.077 INFO    ] Initializing speech engine...
[2026-10-18 14:51:17,084.084 INFO    ] 2026-10-18 14:51:17
[2026-10-18 14:51:17,331.331 INFO    ] 2026-10-18 14:51:17
[2026-10-18 14:51:17,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:51:17,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:51:17,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:51:17,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:51:17,884.884 INFO    ] time= 18/10/2026 14:51:17
[2026-10-18 14:51:17,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:51:17,908.908 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:51:18,039.039 INFO    ] No existing commands found in stream
[2026-10-18 14:51:23,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:51:23,057.057 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-18 14:51:24,881.881 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 14:51:24,884.884 INFO    ] Checking for system updates...
[2026-10-18 14:51:24,924.924 INFO    ] 200
[2026-10-18 14:51:24,926.926 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:51:24,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:51:24,989.989 INFO    ] No update needed
[2026-10-18 14:51:24,992.992 INFO    ] Checking for camera pi updates...
[2026-10-18 14:51:25,025.025 INFO    ] 200
[2026-10-18 14:51:25,028.028 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:51:25,068.068 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:51:35,083.083 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:51:35,118.118 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:51:35,127.127 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:51:35,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:51:35,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:51:35,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:51:37,181.181 INFO    ] ================================================
[2026-10-18 14:51:37,196.196 INFO    ] Launching Daemon at Sun Oct 18 14:51:37 IST 2026
[2026-10-18 14:51:37,207.207 INFO    ] ================================================
[2026-10-18 14:51:37,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:51:37
[2026-10-18 14:51:38,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:51:38,833.833 INFO    ] Initializing speech engine...
[2026-10-18 14:51:38,845.845 INFO    ] 2026-10-18 14:51:38
[2026-10-18 14:51:39,126.126 INFO    ] 2026-10-18 14:51:39
[2026-10-18 14:51:39,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:51:39,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:51:39,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:51:39,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:51:39,663.663 INFO    ] time= 18/10/2026 14:51:39
[2026-10-18 14:51:39,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:51:39,691.691 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:51:39,868.868 INFO    ] No existing commands found in stream
[2026-10-18 14:51:44,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:51:44,908.908 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-18 14:51:48,039.039 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 14:51:48,042.042 INFO    ] Checking for system updates...
[2026-10-18 14:51:48,083.083 INFO    ] 200
[2026-10-18 14:51:48,086.086 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:51:48,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:51:48,154.154 INFO    ] No update needed
[2026-10-18 14:51:48,156.156 INFO    ] Checking for camera pi updates...
[2026-10-18 14:51:48,192.192 INFO    ] 200
[2026-10-18 14:51:48,195.195 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:51:48,237.237 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:51:58,253.253 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:51:58,293.293 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:51:58,304.304 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:51:58,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:51:58,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:51:58,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:52:00,369.369 INFO    ] ================================================
[2026-10-18 14:52:00,385.385 INFO    ] Launching Daemon at Sun Oct 18 14:52:00 IST 2026
[2026-10-18 14:52:00,396.396 INFO    ] ================================================
[2026-10-18 14:52:01,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:52:01
[2026-10-18 14:52:01,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:52:02,129.129 INFO    ] Initializing speech engine...
[2026-10-18 14:52:02,151.151 INFO    ] 2026-10-18 14:52:02
[2026-10-18 14:52:02,432.432 INFO    ] 2026-10-18 14:52:02
[2026-10-18 14:52:02,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:52:02,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:52:02,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:52:02,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:52:02,877.877 INFO    ] time= 18/10/2026 14:52:02
[2026-10-18 14:52:02,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:52:02,916.916 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:52:03,053.053 INFO    ] No existing commands found in stream
[2026-10-18 14:52:08,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:52:08,086.086 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-18 14:52:12,310.310 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:52:12,312.312 INFO    ] Checking for system updates...
[2026-10-18 14:52:12,348.348 INFO    ] 200
[2026-10-18 14:52:12,350.350 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:52:12,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:52:12,406.406 INFO    ] No update needed
[2026-10-18 14:52:12,409.409 INFO    ] Checking for camera pi updates...
[2026-10-18 14:52:12,446.446 INFO    ] 200
[2026-10-18 14:52:12,448.448 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:52:12,493.493 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:52:22,508.508 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:52:22,543.543 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:52:22,553.553 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:52:22,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:52:22,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:52:22,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:52:24,606.606 INFO    ] ================================================
[2026-10-18 14:52:24,622.622 INFO    ] Launching Daemon at Sun Oct 18 14:52:24 IST 2026
[2026-10-18 14:52:24,633.633 INFO    ] ================================================
[2026-10-18 14:52:25,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:52:25
[2026-10-18 14:52:25,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:52:26,070.070 INFO    ] Initializing speech engine...
[2026-10-18 14:52:26,080.080 INFO    ] 2026-10-18 14:52:26
[2026-10-18 14:52:26,336.336 INFO    ] 2026-10-18 14:52:26
[2026-10-18 14:52:26,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:52:26,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:52:26,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:52:26,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:52:26,881.881 INFO    ] time= 18/10/2026 14:52:26
[2026-10-18 14:52:26,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:52:26,903.903 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:52:27,034.034 INFO    ] No existing commands found in stream
[2026-10-18 14:52:32,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:52:32,050.050 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-18 14:52:35,900.900 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:52:35,903.903 INFO    ] Checking for system updates...
[2026-10-18 14:52:35,938.938 INFO    ] 200
[2026-10-18 14:52:35,941.941 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:52:35,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:52:35,995.995 INFO    ] No update needed
[2026-10-18 14:52:35,998.998 INFO    ] Checking for camera pi updates...
[2026-10-18 14:52:36,031.031 INFO    ] 200
[2026-10-18 14:52:36,033.033 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:52:36,079.079 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:52:46,094.094 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:52:46,129.129 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:52:46,139.139 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:52:46,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:52:46,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:52:46,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:52:48,192.192 INFO    ] ================================================
[2026-10-18 14:52:48,207.207 INFO    ] Launching Daemon at Sun Oct 18 14:52:48 IST 2026
[2026-10-18 14:52:48,218.218 INFO    ] ================================================
[2026-10-18 14:52:48,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:52:48
[2026-10-18 14:52:49,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:52:49,875.875 INFO    ] Initializing speech engine...
[2026-10-18 14:52:49,887.887 INFO    ] 2026-10-18 14:52:49
[2026-10-18 14:52:50,158.158 INFO    ] 2026-10-18 14:52:50
[2026-10-18 14:52:50,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:52:50,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:52:50,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:52:50,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:52:50,728.728 INFO    ] time= 18/10/2026 14:52:50
[2026-10-18 14:52:50,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:52:50,765.765 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:52:50,896.896 INFO    ] No existing commands found in stream
[2026-10-18 14:52:55,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:52:55,935.935 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-18 14:52:59,865.865 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:52:59,873.873 INFO    ] Checking for system updates...
[2026-10-18 14:52:59,919.919 INFO    ] 200
[2026-10-18 14:52:59,921.921 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:52:59,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:52:59,987.987 INFO    ] No update needed
[2026-10-18 14:52:59,989.989 INFO    ] Checking for camera pi updates...
[2026-10-18 14:53:00,028.028 INFO    ] 200
[2026-10-18 14:53:00,031.031 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:53:00,073.073 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:53:10,088.088 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:53:10,129.129 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:53:10,140.140 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:53:10,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:53:10,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:53:10,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:53:12,195.195 INFO    ] ================================================
[2026-10-18 14:53:12,210.210 INFO    ] Launching Daemon at Sun Oct 18 14:53:12 IST 2026
[2026-10-18 14:53:12,221.221 INFO    ] ================================================
[2026-10-18 14:53:12,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:53:12
[2026-10-18 14:53:13,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:53:13,662.662 INFO    ] Initializing speech engine...
[2026-10-18 14:53:13,670.670 INFO    ] 2026-10-18 14:53:13
[2026-10-18 14:53:13,917.917 INFO    ] 2026-10-18 14:53:13
[2026-10-18 14:53:13,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:53:14,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:53:14,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:53:14,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:53:14,381.381 INFO    ] time= 18/10/2026 14:53:14
[2026-10-18 14:53:14,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:53:14,477.477 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:53:14,626.626 INFO    ] No existing commands found in stream
[2026-10-18 14:53:19,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:53:19,643.643 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-18 14:53:23,911.911 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:53:23,913.913 INFO    ] Checking for system updates...
[2026-10-18 14:53:23,950.950 INFO    ] 200
[2026-10-18 14:53:23,952.952 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:53:24,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:53:24,007.007 INFO    ] No update needed
[2026-10-18 14:53:24,010.010 INFO    ] Checking for camera pi updates...
[2026-10-18 14:53:24,044.044 INFO    ] 200
[2026-10-18 14:53:24,047.047 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:53:24,100.100 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:53:34,113.113 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:53:34,151.151 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:53:34,161.161 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:53:34,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:53:34,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:53:34,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:53:36,221.221 INFO    ] ================================================
[2026-10-18 14:53:36,238.238 INFO    ] Launching Daemon at Sun Oct 18 14:53:36 IST 2026
[2026-10-18 14:53:36,254.254 INFO    ] ================================================
[2026-10-18 14:53:36,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:53:36
[2026-10-18 14:53:37,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:53:37,771.771 INFO    ] Initializing speech engine...
[2026-10-18 14:53:37,789.789 INFO    ] 2026-10-18 14:53:37
[2026-10-18 14:53:38,098.098 INFO    ] 2026-10-18 14:53:38
[2026-10-18 14:53:38,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:53:38,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:53:38,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:53:38,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:53:38,516.516 INFO    ] time= 18/10/2026 14:53:38
[2026-10-18 14:53:38,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:53:38,562.562 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:53:38,657.657 INFO    ] No existing commands found in stream
[2026-10-18 14:53:43,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:53:43,676.676 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-18 14:53:44,320.320 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:53:44,322.322 INFO    ] Checking for system updates...
[2026-10-18 14:53:44,363.363 INFO    ] 200
[2026-10-18 14:53:44,365.365 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:53:44,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:53:44,428.428 INFO    ] No update needed
[2026-10-18 14:53:44,430.430 INFO    ] Checking for camera pi updates...
[2026-10-18 14:53:44,468.468 INFO    ] 200
[2026-10-18 14:53:44,471.471 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:53:44,516.516 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:53:54,532.532 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:53:54,567.567 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:53:54,577.577 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:53:54,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:53:54,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:53:54,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:53:56,629.629 INFO    ] ================================================
[2026-10-18 14:53:56,644.644 INFO    ] Launching Daemon at Sun Oct 18 14:53:56 IST 2026
[2026-10-18 14:53:56,655.655 INFO    ] ================================================
[2026-10-18 14:53:57,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:53:57
[2026-10-18 14:53:58,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:53:58,338.338 INFO    ] Initializing speech engine...
[2026-10-18 14:53:58,349.349 INFO    ] 2026-10-18 14:53:58
[2026-10-18 14:53:58,644.644 INFO    ] 2026-10-18 14:53:58
[2026-10-18 14:53:58,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:53:58,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:53:58,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:53:59,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:53:59,187.187 INFO    ] time= 18/10/2026 14:53:59
[2026-10-18 14:53:59,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:53:59,246.246 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:53:59,362.362 INFO    ] No existing commands found in stream
[2026-10-18 14:54:04,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:54:04,394.394 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-18 14:54:05,478.478 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:54:05,481.481 INFO    ] Checking for system updates...
[2026-10-18 14:54:05,521.521 INFO    ] 200
[2026-10-18 14:54:05,524.524 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:54:05,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:54:05,585.585 INFO    ] No update needed
[2026-10-18 14:54:05,588.588 INFO    ] Checking for camera pi updates...
[2026-10-18 14:54:05,625.625 INFO    ] 200
[2026-10-18 14:54:05,628.628 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:54:05,669.669 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:54:15,684.684 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:54:15,720.720 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:54:15,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:54:15,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:54:15,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:54:15,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:54:17,784.784 INFO    ] ================================================
[2026-10-18 14:54:17,800.800 INFO    ] Launching Daemon at Sun Oct 18 14:54:17 IST 2026
[2026-10-18 14:54:17,811.811 INFO    ] ================================================
[2026-10-18 14:54:18,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:54:18
[2026-10-18 14:54:19,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:54:19,411.411 INFO    ] Initializing speech engine...
[2026-10-18 14:54:19,420.420 INFO    ] 2026-10-18 14:54:19
[2026-10-18 14:54:19,681.681 INFO    ] 2026-10-18 14:54:19
[2026-10-18 14:54:19,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:54:19,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:54:19,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:54:20,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:54:20,226.226 INFO    ] time= 18/10/2026 14:54:20
[2026-10-18 14:54:20,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:54:20,254.254 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:54:20,382.382 INFO    ] No existing commands found in stream
[2026-10-18 14:54:25,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:54:25,410.410 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-18 14:54:28,545.545 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 14:54:28,548.548 INFO    ] Checking for system updates...
[2026-10-18 14:54:28,583.583 INFO    ] 200
[2026-10-18 14:54:28,586.586 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:54:28,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:54:28,640.640 INFO    ] No update needed
[2026-10-18 14:54:28,642.642 INFO    ] Checking for camera pi updates...
[2026-10-18 14:54:28,684.684 INFO    ] 200
[2026-10-18 14:54:28,686.686 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:54:28,732.732 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:54:38,747.747 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:54:38,781.781 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:54:38,797.797 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:54:38,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:54:38,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:54:38,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:54:40,855.855 INFO    ] ================================================
[2026-10-18 14:54:40,871.871 INFO    ] Launching Daemon at Sun Oct 18 14:54:40 IST 2026
[2026-10-18 14:54:40,883.883 INFO    ] ================================================
[2026-10-18 14:54:41,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:54:41
[2026-10-18 14:54:42,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:54:42,346.346 INFO    ] Initializing speech engine...
[2026-10-18 14:54:42,351.351 INFO    ] 2026-10-18 14:54:42
[2026-10-18 14:54:42,601.601 INFO    ] 2026-10-18 14:54:42
[2026-10-18 14:54:42,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:54:42,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:54:42,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:54:43,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:54:43,092.092 INFO    ] time= 18/10/2026 14:54:43
[2026-10-18 14:54:43,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:54:43,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:54:43,301.301 INFO    ] No existing commands found in stream
[2026-10-18 14:54:48,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:54:48,323.323 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-18 14:54:49,955.955 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 14:54:49,958.958 INFO    ] Checking for system updates...
[2026-10-18 14:54:49,998.998 INFO    ] 200
[2026-10-18 14:54:50,001.001 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:54:50,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:54:50,064.064 INFO    ] No update needed
[2026-10-18 14:54:50,066.066 INFO    ] Checking for camera pi updates...
[2026-10-18 14:54:50,104.104 INFO    ] 200
[2026-10-18 14:54:50,106.106 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:54:50,148.148 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:55:00,164.164 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:55:00,205.205 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:55:00,216.216 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:55:00,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:55:00,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:55:00,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:55:02,303.303 INFO    ] ================================================
[2026-10-18 14:55:02,324.324 INFO    ] Launching Daemon at Sun Oct 18 14:55:02 IST 2026
[2026-10-18 14:55:02,341.341 INFO    ] ================================================
[2026-10-18 14:55:02,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:55:02
[2026-10-18 14:55:03,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:55:03,859.859 INFO    ] Initializing speech engine...
[2026-10-18 14:55:03,866.866 INFO    ] 2026-10-18 14:55:03
[2026-10-18 14:55:04,129.129 INFO    ] 2026-10-18 14:55:04
[2026-10-18 14:55:04,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:55:04,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:55:04,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:55:04,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:55:04,541.541 INFO    ] time= 18/10/2026 14:55:04
[2026-10-18 14:55:04,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:55:04,609.609 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:55:04,740.740 INFO    ] No existing commands found in stream
[2026-10-18 14:55:09,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:55:09,754.754 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-18 14:55:13,538.538 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:55:13,540.540 INFO    ] Checking for system updates...
[2026-10-18 14:55:13,576.576 INFO    ] 200
[2026-10-18 14:55:13,578.578 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:55:13,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:55:13,632.632 INFO    ] No update needed
[2026-10-18 14:55:13,635.635 INFO    ] Checking for camera pi updates...
[2026-10-18 14:55:13,672.672 INFO    ] 200
[2026-10-18 14:55:13,674.674 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:55:13,719.719 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:55:23,734.734 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:55:23,769.769 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:55:23,779.779 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:55:23,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:55:23,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:55:23,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:55:25,831.831 INFO    ] ================================================
[2026-10-18 14:55:25,847.847 INFO    ] Launching Daemon at Sun Oct 18 14:55:25 IST 2026
[2026-10-18 14:55:25,858.858 INFO    ] ================================================
[2026-10-18 14:55:26,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:55:26
[2026-10-18 14:55:27,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:55:27,284.284 INFO    ] Initializing speech engine...
[2026-10-18 14:55:27,290.290 INFO    ] 2026-10-18 14:55:27
[2026-10-18 14:55:27,585.585 INFO    ] 2026-10-18 14:55:27
[2026-10-18 14:55:27,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:55:27,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:55:27,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:55:27,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:55:28,001.001 INFO    ] time= 18/10/2026 14:55:27
[2026-10-18 14:55:28,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:55:28,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:55:28,158.158 INFO    ] No existing commands found in stream
[2026-10-18 14:55:33,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:55:33,181.181 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-18 14:55:35,860.860 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:55:35,862.862 INFO    ] Checking for system updates...
[2026-10-18 14:55:35,901.901 INFO    ] 200
[2026-10-18 14:55:35,903.903 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:55:35,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:55:35,963.963 INFO    ] No update needed
[2026-10-18 14:55:35,965.965 INFO    ] Checking for camera pi updates...
[2026-10-18 14:55:36,002.002 INFO    ] 200
[2026-10-18 14:55:36,005.005 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:55:36,049.049 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:55:46,060.060 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:55:46,094.094 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:55:46,104.104 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:55:46,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:55:46,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:55:46,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:55:48,156.156 INFO    ] ================================================
[2026-10-18 14:55:48,172.172 INFO    ] Launching Daemon at Sun Oct 18 14:55:48 IST 2026
[2026-10-18 14:55:48,183.183 INFO    ] ================================================
[2026-10-18 14:55:48,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:55:48
[2026-10-18 14:55:49,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:55:49,601.601 INFO    ] Initializing speech engine...
[2026-10-18 14:55:49,610.610 INFO    ] 2026-10-18 14:55:49
[2026-10-18 14:55:49,856.856 INFO    ] 2026-10-18 14:55:49
[2026-10-18 14:55:49,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:55:50,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:55:50,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:55:50,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:55:50,408.408 INFO    ] time= 18/10/2026 14:55:50
[2026-10-18 14:55:50,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:55:50,432.432 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:55:50,564.564 INFO    ] No existing commands found in stream
[2026-10-18 14:55:55,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:55:55,585.585 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-18 14:55:58,291.291 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:55:58,294.294 INFO    ] Checking for system updates...
[2026-10-18 14:55:58,335.335 INFO    ] 200
[2026-10-18 14:55:58,338.338 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:55:58,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:55:58,401.401 INFO    ] No update needed
[2026-10-18 14:55:58,404.404 INFO    ] Checking for camera pi updates...
[2026-10-18 14:55:58,441.441 INFO    ] 200
[2026-10-18 14:55:58,444.444 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:55:58,485.485 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:56:08,500.500 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:56:08,540.540 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:56:08,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:56:08,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:56:08,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:56:08,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:56:10,608.608 INFO    ] ================================================
[2026-10-18 14:56:10,624.624 INFO    ] Launching Daemon at Sun Oct 18 14:56:10 IST 2026
[2026-10-18 14:56:10,634.634 INFO    ] ================================================
[2026-10-18 14:56:11,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:56:11
[2026-10-18 14:56:11,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:56:12,242.242 INFO    ] Initializing speech engine...
[2026-10-18 14:56:12,256.256 INFO    ] 2026-10-18 14:56:12
[2026-10-18 14:56:12,515.515 INFO    ] 2026-10-18 14:56:12
[2026-10-18 14:56:12,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:56:12,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:56:12,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:56:13,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:56:13,031.031 INFO    ] time= 18/10/2026 14:56:13
[2026-10-18 14:56:13,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:56:13,135.135 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:56:13,291.291 INFO    ] No existing commands found in stream
[2026-10-18 14:56:18,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:56:18,309.309 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-18 14:56:20,740.740 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:56:20,743.743 INFO    ] Checking for system updates...
[2026-10-18 14:56:20,790.790 INFO    ] 200
[2026-10-18 14:56:20,792.792 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:56:20,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:56:20,846.846 INFO    ] No update needed
[2026-10-18 14:56:20,849.849 INFO    ] Checking for camera pi updates...
[2026-10-18 14:56:20,882.882 INFO    ] 200
[2026-10-18 14:56:20,884.884 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:56:20,929.929 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:56:30,944.944 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:56:30,980.980 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:56:30,990.990 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:56:30,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:56:30,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:56:31,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:56:33,044.044 INFO    ] ================================================
[2026-10-18 14:56:33,059.059 INFO    ] Launching Daemon at Sun Oct 18 14:56:33 IST 2026
[2026-10-18 14:56:33,070.070 INFO    ] ================================================
[2026-10-18 14:56:33,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:56:33
[2026-10-18 14:56:34,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:56:34,640.640 INFO    ] Initializing speech engine...
[2026-10-18 14:56:34,645.645 INFO    ] 2026-10-18 14:56:34
[2026-10-18 14:56:34,890.890 INFO    ] 2026-10-18 14:56:34
[2026-10-18 14:56:34,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:56:35,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:56:35,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:56:35,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:56:35,444.444 INFO    ] time= 18/10/2026 14:56:35
[2026-10-18 14:56:35,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:56:35,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:56:35,604.604 INFO    ] No existing commands found in stream
[2026-10-18 14:56:40,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:56:40,637.637 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-18 14:56:41,819.819 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 14:56:41,822.822 INFO    ] Checking for system updates...
[2026-10-18 14:56:41,861.861 INFO    ] 200
[2026-10-18 14:56:41,863.863 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:56:41,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:56:41,919.919 INFO    ] No update needed
[2026-10-18 14:56:41,922.922 INFO    ] Checking for camera pi updates...
[2026-10-18 14:56:41,959.959 INFO    ] 200
[2026-10-18 14:56:41,961.961 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:56:42,006.006 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:56:52,022.022 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:56:52,057.057 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:56:52,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:56:52,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:56:52,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:56:52,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:56:54,120.120 INFO    ] ================================================
[2026-10-18 14:56:54,135.135 INFO    ] Launching Daemon at Sun Oct 18 14:56:54 IST 2026
[2026-10-18 14:56:54,145.145 INFO    ] ================================================
[2026-10-18 14:56:54,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:56:54
[2026-10-18 14:56:55,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:56:55,565.565 INFO    ] Initializing speech engine...
[2026-10-18 14:56:55,574.574 INFO    ] 2026-10-18 14:56:55
[2026-10-18 14:56:55,826.826 INFO    ] 2026-10-18 14:56:55
[2026-10-18 14:56:55,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:56:56,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:56:56,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:56:56,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:56:56,226.226 INFO    ] time= 18/10/2026 14:56:56
[2026-10-18 14:56:56,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:56:56,310.310 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:56:56,450.450 INFO    ] No existing commands found in stream
[2026-10-18 14:57:01,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:57:01,471.471 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-18 14:57:02,346.346 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:57:02,350.350 INFO    ] Checking for system updates...
[2026-10-18 14:57:02,391.391 INFO    ] 200
[2026-10-18 14:57:02,394.394 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:57:02,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:57:02,457.457 INFO    ] No update needed
[2026-10-18 14:57:02,460.460 INFO    ] Checking for camera pi updates...
[2026-10-18 14:57:02,498.498 INFO    ] 200
[2026-10-18 14:57:02,501.501 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:57:02,547.547 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:57:12,562.562 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:57:12,597.597 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:57:12,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:57:12,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:57:12,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:57:12,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:57:14,660.660 INFO    ] ================================================
[2026-10-18 14:57:14,674.674 INFO    ] Launching Daemon at Sun Oct 18 14:57:14 IST 2026
[2026-10-18 14:57:14,685.685 INFO    ] ================================================
[2026-10-18 14:57:15,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:57:15
[2026-10-18 14:57:15,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:57:16,156.156 INFO    ] Initializing speech engine...
[2026-10-18 14:57:16,164.164 INFO    ] 2026-10-18 14:57:16
[2026-10-18 14:57:16,431.431 INFO    ] 2026-10-18 14:57:16
[2026-10-18 14:57:16,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:57:16,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:57:16,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:57:16,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:57:16,910.910 INFO    ] time= 18/10/2026 14:57:16
[2026-10-18 14:57:16,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:57:17,009.009 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:57:17,179.179 INFO    ] No existing commands found in stream
[2026-10-18 14:57:22,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:57:22,194.194 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-18 14:57:25,794.794 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:57:25,797.797 INFO    ] Checking for system updates...
[2026-10-18 14:57:25,836.836 INFO    ] 200
[2026-10-18 14:57:25,838.838 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:57:25,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:57:25,894.894 INFO    ] No update needed
[2026-10-18 14:57:25,896.896 INFO    ] Checking for camera pi updates...
[2026-10-18 14:57:25,930.930 INFO    ] 200
[2026-10-18 14:57:25,932.932 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:57:25,972.972 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:57:35,987.987 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:57:36,022.022 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:57:36,032.032 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:57:36,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:57:36,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:57:36,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:57:38,085.085 INFO    ] ================================================
[2026-10-18 14:57:38,101.101 INFO    ] Launching Daemon at Sun Oct 18 14:57:38 IST 2026
[2026-10-18 14:57:38,111.111 INFO    ] ================================================
[2026-10-18 14:57:38,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:57:38
[2026-10-18 14:57:39,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:57:39,559.559 INFO    ] Initializing speech engine...
[2026-10-18 14:57:39,574.574 INFO    ] 2026-10-18 14:57:39
[2026-10-18 14:57:39,860.860 INFO    ] 2026-10-18 14:57:39
[2026-10-18 14:57:39,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:57:40,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:57:40,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:57:40,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:57:40,369.369 INFO    ] time= 18/10/2026 14:57:40
[2026-10-18 14:57:40,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:57:40,473.473 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:57:40,610.610 INFO    ] No existing commands found in stream
[2026-10-18 14:57:45,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:57:45,639.639 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-18 14:57:49,600.600 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 14:57:49,602.602 INFO    ] Checking for system updates...
[2026-10-18 14:57:49,638.638 INFO    ] 200
[2026-10-18 14:57:49,640.640 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:57:49,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:57:49,702.702 INFO    ] No update needed
[2026-10-18 14:57:49,704.704 INFO    ] Checking for camera pi updates...
[2026-10-18 14:57:49,741.741 INFO    ] 200
[2026-10-18 14:57:49,744.744 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:57:49,784.784 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:57:59,799.799 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:57:59,835.835 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:57:59,845.845 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:57:59,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:57:59,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:57:59,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:58:01,899.899 INFO    ] ================================================
[2026-10-18 14:58:01,924.924 INFO    ] Launching Daemon at Sun Oct 18 14:58:01 IST 2026
[2026-10-18 14:58:01,940.940 INFO    ] ================================================
[2026-10-18 14:58:02,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:58:02
[2026-10-18 14:58:03,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:58:03,620.620 INFO    ] Initializing speech engine...
[2026-10-18 14:58:03,634.634 INFO    ] 2026-10-18 14:58:03
[2026-10-18 14:58:03,910.910 INFO    ] 2026-10-18 14:58:03
[2026-10-18 14:58:03,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:58:04,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:58:04,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:58:04,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:58:04,446.446 INFO    ] time= 18/10/2026 14:58:04
[2026-10-18 14:58:04,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:58:04,470.470 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:58:04,603.603 INFO    ] No existing commands found in stream
[2026-10-18 14:58:09,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:58:09,629.629 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-18 14:58:13,940.940 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 14:58:13,943.943 INFO    ] Checking for system updates...
[2026-10-18 14:58:13,983.983 INFO    ] 200
[2026-10-18 14:58:13,986.986 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:58:14,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:58:14,048.048 INFO    ] No update needed
[2026-10-18 14:58:14,051.051 INFO    ] Checking for camera pi updates...
[2026-10-18 14:58:14,086.086 INFO    ] 200
[2026-10-18 14:58:14,089.089 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:58:14,141.141 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:58:24,159.159 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:58:24,199.199 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:58:24,210.210 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:58:24,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:58:24,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:58:24,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:58:26,264.264 INFO    ] ================================================
[2026-10-18 14:58:26,280.280 INFO    ] Launching Daemon at Sun Oct 18 14:58:26 IST 2026
[2026-10-18 14:58:26,298.298 INFO    ] ================================================
[2026-10-18 14:58:26,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:58:26
[2026-10-18 14:58:27,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:58:27,729.729 INFO    ] Initializing speech engine...
[2026-10-18 14:58:27,742.742 INFO    ] 2026-10-18 14:58:27
[2026-10-18 14:58:27,992.992 INFO    ] 2026-10-18 14:58:27
[2026-10-18 14:58:28,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:58:28,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:58:28,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:58:28,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:58:28,496.496 INFO    ] time= 18/10/2026 14:58:28
[2026-10-18 14:58:28,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:58:28,575.575 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:58:28,709.709 INFO    ] No existing commands found in stream
[2026-10-18 14:58:33,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:58:33,735.735 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-18 14:58:37,001.001 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 14:58:37,003.003 INFO    ] Checking for system updates...
[2026-10-18 14:58:37,040.040 INFO    ] 200
[2026-10-18 14:58:37,043.043 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:58:37,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 14:58:37,101.101 INFO    ] No update needed
[2026-10-18 14:58:37,103.103 INFO    ] Checking for camera pi updates...
[2026-10-18 14:58:37,140.140 INFO    ] 200
[2026-10-18 14:58:37,142.142 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:58:37,183.183 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:58:47,199.199 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:58:47,235.235 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:58:47,245.245 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:58:47,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:58:47,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:58:47,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:58:49,297.297 INFO    ] ================================================
[2026-10-18 14:58:49,312.312 INFO    ] Launching Daemon at Sun Oct 18 14:58:49 IST 2026
[2026-10-18 14:58:49,323.323 INFO    ] ================================================
[2026-10-18 14:58:49,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:58:49
[2026-10-18 14:58:50,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:58:50,807.807 INFO    ] Initializing speech engine...
[2026-10-18 14:58:50,815.815 INFO    ] 2026-10-18 14:58:50
[2026-10-18 14:58:51,062.062 INFO    ] 2026-10-18 14:58:51
[2026-10-18 14:58:51,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:58:51,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:58:51,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:58:51,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:58:51,616.616 INFO    ] time= 18/10/2026 14:58:51
[2026-10-18 14:58:51,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:58:51,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:58:51,770.770 INFO    ] No existing commands found in stream
[2026-10-18 14:58:56,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:58:56,787.787 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-18 14:58:57,500.500 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 14:58:57,502.502 INFO    ] Checking for system updates...
[2026-10-18 14:58:57,538.538 INFO    ] 200
[2026-10-18 14:58:57,540.540 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:58:57,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:58:57,594.594 INFO    ] No update needed
[2026-10-18 14:58:57,597.597 INFO    ] Checking for camera pi updates...
[2026-10-18 14:58:57,630.630 INFO    ] 200
[2026-10-18 14:58:57,633.633 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:58:57,678.678 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:59:07,692.692 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:59:07,726.726 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:59:07,736.736 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:59:07,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:59:07,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:59:07,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:59:09,789.789 INFO    ] ================================================
[2026-10-18 14:59:09,804.804 INFO    ] Launching Daemon at Sun Oct 18 14:59:09 IST 2026
[2026-10-18 14:59:09,815.815 INFO    ] ================================================
[2026-10-18 14:59:10,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:59:10
[2026-10-18 14:59:11,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:59:11,309.309 INFO    ] Initializing speech engine...
[2026-10-18 14:59:11,318.318 INFO    ] 2026-10-18 14:59:11
[2026-10-18 14:59:11,571.571 INFO    ] 2026-10-18 14:59:11
[2026-10-18 14:59:11,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:59:11,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:59:11,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:59:12,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:59:12,135.135 INFO    ] time= 18/10/2026 14:59:12
[2026-10-18 14:59:12,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:59:12,167.167 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:59:12,304.304 INFO    ] No existing commands found in stream
[2026-10-18 14:59:17,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:59:17,326.326 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-18 14:59:18,831.831 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:59:18,834.834 INFO    ] Checking for system updates...
[2026-10-18 14:59:18,873.873 INFO    ] 200
[2026-10-18 14:59:18,876.876 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:59:18,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:59:18,931.931 INFO    ] No update needed
[2026-10-18 14:59:18,933.933 INFO    ] Checking for camera pi updates...
[2026-10-18 14:59:18,967.967 INFO    ] 200
[2026-10-18 14:59:18,970.970 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:59:19,010.010 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:59:29,024.024 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:59:29,059.059 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:59:29,069.069 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:59:29,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:59:29,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:59:29,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:59:31,123.123 INFO    ] ================================================
[2026-10-18 14:59:31,138.138 INFO    ] Launching Daemon at Sun Oct 18 14:59:31 IST 2026
[2026-10-18 14:59:31,149.149 INFO    ] ================================================
[2026-10-18 14:59:31,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:59:31
[2026-10-18 14:59:32,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:59:32,651.651 INFO    ] Initializing speech engine...
[2026-10-18 14:59:32,658.658 INFO    ] 2026-10-18 14:59:32
[2026-10-18 14:59:32,920.920 INFO    ] 2026-10-18 14:59:32
[2026-10-18 14:59:32,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:59:33,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:59:33,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:59:33,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:59:33,480.480 INFO    ] time= 18/10/2026 14:59:33
[2026-10-18 14:59:33,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:59:33,505.505 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:59:33,636.636 INFO    ] No existing commands found in stream
[2026-10-18 14:59:38,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 14:59:38,661.661 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-18 14:59:40,670.670 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 14:59:40,673.673 INFO    ] Checking for system updates...
[2026-10-18 14:59:40,709.709 INFO    ] 200
[2026-10-18 14:59:40,711.711 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:59:40,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 14:59:40,774.774 INFO    ] No update needed
[2026-10-18 14:59:40,776.776 INFO    ] Checking for camera pi updates...
[2026-10-18 14:59:40,810.810 INFO    ] 200
[2026-10-18 14:59:40,812.812 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 14:59:40,852.852 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 14:59:50,868.868 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 14:59:50,903.903 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 14:59:50,913.913 INFO    ] Script finished. Safe exiting...
[2026-10-18 14:59:50,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 14:59:50,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 14:59:50,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 14:59:52,967.967 INFO    ] ================================================
[2026-10-18 14:59:52,983.983 INFO    ] Launching Daemon at Sun Oct 18 14:59:52 IST 2026
[2026-10-18 14:59:52,994.994 INFO    ] ================================================
[2026-10-18 14:59:53,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 14:59:53
[2026-10-18 14:59:54,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 14:59:54,437.437 INFO    ] Initializing speech engine...
[2026-10-18 14:59:54,448.448 INFO    ] 2026-10-18 14:59:54
[2026-10-18 14:59:54,698.698 INFO    ] 2026-10-18 14:59:54
[2026-10-18 14:59:54,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 14:59:54,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 14:59:55,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 14:59:55,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 14:59:55,265.265 INFO    ] time= 18/10/2026 14:59:55
[2026-10-18 14:59:55,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 14:59:55,289.289 INFO    ] Checking for existing commands in stream...
[2026-10-18 14:59:55,424.424 INFO    ] No existing commands found in stream
[2026-10-18 15:00:00,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:00:00,439.439 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-18 15:00:04,676.676 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:00:04,680.680 INFO    ] Checking for system updates...
[2026-10-18 15:00:04,939.939 INFO    ] 200
[2026-10-18 15:00:04,942.942 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:00:05,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:00:05,317.317 INFO    ] No update needed
[2026-10-18 15:00:05,336.336 INFO    ] Checking for camera pi updates...
[2026-10-18 15:00:05,472.472 INFO    ] 200
[2026-10-18 15:00:05,506.506 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:00:05,700.700 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:00:15,717.717 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:00:15,752.752 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:00:15,762.762 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:00:15,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:00:15,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:00:15,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:00:17,817.817 INFO    ] ================================================
[2026-10-18 15:00:17,832.832 INFO    ] Launching Daemon at Sun Oct 18 15:00:17 IST 2026
[2026-10-18 15:00:17,843.843 INFO    ] ================================================
[2026-10-18 15:00:18,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:00:18
[2026-10-18 15:00:19,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:00:19,461.461 INFO    ] Initializing speech engine...
[2026-10-18 15:00:19,470.470 INFO    ] 2026-10-18 15:00:19
[2026-10-18 15:00:19,759.759 INFO    ] 2026-10-18 15:00:19
[2026-10-18 15:00:19,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:00:20,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:00:20,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:00:20,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:00:20,312.312 INFO    ] time= 18/10/2026 15:00:20
[2026-10-18 15:00:20,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:00:20,350.350 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:00:20,469.469 INFO    ] No existing commands found in stream
[2026-10-18 15:00:25,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:00:25,503.503 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-18 15:00:29,899.899 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:00:29,902.902 INFO    ] Checking for system updates...
[2026-10-18 15:00:29,944.944 INFO    ] 200
[2026-10-18 15:00:29,947.947 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:00:30,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:00:30,008.008 INFO    ] No update needed
[2026-10-18 15:00:30,011.011 INFO    ] Checking for camera pi updates...
[2026-10-18 15:00:30,046.046 INFO    ] 200
[2026-10-18 15:00:30,049.049 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:00:30,092.092 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:00:40,106.106 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:00:40,148.148 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:00:40,160.160 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:00:40,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:00:40,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:00:40,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:00:42,217.217 INFO    ] ================================================
[2026-10-18 15:00:42,233.233 INFO    ] Launching Daemon at Sun Oct 18 15:00:42 IST 2026
[2026-10-18 15:00:42,244.244 INFO    ] ================================================
[2026-10-18 15:00:42,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:00:42
[2026-10-18 15:00:43,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:00:43,660.660 INFO    ] Initializing speech engine...
[2026-10-18 15:00:43,669.669 INFO    ] 2026-10-18 15:00:43
[2026-10-18 15:00:43,947.947 INFO    ] 2026-10-18 15:00:43
[2026-10-18 15:00:43,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:00:44,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:00:44,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:00:44,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:00:44,484.484 INFO    ] time= 18/10/2026 15:00:44
[2026-10-18 15:00:44,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:00:44,572.572 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:00:44,664.664 INFO    ] No existing commands found in stream
[2026-10-18 15:00:49,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:00:49,678.678 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-18 15:00:50,273.273 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:00:50,276.276 INFO    ] Checking for system updates...
[2026-10-18 15:00:50,311.311 INFO    ] 200
[2026-10-18 15:00:50,313.313 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:00:50,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:00:50,368.368 INFO    ] No update needed
[2026-10-18 15:00:50,370.370 INFO    ] Checking for camera pi updates...
[2026-10-18 15:00:50,404.404 INFO    ] 200
[2026-10-18 15:00:50,406.406 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:00:50,453.453 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:01:00,467.467 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:01:00,502.502 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:01:00,512.512 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:01:00,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:01:00,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:01:00,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:01:02,576.576 INFO    ] ================================================
[2026-10-18 15:01:02,593.593 INFO    ] Launching Daemon at Sun Oct 18 15:01:02 IST 2026
[2026-10-18 15:01:02,605.605 INFO    ] ================================================
[2026-10-18 15:01:03,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:01:03
[2026-10-18 15:01:03,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:01:04,181.181 INFO    ] Initializing speech engine...
[2026-10-18 15:01:04,196.196 INFO    ] 2026-10-18 15:01:04
[2026-10-18 15:01:04,474.474 INFO    ] 2026-10-18 15:01:04
[2026-10-18 15:01:04,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:01:04,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:01:04,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:01:04,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:01:04,956.956 INFO    ] time= 18/10/2026 15:01:04
[2026-10-18 15:01:04,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:01:05,027.027 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:01:05,127.127 INFO    ] No existing commands found in stream
[2026-10-18 15:01:10,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:01:10,140.140 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-18 15:01:13,529.529 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:01:13,532.532 INFO    ] Checking for system updates...
[2026-10-18 15:01:13,570.570 INFO    ] 200
[2026-10-18 15:01:13,572.572 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:01:13,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:01:13,626.626 INFO    ] No update needed
[2026-10-18 15:01:13,629.629 INFO    ] Checking for camera pi updates...
[2026-10-18 15:01:13,663.663 INFO    ] 200
[2026-10-18 15:01:13,665.665 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:01:13,705.705 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:01:23,721.721 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:01:23,760.760 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:01:23,770.770 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:01:23,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:01:23,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:01:23,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:01:25,826.826 INFO    ] ================================================
[2026-10-18 15:01:25,841.841 INFO    ] Launching Daemon at Sun Oct 18 15:01:25 IST 2026
[2026-10-18 15:01:25,852.852 INFO    ] ================================================
[2026-10-18 15:01:26,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:01:26
[2026-10-18 15:01:27,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:01:27,417.417 INFO    ] Initializing speech engine...
[2026-10-18 15:01:27,427.427 INFO    ] 2026-10-18 15:01:27
[2026-10-18 15:01:27,689.689 INFO    ] 2026-10-18 15:01:27
[2026-10-18 15:01:27,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:01:27,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:01:27,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:01:28,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:01:28,101.101 INFO    ] time= 18/10/2026 15:01:28
[2026-10-18 15:01:28,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:01:28,113.113 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:01:28,239.239 INFO    ] No existing commands found in stream
[2026-10-18 15:01:33,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:01:33,267.267 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-18 15:01:37,528.528 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:01:37,531.531 INFO    ] Checking for system updates...
[2026-10-18 15:01:37,570.570 INFO    ] 200
[2026-10-18 15:01:37,572.572 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:01:37,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:01:37,633.633 INFO    ] No update needed
[2026-10-18 15:01:37,636.636 INFO    ] Checking for camera pi updates...
[2026-10-18 15:01:37,672.672 INFO    ] 200
[2026-10-18 15:01:37,675.675 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:01:37,714.714 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:01:47,729.729 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:01:47,764.764 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:01:47,774.774 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:01:47,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:01:47,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:01:47,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:01:49,827.827 INFO    ] ================================================
[2026-10-18 15:01:49,842.842 INFO    ] Launching Daemon at Sun Oct 18 15:01:49 IST 2026
[2026-10-18 15:01:49,853.853 INFO    ] ================================================
[2026-10-18 15:01:50,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:01:50
[2026-10-18 15:01:51,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:01:51,272.272 INFO    ] Initializing speech engine...
[2026-10-18 15:01:51,295.295 INFO    ] 2026-10-18 15:01:51
[2026-10-18 15:01:51,554.554 INFO    ] 2026-10-18 15:01:51
[2026-10-18 15:01:51,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:01:51,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:01:51,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:01:51,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:01:51,945.945 INFO    ] time= 18/10/2026 15:01:51
[2026-10-18 15:01:51,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:01:51,996.996 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:01:52,142.142 INFO    ] No existing commands found in stream
[2026-10-18 15:01:57,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:01:57,156.156 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-18 15:02:00,598.598 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:02:00,601.601 INFO    ] Checking for system updates...
[2026-10-18 15:02:00,645.645 INFO    ] 200
[2026-10-18 15:02:00,648.648 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:02:00,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:02:00,711.711 INFO    ] No update needed
[2026-10-18 15:02:00,714.714 INFO    ] Checking for camera pi updates...
[2026-10-18 15:02:00,750.750 INFO    ] 200
[2026-10-18 15:02:00,752.752 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:02:00,797.797 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:02:10,813.813 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:02:10,849.849 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:02:10,858.858 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:02:10,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:02:10,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:02:10,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:02:12,911.911 INFO    ] ================================================
[2026-10-18 15:02:12,926.926 INFO    ] Launching Daemon at Sun Oct 18 15:02:12 IST 2026
[2026-10-18 15:02:12,937.937 INFO    ] ================================================
[2026-10-18 15:02:13,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:02:13
[2026-10-18 15:02:14,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:02:14,335.335 INFO    ] Initializing speech engine...
[2026-10-18 15:02:14,348.348 INFO    ] 2026-10-18 15:02:14
[2026-10-18 15:02:14,610.610 INFO    ] 2026-10-18 15:02:14
[2026-10-18 15:02:14,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:02:14,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:02:14,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:02:15,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:02:15,076.076 INFO    ] time= 18/10/2026 15:02:15
[2026-10-18 15:02:15,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:02:15,180.180 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:02:15,301.301 INFO    ] No existing commands found in stream
[2026-10-18 15:02:20,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:02:20,330.330 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-18 15:02:23,700.700 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:02:23,703.703 INFO    ] Checking for system updates...
[2026-10-18 15:02:23,741.741 INFO    ] 200
[2026-10-18 15:02:23,743.743 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:02:23,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:02:23,799.799 INFO    ] No update needed
[2026-10-18 15:02:23,801.801 INFO    ] Checking for camera pi updates...
[2026-10-18 15:02:23,836.836 INFO    ] 200
[2026-10-18 15:02:23,839.839 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:02:23,879.879 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:02:33,893.893 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:02:33,929.929 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:02:33,939.939 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:02:33,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:02:33,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:02:33,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:02:35,993.993 INFO    ] ================================================
[2026-10-18 15:02:36,008.008 INFO    ] Launching Daemon at Sun Oct 18 15:02:36 IST 2026
[2026-10-18 15:02:36,020.020 INFO    ] ================================================
[2026-10-18 15:02:36,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:02:36
[2026-10-18 15:02:37,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:02:37,445.445 INFO    ] Initializing speech engine...
[2026-10-18 15:02:37,453.453 INFO    ] 2026-10-18 15:02:37
[2026-10-18 15:02:37,729.729 INFO    ] 2026-10-18 15:02:37
[2026-10-18 15:02:37,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:02:38,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:02:38,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:02:38,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:02:38,236.236 INFO    ] time= 18/10/2026 15:02:38
[2026-10-18 15:02:38,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:02:38,299.299 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:02:38,451.451 INFO    ] No existing commands found in stream
[2026-10-18 15:02:43,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:02:43,481.481 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-18 15:02:47,927.927 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:02:47,929.929 INFO    ] Checking for system updates...
[2026-10-18 15:02:47,969.969 INFO    ] 200
[2026-10-18 15:02:47,971.971 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:02:48,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:02:48,033.033 INFO    ] No update needed
[2026-10-18 15:02:48,035.035 INFO    ] Checking for camera pi updates...
[2026-10-18 15:02:48,071.071 INFO    ] 200
[2026-10-18 15:02:48,074.074 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:02:48,114.114 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:02:58,129.129 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:02:58,163.163 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:02:58,173.173 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:02:58,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:02:58,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:02:58,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:03:00,226.226 INFO    ] ================================================
[2026-10-18 15:03:00,241.241 INFO    ] Launching Daemon at Sun Oct 18 15:03:00 IST 2026
[2026-10-18 15:03:00,253.253 INFO    ] ================================================
[2026-10-18 15:03:00,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:03:00
[2026-10-18 15:03:01,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:03:02,021.021 INFO    ] Initializing speech engine...
[2026-10-18 15:03:02,031.031 INFO    ] 2026-10-18 15:03:02
[2026-10-18 15:03:02,329.329 INFO    ] 2026-10-18 15:03:02
[2026-10-18 15:03:02,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:03:02,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:03:02,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:03:02,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:03:02,909.909 INFO    ] time= 18/10/2026 15:03:02
[2026-10-18 15:03:02,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:03:02,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:03:03,094.094 INFO    ] No existing commands found in stream
[2026-10-18 15:03:08,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:03:08,121.121 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-18 15:03:11,885.885 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:03:11,888.888 INFO    ] Checking for system updates...
[2026-10-18 15:03:11,924.924 INFO    ] 200
[2026-10-18 15:03:11,927.927 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:03:11,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:03:11,988.988 INFO    ] No update needed
[2026-10-18 15:03:11,991.991 INFO    ] Checking for camera pi updates...
[2026-10-18 15:03:12,024.024 INFO    ] 200
[2026-10-18 15:03:12,027.027 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:03:12,071.071 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:03:22,085.085 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:03:22,125.125 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:03:22,136.136 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:03:22,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:03:22,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:03:22,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:03:24,190.190 INFO    ] ================================================
[2026-10-18 15:03:24,206.206 INFO    ] Launching Daemon at Sun Oct 18 15:03:24 IST 2026
[2026-10-18 15:03:24,218.218 INFO    ] ================================================
[2026-10-18 15:03:24,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:03:24
[2026-10-18 15:03:25,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:03:25,680.680 INFO    ] Initializing speech engine...
[2026-10-18 15:03:25,687.687 INFO    ] 2026-10-18 15:03:25
[2026-10-18 15:03:25,977.977 INFO    ] 2026-10-18 15:03:25
[2026-10-18 15:03:26,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:03:26,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:03:26,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:03:26,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:03:26,487.487 INFO    ] time= 18/10/2026 15:03:26
[2026-10-18 15:03:26,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:03:26,585.585 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:03:26,735.735 INFO    ] No existing commands found in stream
[2026-10-18 15:03:31,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:03:31,764.764 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-18 15:03:35,780.780 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:03:35,783.783 INFO    ] Checking for system updates...
[2026-10-18 15:03:35,821.821 INFO    ] 200
[2026-10-18 15:03:35,824.824 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:03:35,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:03:35,878.878 INFO    ] No update needed
[2026-10-18 15:03:35,880.880 INFO    ] Checking for camera pi updates...
[2026-10-18 15:03:35,920.920 INFO    ] 200
[2026-10-18 15:03:35,922.922 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:03:35,962.962 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:03:45,977.977 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:03:46,012.012 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:03:46,021.021 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:03:46,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:03:46,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:03:46,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:03:48,073.073 INFO    ] ================================================
[2026-10-18 15:03:48,089.089 INFO    ] Launching Daemon at Sun Oct 18 15:03:48 IST 2026
[2026-10-18 15:03:48,100.100 INFO    ] ================================================
[2026-10-18 15:03:48,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:03:48
[2026-10-18 15:03:49,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:03:49,526.526 INFO    ] Initializing speech engine...
[2026-10-18 15:03:49,536.536 INFO    ] 2026-10-18 15:03:49
[2026-10-18 15:03:49,783.783 INFO    ] 2026-10-18 15:03:49
[2026-10-18 15:03:49,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:03:50,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:03:50,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:03:50,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:03:50,283.283 INFO    ] time= 18/10/2026 15:03:50
[2026-10-18 15:03:50,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:03:50,356.356 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:03:50,509.509 INFO    ] No existing commands found in stream
[2026-10-18 15:03:55,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:03:55,523.523 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-18 15:03:57,178.178 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:03:57,181.181 INFO    ] Checking for system updates...
[2026-10-18 15:03:57,220.220 INFO    ] 200
[2026-10-18 15:03:57,222.222 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:03:57,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:03:57,283.283 INFO    ] No update needed
[2026-10-18 15:03:57,285.285 INFO    ] Checking for camera pi updates...
[2026-10-18 15:03:57,321.321 INFO    ] 200
[2026-10-18 15:03:57,324.324 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:03:57,364.364 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:04:07,378.378 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:04:07,413.413 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:04:07,423.423 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:04:07,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:04:07,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:04:07,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:04:09,478.478 INFO    ] ================================================
[2026-10-18 15:04:09,493.493 INFO    ] Launching Daemon at Sun Oct 18 15:04:09 IST 2026
[2026-10-18 15:04:09,505.505 INFO    ] ================================================
[2026-10-18 15:04:10,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:04:10
[2026-10-18 15:04:10,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:04:10,961.961 INFO    ] Initializing speech engine...
[2026-10-18 15:04:10,986.986 INFO    ] 2026-10-18 15:04:10
[2026-10-18 15:04:11,262.262 INFO    ] 2026-10-18 15:04:11
[2026-10-18 15:04:11,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:04:11,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:04:11,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:04:11,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:04:11,762.762 INFO    ] time= 18/10/2026 15:04:11
[2026-10-18 15:04:11,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:04:11,865.865 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:04:12,035.035 INFO    ] No existing commands found in stream
[2026-10-18 15:04:17,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:04:17,061.061 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-18 15:04:18,117.117 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:04:18,120.120 INFO    ] Checking for system updates...
[2026-10-18 15:04:18,159.159 INFO    ] 200
[2026-10-18 15:04:18,162.162 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:04:18,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:04:18,229.229 INFO    ] No update needed
[2026-10-18 15:04:18,232.232 INFO    ] Checking for camera pi updates...
[2026-10-18 15:04:18,267.267 INFO    ] 200
[2026-10-18 15:04:18,270.270 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:04:18,316.316 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:04:28,335.335 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:04:28,375.375 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:04:28,387.387 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:04:28,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:04:28,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:04:28,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:04:30,443.443 INFO    ] ================================================
[2026-10-18 15:04:30,460.460 INFO    ] Launching Daemon at Sun Oct 18 15:04:30 IST 2026
[2026-10-18 15:04:30,474.474 INFO    ] ================================================
[2026-10-18 15:04:31,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:04:31
[2026-10-18 15:04:31,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:04:31,989.989 INFO    ] Initializing speech engine...
[2026-10-18 15:04:31,999.999 INFO    ] 2026-10-18 15:04:31
[2026-10-18 15:04:32,269.269 INFO    ] 2026-10-18 15:04:32
[2026-10-18 15:04:32,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:04:32,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:04:32,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:04:32,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:04:32,670.670 INFO    ] time= 18/10/2026 15:04:32
[2026-10-18 15:04:32,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:04:32,749.749 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:04:32,884.884 INFO    ] No existing commands found in stream
[2026-10-18 15:04:37,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:04:37,897.897 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-18 15:04:38,557.557 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:04:38,560.560 INFO    ] Checking for system updates...
[2026-10-18 15:04:38,601.601 INFO    ] 200
[2026-10-18 15:04:38,604.604 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:04:38,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:04:38,669.669 INFO    ] No update needed
[2026-10-18 15:04:38,672.672 INFO    ] Checking for camera pi updates...
[2026-10-18 15:04:38,712.712 INFO    ] 200
[2026-10-18 15:04:38,715.715 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:04:38,756.756 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:04:48,773.773 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:04:48,814.814 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:04:48,825.825 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:04:48,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:04:48,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:04:48,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:04:50,882.882 INFO    ] ================================================
[2026-10-18 15:04:50,898.898 INFO    ] Launching Daemon at Sun Oct 18 15:04:50 IST 2026
[2026-10-18 15:04:50,909.909 INFO    ] ================================================
[2026-10-18 15:04:51,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:04:51
[2026-10-18 15:04:52,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:04:52,571.571 INFO    ] Initializing speech engine...
[2026-10-18 15:04:52,586.586 INFO    ] 2026-10-18 15:04:52
[2026-10-18 15:04:52,897.897 INFO    ] 2026-10-18 15:04:52
[2026-10-18 15:04:52,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:04:53,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:04:53,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:04:53,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:04:53,469.469 INFO    ] time= 18/10/2026 15:04:53
[2026-10-18 15:04:53,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:04:53,549.549 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:04:53,695.695 INFO    ] No existing commands found in stream
[2026-10-18 15:04:58,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:04:58,731.731 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-18 15:05:03,272.272 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:05:03,276.276 INFO    ] Checking for system updates...
[2026-10-18 15:05:03,332.332 INFO    ] 200
[2026-10-18 15:05:03,335.335 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:05:03,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:05:03,401.401 INFO    ] No update needed
[2026-10-18 15:05:03,406.406 INFO    ] Checking for camera pi updates...
[2026-10-18 15:05:03,452.452 INFO    ] 200
[2026-10-18 15:05:03,455.455 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:05:03,496.496 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:05:13,516.516 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:05:13,556.556 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:05:13,567.567 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:05:13,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:05:13,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:05:13,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:05:15,623.623 INFO    ] ================================================
[2026-10-18 15:05:15,639.639 INFO    ] Launching Daemon at Sun Oct 18 15:05:15 IST 2026
[2026-10-18 15:05:15,650.650 INFO    ] ================================================
[2026-10-18 15:05:16,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:05:16
[2026-10-18 15:05:16,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:05:17,091.091 INFO    ] Initializing speech engine...
[2026-10-18 15:05:17,097.097 INFO    ] 2026-10-18 15:05:17
[2026-10-18 15:05:17,375.375 INFO    ] 2026-10-18 15:05:17
[2026-10-18 15:05:17,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:05:17,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:05:17,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:05:17,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:05:17,784.784 INFO    ] time= 18/10/2026 15:05:17
[2026-10-18 15:05:17,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:05:17,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:05:17,964.964 INFO    ] No existing commands found in stream
[2026-10-18 15:05:22,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:05:22,992.992 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-18 15:05:24,760.760 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:05:24,763.763 INFO    ] Checking for system updates...
[2026-10-18 15:05:24,799.799 INFO    ] 200
[2026-10-18 15:05:24,802.802 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:05:24,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:05:24,860.860 INFO    ] No update needed
[2026-10-18 15:05:24,863.863 INFO    ] Checking for camera pi updates...
[2026-10-18 15:05:24,900.900 INFO    ] 200
[2026-10-18 15:05:24,902.902 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:05:24,942.942 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:05:34,957.957 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:05:34,991.991 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:05:35,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:05:35,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:05:35,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:05:35,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:05:37,055.055 INFO    ] ================================================
[2026-10-18 15:05:37,070.070 INFO    ] Launching Daemon at Sun Oct 18 15:05:37 IST 2026
[2026-10-18 15:05:37,082.082 INFO    ] ================================================
[2026-10-18 15:05:37,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:05:37
[2026-10-18 15:05:38,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:05:38,535.535 INFO    ] Initializing speech engine...
[2026-10-18 15:05:38,542.542 INFO    ] 2026-10-18 15:05:38
[2026-10-18 15:05:38,803.803 INFO    ] 2026-10-18 15:05:38
[2026-10-18 15:05:38,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:05:39,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:05:39,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:05:39,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:05:39,350.350 INFO    ] time= 18/10/2026 15:05:39
[2026-10-18 15:05:39,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:05:39,374.374 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:05:39,503.503 INFO    ] No existing commands found in stream
[2026-10-18 15:05:44,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:05:44,522.522 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-18 15:05:45,845.845 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:05:45,848.848 INFO    ] Checking for system updates...
[2026-10-18 15:05:45,887.887 INFO    ] 200
[2026-10-18 15:05:45,890.890 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:05:46,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:05:46,093.093 INFO    ] No update needed
[2026-10-18 15:05:46,096.096 INFO    ] Checking for camera pi updates...
[2026-10-18 15:05:46,134.134 INFO    ] 200
[2026-10-18 15:05:46,137.137 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 15:05:46,140.140 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-18 15:05:46,142.142 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:05:46,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:05:46,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:05:46,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:05:48,204.204 INFO    ] ================================================
[2026-10-18 15:05:48,224.224 INFO    ] Launching Daemon at Sun Oct 18 15:05:48 IST 2026
[2026-10-18 15:05:48,241.241 INFO    ] ================================================
[2026-10-18 15:05:48,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:05:48
[2026-10-18 15:05:49,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:05:49,765.765 INFO    ] Initializing speech engine...
[2026-10-18 15:05:49,772.772 INFO    ] 2026-10-18 15:05:49
[2026-10-18 15:05:50,052.052 INFO    ] 2026-10-18 15:05:50
[2026-10-18 15:05:50,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:05:50,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:05:50,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:05:50,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:05:50,503.503 INFO    ] time= 18/10/2026 15:05:50
[2026-10-18 15:05:50,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:05:50,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:05:50,746.746 INFO    ] No existing commands found in stream
[2026-10-18 15:05:55,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:05:55,769.769 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-18 15:05:56,772.772 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:05:56,775.775 INFO    ] Checking for system updates...
[2026-10-18 15:05:56,811.811 INFO    ] 200
[2026-10-18 15:05:56,813.813 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:05:56,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:05:56,868.868 INFO    ] No update needed
[2026-10-18 15:05:56,870.870 INFO    ] Checking for camera pi updates...
[2026-10-18 15:05:56,903.903 INFO    ] 200
[2026-10-18 15:05:56,906.906 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:05:56,947.947 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:06:06,962.962 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:06:06,997.997 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:06:07,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:06:07,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:06:07,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:06:07,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:06:09,059.059 INFO    ] ================================================
[2026-10-18 15:06:09,074.074 INFO    ] Launching Daemon at Sun Oct 18 15:06:09 IST 2026
[2026-10-18 15:06:09,085.085 INFO    ] ================================================
[2026-10-18 15:06:09,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:06:09
[2026-10-18 15:06:10,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:06:10,528.528 INFO    ] Initializing speech engine...
[2026-10-18 15:06:10,536.536 INFO    ] 2026-10-18 15:06:10
[2026-10-18 15:06:10,783.783 INFO    ] 2026-10-18 15:06:10
[2026-10-18 15:06:10,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:06:11,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:06:11,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:06:11,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:06:11,320.320 INFO    ] time= 18/10/2026 15:06:11
[2026-10-18 15:06:11,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:06:11,348.348 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:06:11,493.493 INFO    ] No existing commands found in stream
[2026-10-18 15:06:16,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:06:16,511.511 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-18 15:06:20,558.558 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:06:20,560.560 INFO    ] Checking for system updates...
[2026-10-18 15:06:20,597.597 INFO    ] 200
[2026-10-18 15:06:20,599.599 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:06:20,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:06:20,659.659 INFO    ] No update needed
[2026-10-18 15:06:20,661.661 INFO    ] Checking for camera pi updates...
[2026-10-18 15:06:20,694.694 INFO    ] 200
[2026-10-18 15:06:20,697.697 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:06:20,737.737 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:06:30,752.752 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:06:30,786.786 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:06:30,796.796 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:06:30,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:06:30,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:06:30,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:06:32,850.850 INFO    ] ================================================
[2026-10-18 15:06:32,866.866 INFO    ] Launching Daemon at Sun Oct 18 15:06:32 IST 2026
[2026-10-18 15:06:32,877.877 INFO    ] ================================================
[2026-10-18 15:06:33,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:06:33
[2026-10-18 15:06:34,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:06:34,412.412 INFO    ] Initializing speech engine...
[2026-10-18 15:06:34,421.421 INFO    ] 2026-10-18 15:06:34
[2026-10-18 15:06:34,686.686 INFO    ] 2026-10-18 15:06:34
[2026-10-18 15:06:34,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:06:34,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:06:34,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:06:35,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:06:35,192.192 INFO    ] time= 18/10/2026 15:06:35
[2026-10-18 15:06:35,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:06:35,301.301 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:06:35,442.442 INFO    ] No existing commands found in stream
[2026-10-18 15:06:40,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:06:40,470.470 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-18 15:06:42,480.480 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:06:42,483.483 INFO    ] Checking for system updates...
[2026-10-18 15:06:42,518.518 INFO    ] 200
[2026-10-18 15:06:42,520.520 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:06:42,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:06:42,577.577 INFO    ] No update needed
[2026-10-18 15:06:42,580.580 INFO    ] Checking for camera pi updates...
[2026-10-18 15:06:42,615.615 INFO    ] 200
[2026-10-18 15:06:42,618.618 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:06:42,659.659 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:06:52,675.675 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:06:52,714.714 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:06:52,725.725 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:06:52,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:06:52,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:06:52,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:06:54,779.779 INFO    ] ================================================
[2026-10-18 15:06:54,794.794 INFO    ] Launching Daemon at Sun Oct 18 15:06:54 IST 2026
[2026-10-18 15:06:54,805.805 INFO    ] ================================================
[2026-10-18 15:06:55,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:06:55
[2026-10-18 15:06:56,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:06:56,383.383 INFO    ] Initializing speech engine...
[2026-10-18 15:06:56,391.391 INFO    ] 2026-10-18 15:06:56
[2026-10-18 15:06:56,677.677 INFO    ] 2026-10-18 15:06:56
[2026-10-18 15:06:56,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:06:56,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:06:56,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:06:57,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:06:57,227.227 INFO    ] time= 18/10/2026 15:06:57
[2026-10-18 15:06:57,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:06:57,255.255 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:06:57,389.389 INFO    ] No existing commands found in stream
[2026-10-18 15:07:02,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:07:02,418.418 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-18 15:07:04,016.016 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:07:04,019.019 INFO    ] Checking for system updates...
[2026-10-18 15:07:04,055.055 INFO    ] 200
[2026-10-18 15:07:04,058.058 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:07:04,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:07:04,115.115 INFO    ] No update needed
[2026-10-18 15:07:04,117.117 INFO    ] Checking for camera pi updates...
[2026-10-18 15:07:04,152.152 INFO    ] 200
[2026-10-18 15:07:04,155.155 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:07:04,196.196 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:07:14,212.212 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:07:14,252.252 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:07:14,264.264 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:07:14,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:07:14,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:07:14,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:07:16,319.319 INFO    ] ================================================
[2026-10-18 15:07:16,335.335 INFO    ] Launching Daemon at Sun Oct 18 15:07:16 IST 2026
[2026-10-18 15:07:16,346.346 INFO    ] ================================================
[2026-10-18 15:07:16,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:07:16
[2026-10-18 15:07:17,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:07:17,978.978 INFO    ] Initializing speech engine...
[2026-10-18 15:07:17,990.990 INFO    ] 2026-10-18 15:07:17
[2026-10-18 15:07:18,311.311 INFO    ] 2026-10-18 15:07:18
[2026-10-18 15:07:18,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:07:18,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:07:18,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:07:18,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:07:18,764.764 INFO    ] time= 18/10/2026 15:07:18
[2026-10-18 15:07:18,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:07:18,816.816 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:07:18,937.937 INFO    ] No existing commands found in stream
[2026-10-18 15:07:23,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:07:23,953.953 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-18 15:07:26,280.280 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:07:26,283.283 INFO    ] Checking for system updates...
[2026-10-18 15:07:26,319.319 INFO    ] 200
[2026-10-18 15:07:26,322.322 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:07:26,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:07:26,383.383 INFO    ] No update needed
[2026-10-18 15:07:26,385.385 INFO    ] Checking for camera pi updates...
[2026-10-18 15:07:26,419.419 INFO    ] 200
[2026-10-18 15:07:26,421.421 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:07:26,461.461 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:07:36,476.476 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:07:36,510.510 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:07:36,520.520 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:07:36,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:07:36,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:07:36,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:07:38,572.572 INFO    ] ================================================
[2026-10-18 15:07:38,588.588 INFO    ] Launching Daemon at Sun Oct 18 15:07:38 IST 2026
[2026-10-18 15:07:38,599.599 INFO    ] ================================================
[2026-10-18 15:07:39,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:07:39
[2026-10-18 15:07:39,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:07:40,081.081 INFO    ] Initializing speech engine...
[2026-10-18 15:07:40,090.090 INFO    ] 2026-10-18 15:07:40
[2026-10-18 15:07:40,339.339 INFO    ] 2026-10-18 15:07:40
[2026-10-18 15:07:40,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:07:40,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:07:40,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:07:40,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:07:40,839.839 INFO    ] time= 18/10/2026 15:07:40
[2026-10-18 15:07:40,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:07:40,903.903 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:07:41,063.063 INFO    ] No existing commands found in stream
[2026-10-18 15:07:46,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:07:46,102.102 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-18 15:07:48,461.461 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:07:48,464.464 INFO    ] Checking for system updates...
[2026-10-18 15:07:48,500.500 INFO    ] 200
[2026-10-18 15:07:48,503.503 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:07:48,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:07:48,561.561 INFO    ] No update needed
[2026-10-18 15:07:48,563.563 INFO    ] Checking for camera pi updates...
[2026-10-18 15:07:48,597.597 INFO    ] 200
[2026-10-18 15:07:48,599.599 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:07:48,644.644 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:07:58,659.659 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:07:58,695.695 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:07:58,705.705 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:07:58,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:07:58,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:07:58,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:08:00,758.758 INFO    ] ================================================
[2026-10-18 15:08:00,781.781 INFO    ] Launching Daemon at Sun Oct 18 15:08:00 IST 2026
[2026-10-18 15:08:00,792.792 INFO    ] ================================================
[2026-10-18 15:08:01,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:08:01
[2026-10-18 15:08:02,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:08:02,446.446 INFO    ] Initializing speech engine...
[2026-10-18 15:08:02,462.462 INFO    ] 2026-10-18 15:08:02
[2026-10-18 15:08:02,761.761 INFO    ] 2026-10-18 15:08:02
[2026-10-18 15:08:02,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:08:03,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:08:03,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:08:03,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:08:03,384.384 INFO    ] time= 18/10/2026 15:08:03
[2026-10-18 15:08:03,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:08:03,444.444 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:08:03,573.573 INFO    ] No existing commands found in stream
[2026-10-18 15:08:08,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:08:08,592.592 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-18 15:08:12,582.582 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:08:12,585.585 INFO    ] Checking for system updates...
[2026-10-18 15:08:12,623.623 INFO    ] 200
[2026-10-18 15:08:12,626.626 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:08:12,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:08:12,681.681 INFO    ] No update needed
[2026-10-18 15:08:12,684.684 INFO    ] Checking for camera pi updates...
[2026-10-18 15:08:12,718.718 INFO    ] 200
[2026-10-18 15:08:12,721.721 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:08:12,762.762 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:08:22,775.775 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:08:22,815.815 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:08:22,827.827 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:08:22,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:08:22,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:08:22,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:08:24,884.884 INFO    ] ================================================
[2026-10-18 15:08:24,899.899 INFO    ] Launching Daemon at Sun Oct 18 15:08:24 IST 2026
[2026-10-18 15:08:24,910.910 INFO    ] ================================================
[2026-10-18 15:08:25,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:08:25
[2026-10-18 15:08:26,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:08:26,369.369 INFO    ] Initializing speech engine...
[2026-10-18 15:08:26,379.379 INFO    ] 2026-10-18 15:08:26
[2026-10-18 15:08:26,641.641 INFO    ] 2026-10-18 15:08:26
[2026-10-18 15:08:26,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:08:26,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:08:26,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:08:27,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:08:27,182.182 INFO    ] time= 18/10/2026 15:08:27
[2026-10-18 15:08:27,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:08:27,207.207 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:08:27,340.340 INFO    ] No existing commands found in stream
[2026-10-18 15:08:32,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:08:32,361.361 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-18 15:08:35,901.901 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:08:35,904.904 INFO    ] Checking for system updates...
[2026-10-18 15:08:35,940.940 INFO    ] 200
[2026-10-18 15:08:35,942.942 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:08:35,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:08:35,997.997 INFO    ] No update needed
[2026-10-18 15:08:36,000.000 INFO    ] Checking for camera pi updates...
[2026-10-18 15:08:36,033.033 INFO    ] 200
[2026-10-18 15:08:36,035.035 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:08:36,078.078 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:08:46,093.093 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:08:46,129.129 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:08:46,139.139 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:08:46,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:08:46,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:08:46,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:08:48,193.193 INFO    ] ================================================
[2026-10-18 15:08:48,208.208 INFO    ] Launching Daemon at Sun Oct 18 15:08:48 IST 2026
[2026-10-18 15:08:48,218.218 INFO    ] ================================================
[2026-10-18 15:08:48,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:08:48
[2026-10-18 15:08:49,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:08:49,839.839 INFO    ] Initializing speech engine...
[2026-10-18 15:08:49,847.847 INFO    ] 2026-10-18 15:08:49
[2026-10-18 15:08:50,117.117 INFO    ] 2026-10-18 15:08:50
[2026-10-18 15:08:50,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:08:50,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:08:50,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:08:50,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:08:50,683.683 INFO    ] time= 18/10/2026 15:08:50
[2026-10-18 15:08:50,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:08:50,724.724 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:08:50,847.847 INFO    ] No existing commands found in stream
[2026-10-18 15:08:55,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:08:55,887.887 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-18 15:08:58,862.862 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:08:58,865.865 INFO    ] Checking for system updates...
[2026-10-18 15:08:58,906.906 INFO    ] 200
[2026-10-18 15:08:58,915.915 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:08:58,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:08:58,970.970 INFO    ] No update needed
[2026-10-18 15:08:58,973.973 INFO    ] Checking for camera pi updates...
[2026-10-18 15:08:59,007.007 INFO    ] 200
[2026-10-18 15:08:59,009.009 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:08:59,054.054 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:09:09,068.068 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:09:09,102.102 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:09:09,112.112 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:09:09,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:09:09,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:09:09,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:09:11,164.164 INFO    ] ================================================
[2026-10-18 15:09:11,180.180 INFO    ] Launching Daemon at Sun Oct 18 15:09:11 IST 2026
[2026-10-18 15:09:11,190.190 INFO    ] ================================================
[2026-10-18 15:09:11,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:09:11
[2026-10-18 15:09:12,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:09:12,612.612 INFO    ] Initializing speech engine...
[2026-10-18 15:09:12,625.625 INFO    ] 2026-10-18 15:09:12
[2026-10-18 15:09:12,876.876 INFO    ] 2026-10-18 15:09:12
[2026-10-18 15:09:12,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:09:13,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:09:13,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:09:13,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:09:13,406.406 INFO    ] time= 18/10/2026 15:09:13
[2026-10-18 15:09:13,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:09:13,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:09:13,625.625 INFO    ] No existing commands found in stream
[2026-10-18 15:09:18,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:09:18,654.654 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-18 15:09:23,027.027 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:09:23,029.029 INFO    ] Checking for system updates...
[2026-10-18 15:09:23,064.064 INFO    ] 200
[2026-10-18 15:09:23,067.067 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:09:23,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:09:23,120.120 INFO    ] No update needed
[2026-10-18 15:09:23,123.123 INFO    ] Checking for camera pi updates...
[2026-10-18 15:09:23,157.157 INFO    ] 200
[2026-10-18 15:09:23,159.159 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:09:23,199.199 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:09:33,214.214 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:09:33,253.253 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:09:33,264.264 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:09:33,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:09:33,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:09:33,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:09:35,321.321 INFO    ] ================================================
[2026-10-18 15:09:35,337.337 INFO    ] Launching Daemon at Sun Oct 18 15:09:35 IST 2026
[2026-10-18 15:09:35,348.348 INFO    ] ================================================
[2026-10-18 15:09:35,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:09:35
[2026-10-18 15:09:36,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:09:36,832.832 INFO    ] Initializing speech engine...
[2026-10-18 15:09:36,841.841 INFO    ] 2026-10-18 15:09:36
[2026-10-18 15:09:37,100.100 INFO    ] 2026-10-18 15:09:37
[2026-10-18 15:09:37,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:09:37,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:09:37,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:09:37,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:09:37,651.651 INFO    ] time= 18/10/2026 15:09:37
[2026-10-18 15:09:37,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:09:37,678.678 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:09:37,806.806 INFO    ] No existing commands found in stream
[2026-10-18 15:09:42,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:09:42,831.831 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-18 15:09:46,737.737 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:09:46,740.740 INFO    ] Checking for system updates...
[2026-10-18 15:09:46,779.779 INFO    ] 200
[2026-10-18 15:09:46,782.782 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:09:46,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:09:46,842.842 INFO    ] No update needed
[2026-10-18 15:09:46,845.845 INFO    ] Checking for camera pi updates...
[2026-10-18 15:09:46,882.882 INFO    ] 200
[2026-10-18 15:09:46,884.884 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:09:46,924.924 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:09:56,939.939 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:09:56,975.975 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:09:56,985.985 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:09:56,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:09:56,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:09:56,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:09:59,037.037 INFO    ] ================================================
[2026-10-18 15:09:59,052.052 INFO    ] Launching Daemon at Sun Oct 18 15:09:59 IST 2026
[2026-10-18 15:09:59,065.065 INFO    ] ================================================
[2026-10-18 15:09:59,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:09:59
[2026-10-18 15:10:00,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:10:00,497.497 INFO    ] Initializing speech engine...
[2026-10-18 15:10:00,507.507 INFO    ] 2026-10-18 15:10:00
[2026-10-18 15:10:00,767.767 INFO    ] 2026-10-18 15:10:00
[2026-10-18 15:10:00,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:10:01,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:10:01,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:10:01,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:10:01,309.309 INFO    ] time= 18/10/2026 15:10:01
[2026-10-18 15:10:01,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:10:01,333.333 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:10:01,513.513 INFO    ] No existing commands found in stream
[2026-10-18 15:10:06,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:10:06,531.531 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-18 15:10:10,037.037 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:10:10,040.040 INFO    ] Checking for system updates...
[2026-10-18 15:10:10,075.075 INFO    ] 200
[2026-10-18 15:10:10,078.078 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:10:10,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:10:10,142.142 INFO    ] No update needed
[2026-10-18 15:10:10,144.144 INFO    ] Checking for camera pi updates...
[2026-10-18 15:10:10,177.177 INFO    ] 200
[2026-10-18 15:10:10,180.180 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:10:10,219.219 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:10:20,234.234 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:10:20,269.269 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:10:20,278.278 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:10:20,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:10:20,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:10:20,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:10:22,332.332 INFO    ] ================================================
[2026-10-18 15:10:22,348.348 INFO    ] Launching Daemon at Sun Oct 18 15:10:22 IST 2026
[2026-10-18 15:10:22,359.359 INFO    ] ================================================
[2026-10-18 15:10:22,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:10:22
[2026-10-18 15:10:23,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:10:23,780.780 INFO    ] Initializing speech engine...
[2026-10-18 15:10:23,789.789 INFO    ] 2026-10-18 15:10:23
[2026-10-18 15:10:24,086.086 INFO    ] 2026-10-18 15:10:24
[2026-10-18 15:10:24,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:10:24,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:10:24,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:10:24,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:10:24,589.589 INFO    ] time= 18/10/2026 15:10:24
[2026-10-18 15:10:24,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:10:24,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:10:24,872.872 INFO    ] No existing commands found in stream
[2026-10-18 15:10:29,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:10:29,901.901 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-18 15:10:32,130.130 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:10:32,133.133 INFO    ] Checking for system updates...
[2026-10-18 15:10:32,172.172 INFO    ] 200
[2026-10-18 15:10:32,175.175 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:10:32,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:10:32,238.238 INFO    ] No update needed
[2026-10-18 15:10:32,242.242 INFO    ] Checking for camera pi updates...
[2026-10-18 15:10:32,284.284 INFO    ] 200
[2026-10-18 15:10:32,288.288 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:10:32,342.342 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:10:42,359.359 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:10:42,405.405 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:10:42,417.417 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:10:42,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:10:42,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:10:42,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:10:44,475.475 INFO    ] ================================================
[2026-10-18 15:10:44,491.491 INFO    ] Launching Daemon at Sun Oct 18 15:10:44 IST 2026
[2026-10-18 15:10:44,502.502 INFO    ] ================================================
[2026-10-18 15:10:45,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:10:45
[2026-10-18 15:10:45,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:10:46,117.117 INFO    ] Initializing speech engine...
[2026-10-18 15:10:46,125.125 INFO    ] 2026-10-18 15:10:46
[2026-10-18 15:10:46,394.394 INFO    ] 2026-10-18 15:10:46
[2026-10-18 15:10:46,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:10:46,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:10:46,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:10:46,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:10:46,929.929 INFO    ] time= 18/10/2026 15:10:46
[2026-10-18 15:10:46,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:10:46,970.970 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:10:47,088.088 INFO    ] No existing commands found in stream
[2026-10-18 15:10:52,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:10:52,120.120 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-18 15:10:55,225.225 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:10:55,228.228 INFO    ] Checking for system updates...
[2026-10-18 15:10:55,267.267 INFO    ] 200
[2026-10-18 15:10:55,270.270 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:10:55,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:10:55,330.330 INFO    ] No update needed
[2026-10-18 15:10:55,333.333 INFO    ] Checking for camera pi updates...
[2026-10-18 15:10:55,370.370 INFO    ] 200
[2026-10-18 15:10:55,372.372 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:10:55,412.412 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:11:05,427.427 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:11:05,462.462 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:11:05,472.472 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:11:05,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:11:05,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:11:05,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:11:07,526.526 INFO    ] ================================================
[2026-10-18 15:11:07,541.541 INFO    ] Launching Daemon at Sun Oct 18 15:11:07 IST 2026
[2026-10-18 15:11:07,552.552 INFO    ] ================================================
[2026-10-18 15:11:08,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:11:08
[2026-10-18 15:11:08,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:11:08,970.970 INFO    ] Initializing speech engine...
[2026-10-18 15:11:08,993.993 INFO    ] 2026-10-18 15:11:08
[2026-10-18 15:11:09,264.264 INFO    ] 2026-10-18 15:11:09
[2026-10-18 15:11:09,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:11:09,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:11:09,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:11:09,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:11:09,789.789 INFO    ] time= 18/10/2026 15:11:09
[2026-10-18 15:11:09,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:11:09,893.893 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:11:09,991.991 INFO    ] No existing commands found in stream
[2026-10-18 15:11:15,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:11:15,003.003 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-18 15:11:15,624.624 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:11:15,627.627 INFO    ] Checking for system updates...
[2026-10-18 15:11:15,663.663 INFO    ] 200
[2026-10-18 15:11:15,666.666 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:11:15,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:11:15,726.726 INFO    ] No update needed
[2026-10-18 15:11:15,728.728 INFO    ] Checking for camera pi updates...
[2026-10-18 15:11:15,761.761 INFO    ] 200
[2026-10-18 15:11:15,764.764 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:11:15,808.808 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:11:25,823.823 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:11:25,857.857 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:11:25,867.867 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:11:25,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:11:25,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:11:25,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:11:27,919.919 INFO    ] ================================================
[2026-10-18 15:11:27,935.935 INFO    ] Launching Daemon at Sun Oct 18 15:11:27 IST 2026
[2026-10-18 15:11:27,947.947 INFO    ] ================================================
[2026-10-18 15:11:28,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:11:28
[2026-10-18 15:11:29,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:11:29,372.372 INFO    ] Initializing speech engine...
[2026-10-18 15:11:29,382.382 INFO    ] 2026-10-18 15:11:29
[2026-10-18 15:11:29,628.628 INFO    ] 2026-10-18 15:11:29
[2026-10-18 15:11:29,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:11:29,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:11:29,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:11:30,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:11:30,121.121 INFO    ] time= 18/10/2026 15:11:30
[2026-10-18 15:11:30,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:11:30,204.204 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:11:30,338.338 INFO    ] No existing commands found in stream
[2026-10-18 15:11:35,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:11:35,365.365 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-18 15:11:37,688.688 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:11:37,691.691 INFO    ] Checking for system updates...
[2026-10-18 15:11:37,731.731 INFO    ] 200
[2026-10-18 15:11:37,734.734 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:11:37,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:11:37,813.813 INFO    ] No update needed
[2026-10-18 15:11:37,822.822 INFO    ] Checking for camera pi updates...
[2026-10-18 15:11:37,859.859 INFO    ] 200
[2026-10-18 15:11:37,862.862 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:11:37,938.938 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:11:47,955.955 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:11:47,995.995 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:11:48,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:11:48,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:11:48,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:11:48,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:11:50,062.062 INFO    ] ================================================
[2026-10-18 15:11:50,078.078 INFO    ] Launching Daemon at Sun Oct 18 15:11:50 IST 2026
[2026-10-18 15:11:50,089.089 INFO    ] ================================================
[2026-10-18 15:11:50,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:11:50
[2026-10-18 15:11:51,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:11:51,506.506 INFO    ] Initializing speech engine...
[2026-10-18 15:11:51,515.515 INFO    ] 2026-10-18 15:11:51
[2026-10-18 15:11:51,811.811 INFO    ] 2026-10-18 15:11:51
[2026-10-18 15:11:51,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:11:52,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:11:52,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:11:52,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:11:52,233.233 INFO    ] time= 18/10/2026 15:11:52
[2026-10-18 15:11:52,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:11:52,297.297 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:11:52,432.432 INFO    ] No existing commands found in stream
[2026-10-18 15:11:57,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:11:57,465.465 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-18 15:12:01,406.406 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:12:01,409.409 INFO    ] Checking for system updates...
[2026-10-18 15:12:01,448.448 INFO    ] 200
[2026-10-18 15:12:01,451.451 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:12:01,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:12:01,511.511 INFO    ] No update needed
[2026-10-18 15:12:01,514.514 INFO    ] Checking for camera pi updates...
[2026-10-18 15:12:01,551.551 INFO    ] 200
[2026-10-18 15:12:01,553.553 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:12:01,593.593 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:12:11,610.610 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:12:11,650.650 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:12:11,661.661 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:12:11,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:12:11,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:12:11,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:12:13,717.717 INFO    ] ================================================
[2026-10-18 15:12:13,733.733 INFO    ] Launching Daemon at Sun Oct 18 15:12:13 IST 2026
[2026-10-18 15:12:13,743.743 INFO    ] ================================================
[2026-10-18 15:12:14,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:12:14
[2026-10-18 15:12:14,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:12:15,214.214 INFO    ] Initializing speech engine...
[2026-10-18 15:12:15,224.224 INFO    ] 2026-10-18 15:12:15
[2026-10-18 15:12:15,491.491 INFO    ] 2026-10-18 15:12:15
[2026-10-18 15:12:15,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:12:15,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:12:15,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:12:15,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:12:15,984.984 INFO    ] time= 18/10/2026 15:12:15
[2026-10-18 15:12:16,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:12:16,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:12:16,195.195 INFO    ] No existing commands found in stream
[2026-10-18 15:12:21,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:12:21,213.213 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-18 15:12:22,218.218 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:12:22,221.221 INFO    ] Checking for system updates...
[2026-10-18 15:12:22,257.257 INFO    ] 200
[2026-10-18 15:12:22,260.260 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:12:22,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:12:22,321.321 INFO    ] No update needed
[2026-10-18 15:12:22,323.323 INFO    ] Checking for camera pi updates...
[2026-10-18 15:12:22,356.356 INFO    ] 200
[2026-10-18 15:12:22,359.359 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:12:22,404.404 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:12:32,418.418 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:12:32,455.455 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:12:32,465.465 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:12:32,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:12:32,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:12:32,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:12:34,521.521 INFO    ] ================================================
[2026-10-18 15:12:34,537.537 INFO    ] Launching Daemon at Sun Oct 18 15:12:34 IST 2026
[2026-10-18 15:12:34,549.549 INFO    ] ================================================
[2026-10-18 15:12:35,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:12:35
[2026-10-18 15:12:35,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:12:36,081.081 INFO    ] Initializing speech engine...
[2026-10-18 15:12:36,093.093 INFO    ] 2026-10-18 15:12:36
[2026-10-18 15:12:36,404.404 INFO    ] 2026-10-18 15:12:36
[2026-10-18 15:12:36,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:12:36,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:12:36,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:12:36,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:12:36,936.936 INFO    ] time= 18/10/2026 15:12:36
[2026-10-18 15:12:36,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:12:36,975.975 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:12:37,087.087 INFO    ] No existing commands found in stream
[2026-10-18 15:12:42,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:12:42,115.115 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-18 15:12:46,174.174 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:12:46,177.177 INFO    ] Checking for system updates...
[2026-10-18 15:12:46,214.214 INFO    ] 200
[2026-10-18 15:12:46,217.217 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:12:46,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:12:46,283.283 INFO    ] No update needed
[2026-10-18 15:12:46,286.286 INFO    ] Checking for camera pi updates...
[2026-10-18 15:12:46,321.321 INFO    ] 200
[2026-10-18 15:12:46,324.324 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:12:46,367.367 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:12:56,383.383 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:12:56,424.424 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:12:56,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:12:56,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:12:56,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:12:56,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:12:58,492.492 INFO    ] ================================================
[2026-10-18 15:12:58,508.508 INFO    ] Launching Daemon at Sun Oct 18 15:12:58 IST 2026
[2026-10-18 15:12:58,520.520 INFO    ] ================================================
[2026-10-18 15:12:59,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:12:59
[2026-10-18 15:12:59,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:12:59,925.925 INFO    ] Initializing speech engine...
[2026-10-18 15:12:59,931.931 INFO    ] 2026-10-18 15:12:59
[2026-10-18 15:13:00,204.204 INFO    ] 2026-10-18 15:13:00
[2026-10-18 15:13:00,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:13:00,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:13:00,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:13:00,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:13:00,774.774 INFO    ] time= 18/10/2026 15:13:00
[2026-10-18 15:13:00,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:13:00,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:13:00,935.935 INFO    ] No existing commands found in stream
[2026-10-18 15:13:05,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:13:05,956.956 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-18 15:13:07,190.190 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:13:07,193.193 INFO    ] Checking for system updates...
[2026-10-18 15:13:07,233.233 INFO    ] 200
[2026-10-18 15:13:07,236.236 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:13:07,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:13:07,299.299 INFO    ] No update needed
[2026-10-18 15:13:07,301.301 INFO    ] Checking for camera pi updates...
[2026-10-18 15:13:07,339.339 INFO    ] 200
[2026-10-18 15:13:07,342.342 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:13:07,382.382 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:13:17,395.395 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:13:17,430.430 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:13:17,440.440 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:13:17,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:13:17,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:13:17,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:13:19,492.492 INFO    ] ================================================
[2026-10-18 15:13:19,509.509 INFO    ] Launching Daemon at Sun Oct 18 15:13:19 IST 2026
[2026-10-18 15:13:19,521.521 INFO    ] ================================================
[2026-10-18 15:13:20,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:13:20
[2026-10-18 15:13:20,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:13:20,921.921 INFO    ] Initializing speech engine...
[2026-10-18 15:13:20,929.929 INFO    ] 2026-10-18 15:13:20
[2026-10-18 15:13:21,206.206 INFO    ] 2026-10-18 15:13:21
[2026-10-18 15:13:21,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:13:21,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:13:21,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:13:21,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:13:21,715.715 INFO    ] time= 18/10/2026 15:13:21
[2026-10-18 15:13:21,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:13:21,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:13:21,927.927 INFO    ] No existing commands found in stream
[2026-10-18 15:13:26,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:13:26,950.950 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-18 15:13:28,578.578 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:13:28,580.580 INFO    ] Checking for system updates...
[2026-10-18 15:13:28,617.617 INFO    ] 200
[2026-10-18 15:13:28,619.619 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:13:28,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:13:28,680.680 INFO    ] No update needed
[2026-10-18 15:13:28,683.683 INFO    ] Checking for camera pi updates...
[2026-10-18 15:13:28,717.717 INFO    ] 200
[2026-10-18 15:13:28,719.719 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:13:28,765.765 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:13:38,780.780 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:13:38,816.816 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:13:38,826.826 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:13:38,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:13:38,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:13:38,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:13:40,879.879 INFO    ] ================================================
[2026-10-18 15:13:40,894.894 INFO    ] Launching Daemon at Sun Oct 18 15:13:40 IST 2026
[2026-10-18 15:13:40,906.906 INFO    ] ================================================
[2026-10-18 15:13:41,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:13:41
[2026-10-18 15:13:42,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:13:42,420.420 INFO    ] Initializing speech engine...
[2026-10-18 15:13:42,432.432 INFO    ] 2026-10-18 15:13:42
[2026-10-18 15:13:42,691.691 INFO    ] 2026-10-18 15:13:42
[2026-10-18 15:13:42,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:13:42,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:13:42,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:13:43,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:13:43,223.223 INFO    ] time= 18/10/2026 15:13:43
[2026-10-18 15:13:43,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:13:43,247.247 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:13:43,381.381 INFO    ] No existing commands found in stream
[2026-10-18 15:13:48,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:13:48,412.412 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-18 15:13:50,046.046 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:13:50,049.049 INFO    ] Checking for system updates...
[2026-10-18 15:13:50,084.084 INFO    ] 200
[2026-10-18 15:13:50,087.087 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:13:50,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:13:50,148.148 INFO    ] No update needed
[2026-10-18 15:13:50,151.151 INFO    ] Checking for camera pi updates...
[2026-10-18 15:13:50,184.184 INFO    ] 200
[2026-10-18 15:13:50,186.186 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:13:50,228.228 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:14:00,243.243 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:14:00,278.278 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:14:00,287.287 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:14:00,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:14:00,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:14:00,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:14:02,351.351 INFO    ] ================================================
[2026-10-18 15:14:02,371.371 INFO    ] Launching Daemon at Sun Oct 18 15:14:02 IST 2026
[2026-10-18 15:14:02,387.387 INFO    ] ================================================
[2026-10-18 15:14:03,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:14:03
[2026-10-18 15:14:03,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:14:04,009.009 INFO    ] Initializing speech engine...
[2026-10-18 15:14:04,024.024 INFO    ] 2026-10-18 15:14:04
[2026-10-18 15:14:04,300.300 INFO    ] 2026-10-18 15:14:04
[2026-10-18 15:14:04,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:14:04,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:14:04,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:14:04,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:14:04,724.724 INFO    ] time= 18/10/2026 15:14:04
[2026-10-18 15:14:04,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:14:04,767.767 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:14:04,854.854 INFO    ] No existing commands found in stream
[2026-10-18 15:14:09,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:14:09,867.867 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-18 15:14:10,489.489 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:14:10,492.492 INFO    ] Checking for system updates...
[2026-10-18 15:14:10,528.528 INFO    ] 200
[2026-10-18 15:14:10,530.530 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:14:10,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:14:10,584.584 INFO    ] No update needed
[2026-10-18 15:14:10,587.587 INFO    ] Checking for camera pi updates...
[2026-10-18 15:14:10,625.625 INFO    ] 200
[2026-10-18 15:14:10,627.627 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:14:10,673.673 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:14:20,688.688 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:14:20,724.724 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:14:20,733.733 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:14:20,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:14:20,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:14:20,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:14:22,787.787 INFO    ] ================================================
[2026-10-18 15:14:22,803.803 INFO    ] Launching Daemon at Sun Oct 18 15:14:22 IST 2026
[2026-10-18 15:14:22,814.814 INFO    ] ================================================
[2026-10-18 15:14:23,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:14:23
[2026-10-18 15:14:24,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:14:24,393.393 INFO    ] Initializing speech engine...
[2026-10-18 15:14:24,398.398 INFO    ] 2026-10-18 15:14:24
[2026-10-18 15:14:24,685.685 INFO    ] 2026-10-18 15:14:24
[2026-10-18 15:14:24,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:14:25,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:14:25,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:14:25,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:14:25,228.228 INFO    ] time= 18/10/2026 15:14:25
[2026-10-18 15:14:25,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:14:25,269.269 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:14:25,415.415 INFO    ] No existing commands found in stream
[2026-10-18 15:14:30,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:14:30,454.454 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-18 15:14:33,227.227 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:14:33,230.230 INFO    ] Checking for system updates...
[2026-10-18 15:14:33,272.272 INFO    ] 200
[2026-10-18 15:14:33,275.275 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:14:33,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:14:33,345.345 INFO    ] No update needed
[2026-10-18 15:14:33,348.348 INFO    ] Checking for camera pi updates...
[2026-10-18 15:14:33,381.381 INFO    ] 200
[2026-10-18 15:14:33,384.384 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:14:33,431.431 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:14:43,447.447 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:14:43,488.488 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:14:43,499.499 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:14:43,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:14:43,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:14:43,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:14:45,555.555 INFO    ] ================================================
[2026-10-18 15:14:45,571.571 INFO    ] Launching Daemon at Sun Oct 18 15:14:45 IST 2026
[2026-10-18 15:14:45,582.582 INFO    ] ================================================
[2026-10-18 15:14:46,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:14:46
[2026-10-18 15:14:46,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:14:46,994.994 INFO    ] Initializing speech engine...
[2026-10-18 15:14:47,003.003 INFO    ] 2026-10-18 15:14:46
[2026-10-18 15:14:47,299.299 INFO    ] 2026-10-18 15:14:47
[2026-10-18 15:14:47,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:14:47,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:14:47,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:14:47,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:14:47,729.729 INFO    ] time= 18/10/2026 15:14:47
[2026-10-18 15:14:47,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:14:47,765.765 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:14:47,921.921 INFO    ] No existing commands found in stream
[2026-10-18 15:14:52,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:14:52,954.954 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-18 15:14:57,179.179 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:14:57,182.182 INFO    ] Checking for system updates...
[2026-10-18 15:14:57,222.222 INFO    ] 200
[2026-10-18 15:14:57,224.224 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:14:57,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:14:57,278.278 INFO    ] No update needed
[2026-10-18 15:14:57,281.281 INFO    ] Checking for camera pi updates...
[2026-10-18 15:14:57,314.314 INFO    ] 200
[2026-10-18 15:14:57,317.317 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:14:57,357.357 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:15:07,374.374 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:15:07,409.409 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:15:07,419.419 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:15:07,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:15:07,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:15:07,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:15:09,471.471 INFO    ] ================================================
[2026-10-18 15:15:09,487.487 INFO    ] Launching Daemon at Sun Oct 18 15:15:09 IST 2026
[2026-10-18 15:15:09,498.498 INFO    ] ================================================
[2026-10-18 15:15:10,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:15:10
[2026-10-18 15:15:10,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:15:10,955.955 INFO    ] Initializing speech engine...
[2026-10-18 15:15:10,961.961 INFO    ] 2026-10-18 15:15:10
[2026-10-18 15:15:11,225.225 INFO    ] 2026-10-18 15:15:11
[2026-10-18 15:15:11,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:15:11,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:15:11,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:15:11,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:15:11,766.766 INFO    ] time= 18/10/2026 15:15:11
[2026-10-18 15:15:11,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:15:11,793.793 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:15:11,923.923 INFO    ] No existing commands found in stream
[2026-10-18 15:15:16,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:15:16,939.939 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-18 15:15:20,406.406 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:15:20,409.409 INFO    ] Checking for system updates...
[2026-10-18 15:15:20,445.445 INFO    ] 200
[2026-10-18 15:15:20,448.448 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:15:20,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:15:20,511.511 INFO    ] No update needed
[2026-10-18 15:15:20,513.513 INFO    ] Checking for camera pi updates...
[2026-10-18 15:15:20,547.547 INFO    ] 200
[2026-10-18 15:15:20,549.549 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:15:20,589.589 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:15:30,604.604 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:15:30,640.640 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:15:30,650.650 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:15:30,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:15:30,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:15:30,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:15:32,708.708 INFO    ] ================================================
[2026-10-18 15:15:32,726.726 INFO    ] Launching Daemon at Sun Oct 18 15:15:32 IST 2026
[2026-10-18 15:15:32,738.738 INFO    ] ================================================
[2026-10-18 15:15:33,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:15:33
[2026-10-18 15:15:33,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:15:34,246.246 INFO    ] Initializing speech engine...
[2026-10-18 15:15:34,255.255 INFO    ] 2026-10-18 15:15:34
[2026-10-18 15:15:34,510.510 INFO    ] 2026-10-18 15:15:34
[2026-10-18 15:15:34,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:15:34,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:15:34,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:15:34,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:15:34,998.998 INFO    ] time= 18/10/2026 15:15:34
[2026-10-18 15:15:35,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:15:35,122.122 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:15:35,271.271 INFO    ] No existing commands found in stream
[2026-10-18 15:15:40,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:15:40,300.300 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-18 15:15:42,151.151 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:15:42,154.154 INFO    ] Checking for system updates...
[2026-10-18 15:15:42,190.190 INFO    ] 200
[2026-10-18 15:15:42,192.192 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:15:42,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:15:42,247.247 INFO    ] No update needed
[2026-10-18 15:15:42,249.249 INFO    ] Checking for camera pi updates...
[2026-10-18 15:15:42,287.287 INFO    ] 200
[2026-10-18 15:15:42,290.290 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:15:42,336.336 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:15:52,349.349 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:15:52,384.384 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:15:52,393.393 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:15:52,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:15:52,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:15:52,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:15:54,450.450 INFO    ] ================================================
[2026-10-18 15:15:54,466.466 INFO    ] Launching Daemon at Sun Oct 18 15:15:54 IST 2026
[2026-10-18 15:15:54,478.478 INFO    ] ================================================
[2026-10-18 15:15:55,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:15:55
[2026-10-18 15:15:55,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:15:56,015.015 INFO    ] Initializing speech engine...
[2026-10-18 15:15:56,021.021 INFO    ] 2026-10-18 15:15:56
[2026-10-18 15:15:56,265.265 INFO    ] 2026-10-18 15:15:56
[2026-10-18 15:15:56,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:15:56,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:15:56,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:15:56,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:15:56,767.767 INFO    ] time= 18/10/2026 15:15:56
[2026-10-18 15:15:56,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:15:56,833.833 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:15:56,976.976 INFO    ] No existing commands found in stream
[2026-10-18 15:16:01,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:16:01,997.997 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-18 15:16:04,414.414 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:16:04,417.417 INFO    ] Checking for system updates...
[2026-10-18 15:16:04,455.455 INFO    ] 200
[2026-10-18 15:16:04,458.458 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:16:04,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:16:04,516.516 INFO    ] No update needed
[2026-10-18 15:16:04,519.519 INFO    ] Checking for camera pi updates...
[2026-10-18 15:16:04,555.555 INFO    ] 200
[2026-10-18 15:16:04,558.558 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:16:04,599.599 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:16:14,616.616 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:16:14,660.660 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:16:14,670.670 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:16:14,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:16:14,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:16:14,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:16:16,727.727 INFO    ] ================================================
[2026-10-18 15:16:16,743.743 INFO    ] Launching Daemon at Sun Oct 18 15:16:16 IST 2026
[2026-10-18 15:16:16,754.754 INFO    ] ================================================
[2026-10-18 15:16:17,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:16:17
[2026-10-18 15:16:17,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:16:18,228.228 INFO    ] Initializing speech engine...
[2026-10-18 15:16:18,238.238 INFO    ] 2026-10-18 15:16:18
[2026-10-18 15:16:18,495.495 INFO    ] 2026-10-18 15:16:18
[2026-10-18 15:16:18,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:16:18,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:16:18,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:16:18,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:16:19,036.036 INFO    ] time= 18/10/2026 15:16:18
[2026-10-18 15:16:19,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:16:19,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:16:19,218.218 INFO    ] No existing commands found in stream
[2026-10-18 15:16:24,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:16:24,239.239 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-18 15:16:27,465.465 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:16:27,469.469 INFO    ] Checking for system updates...
[2026-10-18 15:16:27,505.505 INFO    ] 200
[2026-10-18 15:16:27,508.508 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:16:27,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:16:27,562.562 INFO    ] No update needed
[2026-10-18 15:16:27,564.564 INFO    ] Checking for camera pi updates...
[2026-10-18 15:16:27,601.601 INFO    ] 200
[2026-10-18 15:16:27,603.603 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:16:27,644.644 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:16:37,657.657 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:16:37,692.692 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:16:37,701.701 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:16:37,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:16:37,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:16:37,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:16:39,754.754 INFO    ] ================================================
[2026-10-18 15:16:39,769.769 INFO    ] Launching Daemon at Sun Oct 18 15:16:39 IST 2026
[2026-10-18 15:16:39,781.781 INFO    ] ================================================
[2026-10-18 15:16:40,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:16:40
[2026-10-18 15:16:41,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:16:41,342.342 INFO    ] Initializing speech engine...
[2026-10-18 15:16:41,351.351 INFO    ] 2026-10-18 15:16:41
[2026-10-18 15:16:41,614.614 INFO    ] 2026-10-18 15:16:41
[2026-10-18 15:16:41,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:16:41,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:16:41,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:16:42,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:16:42,160.160 INFO    ] time= 18/10/2026 15:16:42
[2026-10-18 15:16:42,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:16:42,186.186 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:16:42,314.314 INFO    ] No existing commands found in stream
[2026-10-18 15:16:47,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:16:47,330.330 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-18 15:16:50,881.881 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:16:50,884.884 INFO    ] Checking for system updates...
[2026-10-18 15:16:50,920.920 INFO    ] 200
[2026-10-18 15:16:50,922.922 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:16:50,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:16:50,978.978 INFO    ] No update needed
[2026-10-18 15:16:50,980.980 INFO    ] Checking for camera pi updates...
[2026-10-18 15:16:51,022.022 INFO    ] 200
[2026-10-18 15:16:51,025.025 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:16:51,065.065 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:17:01,080.080 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:17:01,115.115 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:17:01,124.124 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:17:01,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:17:01,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:17:01,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:17:03,179.179 INFO    ] ================================================
[2026-10-18 15:17:03,195.195 INFO    ] Launching Daemon at Sun Oct 18 15:17:03 IST 2026
[2026-10-18 15:17:03,208.208 INFO    ] ================================================
[2026-10-18 15:17:03,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:17:03
[2026-10-18 15:17:04,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:17:04,689.689 INFO    ] Initializing speech engine...
[2026-10-18 15:17:04,696.696 INFO    ] 2026-10-18 15:17:04
[2026-10-18 15:17:04,958.958 INFO    ] 2026-10-18 15:17:04
[2026-10-18 15:17:05,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:17:05,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:17:05,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:17:05,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:17:05,488.488 INFO    ] time= 18/10/2026 15:17:05
[2026-10-18 15:17:05,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:17:05,522.522 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:17:05,669.669 INFO    ] No existing commands found in stream
[2026-10-18 15:17:10,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:17:10,703.703 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-18 15:17:12,139.139 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:17:12,142.142 INFO    ] Checking for system updates...
[2026-10-18 15:17:12,177.177 INFO    ] 200
[2026-10-18 15:17:12,180.180 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:17:12,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:17:12,234.234 INFO    ] No update needed
[2026-10-18 15:17:12,236.236 INFO    ] Checking for camera pi updates...
[2026-10-18 15:17:12,270.270 INFO    ] 200
[2026-10-18 15:17:12,272.272 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:17:12,319.319 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:17:22,333.333 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:17:22,368.368 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:17:22,378.378 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:17:22,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:17:22,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:17:22,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:17:24,431.431 INFO    ] ================================================
[2026-10-18 15:17:24,446.446 INFO    ] Launching Daemon at Sun Oct 18 15:17:24 IST 2026
[2026-10-18 15:17:24,456.456 INFO    ] ================================================
[2026-10-18 15:17:25,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:17:25
[2026-10-18 15:17:25,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:17:25,914.914 INFO    ] Initializing speech engine...
[2026-10-18 15:17:25,923.923 INFO    ] 2026-10-18 15:17:25
[2026-10-18 15:17:26,176.176 INFO    ] 2026-10-18 15:17:26
[2026-10-18 15:17:26,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:17:26,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:17:26,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:17:26,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:17:26,694.694 INFO    ] time= 18/10/2026 15:17:26
[2026-10-18 15:17:26,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:17:26,766.766 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:17:26,897.897 INFO    ] No existing commands found in stream
[2026-10-18 15:17:31,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:17:31,917.917 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-18 15:17:34,632.632 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:17:34,635.635 INFO    ] Checking for system updates...
[2026-10-18 15:17:34,671.671 INFO    ] 200
[2026-10-18 15:17:34,673.673 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:17:34,725.725 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:17:34,728.728 INFO    ] No update needed
[2026-10-18 15:17:34,730.730 INFO    ] Checking for camera pi updates...
[2026-10-18 15:17:34,772.772 INFO    ] 200
[2026-10-18 15:17:34,774.774 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:17:34,814.814 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:17:44,830.830 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:17:44,864.864 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:17:44,874.874 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:17:44,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:17:44,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:17:44,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:17:46,928.928 INFO    ] ================================================
[2026-10-18 15:17:46,943.943 INFO    ] Launching Daemon at Sun Oct 18 15:17:46 IST 2026
[2026-10-18 15:17:46,953.953 INFO    ] ================================================
[2026-10-18 15:17:47,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:17:47
[2026-10-18 15:17:48,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:17:48,393.393 INFO    ] Initializing speech engine...
[2026-10-18 15:17:48,408.408 INFO    ] 2026-10-18 15:17:48
[2026-10-18 15:17:48,698.698 INFO    ] 2026-10-18 15:17:48
[2026-10-18 15:17:48,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:17:48,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:17:48,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:17:49,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:17:49,101.101 INFO    ] time= 18/10/2026 15:17:49
[2026-10-18 15:17:49,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:17:49,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:17:49,240.240 INFO    ] No existing commands found in stream
[2026-10-18 15:17:54,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:17:54,268.268 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-18 15:17:54,826.826 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:17:54,828.828 INFO    ] Checking for system updates...
[2026-10-18 15:17:54,868.868 INFO    ] 200
[2026-10-18 15:17:54,870.870 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:17:54,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:17:54,932.932 INFO    ] No update needed
[2026-10-18 15:17:54,934.934 INFO    ] Checking for camera pi updates...
[2026-10-18 15:17:54,967.967 INFO    ] 200
[2026-10-18 15:17:54,970.970 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:17:55,010.010 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:18:05,025.025 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:18:05,061.061 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:18:05,071.071 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:18:05,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:18:05,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:18:05,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:18:07,123.123 INFO    ] ================================================
[2026-10-18 15:18:07,138.138 INFO    ] Launching Daemon at Sun Oct 18 15:18:07 IST 2026
[2026-10-18 15:18:07,149.149 INFO    ] ================================================
[2026-10-18 15:18:07,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:18:07
[2026-10-18 15:18:08,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:18:08,609.609 INFO    ] Initializing speech engine...
[2026-10-18 15:18:08,620.620 INFO    ] 2026-10-18 15:18:08
[2026-10-18 15:18:08,880.880 INFO    ] 2026-10-18 15:18:08
[2026-10-18 15:18:08,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:18:09,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:18:09,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:18:09,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:18:09,425.425 INFO    ] time= 18/10/2026 15:18:09
[2026-10-18 15:18:09,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:18:09,461.461 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:18:09,598.598 INFO    ] No existing commands found in stream
[2026-10-18 15:18:14,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:18:14,631.631 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-18 15:18:18,240.240 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:18:18,243.243 INFO    ] Checking for system updates...
[2026-10-18 15:18:18,280.280 INFO    ] 200
[2026-10-18 15:18:18,282.282 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:18:18,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:18:18,344.344 INFO    ] No update needed
[2026-10-18 15:18:18,347.347 INFO    ] Checking for camera pi updates...
[2026-10-18 15:18:18,381.381 INFO    ] 200
[2026-10-18 15:18:18,383.383 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:18:18,423.423 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:18:28,436.436 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:18:28,472.472 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:18:28,482.482 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:18:28,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:18:28,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:18:28,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:18:30,534.534 INFO    ] ================================================
[2026-10-18 15:18:30,550.550 INFO    ] Launching Daemon at Sun Oct 18 15:18:30 IST 2026
[2026-10-18 15:18:30,561.561 INFO    ] ================================================
[2026-10-18 15:18:31,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:18:31
[2026-10-18 15:18:31,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:18:32,107.107 INFO    ] Initializing speech engine...
[2026-10-18 15:18:32,124.124 INFO    ] 2026-10-18 15:18:32
[2026-10-18 15:18:32,398.398 INFO    ] 2026-10-18 15:18:32
[2026-10-18 15:18:32,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:18:32,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:18:32,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:18:32,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:18:32,913.913 INFO    ] time= 18/10/2026 15:18:32
[2026-10-18 15:18:32,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:18:33,011.011 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:18:33,144.144 INFO    ] No existing commands found in stream
[2026-10-18 15:18:38,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:18:38,172.172 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-18 15:18:40,965.965 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:18:40,968.968 INFO    ] Checking for system updates...
[2026-10-18 15:18:41,008.008 INFO    ] 200
[2026-10-18 15:18:41,011.011 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:18:41,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:18:41,074.074 INFO    ] No update needed
[2026-10-18 15:18:41,076.076 INFO    ] Checking for camera pi updates...
[2026-10-18 15:18:41,109.109 INFO    ] 200
[2026-10-18 15:18:41,112.112 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:18:41,158.158 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:18:51,174.174 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:18:51,208.208 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:18:51,218.218 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:18:51,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:18:51,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:18:51,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:18:53,270.270 INFO    ] ================================================
[2026-10-18 15:18:53,286.286 INFO    ] Launching Daemon at Sun Oct 18 15:18:53 IST 2026
[2026-10-18 15:18:53,297.297 INFO    ] ================================================
[2026-10-18 15:18:53,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:18:53
[2026-10-18 15:18:54,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:18:54,753.753 INFO    ] Initializing speech engine...
[2026-10-18 15:18:54,759.759 INFO    ] 2026-10-18 15:18:54
[2026-10-18 15:18:55,022.022 INFO    ] 2026-10-18 15:18:55
[2026-10-18 15:18:55,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:18:55,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:18:55,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:18:55,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:18:55,543.543 INFO    ] time= 18/10/2026 15:18:55
[2026-10-18 15:18:55,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:18:55,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:18:55,727.727 INFO    ] No existing commands found in stream
[2026-10-18 15:19:00,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:19:00,756.756 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-18 15:19:01,571.571 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:19:01,575.575 INFO    ] Checking for system updates...
[2026-10-18 15:19:01,640.640 INFO    ] 200
[2026-10-18 15:19:01,644.644 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:19:01,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:19:01,737.737 INFO    ] No update needed
[2026-10-18 15:19:01,740.740 INFO    ] Checking for camera pi updates...
[2026-10-18 15:19:01,784.784 INFO    ] 200
[2026-10-18 15:19:01,788.788 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:19:01,877.877 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:19:11,899.899 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:19:11,934.934 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:19:11,944.944 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:19:11,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:19:11,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:19:11,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:19:14,996.996 INFO    ] ================================================
[2026-10-18 15:19:14,011.011 INFO    ] Launching Daemon at Sun Oct 18 15:19:14 IST 2026
[2026-10-18 15:19:14,022.022 INFO    ] ================================================
[2026-10-18 15:19:14,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:19:14
[2026-10-18 15:19:15,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:19:15,446.446 INFO    ] Initializing speech engine...
[2026-10-18 15:19:15,455.455 INFO    ] 2026-10-18 15:19:15
[2026-10-18 15:19:15,705.705 INFO    ] 2026-10-18 15:19:15
[2026-10-18 15:19:15,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:19:15,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:19:15,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:19:16,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:19:16,187.187 INFO    ] time= 18/10/2026 15:19:16
[2026-10-18 15:19:16,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:19:16,283.283 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:19:16,419.419 INFO    ] No existing commands found in stream
[2026-10-18 15:19:21,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:19:21,448.448 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-18 15:19:22,369.369 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:19:22,372.372 INFO    ] Checking for system updates...
[2026-10-18 15:19:22,407.407 INFO    ] 200
[2026-10-18 15:19:22,410.410 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:19:22,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:19:22,471.471 INFO    ] No update needed
[2026-10-18 15:19:22,473.473 INFO    ] Checking for camera pi updates...
[2026-10-18 15:19:22,510.510 INFO    ] 200
[2026-10-18 15:19:22,512.512 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:19:22,552.552 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:19:32,568.568 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:19:32,604.604 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:19:32,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:19:32,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:19:32,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:19:32,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:19:34,671.671 INFO    ] ================================================
[2026-10-18 15:19:34,686.686 INFO    ] Launching Daemon at Sun Oct 18 15:19:34 IST 2026
[2026-10-18 15:19:34,697.697 INFO    ] ================================================
[2026-10-18 15:19:35,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:19:35
[2026-10-18 15:19:35,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:19:36,161.161 INFO    ] Initializing speech engine...
[2026-10-18 15:19:36,181.181 INFO    ] 2026-10-18 15:19:36
[2026-10-18 15:19:36,453.453 INFO    ] 2026-10-18 15:19:36
[2026-10-18 15:19:36,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:19:36,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:19:36,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:19:36,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:19:36,886.886 INFO    ] time= 18/10/2026 15:19:36
[2026-10-18 15:19:36,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:19:36,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:19:37,056.056 INFO    ] No existing commands found in stream
[2026-10-18 15:19:42,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:19:42,079.079 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-18 15:19:42,590.590 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:19:42,593.593 INFO    ] Checking for system updates...
[2026-10-18 15:19:42,630.630 INFO    ] 200
[2026-10-18 15:19:42,632.632 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:19:42,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:19:42,688.688 INFO    ] No update needed
[2026-10-18 15:19:42,691.691 INFO    ] Checking for camera pi updates...
[2026-10-18 15:19:42,729.729 INFO    ] 200
[2026-10-18 15:19:42,731.731 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:19:42,781.781 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:19:52,798.798 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:19:52,837.837 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:19:52,848.848 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:19:52,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:19:52,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:19:52,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:19:54,905.905 INFO    ] ================================================
[2026-10-18 15:19:54,920.920 INFO    ] Launching Daemon at Sun Oct 18 15:19:54 IST 2026
[2026-10-18 15:19:54,931.931 INFO    ] ================================================
[2026-10-18 15:19:55,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:19:55
[2026-10-18 15:19:56,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:19:56,575.575 INFO    ] Initializing speech engine...
[2026-10-18 15:19:56,582.582 INFO    ] 2026-10-18 15:19:56
[2026-10-18 15:19:56,857.857 INFO    ] 2026-10-18 15:19:56
[2026-10-18 15:19:56,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:19:57,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:19:57,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:19:57,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:19:57,428.428 INFO    ] time= 18/10/2026 15:19:57
[2026-10-18 15:19:57,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:19:57,456.456 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:19:57,590.590 INFO    ] No existing commands found in stream
[2026-10-18 15:20:02,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:20:02,633.633 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-18 15:20:08,855.855 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:20:08,858.858 INFO    ] Checking for system updates...
[2026-10-18 15:20:08,895.895 INFO    ] 200
[2026-10-18 15:20:08,898.898 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:20:08,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:20:08,956.956 INFO    ] No update needed
[2026-10-18 15:20:08,959.959 INFO    ] Checking for camera pi updates...
[2026-10-18 15:20:08,994.994 INFO    ] 200
[2026-10-18 15:20:08,997.997 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:20:09,038.038 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:20:19,055.055 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:20:19,095.095 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:20:19,107.107 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:20:19,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:20:19,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:20:19,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:20:21,163.163 INFO    ] ================================================
[2026-10-18 15:20:21,178.178 INFO    ] Launching Daemon at Sun Oct 18 15:20:21 IST 2026
[2026-10-18 15:20:21,189.189 INFO    ] ================================================
[2026-10-18 15:20:21,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:20:21
[2026-10-18 15:20:22,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:20:22,636.636 INFO    ] Initializing speech engine...
[2026-10-18 15:20:22,653.653 INFO    ] 2026-10-18 15:20:22
[2026-10-18 15:20:22,942.942 INFO    ] 2026-10-18 15:20:22
[2026-10-18 15:20:22,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:20:23,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:20:23,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:20:23,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:20:23,446.446 INFO    ] time= 18/10/2026 15:20:23
[2026-10-18 15:20:23,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:20:23,518.518 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:20:23,598.598 INFO    ] No existing commands found in stream
[2026-10-18 15:20:28,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:20:28,623.623 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-18 15:20:32,639.639 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:20:32,642.642 INFO    ] Checking for system updates...
[2026-10-18 15:20:32,688.688 INFO    ] 200
[2026-10-18 15:20:32,691.691 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:20:32,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:20:32,769.769 INFO    ] No update needed
[2026-10-18 15:20:32,772.772 INFO    ] Checking for camera pi updates...
[2026-10-18 15:20:32,828.828 INFO    ] 200
[2026-10-18 15:20:32,830.830 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:20:32,872.872 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:20:42,886.886 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:20:42,922.922 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:20:42,932.932 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:20:42,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:20:42,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:20:42,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:20:44,985.985 INFO    ] ================================================
[2026-10-18 15:20:45,000.000 INFO    ] Launching Daemon at Sun Oct 18 15:20:44 IST 2026
[2026-10-18 15:20:45,011.011 INFO    ] ================================================
[2026-10-18 15:20:45,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:20:45
[2026-10-18 15:20:46,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:20:46,422.422 INFO    ] Initializing speech engine...
[2026-10-18 15:20:46,445.445 INFO    ] 2026-10-18 15:20:46
[2026-10-18 15:20:46,702.702 INFO    ] 2026-10-18 15:20:46
[2026-10-18 15:20:46,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:20:46,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:20:47,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:20:47,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:20:47,198.198 INFO    ] time= 18/10/2026 15:20:47
[2026-10-18 15:20:47,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:20:47,283.283 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:20:47,431.431 INFO    ] No existing commands found in stream
[2026-10-18 15:20:52,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:20:52,453.453 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-18 15:20:55,644.644 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:20:55,647.647 INFO    ] Checking for system updates...
[2026-10-18 15:20:55,683.683 INFO    ] 200
[2026-10-18 15:20:55,686.686 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:20:55,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:20:55,741.741 INFO    ] No update needed
[2026-10-18 15:20:55,743.743 INFO    ] Checking for camera pi updates...
[2026-10-18 15:20:55,776.776 INFO    ] 200
[2026-10-18 15:20:55,779.779 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:20:55,819.819 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:21:05,833.833 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:21:05,868.868 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:21:05,877.877 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:21:05,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:21:05,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:21:05,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:21:07,932.932 INFO    ] ================================================
[2026-10-18 15:21:07,948.948 INFO    ] Launching Daemon at Sun Oct 18 15:21:07 IST 2026
[2026-10-18 15:21:07,959.959 INFO    ] ================================================
[2026-10-18 15:21:08,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:21:08
[2026-10-18 15:21:09,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:21:09,398.398 INFO    ] Initializing speech engine...
[2026-10-18 15:21:09,407.407 INFO    ] 2026-10-18 15:21:09
[2026-10-18 15:21:09,654.654 INFO    ] 2026-10-18 15:21:09
[2026-10-18 15:21:09,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:21:09,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:21:09,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:21:10,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:21:10,154.154 INFO    ] time= 18/10/2026 15:21:10
[2026-10-18 15:21:10,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:21:10,229.229 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:21:10,375.375 INFO    ] No existing commands found in stream
[2026-10-18 15:21:15,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:21:15,394.394 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-18 15:21:18,667.667 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:21:18,669.669 INFO    ] Checking for system updates...
[2026-10-18 15:21:18,708.708 INFO    ] 200
[2026-10-18 15:21:18,711.711 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:21:18,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:21:18,773.773 INFO    ] No update needed
[2026-10-18 15:21:18,775.775 INFO    ] Checking for camera pi updates...
[2026-10-18 15:21:18,808.808 INFO    ] 200
[2026-10-18 15:21:18,810.810 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:21:18,850.850 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:21:28,866.866 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:21:28,900.900 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:21:28,910.910 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:21:28,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:21:28,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:21:28,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:21:30,964.964 INFO    ] ================================================
[2026-10-18 15:21:30,980.980 INFO    ] Launching Daemon at Sun Oct 18 15:21:30 IST 2026
[2026-10-18 15:21:30,991.991 INFO    ] ================================================
[2026-10-18 15:21:31,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:21:31
[2026-10-18 15:21:32,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:21:32,498.498 INFO    ] Initializing speech engine...
[2026-10-18 15:21:32,507.507 INFO    ] 2026-10-18 15:21:32
[2026-10-18 15:21:32,796.796 INFO    ] 2026-10-18 15:21:32
[2026-10-18 15:21:32,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:21:33,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:21:33,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:21:33,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:21:33,412.412 INFO    ] time= 18/10/2026 15:21:33
[2026-10-18 15:21:33,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:21:33,438.438 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:21:33,597.597 INFO    ] No existing commands found in stream
[2026-10-18 15:21:38,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:21:38,630.630 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-18 15:21:42,784.784 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:21:42,787.787 INFO    ] Checking for system updates...
[2026-10-18 15:21:42,837.837 INFO    ] 200
[2026-10-18 15:21:42,840.840 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:21:42,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:21:42,894.894 INFO    ] No update needed
[2026-10-18 15:21:42,896.896 INFO    ] Checking for camera pi updates...
[2026-10-18 15:21:42,934.934 INFO    ] 200
[2026-10-18 15:21:42,937.937 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:21:42,983.983 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:21:52,998.998 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:21:53,033.033 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:21:53,043.043 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:21:53,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:21:53,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:21:53,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:21:55,096.096 INFO    ] ================================================
[2026-10-18 15:21:55,111.111 INFO    ] Launching Daemon at Sun Oct 18 15:21:55 IST 2026
[2026-10-18 15:21:55,123.123 INFO    ] ================================================
[2026-10-18 15:21:55,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:21:55
[2026-10-18 15:21:56,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:21:56,768.768 INFO    ] Initializing speech engine...
[2026-10-18 15:21:56,780.780 INFO    ] 2026-10-18 15:21:56
[2026-10-18 15:21:57,072.072 INFO    ] 2026-10-18 15:21:57
[2026-10-18 15:21:57,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:21:57,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:21:57,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:21:57,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:21:57,634.634 INFO    ] time= 18/10/2026 15:21:57
[2026-10-18 15:21:57,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:21:57,672.672 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:21:57,802.802 INFO    ] No existing commands found in stream
[2026-10-18 15:22:02,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:22:02,838.838 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-18 15:22:04,364.364 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:22:04,368.368 INFO    ] Checking for system updates...
[2026-10-18 15:22:04,408.408 INFO    ] 200
[2026-10-18 15:22:04,411.411 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:22:04,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:22:04,474.474 INFO    ] No update needed
[2026-10-18 15:22:04,477.477 INFO    ] Checking for camera pi updates...
[2026-10-18 15:22:04,510.510 INFO    ] 200
[2026-10-18 15:22:04,513.513 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:22:04,553.553 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:22:14,568.568 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:22:14,603.603 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:22:14,613.613 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:22:14,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:22:14,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:22:14,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:22:16,667.667 INFO    ] ================================================
[2026-10-18 15:22:16,683.683 INFO    ] Launching Daemon at Sun Oct 18 15:22:16 IST 2026
[2026-10-18 15:22:16,694.694 INFO    ] ================================================
[2026-10-18 15:22:17,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:22:17
[2026-10-18 15:22:17,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:22:18,209.209 INFO    ] Initializing speech engine...
[2026-10-18 15:22:18,214.214 INFO    ] 2026-10-18 15:22:18
[2026-10-18 15:22:18,464.464 INFO    ] 2026-10-18 15:22:18
[2026-10-18 15:22:18,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:22:18,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:22:18,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:22:18,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:22:18,966.966 INFO    ] time= 18/10/2026 15:22:18
[2026-10-18 15:22:19,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:22:19,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:22:19,178.178 INFO    ] No existing commands found in stream
[2026-10-18 15:22:24,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:22:24,208.208 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-18 15:22:26,295.295 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:22:26,298.298 INFO    ] Checking for system updates...
[2026-10-18 15:22:26,339.339 INFO    ] 200
[2026-10-18 15:22:26,342.342 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:22:26,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:22:26,406.406 INFO    ] No update needed
[2026-10-18 15:22:26,409.409 INFO    ] Checking for camera pi updates...
[2026-10-18 15:22:26,445.445 INFO    ] 200
[2026-10-18 15:22:26,448.448 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:22:26,495.495 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:22:36,511.511 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:22:36,552.552 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:22:36,564.564 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:22:36,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:22:36,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:22:36,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:22:38,620.620 INFO    ] ================================================
[2026-10-18 15:22:38,636.636 INFO    ] Launching Daemon at Sun Oct 18 15:22:38 IST 2026
[2026-10-18 15:22:38,648.648 INFO    ] ================================================
[2026-10-18 15:22:39,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:22:39
[2026-10-18 15:22:39,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:22:40,318.318 INFO    ] Initializing speech engine...
[2026-10-18 15:22:40,327.327 INFO    ] 2026-10-18 15:22:40
[2026-10-18 15:22:40,639.639 INFO    ] 2026-10-18 15:22:40
[2026-10-18 15:22:40,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:22:40,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:22:40,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:22:41,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:22:41,154.154 INFO    ] time= 18/10/2026 15:22:41
[2026-10-18 15:22:41,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:22:41,189.189 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:22:41,318.318 INFO    ] No existing commands found in stream
[2026-10-18 15:22:46,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:22:46,340.340 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-18 15:22:46,882.882 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:22:46,885.885 INFO    ] Checking for system updates...
[2026-10-18 15:22:46,926.926 INFO    ] 200
[2026-10-18 15:22:46,929.929 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:22:46,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:22:46,997.997 INFO    ] No update needed
[2026-10-18 15:22:47,000.000 INFO    ] Checking for camera pi updates...
[2026-10-18 15:22:47,038.038 INFO    ] 200
[2026-10-18 15:22:47,041.041 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:22:47,087.087 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:22:57,102.102 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:22:57,137.137 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:22:57,146.146 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:22:57,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:22:57,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:22:57,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:22:59,199.199 INFO    ] ================================================
[2026-10-18 15:22:59,214.214 INFO    ] Launching Daemon at Sun Oct 18 15:22:59 IST 2026
[2026-10-18 15:22:59,226.226 INFO    ] ================================================
[2026-10-18 15:22:59,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:22:59
[2026-10-18 15:23:00,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:23:00,659.659 INFO    ] Initializing speech engine...
[2026-10-18 15:23:00,662.662 INFO    ] 2026-10-18 15:23:00
[2026-10-18 15:23:00,948.948 INFO    ] 2026-10-18 15:23:00
[2026-10-18 15:23:00,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:23:01,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:23:01,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:23:01,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:23:01,510.510 INFO    ] time= 18/10/2026 15:23:01
[2026-10-18 15:23:01,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:23:01,537.537 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:23:01,676.676 INFO    ] No existing commands found in stream
[2026-10-18 15:23:06,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:23:06,694.694 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-18 15:23:09,335.335 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:23:09,338.338 INFO    ] Checking for system updates...
[2026-10-18 15:23:09,379.379 INFO    ] 200
[2026-10-18 15:23:09,381.381 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:23:09,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:23:09,443.443 INFO    ] No update needed
[2026-10-18 15:23:09,445.445 INFO    ] Checking for camera pi updates...
[2026-10-18 15:23:09,483.483 INFO    ] 200
[2026-10-18 15:23:09,485.485 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:23:09,531.531 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:23:19,546.546 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:23:19,580.580 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:23:19,590.590 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:23:19,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:23:19,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:23:19,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:23:21,642.642 INFO    ] ================================================
[2026-10-18 15:23:21,657.657 INFO    ] Launching Daemon at Sun Oct 18 15:23:21 IST 2026
[2026-10-18 15:23:21,668.668 INFO    ] ================================================
[2026-10-18 15:23:22,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:23:22
[2026-10-18 15:23:22,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:23:23,144.144 INFO    ] Initializing speech engine...
[2026-10-18 15:23:23,159.159 INFO    ] 2026-10-18 15:23:23
[2026-10-18 15:23:23,426.426 INFO    ] 2026-10-18 15:23:23
[2026-10-18 15:23:23,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:23:23,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:23:23,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:23:23,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:23:23,934.934 INFO    ] time= 18/10/2026 15:23:23
[2026-10-18 15:23:23,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:23:24,011.011 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:23:24,138.138 INFO    ] No existing commands found in stream
[2026-10-18 15:23:29,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:23:29,171.171 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-18 15:23:32,450.450 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:23:32,453.453 INFO    ] Checking for system updates...
[2026-10-18 15:23:32,492.492 INFO    ] 200
[2026-10-18 15:23:32,495.495 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:23:32,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:23:32,554.554 INFO    ] No update needed
[2026-10-18 15:23:32,557.557 INFO    ] Checking for camera pi updates...
[2026-10-18 15:23:32,594.594 INFO    ] 200
[2026-10-18 15:23:32,597.597 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:23:32,649.649 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:23:42,664.664 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:23:42,699.699 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:23:42,709.709 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:23:42,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:23:42,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:23:42,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:23:44,762.762 INFO    ] ================================================
[2026-10-18 15:23:44,778.778 INFO    ] Launching Daemon at Sun Oct 18 15:23:44 IST 2026
[2026-10-18 15:23:44,789.789 INFO    ] ================================================
[2026-10-18 15:23:45,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:23:45
[2026-10-18 15:23:45,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:23:46,185.185 INFO    ] Initializing speech engine...
[2026-10-18 15:23:46,200.200 INFO    ] 2026-10-18 15:23:46
[2026-10-18 15:23:46,466.466 INFO    ] 2026-10-18 15:23:46
[2026-10-18 15:23:46,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:23:46,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:23:46,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:23:46,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:23:47,012.012 INFO    ] time= 18/10/2026 15:23:46
[2026-10-18 15:23:47,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:23:47,055.055 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:23:47,187.187 INFO    ] No existing commands found in stream
[2026-10-18 15:23:52,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:23:52,204.204 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-18 15:23:53,318.318 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:23:53,321.321 INFO    ] Checking for system updates...
[2026-10-18 15:23:53,362.362 INFO    ] 200
[2026-10-18 15:23:53,364.364 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:23:53,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:23:53,418.418 INFO    ] No update needed
[2026-10-18 15:23:53,421.421 INFO    ] Checking for camera pi updates...
[2026-10-18 15:23:53,477.477 INFO    ] 200
[2026-10-18 15:23:53,480.480 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:23:53,521.521 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:24:03,534.534 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:24:03,577.577 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:24:03,587.587 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:24:03,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:24:03,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:24:03,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:24:05,640.640 INFO    ] ================================================
[2026-10-18 15:24:05,656.656 INFO    ] Launching Daemon at Sun Oct 18 15:24:05 IST 2026
[2026-10-18 15:24:05,667.667 INFO    ] ================================================
[2026-10-18 15:24:06,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:24:06
[2026-10-18 15:24:06,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:24:07,086.086 INFO    ] Initializing speech engine...
[2026-10-18 15:24:07,101.101 INFO    ] 2026-10-18 15:24:07
[2026-10-18 15:24:07,390.390 INFO    ] 2026-10-18 15:24:07
[2026-10-18 15:24:07,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:24:07,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:24:07,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:24:07,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:24:07,808.808 INFO    ] time= 18/10/2026 15:24:07
[2026-10-18 15:24:07,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:24:07,820.820 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:24:07,896.896 INFO    ] No existing commands found in stream
[2026-10-18 15:24:12,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:24:12,924.924 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-18 15:24:15,019.019 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:24:15,022.022 INFO    ] Checking for system updates...
[2026-10-18 15:24:15,061.061 INFO    ] 200
[2026-10-18 15:24:15,064.064 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:24:15,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:24:15,126.126 INFO    ] No update needed
[2026-10-18 15:24:15,129.129 INFO    ] Checking for camera pi updates...
[2026-10-18 15:24:15,162.162 INFO    ] 200
[2026-10-18 15:24:15,165.165 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:24:15,210.210 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:24:25,226.226 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:24:25,262.262 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:24:25,273.273 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:24:25,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:24:25,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:24:25,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:24:27,329.329 INFO    ] ================================================
[2026-10-18 15:24:27,346.346 INFO    ] Launching Daemon at Sun Oct 18 15:24:27 IST 2026
[2026-10-18 15:24:27,357.357 INFO    ] ================================================
[2026-10-18 15:24:27,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:24:27
[2026-10-18 15:24:28,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:24:28,913.913 INFO    ] Initializing speech engine...
[2026-10-18 15:24:28,926.926 INFO    ] 2026-10-18 15:24:28
[2026-10-18 15:24:29,187.187 INFO    ] 2026-10-18 15:24:29
[2026-10-18 15:24:29,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:24:29,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:24:29,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:24:29,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:24:29,696.696 INFO    ] time= 18/10/2026 15:24:29
[2026-10-18 15:24:29,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:24:29,769.769 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:24:29,914.914 INFO    ] No existing commands found in stream
[2026-10-18 15:24:34,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:24:34,935.935 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-18 15:24:35,646.646 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:24:35,649.649 INFO    ] Checking for system updates...
[2026-10-18 15:24:35,686.686 INFO    ] 200
[2026-10-18 15:24:35,688.688 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:24:35,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:24:35,748.748 INFO    ] No update needed
[2026-10-18 15:24:35,750.750 INFO    ] Checking for camera pi updates...
[2026-10-18 15:24:35,785.785 INFO    ] 200
[2026-10-18 15:24:35,788.788 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:24:35,828.828 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:24:45,843.843 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:24:45,879.879 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:24:45,889.889 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:24:45,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:24:45,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:24:45,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:24:47,941.941 INFO    ] ================================================
[2026-10-18 15:24:47,957.957 INFO    ] Launching Daemon at Sun Oct 18 15:24:47 IST 2026
[2026-10-18 15:24:47,968.968 INFO    ] ================================================
[2026-10-18 15:24:48,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:24:48
[2026-10-18 15:24:49,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:24:49,436.436 INFO    ] Initializing speech engine...
[2026-10-18 15:24:49,445.445 INFO    ] 2026-10-18 15:24:49
[2026-10-18 15:24:49,703.703 INFO    ] 2026-10-18 15:24:49
[2026-10-18 15:24:49,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:24:50,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:24:50,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:24:50,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:24:50,247.247 INFO    ] time= 18/10/2026 15:24:50
[2026-10-18 15:24:50,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:24:50,271.271 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:24:50,394.394 INFO    ] No existing commands found in stream
[2026-10-18 15:24:55,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:24:55,414.414 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-18 15:24:56,749.749 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:24:56,751.751 INFO    ] Checking for system updates...
[2026-10-18 15:24:56,788.788 INFO    ] 200
[2026-10-18 15:24:56,791.791 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:24:56,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:24:56,856.856 INFO    ] No update needed
[2026-10-18 15:24:56,858.858 INFO    ] Checking for camera pi updates...
[2026-10-18 15:24:56,896.896 INFO    ] 200
[2026-10-18 15:24:56,898.898 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:24:56,943.943 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:25:06,962.962 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:25:06,998.998 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:25:07,008.008 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:25:07,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:25:07,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:25:07,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:25:09,062.062 INFO    ] ================================================
[2026-10-18 15:25:09,078.078 INFO    ] Launching Daemon at Sun Oct 18 15:25:09 IST 2026
[2026-10-18 15:25:09,089.089 INFO    ] ================================================
[2026-10-18 15:25:09,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:25:09
[2026-10-18 15:25:10,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:25:10,552.552 INFO    ] Initializing speech engine...
[2026-10-18 15:25:10,557.557 INFO    ] 2026-10-18 15:25:10
[2026-10-18 15:25:10,819.819 INFO    ] 2026-10-18 15:25:10
[2026-10-18 15:25:10,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:25:11,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:25:11,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:25:11,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:25:11,237.237 INFO    ] time= 18/10/2026 15:25:11
[2026-10-18 15:25:11,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:25:11,250.250 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:25:11,391.391 INFO    ] No existing commands found in stream
[2026-10-18 15:25:16,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:25:16,419.419 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-18 15:25:20,864.864 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:25:20,867.867 INFO    ] Checking for system updates...
[2026-10-18 15:25:20,907.907 INFO    ] 200
[2026-10-18 15:25:20,911.911 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:25:20,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:25:20,972.972 INFO    ] No update needed
[2026-10-18 15:25:20,975.975 INFO    ] Checking for camera pi updates...
[2026-10-18 15:25:21,013.013 INFO    ] 200
[2026-10-18 15:25:21,016.016 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:25:21,061.061 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:25:31,077.077 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:25:31,117.117 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:25:31,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:25:31,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:25:31,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:25:31,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:25:33,187.187 INFO    ] ================================================
[2026-10-18 15:25:33,203.203 INFO    ] Launching Daemon at Sun Oct 18 15:25:33 IST 2026
[2026-10-18 15:25:33,214.214 INFO    ] ================================================
[2026-10-18 15:25:33,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:25:33
[2026-10-18 15:25:34,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:25:34,659.659 INFO    ] Initializing speech engine...
[2026-10-18 15:25:34,671.671 INFO    ] 2026-10-18 15:25:34
[2026-10-18 15:25:34,923.923 INFO    ] 2026-10-18 15:25:34
[2026-10-18 15:25:34,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:25:35,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:25:35,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:25:35,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:25:35,339.339 INFO    ] time= 18/10/2026 15:25:35
[2026-10-18 15:25:35,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:25:35,408.408 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:25:35,532.532 INFO    ] No existing commands found in stream
[2026-10-18 15:25:40,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:25:40,546.546 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-18 15:25:44,237.237 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:25:44,240.240 INFO    ] Checking for system updates...
[2026-10-18 15:25:44,280.280 INFO    ] 200
[2026-10-18 15:25:44,282.282 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:25:44,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:25:44,337.337 INFO    ] No update needed
[2026-10-18 15:25:44,339.339 INFO    ] Checking for camera pi updates...
[2026-10-18 15:25:44,377.377 INFO    ] 200
[2026-10-18 15:25:44,379.379 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:25:44,419.419 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:25:54,433.433 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:25:54,468.468 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:25:54,477.477 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:25:54,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:25:54,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:25:54,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:25:56,529.529 INFO    ] ================================================
[2026-10-18 15:25:56,544.544 INFO    ] Launching Daemon at Sun Oct 18 15:25:56 IST 2026
[2026-10-18 15:25:56,555.555 INFO    ] ================================================
[2026-10-18 15:25:57,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:25:57
[2026-10-18 15:25:57,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:25:57,992.992 INFO    ] Initializing speech engine...
[2026-10-18 15:25:57,997.997 INFO    ] 2026-10-18 15:25:57
[2026-10-18 15:25:58,300.300 INFO    ] 2026-10-18 15:25:58
[2026-10-18 15:25:58,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:25:58,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:25:58,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:25:58,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:25:58,684.684 INFO    ] time= 18/10/2026 15:25:58
[2026-10-18 15:25:58,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:25:58,712.712 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:25:58,851.851 INFO    ] No existing commands found in stream
[2026-10-18 15:26:03,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:26:03,884.884 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-18 15:26:05,246.246 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:26:05,249.249 INFO    ] Checking for system updates...
[2026-10-18 15:26:05,289.289 INFO    ] 200
[2026-10-18 15:26:05,291.291 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:26:05,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:26:05,353.353 INFO    ] No update needed
[2026-10-18 15:26:05,355.355 INFO    ] Checking for camera pi updates...
[2026-10-18 15:26:05,393.393 INFO    ] 200
[2026-10-18 15:26:05,395.395 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:26:05,436.436 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:26:15,451.451 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:26:15,486.486 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:26:15,496.496 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:26:15,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:26:15,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:26:15,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:26:17,548.548 INFO    ] ================================================
[2026-10-18 15:26:17,564.564 INFO    ] Launching Daemon at Sun Oct 18 15:26:17 IST 2026
[2026-10-18 15:26:17,575.575 INFO    ] ================================================
[2026-10-18 15:26:18,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:26:18
[2026-10-18 15:26:18,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:26:19,020.020 INFO    ] Initializing speech engine...
[2026-10-18 15:26:19,023.023 INFO    ] 2026-10-18 15:26:19
[2026-10-18 15:26:19,299.299 INFO    ] 2026-10-18 15:26:19
[2026-10-18 15:26:19,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:26:19,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:26:19,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:26:19,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:26:19,863.863 INFO    ] time= 18/10/2026 15:26:19
[2026-10-18 15:26:19,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:26:19,910.910 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:26:20,063.063 INFO    ] No existing commands found in stream
[2026-10-18 15:26:25,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:26:25,098.098 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-18 15:26:28,404.404 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:26:28,407.407 INFO    ] Checking for system updates...
[2026-10-18 15:26:28,445.445 INFO    ] 200
[2026-10-18 15:26:28,448.448 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:26:28,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:26:28,504.504 INFO    ] No update needed
[2026-10-18 15:26:28,507.507 INFO    ] Checking for camera pi updates...
[2026-10-18 15:26:28,542.542 INFO    ] 200
[2026-10-18 15:26:28,545.545 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:26:28,587.587 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:26:38,602.602 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:26:38,642.642 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:26:38,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:26:38,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:26:38,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:26:38,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:26:40,711.711 INFO    ] ================================================
[2026-10-18 15:26:40,727.727 INFO    ] Launching Daemon at Sun Oct 18 15:26:40 IST 2026
[2026-10-18 15:26:40,739.739 INFO    ] ================================================
[2026-10-18 15:26:41,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:26:41
[2026-10-18 15:26:42,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:26:42,373.373 INFO    ] Initializing speech engine...
[2026-10-18 15:26:42,385.385 INFO    ] 2026-10-18 15:26:42
[2026-10-18 15:26:42,670.670 INFO    ] 2026-10-18 15:26:42
[2026-10-18 15:26:42,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:26:42,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:26:42,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:26:43,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:26:43,201.201 INFO    ] time= 18/10/2026 15:26:43
[2026-10-18 15:26:43,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:26:43,237.237 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:26:43,390.390 INFO    ] No existing commands found in stream
[2026-10-18 15:26:48,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:26:48,429.429 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-18 15:26:50,158.158 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:26:50,161.161 INFO    ] Checking for system updates...
[2026-10-18 15:26:50,198.198 INFO    ] 200
[2026-10-18 15:26:50,200.200 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:26:50,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:26:50,257.257 INFO    ] No update needed
[2026-10-18 15:26:50,260.260 INFO    ] Checking for camera pi updates...
[2026-10-18 15:26:50,300.300 INFO    ] 200
[2026-10-18 15:26:50,303.303 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:26:50,349.349 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:27:00,366.366 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:27:00,406.406 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:27:00,418.418 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:27:00,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:27:00,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:27:00,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:27:02,473.473 INFO    ] ================================================
[2026-10-18 15:27:02,495.495 INFO    ] Launching Daemon at Sun Oct 18 15:27:02 IST 2026
[2026-10-18 15:27:02,510.510 INFO    ] ================================================
[2026-10-18 15:27:03,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:27:03
[2026-10-18 15:27:03,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:27:04,188.188 INFO    ] Initializing speech engine...
[2026-10-18 15:27:04,202.202 INFO    ] 2026-10-18 15:27:04
[2026-10-18 15:27:04,514.514 INFO    ] 2026-10-18 15:27:04
[2026-10-18 15:27:04,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:27:04,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:27:04,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:27:05,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:27:05,025.025 INFO    ] time= 18/10/2026 15:27:05
[2026-10-18 15:27:05,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:27:05,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:27:05,200.200 INFO    ] No existing commands found in stream
[2026-10-18 15:27:10,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:27:10,240.240 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-18 15:27:14,317.317 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:27:14,320.320 INFO    ] Checking for system updates...
[2026-10-18 15:27:14,359.359 INFO    ] 200
[2026-10-18 15:27:14,362.362 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:27:14,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:27:14,426.426 INFO    ] No update needed
[2026-10-18 15:27:14,429.429 INFO    ] Checking for camera pi updates...
[2026-10-18 15:27:14,467.467 INFO    ] 200
[2026-10-18 15:27:14,470.470 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:27:14,521.521 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:27:24,538.538 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:27:24,578.578 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:27:24,590.590 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:27:24,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:27:24,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:27:24,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:27:26,646.646 INFO    ] ================================================
[2026-10-18 15:27:26,661.661 INFO    ] Launching Daemon at Sun Oct 18 15:27:26 IST 2026
[2026-10-18 15:27:26,672.672 INFO    ] ================================================
[2026-10-18 15:27:27,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:27:27
[2026-10-18 15:27:28,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:27:28,317.317 INFO    ] Initializing speech engine...
[2026-10-18 15:27:28,324.324 INFO    ] 2026-10-18 15:27:28
[2026-10-18 15:27:28,609.609 INFO    ] 2026-10-18 15:27:28
[2026-10-18 15:27:28,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:27:28,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:27:28,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:27:29,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:27:29,142.142 INFO    ] time= 18/10/2026 15:27:29
[2026-10-18 15:27:29,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:27:29,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:27:29,332.332 INFO    ] No existing commands found in stream
[2026-10-18 15:27:34,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:27:34,372.372 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-18 15:27:37,958.958 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:27:37,961.961 INFO    ] Checking for system updates...
[2026-10-18 15:27:38,002.002 INFO    ] 200
[2026-10-18 15:27:38,005.005 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:27:38,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:27:38,063.063 INFO    ] No update needed
[2026-10-18 15:27:38,066.066 INFO    ] Checking for camera pi updates...
[2026-10-18 15:27:38,100.100 INFO    ] 200
[2026-10-18 15:27:38,102.102 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:27:38,144.144 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:27:48,158.158 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:27:48,193.193 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:27:48,203.203 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:27:48,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:27:48,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:27:48,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:27:50,256.256 INFO    ] ================================================
[2026-10-18 15:27:50,271.271 INFO    ] Launching Daemon at Sun Oct 18 15:27:50 IST 2026
[2026-10-18 15:27:50,282.282 INFO    ] ================================================
[2026-10-18 15:27:50,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:27:50
[2026-10-18 15:27:51,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:27:51,720.720 INFO    ] Initializing speech engine...
[2026-10-18 15:27:51,726.726 INFO    ] 2026-10-18 15:27:51
[2026-10-18 15:27:52,028.028 INFO    ] 2026-10-18 15:27:51
[2026-10-18 15:27:52,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:27:52,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:27:52,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:27:52,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:27:52,534.534 INFO    ] time= 18/10/2026 15:27:52
[2026-10-18 15:27:52,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:27:52,653.653 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:27:52,816.816 INFO    ] No existing commands found in stream
[2026-10-18 15:27:57,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:27:57,832.832 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-18 15:28:01,689.689 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:28:01,692.692 INFO    ] Checking for system updates...
[2026-10-18 15:28:01,735.735 INFO    ] 200
[2026-10-18 15:28:01,739.739 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:28:01,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:28:01,814.814 INFO    ] No update needed
[2026-10-18 15:28:01,819.819 INFO    ] Checking for camera pi updates...
[2026-10-18 15:28:01,869.869 INFO    ] 200
[2026-10-18 15:28:01,872.872 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:28:01,922.922 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:28:11,937.937 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:28:11,976.976 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:28:11,987.987 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:28:11,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:28:11,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:28:12,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:28:14,043.043 INFO    ] ================================================
[2026-10-18 15:28:14,059.059 INFO    ] Launching Daemon at Sun Oct 18 15:28:14 IST 2026
[2026-10-18 15:28:14,070.070 INFO    ] ================================================
[2026-10-18 15:28:14,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:28:14
[2026-10-18 15:28:15,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:28:15,497.497 INFO    ] Initializing speech engine...
[2026-10-18 15:28:15,504.504 INFO    ] 2026-10-18 15:28:15
[2026-10-18 15:28:15,762.762 INFO    ] 2026-10-18 15:28:15
[2026-10-18 15:28:15,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:28:16,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:28:16,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:28:16,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:28:16,294.294 INFO    ] time= 18/10/2026 15:28:16
[2026-10-18 15:28:16,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:28:16,329.329 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:28:16,461.461 INFO    ] No existing commands found in stream
[2026-10-18 15:28:21,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:28:21,486.486 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-18 15:28:22,623.623 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:28:22,626.626 INFO    ] Checking for system updates...
[2026-10-18 15:28:22,665.665 INFO    ] 200
[2026-10-18 15:28:22,668.668 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:28:22,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:28:22,729.729 INFO    ] No update needed
[2026-10-18 15:28:22,731.731 INFO    ] Checking for camera pi updates...
[2026-10-18 15:28:22,766.766 INFO    ] 200
[2026-10-18 15:28:22,768.768 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:28:22,812.812 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:28:32,824.824 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:28:32,860.860 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:28:32,870.870 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:28:32,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:28:32,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:28:32,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:28:34,924.924 INFO    ] ================================================
[2026-10-18 15:28:34,939.939 INFO    ] Launching Daemon at Sun Oct 18 15:28:34 IST 2026
[2026-10-18 15:28:34,954.954 INFO    ] ================================================
[2026-10-18 15:28:35,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:28:35
[2026-10-18 15:28:36,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:28:36,375.375 INFO    ] Initializing speech engine...
[2026-10-18 15:28:36,387.387 INFO    ] 2026-10-18 15:28:36
[2026-10-18 15:28:36,638.638 INFO    ] 2026-10-18 15:28:36
[2026-10-18 15:28:36,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:28:36,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:28:36,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:28:37,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:28:37,126.126 INFO    ] time= 18/10/2026 15:28:37
[2026-10-18 15:28:37,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:28:37,218.218 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:28:37,350.350 INFO    ] No existing commands found in stream
[2026-10-18 15:28:42,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:28:42,381.381 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-18 15:28:45,293.293 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:28:45,296.296 INFO    ] Checking for system updates...
[2026-10-18 15:28:45,345.345 INFO    ] 200
[2026-10-18 15:28:45,348.348 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:28:45,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:28:45,403.403 INFO    ] No update needed
[2026-10-18 15:28:45,406.406 INFO    ] Checking for camera pi updates...
[2026-10-18 15:28:45,439.439 INFO    ] 200
[2026-10-18 15:28:45,441.441 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:28:45,482.482 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:28:55,497.497 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:28:55,531.531 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:28:55,541.541 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:28:55,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:28:55,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:28:55,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:28:57,593.593 INFO    ] ================================================
[2026-10-18 15:28:57,608.608 INFO    ] Launching Daemon at Sun Oct 18 15:28:57 IST 2026
[2026-10-18 15:28:57,619.619 INFO    ] ================================================
[2026-10-18 15:28:58,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:28:58
[2026-10-18 15:28:58,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:28:59,065.065 INFO    ] Initializing speech engine...
[2026-10-18 15:28:59,075.075 INFO    ] 2026-10-18 15:28:59
[2026-10-18 15:28:59,345.345 INFO    ] 2026-10-18 15:28:59
[2026-10-18 15:28:59,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:28:59,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:28:59,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:28:59,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:28:59,917.917 INFO    ] time= 18/10/2026 15:28:59
[2026-10-18 15:28:59,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:28:59,943.943 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:29:00,076.076 INFO    ] No existing commands found in stream
[2026-10-18 15:29:05,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:29:05,093.093 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-18 15:29:08,753.753 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:29:08,756.756 INFO    ] Checking for system updates...
[2026-10-18 15:29:08,802.802 INFO    ] 200
[2026-10-18 15:29:08,804.804 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:29:08,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:29:08,876.876 INFO    ] No update needed
[2026-10-18 15:29:08,879.879 INFO    ] Checking for camera pi updates...
[2026-10-18 15:29:08,913.913 INFO    ] 200
[2026-10-18 15:29:08,916.916 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:29:08,958.958 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:29:18,973.973 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:29:19,008.008 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:29:19,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:29:19,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:29:19,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:29:19,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:29:21,071.071 INFO    ] ================================================
[2026-10-18 15:29:21,087.087 INFO    ] Launching Daemon at Sun Oct 18 15:29:21 IST 2026
[2026-10-18 15:29:21,098.098 INFO    ] ================================================
[2026-10-18 15:29:21,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:29:21
[2026-10-18 15:29:22,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:29:22,674.674 INFO    ] Initializing speech engine...
[2026-10-18 15:29:22,691.691 INFO    ] 2026-10-18 15:29:22
[2026-10-18 15:29:22,964.964 INFO    ] 2026-10-18 15:29:22
[2026-10-18 15:29:23,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:29:23,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:29:23,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:29:23,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:29:23,511.511 INFO    ] time= 18/10/2026 15:29:23
[2026-10-18 15:29:23,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:29:23,598.598 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:29:23,737.737 INFO    ] No existing commands found in stream
[2026-10-18 15:29:28,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:29:28,771.771 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-18 15:29:31,782.782 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:29:31,785.785 INFO    ] Checking for system updates...
[2026-10-18 15:29:31,821.821 INFO    ] 200
[2026-10-18 15:29:31,823.823 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:29:31,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:29:31,879.879 INFO    ] No update needed
[2026-10-18 15:29:31,882.882 INFO    ] Checking for camera pi updates...
[2026-10-18 15:29:31,919.919 INFO    ] 200
[2026-10-18 15:29:31,921.921 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:29:31,966.966 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:29:41,980.980 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:29:42,016.016 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:29:42,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:29:42,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:29:42,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:29:42,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:29:44,079.079 INFO    ] ================================================
[2026-10-18 15:29:44,096.096 INFO    ] Launching Daemon at Sun Oct 18 15:29:44 IST 2026
[2026-10-18 15:29:44,106.106 INFO    ] ================================================
[2026-10-18 15:29:44,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:29:44
[2026-10-18 15:29:45,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:29:45,559.559 INFO    ] Initializing speech engine...
[2026-10-18 15:29:45,574.574 INFO    ] 2026-10-18 15:29:45
[2026-10-18 15:29:45,841.841 INFO    ] 2026-10-18 15:29:45
[2026-10-18 15:29:45,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:29:46,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:29:46,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:29:46,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:29:46,414.414 INFO    ] time= 18/10/2026 15:29:46
[2026-10-18 15:29:46,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:29:46,437.437 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:29:46,577.577 INFO    ] No existing commands found in stream
[2026-10-18 15:29:51,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:29:51,598.598 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-18 15:29:55,275.275 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:29:55,278.278 INFO    ] Checking for system updates...
[2026-10-18 15:29:55,314.314 INFO    ] 200
[2026-10-18 15:29:55,317.317 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:29:55,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:29:55,371.371 INFO    ] No update needed
[2026-10-18 15:29:55,374.374 INFO    ] Checking for camera pi updates...
[2026-10-18 15:29:55,408.408 INFO    ] 200
[2026-10-18 15:29:55,410.410 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:29:55,455.455 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:30:05,469.469 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:30:05,507.507 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:30:05,522.522 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:30:05,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:30:05,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:30:05,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:30:07,579.579 INFO    ] ================================================
[2026-10-18 15:30:07,595.595 INFO    ] Launching Daemon at Sun Oct 18 15:30:07 IST 2026
[2026-10-18 15:30:07,607.607 INFO    ] ================================================
[2026-10-18 15:30:08,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:30:08
[2026-10-18 15:30:08,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:30:09,037.037 INFO    ] Initializing speech engine...
[2026-10-18 15:30:09,043.043 INFO    ] 2026-10-18 15:30:09
[2026-10-18 15:30:09,357.357 INFO    ] 2026-10-18 15:30:09
[2026-10-18 15:30:09,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:30:09,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:30:09,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:30:09,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:30:09,781.781 INFO    ] time= 18/10/2026 15:30:09
[2026-10-18 15:30:09,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:30:09,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:30:09,983.983 INFO    ] No existing commands found in stream
[2026-10-18 15:30:15,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:30:15,016.016 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-18 15:30:15,624.624 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:30:15,626.626 INFO    ] Checking for system updates...
[2026-10-18 15:30:15,663.663 INFO    ] 200
[2026-10-18 15:30:15,665.665 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:30:15,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:30:15,722.722 INFO    ] No update needed
[2026-10-18 15:30:15,724.724 INFO    ] Checking for camera pi updates...
[2026-10-18 15:30:15,758.758 INFO    ] 200
[2026-10-18 15:30:15,761.761 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:30:15,801.801 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:30:25,817.817 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:30:25,852.852 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:30:25,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:30:25,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:30:25,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:30:25,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:30:27,916.916 INFO    ] ================================================
[2026-10-18 15:30:27,931.931 INFO    ] Launching Daemon at Sun Oct 18 15:30:27 IST 2026
[2026-10-18 15:30:27,942.942 INFO    ] ================================================
[2026-10-18 15:30:28,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:30:28
[2026-10-18 15:30:29,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:30:29,367.367 INFO    ] Initializing speech engine...
[2026-10-18 15:30:29,374.374 INFO    ] 2026-10-18 15:30:29
[2026-10-18 15:30:29,626.626 INFO    ] 2026-10-18 15:30:29
[2026-10-18 15:30:29,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:30:29,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:30:29,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:30:30,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:30:30,186.186 INFO    ] time= 18/10/2026 15:30:30
[2026-10-18 15:30:30,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:30:30,222.222 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:30:30,355.355 INFO    ] No existing commands found in stream
[2026-10-18 15:30:35,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:30:35,377.377 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-18 15:30:37,724.724 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:30:37,727.727 INFO    ] Checking for system updates...
[2026-10-18 15:30:37,763.763 INFO    ] 200
[2026-10-18 15:30:37,766.766 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:30:37,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:30:37,821.821 INFO    ] No update needed
[2026-10-18 15:30:37,823.823 INFO    ] Checking for camera pi updates...
[2026-10-18 15:30:37,857.857 INFO    ] 200
[2026-10-18 15:30:37,860.860 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:30:37,902.902 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:30:47,916.916 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:30:47,957.957 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:30:47,968.968 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:30:47,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:30:47,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:30:47,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:30:50,025.025 INFO    ] ================================================
[2026-10-18 15:30:50,041.041 INFO    ] Launching Daemon at Sun Oct 18 15:30:50 IST 2026
[2026-10-18 15:30:50,053.053 INFO    ] ================================================
[2026-10-18 15:30:50,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:30:50
[2026-10-18 15:30:51,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:30:51,523.523 INFO    ] Initializing speech engine...
[2026-10-18 15:30:51,532.532 INFO    ] 2026-10-18 15:30:51
[2026-10-18 15:30:51,781.781 INFO    ] 2026-10-18 15:30:51
[2026-10-18 15:30:51,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:30:52,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:30:52,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:30:52,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:30:52,254.254 INFO    ] time= 18/10/2026 15:30:52
[2026-10-18 15:30:52,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:30:52,359.359 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:30:52,479.479 INFO    ] No existing commands found in stream
[2026-10-18 15:30:57,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:30:57,505.505 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-18 15:31:00,906.906 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:31:00,909.909 INFO    ] Checking for system updates...
[2026-10-18 15:31:00,945.945 INFO    ] 200
[2026-10-18 15:31:00,948.948 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:31:01,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:31:01,003.003 INFO    ] No update needed
[2026-10-18 15:31:01,005.005 INFO    ] Checking for camera pi updates...
[2026-10-18 15:31:01,042.042 INFO    ] 200
[2026-10-18 15:31:01,045.045 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:31:01,085.085 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:31:11,099.099 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:31:11,134.134 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:31:11,144.144 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:31:11,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:31:11,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:31:11,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:31:13,197.197 INFO    ] ================================================
[2026-10-18 15:31:13,213.213 INFO    ] Launching Daemon at Sun Oct 18 15:31:13 IST 2026
[2026-10-18 15:31:13,225.225 INFO    ] ================================================
[2026-10-18 15:31:13,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:31:13
[2026-10-18 15:31:14,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:31:14,673.673 INFO    ] Initializing speech engine...
[2026-10-18 15:31:14,682.682 INFO    ] 2026-10-18 15:31:14
[2026-10-18 15:31:14,931.931 INFO    ] 2026-10-18 15:31:14
[2026-10-18 15:31:14,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:31:15,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:31:15,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:31:15,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:31:15,490.490 INFO    ] time= 18/10/2026 15:31:15
[2026-10-18 15:31:15,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:31:15,517.517 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:31:15,659.659 INFO    ] No existing commands found in stream
[2026-10-18 15:31:20,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:31:20,691.691 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-18 15:31:25,188.188 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:31:25,191.191 INFO    ] Checking for system updates...
[2026-10-18 15:31:25,227.227 INFO    ] 200
[2026-10-18 15:31:25,229.229 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:31:25,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:31:25,284.284 INFO    ] No update needed
[2026-10-18 15:31:25,286.286 INFO    ] Checking for camera pi updates...
[2026-10-18 15:31:25,321.321 INFO    ] 200
[2026-10-18 15:31:25,323.323 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:31:25,363.363 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:31:35,377.377 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:31:35,412.412 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:31:35,422.422 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:31:35,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:31:35,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:31:35,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:31:37,477.477 INFO    ] ================================================
[2026-10-18 15:31:37,492.492 INFO    ] Launching Daemon at Sun Oct 18 15:31:37 IST 2026
[2026-10-18 15:31:37,503.503 INFO    ] ================================================
[2026-10-18 15:31:38,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:31:38
[2026-10-18 15:31:38,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:31:38,917.917 INFO    ] Initializing speech engine...
[2026-10-18 15:31:38,942.942 INFO    ] 2026-10-18 15:31:38
[2026-10-18 15:31:39,215.215 INFO    ] 2026-10-18 15:31:39
[2026-10-18 15:31:39,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:31:39,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:31:39,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:31:39,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:31:39,630.630 INFO    ] time= 18/10/2026 15:31:39
[2026-10-18 15:31:39,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:31:39,674.674 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:31:39,817.817 INFO    ] No existing commands found in stream
[2026-10-18 15:31:44,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:31:44,841.841 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-18 15:31:49,162.162 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:31:49,164.164 INFO    ] Checking for system updates...
[2026-10-18 15:31:49,200.200 INFO    ] 200
[2026-10-18 15:31:49,203.203 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:31:49,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:31:49,258.258 INFO    ] No update needed
[2026-10-18 15:31:49,260.260 INFO    ] Checking for camera pi updates...
[2026-10-18 15:31:49,293.293 INFO    ] 200
[2026-10-18 15:31:49,296.296 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:31:49,337.337 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:31:59,352.352 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:31:59,387.387 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:31:59,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:31:59,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:31:59,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:31:59,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:32:01,449.449 INFO    ] ================================================
[2026-10-18 15:32:01,465.465 INFO    ] Launching Daemon at Sun Oct 18 15:32:01 IST 2026
[2026-10-18 15:32:01,477.477 INFO    ] ================================================
[2026-10-18 15:32:02,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:32:02
[2026-10-18 15:32:03,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:32:03,317.317 INFO    ] Initializing speech engine...
[2026-10-18 15:32:03,346.346 INFO    ] 2026-10-18 15:32:03
[2026-10-18 15:32:03,641.641 INFO    ] 2026-10-18 15:32:03
[2026-10-18 15:32:03,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:32:03,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:32:03,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:32:04,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:32:04,047.047 INFO    ] time= 18/10/2026 15:32:04
[2026-10-18 15:32:04,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:32:04,105.105 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:32:04,257.257 INFO    ] No existing commands found in stream
[2026-10-18 15:32:09,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:32:09,279.279 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-18 15:32:10,458.458 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:32:10,460.460 INFO    ] Checking for system updates...
[2026-10-18 15:32:10,498.498 INFO    ] 200
[2026-10-18 15:32:10,501.501 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:32:10,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:32:10,555.555 INFO    ] No update needed
[2026-10-18 15:32:10,557.557 INFO    ] Checking for camera pi updates...
[2026-10-18 15:32:10,590.590 INFO    ] 200
[2026-10-18 15:32:10,593.593 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:32:10,637.637 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:32:20,651.651 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:32:20,690.690 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:32:20,700.700 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:32:20,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:32:20,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:32:20,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:32:22,756.756 INFO    ] ================================================
[2026-10-18 15:32:22,772.772 INFO    ] Launching Daemon at Sun Oct 18 15:32:22 IST 2026
[2026-10-18 15:32:22,783.783 INFO    ] ================================================
[2026-10-18 15:32:23,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:32:23
[2026-10-18 15:32:23,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:32:24,240.240 INFO    ] Initializing speech engine...
[2026-10-18 15:32:24,247.247 INFO    ] 2026-10-18 15:32:24
[2026-10-18 15:32:24,508.508 INFO    ] 2026-10-18 15:32:24
[2026-10-18 15:32:24,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:32:24,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:32:24,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:32:24,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:32:25,013.013 INFO    ] time= 18/10/2026 15:32:24
[2026-10-18 15:32:25,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:32:25,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:32:25,222.222 INFO    ] No existing commands found in stream
[2026-10-18 15:32:30,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:32:30,251.251 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-18 15:32:34,454.454 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:32:34,457.457 INFO    ] Checking for system updates...
[2026-10-18 15:32:34,492.492 INFO    ] 200
[2026-10-18 15:32:34,495.495 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:32:34,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:32:34,549.549 INFO    ] No update needed
[2026-10-18 15:32:34,551.551 INFO    ] Checking for camera pi updates...
[2026-10-18 15:32:34,584.584 INFO    ] 200
[2026-10-18 15:32:34,587.587 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:32:34,627.627 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:32:44,642.642 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:32:44,677.677 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:32:44,687.687 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:32:44,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:32:44,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:32:44,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:32:46,739.739 INFO    ] ================================================
[2026-10-18 15:32:46,755.755 INFO    ] Launching Daemon at Sun Oct 18 15:32:46 IST 2026
[2026-10-18 15:32:46,766.766 INFO    ] ================================================
[2026-10-18 15:32:47,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:32:47
[2026-10-18 15:32:47,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:32:48,216.216 INFO    ] Initializing speech engine...
[2026-10-18 15:32:48,222.222 INFO    ] 2026-10-18 15:32:48
[2026-10-18 15:32:48,483.483 INFO    ] 2026-10-18 15:32:48
[2026-10-18 15:32:48,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:32:48,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:32:48,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:32:48,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:32:48,961.961 INFO    ] time= 18/10/2026 15:32:48
[2026-10-18 15:32:49,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:32:49,035.035 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:32:49,177.177 INFO    ] No existing commands found in stream
[2026-10-18 15:32:54,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:32:54,195.195 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-18 15:32:56,093.093 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:32:56,095.095 INFO    ] Checking for system updates...
[2026-10-18 15:32:56,131.131 INFO    ] 200
[2026-10-18 15:32:56,133.133 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:32:56,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:32:56,188.188 INFO    ] No update needed
[2026-10-18 15:32:56,190.190 INFO    ] Checking for camera pi updates...
[2026-10-18 15:32:56,224.224 INFO    ] 200
[2026-10-18 15:32:56,227.227 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:32:56,271.271 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:33:06,287.287 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:33:06,322.322 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:33:06,332.332 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:33:06,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:33:06,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:33:06,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:33:08,386.386 INFO    ] ================================================
[2026-10-18 15:33:08,401.401 INFO    ] Launching Daemon at Sun Oct 18 15:33:08 IST 2026
[2026-10-18 15:33:08,414.414 INFO    ] ================================================
[2026-10-18 15:33:08,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:33:08
[2026-10-18 15:33:09,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:33:09,875.875 INFO    ] Initializing speech engine...
[2026-10-18 15:33:09,884.884 INFO    ] 2026-10-18 15:33:09
[2026-10-18 15:33:10,134.134 INFO    ] 2026-10-18 15:33:10
[2026-10-18 15:33:10,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:33:10,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:33:10,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:33:10,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:33:10,640.640 INFO    ] time= 18/10/2026 15:33:10
[2026-10-18 15:33:10,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:33:10,707.707 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:33:10,850.850 INFO    ] No existing commands found in stream
[2026-10-18 15:33:15,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:33:15,869.869 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-18 15:33:18,018.018 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:33:18,021.021 INFO    ] Checking for system updates...
[2026-10-18 15:33:18,067.067 INFO    ] 200
[2026-10-18 15:33:18,070.070 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:33:18,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:33:18,130.130 INFO    ] No update needed
[2026-10-18 15:33:18,133.133 INFO    ] Checking for camera pi updates...
[2026-10-18 15:33:18,179.179 INFO    ] 200
[2026-10-18 15:33:18,182.182 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:33:18,228.228 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:33:28,242.242 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:33:28,281.281 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:33:28,292.292 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:33:28,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:33:28,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:33:28,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:33:30,348.348 INFO    ] ================================================
[2026-10-18 15:33:30,363.363 INFO    ] Launching Daemon at Sun Oct 18 15:33:30 IST 2026
[2026-10-18 15:33:30,374.374 INFO    ] ================================================
[2026-10-18 15:33:31,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:33:31
[2026-10-18 15:33:31,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:33:31,954.954 INFO    ] Initializing speech engine...
[2026-10-18 15:33:31,967.967 INFO    ] 2026-10-18 15:33:31
[2026-10-18 15:33:32,268.268 INFO    ] 2026-10-18 15:33:32
[2026-10-18 15:33:32,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:33:32,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:33:32,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:33:32,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:33:32,848.848 INFO    ] time= 18/10/2026 15:33:32
[2026-10-18 15:33:32,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:33:32,877.877 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:33:33,013.013 INFO    ] No existing commands found in stream
[2026-10-18 15:33:38,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:33:38,032.032 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-18 15:33:42,908.908 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:33:42,911.911 INFO    ] Checking for system updates...
[2026-10-18 15:33:42,948.948 INFO    ] 200
[2026-10-18 15:33:42,951.951 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:33:43,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:33:43,006.006 INFO    ] No update needed
[2026-10-18 15:33:43,009.009 INFO    ] Checking for camera pi updates...
[2026-10-18 15:33:43,043.043 INFO    ] 200
[2026-10-18 15:33:43,046.046 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:33:43,092.092 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:33:53,110.110 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:33:53,150.150 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:33:53,161.161 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:33:53,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:33:53,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:33:53,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:33:55,217.217 INFO    ] ================================================
[2026-10-18 15:33:55,233.233 INFO    ] Launching Daemon at Sun Oct 18 15:33:55 IST 2026
[2026-10-18 15:33:55,244.244 INFO    ] ================================================
[2026-10-18 15:33:55,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:33:55
[2026-10-18 15:33:56,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:33:56,875.875 INFO    ] Initializing speech engine...
[2026-10-18 15:33:56,881.881 INFO    ] 2026-10-18 15:33:56
[2026-10-18 15:33:57,143.143 INFO    ] 2026-10-18 15:33:57
[2026-10-18 15:33:57,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:33:57,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:33:57,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:33:57,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:33:57,618.618 INFO    ] time= 18/10/2026 15:33:57
[2026-10-18 15:33:57,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:33:57,712.712 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:33:57,855.855 INFO    ] No existing commands found in stream
[2026-10-18 15:34:02,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:34:02,881.881 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-18 15:34:04,028.028 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:34:04,030.030 INFO    ] Checking for system updates...
[2026-10-18 15:34:04,066.066 INFO    ] 200
[2026-10-18 15:34:04,068.068 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:34:04,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:34:04,123.123 INFO    ] No update needed
[2026-10-18 15:34:04,126.126 INFO    ] Checking for camera pi updates...
[2026-10-18 15:34:04,161.161 INFO    ] 200
[2026-10-18 15:34:04,164.164 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:34:04,203.203 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:34:14,218.218 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:34:14,252.252 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:34:14,262.262 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:34:14,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:34:14,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:34:14,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:34:16,315.315 INFO    ] ================================================
[2026-10-18 15:34:16,331.331 INFO    ] Launching Daemon at Sun Oct 18 15:34:16 IST 2026
[2026-10-18 15:34:16,341.341 INFO    ] ================================================
[2026-10-18 15:34:16,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:34:16
[2026-10-18 15:34:17,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:34:17,751.751 INFO    ] Initializing speech engine...
[2026-10-18 15:34:17,759.759 INFO    ] 2026-10-18 15:34:17
[2026-10-18 15:34:18,045.045 INFO    ] 2026-10-18 15:34:18
[2026-10-18 15:34:18,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:34:18,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:34:18,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:34:18,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:34:18,519.519 INFO    ] time= 18/10/2026 15:34:18
[2026-10-18 15:34:18,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:34:18,618.618 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:34:18,775.775 INFO    ] No existing commands found in stream
[2026-10-18 15:34:23,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:34:23,799.799 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-18 15:34:25,427.427 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:34:25,430.430 INFO    ] Checking for system updates...
[2026-10-18 15:34:25,469.469 INFO    ] 200
[2026-10-18 15:34:25,471.471 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:34:25,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:34:25,533.533 INFO    ] No update needed
[2026-10-18 15:34:25,536.536 INFO    ] Checking for camera pi updates...
[2026-10-18 15:34:25,572.572 INFO    ] 200
[2026-10-18 15:34:25,574.574 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:34:25,623.623 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:34:35,638.638 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:34:35,672.672 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:34:35,682.682 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:34:35,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:34:35,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:34:35,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:34:37,735.735 INFO    ] ================================================
[2026-10-18 15:34:37,750.750 INFO    ] Launching Daemon at Sun Oct 18 15:34:37 IST 2026
[2026-10-18 15:34:37,761.761 INFO    ] ================================================
[2026-10-18 15:34:38,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:34:38
[2026-10-18 15:34:38,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:34:39,189.189 INFO    ] Initializing speech engine...
[2026-10-18 15:34:39,214.214 INFO    ] 2026-10-18 15:34:39
[2026-10-18 15:34:39,488.488 INFO    ] 2026-10-18 15:34:39
[2026-10-18 15:34:39,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:34:39,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:34:39,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:34:39,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:34:39,903.903 INFO    ] time= 18/10/2026 15:34:39
[2026-10-18 15:34:39,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:34:39,932.932 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:34:40,058.058 INFO    ] No existing commands found in stream
[2026-10-18 15:34:45,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:34:45,086.086 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-18 15:34:46,936.936 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:34:46,939.939 INFO    ] Checking for system updates...
[2026-10-18 15:34:46,975.975 INFO    ] 200
[2026-10-18 15:34:46,977.977 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:34:47,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:34:47,040.040 INFO    ] No update needed
[2026-10-18 15:34:47,042.042 INFO    ] Checking for camera pi updates...
[2026-10-18 15:34:47,076.076 INFO    ] 200
[2026-10-18 15:34:47,078.078 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:34:47,118.118 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:34:57,133.133 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:34:57,168.168 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:34:57,178.178 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:34:57,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:34:57,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:34:57,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:34:59,229.229 INFO    ] ================================================
[2026-10-18 15:34:59,245.245 INFO    ] Launching Daemon at Sun Oct 18 15:34:59 IST 2026
[2026-10-18 15:34:59,256.256 INFO    ] ================================================
[2026-10-18 15:34:59,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:34:59
[2026-10-18 15:35:00,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:35:00,718.718 INFO    ] Initializing speech engine...
[2026-10-18 15:35:00,726.726 INFO    ] 2026-10-18 15:35:00
[2026-10-18 15:35:01,006.006 INFO    ] 2026-10-18 15:35:00
[2026-10-18 15:35:01,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:35:01,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:35:01,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:35:01,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:35:01,536.536 INFO    ] time= 18/10/2026 15:35:01
[2026-10-18 15:35:01,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:35:01,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:35:01,711.711 INFO    ] No existing commands found in stream
[2026-10-18 15:35:06,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:35:06,721.721 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-18 15:35:08,337.337 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:35:08,340.340 INFO    ] Checking for system updates...
[2026-10-18 15:35:08,386.386 INFO    ] 200
[2026-10-18 15:35:08,389.389 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:35:08,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:35:08,447.447 INFO    ] No update needed
[2026-10-18 15:35:08,449.449 INFO    ] Checking for camera pi updates...
[2026-10-18 15:35:08,485.485 INFO    ] 200
[2026-10-18 15:35:08,488.488 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:35:08,530.530 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:35:18,547.547 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:35:18,587.587 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:35:18,598.598 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:35:18,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:35:18,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:35:18,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:35:20,654.654 INFO    ] ================================================
[2026-10-18 15:35:20,670.670 INFO    ] Launching Daemon at Sun Oct 18 15:35:20 IST 2026
[2026-10-18 15:35:20,681.681 INFO    ] ================================================
[2026-10-18 15:35:21,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:35:21
[2026-10-18 15:35:21,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:35:22,148.148 INFO    ] Initializing speech engine...
[2026-10-18 15:35:22,158.158 INFO    ] 2026-10-18 15:35:22
[2026-10-18 15:35:22,404.404 INFO    ] 2026-10-18 15:35:22
[2026-10-18 15:35:22,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:35:22,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:35:22,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:35:22,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:35:22,853.853 INFO    ] time= 18/10/2026 15:35:22
[2026-10-18 15:35:22,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:35:22,915.915 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:35:23,028.028 INFO    ] No existing commands found in stream
[2026-10-18 15:35:28,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:35:28,043.043 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-18 15:35:29,004.004 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:35:29,007.007 INFO    ] Checking for system updates...
[2026-10-18 15:35:29,043.043 INFO    ] 200
[2026-10-18 15:35:29,045.045 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:35:29,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:35:29,108.108 INFO    ] No update needed
[2026-10-18 15:35:29,111.111 INFO    ] Checking for camera pi updates...
[2026-10-18 15:35:29,147.147 INFO    ] 200
[2026-10-18 15:35:29,149.149 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:35:29,193.193 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:35:39,208.208 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:35:39,243.243 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:35:39,253.253 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:35:39,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:35:39,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:35:39,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:35:41,316.316 INFO    ] ================================================
[2026-10-18 15:35:41,332.332 INFO    ] Launching Daemon at Sun Oct 18 15:35:41 IST 2026
[2026-10-18 15:35:41,342.342 INFO    ] ================================================
[2026-10-18 15:35:41,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:35:41
[2026-10-18 15:35:42,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:35:42,804.804 INFO    ] Initializing speech engine...
[2026-10-18 15:35:42,812.812 INFO    ] 2026-10-18 15:35:42
[2026-10-18 15:35:43,072.072 INFO    ] 2026-10-18 15:35:43
[2026-10-18 15:35:43,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:35:43,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:35:43,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:35:43,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:35:43,691.691 INFO    ] time= 18/10/2026 15:35:43
[2026-10-18 15:35:43,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:35:43,718.718 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:35:43,845.845 INFO    ] No existing commands found in stream
[2026-10-18 15:35:48,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:35:48,873.873 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-18 15:35:50,256.256 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:35:50,259.259 INFO    ] Checking for system updates...
[2026-10-18 15:35:50,296.296 INFO    ] 200
[2026-10-18 15:35:50,299.299 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:35:50,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:35:50,359.359 INFO    ] No update needed
[2026-10-18 15:35:50,362.362 INFO    ] Checking for camera pi updates...
[2026-10-18 15:35:50,404.404 INFO    ] 200
[2026-10-18 15:35:50,407.407 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:35:50,454.454 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:36:00,473.473 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:36:00,515.515 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:36:00,526.526 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:36:00,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:36:00,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:36:00,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:36:02,582.582 INFO    ] ================================================
[2026-10-18 15:36:02,603.603 INFO    ] Launching Daemon at Sun Oct 18 15:36:02 IST 2026
[2026-10-18 15:36:02,619.619 INFO    ] ================================================
[2026-10-18 15:36:03,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:36:03
[2026-10-18 15:36:04,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:36:04,465.465 INFO    ] Initializing speech engine...
[2026-10-18 15:36:04,477.477 INFO    ] 2026-10-18 15:36:04
[2026-10-18 15:36:04,763.763 INFO    ] 2026-10-18 15:36:04
[2026-10-18 15:36:04,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:36:05,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:36:05,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:36:05,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:36:05,319.319 INFO    ] time= 18/10/2026 15:36:05
[2026-10-18 15:36:05,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:36:05,348.348 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:36:05,482.482 INFO    ] No existing commands found in stream
[2026-10-18 15:36:10,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:36:10,517.517 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-18 15:36:14,909.909 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:36:14,912.912 INFO    ] Checking for system updates...
[2026-10-18 15:36:14,955.955 INFO    ] 200
[2026-10-18 15:36:14,958.958 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:36:15,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:36:15,014.014 INFO    ] No update needed
[2026-10-18 15:36:15,017.017 INFO    ] Checking for camera pi updates...
[2026-10-18 15:36:15,057.057 INFO    ] 200
[2026-10-18 15:36:15,060.060 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:36:15,110.110 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:36:25,125.125 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:36:25,160.160 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:36:25,170.170 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:36:25,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:36:25,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:36:25,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:36:27,223.223 INFO    ] ================================================
[2026-10-18 15:36:27,238.238 INFO    ] Launching Daemon at Sun Oct 18 15:36:27 IST 2026
[2026-10-18 15:36:27,249.249 INFO    ] ================================================
[2026-10-18 15:36:27,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:36:27
[2026-10-18 15:36:28,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:36:28,645.645 INFO    ] Initializing speech engine...
[2026-10-18 15:36:28,653.653 INFO    ] 2026-10-18 15:36:28
[2026-10-18 15:36:28,926.926 INFO    ] 2026-10-18 15:36:28
[2026-10-18 15:36:28,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:36:29,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:36:29,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:36:29,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:36:29,433.433 INFO    ] time= 18/10/2026 15:36:29
[2026-10-18 15:36:29,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:36:29,504.504 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:36:29,657.657 INFO    ] No existing commands found in stream
[2026-10-18 15:36:34,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:36:34,682.682 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-18 15:36:36,689.689 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:36:36,691.691 INFO    ] Checking for system updates...
[2026-10-18 15:36:36,726.726 INFO    ] 200
[2026-10-18 15:36:36,729.729 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:36:36,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:36:36,784.784 INFO    ] No update needed
[2026-10-18 15:36:36,787.787 INFO    ] Checking for camera pi updates...
[2026-10-18 15:36:36,821.821 INFO    ] 200
[2026-10-18 15:36:36,824.824 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:36:36,865.865 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:36:46,882.882 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:36:46,923.923 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:36:46,935.935 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:36:46,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:36:46,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:36:46,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:36:48,991.991 INFO    ] ================================================
[2026-10-18 15:36:49,007.007 INFO    ] Launching Daemon at Sun Oct 18 15:36:49 IST 2026
[2026-10-18 15:36:49,018.018 INFO    ] ================================================
[2026-10-18 15:36:49,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:36:49
[2026-10-18 15:36:50,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:36:50,439.439 INFO    ] Initializing speech engine...
[2026-10-18 15:36:50,447.447 INFO    ] 2026-10-18 15:36:50
[2026-10-18 15:36:50,748.748 INFO    ] 2026-10-18 15:36:50
[2026-10-18 15:36:50,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:36:50,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:36:51,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:36:51,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:36:51,177.177 INFO    ] time= 18/10/2026 15:36:51
[2026-10-18 15:36:51,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:36:51,212.212 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:36:51,351.351 INFO    ] No existing commands found in stream
[2026-10-18 15:36:56,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:36:56,384.384 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-18 15:36:58,213.213 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:36:58,215.215 INFO    ] Checking for system updates...
[2026-10-18 15:36:58,251.251 INFO    ] 200
[2026-10-18 15:36:58,253.253 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:36:58,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:36:58,309.309 INFO    ] No update needed
[2026-10-18 15:36:58,311.311 INFO    ] Checking for camera pi updates...
[2026-10-18 15:36:58,349.349 INFO    ] 200
[2026-10-18 15:36:58,351.351 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:36:58,392.392 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:37:08,406.406 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:37:08,440.440 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:37:08,450.450 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:37:08,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:37:08,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:37:08,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:37:10,503.503 INFO    ] ================================================
[2026-10-18 15:37:10,519.519 INFO    ] Launching Daemon at Sun Oct 18 15:37:10 IST 2026
[2026-10-18 15:37:10,531.531 INFO    ] ================================================
[2026-10-18 15:37:11,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:37:11
[2026-10-18 15:37:11,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:37:11,967.967 INFO    ] Initializing speech engine...
[2026-10-18 15:37:11,975.975 INFO    ] 2026-10-18 15:37:11
[2026-10-18 15:37:12,235.235 INFO    ] 2026-10-18 15:37:12
[2026-10-18 15:37:12,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:37:12,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:37:12,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:37:12,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:37:12,723.723 INFO    ] time= 18/10/2026 15:37:12
[2026-10-18 15:37:12,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:37:12,804.804 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:37:12,950.950 INFO    ] No existing commands found in stream
[2026-10-18 15:37:17,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:37:17,970.970 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-18 15:37:21,934.934 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:37:21,937.937 INFO    ] Checking for system updates...
[2026-10-18 15:37:21,977.977 INFO    ] 200
[2026-10-18 15:37:21,980.980 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:37:22,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:37:22,042.042 INFO    ] No update needed
[2026-10-18 15:37:22,044.044 INFO    ] Checking for camera pi updates...
[2026-10-18 15:37:22,082.082 INFO    ] 200
[2026-10-18 15:37:22,085.085 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:37:22,125.125 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:37:32,139.139 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:37:32,176.176 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:37:32,192.192 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:37:32,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:37:32,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:37:32,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:37:34,249.249 INFO    ] ================================================
[2026-10-18 15:37:34,266.266 INFO    ] Launching Daemon at Sun Oct 18 15:37:34 IST 2026
[2026-10-18 15:37:34,277.277 INFO    ] ================================================
[2026-10-18 15:37:34,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:37:34
[2026-10-18 15:37:35,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:37:35,983.983 INFO    ] Initializing speech engine...
[2026-10-18 15:37:35,994.994 INFO    ] 2026-10-18 15:37:35
[2026-10-18 15:37:36,284.284 INFO    ] 2026-10-18 15:37:36
[2026-10-18 15:37:36,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:37:36,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:37:36,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:37:36,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:37:36,787.787 INFO    ] time= 18/10/2026 15:37:36
[2026-10-18 15:37:36,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:37:36,896.896 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:37:37,040.040 INFO    ] No existing commands found in stream
[2026-10-18 15:37:42,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:37:42,061.061 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-18 15:37:46,209.209 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:37:46,212.212 INFO    ] Checking for system updates...
[2026-10-18 15:37:46,248.248 INFO    ] 200
[2026-10-18 15:37:46,250.250 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:37:46,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:37:46,306.306 INFO    ] No update needed
[2026-10-18 15:37:46,309.309 INFO    ] Checking for camera pi updates...
[2026-10-18 15:37:46,342.342 INFO    ] 200
[2026-10-18 15:37:46,345.345 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:37:46,386.386 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:37:56,402.402 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:37:56,437.437 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:37:56,447.447 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:37:56,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:37:56,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:37:56,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:37:58,500.500 INFO    ] ================================================
[2026-10-18 15:37:58,517.517 INFO    ] Launching Daemon at Sun Oct 18 15:37:58 IST 2026
[2026-10-18 15:37:58,529.529 INFO    ] ================================================
[2026-10-18 15:37:59,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:37:59
[2026-10-18 15:37:59,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:37:59,975.975 INFO    ] Initializing speech engine...
[2026-10-18 15:37:59,984.984 INFO    ] 2026-10-18 15:37:59
[2026-10-18 15:38:00,247.247 INFO    ] 2026-10-18 15:38:00
[2026-10-18 15:38:00,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:38:00,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:38:00,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:38:00,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:38:00,737.737 INFO    ] time= 18/10/2026 15:38:00
[2026-10-18 15:38:00,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:38:00,801.801 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:38:00,943.943 INFO    ] No existing commands found in stream
[2026-10-18 15:38:05,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:38:05,960.960 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-18 15:38:07,166.166 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:38:07,169.169 INFO    ] Checking for system updates...
[2026-10-18 15:38:07,205.205 INFO    ] 200
[2026-10-18 15:38:07,207.207 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:38:07,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:38:07,261.261 INFO    ] No update needed
[2026-10-18 15:38:07,264.264 INFO    ] Checking for camera pi updates...
[2026-10-18 15:38:07,297.297 INFO    ] 200
[2026-10-18 15:38:07,299.299 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:38:07,343.343 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:38:17,359.359 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:38:17,403.403 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:38:17,413.413 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:38:17,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:38:17,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:38:17,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:38:19,467.467 INFO    ] ================================================
[2026-10-18 15:38:19,483.483 INFO    ] Launching Daemon at Sun Oct 18 15:38:19 IST 2026
[2026-10-18 15:38:19,494.494 INFO    ] ================================================
[2026-10-18 15:38:20,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:38:20
[2026-10-18 15:38:20,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:38:21,143.143 INFO    ] Initializing speech engine...
[2026-10-18 15:38:21,156.156 INFO    ] 2026-10-18 15:38:21
[2026-10-18 15:38:21,474.474 INFO    ] 2026-10-18 15:38:21
[2026-10-18 15:38:21,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:38:21,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:38:21,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:38:21,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:38:22,005.005 INFO    ] time= 18/10/2026 15:38:21
[2026-10-18 15:38:22,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:38:22,046.046 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:38:22,176.176 INFO    ] No existing commands found in stream
[2026-10-18 15:38:27,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:38:27,206.206 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-18 15:38:28,858.858 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:38:28,862.862 INFO    ] Checking for system updates...
[2026-10-18 15:38:28,900.900 INFO    ] 200
[2026-10-18 15:38:28,903.903 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:38:28,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:38:28,965.965 INFO    ] No update needed
[2026-10-18 15:38:28,968.968 INFO    ] Checking for camera pi updates...
[2026-10-18 15:38:29,008.008 INFO    ] 200
[2026-10-18 15:38:29,011.011 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:38:29,058.058 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:38:39,073.073 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:38:39,114.114 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:38:39,126.126 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:38:39,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:38:39,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:38:39,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:38:41,180.180 INFO    ] ================================================
[2026-10-18 15:38:41,197.197 INFO    ] Launching Daemon at Sun Oct 18 15:38:41 IST 2026
[2026-10-18 15:38:41,208.208 INFO    ] ================================================
[2026-10-18 15:38:41,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:38:41
[2026-10-18 15:38:42,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:38:42,620.620 INFO    ] Initializing speech engine...
[2026-10-18 15:38:42,628.628 INFO    ] 2026-10-18 15:38:42
[2026-10-18 15:38:42,911.911 INFO    ] 2026-10-18 15:38:42
[2026-10-18 15:38:42,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:38:43,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:38:43,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:38:43,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:38:43,452.452 INFO    ] time= 18/10/2026 15:38:43
[2026-10-18 15:38:43,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:38:43,521.521 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:38:43,681.681 INFO    ] No existing commands found in stream
[2026-10-18 15:38:48,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:38:48,717.717 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-18 15:38:49,686.686 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:38:49,689.689 INFO    ] Checking for system updates...
[2026-10-18 15:38:49,726.726 INFO    ] 200
[2026-10-18 15:38:49,729.729 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:38:49,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:38:49,786.786 INFO    ] No update needed
[2026-10-18 15:38:49,789.789 INFO    ] Checking for camera pi updates...
[2026-10-18 15:38:49,824.824 INFO    ] 200
[2026-10-18 15:38:49,827.827 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:38:49,874.874 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:38:59,891.891 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:38:59,933.933 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:38:59,945.945 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:38:59,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:38:59,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:38:59,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:39:02,004.004 INFO    ] ================================================
[2026-10-18 15:39:02,022.022 INFO    ] Launching Daemon at Sun Oct 18 15:39:02 IST 2026
[2026-10-18 15:39:02,038.038 INFO    ] ================================================
[2026-10-18 15:39:02,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:39:02
[2026-10-18 15:39:03,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:39:03,582.582 INFO    ] Initializing speech engine...
[2026-10-18 15:39:03,587.587 INFO    ] 2026-10-18 15:39:03
[2026-10-18 15:39:03,832.832 INFO    ] 2026-10-18 15:39:03
[2026-10-18 15:39:03,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:39:04,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:39:04,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:39:04,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:39:04,386.386 INFO    ] time= 18/10/2026 15:39:04
[2026-10-18 15:39:04,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:39:04,410.410 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:39:04,537.537 INFO    ] No existing commands found in stream
[2026-10-18 15:39:09,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:39:09,555.555 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-18 15:39:12,371.371 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:39:12,374.374 INFO    ] Checking for system updates...
[2026-10-18 15:39:12,409.409 INFO    ] 200
[2026-10-18 15:39:12,412.412 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:39:12,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:39:12,466.466 INFO    ] No update needed
[2026-10-18 15:39:12,468.468 INFO    ] Checking for camera pi updates...
[2026-10-18 15:39:12,502.502 INFO    ] 200
[2026-10-18 15:39:12,504.504 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:39:12,546.546 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:39:22,560.560 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:39:22,595.595 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:39:22,604.604 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:39:22,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:39:22,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:39:22,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:39:24,656.656 INFO    ] ================================================
[2026-10-18 15:39:24,671.671 INFO    ] Launching Daemon at Sun Oct 18 15:39:24 IST 2026
[2026-10-18 15:39:24,682.682 INFO    ] ================================================
[2026-10-18 15:39:25,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:39:25
[2026-10-18 15:39:25,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:39:26,140.140 INFO    ] Initializing speech engine...
[2026-10-18 15:39:26,145.145 INFO    ] 2026-10-18 15:39:26
[2026-10-18 15:39:26,405.405 INFO    ] 2026-10-18 15:39:26
[2026-10-18 15:39:26,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:39:26,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:39:26,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:39:26,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:39:26,946.946 INFO    ] time= 18/10/2026 15:39:26
[2026-10-18 15:39:26,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:39:26,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:39:27,096.096 INFO    ] No existing commands found in stream
[2026-10-18 15:39:32,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:39:32,111.111 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-18 15:39:36,111.111 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:39:36,113.113 INFO    ] Checking for system updates...
[2026-10-18 15:39:36,149.149 INFO    ] 200
[2026-10-18 15:39:36,151.151 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:39:36,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:39:36,205.205 INFO    ] No update needed
[2026-10-18 15:39:36,208.208 INFO    ] Checking for camera pi updates...
[2026-10-18 15:39:36,244.244 INFO    ] 200
[2026-10-18 15:39:36,247.247 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:39:36,288.288 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:39:46,304.304 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:39:46,344.344 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:39:46,355.355 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:39:46,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:39:46,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:39:46,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:39:48,409.409 INFO    ] ================================================
[2026-10-18 15:39:48,425.425 INFO    ] Launching Daemon at Sun Oct 18 15:39:48 IST 2026
[2026-10-18 15:39:48,437.437 INFO    ] ================================================
[2026-10-18 15:39:49,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:39:49
[2026-10-18 15:39:49,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:39:49,851.851 INFO    ] Initializing speech engine...
[2026-10-18 15:39:49,869.869 INFO    ] 2026-10-18 15:39:49
[2026-10-18 15:39:50,121.121 INFO    ] 2026-10-18 15:39:50
[2026-10-18 15:39:50,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:39:50,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:39:50,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:39:50,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:39:50,678.678 INFO    ] time= 18/10/2026 15:39:50
[2026-10-18 15:39:50,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:39:50,707.707 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:39:50,845.845 INFO    ] No existing commands found in stream
[2026-10-18 15:39:55,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:39:55,876.876 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-18 15:39:59,221.221 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:39:59,224.224 INFO    ] Checking for system updates...
[2026-10-18 15:39:59,260.260 INFO    ] 200
[2026-10-18 15:39:59,263.263 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:39:59,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:39:59,319.319 INFO    ] No update needed
[2026-10-18 15:39:59,321.321 INFO    ] Checking for camera pi updates...
[2026-10-18 15:39:59,356.356 INFO    ] 200
[2026-10-18 15:39:59,359.359 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:39:59,400.400 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:40:09,413.413 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:40:09,453.453 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:40:09,464.464 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:40:09,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:40:09,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:40:09,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:40:11,518.518 INFO    ] ================================================
[2026-10-18 15:40:11,534.534 INFO    ] Launching Daemon at Sun Oct 18 15:40:11 IST 2026
[2026-10-18 15:40:11,546.546 INFO    ] ================================================
[2026-10-18 15:40:12,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:40:12
[2026-10-18 15:40:12,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:40:12,966.966 INFO    ] Initializing speech engine...
[2026-10-18 15:40:12,980.980 INFO    ] 2026-10-18 15:40:12
[2026-10-18 15:40:13,263.263 INFO    ] 2026-10-18 15:40:13
[2026-10-18 15:40:13,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:40:13,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:40:13,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:40:13,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:40:13,805.805 INFO    ] time= 18/10/2026 15:40:13
[2026-10-18 15:40:13,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:40:13,885.885 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:40:14,027.027 INFO    ] No existing commands found in stream
[2026-10-18 15:40:19,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:40:19,055.055 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-18 15:40:20,295.295 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:40:20,298.298 INFO    ] Checking for system updates...
[2026-10-18 15:40:20,337.337 INFO    ] 200
[2026-10-18 15:40:20,340.340 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:40:20,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:40:20,395.395 INFO    ] No update needed
[2026-10-18 15:40:20,398.398 INFO    ] Checking for camera pi updates...
[2026-10-18 15:40:20,437.437 INFO    ] 200
[2026-10-18 15:40:20,439.439 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:40:20,482.482 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:40:30,498.498 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:40:30,533.533 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:40:30,543.543 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:40:30,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:40:30,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:40:30,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:40:32,598.598 INFO    ] ================================================
[2026-10-18 15:40:32,614.614 INFO    ] Launching Daemon at Sun Oct 18 15:40:32 IST 2026
[2026-10-18 15:40:32,625.625 INFO    ] ================================================
[2026-10-18 15:40:33,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:40:33
[2026-10-18 15:40:33,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:40:34,042.042 INFO    ] Initializing speech engine...
[2026-10-18 15:40:34,065.065 INFO    ] 2026-10-18 15:40:34
[2026-10-18 15:40:34,327.327 INFO    ] 2026-10-18 15:40:34
[2026-10-18 15:40:34,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:40:34,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:40:34,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:40:34,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:40:34,834.834 INFO    ] time= 18/10/2026 15:40:34
[2026-10-18 15:40:34,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:40:34,943.943 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:40:35,099.099 INFO    ] No existing commands found in stream
[2026-10-18 15:40:40,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:40:40,130.130 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-18 15:40:42,732.732 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:40:42,734.734 INFO    ] Checking for system updates...
[2026-10-18 15:40:42,773.773 INFO    ] 200
[2026-10-18 15:40:42,776.776 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:40:42,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:40:42,830.830 INFO    ] No update needed
[2026-10-18 15:40:42,832.832 INFO    ] Checking for camera pi updates...
[2026-10-18 15:40:42,866.866 INFO    ] 200
[2026-10-18 15:40:42,868.868 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:40:42,913.913 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:40:52,926.926 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:40:52,961.961 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:40:52,971.971 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:40:52,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:40:52,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:40:52,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:40:55,023.023 INFO    ] ================================================
[2026-10-18 15:40:55,038.038 INFO    ] Launching Daemon at Sun Oct 18 15:40:55 IST 2026
[2026-10-18 15:40:55,050.050 INFO    ] ================================================
[2026-10-18 15:40:55,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:40:55
[2026-10-18 15:40:56,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:40:56,481.481 INFO    ] Initializing speech engine...
[2026-10-18 15:40:56,490.490 INFO    ] 2026-10-18 15:40:56
[2026-10-18 15:40:56,791.791 INFO    ] 2026-10-18 15:40:56
[2026-10-18 15:40:56,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:40:57,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:40:57,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:40:57,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:40:57,212.212 INFO    ] time= 18/10/2026 15:40:57
[2026-10-18 15:40:57,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:40:57,266.266 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:40:57,405.405 INFO    ] No existing commands found in stream
[2026-10-18 15:41:02,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:41:02,431.431 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-18 15:41:03,239.239 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:41:03,243.243 INFO    ] Checking for system updates...
[2026-10-18 15:41:03,288.288 INFO    ] 200
[2026-10-18 15:41:03,291.291 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:41:03,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:41:03,364.364 INFO    ] No update needed
[2026-10-18 15:41:03,367.367 INFO    ] Checking for camera pi updates...
[2026-10-18 15:41:03,401.401 INFO    ] 200
[2026-10-18 15:41:03,403.403 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:41:03,443.443 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:41:13,459.459 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:41:13,494.494 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:41:13,504.504 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:41:13,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:41:13,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:41:13,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:41:15,556.556 INFO    ] ================================================
[2026-10-18 15:41:15,572.572 INFO    ] Launching Daemon at Sun Oct 18 15:41:15 IST 2026
[2026-10-18 15:41:15,583.583 INFO    ] ================================================
[2026-10-18 15:41:16,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:41:16
[2026-10-18 15:41:16,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:41:16,988.988 INFO    ] Initializing speech engine...
[2026-10-18 15:41:16,996.996 INFO    ] 2026-10-18 15:41:16
[2026-10-18 15:41:17,270.270 INFO    ] 2026-10-18 15:41:17
[2026-10-18 15:41:17,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:41:17,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:41:17,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:41:17,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:41:17,748.748 INFO    ] time= 18/10/2026 15:41:17
[2026-10-18 15:41:17,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:41:17,847.847 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:41:17,994.994 INFO    ] No existing commands found in stream
[2026-10-18 15:41:23,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:41:23,020.020 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-18 15:41:24,593.593 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:41:24,595.595 INFO    ] Checking for system updates...
[2026-10-18 15:41:24,631.631 INFO    ] 200
[2026-10-18 15:41:24,633.633 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:41:24,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:41:24,691.691 INFO    ] No update needed
[2026-10-18 15:41:24,694.694 INFO    ] Checking for camera pi updates...
[2026-10-18 15:41:24,730.730 INFO    ] 200
[2026-10-18 15:41:24,732.732 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:41:24,773.773 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:41:34,786.786 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:41:34,822.822 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:41:34,832.832 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:41:34,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:41:34,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:41:34,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:41:36,884.884 INFO    ] ================================================
[2026-10-18 15:41:36,899.899 INFO    ] Launching Daemon at Sun Oct 18 15:41:36 IST 2026
[2026-10-18 15:41:36,910.910 INFO    ] ================================================
[2026-10-18 15:41:37,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:41:37
[2026-10-18 15:41:38,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:41:38,439.439 INFO    ] Initializing speech engine...
[2026-10-18 15:41:38,462.462 INFO    ] 2026-10-18 15:41:38
[2026-10-18 15:41:38,740.740 INFO    ] 2026-10-18 15:41:38
[2026-10-18 15:41:38,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:41:39,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:41:39,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:41:39,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:41:39,299.299 INFO    ] time= 18/10/2026 15:41:39
[2026-10-18 15:41:39,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:41:39,327.327 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:41:39,482.482 INFO    ] No existing commands found in stream
[2026-10-18 15:41:44,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:41:44,521.521 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-18 15:41:46,142.142 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:41:46,144.144 INFO    ] Checking for system updates...
[2026-10-18 15:41:46,180.180 INFO    ] 200
[2026-10-18 15:41:46,182.182 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:41:46,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:41:46,237.237 INFO    ] No update needed
[2026-10-18 15:41:46,239.239 INFO    ] Checking for camera pi updates...
[2026-10-18 15:41:46,276.276 INFO    ] 200
[2026-10-18 15:41:46,278.278 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:41:46,318.318 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:41:56,334.334 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:41:56,374.374 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:41:56,384.384 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:41:56,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:41:56,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:41:56,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:41:58,440.440 INFO    ] ================================================
[2026-10-18 15:41:58,456.456 INFO    ] Launching Daemon at Sun Oct 18 15:41:58 IST 2026
[2026-10-18 15:41:58,467.467 INFO    ] ================================================
[2026-10-18 15:41:59,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:41:59
[2026-10-18 15:41:59,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:41:59,886.886 INFO    ] Initializing speech engine...
[2026-10-18 15:41:59,897.897 INFO    ] 2026-10-18 15:41:59
[2026-10-18 15:42:00,143.143 INFO    ] 2026-10-18 15:42:00
[2026-10-18 15:42:00,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:42:00,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:42:00,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:42:00,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:42:00,701.701 INFO    ] time= 18/10/2026 15:42:00
[2026-10-18 15:42:00,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:42:00,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:42:00,863.863 INFO    ] No existing commands found in stream
[2026-10-18 15:42:05,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:42:05,879.879 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-18 15:42:09,695.695 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:42:09,698.698 INFO    ] Checking for system updates...
[2026-10-18 15:42:09,734.734 INFO    ] 200
[2026-10-18 15:42:09,737.737 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:42:09,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:42:09,799.799 INFO    ] No update needed
[2026-10-18 15:42:09,802.802 INFO    ] Checking for camera pi updates...
[2026-10-18 15:42:09,839.839 INFO    ] 200
[2026-10-18 15:42:09,842.842 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:42:09,882.882 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:42:19,899.899 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:42:19,940.940 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:42:19,951.951 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:42:19,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:42:19,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:42:19,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:42:22,007.007 INFO    ] ================================================
[2026-10-18 15:42:22,023.023 INFO    ] Launching Daemon at Sun Oct 18 15:42:22 IST 2026
[2026-10-18 15:42:22,035.035 INFO    ] ================================================
[2026-10-18 15:42:22,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:42:22
[2026-10-18 15:42:23,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:42:23,669.669 INFO    ] Initializing speech engine...
[2026-10-18 15:42:23,676.676 INFO    ] 2026-10-18 15:42:23
[2026-10-18 15:42:23,952.952 INFO    ] 2026-10-18 15:42:23
[2026-10-18 15:42:23,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:42:24,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:42:24,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:42:24,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:42:24,519.519 INFO    ] time= 18/10/2026 15:42:24
[2026-10-18 15:42:24,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:42:24,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:42:24,679.679 INFO    ] No existing commands found in stream
[2026-10-18 15:42:29,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:42:29,712.712 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-18 15:42:32,291.291 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:42:32,295.295 INFO    ] Checking for system updates...
[2026-10-18 15:42:32,353.353 INFO    ] 200
[2026-10-18 15:42:32,356.356 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:42:32,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:42:32,416.416 INFO    ] No update needed
[2026-10-18 15:42:32,420.420 INFO    ] Checking for camera pi updates...
[2026-10-18 15:42:32,457.457 INFO    ] 200
[2026-10-18 15:42:32,460.460 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:42:32,504.504 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:42:42,521.521 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:42:42,561.561 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:42:42,572.572 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:42:42,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:42:42,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:42:42,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:42:44,628.628 INFO    ] ================================================
[2026-10-18 15:42:44,644.644 INFO    ] Launching Daemon at Sun Oct 18 15:42:44 IST 2026
[2026-10-18 15:42:44,655.655 INFO    ] ================================================
[2026-10-18 15:42:45,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:42:45
[2026-10-18 15:42:45,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:42:46,102.102 INFO    ] Initializing speech engine...
[2026-10-18 15:42:46,118.118 INFO    ] 2026-10-18 15:42:46
[2026-10-18 15:42:46,388.388 INFO    ] 2026-10-18 15:42:46
[2026-10-18 15:42:46,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:42:46,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:42:46,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:42:46,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:42:46,884.884 INFO    ] time= 18/10/2026 15:42:46
[2026-10-18 15:42:46,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:42:46,982.982 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:42:47,155.155 INFO    ] No existing commands found in stream
[2026-10-18 15:42:52,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:42:52,177.177 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-18 15:42:55,376.376 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:42:55,378.378 INFO    ] Checking for system updates...
[2026-10-18 15:42:55,418.418 INFO    ] 200
[2026-10-18 15:42:55,421.421 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:42:55,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:42:55,482.482 INFO    ] No update needed
[2026-10-18 15:42:55,485.485 INFO    ] Checking for camera pi updates...
[2026-10-18 15:42:55,521.521 INFO    ] 200
[2026-10-18 15:42:55,523.523 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:42:55,569.569 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:43:05,583.583 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:43:05,618.618 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:43:05,628.628 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:43:05,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:43:05,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:43:05,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:43:07,680.680 INFO    ] ================================================
[2026-10-18 15:43:07,695.695 INFO    ] Launching Daemon at Sun Oct 18 15:43:07 IST 2026
[2026-10-18 15:43:07,706.706 INFO    ] ================================================
[2026-10-18 15:43:08,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:43:08
[2026-10-18 15:43:08,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:43:09,146.146 INFO    ] Initializing speech engine...
[2026-10-18 15:43:09,152.152 INFO    ] 2026-10-18 15:43:09
[2026-10-18 15:43:09,446.446 INFO    ] 2026-10-18 15:43:09
[2026-10-18 15:43:09,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:43:09,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:43:09,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:43:09,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:43:09,869.869 INFO    ] time= 18/10/2026 15:43:09
[2026-10-18 15:43:09,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:43:09,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:43:10,050.050 INFO    ] No existing commands found in stream
[2026-10-18 15:43:15,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:43:15,078.078 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-18 15:43:18,528.528 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:43:18,531.531 INFO    ] Checking for system updates...
[2026-10-18 15:43:18,571.571 INFO    ] 200
[2026-10-18 15:43:18,574.574 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:43:18,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:43:18,637.637 INFO    ] No update needed
[2026-10-18 15:43:18,640.640 INFO    ] Checking for camera pi updates...
[2026-10-18 15:43:18,708.708 INFO    ] 200
[2026-10-18 15:43:18,711.711 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:43:18,779.779 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:43:28,792.792 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:43:28,827.827 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:43:28,836.836 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:43:28,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:43:28,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:43:28,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:43:30,889.889 INFO    ] ================================================
[2026-10-18 15:43:30,905.905 INFO    ] Launching Daemon at Sun Oct 18 15:43:30 IST 2026
[2026-10-18 15:43:30,916.916 INFO    ] ================================================
[2026-10-18 15:43:31,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:43:31
[2026-10-18 15:43:32,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:43:32,407.407 INFO    ] Initializing speech engine...
[2026-10-18 15:43:32,427.427 INFO    ] 2026-10-18 15:43:32
[2026-10-18 15:43:32,716.716 INFO    ] 2026-10-18 15:43:32
[2026-10-18 15:43:32,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:43:32,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:43:32,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:43:33,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:43:33,144.144 INFO    ] time= 18/10/2026 15:43:33
[2026-10-18 15:43:33,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:43:33,211.211 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:43:33,338.338 INFO    ] No existing commands found in stream
[2026-10-18 15:43:38,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:43:38,353.353 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-18 15:43:40,963.963 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:43:40,966.966 INFO    ] Checking for system updates...
[2026-10-18 15:43:41,003.003 INFO    ] 200
[2026-10-18 15:43:41,006.006 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:43:41,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:43:41,062.062 INFO    ] No update needed
[2026-10-18 15:43:41,064.064 INFO    ] Checking for camera pi updates...
[2026-10-18 15:43:41,101.101 INFO    ] 200
[2026-10-18 15:43:41,104.104 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:43:41,145.145 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:43:51,161.161 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:43:51,197.197 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:43:51,207.207 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:43:51,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:43:51,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:43:51,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:43:53,259.259 INFO    ] ================================================
[2026-10-18 15:43:53,276.276 INFO    ] Launching Daemon at Sun Oct 18 15:43:53 IST 2026
[2026-10-18 15:43:53,287.287 INFO    ] ================================================
[2026-10-18 15:43:53,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:43:53
[2026-10-18 15:43:54,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:43:54,811.811 INFO    ] Initializing speech engine...
[2026-10-18 15:43:54,832.832 INFO    ] 2026-10-18 15:43:54
[2026-10-18 15:43:55,107.107 INFO    ] 2026-10-18 15:43:55
[2026-10-18 15:43:55,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:43:55,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:43:55,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:43:55,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:43:55,556.556 INFO    ] time= 18/10/2026 15:43:55
[2026-10-18 15:43:55,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:43:55,563.563 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:43:55,667.667 INFO    ] No existing commands found in stream
[2026-10-18 15:44:00,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:44:00,694.694 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-18 15:44:02,859.859 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:44:02,862.862 INFO    ] Checking for system updates...
[2026-10-18 15:44:02,906.906 INFO    ] 200
[2026-10-18 15:44:02,910.910 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:44:02,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:44:02,981.981 INFO    ] No update needed
[2026-10-18 15:44:02,985.985 INFO    ] Checking for camera pi updates...
[2026-10-18 15:44:03,034.034 INFO    ] 200
[2026-10-18 15:44:03,037.037 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:44:03,080.080 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:44:13,096.096 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:44:13,135.135 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:44:13,147.147 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:44:13,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:44:13,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:44:13,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:44:15,203.203 INFO    ] ================================================
[2026-10-18 15:44:15,219.219 INFO    ] Launching Daemon at Sun Oct 18 15:44:15 IST 2026
[2026-10-18 15:44:15,230.230 INFO    ] ================================================
[2026-10-18 15:44:15,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:44:15
[2026-10-18 15:44:16,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:44:16,631.631 INFO    ] Initializing speech engine...
[2026-10-18 15:44:16,640.640 INFO    ] 2026-10-18 15:44:16
[2026-10-18 15:44:16,919.919 INFO    ] 2026-10-18 15:44:16
[2026-10-18 15:44:16,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:44:17,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:44:17,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:44:17,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:44:17,405.405 INFO    ] time= 18/10/2026 15:44:17
[2026-10-18 15:44:17,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:44:17,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:44:17,620.620 INFO    ] No existing commands found in stream
[2026-10-18 15:44:22,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:44:22,644.644 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-18 15:44:26,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:44:26,109.109 INFO    ] Checking for system updates...
[2026-10-18 15:44:26,145.145 INFO    ] 200
[2026-10-18 15:44:26,148.148 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:44:26,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:44:26,208.208 INFO    ] No update needed
[2026-10-18 15:44:26,210.210 INFO    ] Checking for camera pi updates...
[2026-10-18 15:44:26,243.243 INFO    ] 200
[2026-10-18 15:44:26,246.246 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:44:26,288.288 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:44:36,303.303 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:44:36,337.337 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:44:36,347.347 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:44:36,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:44:36,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:44:36,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:44:38,400.400 INFO    ] ================================================
[2026-10-18 15:44:38,416.416 INFO    ] Launching Daemon at Sun Oct 18 15:44:38 IST 2026
[2026-10-18 15:44:38,427.427 INFO    ] ================================================
[2026-10-18 15:44:38,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:44:38
[2026-10-18 15:44:39,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:44:39,841.841 INFO    ] Initializing speech engine...
[2026-10-18 15:44:39,850.850 INFO    ] 2026-10-18 15:44:39
[2026-10-18 15:44:40,143.143 INFO    ] 2026-10-18 15:44:40
[2026-10-18 15:44:40,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:44:40,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:44:40,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:44:40,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:44:40,644.644 INFO    ] time= 18/10/2026 15:44:40
[2026-10-18 15:44:40,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:44:40,758.758 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:44:40,902.902 INFO    ] No existing commands found in stream
[2026-10-18 15:44:45,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:44:45,917.917 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-18 15:44:48,837.837 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:44:48,839.839 INFO    ] Checking for system updates...
[2026-10-18 15:44:48,878.878 INFO    ] 200
[2026-10-18 15:44:48,880.880 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:44:48,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:44:48,940.940 INFO    ] No update needed
[2026-10-18 15:44:48,943.943 INFO    ] Checking for camera pi updates...
[2026-10-18 15:44:48,976.976 INFO    ] 200
[2026-10-18 15:44:48,978.978 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:44:49,022.022 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:44:59,038.038 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:44:59,072.072 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:44:59,082.082 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:44:59,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:44:59,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:44:59,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:45:01,140.140 INFO    ] ================================================
[2026-10-18 15:45:01,155.155 INFO    ] Launching Daemon at Sun Oct 18 15:45:01 IST 2026
[2026-10-18 15:45:01,167.167 INFO    ] ================================================
[2026-10-18 15:45:02,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:45:02
[2026-10-18 15:45:03,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:45:03,558.558 INFO    ] Initializing speech engine...
[2026-10-18 15:45:03,566.566 INFO    ] 2026-10-18 15:45:03
[2026-10-18 15:45:03,875.875 INFO    ] 2026-10-18 15:45:03
[2026-10-18 15:45:03,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:45:04,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:45:04,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:45:04,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:45:04,449.449 INFO    ] time= 18/10/2026 15:45:04
[2026-10-18 15:45:04,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:45:04,477.477 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:45:04,607.607 INFO    ] No existing commands found in stream
[2026-10-18 15:45:09,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:45:09,630.630 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-18 15:45:12,105.105 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:45:12,108.108 INFO    ] Checking for system updates...
[2026-10-18 15:45:12,146.146 INFO    ] 200
[2026-10-18 15:45:12,149.149 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:45:12,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:45:12,206.206 INFO    ] No update needed
[2026-10-18 15:45:12,209.209 INFO    ] Checking for camera pi updates...
[2026-10-18 15:45:12,244.244 INFO    ] 200
[2026-10-18 15:45:12,247.247 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:45:12,288.288 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:45:22,305.305 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:45:22,345.345 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:45:22,356.356 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:45:22,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:45:22,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:45:22,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:45:24,412.412 INFO    ] ================================================
[2026-10-18 15:45:24,428.428 INFO    ] Launching Daemon at Sun Oct 18 15:45:24 IST 2026
[2026-10-18 15:45:24,440.440 INFO    ] ================================================
[2026-10-18 15:45:25,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:45:25
[2026-10-18 15:45:25,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:45:25,869.869 INFO    ] Initializing speech engine...
[2026-10-18 15:45:25,888.888 INFO    ] 2026-10-18 15:45:25
[2026-10-18 15:45:26,152.152 INFO    ] 2026-10-18 15:45:26
[2026-10-18 15:45:26,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:45:26,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:45:26,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:45:26,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:45:26,594.594 INFO    ] time= 18/10/2026 15:45:26
[2026-10-18 15:45:26,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:45:26,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:45:26,791.791 INFO    ] No existing commands found in stream
[2026-10-18 15:45:31,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:45:31,818.818 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-18 15:45:33,886.886 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:45:33,889.889 INFO    ] Checking for system updates...
[2026-10-18 15:45:33,925.925 INFO    ] 200
[2026-10-18 15:45:33,928.928 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:45:33,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:45:33,988.988 INFO    ] No update needed
[2026-10-18 15:45:33,990.990 INFO    ] Checking for camera pi updates...
[2026-10-18 15:45:34,023.023 INFO    ] 200
[2026-10-18 15:45:34,025.025 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:45:34,070.070 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:45:44,086.086 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:45:44,120.120 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:45:44,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:45:44,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:45:44,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:45:44,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:45:46,182.182 INFO    ] ================================================
[2026-10-18 15:45:46,197.197 INFO    ] Launching Daemon at Sun Oct 18 15:45:46 IST 2026
[2026-10-18 15:45:46,208.208 INFO    ] ================================================
[2026-10-18 15:45:46,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:45:46
[2026-10-18 15:45:47,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:45:47,835.835 INFO    ] Initializing speech engine...
[2026-10-18 15:45:47,842.842 INFO    ] 2026-10-18 15:45:47
[2026-10-18 15:45:48,150.150 INFO    ] 2026-10-18 15:45:48
[2026-10-18 15:45:48,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:45:48,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:45:48,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:45:48,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:45:48,667.667 INFO    ] time= 18/10/2026 15:45:48
[2026-10-18 15:45:48,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:45:48,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:45:48,843.843 INFO    ] No existing commands found in stream
[2026-10-18 15:45:53,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:45:53,883.883 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-18 15:45:55,405.405 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:45:55,408.408 INFO    ] Checking for system updates...
[2026-10-18 15:45:55,451.451 INFO    ] 200
[2026-10-18 15:45:55,455.455 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:45:55,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:45:55,519.519 INFO    ] No update needed
[2026-10-18 15:45:55,522.522 INFO    ] Checking for camera pi updates...
[2026-10-18 15:45:55,560.560 INFO    ] 200
[2026-10-18 15:45:55,563.563 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:45:55,609.609 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:46:05,622.622 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:46:05,664.664 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:46:05,676.676 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:46:05,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:46:05,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:46:05,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:46:07,733.733 INFO    ] ================================================
[2026-10-18 15:46:07,748.748 INFO    ] Launching Daemon at Sun Oct 18 15:46:07 IST 2026
[2026-10-18 15:46:07,759.759 INFO    ] ================================================
[2026-10-18 15:46:08,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:46:08
[2026-10-18 15:46:08,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:46:09,175.175 INFO    ] Initializing speech engine...
[2026-10-18 15:46:09,190.190 INFO    ] 2026-10-18 15:46:09
[2026-10-18 15:46:09,475.475 INFO    ] 2026-10-18 15:46:09
[2026-10-18 15:46:09,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:46:09,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:46:09,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:46:09,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:46:10,009.009 INFO    ] time= 18/10/2026 15:46:09
[2026-10-18 15:46:10,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:46:10,122.122 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:46:10,256.256 INFO    ] No existing commands found in stream
[2026-10-18 15:46:15,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:46:15,276.276 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-18 15:46:17,325.325 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:46:17,328.328 INFO    ] Checking for system updates...
[2026-10-18 15:46:17,363.363 INFO    ] 200
[2026-10-18 15:46:17,366.366 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:46:17,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:46:17,422.422 INFO    ] No update needed
[2026-10-18 15:46:17,424.424 INFO    ] Checking for camera pi updates...
[2026-10-18 15:46:17,464.464 INFO    ] 200
[2026-10-18 15:46:17,468.468 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:46:17,522.522 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:46:27,536.536 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:46:27,574.574 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:46:27,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:46:27,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:46:27,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:46:27,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:46:29,643.643 INFO    ] ================================================
[2026-10-18 15:46:29,659.659 INFO    ] Launching Daemon at Sun Oct 18 15:46:29 IST 2026
[2026-10-18 15:46:29,670.670 INFO    ] ================================================
[2026-10-18 15:46:30,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:46:30
[2026-10-18 15:46:30,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:46:31,170.170 INFO    ] Initializing speech engine...
[2026-10-18 15:46:31,176.176 INFO    ] 2026-10-18 15:46:31
[2026-10-18 15:46:31,481.481 INFO    ] 2026-10-18 15:46:31
[2026-10-18 15:46:31,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:46:31,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:46:31,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:46:31,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:46:31,989.989 INFO    ] time= 18/10/2026 15:46:31
[2026-10-18 15:46:32,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:46:32,075.075 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:46:32,222.222 INFO    ] No existing commands found in stream
[2026-10-18 15:46:37,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:46:37,242.242 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-18 15:46:39,126.126 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:46:39,128.128 INFO    ] Checking for system updates...
[2026-10-18 15:46:39,165.165 INFO    ] 200
[2026-10-18 15:46:39,167.167 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:46:39,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:46:39,223.223 INFO    ] No update needed
[2026-10-18 15:46:39,225.225 INFO    ] Checking for camera pi updates...
[2026-10-18 15:46:39,258.258 INFO    ] 200
[2026-10-18 15:46:39,260.260 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:46:39,301.301 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:46:49,317.317 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:46:49,351.351 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:46:49,361.361 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:46:49,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:46:49,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:46:49,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:46:51,412.412 INFO    ] ================================================
[2026-10-18 15:46:51,428.428 INFO    ] Launching Daemon at Sun Oct 18 15:46:51 IST 2026
[2026-10-18 15:46:51,438.438 INFO    ] ================================================
[2026-10-18 15:46:52,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:46:52
[2026-10-18 15:46:52,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:46:53,028.028 INFO    ] Initializing speech engine...
[2026-10-18 15:46:53,053.053 INFO    ] 2026-10-18 15:46:53
[2026-10-18 15:46:53,331.331 INFO    ] 2026-10-18 15:46:53
[2026-10-18 15:46:53,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:46:53,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:46:53,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:46:53,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:46:53,910.910 INFO    ] time= 18/10/2026 15:46:53
[2026-10-18 15:46:53,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:46:53,958.958 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:46:54,090.090 INFO    ] No existing commands found in stream
[2026-10-18 15:46:59,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:46:59,124.124 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-18 15:47:02,925.925 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:47:02,928.928 INFO    ] Checking for system updates...
[2026-10-18 15:47:02,973.973 INFO    ] 200
[2026-10-18 15:47:02,975.975 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:47:03,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:47:03,031.031 INFO    ] No update needed
[2026-10-18 15:47:03,034.034 INFO    ] Checking for camera pi updates...
[2026-10-18 15:47:03,085.085 INFO    ] 200
[2026-10-18 15:47:03,088.088 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:47:03,151.151 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:47:13,166.166 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:47:13,201.201 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:47:13,211.211 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:47:13,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:47:13,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:47:13,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:47:15,264.264 INFO    ] ================================================
[2026-10-18 15:47:15,278.278 INFO    ] Launching Daemon at Sun Oct 18 15:47:15 IST 2026
[2026-10-18 15:47:15,289.289 INFO    ] ================================================
[2026-10-18 15:47:15,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:47:15
[2026-10-18 15:47:16,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:47:16,730.730 INFO    ] Initializing speech engine...
[2026-10-18 15:47:16,743.743 INFO    ] 2026-10-18 15:47:16
[2026-10-18 15:47:17,026.026 INFO    ] 2026-10-18 15:47:16
[2026-10-18 15:47:17,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:47:17,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:47:17,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:47:17,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:47:17,521.521 INFO    ] time= 18/10/2026 15:47:17
[2026-10-18 15:47:17,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:47:17,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:47:17,778.778 INFO    ] No existing commands found in stream
[2026-10-18 15:47:22,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:47:22,806.806 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-18 15:47:24,730.730 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:47:24,733.733 INFO    ] Checking for system updates...
[2026-10-18 15:47:24,769.769 INFO    ] 200
[2026-10-18 15:47:24,771.771 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:47:24,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:47:24,846.846 INFO    ] No update needed
[2026-10-18 15:47:24,849.849 INFO    ] Checking for camera pi updates...
[2026-10-18 15:47:24,887.887 INFO    ] 200
[2026-10-18 15:47:24,889.889 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:47:24,933.933 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:47:34,948.948 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d75150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:47:34,982.982 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:47:34,992.992 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:47:34,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:47:34,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:47:35,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:47:37,045.045 INFO    ] ================================================
[2026-10-18 15:47:37,060.060 INFO    ] Launching Daemon at Sun Oct 18 15:47:37 IST 2026
[2026-10-18 15:47:37,071.071 INFO    ] ================================================
[2026-10-18 15:47:37,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:47:37
[2026-10-18 15:47:38,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:47:38,538.538 INFO    ] Initializing speech engine...
[2026-10-18 15:47:38,563.563 INFO    ] 2026-10-18 15:47:38
[2026-10-18 15:47:38,833.833 INFO    ] 2026-10-18 15:47:38
[2026-10-18 15:47:38,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:47:39,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:47:39,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:47:39,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:47:39,357.357 INFO    ] time= 18/10/2026 15:47:39
[2026-10-18 15:47:39,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:47:39,472.472 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:47:39,599.599 INFO    ] No existing commands found in stream
[2026-10-18 15:47:44,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:47:44,624.624 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-18 15:47:45,723.723 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:47:45,727.727 INFO    ] Checking for system updates...
[2026-10-18 15:47:45,766.766 INFO    ] 200
[2026-10-18 15:47:45,769.769 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:47:45,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:47:45,824.824 INFO    ] No update needed
[2026-10-18 15:47:45,826.826 INFO    ] Checking for camera pi updates...
[2026-10-18 15:47:45,860.860 INFO    ] 200
[2026-10-18 15:47:45,862.862 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:47:45,904.904 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:47:55,919.919 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:47:55,955.955 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:47:55,965.965 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:47:55,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:47:55,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:47:55,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:47:58,017.017 INFO    ] ================================================
[2026-10-18 15:47:58,033.033 INFO    ] Launching Daemon at Sun Oct 18 15:47:58 IST 2026
[2026-10-18 15:47:58,044.044 INFO    ] ================================================
[2026-10-18 15:47:58,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:47:58
[2026-10-18 15:47:59,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:47:59,466.466 INFO    ] Initializing speech engine...
[2026-10-18 15:47:59,472.472 INFO    ] 2026-10-18 15:47:59
[2026-10-18 15:47:59,764.764 INFO    ] 2026-10-18 15:47:59
[2026-10-18 15:47:59,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:47:59,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:48:00,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:48:00,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:48:00,167.167 INFO    ] time= 18/10/2026 15:48:00
[2026-10-18 15:48:00,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:48:00,235.235 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:48:00,366.366 INFO    ] No existing commands found in stream
[2026-10-18 15:48:05,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:48:05,379.379 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-18 15:48:08,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:48:08,860.860 INFO    ] Checking for system updates...
[2026-10-18 15:48:08,896.896 INFO    ] 200
[2026-10-18 15:48:08,899.899 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:48:08,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:48:08,953.953 INFO    ] No update needed
[2026-10-18 15:48:08,955.955 INFO    ] Checking for camera pi updates...
[2026-10-18 15:48:08,989.989 INFO    ] 200
[2026-10-18 15:48:08,992.992 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:48:09,036.036 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:48:19,050.050 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:48:19,085.085 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:48:19,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:48:19,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:48:19,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:48:19,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:48:21,147.147 INFO    ] ================================================
[2026-10-18 15:48:21,162.162 INFO    ] Launching Daemon at Sun Oct 18 15:48:21 IST 2026
[2026-10-18 15:48:21,173.173 INFO    ] ================================================
[2026-10-18 15:48:21,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:48:21
[2026-10-18 15:48:22,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:48:22,581.581 INFO    ] Initializing speech engine...
[2026-10-18 15:48:22,588.588 INFO    ] 2026-10-18 15:48:22
[2026-10-18 15:48:22,881.881 INFO    ] 2026-10-18 15:48:22
[2026-10-18 15:48:22,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:48:23,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:48:23,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:48:23,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:48:23,296.296 INFO    ] time= 18/10/2026 15:48:23
[2026-10-18 15:48:23,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:48:23,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:48:23,447.447 INFO    ] No existing commands found in stream
[2026-10-18 15:48:28,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:48:28,481.481 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-18 15:48:31,442.442 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:48:31,445.445 INFO    ] Checking for system updates...
[2026-10-18 15:48:31,482.482 INFO    ] 200
[2026-10-18 15:48:31,485.485 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:48:31,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:48:31,546.546 INFO    ] No update needed
[2026-10-18 15:48:31,549.549 INFO    ] Checking for camera pi updates...
[2026-10-18 15:48:31,585.585 INFO    ] 200
[2026-10-18 15:48:31,587.587 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:48:31,636.636 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:48:41,651.651 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:48:41,686.686 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:48:41,695.695 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:48:41,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:48:41,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:48:41,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:48:43,748.748 INFO    ] ================================================
[2026-10-18 15:48:43,763.763 INFO    ] Launching Daemon at Sun Oct 18 15:48:43 IST 2026
[2026-10-18 15:48:43,774.774 INFO    ] ================================================
[2026-10-18 15:48:44,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:48:44
[2026-10-18 15:48:45,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:48:45,358.358 INFO    ] Initializing speech engine...
[2026-10-18 15:48:45,366.366 INFO    ] 2026-10-18 15:48:45
[2026-10-18 15:48:45,639.639 INFO    ] 2026-10-18 15:48:45
[2026-10-18 15:48:45,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:48:45,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:48:45,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:48:46,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:48:46,170.170 INFO    ] time= 18/10/2026 15:48:46
[2026-10-18 15:48:46,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:48:46,194.194 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:48:46,324.324 INFO    ] No existing commands found in stream
[2026-10-18 15:48:51,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:48:51,339.339 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-18 15:48:54,560.560 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:48:54,563.563 INFO    ] Checking for system updates...
[2026-10-18 15:48:54,600.600 INFO    ] 200
[2026-10-18 15:48:54,602.602 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:48:54,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:48:54,658.658 INFO    ] No update needed
[2026-10-18 15:48:54,661.661 INFO    ] Checking for camera pi updates...
[2026-10-18 15:48:54,695.695 INFO    ] 200
[2026-10-18 15:48:54,698.698 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:48:54,738.738 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:49:04,753.753 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:49:04,790.790 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:49:04,800.800 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:49:04,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:49:04,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:49:04,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:49:06,853.853 INFO    ] ================================================
[2026-10-18 15:49:06,868.868 INFO    ] Launching Daemon at Sun Oct 18 15:49:06 IST 2026
[2026-10-18 15:49:06,879.879 INFO    ] ================================================
[2026-10-18 15:49:07,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:49:07
[2026-10-18 15:49:08,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:49:08,286.286 INFO    ] Initializing speech engine...
[2026-10-18 15:49:08,295.295 INFO    ] 2026-10-18 15:49:08
[2026-10-18 15:49:08,590.590 INFO    ] 2026-10-18 15:49:08
[2026-10-18 15:49:08,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:49:08,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:49:08,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:49:09,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:49:09,082.082 INFO    ] time= 18/10/2026 15:49:09
[2026-10-18 15:49:09,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:49:09,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:49:09,255.255 INFO    ] No existing commands found in stream
[2026-10-18 15:49:14,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:49:14,270.270 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-18 15:49:18,158.158 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:49:18,160.160 INFO    ] Checking for system updates...
[2026-10-18 15:49:18,199.199 INFO    ] 200
[2026-10-18 15:49:18,201.201 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:49:18,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:49:18,262.262 INFO    ] No update needed
[2026-10-18 15:49:18,264.264 INFO    ] Checking for camera pi updates...
[2026-10-18 15:49:18,297.297 INFO    ] 200
[2026-10-18 15:49:18,299.299 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:49:18,343.343 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:49:28,359.359 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:49:28,393.393 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:49:28,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:49:28,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:49:28,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:49:28,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:49:30,456.456 INFO    ] ================================================
[2026-10-18 15:49:30,472.472 INFO    ] Launching Daemon at Sun Oct 18 15:49:30 IST 2026
[2026-10-18 15:49:30,483.483 INFO    ] ================================================
[2026-10-18 15:49:31,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:49:31
[2026-10-18 15:49:31,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:49:31,943.943 INFO    ] Initializing speech engine...
[2026-10-18 15:49:31,960.960 INFO    ] 2026-10-18 15:49:31
[2026-10-18 15:49:32,261.261 INFO    ] 2026-10-18 15:49:32
[2026-10-18 15:49:32,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:49:32,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:49:32,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:49:32,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:49:32,694.694 INFO    ] time= 18/10/2026 15:49:32
[2026-10-18 15:49:32,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:49:32,708.708 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:49:32,832.832 INFO    ] No existing commands found in stream
[2026-10-18 15:49:37,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:49:37,860.860 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-18 15:49:42,332.332 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:49:42,335.335 INFO    ] Checking for system updates...
[2026-10-18 15:49:42,371.371 INFO    ] 200
[2026-10-18 15:49:42,373.373 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:49:42,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:49:42,433.433 INFO    ] No update needed
[2026-10-18 15:49:42,436.436 INFO    ] Checking for camera pi updates...
[2026-10-18 15:49:42,470.470 INFO    ] 200
[2026-10-18 15:49:42,472.472 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:49:42,519.519 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:49:52,535.535 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:49:52,571.571 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:49:52,580.580 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:49:52,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:49:52,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:49:52,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:49:54,633.633 INFO    ] ================================================
[2026-10-18 15:49:54,649.649 INFO    ] Launching Daemon at Sun Oct 18 15:49:54 IST 2026
[2026-10-18 15:49:54,660.660 INFO    ] ================================================
[2026-10-18 15:49:55,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:49:55
[2026-10-18 15:49:55,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:49:56,090.090 INFO    ] Initializing speech engine...
[2026-10-18 15:49:56,097.097 INFO    ] 2026-10-18 15:49:56
[2026-10-18 15:49:56,340.340 INFO    ] 2026-10-18 15:49:56
[2026-10-18 15:49:56,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:49:56,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:49:56,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:49:56,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:49:56,890.890 INFO    ] time= 18/10/2026 15:49:56
[2026-10-18 15:49:56,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:49:56,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:49:57,051.051 INFO    ] No existing commands found in stream
[2026-10-18 15:50:02,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:50:02,071.071 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-18 15:50:05,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:50:05,319.319 INFO    ] Checking for system updates...
[2026-10-18 15:50:05,356.356 INFO    ] 200
[2026-10-18 15:50:05,358.358 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:50:05,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:50:05,414.414 INFO    ] No update needed
[2026-10-18 15:50:05,417.417 INFO    ] Checking for camera pi updates...
[2026-10-18 15:50:05,451.451 INFO    ] 200
[2026-10-18 15:50:05,454.454 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:50:05,500.500 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:50:15,516.516 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:50:15,556.556 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:50:15,568.568 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:50:15,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:50:15,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:50:15,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:50:17,626.626 INFO    ] ================================================
[2026-10-18 15:50:17,640.640 INFO    ] Launching Daemon at Sun Oct 18 15:50:17 IST 2026
[2026-10-18 15:50:17,651.651 INFO    ] ================================================
[2026-10-18 15:50:18,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:50:18
[2026-10-18 15:50:18,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:50:19,072.072 INFO    ] Initializing speech engine...
[2026-10-18 15:50:19,081.081 INFO    ] 2026-10-18 15:50:19
[2026-10-18 15:50:19,327.327 INFO    ] 2026-10-18 15:50:19
[2026-10-18 15:50:19,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:50:19,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:50:19,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:50:19,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:50:19,825.825 INFO    ] time= 18/10/2026 15:50:19
[2026-10-18 15:50:19,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:50:19,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:50:20,034.034 INFO    ] No existing commands found in stream
[2026-10-18 15:50:25,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:50:25,060.060 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-18 15:50:27,484.484 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:50:27,486.486 INFO    ] Checking for system updates...
[2026-10-18 15:50:27,522.522 INFO    ] 200
[2026-10-18 15:50:27,524.524 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:50:27,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:50:27,589.589 INFO    ] No update needed
[2026-10-18 15:50:27,591.591 INFO    ] Checking for camera pi updates...
[2026-10-18 15:50:27,624.624 INFO    ] 200
[2026-10-18 15:50:27,627.627 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:50:27,671.671 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:50:37,685.685 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:50:37,720.720 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:50:37,730.730 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:50:37,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:50:37,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:50:37,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:50:39,783.783 INFO    ] ================================================
[2026-10-18 15:50:39,799.799 INFO    ] Launching Daemon at Sun Oct 18 15:50:39 IST 2026
[2026-10-18 15:50:39,810.810 INFO    ] ================================================
[2026-10-18 15:50:40,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:50:40
[2026-10-18 15:50:40,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:50:41,222.222 INFO    ] Initializing speech engine...
[2026-10-18 15:50:41,230.230 INFO    ] 2026-10-18 15:50:41
[2026-10-18 15:50:41,524.524 INFO    ] 2026-10-18 15:50:41
[2026-10-18 15:50:41,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:50:41,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:50:41,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:50:42,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:50:42,064.064 INFO    ] time= 18/10/2026 15:50:42
[2026-10-18 15:50:42,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:50:42,169.169 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:50:42,326.326 INFO    ] No existing commands found in stream
[2026-10-18 15:50:47,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:50:47,353.353 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-18 15:50:51,045.045 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:50:51,048.048 INFO    ] Checking for system updates...
[2026-10-18 15:50:51,084.084 INFO    ] 200
[2026-10-18 15:50:51,086.086 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:50:51,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:50:51,151.151 INFO    ] No update needed
[2026-10-18 15:50:51,154.154 INFO    ] Checking for camera pi updates...
[2026-10-18 15:50:51,187.187 INFO    ] 200
[2026-10-18 15:50:51,189.189 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:50:51,234.234 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:51:01,248.248 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:51:01,282.282 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:51:01,292.292 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:51:01,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:51:01,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:51:01,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:51:03,347.347 INFO    ] ================================================
[2026-10-18 15:51:03,366.366 INFO    ] Launching Daemon at Sun Oct 18 15:51:03 IST 2026
[2026-10-18 15:51:03,377.377 INFO    ] ================================================
[2026-10-18 15:51:04,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:51:04
[2026-10-18 15:51:04,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:51:05,048.048 INFO    ] Initializing speech engine...
[2026-10-18 15:51:05,058.058 INFO    ] 2026-10-18 15:51:05
[2026-10-18 15:51:05,346.346 INFO    ] 2026-10-18 15:51:05
[2026-10-18 15:51:05,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:51:05,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:51:05,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:51:05,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:51:05,883.883 INFO    ] time= 18/10/2026 15:51:05
[2026-10-18 15:51:05,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:51:05,918.918 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:51:06,052.052 INFO    ] No existing commands found in stream
[2026-10-18 15:51:11,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:51:11,071.071 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-18 15:51:12,014.014 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:51:12,018.018 INFO    ] Checking for system updates...
[2026-10-18 15:51:12,055.055 INFO    ] 200
[2026-10-18 15:51:12,058.058 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:51:12,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:51:12,113.113 INFO    ] No update needed
[2026-10-18 15:51:12,115.115 INFO    ] Checking for camera pi updates...
[2026-10-18 15:51:12,153.153 INFO    ] 200
[2026-10-18 15:51:12,155.155 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:51:12,201.201 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:51:22,216.216 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:51:22,251.251 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:51:22,261.261 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:51:22,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:51:22,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:51:22,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:51:24,313.313 INFO    ] ================================================
[2026-10-18 15:51:24,328.328 INFO    ] Launching Daemon at Sun Oct 18 15:51:24 IST 2026
[2026-10-18 15:51:24,339.339 INFO    ] ================================================
[2026-10-18 15:51:24,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:51:24
[2026-10-18 15:51:25,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:51:25,752.752 INFO    ] Initializing speech engine...
[2026-10-18 15:51:25,759.759 INFO    ] 2026-10-18 15:51:25
[2026-10-18 15:51:26,051.051 INFO    ] 2026-10-18 15:51:26
[2026-10-18 15:51:26,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:51:26,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:51:26,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:51:26,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:51:26,625.625 INFO    ] time= 18/10/2026 15:51:26
[2026-10-18 15:51:26,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:51:26,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:51:26,783.783 INFO    ] No existing commands found in stream
[2026-10-18 15:51:31,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:51:31,817.817 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-18 15:51:36,076.076 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:51:36,079.079 INFO    ] Checking for system updates...
[2026-10-18 15:51:36,117.117 INFO    ] 200
[2026-10-18 15:51:36,119.119 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:51:36,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:51:36,185.185 INFO    ] No update needed
[2026-10-18 15:51:36,188.188 INFO    ] Checking for camera pi updates...
[2026-10-18 15:51:36,225.225 INFO    ] 200
[2026-10-18 15:51:36,227.227 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:51:36,272.272 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:51:46,288.288 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:51:46,327.327 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:51:46,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:51:46,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:51:46,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:51:46,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:51:48,396.396 INFO    ] ================================================
[2026-10-18 15:51:48,411.411 INFO    ] Launching Daemon at Sun Oct 18 15:51:48 IST 2026
[2026-10-18 15:51:48,422.422 INFO    ] ================================================
[2026-10-18 15:51:48,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:51:48
[2026-10-18 15:51:49,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:51:49,835.835 INFO    ] Initializing speech engine...
[2026-10-18 15:51:49,843.843 INFO    ] 2026-10-18 15:51:49
[2026-10-18 15:51:50,141.141 INFO    ] 2026-10-18 15:51:50
[2026-10-18 15:51:50,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:51:50,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:51:50,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:51:50,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:51:50,568.568 INFO    ] time= 18/10/2026 15:51:50
[2026-10-18 15:51:50,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:51:50,607.607 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:51:50,736.736 INFO    ] No existing commands found in stream
[2026-10-18 15:51:55,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:51:55,764.764 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-18 15:51:59,218.218 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:51:59,221.221 INFO    ] Checking for system updates...
[2026-10-18 15:51:59,257.257 INFO    ] 200
[2026-10-18 15:51:59,259.259 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:51:59,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:51:59,321.321 INFO    ] No update needed
[2026-10-18 15:51:59,323.323 INFO    ] Checking for camera pi updates...
[2026-10-18 15:51:59,357.357 INFO    ] 200
[2026-10-18 15:51:59,359.359 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:51:59,399.399 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:52:09,414.414 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:52:09,449.449 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:52:09,459.459 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:52:09,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:52:09,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:52:09,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:52:11,511.511 INFO    ] ================================================
[2026-10-18 15:52:11,526.526 INFO    ] Launching Daemon at Sun Oct 18 15:52:11 IST 2026
[2026-10-18 15:52:11,537.537 INFO    ] ================================================
[2026-10-18 15:52:12,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:52:12
[2026-10-18 15:52:12,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:52:12,979.979 INFO    ] Initializing speech engine...
[2026-10-18 15:52:12,988.988 INFO    ] 2026-10-18 15:52:12
[2026-10-18 15:52:13,283.283 INFO    ] 2026-10-18 15:52:13
[2026-10-18 15:52:13,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:52:13,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:52:13,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:52:13,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:52:13,701.701 INFO    ] time= 18/10/2026 15:52:13
[2026-10-18 15:52:13,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:52:13,712.712 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:52:13,843.843 INFO    ] No existing commands found in stream
[2026-10-18 15:52:18,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:52:18,871.871 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-18 15:52:22,308.308 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:52:22,311.311 INFO    ] Checking for system updates...
[2026-10-18 15:52:22,350.350 INFO    ] 200
[2026-10-18 15:52:22,353.353 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:52:22,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:52:22,407.407 INFO    ] No update needed
[2026-10-18 15:52:22,410.410 INFO    ] Checking for camera pi updates...
[2026-10-18 15:52:22,444.444 INFO    ] 200
[2026-10-18 15:52:22,446.446 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:52:22,487.487 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:52:32,502.502 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:52:32,539.539 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:52:32,550.550 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:52:32,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:52:32,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:52:32,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:52:34,603.603 INFO    ] ================================================
[2026-10-18 15:52:34,618.618 INFO    ] Launching Daemon at Sun Oct 18 15:52:34 IST 2026
[2026-10-18 15:52:34,629.629 INFO    ] ================================================
[2026-10-18 15:52:35,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:52:35
[2026-10-18 15:52:35,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:52:36,084.084 INFO    ] Initializing speech engine...
[2026-10-18 15:52:36,095.095 INFO    ] 2026-10-18 15:52:36
[2026-10-18 15:52:36,360.360 INFO    ] 2026-10-18 15:52:36
[2026-10-18 15:52:36,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:52:36,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:52:36,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:52:36,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:52:36,916.916 INFO    ] time= 18/10/2026 15:52:36
[2026-10-18 15:52:36,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:52:36,938.938 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:52:37,068.068 INFO    ] No existing commands found in stream
[2026-10-18 15:52:42,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:52:42,089.089 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-18 15:52:45,507.507 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:52:45,510.510 INFO    ] Checking for system updates...
[2026-10-18 15:52:45,550.550 INFO    ] 200
[2026-10-18 15:52:45,553.553 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:52:45,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:52:45,620.620 INFO    ] No update needed
[2026-10-18 15:52:45,623.623 INFO    ] Checking for camera pi updates...
[2026-10-18 15:52:45,661.661 INFO    ] 200
[2026-10-18 15:52:45,663.663 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:52:45,709.709 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:52:55,725.725 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:52:55,760.760 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:52:55,769.769 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:52:55,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:52:55,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:52:55,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:52:57,824.824 INFO    ] ================================================
[2026-10-18 15:52:57,840.840 INFO    ] Launching Daemon at Sun Oct 18 15:52:57 IST 2026
[2026-10-18 15:52:57,851.851 INFO    ] ================================================
[2026-10-18 15:52:58,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:52:58
[2026-10-18 15:52:59,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:52:59,315.315 INFO    ] Initializing speech engine...
[2026-10-18 15:52:59,326.326 INFO    ] 2026-10-18 15:52:59
[2026-10-18 15:52:59,603.603 INFO    ] 2026-10-18 15:52:59
[2026-10-18 15:52:59,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:52:59,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:52:59,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:53:00,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:53:00,158.158 INFO    ] time= 18/10/2026 15:53:00
[2026-10-18 15:53:00,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:53:00,211.211 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:53:00,359.359 INFO    ] No existing commands found in stream
[2026-10-18 15:53:05,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:53:05,394.394 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-18 15:53:07,757.757 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:53:07,760.760 INFO    ] Checking for system updates...
[2026-10-18 15:53:07,797.797 INFO    ] 200
[2026-10-18 15:53:07,800.800 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:53:07,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:53:07,863.863 INFO    ] No update needed
[2026-10-18 15:53:07,866.866 INFO    ] Checking for camera pi updates...
[2026-10-18 15:53:07,905.905 INFO    ] 200
[2026-10-18 15:53:07,908.908 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:53:07,955.955 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:53:17,973.973 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:53:18,013.013 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:53:18,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:53:18,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:53:18,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:53:18,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:53:20,080.080 INFO    ] ================================================
[2026-10-18 15:53:20,095.095 INFO    ] Launching Daemon at Sun Oct 18 15:53:20 IST 2026
[2026-10-18 15:53:20,106.106 INFO    ] ================================================
[2026-10-18 15:53:20,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:53:20
[2026-10-18 15:53:21,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:53:21,582.582 INFO    ] Initializing speech engine...
[2026-10-18 15:53:21,590.590 INFO    ] 2026-10-18 15:53:21
[2026-10-18 15:53:21,851.851 INFO    ] 2026-10-18 15:53:21
[2026-10-18 15:53:21,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:53:22,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:53:22,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:53:22,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:53:22,343.343 INFO    ] time= 18/10/2026 15:53:22
[2026-10-18 15:53:22,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:53:22,406.406 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:53:22,551.551 INFO    ] No existing commands found in stream
[2026-10-18 15:53:27,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:53:27,573.573 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-18 15:53:30,049.049 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:53:30,051.051 INFO    ] Checking for system updates...
[2026-10-18 15:53:30,087.087 INFO    ] 200
[2026-10-18 15:53:30,089.089 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:53:30,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:53:30,144.144 INFO    ] No update needed
[2026-10-18 15:53:30,147.147 INFO    ] Checking for camera pi updates...
[2026-10-18 15:53:30,182.182 INFO    ] 200
[2026-10-18 15:53:30,184.184 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:53:30,229.229 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:53:40,244.244 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:53:40,279.279 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:53:40,288.288 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:53:40,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:53:40,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:53:40,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:53:42,340.340 INFO    ] ================================================
[2026-10-18 15:53:42,356.356 INFO    ] Launching Daemon at Sun Oct 18 15:53:42 IST 2026
[2026-10-18 15:53:42,367.367 INFO    ] ================================================
[2026-10-18 15:53:43,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:53:43
[2026-10-18 15:53:43,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:53:44,055.055 INFO    ] Initializing speech engine...
[2026-10-18 15:53:44,065.065 INFO    ] 2026-10-18 15:53:44
[2026-10-18 15:53:44,393.393 INFO    ] 2026-10-18 15:53:44
[2026-10-18 15:53:44,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:53:44,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:53:44,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:53:44,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:53:44,944.944 INFO    ] time= 18/10/2026 15:53:44
[2026-10-18 15:53:44,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:53:45,037.037 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:53:45,161.161 INFO    ] No existing commands found in stream
[2026-10-18 15:53:50,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:53:50,201.201 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-18 15:53:50,953.953 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:53:50,956.956 INFO    ] Checking for system updates...
[2026-10-18 15:53:50,999.999 INFO    ] 200
[2026-10-18 15:53:51,002.002 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:53:51,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:53:51,066.066 INFO    ] No update needed
[2026-10-18 15:53:51,069.069 INFO    ] Checking for camera pi updates...
[2026-10-18 15:53:51,108.108 INFO    ] 200
[2026-10-18 15:53:51,111.111 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:53:51,157.157 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:54:01,175.175 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:54:01,216.216 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:54:01,227.227 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:54:01,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:54:01,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:54:01,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:54:03,286.286 INFO    ] ================================================
[2026-10-18 15:54:03,301.301 INFO    ] Launching Daemon at Sun Oct 18 15:54:03 IST 2026
[2026-10-18 15:54:03,312.312 INFO    ] ================================================
[2026-10-18 15:54:03,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:54:03
[2026-10-18 15:54:04,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:54:04,770.770 INFO    ] Initializing speech engine...
[2026-10-18 15:54:04,777.777 INFO    ] 2026-10-18 15:54:04
[2026-10-18 15:54:05,027.027 INFO    ] 2026-10-18 15:54:05
[2026-10-18 15:54:05,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:54:05,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:54:05,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:54:05,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:54:05,522.522 INFO    ] time= 18/10/2026 15:54:05
[2026-10-18 15:54:05,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:54:05,589.589 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:54:05,748.748 INFO    ] No existing commands found in stream
[2026-10-18 15:54:10,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:54:10,783.783 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-18 15:54:14,584.584 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:54:14,587.587 INFO    ] Checking for system updates...
[2026-10-18 15:54:14,623.623 INFO    ] 200
[2026-10-18 15:54:14,626.626 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:54:14,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:54:14,684.684 INFO    ] No update needed
[2026-10-18 15:54:14,686.686 INFO    ] Checking for camera pi updates...
[2026-10-18 15:54:14,722.722 INFO    ] 200
[2026-10-18 15:54:14,724.724 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:54:14,774.774 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:54:24,789.789 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:54:24,824.824 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:54:24,834.834 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:54:24,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:54:24,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:54:24,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:54:26,887.887 INFO    ] ================================================
[2026-10-18 15:54:26,901.901 INFO    ] Launching Daemon at Sun Oct 18 15:54:26 IST 2026
[2026-10-18 15:54:26,912.912 INFO    ] ================================================
[2026-10-18 15:54:27,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:54:27
[2026-10-18 15:54:28,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:54:28,373.373 INFO    ] Initializing speech engine...
[2026-10-18 15:54:28,380.380 INFO    ] 2026-10-18 15:54:28
[2026-10-18 15:54:28,640.640 INFO    ] 2026-10-18 15:54:28
[2026-10-18 15:54:28,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:54:28,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:54:28,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:54:29,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:54:29,182.182 INFO    ] time= 18/10/2026 15:54:29
[2026-10-18 15:54:29,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:54:29,207.207 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:54:29,328.328 INFO    ] No existing commands found in stream
[2026-10-18 15:54:34,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:54:34,352.352 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-18 15:54:36,794.794 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:54:36,797.797 INFO    ] Checking for system updates...
[2026-10-18 15:54:36,833.833 INFO    ] 200
[2026-10-18 15:54:36,836.836 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:54:36,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:54:36,890.890 INFO    ] No update needed
[2026-10-18 15:54:36,893.893 INFO    ] Checking for camera pi updates...
[2026-10-18 15:54:36,926.926 INFO    ] 200
[2026-10-18 15:54:36,929.929 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:54:36,969.969 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:54:46,985.985 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:54:47,021.021 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:54:47,031.031 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:54:47,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:54:47,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:54:47,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:54:49,084.084 INFO    ] ================================================
[2026-10-18 15:54:49,099.099 INFO    ] Launching Daemon at Sun Oct 18 15:54:49 IST 2026
[2026-10-18 15:54:49,110.110 INFO    ] ================================================
[2026-10-18 15:54:49,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:54:49
[2026-10-18 15:54:50,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:54:50,532.532 INFO    ] Initializing speech engine...
[2026-10-18 15:54:50,551.551 INFO    ] 2026-10-18 15:54:50
[2026-10-18 15:54:50,798.798 INFO    ] 2026-10-18 15:54:50
[2026-10-18 15:54:50,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:54:51,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:54:51,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:54:51,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:54:51,349.349 INFO    ] time= 18/10/2026 15:54:51
[2026-10-18 15:54:51,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:54:51,374.374 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:54:51,503.503 INFO    ] No existing commands found in stream
[2026-10-18 15:54:56,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:54:56,519.519 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-18 15:54:59,471.471 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:54:59,473.473 INFO    ] Checking for system updates...
[2026-10-18 15:54:59,509.509 INFO    ] 200
[2026-10-18 15:54:59,512.512 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:54:59,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:54:59,568.568 INFO    ] No update needed
[2026-10-18 15:54:59,570.570 INFO    ] Checking for camera pi updates...
[2026-10-18 15:54:59,609.609 INFO    ] 200
[2026-10-18 15:54:59,611.611 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:54:59,651.651 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:55:09,667.667 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:55:09,701.701 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:55:09,711.711 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:55:09,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:55:09,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:55:09,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:55:11,763.763 INFO    ] ================================================
[2026-10-18 15:55:11,778.778 INFO    ] Launching Daemon at Sun Oct 18 15:55:11 IST 2026
[2026-10-18 15:55:11,789.789 INFO    ] ================================================
[2026-10-18 15:55:12,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:55:12
[2026-10-18 15:55:13,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:55:13,315.315 INFO    ] Initializing speech engine...
[2026-10-18 15:55:13,322.322 INFO    ] 2026-10-18 15:55:13
[2026-10-18 15:55:13,599.599 INFO    ] 2026-10-18 15:55:13
[2026-10-18 15:55:13,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:55:13,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:55:13,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:55:14,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:55:14,152.152 INFO    ] time= 18/10/2026 15:55:14
[2026-10-18 15:55:14,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:55:14,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:55:14,342.342 INFO    ] No existing commands found in stream
[2026-10-18 15:55:19,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:55:19,371.371 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-18 15:55:23,485.485 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:55:23,488.488 INFO    ] Checking for system updates...
[2026-10-18 15:55:23,524.524 INFO    ] 200
[2026-10-18 15:55:23,527.527 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:55:23,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:55:23,590.590 INFO    ] No update needed
[2026-10-18 15:55:23,592.592 INFO    ] Checking for camera pi updates...
[2026-10-18 15:55:23,626.626 INFO    ] 200
[2026-10-18 15:55:23,629.629 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:55:23,670.670 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:55:33,683.683 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:55:33,718.718 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:55:33,727.727 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:55:33,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:55:33,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:55:33,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:55:35,779.779 INFO    ] ================================================
[2026-10-18 15:55:35,795.795 INFO    ] Launching Daemon at Sun Oct 18 15:55:35 IST 2026
[2026-10-18 15:55:35,806.806 INFO    ] ================================================
[2026-10-18 15:55:36,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:55:36
[2026-10-18 15:55:37,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:55:37,478.478 INFO    ] Initializing speech engine...
[2026-10-18 15:55:37,487.487 INFO    ] 2026-10-18 15:55:37
[2026-10-18 15:55:37,779.779 INFO    ] 2026-10-18 15:55:37
[2026-10-18 15:55:37,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:55:38,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:55:38,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:55:38,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:55:38,202.202 INFO    ] time= 18/10/2026 15:55:38
[2026-10-18 15:55:38,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:55:38,280.280 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:55:38,408.408 INFO    ] No existing commands found in stream
[2026-10-18 15:55:43,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:55:43,440.440 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-18 15:55:47,160.160 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 15:55:47,163.163 INFO    ] Checking for system updates...
[2026-10-18 15:55:47,200.200 INFO    ] 200
[2026-10-18 15:55:47,203.203 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:55:47,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:55:47,257.257 INFO    ] No update needed
[2026-10-18 15:55:47,260.260 INFO    ] Checking for camera pi updates...
[2026-10-18 15:55:47,294.294 INFO    ] 200
[2026-10-18 15:55:47,297.297 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:55:47,337.337 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:55:57,352.352 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:55:57,386.386 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:55:57,396.396 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:55:57,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:55:57,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:55:57,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:55:59,448.448 INFO    ] ================================================
[2026-10-18 15:55:59,463.463 INFO    ] Launching Daemon at Sun Oct 18 15:55:59 IST 2026
[2026-10-18 15:55:59,475.475 INFO    ] ================================================
[2026-10-18 15:56:00,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:56:00
[2026-10-18 15:56:00,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:56:00,906.906 INFO    ] Initializing speech engine...
[2026-10-18 15:56:00,916.916 INFO    ] 2026-10-18 15:56:00
[2026-10-18 15:56:01,172.172 INFO    ] 2026-10-18 15:56:01
[2026-10-18 15:56:01,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:56:01,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:56:01,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:56:01,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:56:01,743.743 INFO    ] time= 18/10/2026 15:56:01
[2026-10-18 15:56:01,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:56:01,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:56:01,875.875 INFO    ] No existing commands found in stream
[2026-10-18 15:56:06,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:56:06,888.888 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-18 15:56:10,284.284 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:56:10,287.287 INFO    ] Checking for system updates...
[2026-10-18 15:56:10,325.325 INFO    ] 200
[2026-10-18 15:56:10,328.328 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:56:10,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:56:10,383.383 INFO    ] No update needed
[2026-10-18 15:56:10,385.385 INFO    ] Checking for camera pi updates...
[2026-10-18 15:56:10,421.421 INFO    ] 200
[2026-10-18 15:56:10,424.424 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:56:10,468.468 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:56:20,483.483 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:56:20,519.519 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:56:20,529.529 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:56:20,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:56:20,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:56:20,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:56:22,585.585 INFO    ] ================================================
[2026-10-18 15:56:22,601.601 INFO    ] Launching Daemon at Sun Oct 18 15:56:22 IST 2026
[2026-10-18 15:56:22,611.611 INFO    ] ================================================
[2026-10-18 15:56:23,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:56:23
[2026-10-18 15:56:23,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:56:24,031.031 INFO    ] Initializing speech engine...
[2026-10-18 15:56:24,040.040 INFO    ] 2026-10-18 15:56:24
[2026-10-18 15:56:24,298.298 INFO    ] 2026-10-18 15:56:24
[2026-10-18 15:56:24,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:56:24,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:56:24,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:56:24,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:56:24,841.841 INFO    ] time= 18/10/2026 15:56:24
[2026-10-18 15:56:24,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:56:24,864.864 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:56:24,987.987 INFO    ] No existing commands found in stream
[2026-10-18 15:56:30,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:56:30,006.006 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-18 15:56:32,438.438 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:56:32,441.441 INFO    ] Checking for system updates...
[2026-10-18 15:56:32,479.479 INFO    ] 200
[2026-10-18 15:56:32,482.482 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:56:32,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:56:32,547.547 INFO    ] No update needed
[2026-10-18 15:56:32,549.549 INFO    ] Checking for camera pi updates...
[2026-10-18 15:56:32,588.588 INFO    ] 200
[2026-10-18 15:56:32,591.591 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:56:32,640.640 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:56:42,655.655 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:56:42,690.690 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:56:42,699.699 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:56:42,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:56:42,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:56:42,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:56:44,753.753 INFO    ] ================================================
[2026-10-18 15:56:44,768.768 INFO    ] Launching Daemon at Sun Oct 18 15:56:44 IST 2026
[2026-10-18 15:56:44,779.779 INFO    ] ================================================
[2026-10-18 15:56:45,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:56:45
[2026-10-18 15:56:46,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:56:46,401.401 INFO    ] Initializing speech engine...
[2026-10-18 15:56:46,410.410 INFO    ] 2026-10-18 15:56:46
[2026-10-18 15:56:46,683.683 INFO    ] 2026-10-18 15:56:46
[2026-10-18 15:56:46,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:56:46,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:56:46,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:56:47,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:56:47,225.225 INFO    ] time= 18/10/2026 15:56:47
[2026-10-18 15:56:47,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:56:47,300.300 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:56:47,417.417 INFO    ] No existing commands found in stream
[2026-10-18 15:56:52,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:56:52,449.449 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-18 15:56:54,015.015 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:56:54,017.017 INFO    ] Checking for system updates...
[2026-10-18 15:56:54,054.054 INFO    ] 200
[2026-10-18 15:56:54,057.057 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:56:54,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:56:54,118.118 INFO    ] No update needed
[2026-10-18 15:56:54,120.120 INFO    ] Checking for camera pi updates...
[2026-10-18 15:56:54,157.157 INFO    ] 200
[2026-10-18 15:56:54,160.160 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:56:54,204.204 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:57:04,218.218 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:57:04,252.252 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:57:04,262.262 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:57:04,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:57:04,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:57:04,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:57:06,314.314 INFO    ] ================================================
[2026-10-18 15:57:06,330.330 INFO    ] Launching Daemon at Sun Oct 18 15:57:06 IST 2026
[2026-10-18 15:57:06,340.340 INFO    ] ================================================
[2026-10-18 15:57:06,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:57:06
[2026-10-18 15:57:07,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:57:07,748.748 INFO    ] Initializing speech engine...
[2026-10-18 15:57:07,761.761 INFO    ] 2026-10-18 15:57:07
[2026-10-18 15:57:08,029.029 INFO    ] 2026-10-18 15:57:08
[2026-10-18 15:57:08,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:57:08,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:57:08,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:57:08,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:57:08,599.599 INFO    ] time= 18/10/2026 15:57:08
[2026-10-18 15:57:08,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:57:08,627.627 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:57:08,761.761 INFO    ] No existing commands found in stream
[2026-10-18 15:57:13,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:57:13,776.776 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-18 15:57:16,327.327 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:57:16,329.329 INFO    ] Checking for system updates...
[2026-10-18 15:57:16,366.366 INFO    ] 200
[2026-10-18 15:57:16,369.369 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:57:16,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:57:16,425.425 INFO    ] No update needed
[2026-10-18 15:57:16,428.428 INFO    ] Checking for camera pi updates...
[2026-10-18 15:57:16,467.467 INFO    ] 200
[2026-10-18 15:57:16,470.470 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:57:16,515.515 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:57:26,532.532 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:57:26,573.573 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:57:26,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:57:26,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:57:26,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:57:26,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:57:28,641.641 INFO    ] ================================================
[2026-10-18 15:57:28,657.657 INFO    ] Launching Daemon at Sun Oct 18 15:57:28 IST 2026
[2026-10-18 15:57:28,668.668 INFO    ] ================================================
[2026-10-18 15:57:29,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:57:29
[2026-10-18 15:57:29,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:57:30,232.232 INFO    ] Initializing speech engine...
[2026-10-18 15:57:30,248.248 INFO    ] 2026-10-18 15:57:30
[2026-10-18 15:57:30,532.532 INFO    ] 2026-10-18 15:57:30
[2026-10-18 15:57:30,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:57:30,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:57:30,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:57:30,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:57:30,963.963 INFO    ] time= 18/10/2026 15:57:30
[2026-10-18 15:57:30,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:57:30,997.997 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:57:31,136.136 INFO    ] No existing commands found in stream
[2026-10-18 15:57:36,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:57:36,159.159 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-18 15:57:37,786.786 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:57:37,788.788 INFO    ] Checking for system updates...
[2026-10-18 15:57:37,828.828 INFO    ] 200
[2026-10-18 15:57:37,830.830 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:57:37,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:57:37,892.892 INFO    ] No update needed
[2026-10-18 15:57:37,895.895 INFO    ] Checking for camera pi updates...
[2026-10-18 15:57:37,928.928 INFO    ] 200
[2026-10-18 15:57:37,930.930 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:57:37,977.977 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:57:47,991.991 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:57:48,026.026 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:57:48,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:57:48,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:57:48,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:57:48,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:57:50,087.087 INFO    ] ================================================
[2026-10-18 15:57:50,103.103 INFO    ] Launching Daemon at Sun Oct 18 15:57:50 IST 2026
[2026-10-18 15:57:50,114.114 INFO    ] ================================================
[2026-10-18 15:57:50,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:57:50
[2026-10-18 15:57:51,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:57:51,792.792 INFO    ] Initializing speech engine...
[2026-10-18 15:57:51,804.804 INFO    ] 2026-10-18 15:57:51
[2026-10-18 15:57:52,116.116 INFO    ] 2026-10-18 15:57:52
[2026-10-18 15:57:52,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:57:52,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:57:52,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:57:52,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:57:52,619.619 INFO    ] time= 18/10/2026 15:57:52
[2026-10-18 15:57:52,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:57:52,648.648 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:57:52,783.783 INFO    ] No existing commands found in stream
[2026-10-18 15:57:57,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:57:57,801.801 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-18 15:58:00,141.141 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 15:58:00,144.144 INFO    ] Checking for system updates...
[2026-10-18 15:58:00,183.183 INFO    ] 200
[2026-10-18 15:58:00,186.186 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:58:00,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:58:00,248.248 INFO    ] No update needed
[2026-10-18 15:58:00,250.250 INFO    ] Checking for camera pi updates...
[2026-10-18 15:58:00,283.283 INFO    ] 200
[2026-10-18 15:58:00,286.286 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:58:00,331.331 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:58:10,344.344 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:58:10,379.379 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:58:10,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:58:10,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:58:10,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:58:10,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:58:12,441.441 INFO    ] ================================================
[2026-10-18 15:58:12,456.456 INFO    ] Launching Daemon at Sun Oct 18 15:58:12 IST 2026
[2026-10-18 15:58:12,467.467 INFO    ] ================================================
[2026-10-18 15:58:13,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:58:13
[2026-10-18 15:58:13,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:58:13,907.907 INFO    ] Initializing speech engine...
[2026-10-18 15:58:13,916.916 INFO    ] 2026-10-18 15:58:13
[2026-10-18 15:58:14,176.176 INFO    ] 2026-10-18 15:58:14
[2026-10-18 15:58:14,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:58:14,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:58:14,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:58:14,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:58:14,640.640 INFO    ] time= 18/10/2026 15:58:14
[2026-10-18 15:58:14,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:58:14,749.749 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:58:14,907.907 INFO    ] No existing commands found in stream
[2026-10-18 15:58:19,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:58:19,927.927 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-18 15:58:22,191.191 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 15:58:22,194.194 INFO    ] Checking for system updates...
[2026-10-18 15:58:22,233.233 INFO    ] 200
[2026-10-18 15:58:22,235.235 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:58:22,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:58:22,290.290 INFO    ] No update needed
[2026-10-18 15:58:22,292.292 INFO    ] Checking for camera pi updates...
[2026-10-18 15:58:22,325.325 INFO    ] 200
[2026-10-18 15:58:22,328.328 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:58:22,368.368 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:58:32,382.382 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:58:32,419.419 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:58:32,429.429 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:58:32,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:58:32,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:58:32,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:58:34,482.482 INFO    ] ================================================
[2026-10-18 15:58:34,497.497 INFO    ] Launching Daemon at Sun Oct 18 15:58:34 IST 2026
[2026-10-18 15:58:34,513.513 INFO    ] ================================================
[2026-10-18 15:58:35,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:58:35
[2026-10-18 15:58:35,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:58:35,914.914 INFO    ] Initializing speech engine...
[2026-10-18 15:58:35,922.922 INFO    ] 2026-10-18 15:58:35
[2026-10-18 15:58:36,207.207 INFO    ] 2026-10-18 15:58:36
[2026-10-18 15:58:36,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:58:36,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:58:36,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:58:36,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:58:36,707.707 INFO    ] time= 18/10/2026 15:58:36
[2026-10-18 15:58:36,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:58:36,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:58:36,946.946 INFO    ] No existing commands found in stream
[2026-10-18 15:58:41,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:58:41,969.969 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-18 15:58:44,890.890 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 15:58:44,893.893 INFO    ] Checking for system updates...
[2026-10-18 15:58:44,933.933 INFO    ] 200
[2026-10-18 15:58:44,935.935 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:58:44,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:58:44,989.989 INFO    ] No update needed
[2026-10-18 15:58:44,992.992 INFO    ] Checking for camera pi updates...
[2026-10-18 15:58:45,025.025 INFO    ] 200
[2026-10-18 15:58:45,027.027 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:58:45,073.073 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:58:55,088.088 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:58:55,122.122 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:58:55,132.132 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:58:55,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:58:55,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:58:55,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:58:57,184.184 INFO    ] ================================================
[2026-10-18 15:58:57,199.199 INFO    ] Launching Daemon at Sun Oct 18 15:58:57 IST 2026
[2026-10-18 15:58:57,209.209 INFO    ] ================================================
[2026-10-18 15:58:57,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:58:57
[2026-10-18 15:58:58,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:58:58,708.708 INFO    ] Initializing speech engine...
[2026-10-18 15:58:58,717.717 INFO    ] 2026-10-18 15:58:58
[2026-10-18 15:58:58,967.967 INFO    ] 2026-10-18 15:58:58
[2026-10-18 15:58:59,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:58:59,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:58:59,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:58:59,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:58:59,524.524 INFO    ] time= 18/10/2026 15:58:59
[2026-10-18 15:58:59,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:58:59,547.547 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:58:59,679.679 INFO    ] No existing commands found in stream
[2026-10-18 15:59:04,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:59:04,695.695 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-18 15:59:05,349.349 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:59:05,352.352 INFO    ] Checking for system updates...
[2026-10-18 15:59:05,391.391 INFO    ] 200
[2026-10-18 15:59:05,394.394 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:59:05,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:59:05,454.454 INFO    ] No update needed
[2026-10-18 15:59:05,457.457 INFO    ] Checking for camera pi updates...
[2026-10-18 15:59:05,492.492 INFO    ] 200
[2026-10-18 15:59:05,494.494 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:59:05,540.540 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:59:15,556.556 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:59:15,592.592 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:59:15,603.603 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:59:15,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:59:15,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:59:15,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:59:17,655.655 INFO    ] ================================================
[2026-10-18 15:59:17,671.671 INFO    ] Launching Daemon at Sun Oct 18 15:59:17 IST 2026
[2026-10-18 15:59:17,681.681 INFO    ] ================================================
[2026-10-18 15:59:18,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:59:18
[2026-10-18 15:59:18,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:59:19,084.084 INFO    ] Initializing speech engine...
[2026-10-18 15:59:19,107.107 INFO    ] 2026-10-18 15:59:19
[2026-10-18 15:59:19,362.362 INFO    ] 2026-10-18 15:59:19
[2026-10-18 15:59:19,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:59:19,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:59:19,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:59:19,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:59:19,862.862 INFO    ] time= 18/10/2026 15:59:19
[2026-10-18 15:59:19,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:59:19,970.970 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:59:20,119.119 INFO    ] No existing commands found in stream
[2026-10-18 15:59:25,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:59:25,147.147 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-18 15:59:26,165.165 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 15:59:26,168.168 INFO    ] Checking for system updates...
[2026-10-18 15:59:26,204.204 INFO    ] 200
[2026-10-18 15:59:26,206.206 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:59:26,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 15:59:26,271.271 INFO    ] No update needed
[2026-10-18 15:59:26,274.274 INFO    ] Checking for camera pi updates...
[2026-10-18 15:59:26,310.310 INFO    ] 200
[2026-10-18 15:59:26,313.313 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:59:26,352.352 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 15:59:36,368.368 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 15:59:36,403.403 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 15:59:36,413.413 INFO    ] Script finished. Safe exiting...
[2026-10-18 15:59:36,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 15:59:36,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 15:59:36,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 15:59:38,466.466 INFO    ] ================================================
[2026-10-18 15:59:38,481.481 INFO    ] Launching Daemon at Sun Oct 18 15:59:38 IST 2026
[2026-10-18 15:59:38,492.492 INFO    ] ================================================
[2026-10-18 15:59:39,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 15:59:39
[2026-10-18 15:59:39,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 15:59:39,940.940 INFO    ] Initializing speech engine...
[2026-10-18 15:59:39,945.945 INFO    ] 2026-10-18 15:59:39
[2026-10-18 15:59:40,190.190 INFO    ] 2026-10-18 15:59:40
[2026-10-18 15:59:40,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 15:59:40,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 15:59:40,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 15:59:40,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 15:59:40,743.743 INFO    ] time= 18/10/2026 15:59:40
[2026-10-18 15:59:40,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 15:59:40,769.769 INFO    ] Checking for existing commands in stream...
[2026-10-18 15:59:40,901.901 INFO    ] No existing commands found in stream
[2026-10-18 15:59:45,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 15:59:45,926.926 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-18 15:59:50,088.088 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 15:59:50,090.090 INFO    ] Checking for system updates...
[2026-10-18 15:59:50,129.129 INFO    ] 200
[2026-10-18 15:59:50,132.132 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:59:50,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 15:59:50,190.190 INFO    ] No update needed
[2026-10-18 15:59:50,193.193 INFO    ] Checking for camera pi updates...
[2026-10-18 15:59:50,231.231 INFO    ] 200
[2026-10-18 15:59:50,234.234 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 15:59:50,287.287 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:00:00,303.303 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:00:00,340.340 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:00:00,350.350 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:00:00,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:00:00,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:00:00,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:00:02,466.466 INFO    ] ================================================
[2026-10-18 16:00:02,529.529 INFO    ] Launching Daemon at Sun Oct 18 16:00:02 IST 2026
[2026-10-18 16:00:02,561.561 INFO    ] ================================================
[2026-10-18 16:00:04,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:00:04
[2026-10-18 16:00:06,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:00:06,617.617 INFO    ] Initializing speech engine...
[2026-10-18 16:00:06,628.628 INFO    ] 2026-10-18 16:00:06
[2026-10-18 16:00:06,897.897 INFO    ] 2026-10-18 16:00:06
[2026-10-18 16:00:06,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:00:07,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:00:07,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:00:07,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:00:07,409.409 INFO    ] time= 18/10/2026 16:00:07
[2026-10-18 16:00:07,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:00:07,507.507 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:00:07,633.633 INFO    ] No existing commands found in stream
[2026-10-18 16:00:12,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:00:12,652.652 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-18 16:00:13,805.805 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:00:13,807.807 INFO    ] Checking for system updates...
[2026-10-18 16:00:13,843.843 INFO    ] 200
[2026-10-18 16:00:13,845.845 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:00:13,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:00:13,904.904 INFO    ] No update needed
[2026-10-18 16:00:13,906.906 INFO    ] Checking for camera pi updates...
[2026-10-18 16:00:13,942.942 INFO    ] 200
[2026-10-18 16:00:13,944.944 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:00:13,988.988 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:00:24,002.002 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:00:24,037.037 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:00:24,046.046 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:00:24,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:00:24,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:00:24,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:00:26,098.098 INFO    ] ================================================
[2026-10-18 16:00:26,114.114 INFO    ] Launching Daemon at Sun Oct 18 16:00:26 IST 2026
[2026-10-18 16:00:26,125.125 INFO    ] ================================================
[2026-10-18 16:00:26,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:00:26
[2026-10-18 16:00:27,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:00:27,709.709 INFO    ] Initializing speech engine...
[2026-10-18 16:00:27,720.720 INFO    ] 2026-10-18 16:00:27
[2026-10-18 16:00:27,965.965 INFO    ] 2026-10-18 16:00:27
[2026-10-18 16:00:28,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:00:28,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:00:28,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:00:28,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:00:28,455.455 INFO    ] time= 18/10/2026 16:00:28
[2026-10-18 16:00:28,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:00:28,528.528 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:00:28,657.657 INFO    ] No existing commands found in stream
[2026-10-18 16:00:33,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:00:33,693.693 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-18 16:00:36,414.414 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:00:36,417.417 INFO    ] Checking for system updates...
[2026-10-18 16:00:36,456.456 INFO    ] 200
[2026-10-18 16:00:36,459.459 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:00:36,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:00:36,514.514 INFO    ] No update needed
[2026-10-18 16:00:36,517.517 INFO    ] Checking for camera pi updates...
[2026-10-18 16:00:36,553.553 INFO    ] 200
[2026-10-18 16:00:36,556.556 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:00:36,600.600 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:00:46,614.614 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:00:46,652.652 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:00:46,663.663 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:00:46,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:00:46,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:00:46,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:00:48,717.717 INFO    ] ================================================
[2026-10-18 16:00:48,733.733 INFO    ] Launching Daemon at Sun Oct 18 16:00:48 IST 2026
[2026-10-18 16:00:48,745.745 INFO    ] ================================================
[2026-10-18 16:00:49,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:00:49
[2026-10-18 16:00:49,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:00:50,162.162 INFO    ] Initializing speech engine...
[2026-10-18 16:00:50,171.171 INFO    ] 2026-10-18 16:00:50
[2026-10-18 16:00:50,429.429 INFO    ] 2026-10-18 16:00:50
[2026-10-18 16:00:50,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:00:50,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:00:50,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:00:50,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:00:51,003.003 INFO    ] time= 18/10/2026 16:00:50
[2026-10-18 16:00:51,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:00:51,050.050 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:00:51,157.157 INFO    ] No existing commands found in stream
[2026-10-18 16:00:56,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:00:56,175.175 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-18 16:00:59,907.907 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:00:59,910.910 INFO    ] Checking for system updates...
[2026-10-18 16:00:59,946.946 INFO    ] 200
[2026-10-18 16:00:59,948.948 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:01:00,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:01:00,002.002 INFO    ] No update needed
[2026-10-18 16:01:00,005.005 INFO    ] Checking for camera pi updates...
[2026-10-18 16:01:00,038.038 INFO    ] 200
[2026-10-18 16:01:00,040.040 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:01:00,085.085 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:01:10,100.100 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:01:10,135.135 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:01:10,144.144 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:01:10,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:01:10,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:01:10,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:01:12,197.197 INFO    ] ================================================
[2026-10-18 16:01:12,213.213 INFO    ] Launching Daemon at Sun Oct 18 16:01:12 IST 2026
[2026-10-18 16:01:12,224.224 INFO    ] ================================================
[2026-10-18 16:01:12,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:01:12
[2026-10-18 16:01:13,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:01:13,669.669 INFO    ] Initializing speech engine...
[2026-10-18 16:01:13,678.678 INFO    ] 2026-10-18 16:01:13
[2026-10-18 16:01:13,944.944 INFO    ] 2026-10-18 16:01:13
[2026-10-18 16:01:13,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:01:14,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:01:14,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:01:14,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:01:14,479.479 INFO    ] time= 18/10/2026 16:01:14
[2026-10-18 16:01:14,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:01:14,586.586 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:01:14,686.686 INFO    ] No existing commands found in stream
[2026-10-18 16:01:19,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:01:19,726.726 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-18 16:01:21,676.676 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:01:21,678.678 INFO    ] Checking for system updates...
[2026-10-18 16:01:21,714.714 INFO    ] 200
[2026-10-18 16:01:21,717.717 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:01:21,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:01:21,778.778 INFO    ] No update needed
[2026-10-18 16:01:21,781.781 INFO    ] Checking for camera pi updates...
[2026-10-18 16:01:21,818.818 INFO    ] 200
[2026-10-18 16:01:21,820.820 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:01:21,864.864 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:01:31,879.879 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:01:31,917.917 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:01:31,927.927 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:01:31,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:01:31,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:01:31,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:01:33,986.986 INFO    ] ================================================
[2026-10-18 16:01:34,002.002 INFO    ] Launching Daemon at Sun Oct 18 16:01:33 IST 2026
[2026-10-18 16:01:34,013.013 INFO    ] ================================================
[2026-10-18 16:01:34,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:01:34
[2026-10-18 16:01:35,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:01:35,421.421 INFO    ] Initializing speech engine...
[2026-10-18 16:01:35,441.441 INFO    ] 2026-10-18 16:01:35
[2026-10-18 16:01:35,694.694 INFO    ] 2026-10-18 16:01:35
[2026-10-18 16:01:35,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:01:35,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:01:35,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:01:36,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:01:36,238.238 INFO    ] time= 18/10/2026 16:01:36
[2026-10-18 16:01:36,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:01:36,262.262 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:01:36,389.389 INFO    ] No existing commands found in stream
[2026-10-18 16:01:41,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:01:41,407.407 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-18 16:01:43,647.647 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:01:43,650.650 INFO    ] Checking for system updates...
[2026-10-18 16:01:43,685.685 INFO    ] 200
[2026-10-18 16:01:43,688.688 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:01:43,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:01:43,752.752 INFO    ] No update needed
[2026-10-18 16:01:43,755.755 INFO    ] Checking for camera pi updates...
[2026-10-18 16:01:43,793.793 INFO    ] 200
[2026-10-18 16:01:43,795.795 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:01:43,835.835 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:01:53,848.848 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:01:53,891.891 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:01:53,903.903 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:01:53,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:01:53,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:01:53,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:01:55,964.964 INFO    ] ================================================
[2026-10-18 16:01:55,980.980 INFO    ] Launching Daemon at Sun Oct 18 16:01:55 IST 2026
[2026-10-18 16:01:55,992.992 INFO    ] ================================================
[2026-10-18 16:01:56,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:01:56
[2026-10-18 16:01:57,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:01:57,514.514 INFO    ] Initializing speech engine...
[2026-10-18 16:01:57,519.519 INFO    ] 2026-10-18 16:01:57
[2026-10-18 16:01:57,804.804 INFO    ] 2026-10-18 16:01:57
[2026-10-18 16:01:57,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:01:58,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:01:58,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:01:58,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:01:58,340.340 INFO    ] time= 18/10/2026 16:01:58
[2026-10-18 16:01:58,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:01:58,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:01:58,513.513 INFO    ] No existing commands found in stream
[2026-10-18 16:02:03,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:02:03,541.541 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-18 16:02:05,036.036 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:02:05,040.040 INFO    ] Checking for system updates...
[2026-10-18 16:02:05,078.078 INFO    ] 200
[2026-10-18 16:02:05,080.080 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:02:05,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:02:05,144.144 INFO    ] No update needed
[2026-10-18 16:02:05,146.146 INFO    ] Checking for camera pi updates...
[2026-10-18 16:02:05,185.185 INFO    ] 200
[2026-10-18 16:02:05,188.188 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:02:05,238.238 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:02:15,255.255 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:02:15,296.296 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:02:15,307.307 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:02:15,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:02:15,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:02:15,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:02:17,362.362 INFO    ] ================================================
[2026-10-18 16:02:17,379.379 INFO    ] Launching Daemon at Sun Oct 18 16:02:17 IST 2026
[2026-10-18 16:02:17,390.390 INFO    ] ================================================
[2026-10-18 16:02:17,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:02:17
[2026-10-18 16:02:18,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:02:18,818.818 INFO    ] Initializing speech engine...
[2026-10-18 16:02:18,827.827 INFO    ] 2026-10-18 16:02:18
[2026-10-18 16:02:19,079.079 INFO    ] 2026-10-18 16:02:19
[2026-10-18 16:02:19,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:02:19,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:02:19,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:02:19,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:02:19,649.649 INFO    ] time= 18/10/2026 16:02:19
[2026-10-18 16:02:19,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:02:19,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:02:19,797.797 INFO    ] No existing commands found in stream
[2026-10-18 16:02:24,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:02:24,821.821 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-18 16:02:26,589.589 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:02:26,591.591 INFO    ] Checking for system updates...
[2026-10-18 16:02:26,627.627 INFO    ] 200
[2026-10-18 16:02:26,630.630 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:02:26,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:02:26,693.693 INFO    ] No update needed
[2026-10-18 16:02:26,696.696 INFO    ] Checking for camera pi updates...
[2026-10-18 16:02:26,729.729 INFO    ] 200
[2026-10-18 16:02:26,732.732 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:02:26,772.772 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:02:36,788.788 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:02:36,822.822 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:02:36,832.832 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:02:36,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:02:36,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:02:36,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:02:38,886.886 INFO    ] ================================================
[2026-10-18 16:02:38,902.902 INFO    ] Launching Daemon at Sun Oct 18 16:02:38 IST 2026
[2026-10-18 16:02:38,914.914 INFO    ] ================================================
[2026-10-18 16:02:39,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:02:39
[2026-10-18 16:02:40,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:02:40,354.354 INFO    ] Initializing speech engine...
[2026-10-18 16:02:40,362.362 INFO    ] 2026-10-18 16:02:40
[2026-10-18 16:02:40,660.660 INFO    ] 2026-10-18 16:02:40
[2026-10-18 16:02:40,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:02:40,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:02:40,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:02:41,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:02:41,099.099 INFO    ] time= 18/10/2026 16:02:41
[2026-10-18 16:02:41,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:02:41,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:02:41,276.276 INFO    ] No existing commands found in stream
[2026-10-18 16:02:46,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:02:46,304.304 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-18 16:02:50,273.273 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:02:50,276.276 INFO    ] Checking for system updates...
[2026-10-18 16:02:50,312.312 INFO    ] 200
[2026-10-18 16:02:50,314.314 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:02:50,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:02:50,385.385 INFO    ] No update needed
[2026-10-18 16:02:50,387.387 INFO    ] Checking for camera pi updates...
[2026-10-18 16:02:50,428.428 INFO    ] 200
[2026-10-18 16:02:50,431.431 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:02:50,478.478 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:03:00,494.494 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db5150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:03:00,530.530 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:03:00,540.540 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:03:00,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:03:00,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:03:00,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:03:02,599.599 INFO    ] ================================================
[2026-10-18 16:03:02,619.619 INFO    ] Launching Daemon at Sun Oct 18 16:03:02 IST 2026
[2026-10-18 16:03:02,637.637 INFO    ] ================================================
[2026-10-18 16:03:03,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:03:03
[2026-10-18 16:03:03,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:03:04,222.222 INFO    ] Initializing speech engine...
[2026-10-18 16:03:04,228.228 INFO    ] 2026-10-18 16:03:04
[2026-10-18 16:03:04,503.503 INFO    ] 2026-10-18 16:03:04
[2026-10-18 16:03:04,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:03:04,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:03:04,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:03:04,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:03:05,004.004 INFO    ] time= 18/10/2026 16:03:04
[2026-10-18 16:03:05,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:03:05,076.076 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:03:05,248.248 INFO    ] No existing commands found in stream
[2026-10-18 16:03:10,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:03:10,281.281 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-18 16:03:11,706.706 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:03:11,708.708 INFO    ] Checking for system updates...
[2026-10-18 16:03:11,745.745 INFO    ] 200
[2026-10-18 16:03:11,748.748 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:03:11,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:03:11,811.811 INFO    ] No update needed
[2026-10-18 16:03:11,814.814 INFO    ] Checking for camera pi updates...
[2026-10-18 16:03:11,849.849 INFO    ] 200
[2026-10-18 16:03:11,852.852 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:03:11,898.898 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:03:21,912.912 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:03:21,952.952 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:03:21,963.963 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:03:21,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:03:21,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:03:21,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:03:24,020.020 INFO    ] ================================================
[2026-10-18 16:03:24,035.035 INFO    ] Launching Daemon at Sun Oct 18 16:03:24 IST 2026
[2026-10-18 16:03:24,047.047 INFO    ] ================================================
[2026-10-18 16:03:24,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:03:24
[2026-10-18 16:03:25,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:03:25,506.506 INFO    ] Initializing speech engine...
[2026-10-18 16:03:25,514.514 INFO    ] 2026-10-18 16:03:25
[2026-10-18 16:03:25,782.782 INFO    ] 2026-10-18 16:03:25
[2026-10-18 16:03:25,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:03:26,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:03:26,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:03:26,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:03:26,344.344 INFO    ] time= 18/10/2026 16:03:26
[2026-10-18 16:03:26,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:03:26,372.372 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:03:26,502.502 INFO    ] No existing commands found in stream
[2026-10-18 16:03:31,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:03:31,530.530 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-18 16:03:35,149.149 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:03:35,152.152 INFO    ] Checking for system updates...
[2026-10-18 16:03:35,189.189 INFO    ] 200
[2026-10-18 16:03:35,192.192 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:03:35,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:03:35,250.250 INFO    ] No update needed
[2026-10-18 16:03:35,253.253 INFO    ] Checking for camera pi updates...
[2026-10-18 16:03:35,287.287 INFO    ] 200
[2026-10-18 16:03:35,289.289 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:03:35,334.334 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:03:45,349.349 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:03:45,385.385 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:03:45,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:03:45,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:03:45,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:03:45,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:03:47,448.448 INFO    ] ================================================
[2026-10-18 16:03:47,464.464 INFO    ] Launching Daemon at Sun Oct 18 16:03:47 IST 2026
[2026-10-18 16:03:47,475.475 INFO    ] ================================================
[2026-10-18 16:03:48,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:03:48
[2026-10-18 16:03:48,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:03:49,009.009 INFO    ] Initializing speech engine...
[2026-10-18 16:03:49,015.015 INFO    ] 2026-10-18 16:03:49
[2026-10-18 16:03:49,269.269 INFO    ] 2026-10-18 16:03:49
[2026-10-18 16:03:49,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:03:49,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:03:49,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:03:49,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:03:49,773.773 INFO    ] time= 18/10/2026 16:03:49
[2026-10-18 16:03:49,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:03:49,865.865 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:03:49,940.940 INFO    ] No existing commands found in stream
[2026-10-18 16:03:54,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:03:54,951.951 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-18 16:03:56,884.884 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:03:56,887.887 INFO    ] Checking for system updates...
[2026-10-18 16:03:56,933.933 INFO    ] 200
[2026-10-18 16:03:56,936.936 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:03:56,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:03:56,991.991 INFO    ] No update needed
[2026-10-18 16:03:56,993.993 INFO    ] Checking for camera pi updates...
[2026-10-18 16:03:57,031.031 INFO    ] 200
[2026-10-18 16:03:57,033.033 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:03:57,073.073 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:04:07,089.089 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:04:07,123.123 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:04:07,133.133 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:04:07,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:04:07,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:04:07,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:04:09,185.185 INFO    ] ================================================
[2026-10-18 16:04:09,201.201 INFO    ] Launching Daemon at Sun Oct 18 16:04:09 IST 2026
[2026-10-18 16:04:09,212.212 INFO    ] ================================================
[2026-10-18 16:04:09,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:04:09
[2026-10-18 16:04:10,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:04:10,661.661 INFO    ] Initializing speech engine...
[2026-10-18 16:04:10,668.668 INFO    ] 2026-10-18 16:04:10
[2026-10-18 16:04:10,922.922 INFO    ] 2026-10-18 16:04:10
[2026-10-18 16:04:10,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:04:11,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:04:11,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:04:11,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:04:11,470.470 INFO    ] time= 18/10/2026 16:04:11
[2026-10-18 16:04:11,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:04:11,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:04:11,624.624 INFO    ] No existing commands found in stream
[2026-10-18 16:04:16,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:04:16,645.645 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-18 16:04:21,082.082 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:04:21,084.084 INFO    ] Checking for system updates...
[2026-10-18 16:04:21,119.119 INFO    ] 200
[2026-10-18 16:04:21,122.122 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:04:21,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:04:21,178.178 INFO    ] No update needed
[2026-10-18 16:04:21,180.180 INFO    ] Checking for camera pi updates...
[2026-10-18 16:04:21,213.213 INFO    ] 200
[2026-10-18 16:04:21,215.215 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:04:21,257.257 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:04:31,273.273 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:04:31,309.309 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:04:31,320.320 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:04:31,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:04:31,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:04:31,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:04:33,377.377 INFO    ] ================================================
[2026-10-18 16:04:33,393.393 INFO    ] Launching Daemon at Sun Oct 18 16:04:33 IST 2026
[2026-10-18 16:04:33,404.404 INFO    ] ================================================
[2026-10-18 16:04:34,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:04:34
[2026-10-18 16:04:34,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:04:34,998.998 INFO    ] Initializing speech engine...
[2026-10-18 16:04:35,014.014 INFO    ] 2026-10-18 16:04:35
[2026-10-18 16:04:35,322.322 INFO    ] 2026-10-18 16:04:35
[2026-10-18 16:04:35,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:04:35,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:04:35,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:04:35,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:04:35,836.836 INFO    ] time= 18/10/2026 16:04:35
[2026-10-18 16:04:35,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:04:35,884.884 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:04:36,016.016 INFO    ] No existing commands found in stream
[2026-10-18 16:04:41,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:04:41,050.050 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-18 16:04:42,250.250 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:04:42,253.253 INFO    ] Checking for system updates...
[2026-10-18 16:04:42,290.290 INFO    ] 200
[2026-10-18 16:04:42,292.292 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:04:42,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:04:42,353.353 INFO    ] No update needed
[2026-10-18 16:04:42,356.356 INFO    ] Checking for camera pi updates...
[2026-10-18 16:04:42,391.391 INFO    ] 200
[2026-10-18 16:04:42,393.393 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:04:42,435.435 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:04:52,450.450 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:04:52,490.490 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:04:52,500.500 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:04:52,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:04:52,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:04:52,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:04:54,556.556 INFO    ] ================================================
[2026-10-18 16:04:54,571.571 INFO    ] Launching Daemon at Sun Oct 18 16:04:54 IST 2026
[2026-10-18 16:04:54,582.582 INFO    ] ================================================
[2026-10-18 16:04:55,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:04:55
[2026-10-18 16:04:55,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:04:56,022.022 INFO    ] Initializing speech engine...
[2026-10-18 16:04:56,029.029 INFO    ] 2026-10-18 16:04:56
[2026-10-18 16:04:56,300.300 INFO    ] 2026-10-18 16:04:56
[2026-10-18 16:04:56,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:04:56,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:04:56,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:04:56,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:04:56,846.846 INFO    ] time= 18/10/2026 16:04:56
[2026-10-18 16:04:56,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:04:56,880.880 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:04:57,007.007 INFO    ] No existing commands found in stream
[2026-10-18 16:05:02,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:05:02,041.041 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-18 16:05:04,304.304 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:05:04,307.307 INFO    ] Checking for system updates...
[2026-10-18 16:05:04,342.342 INFO    ] 200
[2026-10-18 16:05:04,345.345 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:05:04,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:05:04,403.403 INFO    ] No update needed
[2026-10-18 16:05:04,405.405 INFO    ] Checking for camera pi updates...
[2026-10-18 16:05:04,438.438 INFO    ] 200
[2026-10-18 16:05:04,440.440 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:05:04,485.485 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:05:14,500.500 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:05:14,535.535 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:05:14,544.544 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:05:14,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:05:14,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:05:14,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:05:16,597.597 INFO    ] ================================================
[2026-10-18 16:05:16,613.613 INFO    ] Launching Daemon at Sun Oct 18 16:05:16 IST 2026
[2026-10-18 16:05:16,624.624 INFO    ] ================================================
[2026-10-18 16:05:17,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:05:17
[2026-10-18 16:05:17,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:05:18,037.037 INFO    ] Initializing speech engine...
[2026-10-18 16:05:18,061.061 INFO    ] 2026-10-18 16:05:18
[2026-10-18 16:05:18,325.325 INFO    ] 2026-10-18 16:05:18
[2026-10-18 16:05:18,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:05:18,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:05:18,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:05:18,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:05:18,864.864 INFO    ] time= 18/10/2026 16:05:18
[2026-10-18 16:05:18,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:05:18,943.943 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:05:19,097.097 INFO    ] No existing commands found in stream
[2026-10-18 16:05:24,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:05:24,119.119 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-18 16:05:27,593.593 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:05:27,596.596 INFO    ] Checking for system updates...
[2026-10-18 16:05:27,631.631 INFO    ] 200
[2026-10-18 16:05:27,633.633 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:05:27,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:05:27,689.689 INFO    ] No update needed
[2026-10-18 16:05:27,691.691 INFO    ] Checking for camera pi updates...
[2026-10-18 16:05:27,725.725 INFO    ] 200
[2026-10-18 16:05:27,727.727 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:05:27,768.768 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:05:37,781.781 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:05:37,816.816 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:05:37,825.825 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:05:37,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:05:37,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:05:37,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:05:39,877.877 INFO    ] ================================================
[2026-10-18 16:05:39,892.892 INFO    ] Launching Daemon at Sun Oct 18 16:05:39 IST 2026
[2026-10-18 16:05:39,903.903 INFO    ] ================================================
[2026-10-18 16:05:40,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:05:40
[2026-10-18 16:05:41,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:05:41,326.326 INFO    ] Initializing speech engine...
[2026-10-18 16:05:41,336.336 INFO    ] 2026-10-18 16:05:41
[2026-10-18 16:05:41,586.586 INFO    ] 2026-10-18 16:05:41
[2026-10-18 16:05:41,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:05:41,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:05:41,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:05:42,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:05:42,150.150 INFO    ] time= 18/10/2026 16:05:42
[2026-10-18 16:05:42,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:05:42,173.173 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:05:42,296.296 INFO    ] No existing commands found in stream
[2026-10-18 16:05:47,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:05:47,321.321 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-18 16:05:48,243.243 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:05:48,245.245 INFO    ] Checking for system updates...
[2026-10-18 16:05:48,282.282 INFO    ] 200
[2026-10-18 16:05:48,285.285 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:05:48,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:05:48,340.340 INFO    ] No update needed
[2026-10-18 16:05:48,342.342 INFO    ] Checking for camera pi updates...
[2026-10-18 16:05:48,377.377 INFO    ] 200
[2026-10-18 16:05:48,380.380 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:05:48,421.421 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:05:58,435.435 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:05:58,476.476 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:05:58,486.486 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:05:58,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:05:58,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:05:58,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:06:00,540.540 INFO    ] ================================================
[2026-10-18 16:06:00,555.555 INFO    ] Launching Daemon at Sun Oct 18 16:06:00 IST 2026
[2026-10-18 16:06:00,566.566 INFO    ] ================================================
[2026-10-18 16:06:01,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:06:01
[2026-10-18 16:06:01,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:06:02,270.270 INFO    ] Initializing speech engine...
[2026-10-18 16:06:02,281.281 INFO    ] 2026-10-18 16:06:02
[2026-10-18 16:06:02,600.600 INFO    ] 2026-10-18 16:06:02
[2026-10-18 16:06:02,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:06:02,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:06:02,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:06:03,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:06:03,151.151 INFO    ] time= 18/10/2026 16:06:03
[2026-10-18 16:06:03,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:06:03,237.237 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:06:03,374.374 INFO    ] No existing commands found in stream
[2026-10-18 16:06:08,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:06:08,403.403 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-18 16:06:12,798.798 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:06:12,801.801 INFO    ] Checking for system updates...
[2026-10-18 16:06:12,843.843 INFO    ] 200
[2026-10-18 16:06:12,846.846 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:06:12,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:06:12,904.904 INFO    ] No update needed
[2026-10-18 16:06:12,906.906 INFO    ] Checking for camera pi updates...
[2026-10-18 16:06:12,940.940 INFO    ] 200
[2026-10-18 16:06:12,943.943 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:06:12,983.983 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:06:22,999.999 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:06:23,034.034 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:06:23,043.043 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:06:23,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:06:23,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:06:23,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:06:25,095.095 INFO    ] ================================================
[2026-10-18 16:06:25,110.110 INFO    ] Launching Daemon at Sun Oct 18 16:06:25 IST 2026
[2026-10-18 16:06:25,120.120 INFO    ] ================================================
[2026-10-18 16:06:25,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:06:25
[2026-10-18 16:06:26,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:06:26,724.724 INFO    ] Initializing speech engine...
[2026-10-18 16:06:26,737.737 INFO    ] 2026-10-18 16:06:26
[2026-10-18 16:06:27,042.042 INFO    ] 2026-10-18 16:06:27
[2026-10-18 16:06:27,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:06:27,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:06:27,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:06:27,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:06:27,549.549 INFO    ] time= 18/10/2026 16:06:27
[2026-10-18 16:06:27,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:06:27,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:06:27,727.727 INFO    ] No existing commands found in stream
[2026-10-18 16:06:32,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:06:32,761.761 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-18 16:06:35,587.587 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:06:35,590.590 INFO    ] Checking for system updates...
[2026-10-18 16:06:35,627.627 INFO    ] 200
[2026-10-18 16:06:35,629.629 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:06:35,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:06:35,688.688 INFO    ] No update needed
[2026-10-18 16:06:35,690.690 INFO    ] Checking for camera pi updates...
[2026-10-18 16:06:35,725.725 INFO    ] 200
[2026-10-18 16:06:35,728.728 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:06:35,769.769 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:06:45,785.785 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:06:45,824.824 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:06:45,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:06:45,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:06:45,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:06:45,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:06:47,890.890 INFO    ] ================================================
[2026-10-18 16:06:47,906.906 INFO    ] Launching Daemon at Sun Oct 18 16:06:47 IST 2026
[2026-10-18 16:06:47,917.917 INFO    ] ================================================
[2026-10-18 16:06:48,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:06:48
[2026-10-18 16:06:49,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:06:49,349.349 INFO    ] Initializing speech engine...
[2026-10-18 16:06:49,364.364 INFO    ] 2026-10-18 16:06:49
[2026-10-18 16:06:49,643.643 INFO    ] 2026-10-18 16:06:49
[2026-10-18 16:06:49,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:06:49,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:06:49,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:06:50,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:06:50,173.173 INFO    ] time= 18/10/2026 16:06:50
[2026-10-18 16:06:50,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:06:50,269.269 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:06:50,412.412 INFO    ] No existing commands found in stream
[2026-10-18 16:06:55,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:06:55,445.445 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-18 16:06:59,846.846 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:06:59,848.848 INFO    ] Checking for system updates...
[2026-10-18 16:06:59,884.884 INFO    ] 200
[2026-10-18 16:06:59,886.886 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:06:59,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:06:59,941.941 INFO    ] No update needed
[2026-10-18 16:06:59,944.944 INFO    ] Checking for camera pi updates...
[2026-10-18 16:06:59,977.977 INFO    ] 200
[2026-10-18 16:06:59,980.980 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:07:00,020.020 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:07:10,036.036 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:07:10,073.073 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:07:10,083.083 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:07:10,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:07:10,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:07:10,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:07:12,137.137 INFO    ] ================================================
[2026-10-18 16:07:12,153.153 INFO    ] Launching Daemon at Sun Oct 18 16:07:12 IST 2026
[2026-10-18 16:07:12,172.172 INFO    ] ================================================
[2026-10-18 16:07:12,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:07:12
[2026-10-18 16:07:13,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:07:13,663.663 INFO    ] Initializing speech engine...
[2026-10-18 16:07:13,670.670 INFO    ] 2026-10-18 16:07:13
[2026-10-18 16:07:13,939.939 INFO    ] 2026-10-18 16:07:13
[2026-10-18 16:07:13,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:07:14,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:07:14,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:07:14,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:07:14,460.460 INFO    ] time= 18/10/2026 16:07:14
[2026-10-18 16:07:14,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:07:14,527.527 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:07:14,669.669 INFO    ] No existing commands found in stream
[2026-10-18 16:07:19,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:07:19,687.687 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-18 16:07:23,334.334 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:07:23,337.337 INFO    ] Checking for system updates...
[2026-10-18 16:07:23,373.373 INFO    ] 200
[2026-10-18 16:07:23,375.375 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:07:23,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:07:23,431.431 INFO    ] No update needed
[2026-10-18 16:07:23,434.434 INFO    ] Checking for camera pi updates...
[2026-10-18 16:07:23,471.471 INFO    ] 200
[2026-10-18 16:07:23,474.474 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:07:23,516.516 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:07:33,528.528 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:07:33,564.564 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:07:33,574.574 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:07:33,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:07:33,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:07:33,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:07:35,633.633 INFO    ] ================================================
[2026-10-18 16:07:35,649.649 INFO    ] Launching Daemon at Sun Oct 18 16:07:35 IST 2026
[2026-10-18 16:07:35,660.660 INFO    ] ================================================
[2026-10-18 16:07:36,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:07:36
[2026-10-18 16:07:36,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:07:37,243.243 INFO    ] Initializing speech engine...
[2026-10-18 16:07:37,257.257 INFO    ] 2026-10-18 16:07:37
[2026-10-18 16:07:37,522.522 INFO    ] 2026-10-18 16:07:37
[2026-10-18 16:07:37,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:07:37,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:07:37,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:07:38,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:07:38,091.091 INFO    ] time= 18/10/2026 16:07:38
[2026-10-18 16:07:38,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:07:38,140.140 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:07:38,316.316 INFO    ] No existing commands found in stream
[2026-10-18 16:07:43,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:07:43,344.344 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-18 16:07:46,565.565 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:07:46,568.568 INFO    ] Checking for system updates...
[2026-10-18 16:07:46,605.605 INFO    ] 200
[2026-10-18 16:07:46,607.607 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:07:46,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:07:46,666.666 INFO    ] No update needed
[2026-10-18 16:07:46,668.668 INFO    ] Checking for camera pi updates...
[2026-10-18 16:07:46,702.702 INFO    ] 200
[2026-10-18 16:07:46,704.704 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:07:46,745.745 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:07:56,758.758 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:07:56,794.794 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:07:56,804.804 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:07:56,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:07:56,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:07:56,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:07:58,857.857 INFO    ] ================================================
[2026-10-18 16:07:58,872.872 INFO    ] Launching Daemon at Sun Oct 18 16:07:58 IST 2026
[2026-10-18 16:07:58,883.883 INFO    ] ================================================
[2026-10-18 16:07:59,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:07:59
[2026-10-18 16:08:00,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:08:00,295.295 INFO    ] Initializing speech engine...
[2026-10-18 16:08:00,309.309 INFO    ] 2026-10-18 16:08:00
[2026-10-18 16:08:00,601.601 INFO    ] 2026-10-18 16:08:00
[2026-10-18 16:08:00,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:08:00,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:08:00,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:08:01,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:08:01,140.140 INFO    ] time= 18/10/2026 16:08:01
[2026-10-18 16:08:01,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:08:01,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:08:01,345.345 INFO    ] No existing commands found in stream
[2026-10-18 16:08:06,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:08:06,370.370 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-18 16:08:08,720.720 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:08:08,722.722 INFO    ] Checking for system updates...
[2026-10-18 16:08:08,758.758 INFO    ] 200
[2026-10-18 16:08:08,760.760 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:08:08,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:08:08,814.814 INFO    ] No update needed
[2026-10-18 16:08:08,816.816 INFO    ] Checking for camera pi updates...
[2026-10-18 16:08:08,854.854 INFO    ] 200
[2026-10-18 16:08:08,856.856 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:08:08,897.897 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:08:18,911.911 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:08:18,946.946 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:08:18,956.956 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:08:18,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:08:18,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:08:18,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:08:21,008.008 INFO    ] ================================================
[2026-10-18 16:08:21,023.023 INFO    ] Launching Daemon at Sun Oct 18 16:08:21 IST 2026
[2026-10-18 16:08:21,034.034 INFO    ] ================================================
[2026-10-18 16:08:21,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:08:21
[2026-10-18 16:08:22,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:08:22,476.476 INFO    ] Initializing speech engine...
[2026-10-18 16:08:22,492.492 INFO    ] 2026-10-18 16:08:22
[2026-10-18 16:08:22,742.742 INFO    ] 2026-10-18 16:08:22
[2026-10-18 16:08:22,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:08:22,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:08:23,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:08:23,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:08:23,265.265 INFO    ] time= 18/10/2026 16:08:23
[2026-10-18 16:08:23,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:08:23,318.318 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:08:23,487.487 INFO    ] No existing commands found in stream
[2026-10-18 16:08:28,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:08:28,520.520 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-18 16:08:32,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:08:32,665.665 INFO    ] Checking for system updates...
[2026-10-18 16:08:32,709.709 INFO    ] 200
[2026-10-18 16:08:32,713.713 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:08:32,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:08:32,790.790 INFO    ] No update needed
[2026-10-18 16:08:32,792.792 INFO    ] Checking for camera pi updates...
[2026-10-18 16:08:32,827.827 INFO    ] 200
[2026-10-18 16:08:32,830.830 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:08:32,881.881 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:08:42,896.896 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:08:42,931.931 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:08:42,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:08:42,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:08:42,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:08:42,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:08:45,995.995 INFO    ] ================================================
[2026-10-18 16:08:45,010.010 INFO    ] Launching Daemon at Sun Oct 18 16:08:45 IST 2026
[2026-10-18 16:08:45,021.021 INFO    ] ================================================
[2026-10-18 16:08:45,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:08:45
[2026-10-18 16:08:46,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:08:46,466.466 INFO    ] Initializing speech engine...
[2026-10-18 16:08:46,477.477 INFO    ] 2026-10-18 16:08:46
[2026-10-18 16:08:46,737.737 INFO    ] 2026-10-18 16:08:46
[2026-10-18 16:08:46,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:08:47,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:08:47,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:08:47,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:08:47,283.283 INFO    ] time= 18/10/2026 16:08:47
[2026-10-18 16:08:47,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:08:47,311.311 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:08:47,443.443 INFO    ] No existing commands found in stream
[2026-10-18 16:08:52,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:08:52,469.469 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-18 16:08:55,043.043 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:08:55,045.045 INFO    ] Checking for system updates...
[2026-10-18 16:08:55,083.083 INFO    ] 200
[2026-10-18 16:08:55,085.085 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:08:55,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:08:55,146.146 INFO    ] No update needed
[2026-10-18 16:08:55,149.149 INFO    ] Checking for camera pi updates...
[2026-10-18 16:08:55,183.183 INFO    ] 200
[2026-10-18 16:08:55,185.185 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:08:55,230.230 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:09:05,244.244 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:09:05,279.279 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:09:05,288.288 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:09:05,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:09:05,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:09:05,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:09:07,340.340 INFO    ] ================================================
[2026-10-18 16:09:07,355.355 INFO    ] Launching Daemon at Sun Oct 18 16:09:07 IST 2026
[2026-10-18 16:09:07,367.367 INFO    ] ================================================
[2026-10-18 16:09:07,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:09:07
[2026-10-18 16:09:08,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:09:08,847.847 INFO    ] Initializing speech engine...
[2026-10-18 16:09:08,865.865 INFO    ] 2026-10-18 16:09:08
[2026-10-18 16:09:09,144.144 INFO    ] 2026-10-18 16:09:09
[2026-10-18 16:09:09,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:09:09,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:09:09,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:09:09,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:09:09,631.631 INFO    ] time= 18/10/2026 16:09:09
[2026-10-18 16:09:09,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:09:09,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:09:09,830.830 INFO    ] No existing commands found in stream
[2026-10-18 16:09:14,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:09:14,847.847 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-18 16:09:18,415.415 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:09:18,418.418 INFO    ] Checking for system updates...
[2026-10-18 16:09:18,454.454 INFO    ] 200
[2026-10-18 16:09:18,458.458 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:09:18,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:09:18,512.512 INFO    ] No update needed
[2026-10-18 16:09:18,514.514 INFO    ] Checking for camera pi updates...
[2026-10-18 16:09:18,550.550 INFO    ] 200
[2026-10-18 16:09:18,553.553 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:09:18,593.593 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:09:28,608.608 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:09:28,643.643 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:09:28,652.652 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:09:28,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:09:28,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:09:28,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:09:30,704.704 INFO    ] ================================================
[2026-10-18 16:09:30,720.720 INFO    ] Launching Daemon at Sun Oct 18 16:09:30 IST 2026
[2026-10-18 16:09:30,731.731 INFO    ] ================================================
[2026-10-18 16:09:31,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:09:31
[2026-10-18 16:09:31,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:09:32,215.215 INFO    ] Initializing speech engine...
[2026-10-18 16:09:32,231.231 INFO    ] 2026-10-18 16:09:32
[2026-10-18 16:09:32,512.512 INFO    ] 2026-10-18 16:09:32
[2026-10-18 16:09:32,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:09:32,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:09:32,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:09:33,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:09:33,061.061 INFO    ] time= 18/10/2026 16:09:33
[2026-10-18 16:09:33,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:09:33,137.137 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:09:33,273.273 INFO    ] No existing commands found in stream
[2026-10-18 16:09:38,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:09:38,291.291 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-18 16:09:39,323.323 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:09:39,326.326 INFO    ] Checking for system updates...
[2026-10-18 16:09:39,363.363 INFO    ] 200
[2026-10-18 16:09:39,366.366 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:09:39,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:09:39,423.423 INFO    ] No update needed
[2026-10-18 16:09:39,425.425 INFO    ] Checking for camera pi updates...
[2026-10-18 16:09:39,460.460 INFO    ] 200
[2026-10-18 16:09:39,463.463 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:09:39,510.510 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:09:49,527.527 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:09:49,567.567 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:09:49,598.598 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:09:49,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:09:49,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:09:49,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:09:51,654.654 INFO    ] ================================================
[2026-10-18 16:09:51,669.669 INFO    ] Launching Daemon at Sun Oct 18 16:09:51 IST 2026
[2026-10-18 16:09:51,680.680 INFO    ] ================================================
[2026-10-18 16:09:52,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:09:52
[2026-10-18 16:09:52,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:09:53,279.279 INFO    ] Initializing speech engine...
[2026-10-18 16:09:53,286.286 INFO    ] 2026-10-18 16:09:53
[2026-10-18 16:09:53,562.562 INFO    ] 2026-10-18 16:09:53
[2026-10-18 16:09:53,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:09:53,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:09:53,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:09:54,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:09:54,129.129 INFO    ] time= 18/10/2026 16:09:54
[2026-10-18 16:09:54,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:09:54,156.156 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:09:54,295.295 INFO    ] No existing commands found in stream
[2026-10-18 16:09:59,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:09:59,329.329 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-18 16:10:02,540.540 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:10:02,544.544 INFO    ] Checking for system updates...
[2026-10-18 16:10:02,603.603 INFO    ] 200
[2026-10-18 16:10:02,607.607 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:10:02,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:10:02,684.684 INFO    ] No update needed
[2026-10-18 16:10:02,706.706 INFO    ] Checking for camera pi updates...
[2026-10-18 16:10:02,755.755 INFO    ] 200
[2026-10-18 16:10:02,758.758 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:10:02,814.814 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:10:12,831.831 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:10:12,872.872 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:10:12,883.883 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:10:12,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:10:12,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:10:12,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:10:14,938.938 INFO    ] ================================================
[2026-10-18 16:10:14,954.954 INFO    ] Launching Daemon at Sun Oct 18 16:10:14 IST 2026
[2026-10-18 16:10:14,965.965 INFO    ] ================================================
[2026-10-18 16:10:15,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:10:15
[2026-10-18 16:10:16,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:10:16,610.610 INFO    ] Initializing speech engine...
[2026-10-18 16:10:16,623.623 INFO    ] 2026-10-18 16:10:16
[2026-10-18 16:10:16,934.934 INFO    ] 2026-10-18 16:10:16
[2026-10-18 16:10:17,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:10:17,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:10:17,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:10:17,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:10:17,456.456 INFO    ] time= 18/10/2026 16:10:17
[2026-10-18 16:10:17,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:10:17,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:10:17,620.620 INFO    ] No existing commands found in stream
[2026-10-18 16:10:22,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:10:22,660.660 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-18 16:10:27,017.017 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:10:27,021.021 INFO    ] Checking for system updates...
[2026-10-18 16:10:27,058.058 INFO    ] 200
[2026-10-18 16:10:27,061.061 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:10:27,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:10:27,124.124 INFO    ] No update needed
[2026-10-18 16:10:27,127.127 INFO    ] Checking for camera pi updates...
[2026-10-18 16:10:27,165.165 INFO    ] 200
[2026-10-18 16:10:27,168.168 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:10:27,215.215 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:10:37,233.233 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:10:37,274.274 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:10:37,285.285 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:10:37,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:10:37,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:10:37,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:10:39,342.342 INFO    ] ================================================
[2026-10-18 16:10:39,358.358 INFO    ] Launching Daemon at Sun Oct 18 16:10:39 IST 2026
[2026-10-18 16:10:39,369.369 INFO    ] ================================================
[2026-10-18 16:10:39,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:10:39
[2026-10-18 16:10:40,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:10:40,791.791 INFO    ] Initializing speech engine...
[2026-10-18 16:10:40,798.798 INFO    ] 2026-10-18 16:10:40
[2026-10-18 16:10:41,099.099 INFO    ] 2026-10-18 16:10:41
[2026-10-18 16:10:41,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:10:41,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:10:41,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:10:41,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:10:41,534.534 INFO    ] time= 18/10/2026 16:10:41
[2026-10-18 16:10:41,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:10:41,545.545 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:10:41,623.623 INFO    ] No existing commands found in stream
[2026-10-18 16:10:46,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:10:46,661.661 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-18 16:10:48,257.257 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:10:48,259.259 INFO    ] Checking for system updates...
[2026-10-18 16:10:48,296.296 INFO    ] 200
[2026-10-18 16:10:48,299.299 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:10:48,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:10:48,355.355 INFO    ] No update needed
[2026-10-18 16:10:48,357.357 INFO    ] Checking for camera pi updates...
[2026-10-18 16:10:48,391.391 INFO    ] 200
[2026-10-18 16:10:48,393.393 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:10:48,433.433 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:10:58,446.446 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:10:58,481.481 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:10:58,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:10:58,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:10:58,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:10:58,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:11:00,543.543 INFO    ] ================================================
[2026-10-18 16:11:00,559.559 INFO    ] Launching Daemon at Sun Oct 18 16:11:00 IST 2026
[2026-10-18 16:11:00,570.570 INFO    ] ================================================
[2026-10-18 16:11:01,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:11:01
[2026-10-18 16:11:01,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:11:02,002.002 INFO    ] Initializing speech engine...
[2026-10-18 16:11:02,014.014 INFO    ] 2026-10-18 16:11:02
[2026-10-18 16:11:02,479.479 INFO    ] 2026-10-18 16:11:02
[2026-10-18 16:11:02,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:11:02,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:11:02,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:11:03,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:11:03,062.062 INFO    ] time= 18/10/2026 16:11:03
[2026-10-18 16:11:03,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:11:03,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:11:03,220.220 INFO    ] No existing commands found in stream
[2026-10-18 16:11:08,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:11:08,253.253 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-18 16:11:11,766.766 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:11:11,769.769 INFO    ] Checking for system updates...
[2026-10-18 16:11:11,809.809 INFO    ] 200
[2026-10-18 16:11:11,811.811 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:11:11,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:11:11,866.866 INFO    ] No update needed
[2026-10-18 16:11:11,868.868 INFO    ] Checking for camera pi updates...
[2026-10-18 16:11:11,906.906 INFO    ] 200
[2026-10-18 16:11:11,908.908 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:11:11,949.949 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:11:21,964.964 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:11:22,000.000 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:11:22,010.010 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:11:22,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:11:22,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:11:22,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:11:24,063.063 INFO    ] ================================================
[2026-10-18 16:11:24,079.079 INFO    ] Launching Daemon at Sun Oct 18 16:11:24 IST 2026
[2026-10-18 16:11:24,090.090 INFO    ] ================================================
[2026-10-18 16:11:24,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:11:24
[2026-10-18 16:11:25,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:11:25,538.538 INFO    ] Initializing speech engine...
[2026-10-18 16:11:25,555.555 INFO    ] 2026-10-18 16:11:25
[2026-10-18 16:11:25,843.843 INFO    ] 2026-10-18 16:11:25
[2026-10-18 16:11:25,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:11:26,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:11:26,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:11:26,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:11:26,267.267 INFO    ] time= 18/10/2026 16:11:26
[2026-10-18 16:11:26,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:11:26,283.283 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:11:26,422.422 INFO    ] No existing commands found in stream
[2026-10-18 16:11:31,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:11:31,469.469 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-18 16:11:32,688.688 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:11:32,691.691 INFO    ] Checking for system updates...
[2026-10-18 16:11:32,734.734 INFO    ] 200
[2026-10-18 16:11:32,738.738 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:11:32,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:11:32,818.818 INFO    ] No update needed
[2026-10-18 16:11:32,820.820 INFO    ] Checking for camera pi updates...
[2026-10-18 16:11:32,857.857 INFO    ] 200
[2026-10-18 16:11:32,860.860 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:11:32,905.905 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:11:42,918.918 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:11:42,955.955 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:11:42,966.966 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:11:42,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:11:42,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:11:42,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:11:45,019.019 INFO    ] ================================================
[2026-10-18 16:11:45,034.034 INFO    ] Launching Daemon at Sun Oct 18 16:11:45 IST 2026
[2026-10-18 16:11:45,045.045 INFO    ] ================================================
[2026-10-18 16:11:45,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:11:45
[2026-10-18 16:11:46,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:11:46,453.453 INFO    ] Initializing speech engine...
[2026-10-18 16:11:46,476.476 INFO    ] 2026-10-18 16:11:46
[2026-10-18 16:11:46,732.732 INFO    ] 2026-10-18 16:11:46
[2026-10-18 16:11:46,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:11:47,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:11:47,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:11:47,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:11:47,286.286 INFO    ] time= 18/10/2026 16:11:47
[2026-10-18 16:11:47,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:11:47,314.314 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:11:47,447.447 INFO    ] No existing commands found in stream
[2026-10-18 16:11:52,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:11:52,477.477 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-18 16:11:56,326.326 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:11:56,328.328 INFO    ] Checking for system updates...
[2026-10-18 16:11:56,365.365 INFO    ] 200
[2026-10-18 16:11:56,368.368 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:11:56,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:11:56,422.422 INFO    ] No update needed
[2026-10-18 16:11:56,424.424 INFO    ] Checking for camera pi updates...
[2026-10-18 16:11:56,460.460 INFO    ] 200
[2026-10-18 16:11:56,462.462 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:11:56,503.503 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:12:06,519.519 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:12:06,559.559 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:12:06,569.569 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:12:06,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:12:06,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:12:06,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:12:08,625.625 INFO    ] ================================================
[2026-10-18 16:12:08,642.642 INFO    ] Launching Daemon at Sun Oct 18 16:12:08 IST 2026
[2026-10-18 16:12:08,653.653 INFO    ] ================================================
[2026-10-18 16:12:09,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:12:09
[2026-10-18 16:12:09,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:12:10,112.112 INFO    ] Initializing speech engine...
[2026-10-18 16:12:10,121.121 INFO    ] 2026-10-18 16:12:10
[2026-10-18 16:12:10,382.382 INFO    ] 2026-10-18 16:12:10
[2026-10-18 16:12:10,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:12:10,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:12:10,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:12:10,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:12:10,875.875 INFO    ] time= 18/10/2026 16:12:10
[2026-10-18 16:12:10,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:12:10,939.939 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:12:11,098.098 INFO    ] No existing commands found in stream
[2026-10-18 16:12:16,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:12:16,133.133 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-18 16:12:17,386.386 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:12:17,389.389 INFO    ] Checking for system updates...
[2026-10-18 16:12:17,424.424 INFO    ] 200
[2026-10-18 16:12:17,427.427 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:12:17,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:12:17,491.491 INFO    ] No update needed
[2026-10-18 16:12:17,493.493 INFO    ] Checking for camera pi updates...
[2026-10-18 16:12:17,531.531 INFO    ] 200
[2026-10-18 16:12:17,533.533 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:12:17,573.573 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:12:27,588.588 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:12:27,624.624 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:12:27,634.634 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:12:27,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:12:27,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:12:27,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:12:29,686.686 INFO    ] ================================================
[2026-10-18 16:12:29,702.702 INFO    ] Launching Daemon at Sun Oct 18 16:12:29 IST 2026
[2026-10-18 16:12:29,713.713 INFO    ] ================================================
[2026-10-18 16:12:30,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:12:30
[2026-10-18 16:12:30,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:12:31,154.154 INFO    ] Initializing speech engine...
[2026-10-18 16:12:31,164.164 INFO    ] 2026-10-18 16:12:31
[2026-10-18 16:12:31,437.437 INFO    ] 2026-10-18 16:12:31
[2026-10-18 16:12:31,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:12:31,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:12:31,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:12:31,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:12:31,907.907 INFO    ] time= 18/10/2026 16:12:31
[2026-10-18 16:12:31,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:12:31,990.990 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:12:32,100.100 INFO    ] No existing commands found in stream
[2026-10-18 16:12:37,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:12:37,115.115 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-18 16:12:38,436.436 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:12:38,439.439 INFO    ] Checking for system updates...
[2026-10-18 16:12:38,479.479 INFO    ] 200
[2026-10-18 16:12:38,482.482 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:12:38,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:12:38,538.538 INFO    ] No update needed
[2026-10-18 16:12:38,541.541 INFO    ] Checking for camera pi updates...
[2026-10-18 16:12:38,580.580 INFO    ] 200
[2026-10-18 16:12:38,583.583 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:12:38,630.630 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:12:48,646.646 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:12:48,687.687 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:12:48,699.699 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:12:48,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:12:48,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:12:48,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:12:50,757.757 INFO    ] ================================================
[2026-10-18 16:12:50,773.773 INFO    ] Launching Daemon at Sun Oct 18 16:12:50 IST 2026
[2026-10-18 16:12:50,784.784 INFO    ] ================================================
[2026-10-18 16:12:51,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:12:51
[2026-10-18 16:12:51,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:12:52,235.235 INFO    ] Initializing speech engine...
[2026-10-18 16:12:52,243.243 INFO    ] 2026-10-18 16:12:52
[2026-10-18 16:12:52,542.542 INFO    ] 2026-10-18 16:12:52
[2026-10-18 16:12:52,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:12:52,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:12:52,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:12:52,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:12:52,937.937 INFO    ] time= 18/10/2026 16:12:52
[2026-10-18 16:12:52,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:12:52,980.980 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:12:53,066.066 INFO    ] No existing commands found in stream
[2026-10-18 16:12:58,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:12:58,081.081 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-18 16:13:00,114.114 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:13:00,117.117 INFO    ] Checking for system updates...
[2026-10-18 16:13:00,153.153 INFO    ] 200
[2026-10-18 16:13:00,155.155 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:13:00,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:13:00,210.210 INFO    ] No update needed
[2026-10-18 16:13:00,212.212 INFO    ] Checking for camera pi updates...
[2026-10-18 16:13:00,246.246 INFO    ] 200
[2026-10-18 16:13:00,248.248 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:13:00,289.289 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:13:10,303.303 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:13:10,338.338 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:13:10,348.348 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:13:10,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:13:10,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:13:10,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:13:12,400.400 INFO    ] ================================================
[2026-10-18 16:13:12,416.416 INFO    ] Launching Daemon at Sun Oct 18 16:13:12 IST 2026
[2026-10-18 16:13:12,428.428 INFO    ] ================================================
[2026-10-18 16:13:13,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:13:13
[2026-10-18 16:13:13,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:13:14,085.085 INFO    ] Initializing speech engine...
[2026-10-18 16:13:14,094.094 INFO    ] 2026-10-18 16:13:14
[2026-10-18 16:13:14,387.387 INFO    ] 2026-10-18 16:13:14
[2026-10-18 16:13:14,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:13:14,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:13:14,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:13:14,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:13:14,938.938 INFO    ] time= 18/10/2026 16:13:14
[2026-10-18 16:13:14,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:13:14,966.966 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:13:15,101.101 INFO    ] No existing commands found in stream
[2026-10-18 16:13:20,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:13:20,129.129 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-18 16:13:21,975.975 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:13:21,978.978 INFO    ] Checking for system updates...
[2026-10-18 16:13:22,019.019 INFO    ] 200
[2026-10-18 16:13:22,022.022 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:13:22,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:13:22,078.078 INFO    ] No update needed
[2026-10-18 16:13:22,080.080 INFO    ] Checking for camera pi updates...
[2026-10-18 16:13:22,118.118 INFO    ] 200
[2026-10-18 16:13:22,121.121 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:13:22,162.162 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:13:32,179.179 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:13:32,222.222 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:13:32,233.233 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:13:32,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:13:32,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:13:32,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:13:34,293.293 INFO    ] ================================================
[2026-10-18 16:13:34,309.309 INFO    ] Launching Daemon at Sun Oct 18 16:13:34 IST 2026
[2026-10-18 16:13:34,321.321 INFO    ] ================================================
[2026-10-18 16:13:34,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:13:34
[2026-10-18 16:13:35,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:13:35,729.729 INFO    ] Initializing speech engine...
[2026-10-18 16:13:35,736.736 INFO    ] 2026-10-18 16:13:35
[2026-10-18 16:13:36,011.011 INFO    ] 2026-10-18 16:13:35
[2026-10-18 16:13:36,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:13:36,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:13:36,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:13:36,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:13:36,582.582 INFO    ] time= 18/10/2026 16:13:36
[2026-10-18 16:13:36,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:13:36,606.606 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:13:36,743.743 INFO    ] No existing commands found in stream
[2026-10-18 16:13:41,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:13:41,773.773 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-18 16:13:44,633.633 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:13:44,635.635 INFO    ] Checking for system updates...
[2026-10-18 16:13:44,671.671 INFO    ] 200
[2026-10-18 16:13:44,674.674 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:13:44,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:13:44,728.728 INFO    ] No update needed
[2026-10-18 16:13:44,731.731 INFO    ] Checking for camera pi updates...
[2026-10-18 16:13:44,764.764 INFO    ] 200
[2026-10-18 16:13:44,767.767 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:13:44,807.807 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:13:54,823.823 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:13:54,857.857 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:13:54,867.867 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:13:54,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:13:54,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:13:54,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:13:56,920.920 INFO    ] ================================================
[2026-10-18 16:13:56,935.935 INFO    ] Launching Daemon at Sun Oct 18 16:13:56 IST 2026
[2026-10-18 16:13:56,946.946 INFO    ] ================================================
[2026-10-18 16:13:57,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:13:57
[2026-10-18 16:13:58,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:13:58,425.425 INFO    ] Initializing speech engine...
[2026-10-18 16:13:58,431.431 INFO    ] 2026-10-18 16:13:58
[2026-10-18 16:13:58,692.692 INFO    ] 2026-10-18 16:13:58
[2026-10-18 16:13:58,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:13:58,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:13:58,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:13:59,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:13:59,226.226 INFO    ] time= 18/10/2026 16:13:59
[2026-10-18 16:13:59,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:13:59,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:13:59,407.407 INFO    ] No existing commands found in stream
[2026-10-18 16:14:04,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:14:04,429.429 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-18 16:14:06,285.285 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:14:06,287.287 INFO    ] Checking for system updates...
[2026-10-18 16:14:06,323.323 INFO    ] 200
[2026-10-18 16:14:06,326.326 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:14:06,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:14:06,380.380 INFO    ] No update needed
[2026-10-18 16:14:06,382.382 INFO    ] Checking for camera pi updates...
[2026-10-18 16:14:06,419.419 INFO    ] 200
[2026-10-18 16:14:06,421.421 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:14:06,461.461 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:14:16,477.477 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:14:16,512.512 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:14:16,521.521 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:14:16,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:14:16,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:14:16,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:14:18,573.573 INFO    ] ================================================
[2026-10-18 16:14:18,588.588 INFO    ] Launching Daemon at Sun Oct 18 16:14:18 IST 2026
[2026-10-18 16:14:18,600.600 INFO    ] ================================================
[2026-10-18 16:14:19,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:14:19
[2026-10-18 16:14:19,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:14:20,033.033 INFO    ] Initializing speech engine...
[2026-10-18 16:14:20,053.053 INFO    ] 2026-10-18 16:14:20
[2026-10-18 16:14:20,301.301 INFO    ] 2026-10-18 16:14:20
[2026-10-18 16:14:20,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:14:20,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:14:20,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:14:20,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:14:20,768.768 INFO    ] time= 18/10/2026 16:14:20
[2026-10-18 16:14:20,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:14:20,861.861 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:14:21,022.022 INFO    ] No existing commands found in stream
[2026-10-18 16:14:26,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:14:26,039.039 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-18 16:14:28,939.939 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:14:28,941.941 INFO    ] Checking for system updates...
[2026-10-18 16:14:28,977.977 INFO    ] 200
[2026-10-18 16:14:28,980.980 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:14:29,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:14:29,033.033 INFO    ] No update needed
[2026-10-18 16:14:29,036.036 INFO    ] Checking for camera pi updates...
[2026-10-18 16:14:29,069.069 INFO    ] 200
[2026-10-18 16:14:29,072.072 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:14:29,112.112 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:14:39,127.127 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:14:39,165.165 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:14:39,176.176 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:14:39,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:14:39,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:14:39,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:14:41,228.228 INFO    ] ================================================
[2026-10-18 16:14:41,244.244 INFO    ] Launching Daemon at Sun Oct 18 16:14:41 IST 2026
[2026-10-18 16:14:41,256.256 INFO    ] ================================================
[2026-10-18 16:14:41,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:14:41
[2026-10-18 16:14:42,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:14:42,659.659 INFO    ] Initializing speech engine...
[2026-10-18 16:14:42,676.676 INFO    ] 2026-10-18 16:14:42
[2026-10-18 16:14:42,931.931 INFO    ] 2026-10-18 16:14:42
[2026-10-18 16:14:42,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:14:43,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:14:43,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:14:43,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:14:43,439.439 INFO    ] time= 18/10/2026 16:14:43
[2026-10-18 16:14:43,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:14:43,505.505 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:14:43,659.659 INFO    ] No existing commands found in stream
[2026-10-18 16:14:48,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:14:48,688.688 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-18 16:14:49,945.945 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:14:49,947.947 INFO    ] Checking for system updates...
[2026-10-18 16:14:49,986.986 INFO    ] 200
[2026-10-18 16:14:49,988.988 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:14:50,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:14:50,047.047 INFO    ] No update needed
[2026-10-18 16:14:50,049.049 INFO    ] Checking for camera pi updates...
[2026-10-18 16:14:50,086.086 INFO    ] 200
[2026-10-18 16:14:50,088.088 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:14:50,129.129 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:15:00,144.144 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:15:00,178.178 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:15:00,188.188 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:15:00,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:15:00,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:15:00,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:15:02,258.258 INFO    ] ================================================
[2026-10-18 16:15:02,276.276 INFO    ] Launching Daemon at Sun Oct 18 16:15:02 IST 2026
[2026-10-18 16:15:02,288.288 INFO    ] ================================================
[2026-10-18 16:15:02,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:15:02
[2026-10-18 16:15:03,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:15:03,889.889 INFO    ] Initializing speech engine...
[2026-10-18 16:15:03,904.904 INFO    ] 2026-10-18 16:15:03
[2026-10-18 16:15:04,169.169 INFO    ] 2026-10-18 16:15:04
[2026-10-18 16:15:04,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:15:04,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:15:04,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:15:04,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:15:04,595.595 INFO    ] time= 18/10/2026 16:15:04
[2026-10-18 16:15:04,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:15:04,647.647 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:15:04,755.755 INFO    ] No existing commands found in stream
[2026-10-18 16:15:09,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:15:09,780.780 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-18 16:15:11,917.917 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:15:11,920.920 INFO    ] Checking for system updates...
[2026-10-18 16:15:11,956.956 INFO    ] 200
[2026-10-18 16:15:11,959.959 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:15:12,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:15:12,013.013 INFO    ] No update needed
[2026-10-18 16:15:12,015.015 INFO    ] Checking for camera pi updates...
[2026-10-18 16:15:12,050.050 INFO    ] 200
[2026-10-18 16:15:12,053.053 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:15:12,092.092 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:15:22,108.108 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:15:22,142.142 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:15:22,152.152 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:15:22,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:15:22,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:15:22,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:15:24,207.207 INFO    ] ================================================
[2026-10-18 16:15:24,222.222 INFO    ] Launching Daemon at Sun Oct 18 16:15:24 IST 2026
[2026-10-18 16:15:24,233.233 INFO    ] ================================================
[2026-10-18 16:15:24,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:15:24
[2026-10-18 16:15:25,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:15:25,696.696 INFO    ] Initializing speech engine...
[2026-10-18 16:15:25,710.710 INFO    ] 2026-10-18 16:15:25
[2026-10-18 16:15:26,022.022 INFO    ] 2026-10-18 16:15:25
[2026-10-18 16:15:26,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:15:26,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:15:26,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:15:26,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:15:26,551.551 INFO    ] time= 18/10/2026 16:15:26
[2026-10-18 16:15:26,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:15:26,590.590 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:15:26,730.730 INFO    ] No existing commands found in stream
[2026-10-18 16:15:31,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:15:31,762.762 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-18 16:15:34,135.135 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:15:34,139.139 INFO    ] Checking for system updates...
[2026-10-18 16:15:34,176.176 INFO    ] 200
[2026-10-18 16:15:34,178.178 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:15:34,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:15:34,318.318 INFO    ] No update needed
[2026-10-18 16:15:34,321.321 INFO    ] Checking for camera pi updates...
[2026-10-18 16:15:34,358.358 INFO    ] 200
[2026-10-18 16:15:34,360.360 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:15:34,404.404 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:15:44,420.420 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:15:44,455.455 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:15:44,465.465 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:15:44,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:15:44,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:15:44,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:15:46,518.518 INFO    ] ================================================
[2026-10-18 16:15:46,533.533 INFO    ] Launching Daemon at Sun Oct 18 16:15:46 IST 2026
[2026-10-18 16:15:46,544.544 INFO    ] ================================================
[2026-10-18 16:15:47,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:15:47
[2026-10-18 16:15:47,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:15:47,940.940 INFO    ] Initializing speech engine...
[2026-10-18 16:15:47,947.947 INFO    ] 2026-10-18 16:15:47
[2026-10-18 16:15:48,208.208 INFO    ] 2026-10-18 16:15:48
[2026-10-18 16:15:48,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:15:48,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:15:48,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:15:48,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:15:48,732.732 INFO    ] time= 18/10/2026 16:15:48
[2026-10-18 16:15:48,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:15:48,803.803 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:15:48,951.951 INFO    ] No existing commands found in stream
[2026-10-18 16:15:53,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:15:53,980.980 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-18 16:15:54,780.780 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:15:54,783.783 INFO    ] Checking for system updates...
[2026-10-18 16:15:54,825.825 INFO    ] 200
[2026-10-18 16:15:54,828.828 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:15:54,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:15:54,889.889 INFO    ] No update needed
[2026-10-18 16:15:54,892.892 INFO    ] Checking for camera pi updates...
[2026-10-18 16:15:54,927.927 INFO    ] 200
[2026-10-18 16:15:54,929.929 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:15:54,970.970 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:16:04,983.983 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:16:05,019.019 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:16:05,029.029 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:16:05,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:16:05,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:16:05,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:16:07,082.082 INFO    ] ================================================
[2026-10-18 16:16:07,099.099 INFO    ] Launching Daemon at Sun Oct 18 16:16:07 IST 2026
[2026-10-18 16:16:07,110.110 INFO    ] ================================================
[2026-10-18 16:16:07,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:16:07
[2026-10-18 16:16:08,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:16:08,559.559 INFO    ] Initializing speech engine...
[2026-10-18 16:16:08,573.573 INFO    ] 2026-10-18 16:16:08
[2026-10-18 16:16:08,889.889 INFO    ] 2026-10-18 16:16:08
[2026-10-18 16:16:08,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:16:09,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:16:09,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:16:09,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:16:09,399.399 INFO    ] time= 18/10/2026 16:16:09
[2026-10-18 16:16:09,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:16:09,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:16:09,564.564 INFO    ] No existing commands found in stream
[2026-10-18 16:16:14,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:16:14,598.598 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-18 16:16:18,475.475 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:16:18,478.478 INFO    ] Checking for system updates...
[2026-10-18 16:16:18,514.514 INFO    ] 200
[2026-10-18 16:16:18,516.516 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:16:18,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:16:18,577.577 INFO    ] No update needed
[2026-10-18 16:16:18,580.580 INFO    ] Checking for camera pi updates...
[2026-10-18 16:16:18,613.613 INFO    ] 200
[2026-10-18 16:16:18,616.616 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:16:18,656.656 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:16:28,672.672 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:16:28,707.707 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:16:28,717.717 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:16:28,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:16:28,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:16:28,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:16:30,769.769 INFO    ] ================================================
[2026-10-18 16:16:30,786.786 INFO    ] Launching Daemon at Sun Oct 18 16:16:30 IST 2026
[2026-10-18 16:16:30,796.796 INFO    ] ================================================
[2026-10-18 16:16:31,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:16:31
[2026-10-18 16:16:32,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:16:32,399.399 INFO    ] Initializing speech engine...
[2026-10-18 16:16:32,410.410 INFO    ] 2026-10-18 16:16:32
[2026-10-18 16:16:32,686.686 INFO    ] 2026-10-18 16:16:32
[2026-10-18 16:16:32,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:16:33,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:16:33,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:16:33,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:16:33,162.162 INFO    ] time= 18/10/2026 16:16:33
[2026-10-18 16:16:33,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:16:33,180.180 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:16:33,263.263 INFO    ] No existing commands found in stream
[2026-10-18 16:16:38,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:16:38,271.271 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-18 16:16:40,747.747 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:16:40,749.749 INFO    ] Checking for system updates...
[2026-10-18 16:16:40,789.789 INFO    ] 200
[2026-10-18 16:16:40,791.791 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:16:40,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:16:40,846.846 INFO    ] No update needed
[2026-10-18 16:16:40,849.849 INFO    ] Checking for camera pi updates...
[2026-10-18 16:16:40,883.883 INFO    ] 200
[2026-10-18 16:16:40,885.885 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:16:40,932.932 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:16:50,948.948 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:16:50,983.983 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:16:50,992.992 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:16:50,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:16:51,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:16:51,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:16:53,045.045 INFO    ] ================================================
[2026-10-18 16:16:53,061.061 INFO    ] Launching Daemon at Sun Oct 18 16:16:53 IST 2026
[2026-10-18 16:16:53,072.072 INFO    ] ================================================
[2026-10-18 16:16:53,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:16:53
[2026-10-18 16:16:54,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:16:54,594.594 INFO    ] Initializing speech engine...
[2026-10-18 16:16:54,599.599 INFO    ] 2026-10-18 16:16:54
[2026-10-18 16:16:54,852.852 INFO    ] 2026-10-18 16:16:54
[2026-10-18 16:16:54,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:16:55,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:16:55,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:16:55,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:16:55,423.423 INFO    ] time= 18/10/2026 16:16:55
[2026-10-18 16:16:55,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:16:55,447.447 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:16:55,583.583 INFO    ] No existing commands found in stream
[2026-10-18 16:17:00,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:17:00,598.598 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-18 16:17:04,868.868 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:17:04,871.871 INFO    ] Checking for system updates...
[2026-10-18 16:17:04,908.908 INFO    ] 200
[2026-10-18 16:17:04,910.910 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:17:04,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:17:04,966.966 INFO    ] No update needed
[2026-10-18 16:17:04,969.969 INFO    ] Checking for camera pi updates...
[2026-10-18 16:17:05,003.003 INFO    ] 200
[2026-10-18 16:17:05,005.005 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:17:05,050.050 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:17:15,066.066 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:17:15,101.101 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:17:15,110.110 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:17:15,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:17:15,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:17:15,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:17:17,166.166 INFO    ] ================================================
[2026-10-18 16:17:17,181.181 INFO    ] Launching Daemon at Sun Oct 18 16:17:17 IST 2026
[2026-10-18 16:17:17,192.192 INFO    ] ================================================
[2026-10-18 16:17:17,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:17:17
[2026-10-18 16:17:18,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:17:18,658.658 INFO    ] Initializing speech engine...
[2026-10-18 16:17:18,666.666 INFO    ] 2026-10-18 16:17:18
[2026-10-18 16:17:18,919.919 INFO    ] 2026-10-18 16:17:18
[2026-10-18 16:17:18,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:17:19,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:17:19,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:17:19,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:17:19,492.492 INFO    ] time= 18/10/2026 16:17:19
[2026-10-18 16:17:19,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:17:19,516.516 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:17:19,654.654 INFO    ] No existing commands found in stream
[2026-10-18 16:17:24,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:17:24,685.685 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-18 16:17:26,947.947 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:17:26,949.949 INFO    ] Checking for system updates...
[2026-10-18 16:17:26,989.989 INFO    ] 200
[2026-10-18 16:17:26,991.991 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:17:27,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:17:27,053.053 INFO    ] No update needed
[2026-10-18 16:17:27,055.055 INFO    ] Checking for camera pi updates...
[2026-10-18 16:17:27,093.093 INFO    ] 200
[2026-10-18 16:17:27,095.095 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:17:27,136.136 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:17:37,151.151 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:17:37,186.186 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:17:37,196.196 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:17:37,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:17:37,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:17:37,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:17:39,247.247 INFO    ] ================================================
[2026-10-18 16:17:39,264.264 INFO    ] Launching Daemon at Sun Oct 18 16:17:39 IST 2026
[2026-10-18 16:17:39,275.275 INFO    ] ================================================
[2026-10-18 16:17:39,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:17:39
[2026-10-18 16:17:40,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:17:40,841.841 INFO    ] Initializing speech engine...
[2026-10-18 16:17:40,848.848 INFO    ] 2026-10-18 16:17:40
[2026-10-18 16:17:41,103.103 INFO    ] 2026-10-18 16:17:41
[2026-10-18 16:17:41,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:17:41,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:17:41,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:17:41,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:17:41,656.656 INFO    ] time= 18/10/2026 16:17:41
[2026-10-18 16:17:41,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:17:41,701.701 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:17:41,807.807 INFO    ] No existing commands found in stream
[2026-10-18 16:17:46,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:17:46,822.822 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-18 16:17:48,643.643 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:17:48,646.646 INFO    ] Checking for system updates...
[2026-10-18 16:17:48,688.688 INFO    ] 200
[2026-10-18 16:17:48,691.691 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:17:48,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:17:48,761.761 INFO    ] No update needed
[2026-10-18 16:17:48,763.763 INFO    ] Checking for camera pi updates...
[2026-10-18 16:17:48,803.803 INFO    ] 200
[2026-10-18 16:17:48,806.806 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:17:48,858.858 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:17:58,876.876 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:17:58,920.920 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:17:58,930.930 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:17:58,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:17:58,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:17:58,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:18:00,987.987 INFO    ] ================================================
[2026-10-18 16:18:01,003.003 INFO    ] Launching Daemon at Sun Oct 18 16:18:00 IST 2026
[2026-10-18 16:18:01,014.014 INFO    ] ================================================
[2026-10-18 16:18:01,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:18:01
[2026-10-18 16:18:02,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:18:02,978.978 INFO    ] Initializing speech engine...
[2026-10-18 16:18:02,981.981 INFO    ] 2026-10-18 16:18:02
[2026-10-18 16:18:03,306.306 INFO    ] 2026-10-18 16:18:03
[2026-10-18 16:18:03,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:18:03,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:18:03,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:18:03,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:18:03,846.846 INFO    ] time= 18/10/2026 16:18:03
[2026-10-18 16:18:03,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:18:03,950.950 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:18:04,021.021 INFO    ] No existing commands found in stream
[2026-10-18 16:18:09,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:18:09,030.030 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-18 16:18:11,987.987 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:18:11,989.989 INFO    ] Checking for system updates...
[2026-10-18 16:18:12,025.025 INFO    ] 200
[2026-10-18 16:18:12,028.028 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:18:12,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:18:12,084.084 INFO    ] No update needed
[2026-10-18 16:18:12,087.087 INFO    ] Checking for camera pi updates...
[2026-10-18 16:18:12,121.121 INFO    ] 200
[2026-10-18 16:18:12,123.123 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:18:12,172.172 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:18:22,184.184 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:18:22,220.220 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:18:22,229.229 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:18:22,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:18:22,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:18:22,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:18:24,283.283 INFO    ] ================================================
[2026-10-18 16:18:24,299.299 INFO    ] Launching Daemon at Sun Oct 18 16:18:24 IST 2026
[2026-10-18 16:18:24,309.309 INFO    ] ================================================
[2026-10-18 16:18:24,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:18:24
[2026-10-18 16:18:25,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:18:26,043.043 INFO    ] Initializing speech engine...
[2026-10-18 16:18:26,051.051 INFO    ] 2026-10-18 16:18:26
[2026-10-18 16:18:26,332.332 INFO    ] 2026-10-18 16:18:26
[2026-10-18 16:18:26,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:18:26,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:18:26,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:18:26,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:18:26,875.875 INFO    ] time= 18/10/2026 16:18:26
[2026-10-18 16:18:26,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:18:26,900.900 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:18:27,003.003 INFO    ] No existing commands found in stream
[2026-10-18 16:18:32,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:18:32,016.016 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-18 16:18:33,265.265 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:18:33,268.268 INFO    ] Checking for system updates...
[2026-10-18 16:18:33,308.308 INFO    ] 200
[2026-10-18 16:18:33,311.311 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:18:33,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:18:33,373.373 INFO    ] No update needed
[2026-10-18 16:18:33,375.375 INFO    ] Checking for camera pi updates...
[2026-10-18 16:18:33,413.413 INFO    ] 200
[2026-10-18 16:18:33,416.416 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:18:33,455.455 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:18:43,471.471 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:18:43,506.506 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:18:43,515.515 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:18:43,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:18:43,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:18:43,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:18:45,568.568 INFO    ] ================================================
[2026-10-18 16:18:45,584.584 INFO    ] Launching Daemon at Sun Oct 18 16:18:45 IST 2026
[2026-10-18 16:18:45,596.596 INFO    ] ================================================
[2026-10-18 16:18:46,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:18:46
[2026-10-18 16:18:46,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:18:47,013.013 INFO    ] Initializing speech engine...
[2026-10-18 16:18:47,021.021 INFO    ] 2026-10-18 16:18:47
[2026-10-18 16:18:47,322.322 INFO    ] 2026-10-18 16:18:47
[2026-10-18 16:18:47,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:18:47,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:18:47,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:18:47,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:18:47,755.755 INFO    ] time= 18/10/2026 16:18:47
[2026-10-18 16:18:47,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:18:47,783.783 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:18:47,938.938 INFO    ] No existing commands found in stream
[2026-10-18 16:18:52,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:18:52,970.970 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-18 16:18:54,763.763 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:18:54,766.766 INFO    ] Checking for system updates...
[2026-10-18 16:18:54,806.806 INFO    ] 200
[2026-10-18 16:18:54,809.809 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:18:54,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:18:54,871.871 INFO    ] No update needed
[2026-10-18 16:18:54,874.874 INFO    ] Checking for camera pi updates...
[2026-10-18 16:18:54,911.911 INFO    ] 200
[2026-10-18 16:18:54,914.914 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:18:54,954.954 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:19:04,969.969 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:19:05,003.003 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:19:05,013.013 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:19:05,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:19:05,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:19:05,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:19:07,067.067 INFO    ] ================================================
[2026-10-18 16:19:07,082.082 INFO    ] Launching Daemon at Sun Oct 18 16:19:07 IST 2026
[2026-10-18 16:19:07,094.094 INFO    ] ================================================
[2026-10-18 16:19:07,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:19:07
[2026-10-18 16:19:08,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:19:08,548.548 INFO    ] Initializing speech engine...
[2026-10-18 16:19:08,562.562 INFO    ] 2026-10-18 16:19:08
[2026-10-18 16:19:08,848.848 INFO    ] 2026-10-18 16:19:08
[2026-10-18 16:19:08,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:19:09,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:19:09,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:19:09,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:19:09,352.352 INFO    ] time= 18/10/2026 16:19:09
[2026-10-18 16:19:09,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:19:09,460.460 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:19:09,622.622 INFO    ] No existing commands found in stream
[2026-10-18 16:19:14,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:19:14,656.656 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-18 16:19:15,862.862 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:19:15,865.865 INFO    ] Checking for system updates...
[2026-10-18 16:19:15,901.901 INFO    ] 200
[2026-10-18 16:19:15,903.903 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:19:15,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:19:15,960.960 INFO    ] No update needed
[2026-10-18 16:19:15,963.963 INFO    ] Checking for camera pi updates...
[2026-10-18 16:19:15,997.997 INFO    ] 200
[2026-10-18 16:19:16,000.000 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:19:16,044.044 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:19:26,060.060 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:19:26,096.096 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:19:26,106.106 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:19:26,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:19:26,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:19:26,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:19:28,158.158 INFO    ] ================================================
[2026-10-18 16:19:28,173.173 INFO    ] Launching Daemon at Sun Oct 18 16:19:28 IST 2026
[2026-10-18 16:19:28,184.184 INFO    ] ================================================
[2026-10-18 16:19:28,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:19:28
[2026-10-18 16:19:29,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:19:29,797.797 INFO    ] Initializing speech engine...
[2026-10-18 16:19:29,811.811 INFO    ] 2026-10-18 16:19:29
[2026-10-18 16:19:30,080.080 INFO    ] 2026-10-18 16:19:30
[2026-10-18 16:19:30,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:19:30,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:19:30,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:19:30,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:19:30,641.641 INFO    ] time= 18/10/2026 16:19:30
[2026-10-18 16:19:30,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:19:30,693.693 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:19:30,855.855 INFO    ] No existing commands found in stream
[2026-10-18 16:19:35,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:19:35,894.894 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-18 16:19:39,124.124 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:19:39,127.127 INFO    ] Checking for system updates...
[2026-10-18 16:19:39,171.171 INFO    ] 200
[2026-10-18 16:19:39,174.174 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:19:39,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:19:39,234.234 INFO    ] No update needed
[2026-10-18 16:19:39,237.237 INFO    ] Checking for camera pi updates...
[2026-10-18 16:19:39,279.279 INFO    ] 200
[2026-10-18 16:19:39,282.282 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:19:39,345.345 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:19:49,361.361 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:19:49,401.401 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:19:49,412.412 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:19:49,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:19:49,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:19:49,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:19:51,467.467 INFO    ] ================================================
[2026-10-18 16:19:51,482.482 INFO    ] Launching Daemon at Sun Oct 18 16:19:51 IST 2026
[2026-10-18 16:19:51,493.493 INFO    ] ================================================
[2026-10-18 16:19:52,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:19:52
[2026-10-18 16:19:52,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:19:53,089.089 INFO    ] Initializing speech engine...
[2026-10-18 16:19:53,102.102 INFO    ] 2026-10-18 16:19:53
[2026-10-18 16:19:53,393.393 INFO    ] 2026-10-18 16:19:53
[2026-10-18 16:19:53,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:19:53,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:19:53,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:19:53,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:19:53,935.935 INFO    ] time= 18/10/2026 16:19:53
[2026-10-18 16:19:53,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:19:53,983.983 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:19:54,095.095 INFO    ] No existing commands found in stream
[2026-10-18 16:19:59,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:19:59,122.122 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-18 16:20:00,770.770 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:20:00,773.773 INFO    ] Checking for system updates...
[2026-10-18 16:20:00,813.813 INFO    ] 200
[2026-10-18 16:20:00,816.816 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:20:00,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:20:00,874.874 INFO    ] No update needed
[2026-10-18 16:20:00,877.877 INFO    ] Checking for camera pi updates...
[2026-10-18 16:20:00,915.915 INFO    ] 200
[2026-10-18 16:20:00,918.918 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:20:00,965.965 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:20:10,982.982 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:20:11,024.024 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:20:11,036.036 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:20:11,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:20:11,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:20:11,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:20:13,091.091 INFO    ] ================================================
[2026-10-18 16:20:13,107.107 INFO    ] Launching Daemon at Sun Oct 18 16:20:13 IST 2026
[2026-10-18 16:20:13,117.117 INFO    ] ================================================
[2026-10-18 16:20:13,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:20:13
[2026-10-18 16:20:14,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:20:14,569.569 INFO    ] Initializing speech engine...
[2026-10-18 16:20:14,579.579 INFO    ] 2026-10-18 16:20:14
[2026-10-18 16:20:14,857.857 INFO    ] 2026-10-18 16:20:14
[2026-10-18 16:20:14,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:20:15,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:20:15,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:20:15,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:20:15,372.372 INFO    ] time= 18/10/2026 16:20:15
[2026-10-18 16:20:15,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:20:15,497.497 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:20:15,581.581 INFO    ] No existing commands found in stream
[2026-10-18 16:20:20,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:20:20,596.596 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-18 16:20:23,101.101 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:20:23,104.104 INFO    ] Checking for system updates...
[2026-10-18 16:20:23,141.141 INFO    ] 200
[2026-10-18 16:20:23,143.143 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:20:23,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:20:23,199.199 INFO    ] No update needed
[2026-10-18 16:20:23,201.201 INFO    ] Checking for camera pi updates...
[2026-10-18 16:20:23,235.235 INFO    ] 200
[2026-10-18 16:20:23,237.237 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:20:23,281.281 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:20:33,294.294 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:20:33,345.345 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:20:33,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:20:33,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:20:33,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:20:33,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:20:35,416.416 INFO    ] ================================================
[2026-10-18 16:20:35,431.431 INFO    ] Launching Daemon at Sun Oct 18 16:20:35 IST 2026
[2026-10-18 16:20:35,442.442 INFO    ] ================================================
[2026-10-18 16:20:36,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:20:36
[2026-10-18 16:20:36,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:20:36,858.858 INFO    ] Initializing speech engine...
[2026-10-18 16:20:36,865.865 INFO    ] 2026-10-18 16:20:36
[2026-10-18 16:20:37,169.169 INFO    ] 2026-10-18 16:20:37
[2026-10-18 16:20:37,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:20:37,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:20:37,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:20:37,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:20:37,605.605 INFO    ] time= 18/10/2026 16:20:37
[2026-10-18 16:20:37,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:20:37,639.639 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:20:37,780.780 INFO    ] No existing commands found in stream
[2026-10-18 16:20:42,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:20:42,808.808 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-18 16:20:45,070.070 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:20:45,073.073 INFO    ] Checking for system updates...
[2026-10-18 16:20:45,108.108 INFO    ] 200
[2026-10-18 16:20:45,111.111 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:20:45,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:20:45,181.181 INFO    ] No update needed
[2026-10-18 16:20:45,183.183 INFO    ] Checking for camera pi updates...
[2026-10-18 16:20:45,224.224 INFO    ] 200
[2026-10-18 16:20:45,227.227 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:20:45,276.276 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:20:55,294.294 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:20:55,335.335 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:20:55,347.347 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:20:55,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:20:55,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:20:55,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:20:57,402.402 INFO    ] ================================================
[2026-10-18 16:20:57,418.418 INFO    ] Launching Daemon at Sun Oct 18 16:20:57 IST 2026
[2026-10-18 16:20:57,428.428 INFO    ] ================================================
[2026-10-18 16:20:57,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:20:57
[2026-10-18 16:20:58,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:20:58,848.848 INFO    ] Initializing speech engine...
[2026-10-18 16:20:58,867.867 INFO    ] 2026-10-18 16:20:58
[2026-10-18 16:20:59,119.119 INFO    ] 2026-10-18 16:20:59
[2026-10-18 16:20:59,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:20:59,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:20:59,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:20:59,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:20:59,616.616 INFO    ] time= 18/10/2026 16:20:59
[2026-10-18 16:20:59,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:20:59,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:20:59,792.792 INFO    ] No existing commands found in stream
[2026-10-18 16:21:04,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:21:04,824.824 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-18 16:21:06,791.791 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:21:06,796.796 INFO    ] Checking for system updates...
[2026-10-18 16:21:06,831.831 INFO    ] 200
[2026-10-18 16:21:06,834.834 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:21:06,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:21:06,889.889 INFO    ] No update needed
[2026-10-18 16:21:06,891.891 INFO    ] Checking for camera pi updates...
[2026-10-18 16:21:06,925.925 INFO    ] 200
[2026-10-18 16:21:06,927.927 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:21:06,967.967 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:21:16,983.983 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:21:17,018.018 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:21:17,028.028 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:21:17,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:21:17,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:21:17,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:21:19,081.081 INFO    ] ================================================
[2026-10-18 16:21:19,096.096 INFO    ] Launching Daemon at Sun Oct 18 16:21:19 IST 2026
[2026-10-18 16:21:19,107.107 INFO    ] ================================================
[2026-10-18 16:21:19,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:21:19
[2026-10-18 16:21:20,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:21:20,753.753 INFO    ] Initializing speech engine...
[2026-10-18 16:21:20,762.762 INFO    ] 2026-10-18 16:21:20
[2026-10-18 16:21:21,050.050 INFO    ] 2026-10-18 16:21:21
[2026-10-18 16:21:21,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:21:21,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:21:21,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:21:21,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:21:21,601.601 INFO    ] time= 18/10/2026 16:21:21
[2026-10-18 16:21:21,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:21:21,627.627 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:21:21,762.762 INFO    ] No existing commands found in stream
[2026-10-18 16:21:26,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:21:26,795.795 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-18 16:21:29,607.607 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:21:29,610.610 INFO    ] Checking for system updates...
[2026-10-18 16:21:29,645.645 INFO    ] 200
[2026-10-18 16:21:29,648.648 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:21:29,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:21:29,709.709 INFO    ] No update needed
[2026-10-18 16:21:29,711.711 INFO    ] Checking for camera pi updates...
[2026-10-18 16:21:29,745.745 INFO    ] 200
[2026-10-18 16:21:29,748.748 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:21:29,788.788 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:21:39,802.802 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:21:39,837.837 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:21:39,847.847 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:21:39,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:21:39,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:21:39,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:21:41,899.899 INFO    ] ================================================
[2026-10-18 16:21:41,914.914 INFO    ] Launching Daemon at Sun Oct 18 16:21:41 IST 2026
[2026-10-18 16:21:41,925.925 INFO    ] ================================================
[2026-10-18 16:21:42,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:21:42
[2026-10-18 16:21:43,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:21:43,376.376 INFO    ] Initializing speech engine...
[2026-10-18 16:21:43,385.385 INFO    ] 2026-10-18 16:21:43
[2026-10-18 16:21:43,647.647 INFO    ] 2026-10-18 16:21:43
[2026-10-18 16:21:43,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:21:43,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:21:43,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:21:44,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:21:44,179.179 INFO    ] time= 18/10/2026 16:21:44
[2026-10-18 16:21:44,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:21:44,214.214 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:21:44,358.358 INFO    ] No existing commands found in stream
[2026-10-18 16:21:49,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:21:49,392.392 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-18 16:21:52,665.665 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:21:52,667.667 INFO    ] Checking for system updates...
[2026-10-18 16:21:52,704.704 INFO    ] 200
[2026-10-18 16:21:52,707.707 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:21:52,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:21:52,761.761 INFO    ] No update needed
[2026-10-18 16:21:52,764.764 INFO    ] Checking for camera pi updates...
[2026-10-18 16:21:52,798.798 INFO    ] 200
[2026-10-18 16:21:52,800.800 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:21:52,840.840 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:22:02,854.854 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:22:02,902.902 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:22:02,915.915 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:22:02,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:22:02,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:22:02,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:22:04,972.972 INFO    ] ================================================
[2026-10-18 16:22:04,987.987 INFO    ] Launching Daemon at Sun Oct 18 16:22:04 IST 2026
[2026-10-18 16:22:05,998.998 INFO    ] ================================================
[2026-10-18 16:22:05,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:22:05
[2026-10-18 16:22:06,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:22:06,458.458 INFO    ] Initializing speech engine...
[2026-10-18 16:22:06,468.468 INFO    ] 2026-10-18 16:22:06
[2026-10-18 16:22:06,726.726 INFO    ] 2026-10-18 16:22:06
[2026-10-18 16:22:06,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:22:07,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:22:07,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:22:07,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:22:07,268.268 INFO    ] time= 18/10/2026 16:22:07
[2026-10-18 16:22:07,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:22:07,292.292 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:22:07,419.419 INFO    ] No existing commands found in stream
[2026-10-18 16:22:12,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:22:12,437.437 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-18 16:22:15,812.812 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:22:15,815.815 INFO    ] Checking for system updates...
[2026-10-18 16:22:15,855.855 INFO    ] 200
[2026-10-18 16:22:15,857.857 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:22:15,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:22:15,918.918 INFO    ] No update needed
[2026-10-18 16:22:15,920.920 INFO    ] Checking for camera pi updates...
[2026-10-18 16:22:15,954.954 INFO    ] 200
[2026-10-18 16:22:15,956.956 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:22:15,996.996 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:22:26,012.012 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:22:26,048.048 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:22:26,058.058 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:22:26,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:22:26,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:22:26,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:22:28,110.110 INFO    ] ================================================
[2026-10-18 16:22:28,125.125 INFO    ] Launching Daemon at Sun Oct 18 16:22:28 IST 2026
[2026-10-18 16:22:28,136.136 INFO    ] ================================================
[2026-10-18 16:22:28,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:22:28
[2026-10-18 16:22:29,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:22:29,578.578 INFO    ] Initializing speech engine...
[2026-10-18 16:22:29,602.602 INFO    ] 2026-10-18 16:22:29
[2026-10-18 16:22:29,878.878 INFO    ] 2026-10-18 16:22:29
[2026-10-18 16:22:29,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:22:30,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:22:30,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:22:30,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:22:30,412.412 INFO    ] time= 18/10/2026 16:22:30
[2026-10-18 16:22:30,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:22:30,454.454 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:22:30,600.600 INFO    ] No existing commands found in stream
[2026-10-18 16:22:35,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:22:35,617.617 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-18 16:22:37,407.407 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:22:37,410.410 INFO    ] Checking for system updates...
[2026-10-18 16:22:37,447.447 INFO    ] 200
[2026-10-18 16:22:37,450.450 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:22:37,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:22:37,511.511 INFO    ] No update needed
[2026-10-18 16:22:37,513.513 INFO    ] Checking for camera pi updates...
[2026-10-18 16:22:37,547.547 INFO    ] 200
[2026-10-18 16:22:37,549.549 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:22:37,598.598 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:22:47,613.613 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:22:47,658.658 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:22:47,669.669 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:22:47,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:22:47,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:22:47,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:22:49,725.725 INFO    ] ================================================
[2026-10-18 16:22:49,740.740 INFO    ] Launching Daemon at Sun Oct 18 16:22:49 IST 2026
[2026-10-18 16:22:49,751.751 INFO    ] ================================================
[2026-10-18 16:22:50,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:22:50
[2026-10-18 16:22:51,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:22:51,296.296 INFO    ] Initializing speech engine...
[2026-10-18 16:22:51,304.304 INFO    ] 2026-10-18 16:22:51
[2026-10-18 16:22:51,552.552 INFO    ] 2026-10-18 16:22:51
[2026-10-18 16:22:51,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:22:51,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:22:51,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:22:52,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:22:52,089.089 INFO    ] time= 18/10/2026 16:22:52
[2026-10-18 16:22:52,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:22:52,173.173 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:22:52,295.295 INFO    ] No existing commands found in stream
[2026-10-18 16:22:57,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:22:57,335.335 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-18 16:22:58,912.912 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:22:58,915.915 INFO    ] Checking for system updates...
[2026-10-18 16:22:58,951.951 INFO    ] 200
[2026-10-18 16:22:58,953.953 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:22:59,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:22:59,009.009 INFO    ] No update needed
[2026-10-18 16:22:59,011.011 INFO    ] Checking for camera pi updates...
[2026-10-18 16:22:59,044.044 INFO    ] 200
[2026-10-18 16:22:59,047.047 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:22:59,087.087 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:23:09,101.101 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:23:09,136.136 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:23:09,145.145 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:23:09,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:23:09,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:23:09,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:23:11,197.197 INFO    ] ================================================
[2026-10-18 16:23:11,213.213 INFO    ] Launching Daemon at Sun Oct 18 16:23:11 IST 2026
[2026-10-18 16:23:11,224.224 INFO    ] ================================================
[2026-10-18 16:23:11,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:23:11
[2026-10-18 16:23:12,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:23:12,641.641 INFO    ] Initializing speech engine...
[2026-10-18 16:23:12,650.650 INFO    ] 2026-10-18 16:23:12
[2026-10-18 16:23:12,950.950 INFO    ] 2026-10-18 16:23:12
[2026-10-18 16:23:12,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:23:13,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:23:13,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:23:13,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:23:13,382.382 INFO    ] time= 18/10/2026 16:23:13
[2026-10-18 16:23:13,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:23:13,394.394 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:23:13,470.470 INFO    ] No existing commands found in stream
[2026-10-18 16:23:18,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:23:18,509.509 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-18 16:23:22,731.731 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:23:22,734.734 INFO    ] Checking for system updates...
[2026-10-18 16:23:22,776.776 INFO    ] 200
[2026-10-18 16:23:22,779.779 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:23:22,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:23:22,833.833 INFO    ] No update needed
[2026-10-18 16:23:22,836.836 INFO    ] Checking for camera pi updates...
[2026-10-18 16:23:22,874.874 INFO    ] 200
[2026-10-18 16:23:22,877.877 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:23:22,925.925 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:23:32,936.936 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:23:32,973.973 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:23:32,983.983 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:23:32,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:23:32,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:23:32,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:23:35,037.037 INFO    ] ================================================
[2026-10-18 16:23:35,053.053 INFO    ] Launching Daemon at Sun Oct 18 16:23:35 IST 2026
[2026-10-18 16:23:35,064.064 INFO    ] ================================================
[2026-10-18 16:23:35,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:23:35
[2026-10-18 16:23:36,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:23:36,795.795 INFO    ] Initializing speech engine...
[2026-10-18 16:23:36,805.805 INFO    ] 2026-10-18 16:23:36
[2026-10-18 16:23:37,146.146 INFO    ] 2026-10-18 16:23:37
[2026-10-18 16:23:37,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:23:37,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:23:37,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:23:37,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:23:37,678.678 INFO    ] time= 18/10/2026 16:23:37
[2026-10-18 16:23:37,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:23:37,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:23:37,818.818 INFO    ] No existing commands found in stream
[2026-10-18 16:23:42,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:23:42,830.830 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-18 16:23:44,731.731 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:23:44,733.733 INFO    ] Checking for system updates...
[2026-10-18 16:23:44,769.769 INFO    ] 200
[2026-10-18 16:23:44,771.771 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:23:44,823.823 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:23:44,826.826 INFO    ] No update needed
[2026-10-18 16:23:44,828.828 INFO    ] Checking for camera pi updates...
[2026-10-18 16:23:44,861.861 INFO    ] 200
[2026-10-18 16:23:44,864.864 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:23:44,909.909 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:23:54,924.924 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:23:54,959.959 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:23:54,968.968 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:23:54,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:23:54,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:23:54,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:23:57,023.023 INFO    ] ================================================
[2026-10-18 16:23:57,039.039 INFO    ] Launching Daemon at Sun Oct 18 16:23:57 IST 2026
[2026-10-18 16:23:57,050.050 INFO    ] ================================================
[2026-10-18 16:23:57,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:23:57
[2026-10-18 16:23:58,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:23:58,482.482 INFO    ] Initializing speech engine...
[2026-10-18 16:23:58,489.489 INFO    ] 2026-10-18 16:23:58
[2026-10-18 16:23:58,750.750 INFO    ] 2026-10-18 16:23:58
[2026-10-18 16:23:58,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:23:59,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:23:59,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:23:59,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:23:59,290.290 INFO    ] time= 18/10/2026 16:23:59
[2026-10-18 16:23:59,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:23:59,317.317 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:23:59,449.449 INFO    ] No existing commands found in stream
[2026-10-18 16:24:04,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:24:04,478.478 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-18 16:24:07,447.447 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:24:07,450.450 INFO    ] Checking for system updates...
[2026-10-18 16:24:07,486.486 INFO    ] 200
[2026-10-18 16:24:07,488.488 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:24:07,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:24:07,543.543 INFO    ] No update needed
[2026-10-18 16:24:07,546.546 INFO    ] Checking for camera pi updates...
[2026-10-18 16:24:07,579.579 INFO    ] 200
[2026-10-18 16:24:07,581.581 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:24:07,621.621 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:24:17,636.636 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:24:17,671.671 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:24:17,680.680 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:24:17,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:24:17,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:24:17,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:24:19,732.732 INFO    ] ================================================
[2026-10-18 16:24:19,748.748 INFO    ] Launching Daemon at Sun Oct 18 16:24:19 IST 2026
[2026-10-18 16:24:19,760.760 INFO    ] ================================================
[2026-10-18 16:24:20,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:24:20
[2026-10-18 16:24:20,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:24:21,219.219 INFO    ] Initializing speech engine...
[2026-10-18 16:24:21,229.229 INFO    ] 2026-10-18 16:24:21
[2026-10-18 16:24:21,490.490 INFO    ] 2026-10-18 16:24:21
[2026-10-18 16:24:21,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:24:21,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:24:21,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:24:21,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:24:21,993.993 INFO    ] time= 18/10/2026 16:24:21
[2026-10-18 16:24:22,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:24:22,086.086 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:24:22,197.197 INFO    ] No existing commands found in stream
[2026-10-18 16:24:27,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:24:27,212.212 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-18 16:24:30,495.495 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:24:30,498.498 INFO    ] Checking for system updates...
[2026-10-18 16:24:30,538.538 INFO    ] 200
[2026-10-18 16:24:30,541.541 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:24:30,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:24:30,595.595 INFO    ] No update needed
[2026-10-18 16:24:30,598.598 INFO    ] Checking for camera pi updates...
[2026-10-18 16:24:30,648.648 INFO    ] 200
[2026-10-18 16:24:30,651.651 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:24:30,697.697 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:24:40,713.713 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:24:40,749.749 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:24:40,758.758 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:24:40,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:24:40,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:24:40,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:24:42,812.812 INFO    ] ================================================
[2026-10-18 16:24:42,827.827 INFO    ] Launching Daemon at Sun Oct 18 16:24:42 IST 2026
[2026-10-18 16:24:42,838.838 INFO    ] ================================================
[2026-10-18 16:24:43,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:24:43
[2026-10-18 16:24:44,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:24:44,491.491 INFO    ] Initializing speech engine...
[2026-10-18 16:24:44,503.503 INFO    ] 2026-10-18 16:24:44
[2026-10-18 16:24:44,812.812 INFO    ] 2026-10-18 16:24:44
[2026-10-18 16:24:44,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:24:45,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:24:45,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:24:45,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:24:45,337.337 INFO    ] time= 18/10/2026 16:24:45
[2026-10-18 16:24:45,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:24:45,372.372 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:24:45,487.487 INFO    ] No existing commands found in stream
[2026-10-18 16:24:50,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:24:50,516.516 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-18 16:24:54,622.622 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:24:54,625.625 INFO    ] Checking for system updates...
[2026-10-18 16:24:54,662.662 INFO    ] 200
[2026-10-18 16:24:54,665.665 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:24:54,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:24:54,729.729 INFO    ] No update needed
[2026-10-18 16:24:54,732.732 INFO    ] Checking for camera pi updates...
[2026-10-18 16:24:54,766.766 INFO    ] 200
[2026-10-18 16:24:54,769.769 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:24:54,816.816 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:25:04,832.832 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:25:04,873.873 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:25:04,884.884 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:25:04,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:25:04,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:25:04,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:25:06,939.939 INFO    ] ================================================
[2026-10-18 16:25:06,955.955 INFO    ] Launching Daemon at Sun Oct 18 16:25:06 IST 2026
[2026-10-18 16:25:06,966.966 INFO    ] ================================================
[2026-10-18 16:25:07,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:25:07
[2026-10-18 16:25:08,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:25:08,392.392 INFO    ] Initializing speech engine...
[2026-10-18 16:25:08,402.402 INFO    ] 2026-10-18 16:25:08
[2026-10-18 16:25:08,649.649 INFO    ] 2026-10-18 16:25:08
[2026-10-18 16:25:08,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:25:08,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:25:08,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:25:09,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:25:09,057.057 INFO    ] time= 18/10/2026 16:25:09
[2026-10-18 16:25:09,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:25:09,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:25:09,213.213 INFO    ] No existing commands found in stream
[2026-10-18 16:25:14,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:25:14,241.241 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-18 16:25:18,601.601 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:25:18,604.604 INFO    ] Checking for system updates...
[2026-10-18 16:25:18,639.639 INFO    ] 200
[2026-10-18 16:25:18,642.642 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:25:18,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:25:18,703.703 INFO    ] No update needed
[2026-10-18 16:25:18,705.705 INFO    ] Checking for camera pi updates...
[2026-10-18 16:25:18,742.742 INFO    ] 200
[2026-10-18 16:25:18,745.745 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:25:18,784.784 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:25:28,800.800 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:25:28,837.837 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:25:28,847.847 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:25:28,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:25:28,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:25:28,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:25:30,899.899 INFO    ] ================================================
[2026-10-18 16:25:30,915.915 INFO    ] Launching Daemon at Sun Oct 18 16:25:30 IST 2026
[2026-10-18 16:25:30,926.926 INFO    ] ================================================
[2026-10-18 16:25:31,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:25:31
[2026-10-18 16:25:32,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:25:32,624.624 INFO    ] Initializing speech engine...
[2026-10-18 16:25:32,632.632 INFO    ] 2026-10-18 16:25:32
[2026-10-18 16:25:32,939.939 INFO    ] 2026-10-18 16:25:32
[2026-10-18 16:25:32,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:25:33,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:25:33,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:25:33,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:25:33,470.470 INFO    ] time= 18/10/2026 16:25:33
[2026-10-18 16:25:33,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:25:33,509.509 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:25:33,652.652 INFO    ] No existing commands found in stream
[2026-10-18 16:25:38,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:25:38,691.691 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-18 16:25:42,025.025 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:25:42,028.028 INFO    ] Checking for system updates...
[2026-10-18 16:25:42,070.070 INFO    ] 200
[2026-10-18 16:25:42,073.073 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:25:42,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:25:42,141.141 INFO    ] No update needed
[2026-10-18 16:25:42,143.143 INFO    ] Checking for camera pi updates...
[2026-10-18 16:25:42,180.180 INFO    ] 200
[2026-10-18 16:25:42,183.183 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:25:42,224.224 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:25:52,238.238 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:25:52,278.278 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:25:52,290.290 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:25:52,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:25:52,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:25:52,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:25:54,347.347 INFO    ] ================================================
[2026-10-18 16:25:54,362.362 INFO    ] Launching Daemon at Sun Oct 18 16:25:54 IST 2026
[2026-10-18 16:25:54,372.372 INFO    ] ================================================
[2026-10-18 16:25:54,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:25:54
[2026-10-18 16:25:55,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:25:55,776.776 INFO    ] Initializing speech engine...
[2026-10-18 16:25:55,790.790 INFO    ] 2026-10-18 16:25:55
[2026-10-18 16:25:56,057.057 INFO    ] 2026-10-18 16:25:56
[2026-10-18 16:25:56,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:25:56,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:25:56,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:25:56,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:25:56,547.547 INFO    ] time= 18/10/2026 16:25:56
[2026-10-18 16:25:56,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:25:56,636.636 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:25:56,778.778 INFO    ] No existing commands found in stream
[2026-10-18 16:26:01,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:26:01,801.801 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-18 16:26:03,061.061 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:26:03,065.065 INFO    ] Checking for system updates...
[2026-10-18 16:26:03,102.102 INFO    ] 200
[2026-10-18 16:26:03,105.105 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:26:03,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:26:03,176.176 INFO    ] No update needed
[2026-10-18 16:26:03,179.179 INFO    ] Checking for camera pi updates...
[2026-10-18 16:26:03,213.213 INFO    ] 200
[2026-10-18 16:26:03,216.216 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:26:03,273.273 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:26:13,288.288 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:26:13,327.327 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:26:13,338.338 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:26:13,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:26:13,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:26:13,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:26:15,393.393 INFO    ] ================================================
[2026-10-18 16:26:15,408.408 INFO    ] Launching Daemon at Sun Oct 18 16:26:15 IST 2026
[2026-10-18 16:26:15,419.419 INFO    ] ================================================
[2026-10-18 16:26:16,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:26:15
[2026-10-18 16:26:16,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:26:16,880.880 INFO    ] Initializing speech engine...
[2026-10-18 16:26:16,887.887 INFO    ] 2026-10-18 16:26:16
[2026-10-18 16:26:17,148.148 INFO    ] 2026-10-18 16:26:17
[2026-10-18 16:26:17,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:26:17,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:26:17,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:26:17,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:26:17,691.691 INFO    ] time= 18/10/2026 16:26:17
[2026-10-18 16:26:17,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:26:17,714.714 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:26:17,858.858 INFO    ] No existing commands found in stream
[2026-10-18 16:26:22,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:26:22,888.888 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-18 16:26:25,250.250 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:26:25,253.253 INFO    ] Checking for system updates...
[2026-10-18 16:26:25,291.291 INFO    ] 200
[2026-10-18 16:26:25,294.294 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:26:25,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:26:25,351.351 INFO    ] No update needed
[2026-10-18 16:26:25,353.353 INFO    ] Checking for camera pi updates...
[2026-10-18 16:26:25,387.387 INFO    ] 200
[2026-10-18 16:26:25,389.389 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:26:25,433.433 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:26:35,448.448 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:26:35,483.483 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:26:35,493.493 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:26:35,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:26:35,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:26:35,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:26:37,547.547 INFO    ] ================================================
[2026-10-18 16:26:37,562.562 INFO    ] Launching Daemon at Sun Oct 18 16:26:37 IST 2026
[2026-10-18 16:26:37,573.573 INFO    ] ================================================
[2026-10-18 16:26:38,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:26:38
[2026-10-18 16:26:38,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:26:38,996.996 INFO    ] Initializing speech engine...
[2026-10-18 16:26:39,006.006 INFO    ] 2026-10-18 16:26:38
[2026-10-18 16:26:39,265.265 INFO    ] 2026-10-18 16:26:39
[2026-10-18 16:26:39,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:26:39,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:26:39,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:26:39,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:26:39,731.731 INFO    ] time= 18/10/2026 16:26:39
[2026-10-18 16:26:39,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:26:39,813.813 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:26:39,962.962 INFO    ] No existing commands found in stream
[2026-10-18 16:26:44,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:26:44,979.979 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-18 16:26:45,767.767 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:26:45,769.769 INFO    ] Checking for system updates...
[2026-10-18 16:26:45,808.808 INFO    ] 200
[2026-10-18 16:26:45,811.811 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:26:45,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:26:45,865.865 INFO    ] No update needed
[2026-10-18 16:26:45,867.867 INFO    ] Checking for camera pi updates...
[2026-10-18 16:26:45,903.903 INFO    ] 200
[2026-10-18 16:26:45,906.906 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:26:45,949.949 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:26:55,963.963 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:26:55,998.998 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:26:56,007.007 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:26:56,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:26:56,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:26:56,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:26:58,060.060 INFO    ] ================================================
[2026-10-18 16:26:58,075.075 INFO    ] Launching Daemon at Sun Oct 18 16:26:58 IST 2026
[2026-10-18 16:26:58,086.086 INFO    ] ================================================
[2026-10-18 16:26:58,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:26:58
[2026-10-18 16:26:59,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:26:59,639.639 INFO    ] Initializing speech engine...
[2026-10-18 16:26:59,646.646 INFO    ] 2026-10-18 16:26:59
[2026-10-18 16:26:59,914.914 INFO    ] 2026-10-18 16:26:59
[2026-10-18 16:26:59,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:27:00,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:27:00,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:27:00,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:27:00,464.464 INFO    ] time= 18/10/2026 16:27:00
[2026-10-18 16:27:00,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:27:00,512.512 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:27:00,688.688 INFO    ] No existing commands found in stream
[2026-10-18 16:27:05,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:27:05,728.728 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-18 16:27:10,204.204 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:27:10,207.207 INFO    ] Checking for system updates...
[2026-10-18 16:27:10,243.243 INFO    ] 200
[2026-10-18 16:27:10,246.246 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:27:10,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:27:10,303.303 INFO    ] No update needed
[2026-10-18 16:27:10,306.306 INFO    ] Checking for camera pi updates...
[2026-10-18 16:27:10,340.340 INFO    ] 200
[2026-10-18 16:27:10,343.343 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:27:10,385.385 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:27:20,401.401 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:27:20,441.441 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:27:20,452.452 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:27:20,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:27:20,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:27:20,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:27:22,506.506 INFO    ] ================================================
[2026-10-18 16:27:22,521.521 INFO    ] Launching Daemon at Sun Oct 18 16:27:22 IST 2026
[2026-10-18 16:27:22,532.532 INFO    ] ================================================
[2026-10-18 16:27:23,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:27:23
[2026-10-18 16:27:23,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:27:23,953.953 INFO    ] Initializing speech engine...
[2026-10-18 16:27:23,961.961 INFO    ] 2026-10-18 16:27:23
[2026-10-18 16:27:24,213.213 INFO    ] 2026-10-18 16:27:24
[2026-10-18 16:27:24,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:27:24,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:27:24,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:27:24,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:27:24,781.781 INFO    ] time= 18/10/2026 16:27:24
[2026-10-18 16:27:24,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:27:24,804.804 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:27:24,940.940 INFO    ] No existing commands found in stream
[2026-10-18 16:27:29,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:27:29,965.965 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-18 16:27:31,315.315 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:27:31,318.318 INFO    ] Checking for system updates...
[2026-10-18 16:27:31,355.355 INFO    ] 200
[2026-10-18 16:27:31,358.358 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:27:31,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:27:31,427.427 INFO    ] No update needed
[2026-10-18 16:27:31,430.430 INFO    ] Checking for camera pi updates...
[2026-10-18 16:27:31,468.468 INFO    ] 200
[2026-10-18 16:27:31,470.470 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:27:31,517.517 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:27:41,534.534 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:27:41,574.574 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:27:41,584.584 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:27:41,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:27:41,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:27:41,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:27:43,639.639 INFO    ] ================================================
[2026-10-18 16:27:43,654.654 INFO    ] Launching Daemon at Sun Oct 18 16:27:43 IST 2026
[2026-10-18 16:27:43,665.665 INFO    ] ================================================
[2026-10-18 16:27:44,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:27:44
[2026-10-18 16:27:44,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:27:45,093.093 INFO    ] Initializing speech engine...
[2026-10-18 16:27:45,101.101 INFO    ] 2026-10-18 16:27:45
[2026-10-18 16:27:45,353.353 INFO    ] 2026-10-18 16:27:45
[2026-10-18 16:27:45,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:27:45,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:27:45,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:27:45,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:27:45,827.827 INFO    ] time= 18/10/2026 16:27:45
[2026-10-18 16:27:45,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:27:45,915.915 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:27:46,075.075 INFO    ] No existing commands found in stream
[2026-10-18 16:27:51,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:27:51,092.092 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-18 16:27:53,594.594 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:27:53,597.597 INFO    ] Checking for system updates...
[2026-10-18 16:27:53,633.633 INFO    ] 200
[2026-10-18 16:27:53,636.636 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:27:53,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:27:53,699.699 INFO    ] No update needed
[2026-10-18 16:27:53,702.702 INFO    ] Checking for camera pi updates...
[2026-10-18 16:27:53,740.740 INFO    ] 200
[2026-10-18 16:27:53,743.743 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:27:53,789.789 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:28:03,804.804 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:28:03,845.845 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:28:03,856.856 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:28:03,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:28:03,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:28:03,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:28:05,913.913 INFO    ] ================================================
[2026-10-18 16:28:05,928.928 INFO    ] Launching Daemon at Sun Oct 18 16:28:05 IST 2026
[2026-10-18 16:28:05,939.939 INFO    ] ================================================
[2026-10-18 16:28:06,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:28:06
[2026-10-18 16:28:07,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:28:07,371.371 INFO    ] Initializing speech engine...
[2026-10-18 16:28:07,380.380 INFO    ] 2026-10-18 16:28:07
[2026-10-18 16:28:07,629.629 INFO    ] 2026-10-18 16:28:07
[2026-10-18 16:28:07,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:28:07,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:28:07,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:28:08,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:28:08,008.008 INFO    ] time= 18/10/2026 16:28:08
[2026-10-18 16:28:08,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:28:08,076.076 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:28:08,205.205 INFO    ] No existing commands found in stream
[2026-10-18 16:28:13,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:28:13,220.220 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-18 16:28:15,959.959 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:28:15,962.962 INFO    ] Checking for system updates...
[2026-10-18 16:28:15,998.998 INFO    ] 200
[2026-10-18 16:28:16,000.000 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:28:16,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:28:16,056.056 INFO    ] No update needed
[2026-10-18 16:28:16,059.059 INFO    ] Checking for camera pi updates...
[2026-10-18 16:28:16,092.092 INFO    ] 200
[2026-10-18 16:28:16,095.095 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:28:16,135.135 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:28:26,149.149 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:28:26,183.183 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:28:26,192.192 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:28:26,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:28:26,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:28:26,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:28:28,244.244 INFO    ] ================================================
[2026-10-18 16:28:28,259.259 INFO    ] Launching Daemon at Sun Oct 18 16:28:28 IST 2026
[2026-10-18 16:28:28,271.271 INFO    ] ================================================
[2026-10-18 16:28:28,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:28:28
[2026-10-18 16:28:29,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:28:29,700.700 INFO    ] Initializing speech engine...
[2026-10-18 16:28:29,709.709 INFO    ] 2026-10-18 16:28:29
[2026-10-18 16:28:29,958.958 INFO    ] 2026-10-18 16:28:29
[2026-10-18 16:28:29,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:28:30,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:28:30,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:28:30,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:28:30,459.459 INFO    ] time= 18/10/2026 16:28:30
[2026-10-18 16:28:30,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:28:30,530.530 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:28:30,673.673 INFO    ] No existing commands found in stream
[2026-10-18 16:28:35,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:28:35,692.692 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-18 16:28:36,870.870 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:28:36,873.873 INFO    ] Checking for system updates...
[2026-10-18 16:28:36,909.909 INFO    ] 200
[2026-10-18 16:28:36,911.911 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:28:36,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:28:36,967.967 INFO    ] No update needed
[2026-10-18 16:28:36,969.969 INFO    ] Checking for camera pi updates...
[2026-10-18 16:28:37,002.002 INFO    ] 200
[2026-10-18 16:28:37,004.004 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:28:37,045.045 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:28:47,060.060 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:28:47,095.095 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:28:47,104.104 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:28:47,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:28:47,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:28:47,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:28:49,157.157 INFO    ] ================================================
[2026-10-18 16:28:49,172.172 INFO    ] Launching Daemon at Sun Oct 18 16:28:49 IST 2026
[2026-10-18 16:28:49,183.183 INFO    ] ================================================
[2026-10-18 16:28:49,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:28:49
[2026-10-18 16:28:50,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:28:50,584.584 INFO    ] Initializing speech engine...
[2026-10-18 16:28:50,592.592 INFO    ] 2026-10-18 16:28:50
[2026-10-18 16:28:50,866.866 INFO    ] 2026-10-18 16:28:50
[2026-10-18 16:28:50,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:28:51,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:28:51,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:28:51,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:28:51,249.249 INFO    ] time= 18/10/2026 16:28:51
[2026-10-18 16:28:51,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:28:51,317.317 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:28:51,438.438 INFO    ] No existing commands found in stream
[2026-10-18 16:28:56,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:28:56,460.460 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-18 16:28:57,613.613 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:28:57,615.615 INFO    ] Checking for system updates...
[2026-10-18 16:28:57,650.650 INFO    ] 200
[2026-10-18 16:28:57,653.653 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:28:57,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:28:57,707.707 INFO    ] No update needed
[2026-10-18 16:28:57,709.709 INFO    ] Checking for camera pi updates...
[2026-10-18 16:28:57,742.742 INFO    ] 200
[2026-10-18 16:28:57,744.744 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:28:57,784.784 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:29:07,800.800 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:29:07,835.835 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:29:07,845.845 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:29:07,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:29:07,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:29:07,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:29:09,898.898 INFO    ] ================================================
[2026-10-18 16:29:09,912.912 INFO    ] Launching Daemon at Sun Oct 18 16:29:09 IST 2026
[2026-10-18 16:29:09,923.923 INFO    ] ================================================
[2026-10-18 16:29:10,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:29:10
[2026-10-18 16:29:11,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:29:11,341.341 INFO    ] Initializing speech engine...
[2026-10-18 16:29:11,362.362 INFO    ] 2026-10-18 16:29:11
[2026-10-18 16:29:11,610.610 INFO    ] 2026-10-18 16:29:11
[2026-10-18 16:29:11,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:29:11,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:29:11,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:29:12,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:29:12,170.170 INFO    ] time= 18/10/2026 16:29:12
[2026-10-18 16:29:12,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:29:12,196.196 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:29:12,324.324 INFO    ] No existing commands found in stream
[2026-10-18 16:29:17,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:29:17,340.340 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-18 16:29:18,668.668 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:29:18,671.671 INFO    ] Checking for system updates...
[2026-10-18 16:29:18,707.707 INFO    ] 200
[2026-10-18 16:29:18,709.709 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:29:18,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:29:18,763.763 INFO    ] No update needed
[2026-10-18 16:29:18,766.766 INFO    ] Checking for camera pi updates...
[2026-10-18 16:29:18,799.799 INFO    ] 200
[2026-10-18 16:29:18,802.802 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:29:18,841.841 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:29:28,857.857 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:29:28,891.891 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:29:28,901.901 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:29:28,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:29:28,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:29:28,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:29:30,953.953 INFO    ] ================================================
[2026-10-18 16:29:30,969.969 INFO    ] Launching Daemon at Sun Oct 18 16:29:30 IST 2026
[2026-10-18 16:29:30,980.980 INFO    ] ================================================
[2026-10-18 16:29:31,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:29:31
[2026-10-18 16:29:32,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:29:32,473.473 INFO    ] Initializing speech engine...
[2026-10-18 16:29:32,496.496 INFO    ] 2026-10-18 16:29:32
[2026-10-18 16:29:32,773.773 INFO    ] 2026-10-18 16:29:32
[2026-10-18 16:29:32,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:29:33,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:29:33,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:29:33,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:29:33,346.346 INFO    ] time= 18/10/2026 16:29:33
[2026-10-18 16:29:33,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:29:33,371.371 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:29:33,502.502 INFO    ] No existing commands found in stream
[2026-10-18 16:29:38,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:29:38,520.520 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-18 16:29:42,663.663 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:29:42,665.665 INFO    ] Checking for system updates...
[2026-10-18 16:29:42,702.702 INFO    ] 200
[2026-10-18 16:29:42,705.705 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:29:42,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:29:42,764.764 INFO    ] No update needed
[2026-10-18 16:29:42,766.766 INFO    ] Checking for camera pi updates...
[2026-10-18 16:29:42,800.800 INFO    ] 200
[2026-10-18 16:29:42,802.802 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:29:42,843.843 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:29:52,859.859 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:29:52,894.894 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:29:52,904.904 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:29:52,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:29:52,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:29:52,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:29:54,957.957 INFO    ] ================================================
[2026-10-18 16:29:54,972.972 INFO    ] Launching Daemon at Sun Oct 18 16:29:54 IST 2026
[2026-10-18 16:29:54,983.983 INFO    ] ================================================
[2026-10-18 16:29:55,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:29:55
[2026-10-18 16:29:56,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:29:56,439.439 INFO    ] Initializing speech engine...
[2026-10-18 16:29:56,449.449 INFO    ] 2026-10-18 16:29:56
[2026-10-18 16:29:56,734.734 INFO    ] 2026-10-18 16:29:56
[2026-10-18 16:29:56,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:29:57,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:29:57,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:29:57,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:29:57,297.297 INFO    ] time= 18/10/2026 16:29:57
[2026-10-18 16:29:57,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:29:57,333.333 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:29:57,451.451 INFO    ] No existing commands found in stream
[2026-10-18 16:30:02,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:30:02,483.483 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-18 16:30:07,577.577 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:30:07,580.580 INFO    ] Checking for system updates...
[2026-10-18 16:30:07,617.617 INFO    ] 200
[2026-10-18 16:30:07,620.620 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:30:07,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:30:07,675.675 INFO    ] No update needed
[2026-10-18 16:30:07,678.678 INFO    ] Checking for camera pi updates...
[2026-10-18 16:30:07,716.716 INFO    ] 200
[2026-10-18 16:30:07,719.719 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:30:07,764.764 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:30:17,780.780 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:30:17,814.814 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:30:17,824.824 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:30:17,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:30:17,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:30:17,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:30:19,876.876 INFO    ] ================================================
[2026-10-18 16:30:19,891.891 INFO    ] Launching Daemon at Sun Oct 18 16:30:19 IST 2026
[2026-10-18 16:30:19,902.902 INFO    ] ================================================
[2026-10-18 16:30:20,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:30:20
[2026-10-18 16:30:21,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:30:21,325.325 INFO    ] Initializing speech engine...
[2026-10-18 16:30:21,336.336 INFO    ] 2026-10-18 16:30:21
[2026-10-18 16:30:21,585.585 INFO    ] 2026-10-18 16:30:21
[2026-10-18 16:30:21,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:30:21,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:30:21,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:30:22,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:30:22,118.118 INFO    ] time= 18/10/2026 16:30:22
[2026-10-18 16:30:22,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:30:22,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:30:22,291.291 INFO    ] No existing commands found in stream
[2026-10-18 16:30:27,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:30:27,319.319 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-18 16:30:30,567.567 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:30:30,570.570 INFO    ] Checking for system updates...
[2026-10-18 16:30:30,606.606 INFO    ] 200
[2026-10-18 16:30:30,608.608 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:30:30,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:30:30,662.662 INFO    ] No update needed
[2026-10-18 16:30:30,664.664 INFO    ] Checking for camera pi updates...
[2026-10-18 16:30:30,698.698 INFO    ] 200
[2026-10-18 16:30:30,701.701 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:30:30,742.742 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:30:40,758.758 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:30:40,801.801 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:30:40,813.813 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:30:40,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:30:40,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:30:40,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:30:42,874.874 INFO    ] ================================================
[2026-10-18 16:30:42,890.890 INFO    ] Launching Daemon at Sun Oct 18 16:30:42 IST 2026
[2026-10-18 16:30:42,902.902 INFO    ] ================================================
[2026-10-18 16:30:43,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:30:43
[2026-10-18 16:30:44,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:30:44,377.377 INFO    ] Initializing speech engine...
[2026-10-18 16:30:44,386.386 INFO    ] 2026-10-18 16:30:44
[2026-10-18 16:30:44,664.664 INFO    ] 2026-10-18 16:30:44
[2026-10-18 16:30:44,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:30:44,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:30:44,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:30:45,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:30:45,219.219 INFO    ] time= 18/10/2026 16:30:45
[2026-10-18 16:30:45,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:30:45,246.246 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:30:45,390.390 INFO    ] No existing commands found in stream
[2026-10-18 16:30:50,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:30:50,410.410 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-18 16:30:53,822.822 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:30:53,825.825 INFO    ] Checking for system updates...
[2026-10-18 16:30:53,863.863 INFO    ] 200
[2026-10-18 16:30:53,866.866 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:30:53,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:30:53,923.923 INFO    ] No update needed
[2026-10-18 16:30:53,926.926 INFO    ] Checking for camera pi updates...
[2026-10-18 16:30:53,960.960 INFO    ] 200
[2026-10-18 16:30:53,962.962 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:30:54,005.005 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:31:04,018.018 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:31:04,057.057 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:31:04,069.069 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:31:04,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:31:04,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:31:04,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:31:06,124.124 INFO    ] ================================================
[2026-10-18 16:31:06,139.139 INFO    ] Launching Daemon at Sun Oct 18 16:31:06 IST 2026
[2026-10-18 16:31:06,150.150 INFO    ] ================================================
[2026-10-18 16:31:06,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:31:06
[2026-10-18 16:31:07,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:31:07,610.610 INFO    ] Initializing speech engine...
[2026-10-18 16:31:07,624.624 INFO    ] 2026-10-18 16:31:07
[2026-10-18 16:31:07,910.910 INFO    ] 2026-10-18 16:31:07
[2026-10-18 16:31:08,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:31:08,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:31:08,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:31:08,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:31:08,617.617 INFO    ] time= 18/10/2026 16:31:08
[2026-10-18 16:31:08,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:31:08,730.730 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:31:08,884.884 INFO    ] No existing commands found in stream
[2026-10-18 16:31:13,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:31:13,898.898 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-18 16:31:17,283.283 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:31:17,287.287 INFO    ] Checking for system updates...
[2026-10-18 16:31:17,323.323 INFO    ] 200
[2026-10-18 16:31:17,326.326 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:31:17,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:31:17,400.400 INFO    ] No update needed
[2026-10-18 16:31:17,403.403 INFO    ] Checking for camera pi updates...
[2026-10-18 16:31:17,438.438 INFO    ] 200
[2026-10-18 16:31:17,440.440 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:31:17,481.481 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:31:27,498.498 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:31:27,538.538 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:31:27,549.549 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:31:27,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:31:27,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:31:27,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:31:29,604.604 INFO    ] ================================================
[2026-10-18 16:31:29,619.619 INFO    ] Launching Daemon at Sun Oct 18 16:31:29 IST 2026
[2026-10-18 16:31:29,630.630 INFO    ] ================================================
[2026-10-18 16:31:30,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:31:30
[2026-10-18 16:31:30,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:31:31,073.073 INFO    ] Initializing speech engine...
[2026-10-18 16:31:31,078.078 INFO    ] 2026-10-18 16:31:31
[2026-10-18 16:31:31,324.324 INFO    ] 2026-10-18 16:31:31
[2026-10-18 16:31:31,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:31:31,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:31:31,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:31:31,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:31:31,880.880 INFO    ] time= 18/10/2026 16:31:31
[2026-10-18 16:31:31,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:31:31,907.907 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:31:32,054.054 INFO    ] No existing commands found in stream
[2026-10-18 16:31:37,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:31:37,078.078 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-18 16:31:39,316.316 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:31:39,319.319 INFO    ] Checking for system updates...
[2026-10-18 16:31:39,354.354 INFO    ] 200
[2026-10-18 16:31:39,357.357 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:31:39,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:31:39,411.411 INFO    ] No update needed
[2026-10-18 16:31:39,413.413 INFO    ] Checking for camera pi updates...
[2026-10-18 16:31:39,446.446 INFO    ] 200
[2026-10-18 16:31:39,449.449 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:31:39,490.490 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:31:49,505.505 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:31:49,540.540 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:31:49,550.550 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:31:49,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:31:49,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:31:49,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:31:51,603.603 INFO    ] ================================================
[2026-10-18 16:31:51,618.618 INFO    ] Launching Daemon at Sun Oct 18 16:31:51 IST 2026
[2026-10-18 16:31:51,629.629 INFO    ] ================================================
[2026-10-18 16:31:52,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:31:52
[2026-10-18 16:31:52,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:31:53,065.065 INFO    ] Initializing speech engine...
[2026-10-18 16:31:53,074.074 INFO    ] 2026-10-18 16:31:53
[2026-10-18 16:31:53,333.333 INFO    ] 2026-10-18 16:31:53
[2026-10-18 16:31:53,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:31:53,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:31:53,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:31:53,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:31:53,872.872 INFO    ] time= 18/10/2026 16:31:53
[2026-10-18 16:31:53,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:31:53,895.895 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:31:54,034.034 INFO    ] No existing commands found in stream
[2026-10-18 16:31:59,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:31:59,066.066 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-18 16:32:00,834.834 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:32:00,837.837 INFO    ] Checking for system updates...
[2026-10-18 16:32:00,873.873 INFO    ] 200
[2026-10-18 16:32:00,876.876 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:32:00,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:32:00,930.930 INFO    ] No update needed
[2026-10-18 16:32:00,932.932 INFO    ] Checking for camera pi updates...
[2026-10-18 16:32:00,970.970 INFO    ] 200
[2026-10-18 16:32:00,972.972 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:32:01,012.012 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:32:11,027.027 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:32:11,062.062 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:32:11,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:32:11,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:32:11,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:32:11,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:32:13,129.129 INFO    ] ================================================
[2026-10-18 16:32:13,144.144 INFO    ] Launching Daemon at Sun Oct 18 16:32:13 IST 2026
[2026-10-18 16:32:13,155.155 INFO    ] ================================================
[2026-10-18 16:32:13,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:32:13
[2026-10-18 16:32:14,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:32:14,564.564 INFO    ] Initializing speech engine...
[2026-10-18 16:32:14,572.572 INFO    ] 2026-10-18 16:32:14
[2026-10-18 16:32:14,845.845 INFO    ] 2026-10-18 16:32:14
[2026-10-18 16:32:14,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:32:15,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:32:15,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:32:15,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:32:15,400.400 INFO    ] time= 18/10/2026 16:32:15
[2026-10-18 16:32:15,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:32:15,427.427 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:32:15,556.556 INFO    ] No existing commands found in stream
[2026-10-18 16:32:20,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:32:20,581.581 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-18 16:32:23,918.918 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:32:23,920.920 INFO    ] Checking for system updates...
[2026-10-18 16:32:23,957.957 INFO    ] 200
[2026-10-18 16:32:23,959.959 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:32:24,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:32:24,014.014 INFO    ] No update needed
[2026-10-18 16:32:24,016.016 INFO    ] Checking for camera pi updates...
[2026-10-18 16:32:24,049.049 INFO    ] 200
[2026-10-18 16:32:24,052.052 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:32:24,091.091 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:32:34,106.106 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:32:34,141.141 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:32:34,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:32:34,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:32:34,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:32:34,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:32:36,204.204 INFO    ] ================================================
[2026-10-18 16:32:36,219.219 INFO    ] Launching Daemon at Sun Oct 18 16:32:36 IST 2026
[2026-10-18 16:32:36,230.230 INFO    ] ================================================
[2026-10-18 16:32:36,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:32:36
[2026-10-18 16:32:37,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:32:37,688.688 INFO    ] Initializing speech engine...
[2026-10-18 16:32:37,697.697 INFO    ] 2026-10-18 16:32:37
[2026-10-18 16:32:37,956.956 INFO    ] 2026-10-18 16:32:37
[2026-10-18 16:32:37,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:32:38,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:32:38,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:32:38,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:32:38,498.498 INFO    ] time= 18/10/2026 16:32:38
[2026-10-18 16:32:38,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:32:38,524.524 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:32:38,658.658 INFO    ] No existing commands found in stream
[2026-10-18 16:32:43,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:32:43,687.687 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-18 16:32:45,860.860 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:32:45,863.863 INFO    ] Checking for system updates...
[2026-10-18 16:32:45,900.900 INFO    ] 200
[2026-10-18 16:32:45,903.903 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:32:45,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:32:45,960.960 INFO    ] No update needed
[2026-10-18 16:32:45,962.962 INFO    ] Checking for camera pi updates...
[2026-10-18 16:32:45,997.997 INFO    ] 200
[2026-10-18 16:32:45,999.999 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:32:46,040.040 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:32:56,056.056 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:32:56,092.092 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:32:56,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:32:56,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:32:56,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:32:56,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:32:58,154.154 INFO    ] ================================================
[2026-10-18 16:32:58,170.170 INFO    ] Launching Daemon at Sun Oct 18 16:32:58 IST 2026
[2026-10-18 16:32:58,181.181 INFO    ] ================================================
[2026-10-18 16:32:58,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:32:58
[2026-10-18 16:32:59,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:32:59,638.638 INFO    ] Initializing speech engine...
[2026-10-18 16:32:59,645.645 INFO    ] 2026-10-18 16:32:59
[2026-10-18 16:32:59,905.905 INFO    ] 2026-10-18 16:32:59
[2026-10-18 16:32:59,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:33:00,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:33:00,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:33:00,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:33:00,439.439 INFO    ] time= 18/10/2026 16:33:00
[2026-10-18 16:33:00,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:33:00,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:33:00,602.602 INFO    ] No existing commands found in stream
[2026-10-18 16:33:05,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:33:05,632.632 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-18 16:33:08,920.920 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:33:08,923.923 INFO    ] Checking for system updates...
[2026-10-18 16:33:08,959.959 INFO    ] 200
[2026-10-18 16:33:08,962.962 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:33:09,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:33:09,018.018 INFO    ] No update needed
[2026-10-18 16:33:09,020.020 INFO    ] Checking for camera pi updates...
[2026-10-18 16:33:09,054.054 INFO    ] 200
[2026-10-18 16:33:09,056.056 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:33:09,098.098 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:33:19,114.114 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:33:19,149.149 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:33:19,159.159 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:33:19,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:33:19,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:33:19,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:33:21,214.214 INFO    ] ================================================
[2026-10-18 16:33:21,230.230 INFO    ] Launching Daemon at Sun Oct 18 16:33:21 IST 2026
[2026-10-18 16:33:21,242.242 INFO    ] ================================================
[2026-10-18 16:33:21,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:33:21
[2026-10-18 16:33:22,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:33:22,663.663 INFO    ] Initializing speech engine...
[2026-10-18 16:33:22,673.673 INFO    ] 2026-10-18 16:33:22
[2026-10-18 16:33:22,929.929 INFO    ] 2026-10-18 16:33:22
[2026-10-18 16:33:22,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:33:23,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:33:23,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:33:23,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:33:23,478.478 INFO    ] time= 18/10/2026 16:33:23
[2026-10-18 16:33:23,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:33:23,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:33:23,645.645 INFO    ] No existing commands found in stream
[2026-10-18 16:33:28,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:33:28,678.678 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-18 16:33:30,742.742 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:33:30,744.744 INFO    ] Checking for system updates...
[2026-10-18 16:33:30,779.779 INFO    ] 200
[2026-10-18 16:33:30,782.782 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:33:30,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:33:30,836.836 INFO    ] No update needed
[2026-10-18 16:33:30,838.838 INFO    ] Checking for camera pi updates...
[2026-10-18 16:33:30,876.876 INFO    ] 200
[2026-10-18 16:33:30,879.879 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:33:30,919.919 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:33:40,933.933 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:33:40,968.968 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:33:40,977.977 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:33:40,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:33:40,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:33:40,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:33:43,032.032 INFO    ] ================================================
[2026-10-18 16:33:43,052.052 INFO    ] Launching Daemon at Sun Oct 18 16:33:43 IST 2026
[2026-10-18 16:33:43,064.064 INFO    ] ================================================
[2026-10-18 16:33:43,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:33:43
[2026-10-18 16:33:44,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:33:44,461.461 INFO    ] Initializing speech engine...
[2026-10-18 16:33:44,467.467 INFO    ] 2026-10-18 16:33:44
[2026-10-18 16:33:44,737.737 INFO    ] 2026-10-18 16:33:44
[2026-10-18 16:33:44,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:33:44,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:33:45,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:33:45,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:33:45,295.295 INFO    ] time= 18/10/2026 16:33:45
[2026-10-18 16:33:45,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:33:45,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:33:45,454.454 INFO    ] No existing commands found in stream
[2026-10-18 16:33:50,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:33:50,479.479 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-18 16:33:54,324.324 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:33:54,328.328 INFO    ] Checking for system updates...
[2026-10-18 16:33:54,370.370 INFO    ] 200
[2026-10-18 16:33:54,373.373 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:33:54,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:33:54,437.437 INFO    ] No update needed
[2026-10-18 16:33:54,440.440 INFO    ] Checking for camera pi updates...
[2026-10-18 16:33:54,476.476 INFO    ] 200
[2026-10-18 16:33:54,479.479 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:33:54,520.520 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:34:04,534.534 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:34:04,574.574 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:34:04,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:34:04,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:34:04,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:34:04,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:34:06,640.640 INFO    ] ================================================
[2026-10-18 16:34:06,656.656 INFO    ] Launching Daemon at Sun Oct 18 16:34:06 IST 2026
[2026-10-18 16:34:06,667.667 INFO    ] ================================================
[2026-10-18 16:34:07,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:34:07
[2026-10-18 16:34:07,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:34:08,186.186 INFO    ] Initializing speech engine...
[2026-10-18 16:34:08,209.209 INFO    ] 2026-10-18 16:34:08
[2026-10-18 16:34:08,464.464 INFO    ] 2026-10-18 16:34:08
[2026-10-18 16:34:08,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:34:08,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:34:08,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:34:08,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:34:08,967.967 INFO    ] time= 18/10/2026 16:34:08
[2026-10-18 16:34:09,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:34:09,031.031 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:34:09,172.172 INFO    ] No existing commands found in stream
[2026-10-18 16:34:14,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:34:14,190.190 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-18 16:34:14,712.712 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:34:14,715.715 INFO    ] Checking for system updates...
[2026-10-18 16:34:14,750.750 INFO    ] 200
[2026-10-18 16:34:14,753.753 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:34:14,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:34:14,807.807 INFO    ] No update needed
[2026-10-18 16:34:14,810.810 INFO    ] Checking for camera pi updates...
[2026-10-18 16:34:14,843.843 INFO    ] 200
[2026-10-18 16:34:14,846.846 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:34:14,886.886 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:34:24,902.902 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:34:24,938.938 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:34:24,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:34:24,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:34:24,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:34:24,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:34:27,001.001 INFO    ] ================================================
[2026-10-18 16:34:27,017.017 INFO    ] Launching Daemon at Sun Oct 18 16:34:27 IST 2026
[2026-10-18 16:34:27,029.029 INFO    ] ================================================
[2026-10-18 16:34:27,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:34:27
[2026-10-18 16:34:28,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:34:28,490.490 INFO    ] Initializing speech engine...
[2026-10-18 16:34:28,501.501 INFO    ] 2026-10-18 16:34:28
[2026-10-18 16:34:28,783.783 INFO    ] 2026-10-18 16:34:28
[2026-10-18 16:34:28,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:34:29,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:34:29,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:34:29,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:34:29,362.362 INFO    ] time= 18/10/2026 16:34:29
[2026-10-18 16:34:29,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:34:29,386.386 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:34:29,541.541 INFO    ] No existing commands found in stream
[2026-10-18 16:34:34,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:34:34,575.575 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-18 16:34:38,016.016 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:34:38,019.019 INFO    ] Checking for system updates...
[2026-10-18 16:34:38,056.056 INFO    ] 200
[2026-10-18 16:34:38,059.059 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:34:38,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:34:38,115.115 INFO    ] No update needed
[2026-10-18 16:34:38,118.118 INFO    ] Checking for camera pi updates...
[2026-10-18 16:34:38,152.152 INFO    ] 200
[2026-10-18 16:34:38,154.154 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:34:38,196.196 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:34:48,211.211 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:34:48,246.246 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:34:48,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:34:48,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:34:48,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:34:48,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:34:50,307.307 INFO    ] ================================================
[2026-10-18 16:34:50,324.324 INFO    ] Launching Daemon at Sun Oct 18 16:34:50 IST 2026
[2026-10-18 16:34:50,335.335 INFO    ] ================================================
[2026-10-18 16:34:50,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:34:50
[2026-10-18 16:34:51,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:34:51,844.844 INFO    ] Initializing speech engine...
[2026-10-18 16:34:51,850.850 INFO    ] 2026-10-18 16:34:51
[2026-10-18 16:34:52,111.111 INFO    ] 2026-10-18 16:34:52
[2026-10-18 16:34:52,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:34:52,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:34:52,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:34:52,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:34:52,654.654 INFO    ] time= 18/10/2026 16:34:52
[2026-10-18 16:34:52,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:34:52,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:34:52,821.821 INFO    ] No existing commands found in stream
[2026-10-18 16:34:57,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:34:57,861.861 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-18 16:35:00,636.636 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:35:00,639.639 INFO    ] Checking for system updates...
[2026-10-18 16:35:00,677.677 INFO    ] 200
[2026-10-18 16:35:00,680.680 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:35:00,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:35:00,735.735 INFO    ] No update needed
[2026-10-18 16:35:00,737.737 INFO    ] Checking for camera pi updates...
[2026-10-18 16:35:00,771.771 INFO    ] 200
[2026-10-18 16:35:00,773.773 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:35:00,814.814 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:35:10,829.829 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:35:10,865.865 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:35:10,875.875 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:35:10,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:35:10,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:35:10,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:35:12,928.928 INFO    ] ================================================
[2026-10-18 16:35:12,943.943 INFO    ] Launching Daemon at Sun Oct 18 16:35:12 IST 2026
[2026-10-18 16:35:12,954.954 INFO    ] ================================================
[2026-10-18 16:35:13,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:35:13
[2026-10-18 16:35:14,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:35:14,422.422 INFO    ] Initializing speech engine...
[2026-10-18 16:35:14,430.430 INFO    ] 2026-10-18 16:35:14
[2026-10-18 16:35:14,694.694 INFO    ] 2026-10-18 16:35:14
[2026-10-18 16:35:14,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:35:14,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:35:15,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:35:15,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:35:15,239.239 INFO    ] time= 18/10/2026 16:35:15
[2026-10-18 16:35:15,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:35:15,321.321 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:35:15,465.465 INFO    ] No existing commands found in stream
[2026-10-18 16:35:20,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:35:20,493.493 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-18 16:35:24,575.575 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:35:24,578.578 INFO    ] Checking for system updates...
[2026-10-18 16:35:24,613.613 INFO    ] 200
[2026-10-18 16:35:24,616.616 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:35:24,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:35:24,671.671 INFO    ] No update needed
[2026-10-18 16:35:24,674.674 INFO    ] Checking for camera pi updates...
[2026-10-18 16:35:24,707.707 INFO    ] 200
[2026-10-18 16:35:24,710.710 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:35:24,753.753 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:35:34,768.768 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:35:34,804.804 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:35:34,813.813 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:35:34,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:35:34,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:35:34,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:35:36,867.867 INFO    ] ================================================
[2026-10-18 16:35:36,882.882 INFO    ] Launching Daemon at Sun Oct 18 16:35:36 IST 2026
[2026-10-18 16:35:36,893.893 INFO    ] ================================================
[2026-10-18 16:35:37,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:35:37
[2026-10-18 16:35:38,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:35:38,340.340 INFO    ] Initializing speech engine...
[2026-10-18 16:35:38,354.354 INFO    ] 2026-10-18 16:35:38
[2026-10-18 16:35:38,620.620 INFO    ] 2026-10-18 16:35:38
[2026-10-18 16:35:38,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:35:38,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:35:38,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:35:39,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:35:39,121.121 INFO    ] time= 18/10/2026 16:35:39
[2026-10-18 16:35:39,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:35:39,245.245 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:35:39,389.389 INFO    ] No existing commands found in stream
[2026-10-18 16:35:44,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:35:44,417.417 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-18 16:35:47,906.906 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:35:47,909.909 INFO    ] Checking for system updates...
[2026-10-18 16:35:47,949.949 INFO    ] 200
[2026-10-18 16:35:47,952.952 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:35:48,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:35:48,013.013 INFO    ] No update needed
[2026-10-18 16:35:48,015.015 INFO    ] Checking for camera pi updates...
[2026-10-18 16:35:48,053.053 INFO    ] 200
[2026-10-18 16:35:48,056.056 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:35:48,097.097 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:35:58,111.111 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:35:58,150.150 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:35:58,160.160 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:35:58,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:35:58,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:35:58,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:36:00,214.214 INFO    ] ================================================
[2026-10-18 16:36:00,229.229 INFO    ] Launching Daemon at Sun Oct 18 16:36:00 IST 2026
[2026-10-18 16:36:00,240.240 INFO    ] ================================================
[2026-10-18 16:36:00,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:36:00
[2026-10-18 16:36:01,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:36:01,645.645 INFO    ] Initializing speech engine...
[2026-10-18 16:36:01,666.666 INFO    ] 2026-10-18 16:36:01
[2026-10-18 16:36:01,916.916 INFO    ] 2026-10-18 16:36:01
[2026-10-18 16:36:02,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:36:02,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:36:02,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:36:02,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:36:02,569.569 INFO    ] time= 18/10/2026 16:36:02
[2026-10-18 16:36:02,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:36:02,659.659 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:36:02,819.819 INFO    ] No existing commands found in stream
[2026-10-18 16:36:07,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:36:07,847.847 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-18 16:36:11,138.138 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:36:11,140.140 INFO    ] Checking for system updates...
[2026-10-18 16:36:11,176.176 INFO    ] 200
[2026-10-18 16:36:11,178.178 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:36:11,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:36:11,237.237 INFO    ] No update needed
[2026-10-18 16:36:11,240.240 INFO    ] Checking for camera pi updates...
[2026-10-18 16:36:11,273.273 INFO    ] 200
[2026-10-18 16:36:11,275.275 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:36:11,319.319 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:36:21,334.334 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:36:21,368.368 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:36:21,378.378 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:36:21,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:36:21,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:36:21,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:36:23,429.429 INFO    ] ================================================
[2026-10-18 16:36:23,444.444 INFO    ] Launching Daemon at Sun Oct 18 16:36:23 IST 2026
[2026-10-18 16:36:23,455.455 INFO    ] ================================================
[2026-10-18 16:36:24,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:36:24
[2026-10-18 16:36:24,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:36:24,893.893 INFO    ] Initializing speech engine...
[2026-10-18 16:36:24,902.902 INFO    ] 2026-10-18 16:36:24
[2026-10-18 16:36:25,159.159 INFO    ] 2026-10-18 16:36:25
[2026-10-18 16:36:25,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:36:25,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:36:25,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:36:25,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:36:25,718.718 INFO    ] time= 18/10/2026 16:36:25
[2026-10-18 16:36:25,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:36:25,753.753 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:36:25,860.860 INFO    ] No existing commands found in stream
[2026-10-18 16:36:30,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:36:30,883.883 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-18 16:36:31,769.769 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:36:31,772.772 INFO    ] Checking for system updates...
[2026-10-18 16:36:31,808.808 INFO    ] 200
[2026-10-18 16:36:31,811.811 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:36:31,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:36:31,865.865 INFO    ] No update needed
[2026-10-18 16:36:31,868.868 INFO    ] Checking for camera pi updates...
[2026-10-18 16:36:31,901.901 INFO    ] 200
[2026-10-18 16:36:31,903.903 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:36:31,948.948 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:36:41,963.963 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:36:41,999.999 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:36:42,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:36:42,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:36:42,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:36:42,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:36:44,061.061 INFO    ] ================================================
[2026-10-18 16:36:44,083.083 INFO    ] Launching Daemon at Sun Oct 18 16:36:44 IST 2026
[2026-10-18 16:36:44,094.094 INFO    ] ================================================
[2026-10-18 16:36:44,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:36:44
[2026-10-18 16:36:45,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:36:45,521.521 INFO    ] Initializing speech engine...
[2026-10-18 16:36:45,528.528 INFO    ] 2026-10-18 16:36:45
[2026-10-18 16:36:45,786.786 INFO    ] 2026-10-18 16:36:45
[2026-10-18 16:36:45,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:36:46,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:36:46,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:36:46,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:36:46,328.328 INFO    ] time= 18/10/2026 16:36:46
[2026-10-18 16:36:46,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:36:46,353.353 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:36:46,504.504 INFO    ] No existing commands found in stream
[2026-10-18 16:36:51,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:36:51,537.537 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-18 16:36:53,961.961 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:36:53,964.964 INFO    ] Checking for system updates...
[2026-10-18 16:36:54,003.003 INFO    ] 200
[2026-10-18 16:36:54,006.006 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:36:54,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:36:54,061.061 INFO    ] No update needed
[2026-10-18 16:36:54,064.064 INFO    ] Checking for camera pi updates...
[2026-10-18 16:36:54,098.098 INFO    ] 200
[2026-10-18 16:36:54,100.100 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:36:54,141.141 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:37:04,156.156 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:37:04,193.193 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:37:04,204.204 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:37:04,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:37:04,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:37:04,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:37:06,258.258 INFO    ] ================================================
[2026-10-18 16:37:06,273.273 INFO    ] Launching Daemon at Sun Oct 18 16:37:06 IST 2026
[2026-10-18 16:37:06,284.284 INFO    ] ================================================
[2026-10-18 16:37:06,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:37:06
[2026-10-18 16:37:07,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:37:07,767.767 INFO    ] Initializing speech engine...
[2026-10-18 16:37:07,776.776 INFO    ] 2026-10-18 16:37:07
[2026-10-18 16:37:08,040.040 INFO    ] 2026-10-18 16:37:08
[2026-10-18 16:37:08,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:37:08,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:37:08,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:37:08,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:37:08,589.589 INFO    ] time= 18/10/2026 16:37:08
[2026-10-18 16:37:08,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:37:08,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:37:08,752.752 INFO    ] No existing commands found in stream
[2026-10-18 16:37:13,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:37:13,781.781 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-18 16:37:15,063.063 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:37:15,067.067 INFO    ] Checking for system updates...
[2026-10-18 16:37:15,108.108 INFO    ] 200
[2026-10-18 16:37:15,111.111 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:37:15,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:37:15,171.171 INFO    ] No update needed
[2026-10-18 16:37:15,173.173 INFO    ] Checking for camera pi updates...
[2026-10-18 16:37:15,208.208 INFO    ] 200
[2026-10-18 16:37:15,211.211 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:37:15,255.255 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:37:25,272.272 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:37:25,311.311 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:37:25,322.322 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:37:25,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:37:25,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:37:25,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:37:27,376.376 INFO    ] ================================================
[2026-10-18 16:37:27,391.391 INFO    ] Launching Daemon at Sun Oct 18 16:37:27 IST 2026
[2026-10-18 16:37:27,401.401 INFO    ] ================================================
[2026-10-18 16:37:28,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:37:28
[2026-10-18 16:37:28,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:37:28,993.993 INFO    ] Initializing speech engine...
[2026-10-18 16:37:29,001.001 INFO    ] 2026-10-18 16:37:28
[2026-10-18 16:37:29,267.267 INFO    ] 2026-10-18 16:37:29
[2026-10-18 16:37:29,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:37:29,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:37:29,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:37:29,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:37:29,772.772 INFO    ] time= 18/10/2026 16:37:29
[2026-10-18 16:37:29,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:37:29,877.877 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:37:30,018.018 INFO    ] No existing commands found in stream
[2026-10-18 16:37:35,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:37:35,041.041 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-18 16:37:38,548.548 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:37:38,551.551 INFO    ] Checking for system updates...
[2026-10-18 16:37:38,586.586 INFO    ] 200
[2026-10-18 16:37:38,589.589 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:37:38,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:37:38,643.643 INFO    ] No update needed
[2026-10-18 16:37:38,645.645 INFO    ] Checking for camera pi updates...
[2026-10-18 16:37:38,680.680 INFO    ] 200
[2026-10-18 16:37:38,682.682 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:37:38,726.726 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:37:48,741.741 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:37:48,776.776 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:37:48,786.786 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:37:48,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:37:48,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:37:48,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:37:50,838.838 INFO    ] ================================================
[2026-10-18 16:37:50,853.853 INFO    ] Launching Daemon at Sun Oct 18 16:37:50 IST 2026
[2026-10-18 16:37:50,864.864 INFO    ] ================================================
[2026-10-18 16:37:51,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:37:51
[2026-10-18 16:37:52,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:37:52,286.286 INFO    ] Initializing speech engine...
[2026-10-18 16:37:52,295.295 INFO    ] 2026-10-18 16:37:52
[2026-10-18 16:37:52,587.587 INFO    ] 2026-10-18 16:37:52
[2026-10-18 16:37:52,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:37:52,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:37:52,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:37:53,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:37:53,078.078 INFO    ] time= 18/10/2026 16:37:53
[2026-10-18 16:37:53,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:37:53,151.151 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:37:53,275.275 INFO    ] No existing commands found in stream
[2026-10-18 16:37:58,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:37:58,289.289 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-18 16:38:02,738.738 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:38:02,742.742 INFO    ] Checking for system updates...
[2026-10-18 16:38:02,785.785 INFO    ] 200
[2026-10-18 16:38:02,788.788 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:38:02,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:38:02,854.854 INFO    ] No update needed
[2026-10-18 16:38:02,858.858 INFO    ] Checking for camera pi updates...
[2026-10-18 16:38:02,900.900 INFO    ] 200
[2026-10-18 16:38:02,903.903 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:38:02,950.950 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:38:12,965.965 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:38:12,999.999 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:38:13,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:38:13,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:38:13,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:38:13,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:38:15,061.061 INFO    ] ================================================
[2026-10-18 16:38:15,076.076 INFO    ] Launching Daemon at Sun Oct 18 16:38:15 IST 2026
[2026-10-18 16:38:15,088.088 INFO    ] ================================================
[2026-10-18 16:38:15,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:38:15
[2026-10-18 16:38:16,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:38:16,510.510 INFO    ] Initializing speech engine...
[2026-10-18 16:38:16,520.520 INFO    ] 2026-10-18 16:38:16
[2026-10-18 16:38:16,767.767 INFO    ] 2026-10-18 16:38:16
[2026-10-18 16:38:16,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:38:17,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:38:17,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:38:17,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:38:17,251.251 INFO    ] time= 18/10/2026 16:38:17
[2026-10-18 16:38:17,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:38:17,327.327 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:38:17,476.476 INFO    ] No existing commands found in stream
[2026-10-18 16:38:22,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:38:22,501.501 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-18 16:38:25,102.102 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:38:25,105.105 INFO    ] Checking for system updates...
[2026-10-18 16:38:25,141.141 INFO    ] 200
[2026-10-18 16:38:25,144.144 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:38:25,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:38:25,198.198 INFO    ] No update needed
[2026-10-18 16:38:25,200.200 INFO    ] Checking for camera pi updates...
[2026-10-18 16:38:25,233.233 INFO    ] 200
[2026-10-18 16:38:25,236.236 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:38:25,280.280 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:38:35,291.291 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:38:35,326.326 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:38:35,335.335 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:38:35,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:38:35,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:38:35,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:38:37,387.387 INFO    ] ================================================
[2026-10-18 16:38:37,402.402 INFO    ] Launching Daemon at Sun Oct 18 16:38:37 IST 2026
[2026-10-18 16:38:37,413.413 INFO    ] ================================================
[2026-10-18 16:38:37,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:38:37
[2026-10-18 16:38:38,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:38:38,841.841 INFO    ] Initializing speech engine...
[2026-10-18 16:38:38,851.851 INFO    ] 2026-10-18 16:38:38
[2026-10-18 16:38:39,108.108 INFO    ] 2026-10-18 16:38:39
[2026-10-18 16:38:39,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:38:39,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:38:39,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:38:39,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:38:39,650.650 INFO    ] time= 18/10/2026 16:38:39
[2026-10-18 16:38:39,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:38:39,677.677 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:38:39,806.806 INFO    ] No existing commands found in stream
[2026-10-18 16:38:44,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:38:44,827.827 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-18 16:38:46,081.081 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:38:46,083.083 INFO    ] Checking for system updates...
[2026-10-18 16:38:46,118.118 INFO    ] 200
[2026-10-18 16:38:46,121.121 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:38:46,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:38:46,176.176 INFO    ] No update needed
[2026-10-18 16:38:46,178.178 INFO    ] Checking for camera pi updates...
[2026-10-18 16:38:46,211.211 INFO    ] 200
[2026-10-18 16:38:46,214.214 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:38:46,259.259 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:38:56,274.274 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:38:56,309.309 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:38:56,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:38:56,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:38:56,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:38:56,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:38:58,372.372 INFO    ] ================================================
[2026-10-18 16:38:58,388.388 INFO    ] Launching Daemon at Sun Oct 18 16:38:58 IST 2026
[2026-10-18 16:38:58,398.398 INFO    ] ================================================
[2026-10-18 16:38:58,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:38:58
[2026-10-18 16:38:59,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:38:59,927.927 INFO    ] Initializing speech engine...
[2026-10-18 16:38:59,933.933 INFO    ] 2026-10-18 16:38:59
[2026-10-18 16:39:00,241.241 INFO    ] 2026-10-18 16:39:00
[2026-10-18 16:39:00,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:39:00,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:39:00,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:39:00,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:39:00,764.764 INFO    ] time= 18/10/2026 16:39:00
[2026-10-18 16:39:00,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:39:00,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:39:00,901.901 INFO    ] No existing commands found in stream
[2026-10-18 16:39:05,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:39:05,929.929 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-18 16:39:06,758.758 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:39:06,761.761 INFO    ] Checking for system updates...
[2026-10-18 16:39:06,796.796 INFO    ] 200
[2026-10-18 16:39:06,799.799 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:39:06,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:39:06,860.860 INFO    ] No update needed
[2026-10-18 16:39:06,862.862 INFO    ] Checking for camera pi updates...
[2026-10-18 16:39:06,896.896 INFO    ] 200
[2026-10-18 16:39:06,899.899 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:39:06,939.939 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:39:16,954.954 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:39:16,989.989 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:39:16,998.998 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:39:17,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:39:17,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:39:17,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:39:19,052.052 INFO    ] ================================================
[2026-10-18 16:39:19,068.068 INFO    ] Launching Daemon at Sun Oct 18 16:39:19 IST 2026
[2026-10-18 16:39:19,080.080 INFO    ] ================================================
[2026-10-18 16:39:19,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:39:19
[2026-10-18 16:39:20,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:39:20,627.627 INFO    ] Initializing speech engine...
[2026-10-18 16:39:20,635.635 INFO    ] 2026-10-18 16:39:20
[2026-10-18 16:39:20,905.905 INFO    ] 2026-10-18 16:39:20
[2026-10-18 16:39:20,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:39:21,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:39:21,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:39:21,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:39:21,451.451 INFO    ] time= 18/10/2026 16:39:21
[2026-10-18 16:39:21,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:39:21,487.487 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:39:21,617.617 INFO    ] No existing commands found in stream
[2026-10-18 16:39:26,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:39:26,650.650 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-18 16:39:29,940.940 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:39:29,943.943 INFO    ] Checking for system updates...
[2026-10-18 16:39:29,985.985 INFO    ] 200
[2026-10-18 16:39:29,988.988 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:39:30,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:39:30,045.045 INFO    ] No update needed
[2026-10-18 16:39:30,048.048 INFO    ] Checking for camera pi updates...
[2026-10-18 16:39:30,091.091 INFO    ] 200
[2026-10-18 16:39:30,094.094 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:39:30,142.142 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:39:40,161.161 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:39:40,201.201 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:39:40,212.212 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:39:40,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:39:40,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:39:40,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:39:42,268.268 INFO    ] ================================================
[2026-10-18 16:39:42,283.283 INFO    ] Launching Daemon at Sun Oct 18 16:39:42 IST 2026
[2026-10-18 16:39:42,293.293 INFO    ] ================================================
[2026-10-18 16:39:42,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:39:42
[2026-10-18 16:39:43,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:39:43,750.750 INFO    ] Initializing speech engine...
[2026-10-18 16:39:43,756.756 INFO    ] 2026-10-18 16:39:43
[2026-10-18 16:39:44,018.018 INFO    ] 2026-10-18 16:39:44
[2026-10-18 16:39:44,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:39:44,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:39:44,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:39:44,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:39:44,562.562 INFO    ] time= 18/10/2026 16:39:44
[2026-10-18 16:39:44,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:39:44,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:39:44,787.787 INFO    ] No existing commands found in stream
[2026-10-18 16:39:49,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:39:49,821.821 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-18 16:39:51,885.885 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:39:51,888.888 INFO    ] Checking for system updates...
[2026-10-18 16:39:51,924.924 INFO    ] 200
[2026-10-18 16:39:51,927.927 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:39:51,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:39:51,983.983 INFO    ] No update needed
[2026-10-18 16:39:51,986.986 INFO    ] Checking for camera pi updates...
[2026-10-18 16:39:52,019.019 INFO    ] 200
[2026-10-18 16:39:52,022.022 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:39:52,062.062 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:40:02,078.078 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:40:02,127.127 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:40:02,140.140 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:40:02,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:40:02,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:40:02,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:40:04,201.201 INFO    ] ================================================
[2026-10-18 16:40:04,216.216 INFO    ] Launching Daemon at Sun Oct 18 16:40:04 IST 2026
[2026-10-18 16:40:04,227.227 INFO    ] ================================================
[2026-10-18 16:40:04,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:40:04
[2026-10-18 16:40:05,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:40:05,637.637 INFO    ] Initializing speech engine...
[2026-10-18 16:40:05,645.645 INFO    ] 2026-10-18 16:40:05
[2026-10-18 16:40:05,941.941 INFO    ] 2026-10-18 16:40:05
[2026-10-18 16:40:05,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:40:06,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:40:06,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:40:06,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:40:06,524.524 INFO    ] time= 18/10/2026 16:40:06
[2026-10-18 16:40:06,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:40:06,551.551 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:40:06,682.682 INFO    ] No existing commands found in stream
[2026-10-18 16:40:11,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:40:11,700.700 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-18 16:40:13,976.976 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:40:13,979.979 INFO    ] Checking for system updates...
[2026-10-18 16:40:14,015.015 INFO    ] 200
[2026-10-18 16:40:14,017.017 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:40:14,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:40:14,073.073 INFO    ] No update needed
[2026-10-18 16:40:14,076.076 INFO    ] Checking for camera pi updates...
[2026-10-18 16:40:14,110.110 INFO    ] 200
[2026-10-18 16:40:14,112.112 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:40:14,153.153 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:40:24,169.169 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:40:24,204.204 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:40:24,213.213 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:40:24,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:40:24,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:40:24,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:40:26,273.273 INFO    ] ================================================
[2026-10-18 16:40:26,289.289 INFO    ] Launching Daemon at Sun Oct 18 16:40:26 IST 2026
[2026-10-18 16:40:26,299.299 INFO    ] ================================================
[2026-10-18 16:40:26,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:40:26
[2026-10-18 16:40:27,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:40:27,785.785 INFO    ] Initializing speech engine...
[2026-10-18 16:40:27,793.793 INFO    ] 2026-10-18 16:40:27
[2026-10-18 16:40:28,047.047 INFO    ] 2026-10-18 16:40:28
[2026-10-18 16:40:28,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:40:28,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:40:28,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:40:28,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:40:28,612.612 INFO    ] time= 18/10/2026 16:40:28
[2026-10-18 16:40:28,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:40:28,638.638 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:40:28,772.772 INFO    ] No existing commands found in stream
[2026-10-18 16:40:33,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:40:33,787.787 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-18 16:40:34,876.876 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:40:34,879.879 INFO    ] Checking for system updates...
[2026-10-18 16:40:34,915.915 INFO    ] 200
[2026-10-18 16:40:34,918.918 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:40:34,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:40:34,981.981 INFO    ] No update needed
[2026-10-18 16:40:34,983.983 INFO    ] Checking for camera pi updates...
[2026-10-18 16:40:35,021.021 INFO    ] 200
[2026-10-18 16:40:35,023.023 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:40:35,070.070 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:40:45,083.083 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:40:45,118.118 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:40:45,128.128 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:40:45,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:40:45,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:40:45,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:40:47,179.179 INFO    ] ================================================
[2026-10-18 16:40:47,194.194 INFO    ] Launching Daemon at Sun Oct 18 16:40:47 IST 2026
[2026-10-18 16:40:47,205.205 INFO    ] ================================================
[2026-10-18 16:40:47,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:40:47
[2026-10-18 16:40:48,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:40:48,660.660 INFO    ] Initializing speech engine...
[2026-10-18 16:40:48,673.673 INFO    ] 2026-10-18 16:40:48
[2026-10-18 16:40:48,923.923 INFO    ] 2026-10-18 16:40:48
[2026-10-18 16:40:48,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:40:49,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:40:49,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:40:49,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:40:49,404.404 INFO    ] time= 18/10/2026 16:40:49
[2026-10-18 16:40:49,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:40:49,486.486 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:40:49,633.633 INFO    ] No existing commands found in stream
[2026-10-18 16:40:54,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:40:54,656.656 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-18 16:40:55,683.683 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:40:55,686.686 INFO    ] Checking for system updates...
[2026-10-18 16:40:55,722.722 INFO    ] 200
[2026-10-18 16:40:55,724.724 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:40:55,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:40:55,779.779 INFO    ] No update needed
[2026-10-18 16:40:55,781.781 INFO    ] Checking for camera pi updates...
[2026-10-18 16:40:55,820.820 INFO    ] 200
[2026-10-18 16:40:55,822.822 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:40:55,867.867 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:41:05,879.879 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:41:05,914.914 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:41:05,924.924 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:41:05,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:41:05,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:41:05,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:41:07,978.978 INFO    ] ================================================
[2026-10-18 16:41:07,994.994 INFO    ] Launching Daemon at Sun Oct 18 16:41:07 IST 2026
[2026-10-18 16:41:08,005.005 INFO    ] ================================================
[2026-10-18 16:41:08,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:41:08
[2026-10-18 16:41:09,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:41:09,535.535 INFO    ] Initializing speech engine...
[2026-10-18 16:41:09,551.551 INFO    ] 2026-10-18 16:41:09
[2026-10-18 16:41:09,836.836 INFO    ] 2026-10-18 16:41:09
[2026-10-18 16:41:09,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:41:10,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:41:10,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:41:10,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:41:10,334.334 INFO    ] time= 18/10/2026 16:41:10
[2026-10-18 16:41:10,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:41:10,419.419 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:41:10,567.567 INFO    ] No existing commands found in stream
[2026-10-18 16:41:15,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:41:15,592.592 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-18 16:41:16,642.642 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:41:16,645.645 INFO    ] Checking for system updates...
[2026-10-18 16:41:16,681.681 INFO    ] 200
[2026-10-18 16:41:16,683.683 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:41:16,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:41:16,739.739 INFO    ] No update needed
[2026-10-18 16:41:16,741.741 INFO    ] Checking for camera pi updates...
[2026-10-18 16:41:16,776.776 INFO    ] 200
[2026-10-18 16:41:16,779.779 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:41:16,820.820 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:41:26,836.836 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:41:26,870.870 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:41:26,880.880 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:41:26,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:41:26,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:41:26,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:41:28,932.932 INFO    ] ================================================
[2026-10-18 16:41:28,947.947 INFO    ] Launching Daemon at Sun Oct 18 16:41:28 IST 2026
[2026-10-18 16:41:28,958.958 INFO    ] ================================================
[2026-10-18 16:41:29,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:41:29
[2026-10-18 16:41:30,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:41:30,399.399 INFO    ] Initializing speech engine...
[2026-10-18 16:41:30,421.421 INFO    ] 2026-10-18 16:41:30
[2026-10-18 16:41:30,673.673 INFO    ] 2026-10-18 16:41:30
[2026-10-18 16:41:30,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:41:30,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:41:30,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:41:31,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:41:31,169.169 INFO    ] time= 18/10/2026 16:41:31
[2026-10-18 16:41:31,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:41:31,239.239 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:41:31,387.387 INFO    ] No existing commands found in stream
[2026-10-18 16:41:36,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:41:36,419.419 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-18 16:41:40,483.483 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:41:40,485.485 INFO    ] Checking for system updates...
[2026-10-18 16:41:40,521.521 INFO    ] 200
[2026-10-18 16:41:40,524.524 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:41:40,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:41:40,579.579 INFO    ] No update needed
[2026-10-18 16:41:40,582.582 INFO    ] Checking for camera pi updates...
[2026-10-18 16:41:40,616.616 INFO    ] 200
[2026-10-18 16:41:40,618.618 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:41:40,668.668 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:41:50,683.683 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:41:50,718.718 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:41:50,728.728 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:41:50,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:41:50,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:41:50,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:41:52,781.781 INFO    ] ================================================
[2026-10-18 16:41:52,797.797 INFO    ] Launching Daemon at Sun Oct 18 16:41:52 IST 2026
[2026-10-18 16:41:52,808.808 INFO    ] ================================================
[2026-10-18 16:41:53,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:41:53
[2026-10-18 16:41:53,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:41:54,236.236 INFO    ] Initializing speech engine...
[2026-10-18 16:41:54,243.243 INFO    ] 2026-10-18 16:41:54
[2026-10-18 16:41:54,517.517 INFO    ] 2026-10-18 16:41:54
[2026-10-18 16:41:54,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:41:54,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:41:54,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:41:54,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:41:55,016.016 INFO    ] time= 18/10/2026 16:41:54
[2026-10-18 16:41:55,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:41:55,079.079 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:41:55,245.245 INFO    ] No existing commands found in stream
[2026-10-18 16:42:00,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:42:00,279.279 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-18 16:42:03,491.491 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:42:03,494.494 INFO    ] Checking for system updates...
[2026-10-18 16:42:03,531.531 INFO    ] 200
[2026-10-18 16:42:03,534.534 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:42:03,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:42:03,589.589 INFO    ] No update needed
[2026-10-18 16:42:03,592.592 INFO    ] Checking for camera pi updates...
[2026-10-18 16:42:03,631.631 INFO    ] 200
[2026-10-18 16:42:03,633.633 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:42:03,690.690 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:42:13,707.707 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:42:13,747.747 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:42:13,759.759 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:42:13,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:42:13,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:42:13,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:42:15,815.815 INFO    ] ================================================
[2026-10-18 16:42:15,831.831 INFO    ] Launching Daemon at Sun Oct 18 16:42:15 IST 2026
[2026-10-18 16:42:15,843.843 INFO    ] ================================================
[2026-10-18 16:42:16,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:42:16
[2026-10-18 16:42:17,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:42:17,304.304 INFO    ] Initializing speech engine...
[2026-10-18 16:42:17,314.314 INFO    ] 2026-10-18 16:42:17
[2026-10-18 16:42:17,578.578 INFO    ] 2026-10-18 16:42:17
[2026-10-18 16:42:17,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:42:17,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:42:17,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:42:18,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:42:18,122.122 INFO    ] time= 18/10/2026 16:42:18
[2026-10-18 16:42:18,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:42:18,146.146 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:42:18,278.278 INFO    ] No existing commands found in stream
[2026-10-18 16:42:23,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:42:23,300.300 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-18 16:42:27,022.022 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:42:27,025.025 INFO    ] Checking for system updates...
[2026-10-18 16:42:27,061.061 INFO    ] 200
[2026-10-18 16:42:27,064.064 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:42:27,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:42:27,118.118 INFO    ] No update needed
[2026-10-18 16:42:27,121.121 INFO    ] Checking for camera pi updates...
[2026-10-18 16:42:27,155.155 INFO    ] 200
[2026-10-18 16:42:27,157.157 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:42:27,201.201 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:42:37,217.217 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:42:37,252.252 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:42:37,262.262 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:42:37,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:42:37,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:42:37,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:42:39,317.317 INFO    ] ================================================
[2026-10-18 16:42:39,333.333 INFO    ] Launching Daemon at Sun Oct 18 16:42:39 IST 2026
[2026-10-18 16:42:39,344.344 INFO    ] ================================================
[2026-10-18 16:42:39,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:42:39
[2026-10-18 16:42:40,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:42:40,776.776 INFO    ] Initializing speech engine...
[2026-10-18 16:42:40,785.785 INFO    ] 2026-10-18 16:42:40
[2026-10-18 16:42:41,081.081 INFO    ] 2026-10-18 16:42:41
[2026-10-18 16:42:41,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:42:41,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:42:41,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:42:41,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:42:41,503.503 INFO    ] time= 18/10/2026 16:42:41
[2026-10-18 16:42:41,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:42:41,513.513 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:42:41,636.636 INFO    ] No existing commands found in stream
[2026-10-18 16:42:46,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:42:46,664.664 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-18 16:42:50,196.196 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:42:50,199.199 INFO    ] Checking for system updates...
[2026-10-18 16:42:50,237.237 INFO    ] 200
[2026-10-18 16:42:50,240.240 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:42:50,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:42:50,297.297 INFO    ] No update needed
[2026-10-18 16:42:50,299.299 INFO    ] Checking for camera pi updates...
[2026-10-18 16:42:50,334.334 INFO    ] 200
[2026-10-18 16:42:50,337.337 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:42:50,399.399 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:43:00,415.415 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:43:00,451.451 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:43:00,460.460 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:43:00,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:43:00,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:43:00,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:43:02,521.521 INFO    ] ================================================
[2026-10-18 16:43:02,538.538 INFO    ] Launching Daemon at Sun Oct 18 16:43:02 IST 2026
[2026-10-18 16:43:02,549.549 INFO    ] ================================================
[2026-10-18 16:43:03,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:43:03
[2026-10-18 16:43:03,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:43:04,263.263 INFO    ] Initializing speech engine...
[2026-10-18 16:43:04,271.271 INFO    ] 2026-10-18 16:43:04
[2026-10-18 16:43:04,566.566 INFO    ] 2026-10-18 16:43:04
[2026-10-18 16:43:04,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:43:04,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:43:04,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:43:05,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:43:05,114.114 INFO    ] time= 18/10/2026 16:43:05
[2026-10-18 16:43:05,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:43:05,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:43:05,305.305 INFO    ] No existing commands found in stream
[2026-10-18 16:43:10,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:43:10,334.334 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-18 16:43:12,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:43:12,177.177 INFO    ] Checking for system updates...
[2026-10-18 16:43:12,214.214 INFO    ] 200
[2026-10-18 16:43:12,217.217 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:43:12,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:43:12,274.274 INFO    ] No update needed
[2026-10-18 16:43:12,277.277 INFO    ] Checking for camera pi updates...
[2026-10-18 16:43:12,311.311 INFO    ] 200
[2026-10-18 16:43:12,313.313 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:43:12,358.358 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:43:22,368.368 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:43:22,403.403 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:43:22,413.413 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:43:22,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:43:22,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:43:22,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:43:24,467.467 INFO    ] ================================================
[2026-10-18 16:43:24,482.482 INFO    ] Launching Daemon at Sun Oct 18 16:43:24 IST 2026
[2026-10-18 16:43:24,494.494 INFO    ] ================================================
[2026-10-18 16:43:25,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:43:25
[2026-10-18 16:43:25,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:43:25,921.921 INFO    ] Initializing speech engine...
[2026-10-18 16:43:25,928.928 INFO    ] 2026-10-18 16:43:25
[2026-10-18 16:43:26,229.229 INFO    ] 2026-10-18 16:43:26
[2026-10-18 16:43:26,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:43:26,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:43:26,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:43:26,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:43:26,655.655 INFO    ] time= 18/10/2026 16:43:26
[2026-10-18 16:43:26,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:43:26,670.670 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:43:26,749.749 INFO    ] No existing commands found in stream
[2026-10-18 16:43:31,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:43:31,768.768 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-18 16:43:34,988.988 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:43:34,991.991 INFO    ] Checking for system updates...
[2026-10-18 16:43:35,032.032 INFO    ] 200
[2026-10-18 16:43:35,034.034 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:43:35,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:43:35,088.088 INFO    ] No update needed
[2026-10-18 16:43:35,091.091 INFO    ] Checking for camera pi updates...
[2026-10-18 16:43:35,130.130 INFO    ] 200
[2026-10-18 16:43:35,132.132 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:43:35,172.172 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:43:45,187.187 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:43:45,221.221 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:43:45,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:43:45,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:43:45,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:43:45,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:43:47,284.284 INFO    ] ================================================
[2026-10-18 16:43:47,300.300 INFO    ] Launching Daemon at Sun Oct 18 16:43:47 IST 2026
[2026-10-18 16:43:47,311.311 INFO    ] ================================================
[2026-10-18 16:43:47,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:43:47
[2026-10-18 16:43:48,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:43:48,782.782 INFO    ] Initializing speech engine...
[2026-10-18 16:43:48,808.808 INFO    ] 2026-10-18 16:43:48
[2026-10-18 16:43:49,085.085 INFO    ] 2026-10-18 16:43:49
[2026-10-18 16:43:49,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:43:49,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:43:49,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:43:49,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:43:49,595.595 INFO    ] time= 18/10/2026 16:43:49
[2026-10-18 16:43:49,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:43:49,688.688 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:43:49,860.860 INFO    ] No existing commands found in stream
[2026-10-18 16:43:54,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:43:54,887.887 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-18 16:43:58,190.190 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:43:58,192.192 INFO    ] Checking for system updates...
[2026-10-18 16:43:58,228.228 INFO    ] 200
[2026-10-18 16:43:58,231.231 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:43:58,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:43:58,286.286 INFO    ] No update needed
[2026-10-18 16:43:58,288.288 INFO    ] Checking for camera pi updates...
[2026-10-18 16:43:58,322.322 INFO    ] 200
[2026-10-18 16:43:58,324.324 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:43:58,366.366 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:44:08,379.379 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:44:08,413.413 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:44:08,423.423 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:44:08,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:44:08,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:44:08,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:44:10,476.476 INFO    ] ================================================
[2026-10-18 16:44:10,491.491 INFO    ] Launching Daemon at Sun Oct 18 16:44:10 IST 2026
[2026-10-18 16:44:10,502.502 INFO    ] ================================================
[2026-10-18 16:44:11,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:44:11
[2026-10-18 16:44:11,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:44:11,912.912 INFO    ] Initializing speech engine...
[2026-10-18 16:44:11,921.921 INFO    ] 2026-10-18 16:44:11
[2026-10-18 16:44:12,214.214 INFO    ] 2026-10-18 16:44:12
[2026-10-18 16:44:12,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:44:12,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:44:12,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:44:12,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:44:12,733.733 INFO    ] time= 18/10/2026 16:44:12
[2026-10-18 16:44:12,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:44:12,852.852 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:44:12,997.997 INFO    ] No existing commands found in stream
[2026-10-18 16:44:18,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:44:18,025.025 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-18 16:44:19,462.462 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:44:19,465.465 INFO    ] Checking for system updates...
[2026-10-18 16:44:19,501.501 INFO    ] 200
[2026-10-18 16:44:19,503.503 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:44:19,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:44:19,561.561 INFO    ] No update needed
[2026-10-18 16:44:19,563.563 INFO    ] Checking for camera pi updates...
[2026-10-18 16:44:19,597.597 INFO    ] 200
[2026-10-18 16:44:19,599.599 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:44:19,643.643 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:44:29,659.659 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:44:29,694.694 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:44:29,703.703 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:44:29,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:44:29,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:44:29,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:44:31,758.758 INFO    ] ================================================
[2026-10-18 16:44:31,775.775 INFO    ] Launching Daemon at Sun Oct 18 16:44:31 IST 2026
[2026-10-18 16:44:31,787.787 INFO    ] ================================================
[2026-10-18 16:44:32,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:44:32
[2026-10-18 16:44:32,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:44:33,240.240 INFO    ] Initializing speech engine...
[2026-10-18 16:44:33,262.262 INFO    ] 2026-10-18 16:44:33
[2026-10-18 16:44:33,519.519 INFO    ] 2026-10-18 16:44:33
[2026-10-18 16:44:33,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:44:33,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:44:33,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:44:33,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:44:34,024.024 INFO    ] time= 18/10/2026 16:44:33
[2026-10-18 16:44:34,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:44:34,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:44:34,224.224 INFO    ] No existing commands found in stream
[2026-10-18 16:44:39,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:44:39,247.247 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-18 16:44:43,094.094 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:44:43,097.097 INFO    ] Checking for system updates...
[2026-10-18 16:44:43,137.137 INFO    ] 200
[2026-10-18 16:44:43,140.140 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:44:43,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:44:43,198.198 INFO    ] No update needed
[2026-10-18 16:44:43,201.201 INFO    ] Checking for camera pi updates...
[2026-10-18 16:44:43,239.239 INFO    ] 200
[2026-10-18 16:44:43,241.241 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:44:43,287.287 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:44:53,303.303 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:44:53,343.343 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:44:53,354.354 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:44:53,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:44:53,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:44:53,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:44:55,410.410 INFO    ] ================================================
[2026-10-18 16:44:55,425.425 INFO    ] Launching Daemon at Sun Oct 18 16:44:55 IST 2026
[2026-10-18 16:44:55,435.435 INFO    ] ================================================
[2026-10-18 16:44:56,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:44:56
[2026-10-18 16:44:56,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:44:56,893.893 INFO    ] Initializing speech engine...
[2026-10-18 16:44:56,902.902 INFO    ] 2026-10-18 16:44:56
[2026-10-18 16:44:57,172.172 INFO    ] 2026-10-18 16:44:57
[2026-10-18 16:44:57,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:44:57,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:44:57,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:44:57,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:44:57,705.705 INFO    ] time= 18/10/2026 16:44:57
[2026-10-18 16:44:57,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:44:57,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:44:57,858.858 INFO    ] No existing commands found in stream
[2026-10-18 16:45:02,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:45:02,881.881 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-18 16:45:06,309.309 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:45:06,311.311 INFO    ] Checking for system updates...
[2026-10-18 16:45:06,348.348 INFO    ] 200
[2026-10-18 16:45:06,351.351 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:45:06,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:45:06,410.410 INFO    ] No update needed
[2026-10-18 16:45:06,413.413 INFO    ] Checking for camera pi updates...
[2026-10-18 16:45:06,450.450 INFO    ] 200
[2026-10-18 16:45:06,452.452 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:45:06,496.496 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:45:16,512.512 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:45:16,548.548 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:45:16,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:45:16,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:45:16,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:45:16,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:45:18,612.612 INFO    ] ================================================
[2026-10-18 16:45:18,628.628 INFO    ] Launching Daemon at Sun Oct 18 16:45:18 IST 2026
[2026-10-18 16:45:18,640.640 INFO    ] ================================================
[2026-10-18 16:45:19,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:45:19
[2026-10-18 16:45:19,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:45:20,066.066 INFO    ] Initializing speech engine...
[2026-10-18 16:45:20,075.075 INFO    ] 2026-10-18 16:45:20
[2026-10-18 16:45:20,324.324 INFO    ] 2026-10-18 16:45:20
[2026-10-18 16:45:20,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:45:20,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:45:20,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:45:20,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:45:20,820.820 INFO    ] time= 18/10/2026 16:45:20
[2026-10-18 16:45:20,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:45:20,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:45:21,090.090 INFO    ] No existing commands found in stream
[2026-10-18 16:45:26,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:45:26,118.118 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-18 16:45:27,758.758 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:45:27,760.760 INFO    ] Checking for system updates...
[2026-10-18 16:45:27,796.796 INFO    ] 200
[2026-10-18 16:45:27,798.798 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:45:27,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:45:27,853.853 INFO    ] No update needed
[2026-10-18 16:45:27,855.855 INFO    ] Checking for camera pi updates...
[2026-10-18 16:45:27,891.891 INFO    ] 200
[2026-10-18 16:45:27,893.893 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:45:27,933.933 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:45:37,947.947 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:45:37,982.982 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:45:37,991.991 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:45:37,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:45:37,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:45:38,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:45:40,046.046 INFO    ] ================================================
[2026-10-18 16:45:40,061.061 INFO    ] Launching Daemon at Sun Oct 18 16:45:40 IST 2026
[2026-10-18 16:45:40,072.072 INFO    ] ================================================
[2026-10-18 16:45:40,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:45:40
[2026-10-18 16:45:41,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:45:41,491.491 INFO    ] Initializing speech engine...
[2026-10-18 16:45:41,505.505 INFO    ] 2026-10-18 16:45:41
[2026-10-18 16:45:41,786.786 INFO    ] 2026-10-18 16:45:41
[2026-10-18 16:45:41,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:45:42,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:45:42,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:45:42,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:45:42,330.330 INFO    ] time= 18/10/2026 16:45:42
[2026-10-18 16:45:42,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:45:42,422.422 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:45:42,555.555 INFO    ] No existing commands found in stream
[2026-10-18 16:45:47,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:45:47,578.578 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-18 16:45:48,188.188 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:45:48,191.191 INFO    ] Checking for system updates...
[2026-10-18 16:45:48,231.231 INFO    ] 200
[2026-10-18 16:45:48,234.234 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:45:48,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:45:48,292.292 INFO    ] No update needed
[2026-10-18 16:45:48,295.295 INFO    ] Checking for camera pi updates...
[2026-10-18 16:45:48,333.333 INFO    ] 200
[2026-10-18 16:45:48,336.336 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:45:48,378.378 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:45:58,392.392 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:45:58,432.432 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:45:58,443.443 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:45:58,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:45:58,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:45:58,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:46:00,498.498 INFO    ] ================================================
[2026-10-18 16:46:00,513.513 INFO    ] Launching Daemon at Sun Oct 18 16:46:00 IST 2026
[2026-10-18 16:46:00,524.524 INFO    ] ================================================
[2026-10-18 16:46:01,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:46:01
[2026-10-18 16:46:01,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:46:02,150.150 INFO    ] Initializing speech engine...
[2026-10-18 16:46:02,162.162 INFO    ] 2026-10-18 16:46:02
[2026-10-18 16:46:02,471.471 INFO    ] 2026-10-18 16:46:02
[2026-10-18 16:46:02,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:46:02,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:46:02,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:46:03,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:46:03,061.061 INFO    ] time= 18/10/2026 16:46:03
[2026-10-18 16:46:03,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:46:03,133.133 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:46:03,279.279 INFO    ] No existing commands found in stream
[2026-10-18 16:46:08,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:46:08,318.318 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-18 16:46:11,891.891 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:46:11,894.894 INFO    ] Checking for system updates...
[2026-10-18 16:46:11,931.931 INFO    ] 200
[2026-10-18 16:46:11,933.933 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:46:11,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:46:11,988.988 INFO    ] No update needed
[2026-10-18 16:46:11,990.990 INFO    ] Checking for camera pi updates...
[2026-10-18 16:46:12,024.024 INFO    ] 200
[2026-10-18 16:46:12,027.027 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:46:12,067.067 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:46:22,082.082 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:46:22,118.118 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:46:22,128.128 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:46:22,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:46:22,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:46:22,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:46:24,181.181 INFO    ] ================================================
[2026-10-18 16:46:24,196.196 INFO    ] Launching Daemon at Sun Oct 18 16:46:24 IST 2026
[2026-10-18 16:46:24,207.207 INFO    ] ================================================
[2026-10-18 16:46:24,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:46:24
[2026-10-18 16:46:25,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:46:25,664.664 INFO    ] Initializing speech engine...
[2026-10-18 16:46:25,669.669 INFO    ] 2026-10-18 16:46:25
[2026-10-18 16:46:25,932.932 INFO    ] 2026-10-18 16:46:25
[2026-10-18 16:46:25,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:46:26,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:46:26,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:46:26,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:46:26,477.477 INFO    ] time= 18/10/2026 16:46:26
[2026-10-18 16:46:26,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:46:26,502.502 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:46:26,632.632 INFO    ] No existing commands found in stream
[2026-10-18 16:46:31,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:46:31,649.649 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-18 16:46:34,080.080 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:46:34,083.083 INFO    ] Checking for system updates...
[2026-10-18 16:46:34,118.118 INFO    ] 200
[2026-10-18 16:46:34,121.121 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:46:34,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:46:34,175.175 INFO    ] No update needed
[2026-10-18 16:46:34,178.178 INFO    ] Checking for camera pi updates...
[2026-10-18 16:46:34,215.215 INFO    ] 200
[2026-10-18 16:46:34,218.218 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:46:34,258.258 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:46:44,273.273 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:46:44,309.309 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:46:44,318.318 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:46:44,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:46:44,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:46:44,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:46:46,372.372 INFO    ] ================================================
[2026-10-18 16:46:46,388.388 INFO    ] Launching Daemon at Sun Oct 18 16:46:46 IST 2026
[2026-10-18 16:46:46,399.399 INFO    ] ================================================
[2026-10-18 16:46:46,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:46:46
[2026-10-18 16:46:47,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:46:47,852.852 INFO    ] Initializing speech engine...
[2026-10-18 16:46:47,865.865 INFO    ] 2026-10-18 16:46:47
[2026-10-18 16:46:48,153.153 INFO    ] 2026-10-18 16:46:48
[2026-10-18 16:46:48,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:46:48,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:46:48,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:46:48,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:46:48,581.581 INFO    ] time= 18/10/2026 16:46:48
[2026-10-18 16:46:48,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:46:48,656.656 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:46:48,793.793 INFO    ] No existing commands found in stream
[2026-10-18 16:46:53,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:46:53,816.816 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-18 16:46:55,297.297 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:46:55,300.300 INFO    ] Checking for system updates...
[2026-10-18 16:46:55,336.336 INFO    ] 200
[2026-10-18 16:46:55,338.338 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:46:55,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:46:55,394.394 INFO    ] No update needed
[2026-10-18 16:46:55,397.397 INFO    ] Checking for camera pi updates...
[2026-10-18 16:46:55,431.431 INFO    ] 200
[2026-10-18 16:46:55,433.433 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:46:55,475.475 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:47:05,490.490 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:47:05,525.525 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:47:05,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:47:05,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:47:05,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:47:05,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:47:07,588.588 INFO    ] ================================================
[2026-10-18 16:47:07,603.603 INFO    ] Launching Daemon at Sun Oct 18 16:47:07 IST 2026
[2026-10-18 16:47:07,614.614 INFO    ] ================================================
[2026-10-18 16:47:08,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:47:08
[2026-10-18 16:47:08,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:47:09,071.071 INFO    ] Initializing speech engine...
[2026-10-18 16:47:09,078.078 INFO    ] 2026-10-18 16:47:09
[2026-10-18 16:47:09,336.336 INFO    ] 2026-10-18 16:47:09
[2026-10-18 16:47:09,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:47:09,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:47:09,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:47:09,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:47:09,836.836 INFO    ] time= 18/10/2026 16:47:09
[2026-10-18 16:47:09,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:47:09,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:47:10,036.036 INFO    ] No existing commands found in stream
[2026-10-18 16:47:15,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:47:15,061.061 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-18 16:47:18,452.452 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:47:18,455.455 INFO    ] Checking for system updates...
[2026-10-18 16:47:18,491.491 INFO    ] 200
[2026-10-18 16:47:18,493.493 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:47:18,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:47:18,547.547 INFO    ] No update needed
[2026-10-18 16:47:18,550.550 INFO    ] Checking for camera pi updates...
[2026-10-18 16:47:18,583.583 INFO    ] 200
[2026-10-18 16:47:18,586.586 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:47:18,626.626 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:47:28,641.641 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:47:28,677.677 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:47:28,687.687 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:47:28,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:47:28,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:47:28,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:47:30,740.740 INFO    ] ================================================
[2026-10-18 16:47:30,755.755 INFO    ] Launching Daemon at Sun Oct 18 16:47:30 IST 2026
[2026-10-18 16:47:30,765.765 INFO    ] ================================================
[2026-10-18 16:47:31,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:47:31
[2026-10-18 16:47:31,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:47:32,292.292 INFO    ] Initializing speech engine...
[2026-10-18 16:47:32,300.300 INFO    ] 2026-10-18 16:47:32
[2026-10-18 16:47:32,597.597 INFO    ] 2026-10-18 16:47:32
[2026-10-18 16:47:32,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:47:32,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:47:32,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:47:33,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:47:33,055.055 INFO    ] time= 18/10/2026 16:47:33
[2026-10-18 16:47:33,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:47:33,131.131 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:47:33,264.264 INFO    ] No existing commands found in stream
[2026-10-18 16:47:38,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:47:38,277.277 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-18 16:47:41,902.902 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:47:41,905.905 INFO    ] Checking for system updates...
[2026-10-18 16:47:41,946.946 INFO    ] 200
[2026-10-18 16:47:41,949.949 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:47:42,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:47:42,004.004 INFO    ] No update needed
[2026-10-18 16:47:42,006.006 INFO    ] Checking for camera pi updates...
[2026-10-18 16:47:42,039.039 INFO    ] 200
[2026-10-18 16:47:42,042.042 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:47:42,086.086 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:47:52,101.101 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:47:52,137.137 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:47:52,147.147 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:47:52,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:47:52,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:47:52,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:47:54,200.200 INFO    ] ================================================
[2026-10-18 16:47:54,215.215 INFO    ] Launching Daemon at Sun Oct 18 16:47:54 IST 2026
[2026-10-18 16:47:54,226.226 INFO    ] ================================================
[2026-10-18 16:47:54,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:47:54
[2026-10-18 16:47:55,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:47:55,908.908 INFO    ] Initializing speech engine...
[2026-10-18 16:47:55,917.917 INFO    ] 2026-10-18 16:47:55
[2026-10-18 16:47:56,210.210 INFO    ] 2026-10-18 16:47:56
[2026-10-18 16:47:56,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:47:56,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:47:56,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:47:56,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:47:56,783.783 INFO    ] time= 18/10/2026 16:47:56
[2026-10-18 16:47:56,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:47:56,819.819 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:47:56,950.950 INFO    ] No existing commands found in stream
[2026-10-18 16:48:01,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:48:01,997.997 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-18 16:48:06,270.270 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:48:06,273.273 INFO    ] Checking for system updates...
[2026-10-18 16:48:06,308.308 INFO    ] 200
[2026-10-18 16:48:06,311.311 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:48:06,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:48:06,366.366 INFO    ] No update needed
[2026-10-18 16:48:06,369.369 INFO    ] Checking for camera pi updates...
[2026-10-18 16:48:06,403.403 INFO    ] 200
[2026-10-18 16:48:06,406.406 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:48:06,446.446 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:48:16,458.458 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:48:16,493.493 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:48:16,502.502 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:48:16,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:48:16,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:48:16,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:48:18,555.555 INFO    ] ================================================
[2026-10-18 16:48:18,570.570 INFO    ] Launching Daemon at Sun Oct 18 16:48:18 IST 2026
[2026-10-18 16:48:18,582.582 INFO    ] ================================================
[2026-10-18 16:48:19,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:48:19
[2026-10-18 16:48:19,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:48:20,044.044 INFO    ] Initializing speech engine...
[2026-10-18 16:48:20,054.054 INFO    ] 2026-10-18 16:48:20
[2026-10-18 16:48:20,314.314 INFO    ] 2026-10-18 16:48:20
[2026-10-18 16:48:20,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:48:20,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:48:20,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:48:20,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:48:20,799.799 INFO    ] time= 18/10/2026 16:48:20
[2026-10-18 16:48:20,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:48:20,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:48:21,015.015 INFO    ] No existing commands found in stream
[2026-10-18 16:48:26,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:48:26,031.031 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-18 16:48:27,179.179 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:48:27,181.181 INFO    ] Checking for system updates...
[2026-10-18 16:48:27,222.222 INFO    ] 200
[2026-10-18 16:48:27,225.225 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:48:27,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:48:27,288.288 INFO    ] No update needed
[2026-10-18 16:48:27,291.291 INFO    ] Checking for camera pi updates...
[2026-10-18 16:48:27,329.329 INFO    ] 200
[2026-10-18 16:48:27,332.332 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:48:27,372.372 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:48:37,387.387 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:48:37,424.424 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:48:37,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:48:37,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:48:37,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:48:37,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:48:39,488.488 INFO    ] ================================================
[2026-10-18 16:48:39,504.504 INFO    ] Launching Daemon at Sun Oct 18 16:48:39 IST 2026
[2026-10-18 16:48:39,516.516 INFO    ] ================================================
[2026-10-18 16:48:40,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:48:40
[2026-10-18 16:48:40,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:48:40,942.942 INFO    ] Initializing speech engine...
[2026-10-18 16:48:40,951.951 INFO    ] 2026-10-18 16:48:40
[2026-10-18 16:48:41,201.201 INFO    ] 2026-10-18 16:48:41
[2026-10-18 16:48:41,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:48:41,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:48:41,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:48:41,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:48:41,775.775 INFO    ] time= 18/10/2026 16:48:41
[2026-10-18 16:48:41,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:48:41,802.802 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:48:41,944.944 INFO    ] No existing commands found in stream
[2026-10-18 16:48:46,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:48:46,973.973 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-18 16:48:47,769.769 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:48:47,772.772 INFO    ] Checking for system updates...
[2026-10-18 16:48:47,812.812 INFO    ] 200
[2026-10-18 16:48:47,815.815 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:48:47,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:48:47,871.871 INFO    ] No update needed
[2026-10-18 16:48:47,873.873 INFO    ] Checking for camera pi updates...
[2026-10-18 16:48:47,907.907 INFO    ] 200
[2026-10-18 16:48:47,909.909 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:48:47,955.955 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:48:57,970.970 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:48:58,005.005 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:48:58,015.015 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:48:58,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:48:58,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:48:58,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:49:00,069.069 INFO    ] ================================================
[2026-10-18 16:49:00,085.085 INFO    ] Launching Daemon at Sun Oct 18 16:49:00 IST 2026
[2026-10-18 16:49:00,096.096 INFO    ] ================================================
[2026-10-18 16:49:00,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:49:00
[2026-10-18 16:49:01,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:49:02,013.013 INFO    ] Initializing speech engine...
[2026-10-18 16:49:02,017.017 INFO    ] 2026-10-18 16:49:02
[2026-10-18 16:49:02,434.434 INFO    ] 2026-10-18 16:49:02
[2026-10-18 16:49:02,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:49:02,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:49:02,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:49:02,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:49:02,931.931 INFO    ] time= 18/10/2026 16:49:02
[2026-10-18 16:49:02,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:49:02,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:49:03,110.110 INFO    ] No existing commands found in stream
[2026-10-18 16:49:08,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:49:08,139.139 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-18 16:49:09,164.164 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:49:09,167.167 INFO    ] Checking for system updates...
[2026-10-18 16:49:09,207.207 INFO    ] 200
[2026-10-18 16:49:09,209.209 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:49:09,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:49:09,265.265 INFO    ] No update needed
[2026-10-18 16:49:09,268.268 INFO    ] Checking for camera pi updates...
[2026-10-18 16:49:09,305.305 INFO    ] 200
[2026-10-18 16:49:09,308.308 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:49:09,353.353 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:49:19,368.368 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:49:19,404.404 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:49:19,414.414 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:49:19,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:49:19,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:49:19,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:49:21,468.468 INFO    ] ================================================
[2026-10-18 16:49:21,483.483 INFO    ] Launching Daemon at Sun Oct 18 16:49:21 IST 2026
[2026-10-18 16:49:21,495.495 INFO    ] ================================================
[2026-10-18 16:49:22,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:49:22
[2026-10-18 16:49:22,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:49:23,133.133 INFO    ] Initializing speech engine...
[2026-10-18 16:49:23,144.144 INFO    ] 2026-10-18 16:49:23
[2026-10-18 16:49:23,451.451 INFO    ] 2026-10-18 16:49:23
[2026-10-18 16:49:23,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:49:23,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:49:23,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:49:23,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:49:23,961.961 INFO    ] time= 18/10/2026 16:49:23
[2026-10-18 16:49:23,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:49:24,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:49:24,170.170 INFO    ] No existing commands found in stream
[2026-10-18 16:49:29,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:49:29,199.199 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-18 16:49:30,348.348 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:49:30,351.351 INFO    ] Checking for system updates...
[2026-10-18 16:49:30,392.392 INFO    ] 200
[2026-10-18 16:49:30,395.395 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:49:30,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:49:30,451.451 INFO    ] No update needed
[2026-10-18 16:49:30,454.454 INFO    ] Checking for camera pi updates...
[2026-10-18 16:49:30,488.488 INFO    ] 200
[2026-10-18 16:49:30,491.491 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:49:30,538.538 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:49:40,554.554 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:49:40,595.595 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:49:40,606.606 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:49:40,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:49:40,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:49:40,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:49:42,662.662 INFO    ] ================================================
[2026-10-18 16:49:42,678.678 INFO    ] Launching Daemon at Sun Oct 18 16:49:42 IST 2026
[2026-10-18 16:49:42,689.689 INFO    ] ================================================
[2026-10-18 16:49:43,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:49:43
[2026-10-18 16:49:43,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:49:44,150.150 INFO    ] Initializing speech engine...
[2026-10-18 16:49:44,159.159 INFO    ] 2026-10-18 16:49:44
[2026-10-18 16:49:44,417.417 INFO    ] 2026-10-18 16:49:44
[2026-10-18 16:49:44,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:49:44,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:49:44,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:49:44,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:49:44,885.885 INFO    ] time= 18/10/2026 16:49:44
[2026-10-18 16:49:44,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:49:44,972.972 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:49:45,110.110 INFO    ] No existing commands found in stream
[2026-10-18 16:49:50,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:49:50,131.131 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-18 16:49:52,332.332 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:49:52,335.335 INFO    ] Checking for system updates...
[2026-10-18 16:49:52,372.372 INFO    ] 200
[2026-10-18 16:49:52,374.374 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:49:52,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:49:52,436.436 INFO    ] No update needed
[2026-10-18 16:49:52,438.438 INFO    ] Checking for camera pi updates...
[2026-10-18 16:49:52,475.475 INFO    ] 200
[2026-10-18 16:49:52,477.477 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:49:52,522.522 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:50:02,537.537 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:50:02,581.581 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:50:02,594.594 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:50:02,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:50:02,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:50:02,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:50:04,657.657 INFO    ] ================================================
[2026-10-18 16:50:04,673.673 INFO    ] Launching Daemon at Sun Oct 18 16:50:04 IST 2026
[2026-10-18 16:50:04,684.684 INFO    ] ================================================
[2026-10-18 16:50:05,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:50:05
[2026-10-18 16:50:05,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:50:06,109.109 INFO    ] Initializing speech engine...
[2026-10-18 16:50:06,116.116 INFO    ] 2026-10-18 16:50:06
[2026-10-18 16:50:06,412.412 INFO    ] 2026-10-18 16:50:06
[2026-10-18 16:50:06,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:50:06,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:50:06,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:50:06,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:50:06,846.846 INFO    ] time= 18/10/2026 16:50:06
[2026-10-18 16:50:06,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:50:06,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:50:07,042.042 INFO    ] No existing commands found in stream
[2026-10-18 16:50:12,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:50:12,070.070 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-18 16:50:14,442.442 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:50:14,445.445 INFO    ] Checking for system updates...
[2026-10-18 16:50:14,484.484 INFO    ] 200
[2026-10-18 16:50:14,487.487 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:50:14,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:50:14,541.541 INFO    ] No update needed
[2026-10-18 16:50:14,543.543 INFO    ] Checking for camera pi updates...
[2026-10-18 16:50:14,580.580 INFO    ] 200
[2026-10-18 16:50:14,583.583 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:50:14,627.627 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:50:24,642.642 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:50:24,677.677 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:50:24,687.687 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:50:24,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:50:24,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:50:24,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:50:26,739.739 INFO    ] ================================================
[2026-10-18 16:50:26,754.754 INFO    ] Launching Daemon at Sun Oct 18 16:50:26 IST 2026
[2026-10-18 16:50:26,765.765 INFO    ] ================================================
[2026-10-18 16:50:27,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:50:27
[2026-10-18 16:50:28,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:50:28,396.396 INFO    ] Initializing speech engine...
[2026-10-18 16:50:28,408.408 INFO    ] 2026-10-18 16:50:28
[2026-10-18 16:50:28,720.720 INFO    ] 2026-10-18 16:50:28
[2026-10-18 16:50:28,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:50:29,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:50:29,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:50:29,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:50:29,259.259 INFO    ] time= 18/10/2026 16:50:29
[2026-10-18 16:50:29,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:50:29,293.293 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:50:29,418.418 INFO    ] No existing commands found in stream
[2026-10-18 16:50:34,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:50:34,448.448 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-18 16:50:36,179.179 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:50:36,181.181 INFO    ] Checking for system updates...
[2026-10-18 16:50:36,219.219 INFO    ] 200
[2026-10-18 16:50:36,222.222 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:50:36,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:50:36,278.278 INFO    ] No update needed
[2026-10-18 16:50:36,281.281 INFO    ] Checking for camera pi updates...
[2026-10-18 16:50:36,316.316 INFO    ] 200
[2026-10-18 16:50:36,319.319 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:50:36,360.360 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:50:46,372.372 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:50:46,412.412 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:50:46,423.423 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:50:46,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:50:46,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:50:46,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:50:48,480.480 INFO    ] ================================================
[2026-10-18 16:50:48,496.496 INFO    ] Launching Daemon at Sun Oct 18 16:50:48 IST 2026
[2026-10-18 16:50:48,508.508 INFO    ] ================================================
[2026-10-18 16:50:49,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:50:49
[2026-10-18 16:50:49,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:50:49,956.956 INFO    ] Initializing speech engine...
[2026-10-18 16:50:49,964.964 INFO    ] 2026-10-18 16:50:49
[2026-10-18 16:50:50,260.260 INFO    ] 2026-10-18 16:50:50
[2026-10-18 16:50:50,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:50:50,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:50:50,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:50:50,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:50:50,684.684 INFO    ] time= 18/10/2026 16:50:50
[2026-10-18 16:50:50,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:50:50,719.719 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:50:50,863.863 INFO    ] No existing commands found in stream
[2026-10-18 16:50:55,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:50:55,891.891 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-18 16:51:00,290.290 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:51:00,292.292 INFO    ] Checking for system updates...
[2026-10-18 16:51:00,328.328 INFO    ] 200
[2026-10-18 16:51:00,331.331 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:51:00,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:51:00,392.392 INFO    ] No update needed
[2026-10-18 16:51:00,395.395 INFO    ] Checking for camera pi updates...
[2026-10-18 16:51:00,433.433 INFO    ] 200
[2026-10-18 16:51:00,435.435 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:51:00,480.480 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:51:10,495.495 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:51:10,530.530 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:51:10,540.540 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:51:10,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:51:10,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:51:10,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:51:12,593.593 INFO    ] ================================================
[2026-10-18 16:51:12,609.609 INFO    ] Launching Daemon at Sun Oct 18 16:51:12 IST 2026
[2026-10-18 16:51:12,620.620 INFO    ] ================================================
[2026-10-18 16:51:13,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:51:13
[2026-10-18 16:51:13,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:51:14,077.077 INFO    ] Initializing speech engine...
[2026-10-18 16:51:14,086.086 INFO    ] 2026-10-18 16:51:14
[2026-10-18 16:51:14,335.335 INFO    ] 2026-10-18 16:51:14
[2026-10-18 16:51:14,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:51:14,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:51:14,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:51:14,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:51:14,891.891 INFO    ] time= 18/10/2026 16:51:14
[2026-10-18 16:51:14,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:51:14,915.915 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:51:15,042.042 INFO    ] No existing commands found in stream
[2026-10-18 16:51:20,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:51:20,060.060 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-18 16:51:20,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:51:20,862.862 INFO    ] Checking for system updates...
[2026-10-18 16:51:20,902.902 INFO    ] 200
[2026-10-18 16:51:20,904.904 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:51:20,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:51:20,959.959 INFO    ] No update needed
[2026-10-18 16:51:20,962.962 INFO    ] Checking for camera pi updates...
[2026-10-18 16:51:21,003.003 INFO    ] 200
[2026-10-18 16:51:21,006.006 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:51:21,051.051 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:51:31,067.067 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:51:31,104.104 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:51:31,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:51:31,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:51:31,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:51:31,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:51:33,175.175 INFO    ] ================================================
[2026-10-18 16:51:33,191.191 INFO    ] Launching Daemon at Sun Oct 18 16:51:33 IST 2026
[2026-10-18 16:51:33,205.205 INFO    ] ================================================
[2026-10-18 16:51:33,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:51:33
[2026-10-18 16:51:34,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:51:34,705.705 INFO    ] Initializing speech engine...
[2026-10-18 16:51:34,714.714 INFO    ] 2026-10-18 16:51:34
[2026-10-18 16:51:35,005.005 INFO    ] 2026-10-18 16:51:34
[2026-10-18 16:51:35,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:51:35,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:51:35,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:51:35,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:51:35,559.559 INFO    ] time= 18/10/2026 16:51:35
[2026-10-18 16:51:35,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:51:35,607.607 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:51:35,728.728 INFO    ] No existing commands found in stream
[2026-10-18 16:51:40,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:51:40,756.756 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-18 16:51:41,676.676 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:51:41,679.679 INFO    ] Checking for system updates...
[2026-10-18 16:51:41,715.715 INFO    ] 200
[2026-10-18 16:51:41,718.718 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:51:41,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:51:41,779.779 INFO    ] No update needed
[2026-10-18 16:51:41,781.781 INFO    ] Checking for camera pi updates...
[2026-10-18 16:51:41,818.818 INFO    ] 200
[2026-10-18 16:51:41,821.821 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:51:41,866.866 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:51:51,881.881 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:51:51,916.916 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:51:51,926.926 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:51:51,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:51:51,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:51:51,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:51:53,979.979 INFO    ] ================================================
[2026-10-18 16:51:53,994.994 INFO    ] Launching Daemon at Sun Oct 18 16:51:53 IST 2026
[2026-10-18 16:51:54,005.005 INFO    ] ================================================
[2026-10-18 16:51:54,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:51:54
[2026-10-18 16:51:55,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:51:55,612.612 INFO    ] Initializing speech engine...
[2026-10-18 16:51:55,625.625 INFO    ] 2026-10-18 16:51:55
[2026-10-18 16:51:55,937.937 INFO    ] 2026-10-18 16:51:55
[2026-10-18 16:51:56,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:51:56,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:51:56,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:51:56,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:51:56,463.463 INFO    ] time= 18/10/2026 16:51:56
[2026-10-18 16:51:56,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:51:56,512.512 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:51:56,622.622 INFO    ] No existing commands found in stream
[2026-10-18 16:52:01,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:52:01,657.657 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-18 16:52:02,634.634 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:52:02,638.638 INFO    ] Checking for system updates...
[2026-10-18 16:52:02,682.682 INFO    ] 200
[2026-10-18 16:52:02,685.685 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:52:02,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:52:02,758.758 INFO    ] No update needed
[2026-10-18 16:52:02,761.761 INFO    ] Checking for camera pi updates...
[2026-10-18 16:52:02,804.804 INFO    ] 200
[2026-10-18 16:52:02,808.808 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:52:02,850.850 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:52:12,866.866 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:52:12,900.900 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:52:12,910.910 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:52:12,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:52:12,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:52:12,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:52:14,962.962 INFO    ] ================================================
[2026-10-18 16:52:14,977.977 INFO    ] Launching Daemon at Sun Oct 18 16:52:14 IST 2026
[2026-10-18 16:52:14,988.988 INFO    ] ================================================
[2026-10-18 16:52:15,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:52:15
[2026-10-18 16:52:16,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:52:16,403.403 INFO    ] Initializing speech engine...
[2026-10-18 16:52:16,409.409 INFO    ] 2026-10-18 16:52:16
[2026-10-18 16:52:16,703.703 INFO    ] 2026-10-18 16:52:16
[2026-10-18 16:52:16,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:52:16,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:52:16,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:52:17,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:52:17,198.198 INFO    ] time= 18/10/2026 16:52:17
[2026-10-18 16:52:17,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:52:17,269.269 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:52:17,373.373 INFO    ] No existing commands found in stream
[2026-10-18 16:52:22,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:52:22,392.392 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-18 16:52:24,222.222 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:52:24,225.225 INFO    ] Checking for system updates...
[2026-10-18 16:52:24,264.264 INFO    ] 200
[2026-10-18 16:52:24,267.267 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:52:24,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:52:24,329.329 INFO    ] No update needed
[2026-10-18 16:52:24,331.331 INFO    ] Checking for camera pi updates...
[2026-10-18 16:52:24,369.369 INFO    ] 200
[2026-10-18 16:52:24,372.372 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:52:24,416.416 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:52:34,431.431 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:52:34,466.466 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:52:34,476.476 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:52:34,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:52:34,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:52:34,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:52:36,527.527 INFO    ] ================================================
[2026-10-18 16:52:36,543.543 INFO    ] Launching Daemon at Sun Oct 18 16:52:36 IST 2026
[2026-10-18 16:52:36,554.554 INFO    ] ================================================
[2026-10-18 16:52:37,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:52:37
[2026-10-18 16:52:37,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:52:38,152.152 INFO    ] Initializing speech engine...
[2026-10-18 16:52:38,166.166 INFO    ] 2026-10-18 16:52:38
[2026-10-18 16:52:38,447.447 INFO    ] 2026-10-18 16:52:38
[2026-10-18 16:52:38,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:52:38,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:52:38,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:52:38,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:52:38,994.994 INFO    ] time= 18/10/2026 16:52:38
[2026-10-18 16:52:39,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:52:39,031.031 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:52:39,163.163 INFO    ] No existing commands found in stream
[2026-10-18 16:52:44,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:52:44,191.191 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-18 16:52:48,436.436 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:52:48,438.438 INFO    ] Checking for system updates...
[2026-10-18 16:52:48,475.475 INFO    ] 200
[2026-10-18 16:52:48,478.478 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:52:48,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:52:48,552.552 INFO    ] No update needed
[2026-10-18 16:52:48,555.555 INFO    ] Checking for camera pi updates...
[2026-10-18 16:52:48,593.593 INFO    ] 200
[2026-10-18 16:52:48,595.595 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:52:48,641.641 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:52:58,657.657 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2e150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:52:58,697.697 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:52:58,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:52:58,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:52:58,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:52:58,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:53:00,762.762 INFO    ] ================================================
[2026-10-18 16:53:00,779.779 INFO    ] Launching Daemon at Sun Oct 18 16:53:00 IST 2026
[2026-10-18 16:53:00,791.791 INFO    ] ================================================
[2026-10-18 16:53:01,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:53:01
[2026-10-18 16:53:02,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:53:02,548.548 INFO    ] Initializing speech engine...
[2026-10-18 16:53:02,561.561 INFO    ] 2026-10-18 16:53:02
[2026-10-18 16:53:02,841.841 INFO    ] 2026-10-18 16:53:02
[2026-10-18 16:53:02,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:53:03,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:53:03,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:53:03,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:53:03,451.451 INFO    ] time= 18/10/2026 16:53:03
[2026-10-18 16:53:03,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:53:03,523.523 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:53:03,671.671 INFO    ] No existing commands found in stream
[2026-10-18 16:53:08,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:53:08,702.702 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-18 16:53:12,417.417 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:53:12,420.420 INFO    ] Checking for system updates...
[2026-10-18 16:53:12,456.456 INFO    ] 200
[2026-10-18 16:53:12,459.459 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:53:12,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:53:12,520.520 INFO    ] No update needed
[2026-10-18 16:53:12,522.522 INFO    ] Checking for camera pi updates...
[2026-10-18 16:53:12,556.556 INFO    ] 200
[2026-10-18 16:53:12,558.558 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:53:12,603.603 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:53:22,616.616 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:53:22,651.651 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:53:22,660.660 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:53:22,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:53:22,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:53:22,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:53:24,715.715 INFO    ] ================================================
[2026-10-18 16:53:24,731.731 INFO    ] Launching Daemon at Sun Oct 18 16:53:24 IST 2026
[2026-10-18 16:53:24,742.742 INFO    ] ================================================
[2026-10-18 16:53:25,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:53:25
[2026-10-18 16:53:26,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:53:26,347.347 INFO    ] Initializing speech engine...
[2026-10-18 16:53:26,355.355 INFO    ] 2026-10-18 16:53:26
[2026-10-18 16:53:26,622.622 INFO    ] 2026-10-18 16:53:26
[2026-10-18 16:53:26,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:53:26,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:53:26,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:53:27,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:53:27,060.060 INFO    ] time= 18/10/2026 16:53:27
[2026-10-18 16:53:27,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:53:27,172.172 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:53:27,323.323 INFO    ] No existing commands found in stream
[2026-10-18 16:53:32,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:53:32,353.353 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-18 16:53:34,914.914 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:53:34,917.917 INFO    ] Checking for system updates...
[2026-10-18 16:53:34,953.953 INFO    ] 200
[2026-10-18 16:53:34,956.956 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:53:35,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:53:35,010.010 INFO    ] No update needed
[2026-10-18 16:53:35,012.012 INFO    ] Checking for camera pi updates...
[2026-10-18 16:53:35,046.046 INFO    ] 200
[2026-10-18 16:53:35,049.049 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:53:35,090.090 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:53:45,105.105 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:53:45,140.140 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:53:45,150.150 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:53:45,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:53:45,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:53:45,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:53:47,202.202 INFO    ] ================================================
[2026-10-18 16:53:47,219.219 INFO    ] Launching Daemon at Sun Oct 18 16:53:47 IST 2026
[2026-10-18 16:53:47,229.229 INFO    ] ================================================
[2026-10-18 16:53:47,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:53:47
[2026-10-18 16:53:48,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:53:48,635.635 INFO    ] Initializing speech engine...
[2026-10-18 16:53:48,643.643 INFO    ] 2026-10-18 16:53:48
[2026-10-18 16:53:48,920.920 INFO    ] 2026-10-18 16:53:48
[2026-10-18 16:53:48,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:53:49,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:53:49,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:53:49,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:53:49,472.472 INFO    ] time= 18/10/2026 16:53:49
[2026-10-18 16:53:49,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:53:49,509.509 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:53:49,646.646 INFO    ] No existing commands found in stream
[2026-10-18 16:53:54,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:53:54,663.663 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-18 16:53:55,259.259 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:53:55,262.262 INFO    ] Checking for system updates...
[2026-10-18 16:53:55,298.298 INFO    ] 200
[2026-10-18 16:53:55,301.301 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:53:55,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:53:55,356.356 INFO    ] No update needed
[2026-10-18 16:53:55,358.358 INFO    ] Checking for camera pi updates...
[2026-10-18 16:53:55,391.391 INFO    ] 200
[2026-10-18 16:53:55,394.394 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:53:55,438.438 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:54:05,453.453 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:54:05,490.490 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:54:05,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:54:05,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:54:05,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:54:05,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:54:07,557.557 INFO    ] ================================================
[2026-10-18 16:54:07,573.573 INFO    ] Launching Daemon at Sun Oct 18 16:54:07 IST 2026
[2026-10-18 16:54:07,584.584 INFO    ] ================================================
[2026-10-18 16:54:08,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:54:08
[2026-10-18 16:54:08,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:54:09,229.229 INFO    ] Initializing speech engine...
[2026-10-18 16:54:09,239.239 INFO    ] 2026-10-18 16:54:09
[2026-10-18 16:54:09,500.500 INFO    ] 2026-10-18 16:54:09
[2026-10-18 16:54:09,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:54:09,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:54:09,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:54:09,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:54:10,031.031 INFO    ] time= 18/10/2026 16:54:09
[2026-10-18 16:54:10,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:54:10,065.065 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:54:10,192.192 INFO    ] No existing commands found in stream
[2026-10-18 16:54:15,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:54:15,211.211 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-18 16:54:16,852.852 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:54:16,855.855 INFO    ] Checking for system updates...
[2026-10-18 16:54:16,896.896 INFO    ] 200
[2026-10-18 16:54:16,898.898 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:54:16,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:54:16,952.952 INFO    ] No update needed
[2026-10-18 16:54:16,954.954 INFO    ] Checking for camera pi updates...
[2026-10-18 16:54:16,992.992 INFO    ] 200
[2026-10-18 16:54:16,994.994 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:54:17,040.040 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:54:27,054.054 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:54:27,089.089 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:54:27,099.099 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:54:27,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:54:27,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:54:27,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:54:29,151.151 INFO    ] ================================================
[2026-10-18 16:54:29,167.167 INFO    ] Launching Daemon at Sun Oct 18 16:54:29 IST 2026
[2026-10-18 16:54:29,178.178 INFO    ] ================================================
[2026-10-18 16:54:29,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:54:29
[2026-10-18 16:54:30,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:54:30,656.656 INFO    ] Initializing speech engine...
[2026-10-18 16:54:30,662.662 INFO    ] 2026-10-18 16:54:30
[2026-10-18 16:54:30,925.925 INFO    ] 2026-10-18 16:54:30
[2026-10-18 16:54:30,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:54:31,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:54:31,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:54:31,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:54:31,487.487 INFO    ] time= 18/10/2026 16:54:31
[2026-10-18 16:54:31,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:54:31,546.546 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:54:31,706.706 INFO    ] No existing commands found in stream
[2026-10-18 16:54:36,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:54:36,740.740 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-18 16:54:40,522.522 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:54:40,525.525 INFO    ] Checking for system updates...
[2026-10-18 16:54:40,561.561 INFO    ] 200
[2026-10-18 16:54:40,563.563 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:54:40,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:54:40,621.621 INFO    ] No update needed
[2026-10-18 16:54:40,623.623 INFO    ] Checking for camera pi updates...
[2026-10-18 16:54:40,658.658 INFO    ] 200
[2026-10-18 16:54:40,661.661 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:54:40,704.704 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:54:50,719.719 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:54:50,760.760 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:54:50,771.771 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:54:50,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:54:50,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:54:50,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:54:52,828.828 INFO    ] ================================================
[2026-10-18 16:54:52,845.845 INFO    ] Launching Daemon at Sun Oct 18 16:54:52 IST 2026
[2026-10-18 16:54:52,857.857 INFO    ] ================================================
[2026-10-18 16:54:53,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:54:53
[2026-10-18 16:54:54,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:54:54,480.480 INFO    ] Initializing speech engine...
[2026-10-18 16:54:54,486.486 INFO    ] 2026-10-18 16:54:54
[2026-10-18 16:54:54,745.745 INFO    ] 2026-10-18 16:54:54
[2026-10-18 16:54:54,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:54:55,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:54:55,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:54:55,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:54:55,286.286 INFO    ] time= 18/10/2026 16:54:55
[2026-10-18 16:54:55,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:54:55,313.313 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:54:55,441.441 INFO    ] No existing commands found in stream
[2026-10-18 16:55:00,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:55:00,468.468 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-18 16:55:03,092.092 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:55:03,094.094 INFO    ] Checking for system updates...
[2026-10-18 16:55:03,139.139 INFO    ] 200
[2026-10-18 16:55:03,142.142 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:55:03,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:55:03,213.213 INFO    ] No update needed
[2026-10-18 16:55:03,216.216 INFO    ] Checking for camera pi updates...
[2026-10-18 16:55:03,259.259 INFO    ] 200
[2026-10-18 16:55:03,261.261 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:55:03,316.316 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:55:13,330.330 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:55:13,366.366 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:55:13,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:55:13,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:55:13,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:55:13,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:55:15,428.428 INFO    ] ================================================
[2026-10-18 16:55:15,444.444 INFO    ] Launching Daemon at Sun Oct 18 16:55:15 IST 2026
[2026-10-18 16:55:15,454.454 INFO    ] ================================================
[2026-10-18 16:55:16,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:55:16
[2026-10-18 16:55:16,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:55:16,873.873 INFO    ] Initializing speech engine...
[2026-10-18 16:55:16,892.892 INFO    ] 2026-10-18 16:55:16
[2026-10-18 16:55:17,137.137 INFO    ] 2026-10-18 16:55:17
[2026-10-18 16:55:17,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:55:17,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:55:17,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:55:17,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:55:17,609.609 INFO    ] time= 18/10/2026 16:55:17
[2026-10-18 16:55:17,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:55:17,682.682 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:55:17,778.778 INFO    ] No existing commands found in stream
[2026-10-18 16:55:22,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:55:22,792.792 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-18 16:55:27,157.157 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:55:27,160.160 INFO    ] Checking for system updates...
[2026-10-18 16:55:27,201.201 INFO    ] 200
[2026-10-18 16:55:27,204.204 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:55:27,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:55:27,260.260 INFO    ] No update needed
[2026-10-18 16:55:27,263.263 INFO    ] Checking for camera pi updates...
[2026-10-18 16:55:27,302.302 INFO    ] 200
[2026-10-18 16:55:27,304.304 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:55:27,350.350 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:55:37,365.365 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:55:37,399.399 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:55:37,409.409 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:55:37,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:55:37,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:55:37,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:55:39,461.461 INFO    ] ================================================
[2026-10-18 16:55:39,476.476 INFO    ] Launching Daemon at Sun Oct 18 16:55:39 IST 2026
[2026-10-18 16:55:39,487.487 INFO    ] ================================================
[2026-10-18 16:55:40,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:55:40
[2026-10-18 16:55:40,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:55:40,903.903 INFO    ] Initializing speech engine...
[2026-10-18 16:55:40,910.910 INFO    ] 2026-10-18 16:55:40
[2026-10-18 16:55:41,212.212 INFO    ] 2026-10-18 16:55:41
[2026-10-18 16:55:41,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:55:41,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:55:41,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:55:41,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:55:41,642.642 INFO    ] time= 18/10/2026 16:55:41
[2026-10-18 16:55:41,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:55:41,654.654 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:55:41,732.732 INFO    ] No existing commands found in stream
[2026-10-18 16:55:46,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:55:46,765.765 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-18 16:55:47,691.691 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:55:47,693.693 INFO    ] Checking for system updates...
[2026-10-18 16:55:47,728.728 INFO    ] 200
[2026-10-18 16:55:47,731.731 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:55:47,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:55:47,787.787 INFO    ] No update needed
[2026-10-18 16:55:47,790.790 INFO    ] Checking for camera pi updates...
[2026-10-18 16:55:47,823.823 INFO    ] 200
[2026-10-18 16:55:47,825.825 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:55:47,865.865 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:55:57,877.877 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:55:57,914.914 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:55:57,926.926 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:55:57,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:55:57,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:55:57,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:55:59,981.981 INFO    ] ================================================
[2026-10-18 16:56:00,997.997 INFO    ] Launching Daemon at Sun Oct 18 16:55:59 IST 2026
[2026-10-18 16:56:00,008.008 INFO    ] ================================================
[2026-10-18 16:56:00,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:56:00
[2026-10-18 16:56:01,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:56:01,446.446 INFO    ] Initializing speech engine...
[2026-10-18 16:56:01,455.455 INFO    ] 2026-10-18 16:56:01
[2026-10-18 16:56:01,737.737 INFO    ] 2026-10-18 16:56:01
[2026-10-18 16:56:01,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:56:02,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:56:02,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:56:02,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:56:02,241.241 INFO    ] time= 18/10/2026 16:56:02
[2026-10-18 16:56:02,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:56:02,251.251 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:56:02,366.366 INFO    ] No existing commands found in stream
[2026-10-18 16:56:07,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:56:07,382.382 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-18 16:56:09,185.185 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 16:56:09,188.188 INFO    ] Checking for system updates...
[2026-10-18 16:56:09,223.223 INFO    ] 200
[2026-10-18 16:56:09,226.226 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:56:09,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:56:09,290.290 INFO    ] No update needed
[2026-10-18 16:56:09,294.294 INFO    ] Checking for camera pi updates...
[2026-10-18 16:56:09,331.331 INFO    ] 200
[2026-10-18 16:56:09,334.334 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:56:09,376.376 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:56:19,393.393 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:56:19,433.433 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:56:19,444.444 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:56:19,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:56:19,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:56:19,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:56:21,502.502 INFO    ] ================================================
[2026-10-18 16:56:21,517.517 INFO    ] Launching Daemon at Sun Oct 18 16:56:21 IST 2026
[2026-10-18 16:56:21,528.528 INFO    ] ================================================
[2026-10-18 16:56:22,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:56:22
[2026-10-18 16:56:22,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:56:22,984.984 INFO    ] Initializing speech engine...
[2026-10-18 16:56:22,993.993 INFO    ] 2026-10-18 16:56:22
[2026-10-18 16:56:23,257.257 INFO    ] 2026-10-18 16:56:23
[2026-10-18 16:56:23,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:56:23,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:56:23,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:56:23,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:56:23,802.802 INFO    ] time= 18/10/2026 16:56:23
[2026-10-18 16:56:23,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:56:23,827.827 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:56:23,950.950 INFO    ] No existing commands found in stream
[2026-10-18 16:56:28,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:56:28,970.970 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-18 16:56:32,322.322 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:56:32,326.326 INFO    ] Checking for system updates...
[2026-10-18 16:56:32,373.373 INFO    ] 200
[2026-10-18 16:56:32,376.376 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:56:32,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:56:32,436.436 INFO    ] No update needed
[2026-10-18 16:56:32,439.439 INFO    ] Checking for camera pi updates...
[2026-10-18 16:56:32,479.479 INFO    ] 200
[2026-10-18 16:56:32,482.482 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:56:32,530.530 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:56:42,547.547 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:56:42,582.582 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:56:42,592.592 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:56:42,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:56:42,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:56:42,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:56:44,644.644 INFO    ] ================================================
[2026-10-18 16:56:44,659.659 INFO    ] Launching Daemon at Sun Oct 18 16:56:44 IST 2026
[2026-10-18 16:56:44,670.670 INFO    ] ================================================
[2026-10-18 16:56:45,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:56:45
[2026-10-18 16:56:45,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:56:46,104.104 INFO    ] Initializing speech engine...
[2026-10-18 16:56:46,111.111 INFO    ] 2026-10-18 16:56:46
[2026-10-18 16:56:46,359.359 INFO    ] 2026-10-18 16:56:46
[2026-10-18 16:56:46,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:56:46,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:56:46,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:56:46,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:56:46,866.866 INFO    ] time= 18/10/2026 16:56:46
[2026-10-18 16:56:46,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:56:46,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:56:47,089.089 INFO    ] No existing commands found in stream
[2026-10-18 16:56:52,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:56:52,111.111 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-18 16:56:54,193.193 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:56:54,196.196 INFO    ] Checking for system updates...
[2026-10-18 16:56:54,232.232 INFO    ] 200
[2026-10-18 16:56:54,234.234 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:56:54,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:56:54,289.289 INFO    ] No update needed
[2026-10-18 16:56:54,292.292 INFO    ] Checking for camera pi updates...
[2026-10-18 16:56:54,325.325 INFO    ] 200
[2026-10-18 16:56:54,328.328 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:56:54,367.367 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:57:04,381.381 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:57:04,416.416 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:57:04,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:57:04,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:57:04,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:57:04,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:57:06,478.478 INFO    ] ================================================
[2026-10-18 16:57:06,493.493 INFO    ] Launching Daemon at Sun Oct 18 16:57:06 IST 2026
[2026-10-18 16:57:06,503.503 INFO    ] ================================================
[2026-10-18 16:57:07,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:57:07
[2026-10-18 16:57:07,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:57:07,969.969 INFO    ] Initializing speech engine...
[2026-10-18 16:57:07,973.973 INFO    ] 2026-10-18 16:57:07
[2026-10-18 16:57:08,232.232 INFO    ] 2026-10-18 16:57:08
[2026-10-18 16:57:08,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:57:08,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:57:08,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:57:08,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:57:08,781.781 INFO    ] time= 18/10/2026 16:57:08
[2026-10-18 16:57:08,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:57:08,804.804 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:57:08,930.930 INFO    ] No existing commands found in stream
[2026-10-18 16:57:13,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:57:13,950.950 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-18 16:57:17,116.116 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:57:17,119.119 INFO    ] Checking for system updates...
[2026-10-18 16:57:17,155.155 INFO    ] 200
[2026-10-18 16:57:17,158.158 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:57:17,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:57:17,216.216 INFO    ] No update needed
[2026-10-18 16:57:17,219.219 INFO    ] Checking for camera pi updates...
[2026-10-18 16:57:17,252.252 INFO    ] 200
[2026-10-18 16:57:17,255.255 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:57:17,296.296 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:57:27,312.312 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:57:27,347.347 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:57:27,357.357 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:57:27,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:57:27,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:57:27,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:57:29,411.411 INFO    ] ================================================
[2026-10-18 16:57:29,426.426 INFO    ] Launching Daemon at Sun Oct 18 16:57:29 IST 2026
[2026-10-18 16:57:29,437.437 INFO    ] ================================================
[2026-10-18 16:57:30,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:57:30
[2026-10-18 16:57:30,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:57:31,021.021 INFO    ] Initializing speech engine...
[2026-10-18 16:57:31,030.030 INFO    ] 2026-10-18 16:57:31
[2026-10-18 16:57:31,321.321 INFO    ] 2026-10-18 16:57:31
[2026-10-18 16:57:31,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:57:31,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:57:31,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:57:31,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:57:31,914.914 INFO    ] time= 18/10/2026 16:57:31
[2026-10-18 16:57:31,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:57:31,953.953 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:57:32,093.093 INFO    ] No existing commands found in stream
[2026-10-18 16:57:37,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:57:37,122.122 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-18 16:57:41,594.594 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:57:41,597.597 INFO    ] Checking for system updates...
[2026-10-18 16:57:41,634.634 INFO    ] 200
[2026-10-18 16:57:41,637.637 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:57:41,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:57:41,692.692 INFO    ] No update needed
[2026-10-18 16:57:41,695.695 INFO    ] Checking for camera pi updates...
[2026-10-18 16:57:41,732.732 INFO    ] 200
[2026-10-18 16:57:41,735.735 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:57:41,778.778 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:57:51,794.794 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2e150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:57:51,834.834 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:57:51,845.845 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:57:51,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:57:51,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:57:51,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:57:53,899.899 INFO    ] ================================================
[2026-10-18 16:57:53,914.914 INFO    ] Launching Daemon at Sun Oct 18 16:57:53 IST 2026
[2026-10-18 16:57:53,931.931 INFO    ] ================================================
[2026-10-18 16:57:54,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:57:54
[2026-10-18 16:57:55,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:57:55,447.447 INFO    ] Initializing speech engine...
[2026-10-18 16:57:55,465.465 INFO    ] 2026-10-18 16:57:55
[2026-10-18 16:57:55,721.721 INFO    ] 2026-10-18 16:57:55
[2026-10-18 16:57:55,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:57:56,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:57:56,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:57:56,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:57:56,285.285 INFO    ] time= 18/10/2026 16:57:56
[2026-10-18 16:57:56,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:57:56,311.311 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:57:56,442.442 INFO    ] No existing commands found in stream
[2026-10-18 16:58:01,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:58:01,459.459 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-18 16:58:05,703.703 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 16:58:05,706.706 INFO    ] Checking for system updates...
[2026-10-18 16:58:05,742.742 INFO    ] 200
[2026-10-18 16:58:05,744.744 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:58:05,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:58:05,800.800 INFO    ] No update needed
[2026-10-18 16:58:05,802.802 INFO    ] Checking for camera pi updates...
[2026-10-18 16:58:05,836.836 INFO    ] 200
[2026-10-18 16:58:05,838.838 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:58:05,878.878 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:58:15,893.893 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:58:15,928.928 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:58:15,938.938 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:58:15,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:58:15,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:58:15,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:58:18,996.996 INFO    ] ================================================
[2026-10-18 16:58:18,012.012 INFO    ] Launching Daemon at Sun Oct 18 16:58:18 IST 2026
[2026-10-18 16:58:18,022.022 INFO    ] ================================================
[2026-10-18 16:58:18,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:58:18
[2026-10-18 16:58:19,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:58:19,486.486 INFO    ] Initializing speech engine...
[2026-10-18 16:58:19,491.491 INFO    ] 2026-10-18 16:58:19
[2026-10-18 16:58:19,766.766 INFO    ] 2026-10-18 16:58:19
[2026-10-18 16:58:19,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:58:20,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:58:20,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:58:20,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:58:20,230.230 INFO    ] time= 18/10/2026 16:58:20
[2026-10-18 16:58:20,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:58:20,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:58:20,453.453 INFO    ] No existing commands found in stream
[2026-10-18 16:58:25,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:58:25,471.471 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-18 16:58:28,221.221 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 16:58:28,224.224 INFO    ] Checking for system updates...
[2026-10-18 16:58:28,260.260 INFO    ] 200
[2026-10-18 16:58:28,263.263 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:58:28,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:58:28,317.317 INFO    ] No update needed
[2026-10-18 16:58:28,320.320 INFO    ] Checking for camera pi updates...
[2026-10-18 16:58:28,357.357 INFO    ] 200
[2026-10-18 16:58:28,359.359 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:58:28,404.404 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:58:38,419.419 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:58:38,455.455 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:58:38,465.465 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:58:38,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:58:38,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:58:38,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:58:40,519.519 INFO    ] ================================================
[2026-10-18 16:58:40,534.534 INFO    ] Launching Daemon at Sun Oct 18 16:58:40 IST 2026
[2026-10-18 16:58:40,544.544 INFO    ] ================================================
[2026-10-18 16:58:41,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:58:41
[2026-10-18 16:58:41,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:58:42,118.118 INFO    ] Initializing speech engine...
[2026-10-18 16:58:42,132.132 INFO    ] 2026-10-18 16:58:42
[2026-10-18 16:58:42,442.442 INFO    ] 2026-10-18 16:58:42
[2026-10-18 16:58:42,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:58:42,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:58:42,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:58:43,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:58:43,109.109 INFO    ] time= 18/10/2026 16:58:43
[2026-10-18 16:58:43,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:58:43,205.205 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:58:43,386.386 INFO    ] No existing commands found in stream
[2026-10-18 16:58:48,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:58:48,401.401 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-18 16:58:49,597.597 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:58:49,600.600 INFO    ] Checking for system updates...
[2026-10-18 16:58:49,637.637 INFO    ] 200
[2026-10-18 16:58:49,640.640 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:58:49,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:58:49,703.703 INFO    ] No update needed
[2026-10-18 16:58:49,706.706 INFO    ] Checking for camera pi updates...
[2026-10-18 16:58:49,741.741 INFO    ] 200
[2026-10-18 16:58:49,743.743 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:58:49,784.784 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:58:59,800.800 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:58:59,840.840 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:58:59,851.851 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:58:59,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:58:59,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:58:59,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:59:01,909.909 INFO    ] ================================================
[2026-10-18 16:59:01,935.935 INFO    ] Launching Daemon at Sun Oct 18 16:59:01 IST 2026
[2026-10-18 16:59:01,952.952 INFO    ] ================================================
[2026-10-18 16:59:02,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:59:02
[2026-10-18 16:59:03,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:59:03,598.598 INFO    ] Initializing speech engine...
[2026-10-18 16:59:03,610.610 INFO    ] 2026-10-18 16:59:03
[2026-10-18 16:59:03,883.883 INFO    ] 2026-10-18 16:59:03
[2026-10-18 16:59:03,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:59:04,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:59:04,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:59:04,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:59:04,366.366 INFO    ] time= 18/10/2026 16:59:04
[2026-10-18 16:59:04,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:59:04,447.447 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:59:04,571.571 INFO    ] No existing commands found in stream
[2026-10-18 16:59:09,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:59:09,599.599 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-18 16:59:11,974.974 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 16:59:11,977.977 INFO    ] Checking for system updates...
[2026-10-18 16:59:12,016.016 INFO    ] 200
[2026-10-18 16:59:12,018.018 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:59:12,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 16:59:12,074.074 INFO    ] No update needed
[2026-10-18 16:59:12,076.076 INFO    ] Checking for camera pi updates...
[2026-10-18 16:59:12,110.110 INFO    ] 200
[2026-10-18 16:59:12,113.113 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:59:12,153.153 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:59:22,169.169 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:59:22,204.204 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:59:22,214.214 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:59:22,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:59:22,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:59:22,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:59:24,267.267 INFO    ] ================================================
[2026-10-18 16:59:24,284.284 INFO    ] Launching Daemon at Sun Oct 18 16:59:24 IST 2026
[2026-10-18 16:59:24,295.295 INFO    ] ================================================
[2026-10-18 16:59:24,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:59:24
[2026-10-18 16:59:25,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:59:25,920.920 INFO    ] Initializing speech engine...
[2026-10-18 16:59:25,931.931 INFO    ] 2026-10-18 16:59:25
[2026-10-18 16:59:26,239.239 INFO    ] 2026-10-18 16:59:26
[2026-10-18 16:59:26,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:59:26,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:59:26,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:59:26,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:59:26,757.757 INFO    ] time= 18/10/2026 16:59:26
[2026-10-18 16:59:26,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:59:26,810.810 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:59:26,931.931 INFO    ] No existing commands found in stream
[2026-10-18 16:59:31,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:59:31,971.971 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-18 16:59:34,495.495 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 16:59:34,498.498 INFO    ] Checking for system updates...
[2026-10-18 16:59:34,539.539 INFO    ] 200
[2026-10-18 16:59:34,542.542 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:59:34,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:59:34,605.605 INFO    ] No update needed
[2026-10-18 16:59:34,608.608 INFO    ] Checking for camera pi updates...
[2026-10-18 16:59:34,646.646 INFO    ] 200
[2026-10-18 16:59:34,649.649 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:59:34,690.690 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 16:59:44,706.706 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 16:59:44,746.746 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 16:59:44,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-18 16:59:44,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 16:59:44,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 16:59:44,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 16:59:46,813.813 INFO    ] ================================================
[2026-10-18 16:59:46,828.828 INFO    ] Launching Daemon at Sun Oct 18 16:59:46 IST 2026
[2026-10-18 16:59:46,840.840 INFO    ] ================================================
[2026-10-18 16:59:47,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 16:59:47
[2026-10-18 16:59:48,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 16:59:48,265.265 INFO    ] Initializing speech engine...
[2026-10-18 16:59:48,272.272 INFO    ] 2026-10-18 16:59:48
[2026-10-18 16:59:48,565.565 INFO    ] 2026-10-18 16:59:48
[2026-10-18 16:59:48,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 16:59:48,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 16:59:48,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 16:59:49,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 16:59:49,057.057 INFO    ] time= 18/10/2026 16:59:49
[2026-10-18 16:59:49,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 16:59:49,135.135 INFO    ] Checking for existing commands in stream...
[2026-10-18 16:59:49,264.264 INFO    ] No existing commands found in stream
[2026-10-18 16:59:54,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 16:59:54,279.279 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-18 16:59:56,786.786 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 16:59:56,789.789 INFO    ] Checking for system updates...
[2026-10-18 16:59:56,829.829 INFO    ] 200
[2026-10-18 16:59:56,832.832 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:59:56,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 16:59:56,894.894 INFO    ] No update needed
[2026-10-18 16:59:56,897.897 INFO    ] Checking for camera pi updates...
[2026-10-18 16:59:56,931.931 INFO    ] 200
[2026-10-18 16:59:56,934.934 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 16:59:56,975.975 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:00:06,995.995 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:00:07,033.033 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:00:07,044.044 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:00:07,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:00:07,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:00:07,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:00:09,099.099 INFO    ] ================================================
[2026-10-18 17:00:09,115.115 INFO    ] Launching Daemon at Sun Oct 18 17:00:09 IST 2026
[2026-10-18 17:00:09,126.126 INFO    ] ================================================
[2026-10-18 17:00:09,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:00:09
[2026-10-18 17:00:10,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:00:10,690.690 INFO    ] Initializing speech engine...
[2026-10-18 17:00:10,698.698 INFO    ] 2026-10-18 17:00:10
[2026-10-18 17:00:10,966.966 INFO    ] 2026-10-18 17:00:10
[2026-10-18 17:00:11,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:00:11,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:00:11,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:00:11,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:00:11,531.531 INFO    ] time= 18/10/2026 17:00:11
[2026-10-18 17:00:11,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:00:11,558.558 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:00:11,759.759 INFO    ] No existing commands found in stream
[2026-10-18 17:00:16,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:00:16,788.788 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-18 17:00:19,131.131 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:00:19,134.134 INFO    ] Checking for system updates...
[2026-10-18 17:00:19,173.173 INFO    ] 200
[2026-10-18 17:00:19,176.176 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:00:19,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:00:19,238.238 INFO    ] No update needed
[2026-10-18 17:00:19,240.240 INFO    ] Checking for camera pi updates...
[2026-10-18 17:00:19,275.275 INFO    ] 200
[2026-10-18 17:00:19,278.278 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:00:19,319.319 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:00:29,335.335 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:00:29,374.374 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:00:29,384.384 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:00:29,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:00:29,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:00:29,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:00:31,438.438 INFO    ] ================================================
[2026-10-18 17:00:31,454.454 INFO    ] Launching Daemon at Sun Oct 18 17:00:31 IST 2026
[2026-10-18 17:00:31,465.465 INFO    ] ================================================
[2026-10-18 17:00:32,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:00:32
[2026-10-18 17:00:32,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:00:33,070.070 INFO    ] Initializing speech engine...
[2026-10-18 17:00:33,082.082 INFO    ] 2026-10-18 17:00:33
[2026-10-18 17:00:33,416.416 INFO    ] 2026-10-18 17:00:33
[2026-10-18 17:00:33,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:00:33,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:00:33,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:00:33,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:00:33,953.953 INFO    ] time= 18/10/2026 17:00:33
[2026-10-18 17:00:33,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:00:34,006.006 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:00:34,113.113 INFO    ] No existing commands found in stream
[2026-10-18 17:00:39,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:00:39,136.136 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-18 17:00:42,741.741 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:00:42,744.744 INFO    ] Checking for system updates...
[2026-10-18 17:00:42,779.779 INFO    ] 200
[2026-10-18 17:00:42,782.782 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:00:42,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:00:42,836.836 INFO    ] No update needed
[2026-10-18 17:00:42,839.839 INFO    ] Checking for camera pi updates...
[2026-10-18 17:00:42,876.876 INFO    ] 200
[2026-10-18 17:00:42,878.878 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:00:42,919.919 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:00:52,933.933 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:00:52,967.967 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:00:52,977.977 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:00:52,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:00:52,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:00:52,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:00:55,029.029 INFO    ] ================================================
[2026-10-18 17:00:55,045.045 INFO    ] Launching Daemon at Sun Oct 18 17:00:55 IST 2026
[2026-10-18 17:00:55,056.056 INFO    ] ================================================
[2026-10-18 17:00:55,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:00:55
[2026-10-18 17:00:56,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:00:56,566.566 INFO    ] Initializing speech engine...
[2026-10-18 17:00:56,575.575 INFO    ] 2026-10-18 17:00:56
[2026-10-18 17:00:56,835.835 INFO    ] 2026-10-18 17:00:56
[2026-10-18 17:00:56,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:00:57,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:00:57,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:00:57,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:00:57,553.553 INFO    ] time= 18/10/2026 17:00:57
[2026-10-18 17:00:57,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:00:57,634.634 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:00:57,785.785 INFO    ] No existing commands found in stream
[2026-10-18 17:01:02,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:01:02,802.802 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-18 17:01:04,091.091 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:01:04,094.094 INFO    ] Checking for system updates...
[2026-10-18 17:01:04,130.130 INFO    ] 200
[2026-10-18 17:01:04,133.133 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:01:04,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:01:04,187.187 INFO    ] No update needed
[2026-10-18 17:01:04,189.189 INFO    ] Checking for camera pi updates...
[2026-10-18 17:01:04,223.223 INFO    ] 200
[2026-10-18 17:01:04,225.225 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:01:04,269.269 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:01:14,284.284 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:01:14,319.319 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:01:14,328.328 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:01:14,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:01:14,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:01:14,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:01:16,382.382 INFO    ] ================================================
[2026-10-18 17:01:16,398.398 INFO    ] Launching Daemon at Sun Oct 18 17:01:16 IST 2026
[2026-10-18 17:01:16,409.409 INFO    ] ================================================
[2026-10-18 17:01:16,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:01:16
[2026-10-18 17:01:17,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:01:17,876.876 INFO    ] Initializing speech engine...
[2026-10-18 17:01:17,886.886 INFO    ] 2026-10-18 17:01:17
[2026-10-18 17:01:18,149.149 INFO    ] 2026-10-18 17:01:18
[2026-10-18 17:01:18,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:01:18,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:01:18,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:01:18,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:01:18,692.692 INFO    ] time= 18/10/2026 17:01:18
[2026-10-18 17:01:18,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:01:18,717.717 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:01:18,845.845 INFO    ] No existing commands found in stream
[2026-10-18 17:01:23,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:01:23,861.861 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-18 17:01:24,752.752 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:01:24,754.754 INFO    ] Checking for system updates...
[2026-10-18 17:01:24,794.794 INFO    ] 200
[2026-10-18 17:01:24,796.796 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:01:24,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:01:24,854.854 INFO    ] No update needed
[2026-10-18 17:01:24,857.857 INFO    ] Checking for camera pi updates...
[2026-10-18 17:01:24,891.891 INFO    ] 200
[2026-10-18 17:01:24,894.894 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:01:24,938.938 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:01:34,952.952 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:01:34,992.992 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:01:35,003.003 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:01:35,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:01:35,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:01:35,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:01:37,059.059 INFO    ] ================================================
[2026-10-18 17:01:37,075.075 INFO    ] Launching Daemon at Sun Oct 18 17:01:37 IST 2026
[2026-10-18 17:01:37,087.087 INFO    ] ================================================
[2026-10-18 17:01:37,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:01:37
[2026-10-18 17:01:38,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:01:38,700.700 INFO    ] Initializing speech engine...
[2026-10-18 17:01:38,711.711 INFO    ] 2026-10-18 17:01:38
[2026-10-18 17:01:39,023.023 INFO    ] 2026-10-18 17:01:38
[2026-10-18 17:01:39,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:01:39,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:01:39,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:01:39,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:01:39,543.543 INFO    ] time= 18/10/2026 17:01:39
[2026-10-18 17:01:39,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:01:39,579.579 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:01:39,714.714 INFO    ] No existing commands found in stream
[2026-10-18 17:01:44,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:01:44,749.749 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-18 17:01:47,057.057 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:01:47,060.060 INFO    ] Checking for system updates...
[2026-10-18 17:01:47,097.097 INFO    ] 200
[2026-10-18 17:01:47,099.099 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:01:47,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:01:47,154.154 INFO    ] No update needed
[2026-10-18 17:01:47,157.157 INFO    ] Checking for camera pi updates...
[2026-10-18 17:01:47,195.195 INFO    ] 200
[2026-10-18 17:01:47,198.198 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:01:47,239.239 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:01:57,256.256 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:01:57,303.303 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:01:57,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:01:57,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:01:57,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:01:57,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:01:59,370.370 INFO    ] ================================================
[2026-10-18 17:01:59,386.386 INFO    ] Launching Daemon at Sun Oct 18 17:01:59 IST 2026
[2026-10-18 17:01:59,397.397 INFO    ] ================================================
[2026-10-18 17:02:00,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:02:00
[2026-10-18 17:02:00,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:02:00,949.949 INFO    ] Initializing speech engine...
[2026-10-18 17:02:00,952.952 INFO    ] 2026-10-18 17:02:00
[2026-10-18 17:02:01,256.256 INFO    ] 2026-10-18 17:02:01
[2026-10-18 17:02:01,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:02:01,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:02:01,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:02:01,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:02:01,701.701 INFO    ] time= 18/10/2026 17:02:01
[2026-10-18 17:02:01,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:02:01,770.770 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:02:01,850.850 INFO    ] No existing commands found in stream
[2026-10-18 17:02:06,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:02:06,870.870 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-18 17:02:09,923.923 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:02:09,926.926 INFO    ] Checking for system updates...
[2026-10-18 17:02:09,964.964 INFO    ] 200
[2026-10-18 17:02:09,966.966 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:02:10,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:02:10,025.025 INFO    ] No update needed
[2026-10-18 17:02:10,028.028 INFO    ] Checking for camera pi updates...
[2026-10-18 17:02:10,069.069 INFO    ] 200
[2026-10-18 17:02:10,072.072 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:02:10,118.118 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:02:20,135.135 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:02:20,172.172 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:02:20,182.182 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:02:20,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:02:20,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:02:20,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:02:22,235.235 INFO    ] ================================================
[2026-10-18 17:02:22,250.250 INFO    ] Launching Daemon at Sun Oct 18 17:02:22 IST 2026
[2026-10-18 17:02:22,261.261 INFO    ] ================================================
[2026-10-18 17:02:22,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:02:22
[2026-10-18 17:02:23,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:02:23,757.757 INFO    ] Initializing speech engine...
[2026-10-18 17:02:23,767.767 INFO    ] 2026-10-18 17:02:23
[2026-10-18 17:02:24,017.017 INFO    ] 2026-10-18 17:02:24
[2026-10-18 17:02:24,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:02:24,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:02:24,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:02:24,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:02:24,579.579 INFO    ] time= 18/10/2026 17:02:24
[2026-10-18 17:02:24,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:02:24,597.597 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:02:24,761.761 INFO    ] No existing commands found in stream
[2026-10-18 17:02:29,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:02:29,794.794 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-18 17:02:32,994.994 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:02:32,996.996 INFO    ] Checking for system updates...
[2026-10-18 17:02:33,032.032 INFO    ] 200
[2026-10-18 17:02:33,034.034 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:02:33,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:02:33,090.090 INFO    ] No update needed
[2026-10-18 17:02:33,092.092 INFO    ] Checking for camera pi updates...
[2026-10-18 17:02:33,126.126 INFO    ] 200
[2026-10-18 17:02:33,128.128 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:02:33,173.173 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:02:43,188.188 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:02:43,223.223 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:02:43,233.233 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:02:43,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:02:43,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:02:43,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:02:45,285.285 INFO    ] ================================================
[2026-10-18 17:02:45,300.300 INFO    ] Launching Daemon at Sun Oct 18 17:02:45 IST 2026
[2026-10-18 17:02:45,311.311 INFO    ] ================================================
[2026-10-18 17:02:45,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:02:45
[2026-10-18 17:02:46,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:02:46,764.764 INFO    ] Initializing speech engine...
[2026-10-18 17:02:46,769.769 INFO    ] 2026-10-18 17:02:46
[2026-10-18 17:02:47,033.033 INFO    ] 2026-10-18 17:02:47
[2026-10-18 17:02:47,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:02:47,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:02:47,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:02:47,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:02:47,578.578 INFO    ] time= 18/10/2026 17:02:47
[2026-10-18 17:02:47,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:02:47,600.600 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:02:47,733.733 INFO    ] No existing commands found in stream
[2026-10-18 17:02:52,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:02:52,750.750 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-18 17:02:56,522.522 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 17:02:56,525.525 INFO    ] Checking for system updates...
[2026-10-18 17:02:56,561.561 INFO    ] 200
[2026-10-18 17:02:56,564.564 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:02:56,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:02:56,618.618 INFO    ] No update needed
[2026-10-18 17:02:56,621.621 INFO    ] Checking for camera pi updates...
[2026-10-18 17:02:56,655.655 INFO    ] 200
[2026-10-18 17:02:56,658.658 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:02:56,702.702 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:03:06,718.718 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:03:06,754.754 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:03:06,764.764 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:03:06,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:03:06,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:03:06,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:03:08,816.816 INFO    ] ================================================
[2026-10-18 17:03:08,831.831 INFO    ] Launching Daemon at Sun Oct 18 17:03:08 IST 2026
[2026-10-18 17:03:08,842.842 INFO    ] ================================================
[2026-10-18 17:03:09,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:03:09
[2026-10-18 17:03:10,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:03:10,257.257 INFO    ] Initializing speech engine...
[2026-10-18 17:03:10,265.265 INFO    ] 2026-10-18 17:03:10
[2026-10-18 17:03:10,568.568 INFO    ] 2026-10-18 17:03:10
[2026-10-18 17:03:10,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:03:10,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:03:10,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:03:11,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:03:11,072.072 INFO    ] time= 18/10/2026 17:03:11
[2026-10-18 17:03:11,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:03:11,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:03:11,284.284 INFO    ] No existing commands found in stream
[2026-10-18 17:03:16,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:03:16,299.299 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-18 17:03:17,922.922 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:03:17,925.925 INFO    ] Checking for system updates...
[2026-10-18 17:03:17,965.965 INFO    ] 200
[2026-10-18 17:03:17,968.968 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:03:18,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:03:18,022.022 INFO    ] No update needed
[2026-10-18 17:03:18,024.024 INFO    ] Checking for camera pi updates...
[2026-10-18 17:03:18,058.058 INFO    ] 200
[2026-10-18 17:03:18,060.060 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:03:18,103.103 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:03:28,115.115 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:03:28,150.150 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:03:28,159.159 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:03:28,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:03:28,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:03:28,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:03:30,212.212 INFO    ] ================================================
[2026-10-18 17:03:30,228.228 INFO    ] Launching Daemon at Sun Oct 18 17:03:30 IST 2026
[2026-10-18 17:03:30,239.239 INFO    ] ================================================
[2026-10-18 17:03:30,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:03:30
[2026-10-18 17:03:31,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:03:31,668.668 INFO    ] Initializing speech engine...
[2026-10-18 17:03:31,681.681 INFO    ] 2026-10-18 17:03:31
[2026-10-18 17:03:31,950.950 INFO    ] 2026-10-18 17:03:31
[2026-10-18 17:03:31,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:03:32,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:03:32,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:03:32,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:03:32,539.539 INFO    ] time= 18/10/2026 17:03:32
[2026-10-18 17:03:32,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:03:32,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:03:32,757.757 INFO    ] No existing commands found in stream
[2026-10-18 17:03:37,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:03:37,792.792 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-18 17:03:40,390.390 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 17:03:40,393.393 INFO    ] Checking for system updates...
[2026-10-18 17:03:40,429.429 INFO    ] 200
[2026-10-18 17:03:40,432.432 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:03:40,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:03:40,496.496 INFO    ] No update needed
[2026-10-18 17:03:40,499.499 INFO    ] Checking for camera pi updates...
[2026-10-18 17:03:40,532.532 INFO    ] 200
[2026-10-18 17:03:40,534.534 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:03:40,575.575 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:03:50,591.591 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:03:50,626.626 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:03:50,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:03:50,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:03:50,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:03:50,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:03:52,690.690 INFO    ] ================================================
[2026-10-18 17:03:52,705.705 INFO    ] Launching Daemon at Sun Oct 18 17:03:52 IST 2026
[2026-10-18 17:03:52,717.717 INFO    ] ================================================
[2026-10-18 17:03:53,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:03:53
[2026-10-18 17:03:54,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:03:54,320.320 INFO    ] Initializing speech engine...
[2026-10-18 17:03:54,333.333 INFO    ] 2026-10-18 17:03:54
[2026-10-18 17:03:54,610.610 INFO    ] 2026-10-18 17:03:54
[2026-10-18 17:03:54,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:03:54,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:03:54,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:03:55,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:03:55,146.146 INFO    ] time= 18/10/2026 17:03:55
[2026-10-18 17:03:55,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:03:55,172.172 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:03:55,302.302 INFO    ] No existing commands found in stream
[2026-10-18 17:04:00,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:04:00,320.320 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-18 17:04:04,715.715 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:04:04,718.718 INFO    ] Checking for system updates...
[2026-10-18 17:04:04,755.755 INFO    ] 200
[2026-10-18 17:04:04,758.758 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:04:04,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:04:04,815.815 INFO    ] No update needed
[2026-10-18 17:04:04,818.818 INFO    ] Checking for camera pi updates...
[2026-10-18 17:04:04,856.856 INFO    ] 200
[2026-10-18 17:04:04,858.858 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:04:04,899.899 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:04:14,915.915 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:04:14,954.954 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:04:14,966.966 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:04:14,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:04:14,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:04:14,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:04:17,021.021 INFO    ] ================================================
[2026-10-18 17:04:17,036.036 INFO    ] Launching Daemon at Sun Oct 18 17:04:17 IST 2026
[2026-10-18 17:04:17,046.046 INFO    ] ================================================
[2026-10-18 17:04:17,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:04:17
[2026-10-18 17:04:18,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:04:18,515.515 INFO    ] Initializing speech engine...
[2026-10-18 17:04:18,531.531 INFO    ] 2026-10-18 17:04:18
[2026-10-18 17:04:18,806.806 INFO    ] 2026-10-18 17:04:18
[2026-10-18 17:04:18,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:04:19,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:04:19,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:04:19,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:04:19,338.338 INFO    ] time= 18/10/2026 17:04:19
[2026-10-18 17:04:19,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:04:19,441.441 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:04:19,575.575 INFO    ] No existing commands found in stream
[2026-10-18 17:04:24,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:04:24,604.604 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-18 17:04:27,276.276 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:04:27,279.279 INFO    ] Checking for system updates...
[2026-10-18 17:04:27,318.318 INFO    ] 200
[2026-10-18 17:04:27,321.321 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:04:27,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:04:27,377.377 INFO    ] No update needed
[2026-10-18 17:04:27,380.380 INFO    ] Checking for camera pi updates...
[2026-10-18 17:04:27,413.413 INFO    ] 200
[2026-10-18 17:04:27,415.415 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:04:27,455.455 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:04:37,471.471 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:04:37,507.507 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:04:37,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:04:37,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:04:37,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:04:37,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:04:39,573.573 INFO    ] ================================================
[2026-10-18 17:04:39,588.588 INFO    ] Launching Daemon at Sun Oct 18 17:04:39 IST 2026
[2026-10-18 17:04:39,599.599 INFO    ] ================================================
[2026-10-18 17:04:40,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:04:40
[2026-10-18 17:04:40,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:04:41,044.044 INFO    ] Initializing speech engine...
[2026-10-18 17:04:41,064.064 INFO    ] 2026-10-18 17:04:41
[2026-10-18 17:04:41,331.331 INFO    ] 2026-10-18 17:04:41
[2026-10-18 17:04:41,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:04:41,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:04:41,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:04:41,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:04:41,822.822 INFO    ] time= 18/10/2026 17:04:41
[2026-10-18 17:04:41,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:04:41,911.911 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:04:42,020.020 INFO    ] No existing commands found in stream
[2026-10-18 17:04:47,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:04:47,035.035 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-18 17:04:50,324.324 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:04:50,326.326 INFO    ] Checking for system updates...
[2026-10-18 17:04:50,361.361 INFO    ] 200
[2026-10-18 17:04:50,364.364 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:04:50,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:04:50,418.418 INFO    ] No update needed
[2026-10-18 17:04:50,421.421 INFO    ] Checking for camera pi updates...
[2026-10-18 17:04:50,455.455 INFO    ] 200
[2026-10-18 17:04:50,457.457 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:04:50,497.497 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:05:00,512.512 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:05:00,547.547 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:05:00,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:05:00,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:05:00,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:05:00,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:05:02,610.610 INFO    ] ================================================
[2026-10-18 17:05:02,631.631 INFO    ] Launching Daemon at Sun Oct 18 17:05:02 IST 2026
[2026-10-18 17:05:02,649.649 INFO    ] ================================================
[2026-10-18 17:05:03,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:05:03
[2026-10-18 17:05:03,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:05:04,232.232 INFO    ] Initializing speech engine...
[2026-10-18 17:05:04,244.244 INFO    ] 2026-10-18 17:05:04
[2026-10-18 17:05:04,510.510 INFO    ] 2026-10-18 17:05:04
[2026-10-18 17:05:04,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:05:04,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:05:04,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:05:05,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:05:05,073.073 INFO    ] time= 18/10/2026 17:05:05
[2026-10-18 17:05:05,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:05:05,104.104 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:05:05,238.238 INFO    ] No existing commands found in stream
[2026-10-18 17:05:10,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:05:10,260.260 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-18 17:05:12,396.396 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:05:12,399.399 INFO    ] Checking for system updates...
[2026-10-18 17:05:12,439.439 INFO    ] 200
[2026-10-18 17:05:12,441.441 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:05:12,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:05:12,497.497 INFO    ] No update needed
[2026-10-18 17:05:12,499.499 INFO    ] Checking for camera pi updates...
[2026-10-18 17:05:12,533.533 INFO    ] 200
[2026-10-18 17:05:12,535.535 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:05:12,575.575 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:05:22,591.591 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:05:22,627.627 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:05:22,637.637 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:05:22,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:05:22,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:05:22,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:05:24,691.691 INFO    ] ================================================
[2026-10-18 17:05:24,706.706 INFO    ] Launching Daemon at Sun Oct 18 17:05:24 IST 2026
[2026-10-18 17:05:24,717.717 INFO    ] ================================================
[2026-10-18 17:05:25,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:05:25
[2026-10-18 17:05:25,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:05:26,180.180 INFO    ] Initializing speech engine...
[2026-10-18 17:05:26,187.187 INFO    ] 2026-10-18 17:05:26
[2026-10-18 17:05:26,433.433 INFO    ] 2026-10-18 17:05:26
[2026-10-18 17:05:26,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:05:26,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:05:26,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:05:26,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:05:26,998.998 INFO    ] time= 18/10/2026 17:05:26
[2026-10-18 17:05:27,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:05:27,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:05:27,154.154 INFO    ] No existing commands found in stream
[2026-10-18 17:05:32,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:05:32,180.180 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-18 17:05:36,230.230 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:05:36,233.233 INFO    ] Checking for system updates...
[2026-10-18 17:05:36,269.269 INFO    ] 200
[2026-10-18 17:05:36,271.271 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:05:36,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:05:36,334.334 INFO    ] No update needed
[2026-10-18 17:05:36,336.336 INFO    ] Checking for camera pi updates...
[2026-10-18 17:05:36,369.369 INFO    ] 200
[2026-10-18 17:05:36,372.372 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:05:36,412.412 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:05:46,423.423 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:05:46,459.459 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:05:46,469.469 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:05:46,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:05:46,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:05:46,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:05:48,524.524 INFO    ] ================================================
[2026-10-18 17:05:48,539.539 INFO    ] Launching Daemon at Sun Oct 18 17:05:48 IST 2026
[2026-10-18 17:05:48,549.549 INFO    ] ================================================
[2026-10-18 17:05:49,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:05:49
[2026-10-18 17:05:49,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:05:50,011.011 INFO    ] Initializing speech engine...
[2026-10-18 17:05:50,021.021 INFO    ] 2026-10-18 17:05:50
[2026-10-18 17:05:50,280.280 INFO    ] 2026-10-18 17:05:50
[2026-10-18 17:05:50,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:05:50,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:05:50,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:05:50,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:05:50,811.811 INFO    ] time= 18/10/2026 17:05:50
[2026-10-18 17:05:50,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:05:50,848.848 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:05:50,992.992 INFO    ] No existing commands found in stream
[2026-10-18 17:05:56,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:05:56,021.021 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-18 17:06:00,193.193 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 17:06:00,196.196 INFO    ] Checking for system updates...
[2026-10-18 17:06:00,233.233 INFO    ] 200
[2026-10-18 17:06:00,236.236 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:06:00,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:06:00,300.300 INFO    ] No update needed
[2026-10-18 17:06:00,303.303 INFO    ] Checking for camera pi updates...
[2026-10-18 17:06:00,338.338 INFO    ] 200
[2026-10-18 17:06:00,341.341 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:06:00,388.388 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:06:10,403.403 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:06:10,444.444 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:06:10,455.455 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:06:10,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:06:10,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:06:10,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:06:12,512.512 INFO    ] ================================================
[2026-10-18 17:06:12,528.528 INFO    ] Launching Daemon at Sun Oct 18 17:06:12 IST 2026
[2026-10-18 17:06:12,538.538 INFO    ] ================================================
[2026-10-18 17:06:13,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:06:13
[2026-10-18 17:06:13,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:06:14,193.193 INFO    ] Initializing speech engine...
[2026-10-18 17:06:14,206.206 INFO    ] 2026-10-18 17:06:14
[2026-10-18 17:06:14,481.481 INFO    ] 2026-10-18 17:06:14
[2026-10-18 17:06:14,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:06:14,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:06:14,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:06:15,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:06:15,044.044 INFO    ] time= 18/10/2026 17:06:15
[2026-10-18 17:06:15,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:06:15,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:06:15,207.207 INFO    ] No existing commands found in stream
[2026-10-18 17:06:20,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:06:20,239.239 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-18 17:06:22,410.410 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:06:22,413.413 INFO    ] Checking for system updates...
[2026-10-18 17:06:22,448.448 INFO    ] 200
[2026-10-18 17:06:22,451.451 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:06:22,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:06:22,505.505 INFO    ] No update needed
[2026-10-18 17:06:22,507.507 INFO    ] Checking for camera pi updates...
[2026-10-18 17:06:22,545.545 INFO    ] 200
[2026-10-18 17:06:22,547.547 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:06:22,588.588 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:06:32,601.601 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:06:32,636.636 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:06:32,645.645 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:06:32,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:06:32,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:06:32,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:06:34,698.698 INFO    ] ================================================
[2026-10-18 17:06:34,713.713 INFO    ] Launching Daemon at Sun Oct 18 17:06:34 IST 2026
[2026-10-18 17:06:34,724.724 INFO    ] ================================================
[2026-10-18 17:06:35,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:06:35
[2026-10-18 17:06:36,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:06:36,389.389 INFO    ] Initializing speech engine...
[2026-10-18 17:06:36,401.401 INFO    ] 2026-10-18 17:06:36
[2026-10-18 17:06:36,686.686 INFO    ] 2026-10-18 17:06:36
[2026-10-18 17:06:36,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:06:37,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:06:37,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:06:37,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:06:37,239.239 INFO    ] time= 18/10/2026 17:06:37
[2026-10-18 17:06:37,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:06:37,276.276 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:06:37,385.385 INFO    ] No existing commands found in stream
[2026-10-18 17:06:42,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:06:42,401.401 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-18 17:06:45,498.498 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:06:45,501.501 INFO    ] Checking for system updates...
[2026-10-18 17:06:45,538.538 INFO    ] 200
[2026-10-18 17:06:45,541.541 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:06:45,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:06:45,600.600 INFO    ] No update needed
[2026-10-18 17:06:45,603.603 INFO    ] Checking for camera pi updates...
[2026-10-18 17:06:45,638.638 INFO    ] 200
[2026-10-18 17:06:45,640.640 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:06:45,687.687 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:06:55,704.704 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:06:55,744.744 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:06:55,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:06:55,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:06:55,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:06:55,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:06:57,810.810 INFO    ] ================================================
[2026-10-18 17:06:57,826.826 INFO    ] Launching Daemon at Sun Oct 18 17:06:57 IST 2026
[2026-10-18 17:06:57,836.836 INFO    ] ================================================
[2026-10-18 17:06:58,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:06:58
[2026-10-18 17:06:58,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:06:59,256.256 INFO    ] Initializing speech engine...
[2026-10-18 17:06:59,271.271 INFO    ] 2026-10-18 17:06:59
[2026-10-18 17:06:59,557.557 INFO    ] 2026-10-18 17:06:59
[2026-10-18 17:06:59,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:06:59,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:06:59,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:06:59,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:06:59,983.983 INFO    ] time= 18/10/2026 17:06:59
[2026-10-18 17:06:59,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:07:00,032.032 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:07:00,174.174 INFO    ] No existing commands found in stream
[2026-10-18 17:07:05,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:07:05,197.197 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-18 17:07:06,225.225 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:07:06,228.228 INFO    ] Checking for system updates...
[2026-10-18 17:07:06,263.263 INFO    ] 200
[2026-10-18 17:07:06,266.266 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:07:06,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:07:06,321.321 INFO    ] No update needed
[2026-10-18 17:07:06,323.323 INFO    ] Checking for camera pi updates...
[2026-10-18 17:07:06,357.357 INFO    ] 200
[2026-10-18 17:07:06,359.359 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:07:06,400.400 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:07:16,415.415 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:07:16,450.450 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:07:16,459.459 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:07:16,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:07:16,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:07:16,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:07:18,512.512 INFO    ] ================================================
[2026-10-18 17:07:18,527.527 INFO    ] Launching Daemon at Sun Oct 18 17:07:18 IST 2026
[2026-10-18 17:07:18,539.539 INFO    ] ================================================
[2026-10-18 17:07:19,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:07:19
[2026-10-18 17:07:19,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:07:19,984.984 INFO    ] Initializing speech engine...
[2026-10-18 17:07:19,992.992 INFO    ] 2026-10-18 17:07:19
[2026-10-18 17:07:20,252.252 INFO    ] 2026-10-18 17:07:20
[2026-10-18 17:07:20,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:07:20,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:07:20,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:07:20,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:07:20,793.793 INFO    ] time= 18/10/2026 17:07:20
[2026-10-18 17:07:20,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:07:20,820.820 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:07:20,982.982 INFO    ] No existing commands found in stream
[2026-10-18 17:07:26,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:07:26,015.015 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-18 17:07:27,601.601 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:07:27,604.604 INFO    ] Checking for system updates...
[2026-10-18 17:07:27,644.644 INFO    ] 200
[2026-10-18 17:07:27,647.647 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:07:27,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:07:27,705.705 INFO    ] No update needed
[2026-10-18 17:07:27,708.708 INFO    ] Checking for camera pi updates...
[2026-10-18 17:07:27,742.742 INFO    ] 200
[2026-10-18 17:07:27,744.744 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:07:27,785.785 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:07:37,800.800 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:07:37,840.840 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:07:37,852.852 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:07:37,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:07:37,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:07:37,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:07:39,907.907 INFO    ] ================================================
[2026-10-18 17:07:39,922.922 INFO    ] Launching Daemon at Sun Oct 18 17:07:39 IST 2026
[2026-10-18 17:07:39,933.933 INFO    ] ================================================
[2026-10-18 17:07:40,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:07:40
[2026-10-18 17:07:41,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:07:41,393.393 INFO    ] Initializing speech engine...
[2026-10-18 17:07:41,403.403 INFO    ] 2026-10-18 17:07:41
[2026-10-18 17:07:41,664.664 INFO    ] 2026-10-18 17:07:41
[2026-10-18 17:07:41,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:07:41,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:07:41,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:07:42,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:07:42,210.210 INFO    ] time= 18/10/2026 17:07:42
[2026-10-18 17:07:42,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:07:42,235.235 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:07:42,364.364 INFO    ] No existing commands found in stream
[2026-10-18 17:07:47,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:07:47,390.390 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-18 17:07:49,240.240 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:07:49,243.243 INFO    ] Checking for system updates...
[2026-10-18 17:07:49,280.280 INFO    ] 200
[2026-10-18 17:07:49,283.283 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:07:49,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:07:49,339.339 INFO    ] No update needed
[2026-10-18 17:07:49,341.341 INFO    ] Checking for camera pi updates...
[2026-10-18 17:07:49,376.376 INFO    ] 200
[2026-10-18 17:07:49,378.378 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:07:49,418.418 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:07:59,433.433 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:07:59,467.467 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:07:59,477.477 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:07:59,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:07:59,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:07:59,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:08:01,557.557 INFO    ] ================================================
[2026-10-18 17:08:01,590.590 INFO    ] Launching Daemon at Sun Oct 18 17:08:01 IST 2026
[2026-10-18 17:08:01,610.610 INFO    ] ================================================
[2026-10-18 17:08:02,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:08:02
[2026-10-18 17:08:03,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:08:03,355.355 INFO    ] Initializing speech engine...
[2026-10-18 17:08:03,364.364 INFO    ] 2026-10-18 17:08:03
[2026-10-18 17:08:03,661.661 INFO    ] 2026-10-18 17:08:03
[2026-10-18 17:08:03,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:08:03,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:08:03,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:08:04,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:08:04,149.149 INFO    ] time= 18/10/2026 17:08:04
[2026-10-18 17:08:04,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:08:04,260.260 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:08:04,396.396 INFO    ] No existing commands found in stream
[2026-10-18 17:08:09,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:08:09,416.416 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-18 17:08:11,736.736 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:08:11,739.739 INFO    ] Checking for system updates...
[2026-10-18 17:08:11,776.776 INFO    ] 200
[2026-10-18 17:08:11,778.778 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:08:11,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:08:11,834.834 INFO    ] No update needed
[2026-10-18 17:08:11,837.837 INFO    ] Checking for camera pi updates...
[2026-10-18 17:08:11,870.870 INFO    ] 200
[2026-10-18 17:08:11,872.872 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:08:11,912.912 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:08:21,926.926 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:08:21,961.961 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:08:21,971.971 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:08:21,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:08:21,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:08:21,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:08:24,024.024 INFO    ] ================================================
[2026-10-18 17:08:24,040.040 INFO    ] Launching Daemon at Sun Oct 18 17:08:24 IST 2026
[2026-10-18 17:08:24,050.050 INFO    ] ================================================
[2026-10-18 17:08:24,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:08:24
[2026-10-18 17:08:25,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:08:25,465.465 INFO    ] Initializing speech engine...
[2026-10-18 17:08:25,479.479 INFO    ] 2026-10-18 17:08:25
[2026-10-18 17:08:25,759.759 INFO    ] 2026-10-18 17:08:25
[2026-10-18 17:08:25,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:08:26,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:08:26,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:08:26,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:08:26,288.288 INFO    ] time= 18/10/2026 17:08:26
[2026-10-18 17:08:26,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:08:26,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:08:26,495.495 INFO    ] No existing commands found in stream
[2026-10-18 17:08:31,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:08:31,513.513 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-18 17:08:34,055.055 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 17:08:34,057.057 INFO    ] Checking for system updates...
[2026-10-18 17:08:34,093.093 INFO    ] 200
[2026-10-18 17:08:34,096.096 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:08:34,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:08:34,157.157 INFO    ] No update needed
[2026-10-18 17:08:34,159.159 INFO    ] Checking for camera pi updates...
[2026-10-18 17:08:34,196.196 INFO    ] 200
[2026-10-18 17:08:34,198.198 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:08:34,245.245 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:08:44,262.262 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:08:44,301.301 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:08:44,312.312 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:08:44,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:08:44,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:08:44,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:08:46,369.369 INFO    ] ================================================
[2026-10-18 17:08:46,385.385 INFO    ] Launching Daemon at Sun Oct 18 17:08:46 IST 2026
[2026-10-18 17:08:46,397.397 INFO    ] ================================================
[2026-10-18 17:08:46,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:08:46
[2026-10-18 17:08:47,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:08:47,888.888 INFO    ] Initializing speech engine...
[2026-10-18 17:08:47,896.896 INFO    ] 2026-10-18 17:08:47
[2026-10-18 17:08:48,192.192 INFO    ] 2026-10-18 17:08:48
[2026-10-18 17:08:48,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:08:48,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:08:48,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:08:48,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:08:48,772.772 INFO    ] time= 18/10/2026 17:08:48
[2026-10-18 17:08:48,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:08:48,798.798 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:08:48,936.936 INFO    ] No existing commands found in stream
[2026-10-18 17:08:53,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:08:53,954.954 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-18 17:08:56,625.625 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:08:56,628.628 INFO    ] Checking for system updates...
[2026-10-18 17:08:56,667.667 INFO    ] 200
[2026-10-18 17:08:56,669.669 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:08:56,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:08:56,735.735 INFO    ] No update needed
[2026-10-18 17:08:56,738.738 INFO    ] Checking for camera pi updates...
[2026-10-18 17:08:56,778.778 INFO    ] 200
[2026-10-18 17:08:56,781.781 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:08:56,829.829 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:09:06,845.845 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:09:06,880.880 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:09:06,890.890 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:09:06,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:09:06,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:09:06,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:09:08,944.944 INFO    ] ================================================
[2026-10-18 17:09:08,960.960 INFO    ] Launching Daemon at Sun Oct 18 17:09:08 IST 2026
[2026-10-18 17:09:08,970.970 INFO    ] ================================================
[2026-10-18 17:09:09,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:09:09
[2026-10-18 17:09:10,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:09:10,387.387 INFO    ] Initializing speech engine...
[2026-10-18 17:09:10,406.406 INFO    ] 2026-10-18 17:09:10
[2026-10-18 17:09:10,656.656 INFO    ] 2026-10-18 17:09:10
[2026-10-18 17:09:10,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:09:10,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:09:10,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:09:11,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:09:11,160.160 INFO    ] time= 18/10/2026 17:09:11
[2026-10-18 17:09:11,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:09:11,229.229 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:09:11,348.348 INFO    ] No existing commands found in stream
[2026-10-18 17:09:16,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:09:16,373.373 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-18 17:09:17,097.097 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:09:17,099.099 INFO    ] Checking for system updates...
[2026-10-18 17:09:17,135.135 INFO    ] 200
[2026-10-18 17:09:17,138.138 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:09:17,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:09:17,198.198 INFO    ] No update needed
[2026-10-18 17:09:17,200.200 INFO    ] Checking for camera pi updates...
[2026-10-18 17:09:17,236.236 INFO    ] 200
[2026-10-18 17:09:17,239.239 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:09:17,282.282 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:09:27,297.297 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:09:27,331.331 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:09:27,341.341 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:09:27,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:09:27,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:09:27,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:09:29,395.395 INFO    ] ================================================
[2026-10-18 17:09:29,410.410 INFO    ] Launching Daemon at Sun Oct 18 17:09:29 IST 2026
[2026-10-18 17:09:29,420.420 INFO    ] ================================================
[2026-10-18 17:09:30,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:09:30
[2026-10-18 17:09:30,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:09:31,000.000 INFO    ] Initializing speech engine...
[2026-10-18 17:09:31,008.008 INFO    ] 2026-10-18 17:09:31
[2026-10-18 17:09:31,278.278 INFO    ] 2026-10-18 17:09:31
[2026-10-18 17:09:31,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:09:31,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:09:31,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:09:31,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:09:31,869.869 INFO    ] time= 18/10/2026 17:09:31
[2026-10-18 17:09:31,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:09:31,905.905 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:09:32,059.059 INFO    ] No existing commands found in stream
[2026-10-18 17:09:37,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:09:37,094.094 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-18 17:09:40,686.686 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:09:40,689.689 INFO    ] Checking for system updates...
[2026-10-18 17:09:40,729.729 INFO    ] 200
[2026-10-18 17:09:40,732.732 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:09:40,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:09:40,788.788 INFO    ] No update needed
[2026-10-18 17:09:40,791.791 INFO    ] Checking for camera pi updates...
[2026-10-18 17:09:40,826.826 INFO    ] 200
[2026-10-18 17:09:40,828.828 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:09:40,873.873 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:09:50,894.894 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:09:50,933.933 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:09:50,943.943 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:09:50,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:09:50,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:09:50,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:09:53,999.999 INFO    ] ================================================
[2026-10-18 17:09:53,014.014 INFO    ] Launching Daemon at Sun Oct 18 17:09:53 IST 2026
[2026-10-18 17:09:53,024.024 INFO    ] ================================================
[2026-10-18 17:09:53,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:09:53
[2026-10-18 17:09:54,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:09:54,459.459 INFO    ] Initializing speech engine...
[2026-10-18 17:09:54,469.469 INFO    ] 2026-10-18 17:09:54
[2026-10-18 17:09:54,727.727 INFO    ] 2026-10-18 17:09:54
[2026-10-18 17:09:54,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:09:55,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:09:55,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:09:55,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:09:55,275.275 INFO    ] time= 18/10/2026 17:09:55
[2026-10-18 17:09:55,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:09:55,292.292 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:09:55,441.441 INFO    ] No existing commands found in stream
[2026-10-18 17:10:00,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:10:00,456.456 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-18 17:10:07,601.601 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:10:07,603.603 INFO    ] Checking for system updates...
[2026-10-18 17:10:07,641.641 INFO    ] 200
[2026-10-18 17:10:07,644.644 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:10:07,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:10:07,700.700 INFO    ] No update needed
[2026-10-18 17:10:07,702.702 INFO    ] Checking for camera pi updates...
[2026-10-18 17:10:07,736.736 INFO    ] 200
[2026-10-18 17:10:07,738.738 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:10:07,778.778 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:10:17,793.793 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:10:17,829.829 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:10:17,839.839 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:10:17,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:10:17,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:10:17,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:10:19,892.892 INFO    ] ================================================
[2026-10-18 17:10:19,907.907 INFO    ] Launching Daemon at Sun Oct 18 17:10:19 IST 2026
[2026-10-18 17:10:19,917.917 INFO    ] ================================================
[2026-10-18 17:10:20,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:10:20
[2026-10-18 17:10:21,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:10:21,319.319 INFO    ] Initializing speech engine...
[2026-10-18 17:10:21,342.342 INFO    ] 2026-10-18 17:10:21
[2026-10-18 17:10:21,598.598 INFO    ] 2026-10-18 17:10:21
[2026-10-18 17:10:21,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:10:21,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:10:21,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:10:22,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:10:22,057.057 INFO    ] time= 18/10/2026 17:10:22
[2026-10-18 17:10:22,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:10:22,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:10:22,323.323 INFO    ] No existing commands found in stream
[2026-10-18 17:10:27,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:10:27,340.340 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-18 17:10:30,523.523 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:10:30,526.526 INFO    ] Checking for system updates...
[2026-10-18 17:10:30,564.564 INFO    ] 200
[2026-10-18 17:10:30,567.567 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:10:30,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:10:30,625.625 INFO    ] No update needed
[2026-10-18 17:10:30,627.627 INFO    ] Checking for camera pi updates...
[2026-10-18 17:10:30,660.660 INFO    ] 200
[2026-10-18 17:10:30,663.663 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:10:30,707.707 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:10:40,720.720 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:10:40,755.755 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:10:40,764.764 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:10:40,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:10:40,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:10:40,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:10:42,817.817 INFO    ] ================================================
[2026-10-18 17:10:42,833.833 INFO    ] Launching Daemon at Sun Oct 18 17:10:42 IST 2026
[2026-10-18 17:10:42,844.844 INFO    ] ================================================
[2026-10-18 17:10:43,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:10:43
[2026-10-18 17:10:44,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:10:44,263.263 INFO    ] Initializing speech engine...
[2026-10-18 17:10:44,279.279 INFO    ] 2026-10-18 17:10:44
[2026-10-18 17:10:44,557.557 INFO    ] 2026-10-18 17:10:44
[2026-10-18 17:10:44,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:10:44,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:10:44,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:10:44,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:10:44,967.967 INFO    ] time= 18/10/2026 17:10:44
[2026-10-18 17:10:44,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:10:45,030.030 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:10:45,180.180 INFO    ] No existing commands found in stream
[2026-10-18 17:10:50,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:10:50,198.198 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-18 17:10:52,059.059 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:10:52,062.062 INFO    ] Checking for system updates...
[2026-10-18 17:10:52,097.097 INFO    ] 200
[2026-10-18 17:10:52,100.100 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:10:52,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:10:52,159.159 INFO    ] No update needed
[2026-10-18 17:10:52,162.162 INFO    ] Checking for camera pi updates...
[2026-10-18 17:10:52,197.197 INFO    ] 200
[2026-10-18 17:10:52,199.199 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:10:52,240.240 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:11:02,255.255 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:11:02,294.294 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:11:02,305.305 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:11:02,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:11:02,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:11:02,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:11:04,361.361 INFO    ] ================================================
[2026-10-18 17:11:04,377.377 INFO    ] Launching Daemon at Sun Oct 18 17:11:04 IST 2026
[2026-10-18 17:11:04,388.388 INFO    ] ================================================
[2026-10-18 17:11:04,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:11:04
[2026-10-18 17:11:05,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:11:05,869.869 INFO    ] Initializing speech engine...
[2026-10-18 17:11:05,880.880 INFO    ] 2026-10-18 17:11:05
[2026-10-18 17:11:06,140.140 INFO    ] 2026-10-18 17:11:06
[2026-10-18 17:11:06,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:11:06,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:11:06,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:11:06,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:11:06,684.684 INFO    ] time= 18/10/2026 17:11:06
[2026-10-18 17:11:06,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:11:06,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:11:06,831.831 INFO    ] No existing commands found in stream
[2026-10-18 17:11:11,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:11:11,849.849 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-18 17:11:14,337.337 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:11:14,339.339 INFO    ] Checking for system updates...
[2026-10-18 17:11:14,378.378 INFO    ] 200
[2026-10-18 17:11:14,381.381 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:11:14,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:11:14,441.441 INFO    ] No update needed
[2026-10-18 17:11:14,443.443 INFO    ] Checking for camera pi updates...
[2026-10-18 17:11:14,479.479 INFO    ] 200
[2026-10-18 17:11:14,482.482 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:11:14,527.527 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:11:24,542.542 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:11:24,577.577 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:11:24,587.587 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:11:24,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:11:24,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:11:24,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:11:26,639.639 INFO    ] ================================================
[2026-10-18 17:11:26,656.656 INFO    ] Launching Daemon at Sun Oct 18 17:11:26 IST 2026
[2026-10-18 17:11:26,667.667 INFO    ] ================================================
[2026-10-18 17:11:27,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:11:27
[2026-10-18 17:11:27,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:11:28,068.068 INFO    ] Initializing speech engine...
[2026-10-18 17:11:28,081.081 INFO    ] 2026-10-18 17:11:28
[2026-10-18 17:11:28,347.347 INFO    ] 2026-10-18 17:11:28
[2026-10-18 17:11:28,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:11:28,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:11:28,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:11:28,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:11:28,912.912 INFO    ] time= 18/10/2026 17:11:28
[2026-10-18 17:11:28,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:11:28,939.939 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:11:29,071.071 INFO    ] No existing commands found in stream
[2026-10-18 17:11:34,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:11:34,087.087 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-18 17:11:36,513.513 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:11:36,515.515 INFO    ] Checking for system updates...
[2026-10-18 17:11:36,553.553 INFO    ] 200
[2026-10-18 17:11:36,556.556 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:11:36,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:11:36,611.611 INFO    ] No update needed
[2026-10-18 17:11:36,613.613 INFO    ] Checking for camera pi updates...
[2026-10-18 17:11:36,646.646 INFO    ] 200
[2026-10-18 17:11:36,649.649 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:11:36,693.693 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:11:46,708.708 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:11:46,743.743 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:11:46,753.753 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:11:46,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:11:46,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:11:46,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:11:48,805.805 INFO    ] ================================================
[2026-10-18 17:11:48,821.821 INFO    ] Launching Daemon at Sun Oct 18 17:11:48 IST 2026
[2026-10-18 17:11:48,833.833 INFO    ] ================================================
[2026-10-18 17:11:49,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:11:49
[2026-10-18 17:11:50,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:11:50,358.358 INFO    ] Initializing speech engine...
[2026-10-18 17:11:50,382.382 INFO    ] 2026-10-18 17:11:50
[2026-10-18 17:11:50,639.639 INFO    ] 2026-10-18 17:11:50
[2026-10-18 17:11:50,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:11:50,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:11:50,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:11:51,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:11:51,191.191 INFO    ] time= 18/10/2026 17:11:51
[2026-10-18 17:11:51,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:11:51,226.226 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:11:51,364.364 INFO    ] No existing commands found in stream
[2026-10-18 17:11:56,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:11:56,386.386 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-18 17:11:58,155.155 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:11:58,157.157 INFO    ] Checking for system updates...
[2026-10-18 17:11:58,193.193 INFO    ] 200
[2026-10-18 17:11:58,195.195 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:11:58,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:11:58,250.250 INFO    ] No update needed
[2026-10-18 17:11:58,253.253 INFO    ] Checking for camera pi updates...
[2026-10-18 17:11:58,286.286 INFO    ] 200
[2026-10-18 17:11:58,288.288 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:11:58,329.329 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:12:08,344.344 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:12:08,380.380 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:12:08,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:12:08,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:12:08,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:12:08,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:12:10,441.441 INFO    ] ================================================
[2026-10-18 17:12:10,456.456 INFO    ] Launching Daemon at Sun Oct 18 17:12:10 IST 2026
[2026-10-18 17:12:10,468.468 INFO    ] ================================================
[2026-10-18 17:12:11,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:12:11
[2026-10-18 17:12:11,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:12:11,898.898 INFO    ] Initializing speech engine...
[2026-10-18 17:12:11,907.907 INFO    ] 2026-10-18 17:12:11
[2026-10-18 17:12:12,152.152 INFO    ] 2026-10-18 17:12:12
[2026-10-18 17:12:12,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:12:12,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:12:12,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:12:12,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:12:12,702.702 INFO    ] time= 18/10/2026 17:12:12
[2026-10-18 17:12:12,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:12:12,726.726 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:12:12,857.857 INFO    ] No existing commands found in stream
[2026-10-18 17:12:17,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:12:17,882.882 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-18 17:12:18,382.382 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:12:18,384.384 INFO    ] Checking for system updates...
[2026-10-18 17:12:18,419.419 INFO    ] 200
[2026-10-18 17:12:18,422.422 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:12:18,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:12:18,475.475 INFO    ] No update needed
[2026-10-18 17:12:18,478.478 INFO    ] Checking for camera pi updates...
[2026-10-18 17:12:18,517.517 INFO    ] 200
[2026-10-18 17:12:18,520.520 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:12:18,563.563 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:12:28,578.578 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:12:28,612.612 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:12:28,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:12:28,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:12:28,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:12:28,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:12:30,687.687 INFO    ] ================================================
[2026-10-18 17:12:30,702.702 INFO    ] Launching Daemon at Sun Oct 18 17:12:30 IST 2026
[2026-10-18 17:12:30,713.713 INFO    ] ================================================
[2026-10-18 17:12:31,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:12:31
[2026-10-18 17:12:31,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:12:32,212.212 INFO    ] Initializing speech engine...
[2026-10-18 17:12:32,226.226 INFO    ] 2026-10-18 17:12:32
[2026-10-18 17:12:32,514.514 INFO    ] 2026-10-18 17:12:32
[2026-10-18 17:12:32,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:12:32,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:12:32,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:12:33,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:12:33,078.078 INFO    ] time= 18/10/2026 17:12:33
[2026-10-18 17:12:33,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:12:33,102.102 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:12:33,237.237 INFO    ] No existing commands found in stream
[2026-10-18 17:12:38,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:12:38,279.279 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-18 17:12:40,825.825 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:12:40,828.828 INFO    ] Checking for system updates...
[2026-10-18 17:12:40,867.867 INFO    ] 200
[2026-10-18 17:12:40,869.869 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:12:40,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:12:40,928.928 INFO    ] No update needed
[2026-10-18 17:12:40,930.930 INFO    ] Checking for camera pi updates...
[2026-10-18 17:12:40,966.966 INFO    ] 200
[2026-10-18 17:12:40,969.969 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:12:41,010.010 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:12:51,025.025 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:12:51,060.060 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:12:51,069.069 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:12:51,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:12:51,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:12:51,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:12:53,121.121 INFO    ] ================================================
[2026-10-18 17:12:53,136.136 INFO    ] Launching Daemon at Sun Oct 18 17:12:53 IST 2026
[2026-10-18 17:12:53,149.149 INFO    ] ================================================
[2026-10-18 17:12:53,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:12:53
[2026-10-18 17:12:54,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:12:54,616.616 INFO    ] Initializing speech engine...
[2026-10-18 17:12:54,624.624 INFO    ] 2026-10-18 17:12:54
[2026-10-18 17:12:54,897.897 INFO    ] 2026-10-18 17:12:54
[2026-10-18 17:12:54,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:12:55,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:12:55,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:12:55,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:12:55,430.430 INFO    ] time= 18/10/2026 17:12:55
[2026-10-18 17:12:55,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:12:55,476.476 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:12:55,618.618 INFO    ] No existing commands found in stream
[2026-10-18 17:13:00,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:13:00,656.656 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-18 17:13:03,398.398 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:13:03,401.401 INFO    ] Checking for system updates...
[2026-10-18 17:13:03,444.444 INFO    ] 200
[2026-10-18 17:13:03,448.448 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:13:03,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:13:03,510.510 INFO    ] No update needed
[2026-10-18 17:13:03,514.514 INFO    ] Checking for camera pi updates...
[2026-10-18 17:13:03,549.549 INFO    ] 200
[2026-10-18 17:13:03,551.551 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:13:03,600.600 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:13:13,617.617 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:13:13,652.652 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:13:13,662.662 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:13:13,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:13:13,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:13:13,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:13:15,718.718 INFO    ] ================================================
[2026-10-18 17:13:15,733.733 INFO    ] Launching Daemon at Sun Oct 18 17:13:15 IST 2026
[2026-10-18 17:13:15,744.744 INFO    ] ================================================
[2026-10-18 17:13:16,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:13:16
[2026-10-18 17:13:16,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:13:17,157.157 INFO    ] Initializing speech engine...
[2026-10-18 17:13:17,166.166 INFO    ] 2026-10-18 17:13:17
[2026-10-18 17:13:17,460.460 INFO    ] 2026-10-18 17:13:17
[2026-10-18 17:13:17,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:13:17,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:13:17,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:13:17,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:13:17,911.911 INFO    ] time= 18/10/2026 17:13:17
[2026-10-18 17:13:17,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:13:17,969.969 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:13:18,083.083 INFO    ] No existing commands found in stream
[2026-10-18 17:13:23,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:13:23,102.102 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-18 17:13:24,550.550 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 17:13:24,553.553 INFO    ] Checking for system updates...
[2026-10-18 17:13:24,590.590 INFO    ] 200
[2026-10-18 17:13:24,592.592 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:13:24,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:13:24,648.648 INFO    ] No update needed
[2026-10-18 17:13:24,651.651 INFO    ] Checking for camera pi updates...
[2026-10-18 17:13:24,685.685 INFO    ] 200
[2026-10-18 17:13:24,688.688 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:13:24,730.730 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:13:34,745.745 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:13:34,785.785 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:13:34,796.796 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:13:34,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:13:34,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:13:34,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:13:36,852.852 INFO    ] ================================================
[2026-10-18 17:13:36,868.868 INFO    ] Launching Daemon at Sun Oct 18 17:13:36 IST 2026
[2026-10-18 17:13:36,880.880 INFO    ] ================================================
[2026-10-18 17:13:37,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:13:37
[2026-10-18 17:13:38,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:13:38,311.311 INFO    ] Initializing speech engine...
[2026-10-18 17:13:38,316.316 INFO    ] 2026-10-18 17:13:38
[2026-10-18 17:13:38,575.575 INFO    ] 2026-10-18 17:13:38
[2026-10-18 17:13:38,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:13:38,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:13:38,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:13:38,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:13:39,033.033 INFO    ] time= 18/10/2026 17:13:38
[2026-10-18 17:13:39,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:13:39,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:13:39,272.272 INFO    ] No existing commands found in stream
[2026-10-18 17:13:44,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:13:44,287.287 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-18 17:13:47,328.328 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 17:13:47,331.331 INFO    ] Checking for system updates...
[2026-10-18 17:13:47,370.370 INFO    ] 200
[2026-10-18 17:13:47,372.372 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:13:47,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:13:47,433.433 INFO    ] No update needed
[2026-10-18 17:13:47,435.435 INFO    ] Checking for camera pi updates...
[2026-10-18 17:13:47,472.472 INFO    ] 200
[2026-10-18 17:13:47,474.474 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:13:47,519.519 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:13:57,534.534 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:13:57,569.569 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:13:57,578.578 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:13:57,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:13:57,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:13:57,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:13:59,630.630 INFO    ] ================================================
[2026-10-18 17:13:59,646.646 INFO    ] Launching Daemon at Sun Oct 18 17:13:59 IST 2026
[2026-10-18 17:13:59,657.657 INFO    ] ================================================
[2026-10-18 17:14:00,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:14:00
[2026-10-18 17:14:00,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:14:01,272.272 INFO    ] Initializing speech engine...
[2026-10-18 17:14:01,285.285 INFO    ] 2026-10-18 17:14:01
[2026-10-18 17:14:01,595.595 INFO    ] 2026-10-18 17:14:01
[2026-10-18 17:14:01,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:14:01,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:14:01,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:14:02,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:14:02,172.172 INFO    ] time= 18/10/2026 17:14:02
[2026-10-18 17:14:02,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:14:02,194.194 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:14:02,283.283 INFO    ] No existing commands found in stream
[2026-10-18 17:14:07,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:14:07,295.295 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-18 17:14:08,718.718 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:14:08,720.720 INFO    ] Checking for system updates...
[2026-10-18 17:14:08,756.756 INFO    ] 200
[2026-10-18 17:14:08,758.758 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:14:08,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:14:08,812.812 INFO    ] No update needed
[2026-10-18 17:14:08,815.815 INFO    ] Checking for camera pi updates...
[2026-10-18 17:14:08,848.848 INFO    ] 200
[2026-10-18 17:14:08,850.850 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:14:08,890.890 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:14:18,905.905 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:14:18,940.940 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:14:18,949.949 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:14:18,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:14:18,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:14:18,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:14:21,001.001 INFO    ] ================================================
[2026-10-18 17:14:21,016.016 INFO    ] Launching Daemon at Sun Oct 18 17:14:21 IST 2026
[2026-10-18 17:14:21,027.027 INFO    ] ================================================
[2026-10-18 17:14:21,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:14:21
[2026-10-18 17:14:22,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:14:22,587.587 INFO    ] Initializing speech engine...
[2026-10-18 17:14:22,598.598 INFO    ] 2026-10-18 17:14:22
[2026-10-18 17:14:22,864.864 INFO    ] 2026-10-18 17:14:22
[2026-10-18 17:14:22,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:14:23,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:14:23,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:14:23,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:14:23,347.347 INFO    ] time= 18/10/2026 17:14:23
[2026-10-18 17:14:23,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:14:23,455.455 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:14:23,593.593 INFO    ] No existing commands found in stream
[2026-10-18 17:14:28,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:14:28,621.621 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-18 17:14:30,576.576 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:14:30,579.579 INFO    ] Checking for system updates...
[2026-10-18 17:14:30,614.614 INFO    ] 200
[2026-10-18 17:14:30,616.616 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:14:30,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:14:30,671.671 INFO    ] No update needed
[2026-10-18 17:14:30,673.673 INFO    ] Checking for camera pi updates...
[2026-10-18 17:14:30,707.707 INFO    ] 200
[2026-10-18 17:14:30,710.710 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:14:30,749.749 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:14:40,764.764 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:14:40,799.799 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:14:40,809.809 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:14:40,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:14:40,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:14:40,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:14:42,860.860 INFO    ] ================================================
[2026-10-18 17:14:42,875.875 INFO    ] Launching Daemon at Sun Oct 18 17:14:42 IST 2026
[2026-10-18 17:14:42,886.886 INFO    ] ================================================
[2026-10-18 17:14:43,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:14:43
[2026-10-18 17:14:44,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:14:44,443.443 INFO    ] Initializing speech engine...
[2026-10-18 17:14:44,451.451 INFO    ] 2026-10-18 17:14:44
[2026-10-18 17:14:44,734.734 INFO    ] 2026-10-18 17:14:44
[2026-10-18 17:14:44,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:14:45,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:14:45,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:14:45,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:14:45,207.207 INFO    ] time= 18/10/2026 17:14:45
[2026-10-18 17:14:45,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:14:45,300.300 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:14:45,480.480 INFO    ] No existing commands found in stream
[2026-10-18 17:14:50,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:14:50,503.503 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-18 17:14:51,512.512 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 17:14:51,515.515 INFO    ] Checking for system updates...
[2026-10-18 17:14:51,551.551 INFO    ] 200
[2026-10-18 17:14:51,553.553 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:14:51,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:14:51,612.612 INFO    ] No update needed
[2026-10-18 17:14:51,614.614 INFO    ] Checking for camera pi updates...
[2026-10-18 17:14:51,650.650 INFO    ] 200
[2026-10-18 17:14:51,652.652 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:14:51,695.695 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:15:01,711.711 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:15:01,746.746 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:15:01,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:15:01,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:15:01,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:15:01,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:15:03,818.818 INFO    ] ================================================
[2026-10-18 17:15:03,836.836 INFO    ] Launching Daemon at Sun Oct 18 17:15:03 IST 2026
[2026-10-18 17:15:03,847.847 INFO    ] ================================================
[2026-10-18 17:15:04,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:15:04
[2026-10-18 17:15:05,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:15:05,455.455 INFO    ] Initializing speech engine...
[2026-10-18 17:15:05,463.463 INFO    ] 2026-10-18 17:15:05
[2026-10-18 17:15:05,745.745 INFO    ] 2026-10-18 17:15:05
[2026-10-18 17:15:05,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:15:06,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:15:06,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:15:06,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:15:06,281.281 INFO    ] time= 18/10/2026 17:15:06
[2026-10-18 17:15:06,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:15:06,312.312 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:15:06,504.504 INFO    ] No existing commands found in stream
[2026-10-18 17:15:11,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:15:11,539.539 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-18 17:15:15,937.937 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:15:15,940.940 INFO    ] Checking for system updates...
[2026-10-18 17:15:15,976.976 INFO    ] 200
[2026-10-18 17:15:15,979.979 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:15:16,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:15:16,041.041 INFO    ] No update needed
[2026-10-18 17:15:16,044.044 INFO    ] Checking for camera pi updates...
[2026-10-18 17:15:16,078.078 INFO    ] 200
[2026-10-18 17:15:16,081.081 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:15:16,121.121 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:15:26,138.138 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:15:26,177.177 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:15:26,187.187 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:15:26,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:15:26,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:15:26,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:15:28,243.243 INFO    ] ================================================
[2026-10-18 17:15:28,259.259 INFO    ] Launching Daemon at Sun Oct 18 17:15:28 IST 2026
[2026-10-18 17:15:28,270.270 INFO    ] ================================================
[2026-10-18 17:15:28,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:15:28
[2026-10-18 17:15:29,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:15:29,701.701 INFO    ] Initializing speech engine...
[2026-10-18 17:15:29,710.710 INFO    ] 2026-10-18 17:15:29
[2026-10-18 17:15:29,968.968 INFO    ] 2026-10-18 17:15:29
[2026-10-18 17:15:30,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:15:30,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:15:30,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:15:30,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:15:30,527.527 INFO    ] time= 18/10/2026 17:15:30
[2026-10-18 17:15:30,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:15:30,552.552 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:15:30,690.690 INFO    ] No existing commands found in stream
[2026-10-18 17:15:35,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:15:35,724.724 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-18 17:15:38,768.768 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:15:38,771.771 INFO    ] Checking for system updates...
[2026-10-18 17:15:38,809.809 INFO    ] 200
[2026-10-18 17:15:38,812.812 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:15:38,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:15:38,872.872 INFO    ] No update needed
[2026-10-18 17:15:38,874.874 INFO    ] Checking for camera pi updates...
[2026-10-18 17:15:38,910.910 INFO    ] 200
[2026-10-18 17:15:38,913.913 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:15:38,956.956 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:15:48,971.971 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:15:49,006.006 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:15:49,016.016 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:15:49,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:15:49,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:15:49,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:15:51,067.067 INFO    ] ================================================
[2026-10-18 17:15:51,083.083 INFO    ] Launching Daemon at Sun Oct 18 17:15:51 IST 2026
[2026-10-18 17:15:51,094.094 INFO    ] ================================================
[2026-10-18 17:15:51,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:15:51
[2026-10-18 17:15:52,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:15:52,535.535 INFO    ] Initializing speech engine...
[2026-10-18 17:15:52,544.544 INFO    ] 2026-10-18 17:15:52
[2026-10-18 17:15:52,795.795 INFO    ] 2026-10-18 17:15:52
[2026-10-18 17:15:52,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:15:53,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:15:53,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:15:53,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:15:53,312.312 INFO    ] time= 18/10/2026 17:15:53
[2026-10-18 17:15:53,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:15:53,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:15:53,522.522 INFO    ] No existing commands found in stream
[2026-10-18 17:15:58,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:15:58,544.544 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-18 17:15:59,898.898 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:15:59,900.900 INFO    ] Checking for system updates...
[2026-10-18 17:15:59,939.939 INFO    ] 200
[2026-10-18 17:15:59,941.941 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:15:59,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:15:59,995.995 INFO    ] No update needed
[2026-10-18 17:15:59,998.998 INFO    ] Checking for camera pi updates...
[2026-10-18 17:16:00,038.038 INFO    ] 200
[2026-10-18 17:16:00,041.041 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:16:00,081.081 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:16:10,094.094 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:16:10,129.129 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:16:10,139.139 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:16:10,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:16:10,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:16:10,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:16:12,194.194 INFO    ] ================================================
[2026-10-18 17:16:12,210.210 INFO    ] Launching Daemon at Sun Oct 18 17:16:12 IST 2026
[2026-10-18 17:16:12,221.221 INFO    ] ================================================
[2026-10-18 17:16:12,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:16:12
[2026-10-18 17:16:13,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:16:13,630.630 INFO    ] Initializing speech engine...
[2026-10-18 17:16:13,636.636 INFO    ] 2026-10-18 17:16:13
[2026-10-18 17:16:13,932.932 INFO    ] 2026-10-18 17:16:13
[2026-10-18 17:16:13,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:16:14,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:16:14,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:16:14,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:16:14,355.355 INFO    ] time= 18/10/2026 17:16:14
[2026-10-18 17:16:14,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:16:14,368.368 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:16:14,495.495 INFO    ] No existing commands found in stream
[2026-10-18 17:16:19,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:16:19,523.523 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-18 17:16:21,683.683 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:16:21,686.686 INFO    ] Checking for system updates...
[2026-10-18 17:16:21,723.723 INFO    ] 200
[2026-10-18 17:16:21,725.725 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:16:21,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:16:21,782.782 INFO    ] No update needed
[2026-10-18 17:16:21,784.784 INFO    ] Checking for camera pi updates...
[2026-10-18 17:16:21,818.818 INFO    ] 200
[2026-10-18 17:16:21,820.820 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:16:21,860.860 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:16:31,876.876 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:16:31,913.913 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:16:31,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:16:31,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:16:31,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:16:31,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:16:33,978.978 INFO    ] ================================================
[2026-10-18 17:16:33,994.994 INFO    ] Launching Daemon at Sun Oct 18 17:16:33 IST 2026
[2026-10-18 17:16:34,005.005 INFO    ] ================================================
[2026-10-18 17:16:34,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:16:34
[2026-10-18 17:16:35,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:16:35,517.517 INFO    ] Initializing speech engine...
[2026-10-18 17:16:35,527.527 INFO    ] 2026-10-18 17:16:35
[2026-10-18 17:16:35,809.809 INFO    ] 2026-10-18 17:16:35
[2026-10-18 17:16:35,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:16:36,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:16:36,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:16:36,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:16:36,284.284 INFO    ] time= 18/10/2026 17:16:36
[2026-10-18 17:16:36,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:16:36,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:16:36,536.536 INFO    ] No existing commands found in stream
[2026-10-18 17:16:41,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:16:41,554.554 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-18 17:16:42,312.312 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:16:42,315.315 INFO    ] Checking for system updates...
[2026-10-18 17:16:42,354.354 INFO    ] 200
[2026-10-18 17:16:42,357.357 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:16:42,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:16:42,418.418 INFO    ] No update needed
[2026-10-18 17:16:42,420.420 INFO    ] Checking for camera pi updates...
[2026-10-18 17:16:42,457.457 INFO    ] 200
[2026-10-18 17:16:42,459.459 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:16:42,503.503 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:16:52,518.518 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:16:52,553.553 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:16:52,562.562 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:16:52,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:16:52,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:16:52,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:16:54,616.616 INFO    ] ================================================
[2026-10-18 17:16:54,631.631 INFO    ] Launching Daemon at Sun Oct 18 17:16:54 IST 2026
[2026-10-18 17:16:54,642.642 INFO    ] ================================================
[2026-10-18 17:16:55,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:16:55
[2026-10-18 17:16:55,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:16:56,073.073 INFO    ] Initializing speech engine...
[2026-10-18 17:16:56,083.083 INFO    ] 2026-10-18 17:16:56
[2026-10-18 17:16:56,333.333 INFO    ] 2026-10-18 17:16:56
[2026-10-18 17:16:56,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:16:56,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:16:56,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:16:56,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:16:56,828.828 INFO    ] time= 18/10/2026 17:16:56
[2026-10-18 17:16:56,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:16:56,908.908 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:16:57,059.059 INFO    ] No existing commands found in stream
[2026-10-18 17:17:02,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:17:02,077.077 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-18 17:17:04,518.518 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:17:04,520.520 INFO    ] Checking for system updates...
[2026-10-18 17:17:04,559.559 INFO    ] 200
[2026-10-18 17:17:04,562.562 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:17:04,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:17:04,618.618 INFO    ] No update needed
[2026-10-18 17:17:04,621.621 INFO    ] Checking for camera pi updates...
[2026-10-18 17:17:04,654.654 INFO    ] 200
[2026-10-18 17:17:04,657.657 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:17:04,697.697 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:17:14,712.712 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:17:14,747.747 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:17:14,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:17:14,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:17:14,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:17:14,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:17:16,810.810 INFO    ] ================================================
[2026-10-18 17:17:16,824.824 INFO    ] Launching Daemon at Sun Oct 18 17:17:16 IST 2026
[2026-10-18 17:17:16,835.835 INFO    ] ================================================
[2026-10-18 17:17:17,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:17:17
[2026-10-18 17:17:18,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:17:18,268.268 INFO    ] Initializing speech engine...
[2026-10-18 17:17:18,287.287 INFO    ] 2026-10-18 17:17:18
[2026-10-18 17:17:18,569.569 INFO    ] 2026-10-18 17:17:18
[2026-10-18 17:17:18,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:17:18,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:17:18,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:17:19,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:17:19,129.129 INFO    ] time= 18/10/2026 17:17:19
[2026-10-18 17:17:19,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:17:19,169.169 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:17:19,292.292 INFO    ] No existing commands found in stream
[2026-10-18 17:17:24,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:17:24,320.320 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-10-18 17:17:28,819.819 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:17:28,822.822 INFO    ] Checking for system updates...
[2026-10-18 17:17:28,857.857 INFO    ] 200
[2026-10-18 17:17:28,859.859 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:17:28,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:17:28,915.915 INFO    ] No update needed
[2026-10-18 17:17:28,918.918 INFO    ] Checking for camera pi updates...
[2026-10-18 17:17:28,951.951 INFO    ] 200
[2026-10-18 17:17:28,954.954 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:17:28,997.997 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:17:39,011.011 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:17:39,047.047 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:17:39,057.057 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:17:39,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:17:39,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:17:39,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:17:41,109.109 INFO    ] ================================================
[2026-10-18 17:17:41,124.124 INFO    ] Launching Daemon at Sun Oct 18 17:17:41 IST 2026
[2026-10-18 17:17:41,135.135 INFO    ] ================================================
[2026-10-18 17:17:41,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:17:41
[2026-10-18 17:17:42,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:17:42,714.714 INFO    ] Initializing speech engine...
[2026-10-18 17:17:42,725.725 INFO    ] 2026-10-18 17:17:42
[2026-10-18 17:17:43,007.007 INFO    ] 2026-10-18 17:17:42
[2026-10-18 17:17:43,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:17:43,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:17:43,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:17:43,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:17:43,557.557 INFO    ] time= 18/10/2026 17:17:43
[2026-10-18 17:17:43,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:17:43,595.595 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:17:43,787.787 INFO    ] No existing commands found in stream
[2026-10-18 17:17:48,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:17:48,821.821 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-18 17:17:51,394.394 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:17:51,397.397 INFO    ] Checking for system updates...
[2026-10-18 17:17:51,438.438 INFO    ] 200
[2026-10-18 17:17:51,441.441 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:17:51,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:17:51,504.504 INFO    ] No update needed
[2026-10-18 17:17:51,507.507 INFO    ] Checking for camera pi updates...
[2026-10-18 17:17:51,545.545 INFO    ] 200
[2026-10-18 17:17:51,548.548 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:17:51,594.594 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:18:01,610.610 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:18:01,662.662 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:18:01,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:18:01,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:18:01,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:18:01,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:18:03,738.738 INFO    ] ================================================
[2026-10-18 17:18:03,753.753 INFO    ] Launching Daemon at Sun Oct 18 17:18:03 IST 2026
[2026-10-18 17:18:03,764.764 INFO    ] ================================================
[2026-10-18 17:18:04,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:18:04
[2026-10-18 17:18:04,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:18:05,160.160 INFO    ] Initializing speech engine...
[2026-10-18 17:18:05,175.175 INFO    ] 2026-10-18 17:18:05
[2026-10-18 17:18:05,456.456 INFO    ] 2026-10-18 17:18:05
[2026-10-18 17:18:05,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:18:05,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:18:05,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:18:05,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:18:06,023.023 INFO    ] time= 18/10/2026 17:18:05
[2026-10-18 17:18:06,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:18:06,055.055 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:18:06,191.191 INFO    ] No existing commands found in stream
[2026-10-18 17:18:11,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:18:11,226.226 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-18 17:18:15,183.183 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:18:15,199.199 INFO    ] Checking for system updates...
[2026-10-18 17:18:15,242.242 INFO    ] 200
[2026-10-18 17:18:15,246.246 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:18:15,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:18:15,302.302 INFO    ] No update needed
[2026-10-18 17:18:15,305.305 INFO    ] Checking for camera pi updates...
[2026-10-18 17:18:15,342.342 INFO    ] 200
[2026-10-18 17:18:15,345.345 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:18:15,388.388 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:18:25,405.405 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:18:25,444.444 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:18:25,455.455 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:18:25,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:18:25,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:18:25,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:18:27,510.510 INFO    ] ================================================
[2026-10-18 17:18:27,525.525 INFO    ] Launching Daemon at Sun Oct 18 17:18:27 IST 2026
[2026-10-18 17:18:27,536.536 INFO    ] ================================================
[2026-10-18 17:18:28,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:18:28
[2026-10-18 17:18:28,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:18:28,984.984 INFO    ] Initializing speech engine...
[2026-10-18 17:18:28,990.990 INFO    ] 2026-10-18 17:18:28
[2026-10-18 17:18:29,239.239 INFO    ] 2026-10-18 17:18:29
[2026-10-18 17:18:29,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:18:29,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:18:29,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:18:29,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:18:29,805.805 INFO    ] time= 18/10/2026 17:18:29
[2026-10-18 17:18:29,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:18:29,828.828 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:18:29,973.973 INFO    ] No existing commands found in stream
[2026-10-18 17:18:35,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:18:35,013.013 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-18 17:18:35,514.514 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:18:35,517.517 INFO    ] Checking for system updates...
[2026-10-18 17:18:35,552.552 INFO    ] 200
[2026-10-18 17:18:35,554.554 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:18:35,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:18:35,609.609 INFO    ] No update needed
[2026-10-18 17:18:35,611.611 INFO    ] Checking for camera pi updates...
[2026-10-18 17:18:35,645.645 INFO    ] 200
[2026-10-18 17:18:35,647.647 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:18:35,687.687 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:18:45,703.703 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:18:45,738.738 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:18:45,748.748 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:18:45,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:18:45,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:18:45,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:18:47,800.800 INFO    ] ================================================
[2026-10-18 17:18:47,816.816 INFO    ] Launching Daemon at Sun Oct 18 17:18:47 IST 2026
[2026-10-18 17:18:47,826.826 INFO    ] ================================================
[2026-10-18 17:18:48,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:18:48
[2026-10-18 17:18:48,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:18:49,258.258 INFO    ] Initializing speech engine...
[2026-10-18 17:18:49,266.266 INFO    ] 2026-10-18 17:18:49
[2026-10-18 17:18:49,517.517 INFO    ] 2026-10-18 17:18:49
[2026-10-18 17:18:49,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:18:49,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:18:49,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:18:49,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:18:50,020.020 INFO    ] time= 18/10/2026 17:18:49
[2026-10-18 17:18:50,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:18:50,136.136 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:18:50,271.271 INFO    ] No existing commands found in stream
[2026-10-18 17:18:55,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:18:55,298.298 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-18 17:18:59,145.145 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 17:18:59,148.148 INFO    ] Checking for system updates...
[2026-10-18 17:18:59,185.185 INFO    ] 200
[2026-10-18 17:18:59,188.188 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:18:59,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:18:59,243.243 INFO    ] No update needed
[2026-10-18 17:18:59,246.246 INFO    ] Checking for camera pi updates...
[2026-10-18 17:18:59,283.283 INFO    ] 200
[2026-10-18 17:18:59,286.286 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:18:59,334.334 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:19:09,349.349 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:19:09,388.388 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:19:09,399.399 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:19:09,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:19:09,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:19:09,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:19:11,452.452 INFO    ] ================================================
[2026-10-18 17:19:11,467.467 INFO    ] Launching Daemon at Sun Oct 18 17:19:11 IST 2026
[2026-10-18 17:19:11,478.478 INFO    ] ================================================
[2026-10-18 17:19:12,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:19:12
[2026-10-18 17:19:12,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:19:12,911.911 INFO    ] Initializing speech engine...
[2026-10-18 17:19:12,920.920 INFO    ] 2026-10-18 17:19:12
[2026-10-18 17:19:13,184.184 INFO    ] 2026-10-18 17:19:13
[2026-10-18 17:19:13,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:19:13,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:19:13,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:19:13,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:19:13,730.730 INFO    ] time= 18/10/2026 17:19:13
[2026-10-18 17:19:13,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:19:13,756.756 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:19:13,902.902 INFO    ] No existing commands found in stream
[2026-10-18 17:19:18,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:19:18,932.932 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-18 17:19:22,096.096 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:19:22,099.099 INFO    ] Checking for system updates...
[2026-10-18 17:19:22,134.134 INFO    ] 200
[2026-10-18 17:19:22,137.137 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:19:22,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:19:22,191.191 INFO    ] No update needed
[2026-10-18 17:19:22,193.193 INFO    ] Checking for camera pi updates...
[2026-10-18 17:19:22,227.227 INFO    ] 200
[2026-10-18 17:19:22,230.230 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:19:22,269.269 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:19:32,285.285 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:19:32,321.321 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:19:32,332.332 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:19:32,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:19:32,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:19:32,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:19:34,387.387 INFO    ] ================================================
[2026-10-18 17:19:34,402.402 INFO    ] Launching Daemon at Sun Oct 18 17:19:34 IST 2026
[2026-10-18 17:19:34,412.412 INFO    ] ================================================
[2026-10-18 17:19:34,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:19:34
[2026-10-18 17:19:35,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:19:35,812.812 INFO    ] Initializing speech engine...
[2026-10-18 17:19:35,827.827 INFO    ] 2026-10-18 17:19:35
[2026-10-18 17:19:36,093.093 INFO    ] 2026-10-18 17:19:36
[2026-10-18 17:19:36,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:19:36,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:19:36,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:19:36,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:19:36,654.654 INFO    ] time= 18/10/2026 17:19:36
[2026-10-18 17:19:36,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:19:36,684.684 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:19:36,821.821 INFO    ] No existing commands found in stream
[2026-10-18 17:19:41,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:19:41,838.838 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-18 17:19:44,372.372 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:19:44,374.374 INFO    ] Checking for system updates...
[2026-10-18 17:19:44,410.410 INFO    ] 200
[2026-10-18 17:19:44,412.412 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:19:44,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:19:44,467.467 INFO    ] No update needed
[2026-10-18 17:19:44,469.469 INFO    ] Checking for camera pi updates...
[2026-10-18 17:19:44,502.502 INFO    ] 200
[2026-10-18 17:19:44,504.504 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:19:44,544.544 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:19:54,560.560 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:19:54,594.594 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:19:54,604.604 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:19:54,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:19:54,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:19:54,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:19:56,657.657 INFO    ] ================================================
[2026-10-18 17:19:56,672.672 INFO    ] Launching Daemon at Sun Oct 18 17:19:56 IST 2026
[2026-10-18 17:19:56,682.682 INFO    ] ================================================
[2026-10-18 17:19:57,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:19:57
[2026-10-18 17:19:57,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:19:58,141.141 INFO    ] Initializing speech engine...
[2026-10-18 17:19:58,150.150 INFO    ] 2026-10-18 17:19:58
[2026-10-18 17:19:58,423.423 INFO    ] 2026-10-18 17:19:58
[2026-10-18 17:19:58,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:19:58,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:19:58,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:19:58,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:19:58,956.956 INFO    ] time= 18/10/2026 17:19:58
[2026-10-18 17:19:58,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:19:58,982.982 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:19:59,110.110 INFO    ] No existing commands found in stream
[2026-10-18 17:20:04,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:20:04,124.124 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-18 17:20:08,888.888 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:20:08,891.891 INFO    ] Checking for system updates...
[2026-10-18 17:20:08,927.927 INFO    ] 200
[2026-10-18 17:20:08,929.929 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:20:08,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:20:08,988.988 INFO    ] No update needed
[2026-10-18 17:20:08,991.991 INFO    ] Checking for camera pi updates...
[2026-10-18 17:20:09,024.024 INFO    ] 200
[2026-10-18 17:20:09,026.026 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:20:09,066.066 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:20:19,081.081 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:20:19,116.116 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:20:19,126.126 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:20:19,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:20:19,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:20:19,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:20:21,180.180 INFO    ] ================================================
[2026-10-18 17:20:21,195.195 INFO    ] Launching Daemon at Sun Oct 18 17:20:21 IST 2026
[2026-10-18 17:20:21,206.206 INFO    ] ================================================
[2026-10-18 17:20:21,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:20:21
[2026-10-18 17:20:22,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:20:22,623.623 INFO    ] Initializing speech engine...
[2026-10-18 17:20:22,632.632 INFO    ] 2026-10-18 17:20:22
[2026-10-18 17:20:22,887.887 INFO    ] 2026-10-18 17:20:22
[2026-10-18 17:20:22,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:20:23,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:20:23,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:20:23,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:20:23,434.434 INFO    ] time= 18/10/2026 17:20:23
[2026-10-18 17:20:23,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:20:23,459.459 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:20:23,590.590 INFO    ] No existing commands found in stream
[2026-10-18 17:20:28,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:20:28,611.611 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-18 17:20:30,153.153 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:20:30,156.156 INFO    ] Checking for system updates...
[2026-10-18 17:20:30,192.192 INFO    ] 200
[2026-10-18 17:20:30,194.194 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:20:30,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:20:30,253.253 INFO    ] No update needed
[2026-10-18 17:20:30,256.256 INFO    ] Checking for camera pi updates...
[2026-10-18 17:20:30,291.291 INFO    ] 200
[2026-10-18 17:20:30,293.293 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:20:30,334.334 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:20:40,348.348 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:20:40,387.387 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:20:40,398.398 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:20:40,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:20:40,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:20:40,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:20:42,454.454 INFO    ] ================================================
[2026-10-18 17:20:42,468.468 INFO    ] Launching Daemon at Sun Oct 18 17:20:42 IST 2026
[2026-10-18 17:20:42,479.479 INFO    ] ================================================
[2026-10-18 17:20:43,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:20:43
[2026-10-18 17:20:43,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:20:43,939.939 INFO    ] Initializing speech engine...
[2026-10-18 17:20:43,958.958 INFO    ] 2026-10-18 17:20:43
[2026-10-18 17:20:44,222.222 INFO    ] 2026-10-18 17:20:44
[2026-10-18 17:20:44,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:20:44,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:20:44,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:20:44,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:20:44,723.723 INFO    ] time= 18/10/2026 17:20:44
[2026-10-18 17:20:44,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:20:44,842.842 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:20:44,991.991 INFO    ] No existing commands found in stream
[2026-10-18 17:20:50,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:20:50,025.025 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-18 17:20:54,216.216 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:20:54,219.219 INFO    ] Checking for system updates...
[2026-10-18 17:20:54,257.257 INFO    ] 200
[2026-10-18 17:20:54,259.259 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:20:54,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:20:54,313.313 INFO    ] No update needed
[2026-10-18 17:20:54,316.316 INFO    ] Checking for camera pi updates...
[2026-10-18 17:20:54,352.352 INFO    ] 200
[2026-10-18 17:20:54,354.354 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:20:54,394.394 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:21:04,405.405 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:21:04,440.440 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:21:04,450.450 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:21:04,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:21:04,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:21:04,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:21:06,502.502 INFO    ] ================================================
[2026-10-18 17:21:06,517.517 INFO    ] Launching Daemon at Sun Oct 18 17:21:06 IST 2026
[2026-10-18 17:21:06,528.528 INFO    ] ================================================
[2026-10-18 17:21:07,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:21:07
[2026-10-18 17:21:07,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:21:07,956.956 INFO    ] Initializing speech engine...
[2026-10-18 17:21:07,968.968 INFO    ] 2026-10-18 17:21:07
[2026-10-18 17:21:08,228.228 INFO    ] 2026-10-18 17:21:08
[2026-10-18 17:21:08,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:21:08,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:21:08,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:21:08,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:21:08,759.759 INFO    ] time= 18/10/2026 17:21:08
[2026-10-18 17:21:08,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:21:08,841.841 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:21:08,996.996 INFO    ] No existing commands found in stream
[2026-10-18 17:21:14,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:21:14,019.019 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-18 17:21:15,513.513 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:21:15,516.516 INFO    ] Checking for system updates...
[2026-10-18 17:21:15,551.551 INFO    ] 200
[2026-10-18 17:21:15,554.554 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:21:15,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:21:15,610.610 INFO    ] No update needed
[2026-10-18 17:21:15,613.613 INFO    ] Checking for camera pi updates...
[2026-10-18 17:21:15,650.650 INFO    ] 200
[2026-10-18 17:21:15,653.653 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:21:15,695.695 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:21:25,710.710 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:21:25,746.746 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:21:25,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:21:25,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:21:25,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:21:25,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:21:27,808.808 INFO    ] ================================================
[2026-10-18 17:21:27,823.823 INFO    ] Launching Daemon at Sun Oct 18 17:21:27 IST 2026
[2026-10-18 17:21:27,833.833 INFO    ] ================================================
[2026-10-18 17:21:28,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:21:28
[2026-10-18 17:21:29,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:21:29,390.390 INFO    ] Initializing speech engine...
[2026-10-18 17:21:29,398.398 INFO    ] 2026-10-18 17:21:29
[2026-10-18 17:21:29,665.665 INFO    ] 2026-10-18 17:21:29
[2026-10-18 17:21:29,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:21:29,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:21:29,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:21:30,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:21:30,214.214 INFO    ] time= 18/10/2026 17:21:30
[2026-10-18 17:21:30,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:21:30,239.239 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:21:30,372.372 INFO    ] No existing commands found in stream
[2026-10-18 17:21:35,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:21:35,394.394 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-18 17:21:37,095.095 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:21:37,098.098 INFO    ] Checking for system updates...
[2026-10-18 17:21:37,142.142 INFO    ] 200
[2026-10-18 17:21:37,145.145 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:21:37,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:21:37,206.206 INFO    ] No update needed
[2026-10-18 17:21:37,209.209 INFO    ] Checking for camera pi updates...
[2026-10-18 17:21:37,249.249 INFO    ] 200
[2026-10-18 17:21:37,252.252 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:21:37,303.303 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:21:47,318.318 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:21:47,357.357 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:21:47,368.368 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:21:47,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:21:47,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:21:47,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:21:49,424.424 INFO    ] ================================================
[2026-10-18 17:21:49,439.439 INFO    ] Launching Daemon at Sun Oct 18 17:21:49 IST 2026
[2026-10-18 17:21:49,450.450 INFO    ] ================================================
[2026-10-18 17:21:50,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:21:50
[2026-10-18 17:21:50,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:21:50,856.856 INFO    ] Initializing speech engine...
[2026-10-18 17:21:50,863.863 INFO    ] 2026-10-18 17:21:50
[2026-10-18 17:21:51,154.154 INFO    ] 2026-10-18 17:21:51
[2026-10-18 17:21:51,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:21:51,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:21:51,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:21:51,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:21:51,698.698 INFO    ] time= 18/10/2026 17:21:51
[2026-10-18 17:21:51,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:21:51,779.779 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:21:51,902.902 INFO    ] No existing commands found in stream
[2026-10-18 17:21:56,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:21:56,921.921 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-18 17:22:00,002.002 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:22:00,005.005 INFO    ] Checking for system updates...
[2026-10-18 17:22:00,041.041 INFO    ] 200
[2026-10-18 17:22:00,044.044 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:22:00,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:22:00,098.098 INFO    ] No update needed
[2026-10-18 17:22:00,101.101 INFO    ] Checking for camera pi updates...
[2026-10-18 17:22:00,137.137 INFO    ] 200
[2026-10-18 17:22:00,139.139 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:22:00,180.180 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:22:10,195.195 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:22:10,230.230 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:22:10,239.239 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:22:10,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:22:10,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:22:10,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:22:12,290.290 INFO    ] ================================================
[2026-10-18 17:22:12,306.306 INFO    ] Launching Daemon at Sun Oct 18 17:22:12 IST 2026
[2026-10-18 17:22:12,316.316 INFO    ] ================================================
[2026-10-18 17:22:12,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:22:12
[2026-10-18 17:22:13,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:22:13,743.743 INFO    ] Initializing speech engine...
[2026-10-18 17:22:13,759.759 INFO    ] 2026-10-18 17:22:13
[2026-10-18 17:22:14,038.038 INFO    ] 2026-10-18 17:22:14
[2026-10-18 17:22:14,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:22:14,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:22:14,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:22:14,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:22:14,558.558 INFO    ] time= 18/10/2026 17:22:14
[2026-10-18 17:22:14,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:22:14,654.654 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:22:14,812.812 INFO    ] No existing commands found in stream
[2026-10-18 17:22:19,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:22:19,840.840 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-18 17:22:20,753.753 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:22:20,756.756 INFO    ] Checking for system updates...
[2026-10-18 17:22:20,791.791 INFO    ] 200
[2026-10-18 17:22:20,793.793 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:22:20,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:22:20,849.849 INFO    ] No update needed
[2026-10-18 17:22:20,851.851 INFO    ] Checking for camera pi updates...
[2026-10-18 17:22:20,884.884 INFO    ] 200
[2026-10-18 17:22:20,887.887 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:22:20,927.927 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:22:30,942.942 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:22:30,976.976 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:22:30,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:22:30,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:22:30,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:22:30,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:22:33,039.039 INFO    ] ================================================
[2026-10-18 17:22:33,054.054 INFO    ] Launching Daemon at Sun Oct 18 17:22:33 IST 2026
[2026-10-18 17:22:33,064.064 INFO    ] ================================================
[2026-10-18 17:22:33,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:22:33
[2026-10-18 17:22:34,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:22:34,519.519 INFO    ] Initializing speech engine...
[2026-10-18 17:22:34,527.527 INFO    ] 2026-10-18 17:22:34
[2026-10-18 17:22:34,788.788 INFO    ] 2026-10-18 17:22:34
[2026-10-18 17:22:34,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:22:35,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:22:35,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:22:35,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:22:35,316.316 INFO    ] time= 18/10/2026 17:22:35
[2026-10-18 17:22:35,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:22:35,357.357 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:22:35,508.508 INFO    ] No existing commands found in stream
[2026-10-18 17:22:40,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:22:40,523.523 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-18 17:22:42,363.363 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:22:42,365.365 INFO    ] Checking for system updates...
[2026-10-18 17:22:42,401.401 INFO    ] 200
[2026-10-18 17:22:42,403.403 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:22:42,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:22:42,458.458 INFO    ] No update needed
[2026-10-18 17:22:42,460.460 INFO    ] Checking for camera pi updates...
[2026-10-18 17:22:42,494.494 INFO    ] 200
[2026-10-18 17:22:42,497.497 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:22:42,537.537 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:22:52,552.552 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:22:52,587.587 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:22:52,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:22:52,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:22:52,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:22:52,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:22:54,649.649 INFO    ] ================================================
[2026-10-18 17:22:54,664.664 INFO    ] Launching Daemon at Sun Oct 18 17:22:54 IST 2026
[2026-10-18 17:22:54,674.674 INFO    ] ================================================
[2026-10-18 17:22:55,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:22:55
[2026-10-18 17:22:55,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:22:56,126.126 INFO    ] Initializing speech engine...
[2026-10-18 17:22:56,132.132 INFO    ] 2026-10-18 17:22:56
[2026-10-18 17:22:56,393.393 INFO    ] 2026-10-18 17:22:56
[2026-10-18 17:22:56,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:22:56,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:22:56,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:22:56,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:22:56,940.940 INFO    ] time= 18/10/2026 17:22:56
[2026-10-18 17:22:56,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:22:56,963.963 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:22:57,105.105 INFO    ] No existing commands found in stream
[2026-10-18 17:23:02,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:23:02,132.132 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-18 17:23:03,883.883 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:23:03,886.886 INFO    ] Checking for system updates...
[2026-10-18 17:23:03,921.921 INFO    ] 200
[2026-10-18 17:23:03,924.924 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:23:03,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:23:03,980.980 INFO    ] No update needed
[2026-10-18 17:23:03,982.982 INFO    ] Checking for camera pi updates...
[2026-10-18 17:23:04,016.016 INFO    ] 200
[2026-10-18 17:23:04,019.019 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:23:04,059.059 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:23:14,075.075 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:23:14,110.110 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:23:14,120.120 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:23:14,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:23:14,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:23:14,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:23:16,172.172 INFO    ] ================================================
[2026-10-18 17:23:16,187.187 INFO    ] Launching Daemon at Sun Oct 18 17:23:16 IST 2026
[2026-10-18 17:23:16,197.197 INFO    ] ================================================
[2026-10-18 17:23:16,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:23:16
[2026-10-18 17:23:17,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:23:17,653.653 INFO    ] Initializing speech engine...
[2026-10-18 17:23:17,663.663 INFO    ] 2026-10-18 17:23:17
[2026-10-18 17:23:17,923.923 INFO    ] 2026-10-18 17:23:17
[2026-10-18 17:23:17,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:23:18,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:23:18,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:23:18,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:23:18,459.459 INFO    ] time= 18/10/2026 17:23:18
[2026-10-18 17:23:18,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:23:18,491.491 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:23:18,630.630 INFO    ] No existing commands found in stream
[2026-10-18 17:23:23,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:23:23,658.658 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-18 17:23:27,331.331 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:23:27,334.334 INFO    ] Checking for system updates...
[2026-10-18 17:23:27,370.370 INFO    ] 200
[2026-10-18 17:23:27,372.372 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:23:27,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:23:27,427.427 INFO    ] No update needed
[2026-10-18 17:23:27,430.430 INFO    ] Checking for camera pi updates...
[2026-10-18 17:23:27,463.463 INFO    ] 200
[2026-10-18 17:23:27,466.466 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:23:27,506.506 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:23:37,521.521 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:23:37,557.557 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:23:37,570.570 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:23:37,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:23:37,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:23:37,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:23:39,624.624 INFO    ] ================================================
[2026-10-18 17:23:39,639.639 INFO    ] Launching Daemon at Sun Oct 18 17:23:39 IST 2026
[2026-10-18 17:23:39,649.649 INFO    ] ================================================
[2026-10-18 17:23:40,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:23:40
[2026-10-18 17:23:40,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:23:41,093.093 INFO    ] Initializing speech engine...
[2026-10-18 17:23:41,102.102 INFO    ] 2026-10-18 17:23:41
[2026-10-18 17:23:41,405.405 INFO    ] 2026-10-18 17:23:41
[2026-10-18 17:23:41,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:23:41,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:23:41,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:23:41,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:23:41,833.833 INFO    ] time= 18/10/2026 17:23:41
[2026-10-18 17:23:41,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:23:41,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:23:41,969.969 INFO    ] No existing commands found in stream
[2026-10-18 17:23:46,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:23:46,992.992 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-18 17:23:51,147.147 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:23:51,150.150 INFO    ] Checking for system updates...
[2026-10-18 17:23:51,189.189 INFO    ] 200
[2026-10-18 17:23:51,191.191 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:23:51,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:23:51,247.247 INFO    ] No update needed
[2026-10-18 17:23:51,250.250 INFO    ] Checking for camera pi updates...
[2026-10-18 17:23:51,284.284 INFO    ] 200
[2026-10-18 17:23:51,286.286 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:23:51,327.327 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:24:01,343.343 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:24:01,399.399 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:24:01,413.413 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:24:01,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:24:01,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:24:01,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:24:03,477.477 INFO    ] ================================================
[2026-10-18 17:24:03,493.493 INFO    ] Launching Daemon at Sun Oct 18 17:24:03 IST 2026
[2026-10-18 17:24:03,504.504 INFO    ] ================================================
[2026-10-18 17:24:04,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:24:04
[2026-10-18 17:24:04,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:24:04,927.927 INFO    ] Initializing speech engine...
[2026-10-18 17:24:04,936.936 INFO    ] 2026-10-18 17:24:04
[2026-10-18 17:24:05,187.187 INFO    ] 2026-10-18 17:24:05
[2026-10-18 17:24:05,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:24:05,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:24:05,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:24:05,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:24:05,749.749 INFO    ] time= 18/10/2026 17:24:05
[2026-10-18 17:24:05,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:24:05,779.779 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:24:05,938.938 INFO    ] No existing commands found in stream
[2026-10-18 17:24:10,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:24:10,971.971 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-18 17:24:14,361.361 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:24:14,364.364 INFO    ] Checking for system updates...
[2026-10-18 17:24:14,400.400 INFO    ] 200
[2026-10-18 17:24:14,402.402 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:24:14,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:24:14,456.456 INFO    ] No update needed
[2026-10-18 17:24:14,459.459 INFO    ] Checking for camera pi updates...
[2026-10-18 17:24:14,496.496 INFO    ] 200
[2026-10-18 17:24:14,498.498 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:24:14,540.540 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:24:24,556.556 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:24:24,590.590 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:24:24,600.600 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:24:24,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:24:24,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:24:24,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:24:26,653.653 INFO    ] ================================================
[2026-10-18 17:24:26,668.668 INFO    ] Launching Daemon at Sun Oct 18 17:24:26 IST 2026
[2026-10-18 17:24:26,679.679 INFO    ] ================================================
[2026-10-18 17:24:27,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:24:27
[2026-10-18 17:24:27,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:24:28,117.117 INFO    ] Initializing speech engine...
[2026-10-18 17:24:28,123.123 INFO    ] 2026-10-18 17:24:28
[2026-10-18 17:24:28,420.420 INFO    ] 2026-10-18 17:24:28
[2026-10-18 17:24:28,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:24:28,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:24:28,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:24:28,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:24:28,942.942 INFO    ] time= 18/10/2026 17:24:28
[2026-10-18 17:24:28,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:24:29,035.035 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:24:29,186.186 INFO    ] No existing commands found in stream
[2026-10-18 17:24:34,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:24:34,212.212 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-18 17:24:38,410.410 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:24:38,413.413 INFO    ] Checking for system updates...
[2026-10-18 17:24:38,448.448 INFO    ] 200
[2026-10-18 17:24:38,451.451 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:24:38,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:24:38,505.505 INFO    ] No update needed
[2026-10-18 17:24:38,508.508 INFO    ] Checking for camera pi updates...
[2026-10-18 17:24:38,541.541 INFO    ] 200
[2026-10-18 17:24:38,544.544 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:24:38,590.590 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:24:48,605.605 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:24:48,641.641 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:24:48,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:24:48,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:24:48,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:24:48,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:24:50,703.703 INFO    ] ================================================
[2026-10-18 17:24:50,719.719 INFO    ] Launching Daemon at Sun Oct 18 17:24:50 IST 2026
[2026-10-18 17:24:50,730.730 INFO    ] ================================================
[2026-10-18 17:24:51,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:24:51
[2026-10-18 17:24:51,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:24:52,207.207 INFO    ] Initializing speech engine...
[2026-10-18 17:24:52,214.214 INFO    ] 2026-10-18 17:24:52
[2026-10-18 17:24:52,480.480 INFO    ] 2026-10-18 17:24:52
[2026-10-18 17:24:52,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:24:52,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:24:52,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:24:52,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:24:53,008.008 INFO    ] time= 18/10/2026 17:24:52
[2026-10-18 17:24:53,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:24:53,107.107 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:24:53,250.250 INFO    ] No existing commands found in stream
[2026-10-18 17:24:58,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:24:58,284.284 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-18 17:24:58,809.809 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:24:58,812.812 INFO    ] Checking for system updates...
[2026-10-18 17:24:58,848.848 INFO    ] 200
[2026-10-18 17:24:58,851.851 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:24:58,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:24:58,905.905 INFO    ] No update needed
[2026-10-18 17:24:58,908.908 INFO    ] Checking for camera pi updates...
[2026-10-18 17:24:58,944.944 INFO    ] 200
[2026-10-18 17:24:58,947.947 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:24:58,988.988 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:25:09,003.003 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:25:09,037.037 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:25:09,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:25:09,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:25:09,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:25:09,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:25:11,099.099 INFO    ] ================================================
[2026-10-18 17:25:11,114.114 INFO    ] Launching Daemon at Sun Oct 18 17:25:11 IST 2026
[2026-10-18 17:25:11,125.125 INFO    ] ================================================
[2026-10-18 17:25:11,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:25:11
[2026-10-18 17:25:12,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:25:12,697.697 INFO    ] Initializing speech engine...
[2026-10-18 17:25:12,705.705 INFO    ] 2026-10-18 17:25:12
[2026-10-18 17:25:12,972.972 INFO    ] 2026-10-18 17:25:12
[2026-10-18 17:25:13,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:25:13,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:25:13,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:25:13,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:25:13,501.501 INFO    ] time= 18/10/2026 17:25:13
[2026-10-18 17:25:13,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:25:13,559.559 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:25:13,698.698 INFO    ] No existing commands found in stream
[2026-10-18 17:25:18,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:25:18,720.720 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-18 17:25:21,493.493 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:25:21,496.496 INFO    ] Checking for system updates...
[2026-10-18 17:25:21,532.532 INFO    ] 200
[2026-10-18 17:25:21,534.534 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:25:21,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:25:21,589.589 INFO    ] No update needed
[2026-10-18 17:25:21,592.592 INFO    ] Checking for camera pi updates...
[2026-10-18 17:25:21,629.629 INFO    ] 200
[2026-10-18 17:25:21,631.631 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:25:21,678.678 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:25:31,694.694 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:25:31,735.735 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:25:31,747.747 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:25:31,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:25:31,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:25:31,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:25:33,803.803 INFO    ] ================================================
[2026-10-18 17:25:33,818.818 INFO    ] Launching Daemon at Sun Oct 18 17:25:33 IST 2026
[2026-10-18 17:25:33,829.829 INFO    ] ================================================
[2026-10-18 17:25:34,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:25:34
[2026-10-18 17:25:34,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:25:35,233.233 INFO    ] Initializing speech engine...
[2026-10-18 17:25:35,241.241 INFO    ] 2026-10-18 17:25:35
[2026-10-18 17:25:35,513.513 INFO    ] 2026-10-18 17:25:35
[2026-10-18 17:25:35,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:25:35,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:25:35,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:25:35,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:25:36,043.043 INFO    ] time= 18/10/2026 17:25:35
[2026-10-18 17:25:36,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:25:36,075.075 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:25:36,199.199 INFO    ] No existing commands found in stream
[2026-10-18 17:25:41,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:25:41,228.228 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-18 17:25:43,760.760 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:25:43,763.763 INFO    ] Checking for system updates...
[2026-10-18 17:25:43,798.798 INFO    ] 200
[2026-10-18 17:25:43,801.801 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:25:43,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:25:43,855.855 INFO    ] No update needed
[2026-10-18 17:25:43,858.858 INFO    ] Checking for camera pi updates...
[2026-10-18 17:25:43,896.896 INFO    ] 200
[2026-10-18 17:25:43,899.899 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:25:43,941.941 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:25:53,954.954 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:25:53,991.991 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:25:54,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:25:54,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:25:54,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:25:54,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:25:56,054.054 INFO    ] ================================================
[2026-10-18 17:25:56,069.069 INFO    ] Launching Daemon at Sun Oct 18 17:25:56 IST 2026
[2026-10-18 17:25:56,079.079 INFO    ] ================================================
[2026-10-18 17:25:56,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:25:56
[2026-10-18 17:25:57,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:25:57,545.545 INFO    ] Initializing speech engine...
[2026-10-18 17:25:57,554.554 INFO    ] 2026-10-18 17:25:57
[2026-10-18 17:25:57,816.816 INFO    ] 2026-10-18 17:25:57
[2026-10-18 17:25:57,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:25:58,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:25:58,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:25:58,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:25:58,358.358 INFO    ] time= 18/10/2026 17:25:58
[2026-10-18 17:25:58,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:25:58,384.384 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:25:58,513.513 INFO    ] No existing commands found in stream
[2026-10-18 17:26:03,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:26:03,527.527 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-18 17:26:04,816.816 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:26:04,819.819 INFO    ] Checking for system updates...
[2026-10-18 17:26:04,859.859 INFO    ] 200
[2026-10-18 17:26:04,862.862 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:26:04,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:26:04,917.917 INFO    ] No update needed
[2026-10-18 17:26:04,920.920 INFO    ] Checking for camera pi updates...
[2026-10-18 17:26:04,953.953 INFO    ] 200
[2026-10-18 17:26:04,956.956 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:26:04,997.997 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:26:15,012.012 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:26:15,047.047 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:26:15,057.057 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:26:15,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:26:15,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:26:15,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:26:17,108.108 INFO    ] ================================================
[2026-10-18 17:26:17,123.123 INFO    ] Launching Daemon at Sun Oct 18 17:26:17 IST 2026
[2026-10-18 17:26:17,134.134 INFO    ] ================================================
[2026-10-18 17:26:17,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:26:17
[2026-10-18 17:26:18,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:26:18,552.552 INFO    ] Initializing speech engine...
[2026-10-18 17:26:18,561.561 INFO    ] 2026-10-18 17:26:18
[2026-10-18 17:26:18,849.849 INFO    ] 2026-10-18 17:26:18
[2026-10-18 17:26:18,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:26:19,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:26:19,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:26:19,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:26:19,334.334 INFO    ] time= 18/10/2026 17:26:19
[2026-10-18 17:26:19,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:26:19,428.428 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:26:19,567.567 INFO    ] No existing commands found in stream
[2026-10-18 17:26:24,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:26:24,602.602 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-18 17:26:25,187.187 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:26:25,190.190 INFO    ] Checking for system updates...
[2026-10-18 17:26:25,226.226 INFO    ] 200
[2026-10-18 17:26:25,229.229 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:26:25,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:26:25,289.289 INFO    ] No update needed
[2026-10-18 17:26:25,291.291 INFO    ] Checking for camera pi updates...
[2026-10-18 17:26:25,324.324 INFO    ] 200
[2026-10-18 17:26:25,327.327 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:26:25,367.367 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:26:35,382.382 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:26:35,417.417 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:26:35,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:26:35,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:26:35,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:26:35,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:26:37,480.480 INFO    ] ================================================
[2026-10-18 17:26:37,496.496 INFO    ] Launching Daemon at Sun Oct 18 17:26:37 IST 2026
[2026-10-18 17:26:37,507.507 INFO    ] ================================================
[2026-10-18 17:26:38,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:26:38
[2026-10-18 17:26:38,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:26:39,083.083 INFO    ] Initializing speech engine...
[2026-10-18 17:26:39,091.091 INFO    ] 2026-10-18 17:26:39
[2026-10-18 17:26:39,374.374 INFO    ] 2026-10-18 17:26:39
[2026-10-18 17:26:39,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:26:39,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:26:39,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:26:39,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:26:39,909.909 INFO    ] time= 18/10/2026 17:26:39
[2026-10-18 17:26:39,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:26:39,958.958 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:26:40,113.113 INFO    ] No existing commands found in stream
[2026-10-18 17:26:45,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:26:45,153.153 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-18 17:26:46,722.722 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:26:46,725.725 INFO    ] Checking for system updates...
[2026-10-18 17:26:46,765.765 INFO    ] 200
[2026-10-18 17:26:46,768.768 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:26:46,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:26:46,825.825 INFO    ] No update needed
[2026-10-18 17:26:46,828.828 INFO    ] Checking for camera pi updates...
[2026-10-18 17:26:46,862.862 INFO    ] 200
[2026-10-18 17:26:46,865.865 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:26:46,906.906 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:26:56,923.923 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:26:56,961.961 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:26:56,972.972 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:26:56,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:26:56,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:26:56,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:26:59,027.027 INFO    ] ================================================
[2026-10-18 17:26:59,043.043 INFO    ] Launching Daemon at Sun Oct 18 17:26:59 IST 2026
[2026-10-18 17:26:59,054.054 INFO    ] ================================================
[2026-10-18 17:26:59,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:26:59
[2026-10-18 17:27:00,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:27:00,498.498 INFO    ] Initializing speech engine...
[2026-10-18 17:27:00,507.507 INFO    ] 2026-10-18 17:27:00
[2026-10-18 17:27:00,796.796 INFO    ] 2026-10-18 17:27:00
[2026-10-18 17:27:00,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:27:01,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:27:01,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:27:01,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:27:01,317.317 INFO    ] time= 18/10/2026 17:27:01
[2026-10-18 17:27:01,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:27:01,424.424 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:27:01,531.531 INFO    ] No existing commands found in stream
[2026-10-18 17:27:06,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:27:06,544.544 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-18 17:27:09,052.052 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:27:09,054.054 INFO    ] Checking for system updates...
[2026-10-18 17:27:09,090.090 INFO    ] 200
[2026-10-18 17:27:09,093.093 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:27:09,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:27:09,152.152 INFO    ] No update needed
[2026-10-18 17:27:09,155.155 INFO    ] Checking for camera pi updates...
[2026-10-18 17:27:09,188.188 INFO    ] 200
[2026-10-18 17:27:09,190.190 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:27:09,230.230 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:27:19,245.245 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:27:19,280.280 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:27:19,289.289 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:27:19,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:27:19,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:27:19,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:27:21,341.341 INFO    ] ================================================
[2026-10-18 17:27:21,357.357 INFO    ] Launching Daemon at Sun Oct 18 17:27:21 IST 2026
[2026-10-18 17:27:21,371.371 INFO    ] ================================================
[2026-10-18 17:27:21,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:27:21
[2026-10-18 17:27:22,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:27:22,769.769 INFO    ] Initializing speech engine...
[2026-10-18 17:27:22,776.776 INFO    ] 2026-10-18 17:27:22
[2026-10-18 17:27:23,055.055 INFO    ] 2026-10-18 17:27:23
[2026-10-18 17:27:23,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:27:23,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:27:23,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:27:23,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:27:23,615.615 INFO    ] time= 18/10/2026 17:27:23
[2026-10-18 17:27:23,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:27:23,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:27:23,780.780 INFO    ] No existing commands found in stream
[2026-10-18 17:27:28,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:27:28,797.797 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-18 17:27:31,840.840 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:27:31,843.843 INFO    ] Checking for system updates...
[2026-10-18 17:27:31,881.881 INFO    ] 200
[2026-10-18 17:27:31,883.883 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:27:31,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:27:31,942.942 INFO    ] No update needed
[2026-10-18 17:27:31,945.945 INFO    ] Checking for camera pi updates...
[2026-10-18 17:27:31,981.981 INFO    ] 200
[2026-10-18 17:27:31,984.984 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:27:32,032.032 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:27:42,047.047 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:27:42,083.083 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:27:42,093.093 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:27:42,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:27:42,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:27:42,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:27:44,146.146 INFO    ] ================================================
[2026-10-18 17:27:44,161.161 INFO    ] Launching Daemon at Sun Oct 18 17:27:44 IST 2026
[2026-10-18 17:27:44,172.172 INFO    ] ================================================
[2026-10-18 17:27:44,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:27:44
[2026-10-18 17:27:45,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:27:45,618.618 INFO    ] Initializing speech engine...
[2026-10-18 17:27:45,625.625 INFO    ] 2026-10-18 17:27:45
[2026-10-18 17:27:45,887.887 INFO    ] 2026-10-18 17:27:45
[2026-10-18 17:27:45,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:27:46,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:27:46,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:27:46,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:27:46,428.428 INFO    ] time= 18/10/2026 17:27:46
[2026-10-18 17:27:46,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:27:46,453.453 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:27:46,580.580 INFO    ] No existing commands found in stream
[2026-10-18 17:27:51,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:27:51,596.596 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-18 17:27:55,654.654 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:27:55,658.658 INFO    ] Checking for system updates...
[2026-10-18 17:27:55,697.697 INFO    ] 200
[2026-10-18 17:27:55,700.700 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:27:55,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:27:55,754.754 INFO    ] No update needed
[2026-10-18 17:27:55,756.756 INFO    ] Checking for camera pi updates...
[2026-10-18 17:27:55,793.793 INFO    ] 200
[2026-10-18 17:27:55,795.795 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:27:55,836.836 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:28:05,852.852 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:28:05,888.888 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:28:05,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:28:05,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:28:05,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:28:05,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:28:07,953.953 INFO    ] ================================================
[2026-10-18 17:28:07,968.968 INFO    ] Launching Daemon at Sun Oct 18 17:28:07 IST 2026
[2026-10-18 17:28:07,979.979 INFO    ] ================================================
[2026-10-18 17:28:08,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:28:08
[2026-10-18 17:28:09,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:28:09,427.427 INFO    ] Initializing speech engine...
[2026-10-18 17:28:09,452.452 INFO    ] 2026-10-18 17:28:09
[2026-10-18 17:28:09,726.726 INFO    ] 2026-10-18 17:28:09
[2026-10-18 17:28:09,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:28:09,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:28:09,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:28:10,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:28:10,146.146 INFO    ] time= 18/10/2026 17:28:10
[2026-10-18 17:28:10,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:28:10,202.202 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:28:10,360.360 INFO    ] No existing commands found in stream
[2026-10-18 17:28:15,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:28:15,384.384 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-18 17:28:17,804.804 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:28:17,807.807 INFO    ] Checking for system updates...
[2026-10-18 17:28:17,842.842 INFO    ] 200
[2026-10-18 17:28:17,844.844 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:28:17,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:28:17,901.901 INFO    ] No update needed
[2026-10-18 17:28:17,903.903 INFO    ] Checking for camera pi updates...
[2026-10-18 17:28:17,937.937 INFO    ] 200
[2026-10-18 17:28:17,939.939 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:28:17,984.984 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:28:27,996.996 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:28:28,031.031 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:28:28,040.040 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:28:28,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:28:28,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:28:28,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:28:30,093.093 INFO    ] ================================================
[2026-10-18 17:28:30,108.108 INFO    ] Launching Daemon at Sun Oct 18 17:28:30 IST 2026
[2026-10-18 17:28:30,120.120 INFO    ] ================================================
[2026-10-18 17:28:30,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:28:30
[2026-10-18 17:28:31,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:28:31,552.552 INFO    ] Initializing speech engine...
[2026-10-18 17:28:31,570.570 INFO    ] 2026-10-18 17:28:31
[2026-10-18 17:28:31,890.890 INFO    ] 2026-10-18 17:28:31
[2026-10-18 17:28:31,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:28:32,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:28:32,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:28:32,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:28:32,477.477 INFO    ] time= 18/10/2026 17:28:32
[2026-10-18 17:28:32,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:28:32,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:28:32,648.648 INFO    ] No existing commands found in stream
[2026-10-18 17:28:37,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:28:37,669.669 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-18 17:28:38,238.238 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:28:38,241.241 INFO    ] Checking for system updates...
[2026-10-18 17:28:38,278.278 INFO    ] 200
[2026-10-18 17:28:38,281.281 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:28:38,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:28:38,341.341 INFO    ] No update needed
[2026-10-18 17:28:38,343.343 INFO    ] Checking for camera pi updates...
[2026-10-18 17:28:38,377.377 INFO    ] 200
[2026-10-18 17:28:38,379.379 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:28:38,420.420 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:28:48,436.436 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:28:48,470.470 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:28:48,480.480 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:28:48,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:28:48,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:28:48,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:28:50,531.531 INFO    ] ================================================
[2026-10-18 17:28:50,547.547 INFO    ] Launching Daemon at Sun Oct 18 17:28:50 IST 2026
[2026-10-18 17:28:50,558.558 INFO    ] ================================================
[2026-10-18 17:28:51,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:28:51
[2026-10-18 17:28:51,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:28:52,189.189 INFO    ] Initializing speech engine...
[2026-10-18 17:28:52,203.203 INFO    ] 2026-10-18 17:28:52
[2026-10-18 17:28:52,485.485 INFO    ] 2026-10-18 17:28:52
[2026-10-18 17:28:52,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:28:52,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:28:52,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:28:52,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:28:52,980.980 INFO    ] time= 18/10/2026 17:28:52
[2026-10-18 17:28:53,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:28:53,047.047 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:28:53,196.196 INFO    ] No existing commands found in stream
[2026-10-18 17:28:58,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:28:58,227.227 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-18 17:29:01,374.374 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:29:01,377.377 INFO    ] Checking for system updates...
[2026-10-18 17:29:01,414.414 INFO    ] 200
[2026-10-18 17:29:01,417.417 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:29:01,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:29:01,515.515 INFO    ] No update needed
[2026-10-18 17:29:01,526.526 INFO    ] Checking for camera pi updates...
[2026-10-18 17:29:01,608.608 INFO    ] 200
[2026-10-18 17:29:01,617.617 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:29:01,682.682 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:29:11,708.708 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:29:11,743.743 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:29:11,753.753 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:29:11,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:29:11,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:29:11,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:29:13,806.806 INFO    ] ================================================
[2026-10-18 17:29:13,821.821 INFO    ] Launching Daemon at Sun Oct 18 17:29:13 IST 2026
[2026-10-18 17:29:13,832.832 INFO    ] ================================================
[2026-10-18 17:29:14,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:29:14
[2026-10-18 17:29:15,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:29:15,412.412 INFO    ] Initializing speech engine...
[2026-10-18 17:29:15,420.420 INFO    ] 2026-10-18 17:29:15
[2026-10-18 17:29:15,686.686 INFO    ] 2026-10-18 17:29:15
[2026-10-18 17:29:15,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:29:15,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:29:15,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:29:16,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:29:16,258.258 INFO    ] time= 18/10/2026 17:29:16
[2026-10-18 17:29:16,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:29:16,283.283 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:29:16,415.415 INFO    ] No existing commands found in stream
[2026-10-18 17:29:21,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:29:21,433.433 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-18 17:29:23,563.563 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:29:23,567.567 INFO    ] Checking for system updates...
[2026-10-18 17:29:23,603.603 INFO    ] 200
[2026-10-18 17:29:23,606.606 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:29:23,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:29:23,667.667 INFO    ] No update needed
[2026-10-18 17:29:23,669.669 INFO    ] Checking for camera pi updates...
[2026-10-18 17:29:23,704.704 INFO    ] 200
[2026-10-18 17:29:23,707.707 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:29:23,752.752 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:29:33,772.772 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:29:33,811.811 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:29:33,822.822 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:29:33,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:29:33,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:29:33,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:29:35,877.877 INFO    ] ================================================
[2026-10-18 17:29:35,892.892 INFO    ] Launching Daemon at Sun Oct 18 17:29:35 IST 2026
[2026-10-18 17:29:35,903.903 INFO    ] ================================================
[2026-10-18 17:29:36,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:29:36
[2026-10-18 17:29:37,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:29:37,307.307 INFO    ] Initializing speech engine...
[2026-10-18 17:29:37,327.327 INFO    ] 2026-10-18 17:29:37
[2026-10-18 17:29:37,585.585 INFO    ] 2026-10-18 17:29:37
[2026-10-18 17:29:37,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:29:37,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:29:37,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:29:38,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:29:38,055.055 INFO    ] time= 18/10/2026 17:29:38
[2026-10-18 17:29:38,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:29:38,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:29:38,322.322 INFO    ] No existing commands found in stream
[2026-10-18 17:29:43,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:29:43,356.356 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-18 17:29:46,612.612 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:29:46,615.615 INFO    ] Checking for system updates...
[2026-10-18 17:29:46,652.652 INFO    ] 200
[2026-10-18 17:29:46,655.655 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:29:46,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:29:46,711.711 INFO    ] No update needed
[2026-10-18 17:29:46,714.714 INFO    ] Checking for camera pi updates...
[2026-10-18 17:29:46,748.748 INFO    ] 200
[2026-10-18 17:29:46,751.751 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:29:46,793.793 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:29:56,809.809 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:29:56,849.849 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:29:56,860.860 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:29:56,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:29:56,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:29:56,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:29:58,915.915 INFO    ] ================================================
[2026-10-18 17:29:58,930.930 INFO    ] Launching Daemon at Sun Oct 18 17:29:58 IST 2026
[2026-10-18 17:29:58,941.941 INFO    ] ================================================
[2026-10-18 17:29:59,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:29:59
[2026-10-18 17:30:00,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:30:00,443.443 INFO    ] Initializing speech engine...
[2026-10-18 17:30:00,453.453 INFO    ] 2026-10-18 17:30:00
[2026-10-18 17:30:00,698.698 INFO    ] 2026-10-18 17:30:00
[2026-10-18 17:30:00,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:30:00,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:30:00,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:30:01,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:30:01,252.252 INFO    ] time= 18/10/2026 17:30:01
[2026-10-18 17:30:01,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:30:01,275.275 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:30:01,418.418 INFO    ] No existing commands found in stream
[2026-10-18 17:30:06,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:30:06,457.457 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-18 17:30:10,208.208 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:30:10,211.211 INFO    ] Checking for system updates...
[2026-10-18 17:30:10,252.252 INFO    ] 200
[2026-10-18 17:30:10,255.255 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:30:10,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:30:10,312.312 INFO    ] No update needed
[2026-10-18 17:30:10,315.315 INFO    ] Checking for camera pi updates...
[2026-10-18 17:30:10,355.355 INFO    ] 200
[2026-10-18 17:30:10,358.358 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:30:10,405.405 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:30:20,422.422 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:30:20,463.463 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:30:20,474.474 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:30:20,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:30:20,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:30:20,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:30:22,530.530 INFO    ] ================================================
[2026-10-18 17:30:22,546.546 INFO    ] Launching Daemon at Sun Oct 18 17:30:22 IST 2026
[2026-10-18 17:30:22,557.557 INFO    ] ================================================
[2026-10-18 17:30:23,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:30:23
[2026-10-18 17:30:23,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:30:23,974.974 INFO    ] Initializing speech engine...
[2026-10-18 17:30:23,981.981 INFO    ] 2026-10-18 17:30:23
[2026-10-18 17:30:24,287.287 INFO    ] 2026-10-18 17:30:24
[2026-10-18 17:30:24,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:30:24,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:30:24,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:30:24,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:30:24,720.720 INFO    ] time= 18/10/2026 17:30:24
[2026-10-18 17:30:24,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:30:24,775.775 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:30:24,898.898 INFO    ] No existing commands found in stream
[2026-10-18 17:30:29,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:30:29,921.921 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-18 17:30:30,471.471 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:30:30,473.473 INFO    ] Checking for system updates...
[2026-10-18 17:30:30,508.508 INFO    ] 200
[2026-10-18 17:30:30,511.511 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:30:30,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:30:30,567.567 INFO    ] No update needed
[2026-10-18 17:30:30,569.569 INFO    ] Checking for camera pi updates...
[2026-10-18 17:30:30,604.604 INFO    ] 200
[2026-10-18 17:30:30,606.606 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:30:30,652.652 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:30:40,665.665 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:30:40,700.700 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:30:40,710.710 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:30:40,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:30:40,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:30:40,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:30:42,762.762 INFO    ] ================================================
[2026-10-18 17:30:42,778.778 INFO    ] Launching Daemon at Sun Oct 18 17:30:42 IST 2026
[2026-10-18 17:30:42,789.789 INFO    ] ================================================
[2026-10-18 17:30:43,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:30:43
[2026-10-18 17:30:44,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:30:44,449.449 INFO    ] Initializing speech engine...
[2026-10-18 17:30:44,463.463 INFO    ] 2026-10-18 17:30:44
[2026-10-18 17:30:44,752.752 INFO    ] 2026-10-18 17:30:44
[2026-10-18 17:30:44,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:30:45,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:30:45,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:30:45,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:30:45,297.297 INFO    ] time= 18/10/2026 17:30:45
[2026-10-18 17:30:45,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:30:45,336.336 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:30:45,459.459 INFO    ] No existing commands found in stream
[2026-10-18 17:30:50,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:30:50,499.499 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-18 17:30:52,185.185 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:30:52,188.188 INFO    ] Checking for system updates...
[2026-10-18 17:30:52,226.226 INFO    ] 200
[2026-10-18 17:30:52,229.229 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:30:52,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:30:52,284.284 INFO    ] No update needed
[2026-10-18 17:30:52,287.287 INFO    ] Checking for camera pi updates...
[2026-10-18 17:30:52,320.320 INFO    ] 200
[2026-10-18 17:30:52,322.322 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:30:52,363.363 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:31:02,379.379 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:31:02,423.423 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:31:02,433.433 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:31:02,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:31:02,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:31:02,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:31:04,490.490 INFO    ] ================================================
[2026-10-18 17:31:04,505.505 INFO    ] Launching Daemon at Sun Oct 18 17:31:04 IST 2026
[2026-10-18 17:31:04,516.516 INFO    ] ================================================
[2026-10-18 17:31:05,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:31:05
[2026-10-18 17:31:05,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:31:05,924.924 INFO    ] Initializing speech engine...
[2026-10-18 17:31:05,947.947 INFO    ] 2026-10-18 17:31:05
[2026-10-18 17:31:06,202.202 INFO    ] 2026-10-18 17:31:06
[2026-10-18 17:31:06,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:31:06,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:31:06,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:31:06,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:31:06,770.770 INFO    ] time= 18/10/2026 17:31:06
[2026-10-18 17:31:06,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:31:06,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:31:06,946.946 INFO    ] No existing commands found in stream
[2026-10-18 17:31:11,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:31:11,981.981 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-18 17:31:14,779.779 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:31:14,781.781 INFO    ] Checking for system updates...
[2026-10-18 17:31:14,817.817 INFO    ] 200
[2026-10-18 17:31:14,820.820 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:31:14,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:31:14,874.874 INFO    ] No update needed
[2026-10-18 17:31:14,877.877 INFO    ] Checking for camera pi updates...
[2026-10-18 17:31:14,915.915 INFO    ] 200
[2026-10-18 17:31:14,918.918 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:31:14,958.958 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:31:24,973.973 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:31:25,008.008 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:31:25,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:31:25,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:31:25,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:31:25,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:31:27,071.071 INFO    ] ================================================
[2026-10-18 17:31:27,086.086 INFO    ] Launching Daemon at Sun Oct 18 17:31:27 IST 2026
[2026-10-18 17:31:27,097.097 INFO    ] ================================================
[2026-10-18 17:31:27,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:31:27
[2026-10-18 17:31:28,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:31:28,534.534 INFO    ] Initializing speech engine...
[2026-10-18 17:31:28,540.540 INFO    ] 2026-10-18 17:31:28
[2026-10-18 17:31:28,848.848 INFO    ] 2026-10-18 17:31:28
[2026-10-18 17:31:28,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:31:29,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:31:29,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:31:29,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:31:29,368.368 INFO    ] time= 18/10/2026 17:31:29
[2026-10-18 17:31:29,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:31:29,473.473 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:31:29,619.619 INFO    ] No existing commands found in stream
[2026-10-18 17:31:34,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:31:34,648.648 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-18 17:31:37,863.863 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:31:37,865.865 INFO    ] Checking for system updates...
[2026-10-18 17:31:37,907.907 INFO    ] 200
[2026-10-18 17:31:37,910.910 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:31:37,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:31:37,966.966 INFO    ] No update needed
[2026-10-18 17:31:37,969.969 INFO    ] Checking for camera pi updates...
[2026-10-18 17:31:38,003.003 INFO    ] 200
[2026-10-18 17:31:38,006.006 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:31:38,049.049 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:31:48,064.064 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:31:48,100.100 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:31:48,110.110 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:31:48,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:31:48,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:31:48,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:31:50,162.162 INFO    ] ================================================
[2026-10-18 17:31:50,178.178 INFO    ] Launching Daemon at Sun Oct 18 17:31:50 IST 2026
[2026-10-18 17:31:50,189.189 INFO    ] ================================================
[2026-10-18 17:31:50,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:31:50
[2026-10-18 17:31:51,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:31:51,837.837 INFO    ] Initializing speech engine...
[2026-10-18 17:31:51,849.849 INFO    ] 2026-10-18 17:31:51
[2026-10-18 17:31:52,165.165 INFO    ] 2026-10-18 17:31:52
[2026-10-18 17:31:52,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:31:52,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:31:52,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:31:52,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:31:52,687.687 INFO    ] time= 18/10/2026 17:31:52
[2026-10-18 17:31:52,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:31:52,737.737 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:31:52,873.873 INFO    ] No existing commands found in stream
[2026-10-18 17:31:57,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:31:57,902.902 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-18 17:31:59,509.509 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:31:59,512.512 INFO    ] Checking for system updates...
[2026-10-18 17:31:59,551.551 INFO    ] 200
[2026-10-18 17:31:59,553.553 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:31:59,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:31:59,619.619 INFO    ] No update needed
[2026-10-18 17:31:59,622.622 INFO    ] Checking for camera pi updates...
[2026-10-18 17:31:59,656.656 INFO    ] 200
[2026-10-18 17:31:59,658.658 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:31:59,705.705 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:32:09,720.720 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:32:09,755.755 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:32:09,764.764 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:32:09,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:32:09,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:32:09,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:32:11,816.816 INFO    ] ================================================
[2026-10-18 17:32:11,831.831 INFO    ] Launching Daemon at Sun Oct 18 17:32:11 IST 2026
[2026-10-18 17:32:11,842.842 INFO    ] ================================================
[2026-10-18 17:32:12,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:32:12
[2026-10-18 17:32:13,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:32:13,299.299 INFO    ] Initializing speech engine...
[2026-10-18 17:32:13,306.306 INFO    ] 2026-10-18 17:32:13
[2026-10-18 17:32:13,565.565 INFO    ] 2026-10-18 17:32:13
[2026-10-18 17:32:13,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:32:13,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:32:13,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:32:14,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:32:14,109.109 INFO    ] time= 18/10/2026 17:32:14
[2026-10-18 17:32:14,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:32:14,134.134 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:32:14,265.265 INFO    ] No existing commands found in stream
[2026-10-18 17:32:19,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:32:19,283.283 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-18 17:32:23,739.739 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:32:23,741.741 INFO    ] Checking for system updates...
[2026-10-18 17:32:23,777.777 INFO    ] 200
[2026-10-18 17:32:23,779.779 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:32:23,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:32:23,835.835 INFO    ] No update needed
[2026-10-18 17:32:23,838.838 INFO    ] Checking for camera pi updates...
[2026-10-18 17:32:23,882.882 INFO    ] 200
[2026-10-18 17:32:23,885.885 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:32:23,938.938 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:32:33,952.952 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:32:33,993.993 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:32:34,003.003 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:32:34,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:32:34,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:32:34,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:32:36,056.056 INFO    ] ================================================
[2026-10-18 17:32:36,071.071 INFO    ] Launching Daemon at Sun Oct 18 17:32:36 IST 2026
[2026-10-18 17:32:36,082.082 INFO    ] ================================================
[2026-10-18 17:32:36,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:32:36
[2026-10-18 17:32:37,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:32:37,541.541 INFO    ] Initializing speech engine...
[2026-10-18 17:32:37,550.550 INFO    ] 2026-10-18 17:32:37
[2026-10-18 17:32:37,811.811 INFO    ] 2026-10-18 17:32:37
[2026-10-18 17:32:37,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:32:38,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:32:38,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:32:38,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:32:38,361.361 INFO    ] time= 18/10/2026 17:32:38
[2026-10-18 17:32:38,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:32:38,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:32:38,539.539 INFO    ] No existing commands found in stream
[2026-10-18 17:32:43,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:32:43,566.566 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-18 17:32:47,080.080 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:32:47,083.083 INFO    ] Checking for system updates...
[2026-10-18 17:32:47,123.123 INFO    ] 200
[2026-10-18 17:32:47,126.126 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:32:47,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:32:47,184.184 INFO    ] No update needed
[2026-10-18 17:32:47,187.187 INFO    ] Checking for camera pi updates...
[2026-10-18 17:32:47,221.221 INFO    ] 200
[2026-10-18 17:32:47,223.223 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:32:47,263.263 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:32:57,278.278 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:32:57,314.314 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:32:57,323.323 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:32:57,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:32:57,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:32:57,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:32:59,377.377 INFO    ] ================================================
[2026-10-18 17:32:59,393.393 INFO    ] Launching Daemon at Sun Oct 18 17:32:59 IST 2026
[2026-10-18 17:32:59,404.404 INFO    ] ================================================
[2026-10-18 17:32:59,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:32:59
[2026-10-18 17:33:00,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:33:00,811.811 INFO    ] Initializing speech engine...
[2026-10-18 17:33:00,831.831 INFO    ] 2026-10-18 17:33:00
[2026-10-18 17:33:01,116.116 INFO    ] 2026-10-18 17:33:01
[2026-10-18 17:33:01,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:33:01,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:33:01,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:33:01,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:33:01,546.546 INFO    ] time= 18/10/2026 17:33:01
[2026-10-18 17:33:01,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:33:01,603.603 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:33:01,739.739 INFO    ] No existing commands found in stream
[2026-10-18 17:33:06,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:33:06,756.756 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-18 17:33:07,472.472 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:33:07,475.475 INFO    ] Checking for system updates...
[2026-10-18 17:33:07,511.511 INFO    ] 200
[2026-10-18 17:33:07,513.513 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:33:07,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:33:07,572.572 INFO    ] No update needed
[2026-10-18 17:33:07,574.574 INFO    ] Checking for camera pi updates...
[2026-10-18 17:33:07,607.607 INFO    ] 200
[2026-10-18 17:33:07,610.610 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:33:07,655.655 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:33:17,669.669 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:33:17,704.704 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:33:17,713.713 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:33:17,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:33:17,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:33:17,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:33:19,766.766 INFO    ] ================================================
[2026-10-18 17:33:19,781.781 INFO    ] Launching Daemon at Sun Oct 18 17:33:19 IST 2026
[2026-10-18 17:33:19,792.792 INFO    ] ================================================
[2026-10-18 17:33:20,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:33:20
[2026-10-18 17:33:20,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:33:21,251.251 INFO    ] Initializing speech engine...
[2026-10-18 17:33:21,262.262 INFO    ] 2026-10-18 17:33:21
[2026-10-18 17:33:21,524.524 INFO    ] 2026-10-18 17:33:21
[2026-10-18 17:33:21,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:33:21,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:33:21,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:33:21,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:33:22,022.022 INFO    ] time= 18/10/2026 17:33:21
[2026-10-18 17:33:22,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:33:22,110.110 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:33:22,267.267 INFO    ] No existing commands found in stream
[2026-10-18 17:33:27,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:33:27,291.291 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-18 17:33:29,546.546 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 17:33:29,549.549 INFO    ] Checking for system updates...
[2026-10-18 17:33:29,588.588 INFO    ] 200
[2026-10-18 17:33:29,591.591 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:33:29,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:33:29,652.652 INFO    ] No update needed
[2026-10-18 17:33:29,655.655 INFO    ] Checking for camera pi updates...
[2026-10-18 17:33:29,798.798 INFO    ] 200
[2026-10-18 17:33:29,801.801 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:33:29,841.841 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:33:39,855.855 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:33:39,890.890 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:33:39,900.900 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:33:39,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:33:39,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:33:39,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:33:41,952.952 INFO    ] ================================================
[2026-10-18 17:33:41,967.967 INFO    ] Launching Daemon at Sun Oct 18 17:33:41 IST 2026
[2026-10-18 17:33:41,978.978 INFO    ] ================================================
[2026-10-18 17:33:42,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:33:42
[2026-10-18 17:33:43,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:33:43,390.390 INFO    ] Initializing speech engine...
[2026-10-18 17:33:43,402.402 INFO    ] 2026-10-18 17:33:43
[2026-10-18 17:33:43,665.665 INFO    ] 2026-10-18 17:33:43
[2026-10-18 17:33:43,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:33:43,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:33:43,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:33:44,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:33:44,221.221 INFO    ] time= 18/10/2026 17:33:44
[2026-10-18 17:33:44,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:33:44,247.247 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:33:44,385.385 INFO    ] No existing commands found in stream
[2026-10-18 17:33:49,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:33:49,419.419 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-18 17:33:51,075.075 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:33:51,078.078 INFO    ] Checking for system updates...
[2026-10-18 17:33:51,117.117 INFO    ] 200
[2026-10-18 17:33:51,120.120 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:33:51,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:33:51,181.181 INFO    ] No update needed
[2026-10-18 17:33:51,184.184 INFO    ] Checking for camera pi updates...
[2026-10-18 17:33:51,218.218 INFO    ] 200
[2026-10-18 17:33:51,220.220 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:33:51,261.261 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:34:01,277.277 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:34:01,336.336 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:34:01,349.349 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:34:01,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:34:01,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:34:01,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:34:03,410.410 INFO    ] ================================================
[2026-10-18 17:34:03,426.426 INFO    ] Launching Daemon at Sun Oct 18 17:34:03 IST 2026
[2026-10-18 17:34:03,436.436 INFO    ] ================================================
[2026-10-18 17:34:04,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:34:04
[2026-10-18 17:34:04,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:34:04,902.902 INFO    ] Initializing speech engine...
[2026-10-18 17:34:04,908.908 INFO    ] 2026-10-18 17:34:04
[2026-10-18 17:34:05,206.206 INFO    ] 2026-10-18 17:34:05
[2026-10-18 17:34:05,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:34:05,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:34:05,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:34:05,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:34:05,740.740 INFO    ] time= 18/10/2026 17:34:05
[2026-10-18 17:34:05,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:34:05,788.788 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:34:05,915.915 INFO    ] No existing commands found in stream
[2026-10-18 17:34:10,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:34:10,954.954 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-18 17:34:14,671.671 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:34:14,674.674 INFO    ] Checking for system updates...
[2026-10-18 17:34:14,718.718 INFO    ] 200
[2026-10-18 17:34:14,720.720 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:34:14,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:34:14,786.786 INFO    ] No update needed
[2026-10-18 17:34:14,788.788 INFO    ] Checking for camera pi updates...
[2026-10-18 17:34:14,825.825 INFO    ] 200
[2026-10-18 17:34:14,828.828 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:34:14,872.872 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:34:24,887.887 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:34:24,922.922 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:34:24,932.932 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:34:24,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:34:24,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:34:24,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:34:26,984.984 INFO    ] ================================================
[2026-10-18 17:34:27,999.999 INFO    ] Launching Daemon at Sun Oct 18 17:34:26 IST 2026
[2026-10-18 17:34:27,010.010 INFO    ] ================================================
[2026-10-18 17:34:27,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:34:27
[2026-10-18 17:34:28,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:34:28,419.419 INFO    ] Initializing speech engine...
[2026-10-18 17:34:28,441.441 INFO    ] 2026-10-18 17:34:28
[2026-10-18 17:34:28,695.695 INFO    ] 2026-10-18 17:34:28
[2026-10-18 17:34:28,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:34:28,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:34:28,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:34:29,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:34:29,244.244 INFO    ] time= 18/10/2026 17:34:29
[2026-10-18 17:34:29,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:34:29,277.277 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:34:29,409.409 INFO    ] No existing commands found in stream
[2026-10-18 17:34:34,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:34:34,432.432 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-18 17:34:37,842.842 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:34:37,845.845 INFO    ] Checking for system updates...
[2026-10-18 17:34:37,885.885 INFO    ] 200
[2026-10-18 17:34:37,888.888 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:34:37,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:34:37,948.948 INFO    ] No update needed
[2026-10-18 17:34:37,951.951 INFO    ] Checking for camera pi updates...
[2026-10-18 17:34:37,988.988 INFO    ] 200
[2026-10-18 17:34:37,990.990 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:34:38,034.034 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:34:48,050.050 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:34:48,085.085 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:34:48,094.094 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:34:48,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:34:48,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:34:48,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:34:50,147.147 INFO    ] ================================================
[2026-10-18 17:34:50,161.161 INFO    ] Launching Daemon at Sun Oct 18 17:34:50 IST 2026
[2026-10-18 17:34:50,172.172 INFO    ] ================================================
[2026-10-18 17:34:50,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:34:50
[2026-10-18 17:34:51,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:34:51,600.600 INFO    ] Initializing speech engine...
[2026-10-18 17:34:51,609.609 INFO    ] 2026-10-18 17:34:51
[2026-10-18 17:34:51,869.869 INFO    ] 2026-10-18 17:34:51
[2026-10-18 17:34:51,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:34:52,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:34:52,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:34:52,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:34:52,408.408 INFO    ] time= 18/10/2026 17:34:52
[2026-10-18 17:34:52,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:34:52,432.432 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:34:52,564.564 INFO    ] No existing commands found in stream
[2026-10-18 17:34:57,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:34:57,595.595 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-18 17:35:01,936.936 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:35:01,940.940 INFO    ] Checking for system updates...
[2026-10-18 17:35:01,983.983 INFO    ] 200
[2026-10-18 17:35:01,987.987 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:35:02,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:35:02,067.067 INFO    ] No update needed
[2026-10-18 17:35:02,071.071 INFO    ] Checking for camera pi updates...
[2026-10-18 17:35:02,112.112 INFO    ] 200
[2026-10-18 17:35:02,115.115 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:35:02,166.166 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:35:12,182.182 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:35:12,217.217 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:35:12,227.227 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:35:12,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:35:12,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:35:12,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:35:14,279.279 INFO    ] ================================================
[2026-10-18 17:35:14,294.294 INFO    ] Launching Daemon at Sun Oct 18 17:35:14 IST 2026
[2026-10-18 17:35:14,305.305 INFO    ] ================================================
[2026-10-18 17:35:14,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:35:14
[2026-10-18 17:35:15,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:35:15,713.713 INFO    ] Initializing speech engine...
[2026-10-18 17:35:15,722.722 INFO    ] 2026-10-18 17:35:15
[2026-10-18 17:35:16,011.011 INFO    ] 2026-10-18 17:35:15
[2026-10-18 17:35:16,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:35:16,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:35:16,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:35:16,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:35:16,528.528 INFO    ] time= 18/10/2026 17:35:16
[2026-10-18 17:35:16,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:35:16,641.641 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:35:16,785.785 INFO    ] No existing commands found in stream
[2026-10-18 17:35:21,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:35:21,808.808 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-18 17:35:25,563.563 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:35:25,565.565 INFO    ] Checking for system updates...
[2026-10-18 17:35:25,604.604 INFO    ] 200
[2026-10-18 17:35:25,606.606 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:35:25,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:35:25,671.671 INFO    ] No update needed
[2026-10-18 17:35:25,674.674 INFO    ] Checking for camera pi updates...
[2026-10-18 17:35:25,711.711 INFO    ] 200
[2026-10-18 17:35:25,713.713 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:35:25,759.759 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:35:35,775.775 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:35:35,815.815 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:35:35,826.826 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:35:35,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:35:35,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:35:35,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:35:37,880.880 INFO    ] ================================================
[2026-10-18 17:35:37,895.895 INFO    ] Launching Daemon at Sun Oct 18 17:35:37 IST 2026
[2026-10-18 17:35:37,906.906 INFO    ] ================================================
[2026-10-18 17:35:38,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:35:38
[2026-10-18 17:35:39,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:35:39,303.303 INFO    ] Initializing speech engine...
[2026-10-18 17:35:39,326.326 INFO    ] 2026-10-18 17:35:39
[2026-10-18 17:35:39,582.582 INFO    ] 2026-10-18 17:35:39
[2026-10-18 17:35:39,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:35:39,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:35:39,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:35:40,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:35:40,118.118 INFO    ] time= 18/10/2026 17:35:40
[2026-10-18 17:35:40,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:35:40,155.155 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:35:40,306.306 INFO    ] No existing commands found in stream
[2026-10-18 17:35:45,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:35:45,323.323 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-18 17:35:47,391.391 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:35:47,393.393 INFO    ] Checking for system updates...
[2026-10-18 17:35:47,432.432 INFO    ] 200
[2026-10-18 17:35:47,435.435 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:35:47,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:35:47,495.495 INFO    ] No update needed
[2026-10-18 17:35:47,497.497 INFO    ] Checking for camera pi updates...
[2026-10-18 17:35:47,533.533 INFO    ] 200
[2026-10-18 17:35:47,536.536 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:35:47,580.580 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:35:57,592.592 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:35:57,627.627 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:35:57,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:35:57,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:35:57,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:35:57,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:35:59,690.690 INFO    ] ================================================
[2026-10-18 17:35:59,705.705 INFO    ] Launching Daemon at Sun Oct 18 17:35:59 IST 2026
[2026-10-18 17:35:59,716.716 INFO    ] ================================================
[2026-10-18 17:36:00,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:36:00
[2026-10-18 17:36:00,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:36:01,144.144 INFO    ] Initializing speech engine...
[2026-10-18 17:36:01,158.158 INFO    ] 2026-10-18 17:36:01
[2026-10-18 17:36:01,533.533 INFO    ] 2026-10-18 17:36:01
[2026-10-18 17:36:01,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:36:01,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:36:01,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:36:02,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:36:02,132.132 INFO    ] time= 18/10/2026 17:36:02
[2026-10-18 17:36:02,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:36:02,222.222 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:36:02,365.365 INFO    ] No existing commands found in stream
[2026-10-18 17:36:07,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:36:07,380.380 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-18 17:36:09,575.575 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:36:09,578.578 INFO    ] Checking for system updates...
[2026-10-18 17:36:09,615.615 INFO    ] 200
[2026-10-18 17:36:09,617.617 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:36:09,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:36:09,679.679 INFO    ] No update needed
[2026-10-18 17:36:09,681.681 INFO    ] Checking for camera pi updates...
[2026-10-18 17:36:09,719.719 INFO    ] 200
[2026-10-18 17:36:09,721.721 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:36:09,767.767 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:36:19,782.782 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:36:19,816.816 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:36:19,826.826 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:36:19,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:36:19,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:36:19,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:36:21,880.880 INFO    ] ================================================
[2026-10-18 17:36:21,895.895 INFO    ] Launching Daemon at Sun Oct 18 17:36:21 IST 2026
[2026-10-18 17:36:21,906.906 INFO    ] ================================================
[2026-10-18 17:36:22,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:36:22
[2026-10-18 17:36:23,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:36:23,347.347 INFO    ] Initializing speech engine...
[2026-10-18 17:36:23,356.356 INFO    ] 2026-10-18 17:36:23
[2026-10-18 17:36:23,628.628 INFO    ] 2026-10-18 17:36:23
[2026-10-18 17:36:23,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:36:23,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:36:23,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:36:24,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:36:24,056.056 INFO    ] time= 18/10/2026 17:36:24
[2026-10-18 17:36:24,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:36:24,110.110 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:36:24,244.244 INFO    ] No existing commands found in stream
[2026-10-18 17:36:29,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:36:29,277.277 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-18 17:36:31,850.850 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:36:31,853.853 INFO    ] Checking for system updates...
[2026-10-18 17:36:31,899.899 INFO    ] 200
[2026-10-18 17:36:31,902.902 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:36:31,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:36:31,971.971 INFO    ] No update needed
[2026-10-18 17:36:31,975.975 INFO    ] Checking for camera pi updates...
[2026-10-18 17:36:32,012.012 INFO    ] 200
[2026-10-18 17:36:32,014.014 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:36:32,058.058 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:36:42,073.073 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:36:42,109.109 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:36:42,118.118 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:36:42,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:36:42,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:36:42,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:36:44,172.172 INFO    ] ================================================
[2026-10-18 17:36:44,187.187 INFO    ] Launching Daemon at Sun Oct 18 17:36:44 IST 2026
[2026-10-18 17:36:44,198.198 INFO    ] ================================================
[2026-10-18 17:36:44,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:36:44
[2026-10-18 17:36:45,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:36:45,662.662 INFO    ] Initializing speech engine...
[2026-10-18 17:36:45,668.668 INFO    ] 2026-10-18 17:36:45
[2026-10-18 17:36:45,928.928 INFO    ] 2026-10-18 17:36:45
[2026-10-18 17:36:45,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:36:46,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:36:46,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:36:46,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:36:46,487.487 INFO    ] time= 18/10/2026 17:36:46
[2026-10-18 17:36:46,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:36:46,527.527 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:36:46,641.641 INFO    ] No existing commands found in stream
[2026-10-18 17:36:51,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:36:51,673.673 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-18 17:36:56,108.108 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 17:36:56,111.111 INFO    ] Checking for system updates...
[2026-10-18 17:36:56,147.147 INFO    ] 200
[2026-10-18 17:36:56,150.150 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:36:56,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:36:56,211.211 INFO    ] No update needed
[2026-10-18 17:36:56,213.213 INFO    ] Checking for camera pi updates...
[2026-10-18 17:36:56,247.247 INFO    ] 200
[2026-10-18 17:36:56,250.250 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:36:56,296.296 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:37:06,315.315 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:37:06,351.351 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:37:06,361.361 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:37:06,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:37:06,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:37:06,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:37:08,414.414 INFO    ] ================================================
[2026-10-18 17:37:08,429.429 INFO    ] Launching Daemon at Sun Oct 18 17:37:08 IST 2026
[2026-10-18 17:37:08,440.440 INFO    ] ================================================
[2026-10-18 17:37:09,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:37:09
[2026-10-18 17:37:09,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:37:10,103.103 INFO    ] Initializing speech engine...
[2026-10-18 17:37:10,116.116 INFO    ] 2026-10-18 17:37:10
[2026-10-18 17:37:10,405.405 INFO    ] 2026-10-18 17:37:10
[2026-10-18 17:37:10,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:37:10,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:37:10,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:37:10,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:37:10,957.957 INFO    ] time= 18/10/2026 17:37:10
[2026-10-18 17:37:10,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:37:10,996.996 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:37:11,122.122 INFO    ] No existing commands found in stream
[2026-10-18 17:37:16,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:37:16,151.151 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-18 17:37:17,293.293 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:37:17,297.297 INFO    ] Checking for system updates...
[2026-10-18 17:37:17,334.334 INFO    ] 200
[2026-10-18 17:37:17,338.338 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:37:17,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:37:17,395.395 INFO    ] No update needed
[2026-10-18 17:37:17,398.398 INFO    ] Checking for camera pi updates...
[2026-10-18 17:37:17,432.432 INFO    ] 200
[2026-10-18 17:37:17,435.435 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:37:17,482.482 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:37:27,499.499 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:37:27,539.539 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:37:27,551.551 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:37:27,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:37:27,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:37:27,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:37:29,606.606 INFO    ] ================================================
[2026-10-18 17:37:29,622.622 INFO    ] Launching Daemon at Sun Oct 18 17:37:29 IST 2026
[2026-10-18 17:37:29,632.632 INFO    ] ================================================
[2026-10-18 17:37:30,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:37:30
[2026-10-18 17:37:30,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:37:31,288.288 INFO    ] Initializing speech engine...
[2026-10-18 17:37:31,303.303 INFO    ] 2026-10-18 17:37:31
[2026-10-18 17:37:31,586.586 INFO    ] 2026-10-18 17:37:31
[2026-10-18 17:37:31,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:37:31,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:37:31,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:37:32,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:37:32,150.150 INFO    ] time= 18/10/2026 17:37:32
[2026-10-18 17:37:32,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:37:32,196.196 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:37:32,322.322 INFO    ] No existing commands found in stream
[2026-10-18 17:37:37,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:37:37,349.349 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-18 17:37:38,162.162 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:37:38,165.165 INFO    ] Checking for system updates...
[2026-10-18 17:37:38,205.205 INFO    ] 200
[2026-10-18 17:37:38,208.208 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:37:38,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:37:38,270.270 INFO    ] No update needed
[2026-10-18 17:37:38,272.272 INFO    ] Checking for camera pi updates...
[2026-10-18 17:37:38,306.306 INFO    ] 200
[2026-10-18 17:37:38,309.309 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:37:38,355.355 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:37:48,370.370 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:37:48,406.406 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:37:48,416.416 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:37:48,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:37:48,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:37:48,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:37:50,470.470 INFO    ] ================================================
[2026-10-18 17:37:50,486.486 INFO    ] Launching Daemon at Sun Oct 18 17:37:50 IST 2026
[2026-10-18 17:37:50,499.499 INFO    ] ================================================
[2026-10-18 17:37:51,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:37:51
[2026-10-18 17:37:51,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:37:52,162.162 INFO    ] Initializing speech engine...
[2026-10-18 17:37:52,176.176 INFO    ] 2026-10-18 17:37:52
[2026-10-18 17:37:52,486.486 INFO    ] 2026-10-18 17:37:52
[2026-10-18 17:37:52,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:37:52,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:37:52,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:37:53,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:37:53,156.156 INFO    ] time= 18/10/2026 17:37:53
[2026-10-18 17:37:53,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:37:53,267.267 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:37:53,436.436 INFO    ] No existing commands found in stream
[2026-10-18 17:37:58,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:37:58,452.452 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-18 17:38:00,602.602 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:38:00,605.605 INFO    ] Checking for system updates...
[2026-10-18 17:38:00,643.643 INFO    ] 200
[2026-10-18 17:38:00,646.646 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:38:00,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:38:00,711.711 INFO    ] No update needed
[2026-10-18 17:38:00,714.714 INFO    ] Checking for camera pi updates...
[2026-10-18 17:38:00,753.753 INFO    ] 200
[2026-10-18 17:38:00,756.756 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:38:00,798.798 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:38:10,813.813 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:38:10,854.854 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:38:10,865.865 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:38:10,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:38:10,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:38:10,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:38:12,922.922 INFO    ] ================================================
[2026-10-18 17:38:12,938.938 INFO    ] Launching Daemon at Sun Oct 18 17:38:12 IST 2026
[2026-10-18 17:38:12,954.954 INFO    ] ================================================
[2026-10-18 17:38:13,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:38:13
[2026-10-18 17:38:14,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:38:14,411.411 INFO    ] Initializing speech engine...
[2026-10-18 17:38:14,420.420 INFO    ] 2026-10-18 17:38:14
[2026-10-18 17:38:14,680.680 INFO    ] 2026-10-18 17:38:14
[2026-10-18 17:38:14,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:38:14,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:38:14,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:38:15,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:38:15,225.225 INFO    ] time= 18/10/2026 17:38:15
[2026-10-18 17:38:15,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:38:15,272.272 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:38:15,393.393 INFO    ] No existing commands found in stream
[2026-10-18 17:38:20,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:38:20,431.431 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-18 17:38:20,964.964 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:38:20,967.967 INFO    ] Checking for system updates...
[2026-10-18 17:38:21,002.002 INFO    ] 200
[2026-10-18 17:38:21,004.004 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:38:21,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:38:21,067.067 INFO    ] No update needed
[2026-10-18 17:38:21,069.069 INFO    ] Checking for camera pi updates...
[2026-10-18 17:38:21,107.107 INFO    ] 200
[2026-10-18 17:38:21,110.110 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:38:21,155.155 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:38:31,168.168 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:38:31,205.205 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:38:31,215.215 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:38:31,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:38:31,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:38:31,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:38:33,271.271 INFO    ] ================================================
[2026-10-18 17:38:33,286.286 INFO    ] Launching Daemon at Sun Oct 18 17:38:33 IST 2026
[2026-10-18 17:38:33,298.298 INFO    ] ================================================
[2026-10-18 17:38:33,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:38:33
[2026-10-18 17:38:34,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:38:34,955.955 INFO    ] Initializing speech engine...
[2026-10-18 17:38:34,970.970 INFO    ] 2026-10-18 17:38:34
[2026-10-18 17:38:35,264.264 INFO    ] 2026-10-18 17:38:35
[2026-10-18 17:38:35,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:38:35,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:38:35,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:38:35,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:38:35,809.809 INFO    ] time= 18/10/2026 17:38:35
[2026-10-18 17:38:35,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:38:35,849.849 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:38:35,974.974 INFO    ] No existing commands found in stream
[2026-10-18 17:38:41,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:38:41,025.025 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-18 17:38:44,704.704 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:38:44,708.708 INFO    ] Checking for system updates...
[2026-10-18 17:38:44,745.745 INFO    ] 200
[2026-10-18 17:38:44,748.748 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:38:44,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:38:44,805.805 INFO    ] No update needed
[2026-10-18 17:38:44,808.808 INFO    ] Checking for camera pi updates...
[2026-10-18 17:38:44,848.848 INFO    ] 200
[2026-10-18 17:38:44,850.850 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:38:44,902.902 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:38:54,918.918 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:38:54,959.959 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:38:54,971.971 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:38:54,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:38:54,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:38:54,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:38:57,027.027 INFO    ] ================================================
[2026-10-18 17:38:57,043.043 INFO    ] Launching Daemon at Sun Oct 18 17:38:57 IST 2026
[2026-10-18 17:38:57,054.054 INFO    ] ================================================
[2026-10-18 17:38:57,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:38:57
[2026-10-18 17:38:58,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:38:58,499.499 INFO    ] Initializing speech engine...
[2026-10-18 17:38:58,515.515 INFO    ] 2026-10-18 17:38:58
[2026-10-18 17:38:58,770.770 INFO    ] 2026-10-18 17:38:58
[2026-10-18 17:38:58,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:38:59,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:38:59,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:38:59,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:38:59,324.324 INFO    ] time= 18/10/2026 17:38:59
[2026-10-18 17:38:59,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:38:59,349.349 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:38:59,475.475 INFO    ] No existing commands found in stream
[2026-10-18 17:39:04,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:39:04,493.493 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-18 17:39:06,954.954 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:39:06,956.956 INFO    ] Checking for system updates...
[2026-10-18 17:39:06,996.996 INFO    ] 200
[2026-10-18 17:39:06,998.998 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:39:07,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:39:07,052.052 INFO    ] No update needed
[2026-10-18 17:39:07,055.055 INFO    ] Checking for camera pi updates...
[2026-10-18 17:39:07,094.094 INFO    ] 200
[2026-10-18 17:39:07,097.097 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:39:07,138.138 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:39:17,153.153 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:39:17,187.187 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:39:17,197.197 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:39:17,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:39:17,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:39:17,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:39:19,250.250 INFO    ] ================================================
[2026-10-18 17:39:19,265.265 INFO    ] Launching Daemon at Sun Oct 18 17:39:19 IST 2026
[2026-10-18 17:39:19,276.276 INFO    ] ================================================
[2026-10-18 17:39:19,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:39:19
[2026-10-18 17:39:20,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:39:20,876.876 INFO    ] Initializing speech engine...
[2026-10-18 17:39:20,883.883 INFO    ] 2026-10-18 17:39:20
[2026-10-18 17:39:21,172.172 INFO    ] 2026-10-18 17:39:21
[2026-10-18 17:39:21,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:39:21,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:39:21,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:39:21,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:39:21,714.714 INFO    ] time= 18/10/2026 17:39:21
[2026-10-18 17:39:21,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:39:21,751.751 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:39:21,920.920 INFO    ] No existing commands found in stream
[2026-10-18 17:39:26,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:39:26,955.955 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-18 17:39:30,117.117 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:39:30,120.120 INFO    ] Checking for system updates...
[2026-10-18 17:39:30,157.157 INFO    ] 200
[2026-10-18 17:39:30,160.160 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:39:30,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:39:30,222.222 INFO    ] No update needed
[2026-10-18 17:39:30,225.225 INFO    ] Checking for camera pi updates...
[2026-10-18 17:39:30,263.263 INFO    ] 200
[2026-10-18 17:39:30,266.266 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:39:30,315.315 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:39:40,331.331 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:39:40,370.370 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:39:40,381.381 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:39:40,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:39:40,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:39:40,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:39:42,435.435 INFO    ] ================================================
[2026-10-18 17:39:42,451.451 INFO    ] Launching Daemon at Sun Oct 18 17:39:42 IST 2026
[2026-10-18 17:39:42,463.463 INFO    ] ================================================
[2026-10-18 17:39:43,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:39:43
[2026-10-18 17:39:43,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:39:43,900.900 INFO    ] Initializing speech engine...
[2026-10-18 17:39:43,916.916 INFO    ] 2026-10-18 17:39:43
[2026-10-18 17:39:44,185.185 INFO    ] 2026-10-18 17:39:44
[2026-10-18 17:39:44,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:39:44,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:39:44,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:39:44,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:39:44,672.672 INFO    ] time= 18/10/2026 17:39:44
[2026-10-18 17:39:44,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:39:44,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:39:44,945.945 INFO    ] No existing commands found in stream
[2026-10-18 17:39:49,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:39:49,981.981 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-18 17:39:53,724.724 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:39:53,727.727 INFO    ] Checking for system updates...
[2026-10-18 17:39:53,771.771 INFO    ] 200
[2026-10-18 17:39:53,774.774 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:39:53,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:39:53,847.847 INFO    ] No update needed
[2026-10-18 17:39:53,851.851 INFO    ] Checking for camera pi updates...
[2026-10-18 17:39:53,888.888 INFO    ] 200
[2026-10-18 17:39:53,891.891 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:39:53,935.935 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:40:03,950.950 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:40:03,990.990 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:40:04,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:40:04,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:40:04,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:40:04,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:40:06,060.060 INFO    ] ================================================
[2026-10-18 17:40:06,076.076 INFO    ] Launching Daemon at Sun Oct 18 17:40:06 IST 2026
[2026-10-18 17:40:06,087.087 INFO    ] ================================================
[2026-10-18 17:40:06,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:40:06
[2026-10-18 17:40:07,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:40:07,687.687 INFO    ] Initializing speech engine...
[2026-10-18 17:40:07,696.696 INFO    ] 2026-10-18 17:40:07
[2026-10-18 17:40:07,949.949 INFO    ] 2026-10-18 17:40:07
[2026-10-18 17:40:07,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:40:08,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:40:08,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:40:08,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:40:08,465.465 INFO    ] time= 18/10/2026 17:40:08
[2026-10-18 17:40:08,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:40:08,526.526 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:40:08,676.676 INFO    ] No existing commands found in stream
[2026-10-18 17:40:13,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:40:13,698.698 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-18 17:40:16,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:40:16,968.968 INFO    ] Checking for system updates...
[2026-10-18 17:40:17,009.009 INFO    ] 200
[2026-10-18 17:40:17,012.012 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:40:17,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:40:17,069.069 INFO    ] No update needed
[2026-10-18 17:40:17,072.072 INFO    ] Checking for camera pi updates...
[2026-10-18 17:40:17,110.110 INFO    ] 200
[2026-10-18 17:40:17,113.113 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:40:17,160.160 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:40:27,177.177 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:40:27,217.217 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:40:27,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:40:27,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:40:27,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:40:27,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:40:29,285.285 INFO    ] ================================================
[2026-10-18 17:40:29,301.301 INFO    ] Launching Daemon at Sun Oct 18 17:40:29 IST 2026
[2026-10-18 17:40:29,312.312 INFO    ] ================================================
[2026-10-18 17:40:29,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:40:29
[2026-10-18 17:40:30,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:40:30,942.942 INFO    ] Initializing speech engine...
[2026-10-18 17:40:30,949.949 INFO    ] 2026-10-18 17:40:30
[2026-10-18 17:40:31,222.222 INFO    ] 2026-10-18 17:40:31
[2026-10-18 17:40:31,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:40:31,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:40:31,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:40:31,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:40:31,743.743 INFO    ] time= 18/10/2026 17:40:31
[2026-10-18 17:40:31,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:40:31,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:40:32,046.046 INFO    ] No existing commands found in stream
[2026-10-18 17:40:37,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:40:37,064.064 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-18 17:40:38,931.931 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:40:38,933.933 INFO    ] Checking for system updates...
[2026-10-18 17:40:38,970.970 INFO    ] 200
[2026-10-18 17:40:38,972.972 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:40:39,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:40:39,030.030 INFO    ] No update needed
[2026-10-18 17:40:39,032.032 INFO    ] Checking for camera pi updates...
[2026-10-18 17:40:39,071.071 INFO    ] 200
[2026-10-18 17:40:39,074.074 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:40:39,120.120 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:40:49,136.136 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:40:49,177.177 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:40:49,188.188 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:40:49,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:40:49,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:40:49,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:40:51,243.243 INFO    ] ================================================
[2026-10-18 17:40:51,258.258 INFO    ] Launching Daemon at Sun Oct 18 17:40:51 IST 2026
[2026-10-18 17:40:51,269.269 INFO    ] ================================================
[2026-10-18 17:40:51,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:40:51
[2026-10-18 17:40:52,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:40:52,852.852 INFO    ] Initializing speech engine...
[2026-10-18 17:40:52,866.866 INFO    ] 2026-10-18 17:40:52
[2026-10-18 17:40:53,158.158 INFO    ] 2026-10-18 17:40:53
[2026-10-18 17:40:53,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:40:53,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:40:53,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:40:53,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:40:53,715.715 INFO    ] time= 18/10/2026 17:40:53
[2026-10-18 17:40:53,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:40:53,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:40:53,881.881 INFO    ] No existing commands found in stream
[2026-10-18 17:40:58,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:40:58,916.916 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-18 17:40:59,418.418 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:40:59,421.421 INFO    ] Checking for system updates...
[2026-10-18 17:40:59,462.462 INFO    ] 200
[2026-10-18 17:40:59,465.465 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:40:59,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:40:59,524.524 INFO    ] No update needed
[2026-10-18 17:40:59,527.527 INFO    ] Checking for camera pi updates...
[2026-10-18 17:40:59,561.561 INFO    ] 200
[2026-10-18 17:40:59,564.564 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:40:59,604.604 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:41:09,618.618 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:41:09,653.653 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:41:09,662.662 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:41:09,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:41:09,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:41:09,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:41:11,715.715 INFO    ] ================================================
[2026-10-18 17:41:11,734.734 INFO    ] Launching Daemon at Sun Oct 18 17:41:11 IST 2026
[2026-10-18 17:41:11,745.745 INFO    ] ================================================
[2026-10-18 17:41:12,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:41:12
[2026-10-18 17:41:13,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:41:13,343.343 INFO    ] Initializing speech engine...
[2026-10-18 17:41:13,351.351 INFO    ] 2026-10-18 17:41:13
[2026-10-18 17:41:13,633.633 INFO    ] 2026-10-18 17:41:13
[2026-10-18 17:41:13,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:41:13,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:41:13,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:41:14,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:41:14,188.188 INFO    ] time= 18/10/2026 17:41:14
[2026-10-18 17:41:14,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:41:14,226.226 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:41:14,355.355 INFO    ] No existing commands found in stream
[2026-10-18 17:41:19,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:41:19,385.385 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-18 17:41:22,727.727 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:41:22,730.730 INFO    ] Checking for system updates...
[2026-10-18 17:41:22,767.767 INFO    ] 200
[2026-10-18 17:41:22,769.769 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:41:22,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:41:22,828.828 INFO    ] No update needed
[2026-10-18 17:41:22,831.831 INFO    ] Checking for camera pi updates...
[2026-10-18 17:41:22,864.864 INFO    ] 200
[2026-10-18 17:41:22,866.866 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:41:22,908.908 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:41:32,922.922 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:41:32,961.961 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:41:32,972.972 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:41:32,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:41:32,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:41:32,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:41:35,028.028 INFO    ] ================================================
[2026-10-18 17:41:35,045.045 INFO    ] Launching Daemon at Sun Oct 18 17:41:35 IST 2026
[2026-10-18 17:41:35,056.056 INFO    ] ================================================
[2026-10-18 17:41:35,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:41:35
[2026-10-18 17:41:36,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:41:36,454.454 INFO    ] Initializing speech engine...
[2026-10-18 17:41:36,473.473 INFO    ] 2026-10-18 17:41:36
[2026-10-18 17:41:36,731.731 INFO    ] 2026-10-18 17:41:36
[2026-10-18 17:41:36,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:41:37,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:41:37,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:41:37,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:41:37,225.225 INFO    ] time= 18/10/2026 17:41:37
[2026-10-18 17:41:37,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:41:37,293.293 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:41:37,440.440 INFO    ] No existing commands found in stream
[2026-10-18 17:41:42,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:41:42,462.462 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-18 17:41:46,637.637 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 17:41:46,640.640 INFO    ] Checking for system updates...
[2026-10-18 17:41:46,679.679 INFO    ] 200
[2026-10-18 17:41:46,681.681 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:41:46,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:41:46,738.738 INFO    ] No update needed
[2026-10-18 17:41:46,741.741 INFO    ] Checking for camera pi updates...
[2026-10-18 17:41:46,774.774 INFO    ] 200
[2026-10-18 17:41:46,776.776 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:41:46,817.817 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:41:56,833.833 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:41:56,867.867 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:41:56,877.877 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:41:56,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:41:56,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:41:56,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:41:58,931.931 INFO    ] ================================================
[2026-10-18 17:41:58,947.947 INFO    ] Launching Daemon at Sun Oct 18 17:41:58 IST 2026
[2026-10-18 17:41:58,958.958 INFO    ] ================================================
[2026-10-18 17:41:59,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:41:59
[2026-10-18 17:42:00,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:42:00,419.419 INFO    ] Initializing speech engine...
[2026-10-18 17:42:00,427.427 INFO    ] 2026-10-18 17:42:00
[2026-10-18 17:42:00,690.690 INFO    ] 2026-10-18 17:42:00
[2026-10-18 17:42:00,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:42:00,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:42:00,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:42:01,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:42:01,198.198 INFO    ] time= 18/10/2026 17:42:01
[2026-10-18 17:42:01,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:42:01,311.311 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:42:01,437.437 INFO    ] No existing commands found in stream
[2026-10-18 17:42:06,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:42:06,450.450 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-18 17:42:10,607.607 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:42:10,610.610 INFO    ] Checking for system updates...
[2026-10-18 17:42:10,645.645 INFO    ] 200
[2026-10-18 17:42:10,648.648 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:42:10,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:42:10,707.707 INFO    ] No update needed
[2026-10-18 17:42:10,710.710 INFO    ] Checking for camera pi updates...
[2026-10-18 17:42:10,743.743 INFO    ] 200
[2026-10-18 17:42:10,746.746 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:42:10,794.794 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:42:20,809.809 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:42:20,844.844 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:42:20,853.853 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:42:20,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:42:20,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:42:20,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:42:22,907.907 INFO    ] ================================================
[2026-10-18 17:42:22,923.923 INFO    ] Launching Daemon at Sun Oct 18 17:42:22 IST 2026
[2026-10-18 17:42:22,934.934 INFO    ] ================================================
[2026-10-18 17:42:23,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:42:23
[2026-10-18 17:42:24,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:42:24,378.378 INFO    ] Initializing speech engine...
[2026-10-18 17:42:24,385.385 INFO    ] 2026-10-18 17:42:24
[2026-10-18 17:42:24,675.675 INFO    ] 2026-10-18 17:42:24
[2026-10-18 17:42:24,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:42:24,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:42:24,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:42:25,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:42:25,196.196 INFO    ] time= 18/10/2026 17:42:25
[2026-10-18 17:42:25,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:42:25,306.306 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:42:25,474.474 INFO    ] No existing commands found in stream
[2026-10-18 17:42:30,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:42:30,491.491 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-18 17:42:36,003.003 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 17:42:36,006.006 INFO    ] Checking for system updates...
[2026-10-18 17:42:36,042.042 INFO    ] 200
[2026-10-18 17:42:36,045.045 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:42:36,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:42:36,106.106 INFO    ] No update needed
[2026-10-18 17:42:36,108.108 INFO    ] Checking for camera pi updates...
[2026-10-18 17:42:36,142.142 INFO    ] 200
[2026-10-18 17:42:36,145.145 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:42:36,185.185 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:42:46,200.200 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:42:46,236.236 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:42:46,246.246 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:42:46,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:42:46,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:42:46,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:42:48,299.299 INFO    ] ================================================
[2026-10-18 17:42:48,314.314 INFO    ] Launching Daemon at Sun Oct 18 17:42:48 IST 2026
[2026-10-18 17:42:48,325.325 INFO    ] ================================================
[2026-10-18 17:42:48,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:42:48
[2026-10-18 17:42:49,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:42:49,941.941 INFO    ] Initializing speech engine...
[2026-10-18 17:42:49,952.952 INFO    ] 2026-10-18 17:42:49
[2026-10-18 17:42:50,233.233 INFO    ] 2026-10-18 17:42:50
[2026-10-18 17:42:50,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:42:50,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:42:50,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:42:50,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:42:50,793.793 INFO    ] time= 18/10/2026 17:42:50
[2026-10-18 17:42:50,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:42:50,834.834 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:42:50,967.967 INFO    ] No existing commands found in stream
[2026-10-18 17:42:55,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:42:55,996.996 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-18 17:42:58,636.636 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:42:58,639.639 INFO    ] Checking for system updates...
[2026-10-18 17:42:58,681.681 INFO    ] 200
[2026-10-18 17:42:58,684.684 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:42:58,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:42:58,745.745 INFO    ] No update needed
[2026-10-18 17:42:58,748.748 INFO    ] Checking for camera pi updates...
[2026-10-18 17:42:58,782.782 INFO    ] 200
[2026-10-18 17:42:58,785.785 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:42:58,828.828 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:43:08,840.840 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:43:08,882.882 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:43:08,893.893 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:43:08,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:43:08,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:43:08,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:43:10,950.950 INFO    ] ================================================
[2026-10-18 17:43:10,967.967 INFO    ] Launching Daemon at Sun Oct 18 17:43:10 IST 2026
[2026-10-18 17:43:10,977.977 INFO    ] ================================================
[2026-10-18 17:43:11,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:43:11
[2026-10-18 17:43:12,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:43:12,609.609 INFO    ] Initializing speech engine...
[2026-10-18 17:43:12,618.618 INFO    ] 2026-10-18 17:43:12
[2026-10-18 17:43:12,883.883 INFO    ] 2026-10-18 17:43:12
[2026-10-18 17:43:12,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:43:13,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:43:13,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:43:13,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:43:13,429.429 INFO    ] time= 18/10/2026 17:43:13
[2026-10-18 17:43:13,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:43:13,477.477 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:43:13,602.602 INFO    ] No existing commands found in stream
[2026-10-18 17:43:18,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:43:18,630.630 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-18 17:43:22,372.372 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:43:22,375.375 INFO    ] Checking for system updates...
[2026-10-18 17:43:22,411.411 INFO    ] 200
[2026-10-18 17:43:22,413.413 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:43:22,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:43:22,469.469 INFO    ] No update needed
[2026-10-18 17:43:22,472.472 INFO    ] Checking for camera pi updates...
[2026-10-18 17:43:22,509.509 INFO    ] 200
[2026-10-18 17:43:22,512.512 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:43:22,554.554 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:43:32,568.568 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:43:32,606.606 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:43:32,617.617 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:43:32,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:43:32,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:43:32,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:43:34,674.674 INFO    ] ================================================
[2026-10-18 17:43:34,690.690 INFO    ] Launching Daemon at Sun Oct 18 17:43:34 IST 2026
[2026-10-18 17:43:34,701.701 INFO    ] ================================================
[2026-10-18 17:43:35,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:43:35
[2026-10-18 17:43:35,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:43:36,120.120 INFO    ] Initializing speech engine...
[2026-10-18 17:43:36,136.136 INFO    ] 2026-10-18 17:43:36
[2026-10-18 17:43:36,422.422 INFO    ] 2026-10-18 17:43:36
[2026-10-18 17:43:36,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:43:36,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:43:36,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:43:36,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:43:36,929.929 INFO    ] time= 18/10/2026 17:43:36
[2026-10-18 17:43:36,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:43:37,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:43:37,104.104 INFO    ] No existing commands found in stream
[2026-10-18 17:43:42,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:43:42,120.120 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-18 17:43:44,827.827 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:43:44,829.829 INFO    ] Checking for system updates...
[2026-10-18 17:43:44,870.870 INFO    ] 200
[2026-10-18 17:43:44,873.873 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:43:44,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:43:44,935.935 INFO    ] No update needed
[2026-10-18 17:43:44,937.937 INFO    ] Checking for camera pi updates...
[2026-10-18 17:43:44,975.975 INFO    ] 200
[2026-10-18 17:43:44,978.978 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:43:45,017.017 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:43:55,032.032 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:43:55,068.068 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:43:55,077.077 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:43:55,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:43:55,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:43:55,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:43:57,130.130 INFO    ] ================================================
[2026-10-18 17:43:57,147.147 INFO    ] Launching Daemon at Sun Oct 18 17:43:57 IST 2026
[2026-10-18 17:43:57,157.157 INFO    ] ================================================
[2026-10-18 17:43:57,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:43:57
[2026-10-18 17:43:58,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:43:58,611.611 INFO    ] Initializing speech engine...
[2026-10-18 17:43:58,619.619 INFO    ] 2026-10-18 17:43:58
[2026-10-18 17:43:58,876.876 INFO    ] 2026-10-18 17:43:58
[2026-10-18 17:43:58,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:43:59,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:43:59,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:43:59,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:43:59,364.364 INFO    ] time= 18/10/2026 17:43:59
[2026-10-18 17:43:59,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:43:59,428.428 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:43:59,574.574 INFO    ] No existing commands found in stream
[2026-10-18 17:44:04,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:44:04,596.596 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-18 17:44:05,529.529 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 17:44:05,532.532 INFO    ] Checking for system updates...
[2026-10-18 17:44:05,571.571 INFO    ] 200
[2026-10-18 17:44:05,574.574 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:44:05,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:44:05,630.630 INFO    ] No update needed
[2026-10-18 17:44:05,632.632 INFO    ] Checking for camera pi updates...
[2026-10-18 17:44:05,665.665 INFO    ] 200
[2026-10-18 17:44:05,668.668 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:44:05,712.712 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:44:15,727.727 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:44:15,762.762 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:44:15,772.772 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:44:15,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:44:15,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:44:15,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:44:17,825.825 INFO    ] ================================================
[2026-10-18 17:44:17,840.840 INFO    ] Launching Daemon at Sun Oct 18 17:44:17 IST 2026
[2026-10-18 17:44:17,852.852 INFO    ] ================================================
[2026-10-18 17:44:18,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:44:18
[2026-10-18 17:44:19,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:44:19,295.295 INFO    ] Initializing speech engine...
[2026-10-18 17:44:19,303.303 INFO    ] 2026-10-18 17:44:19
[2026-10-18 17:44:19,599.599 INFO    ] 2026-10-18 17:44:19
[2026-10-18 17:44:19,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:44:19,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:44:19,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:44:20,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:44:20,019.019 INFO    ] time= 18/10/2026 17:44:20
[2026-10-18 17:44:20,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:44:20,059.059 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:44:20,194.194 INFO    ] No existing commands found in stream
[2026-10-18 17:44:25,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:44:25,227.227 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-18 17:44:27,041.041 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:44:27,044.044 INFO    ] Checking for system updates...
[2026-10-18 17:44:27,084.084 INFO    ] 200
[2026-10-18 17:44:27,086.086 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:44:27,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:44:27,142.142 INFO    ] No update needed
[2026-10-18 17:44:27,144.144 INFO    ] Checking for camera pi updates...
[2026-10-18 17:44:27,177.177 INFO    ] 200
[2026-10-18 17:44:27,180.180 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:44:27,225.225 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:44:37,241.241 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:44:37,276.276 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:44:37,286.286 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:44:37,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:44:37,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:44:37,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:44:39,338.338 INFO    ] ================================================
[2026-10-18 17:44:39,354.354 INFO    ] Launching Daemon at Sun Oct 18 17:44:39 IST 2026
[2026-10-18 17:44:39,365.365 INFO    ] ================================================
[2026-10-18 17:44:40,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:44:40
[2026-10-18 17:44:40,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:44:40,998.998 INFO    ] Initializing speech engine...
[2026-10-18 17:44:41,012.012 INFO    ] 2026-10-18 17:44:41
[2026-10-18 17:44:41,326.326 INFO    ] 2026-10-18 17:44:41
[2026-10-18 17:44:41,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:44:41,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:44:41,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:44:41,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:44:41,848.848 INFO    ] time= 18/10/2026 17:44:41
[2026-10-18 17:44:41,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:44:41,891.891 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:44:42,009.009 INFO    ] No existing commands found in stream
[2026-10-18 17:44:47,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:44:47,052.052 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-18 17:44:50,266.266 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:44:50,269.269 INFO    ] Checking for system updates...
[2026-10-18 17:44:50,310.310 INFO    ] 200
[2026-10-18 17:44:50,312.312 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:44:50,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:44:50,373.373 INFO    ] No update needed
[2026-10-18 17:44:50,376.376 INFO    ] Checking for camera pi updates...
[2026-10-18 17:44:50,412.412 INFO    ] 200
[2026-10-18 17:44:50,415.415 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:44:50,460.460 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:45:00,475.475 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:45:00,510.510 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:45:00,520.520 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:45:00,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:45:00,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:45:00,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:45:02,584.584 INFO    ] ================================================
[2026-10-18 17:45:02,607.607 INFO    ] Launching Daemon at Sun Oct 18 17:45:02 IST 2026
[2026-10-18 17:45:02,620.620 INFO    ] ================================================
[2026-10-18 17:45:03,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:45:03
[2026-10-18 17:45:03,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:45:04,224.224 INFO    ] Initializing speech engine...
[2026-10-18 17:45:04,231.231 INFO    ] 2026-10-18 17:45:04
[2026-10-18 17:45:04,494.494 INFO    ] 2026-10-18 17:45:04
[2026-10-18 17:45:04,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:45:04,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:45:04,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:45:05,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:45:05,038.038 INFO    ] time= 18/10/2026 17:45:05
[2026-10-18 17:45:05,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:45:05,065.065 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:45:05,194.194 INFO    ] No existing commands found in stream
[2026-10-18 17:45:10,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:45:10,209.209 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-18 17:45:13,795.795 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:45:13,798.798 INFO    ] Checking for system updates...
[2026-10-18 17:45:13,838.838 INFO    ] 200
[2026-10-18 17:45:13,841.841 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:45:13,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:45:13,903.903 INFO    ] No update needed
[2026-10-18 17:45:13,905.905 INFO    ] Checking for camera pi updates...
[2026-10-18 17:45:13,940.940 INFO    ] 200
[2026-10-18 17:45:13,943.943 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:45:13,984.984 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:45:24,001.001 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:45:24,041.041 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:45:24,052.052 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:45:24,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:45:24,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:45:24,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:45:26,108.108 INFO    ] ================================================
[2026-10-18 17:45:26,124.124 INFO    ] Launching Daemon at Sun Oct 18 17:45:26 IST 2026
[2026-10-18 17:45:26,135.135 INFO    ] ================================================
[2026-10-18 17:45:26,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:45:26
[2026-10-18 17:45:27,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:45:27,784.784 INFO    ] Initializing speech engine...
[2026-10-18 17:45:27,797.797 INFO    ] 2026-10-18 17:45:27
[2026-10-18 17:45:28,084.084 INFO    ] 2026-10-18 17:45:28
[2026-10-18 17:45:28,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:45:28,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:45:28,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:45:28,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:45:28,633.633 INFO    ] time= 18/10/2026 17:45:28
[2026-10-18 17:45:28,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:45:28,661.661 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:45:28,797.797 INFO    ] No existing commands found in stream
[2026-10-18 17:45:33,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:45:33,823.823 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-18 17:45:38,001.001 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:45:38,004.004 INFO    ] Checking for system updates...
[2026-10-18 17:45:38,045.045 INFO    ] 200
[2026-10-18 17:45:38,048.048 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:45:38,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:45:38,105.105 INFO    ] No update needed
[2026-10-18 17:45:38,108.108 INFO    ] Checking for camera pi updates...
[2026-10-18 17:45:38,142.142 INFO    ] 200
[2026-10-18 17:45:38,145.145 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:45:38,190.190 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:45:48,205.205 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:45:48,244.244 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:45:48,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:45:48,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:45:48,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:45:48,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:45:50,310.310 INFO    ] ================================================
[2026-10-18 17:45:50,328.328 INFO    ] Launching Daemon at Sun Oct 18 17:45:50 IST 2026
[2026-10-18 17:45:50,339.339 INFO    ] ================================================
[2026-10-18 17:45:50,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:45:50
[2026-10-18 17:45:51,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:45:51,957.957 INFO    ] Initializing speech engine...
[2026-10-18 17:45:51,971.971 INFO    ] 2026-10-18 17:45:51
[2026-10-18 17:45:52,251.251 INFO    ] 2026-10-18 17:45:52
[2026-10-18 17:45:52,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:45:52,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:45:52,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:45:52,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:45:52,802.802 INFO    ] time= 18/10/2026 17:45:52
[2026-10-18 17:45:52,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:45:52,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:45:52,978.978 INFO    ] No existing commands found in stream
[2026-10-18 17:45:58,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:45:58,012.012 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-18 17:46:01,909.909 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:46:01,912.912 INFO    ] Checking for system updates...
[2026-10-18 17:46:01,952.952 INFO    ] 200
[2026-10-18 17:46:01,955.955 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:46:02,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:46:02,043.043 INFO    ] No update needed
[2026-10-18 17:46:02,073.073 INFO    ] Checking for camera pi updates...
[2026-10-18 17:46:02,139.139 INFO    ] 200
[2026-10-18 17:46:02,143.143 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:46:02,227.227 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:46:12,243.243 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:46:12,284.284 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:46:12,295.295 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:46:12,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:46:12,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:46:12,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:46:14,350.350 INFO    ] ================================================
[2026-10-18 17:46:14,367.367 INFO    ] Launching Daemon at Sun Oct 18 17:46:14 IST 2026
[2026-10-18 17:46:14,377.377 INFO    ] ================================================
[2026-10-18 17:46:15,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:46:15
[2026-10-18 17:46:15,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:46:16,034.034 INFO    ] Initializing speech engine...
[2026-10-18 17:46:16,047.047 INFO    ] 2026-10-18 17:46:16
[2026-10-18 17:46:16,332.332 INFO    ] 2026-10-18 17:46:16
[2026-10-18 17:46:16,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:46:16,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:46:16,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:46:16,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:46:16,878.878 INFO    ] time= 18/10/2026 17:46:16
[2026-10-18 17:46:16,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:46:16,915.915 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:46:17,033.033 INFO    ] No existing commands found in stream
[2026-10-18 17:46:22,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:46:22,062.062 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-18 17:46:25,381.381 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:46:25,384.384 INFO    ] Checking for system updates...
[2026-10-18 17:46:25,421.421 INFO    ] 200
[2026-10-18 17:46:25,424.424 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:46:25,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:46:25,483.483 INFO    ] No update needed
[2026-10-18 17:46:25,486.486 INFO    ] Checking for camera pi updates...
[2026-10-18 17:46:25,521.521 INFO    ] 200
[2026-10-18 17:46:25,523.523 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:46:25,569.569 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:46:35,583.583 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:46:35,621.621 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:46:35,631.631 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:46:35,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:46:35,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:46:35,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:46:37,687.687 INFO    ] ================================================
[2026-10-18 17:46:37,703.703 INFO    ] Launching Daemon at Sun Oct 18 17:46:37 IST 2026
[2026-10-18 17:46:37,714.714 INFO    ] ================================================
[2026-10-18 17:46:38,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:46:38
[2026-10-18 17:46:38,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:46:39,246.246 INFO    ] Initializing speech engine...
[2026-10-18 17:46:39,255.255 INFO    ] 2026-10-18 17:46:39
[2026-10-18 17:46:39,531.531 INFO    ] 2026-10-18 17:46:39
[2026-10-18 17:46:39,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:46:39,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:46:39,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:46:39,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:46:40,050.050 INFO    ] time= 18/10/2026 17:46:39
[2026-10-18 17:46:40,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:46:40,132.132 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:46:40,281.281 INFO    ] No existing commands found in stream
[2026-10-18 17:46:45,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:46:45,313.313 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-18 17:46:47,333.333 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:46:47,337.337 INFO    ] Checking for system updates...
[2026-10-18 17:46:47,373.373 INFO    ] 200
[2026-10-18 17:46:47,376.376 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:46:47,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:46:47,432.432 INFO    ] No update needed
[2026-10-18 17:46:47,435.435 INFO    ] Checking for camera pi updates...
[2026-10-18 17:46:47,468.468 INFO    ] 200
[2026-10-18 17:46:47,470.470 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:46:47,510.510 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:46:57,525.525 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:46:57,560.560 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:46:57,570.570 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:46:57,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:46:57,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:46:57,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:46:59,622.622 INFO    ] ================================================
[2026-10-18 17:46:59,639.639 INFO    ] Launching Daemon at Sun Oct 18 17:46:59 IST 2026
[2026-10-18 17:46:59,650.650 INFO    ] ================================================
[2026-10-18 17:47:00,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:47:00
[2026-10-18 17:47:00,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:47:01,112.112 INFO    ] Initializing speech engine...
[2026-10-18 17:47:01,119.119 INFO    ] 2026-10-18 17:47:01
[2026-10-18 17:47:01,379.379 INFO    ] 2026-10-18 17:47:01
[2026-10-18 17:47:01,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:47:01,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:47:01,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:47:01,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:47:01,892.892 INFO    ] time= 18/10/2026 17:47:01
[2026-10-18 17:47:01,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:47:01,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:47:02,097.097 INFO    ] No existing commands found in stream
[2026-10-18 17:47:07,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:47:07,133.133 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-18 17:47:10,866.866 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 17:47:10,869.869 INFO    ] Checking for system updates...
[2026-10-18 17:47:10,905.905 INFO    ] 200
[2026-10-18 17:47:10,908.908 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:47:10,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:47:10,962.962 INFO    ] No update needed
[2026-10-18 17:47:10,965.965 INFO    ] Checking for camera pi updates...
[2026-10-18 17:47:10,999.999 INFO    ] 200
[2026-10-18 17:47:11,001.001 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:47:11,044.044 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:47:21,059.059 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:47:21,094.094 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:47:21,104.104 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:47:21,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:47:21,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:47:21,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:47:23,157.157 INFO    ] ================================================
[2026-10-18 17:47:23,172.172 INFO    ] Launching Daemon at Sun Oct 18 17:47:23 IST 2026
[2026-10-18 17:47:23,183.183 INFO    ] ================================================
[2026-10-18 17:47:23,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:47:23
[2026-10-18 17:47:24,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:47:24,649.649 INFO    ] Initializing speech engine...
[2026-10-18 17:47:24,654.654 INFO    ] 2026-10-18 17:47:24
[2026-10-18 17:47:24,918.918 INFO    ] 2026-10-18 17:47:24
[2026-10-18 17:47:24,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:47:25,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:47:25,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:47:25,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:47:25,465.465 INFO    ] time= 18/10/2026 17:47:25
[2026-10-18 17:47:25,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:47:25,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:47:25,620.620 INFO    ] No existing commands found in stream
[2026-10-18 17:47:30,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:47:30,647.647 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-18 17:47:34,562.562 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:47:34,564.564 INFO    ] Checking for system updates...
[2026-10-18 17:47:34,601.601 INFO    ] 200
[2026-10-18 17:47:34,603.603 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:47:34,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:47:34,666.666 INFO    ] No update needed
[2026-10-18 17:47:34,668.668 INFO    ] Checking for camera pi updates...
[2026-10-18 17:47:34,710.710 INFO    ] 200
[2026-10-18 17:47:34,713.713 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:47:34,759.759 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:47:44,774.774 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:47:44,810.810 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:47:44,820.820 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:47:44,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:47:44,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:47:44,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:47:46,873.873 INFO    ] ================================================
[2026-10-18 17:47:46,888.888 INFO    ] Launching Daemon at Sun Oct 18 17:47:46 IST 2026
[2026-10-18 17:47:46,899.899 INFO    ] ================================================
[2026-10-18 17:47:47,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:47:47
[2026-10-18 17:47:48,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:47:48,366.366 INFO    ] Initializing speech engine...
[2026-10-18 17:47:48,373.373 INFO    ] 2026-10-18 17:47:48
[2026-10-18 17:47:48,635.635 INFO    ] 2026-10-18 17:47:48
[2026-10-18 17:47:48,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:47:48,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:47:48,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:47:49,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:47:49,181.181 INFO    ] time= 18/10/2026 17:47:49
[2026-10-18 17:47:49,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:47:49,209.209 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:47:49,339.339 INFO    ] No existing commands found in stream
[2026-10-18 17:47:54,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:47:54,360.360 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-18 17:47:58,608.608 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:47:58,611.611 INFO    ] Checking for system updates...
[2026-10-18 17:47:58,647.647 INFO    ] 200
[2026-10-18 17:47:58,649.649 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:47:58,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:47:58,706.706 INFO    ] No update needed
[2026-10-18 17:47:58,709.709 INFO    ] Checking for camera pi updates...
[2026-10-18 17:47:58,742.742 INFO    ] 200
[2026-10-18 17:47:58,745.745 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:47:58,787.787 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:48:08,801.801 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:48:08,837.837 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:48:08,847.847 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:48:08,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:48:08,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:48:08,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:48:10,901.901 INFO    ] ================================================
[2026-10-18 17:48:10,916.916 INFO    ] Launching Daemon at Sun Oct 18 17:48:10 IST 2026
[2026-10-18 17:48:10,927.927 INFO    ] ================================================
[2026-10-18 17:48:11,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:48:11
[2026-10-18 17:48:12,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:48:12,404.404 INFO    ] Initializing speech engine...
[2026-10-18 17:48:12,410.410 INFO    ] 2026-10-18 17:48:12
[2026-10-18 17:48:12,671.671 INFO    ] 2026-10-18 17:48:12
[2026-10-18 17:48:12,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:48:12,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:48:12,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:48:13,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:48:13,166.166 INFO    ] time= 18/10/2026 17:48:13
[2026-10-18 17:48:13,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:48:13,226.226 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:48:13,377.377 INFO    ] No existing commands found in stream
[2026-10-18 17:48:18,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:48:18,416.416 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-18 17:48:20,031.031 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:48:20,034.034 INFO    ] Checking for system updates...
[2026-10-18 17:48:20,074.074 INFO    ] 200
[2026-10-18 17:48:20,077.077 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:48:20,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:48:20,134.134 INFO    ] No update needed
[2026-10-18 17:48:20,136.136 INFO    ] Checking for camera pi updates...
[2026-10-18 17:48:20,171.171 INFO    ] 200
[2026-10-18 17:48:20,173.173 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:48:20,219.219 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:48:30,234.234 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:48:30,270.270 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:48:30,280.280 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:48:30,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:48:30,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:48:30,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:48:32,334.334 INFO    ] ================================================
[2026-10-18 17:48:32,351.351 INFO    ] Launching Daemon at Sun Oct 18 17:48:32 IST 2026
[2026-10-18 17:48:32,362.362 INFO    ] ================================================
[2026-10-18 17:48:32,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:48:32
[2026-10-18 17:48:33,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:48:33,842.842 INFO    ] Initializing speech engine...
[2026-10-18 17:48:33,852.852 INFO    ] 2026-10-18 17:48:33
[2026-10-18 17:48:34,097.097 INFO    ] 2026-10-18 17:48:34
[2026-10-18 17:48:34,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:48:34,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:48:34,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:48:34,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:48:34,599.599 INFO    ] time= 18/10/2026 17:48:34
[2026-10-18 17:48:34,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:48:34,662.662 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:48:34,810.810 INFO    ] No existing commands found in stream
[2026-10-18 17:48:39,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:48:39,840.840 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-18 17:48:42,202.202 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:48:42,205.205 INFO    ] Checking for system updates...
[2026-10-18 17:48:42,240.240 INFO    ] 200
[2026-10-18 17:48:42,243.243 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:48:42,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:48:42,305.305 INFO    ] No update needed
[2026-10-18 17:48:42,307.307 INFO    ] Checking for camera pi updates...
[2026-10-18 17:48:42,341.341 INFO    ] 200
[2026-10-18 17:48:42,344.344 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:48:42,384.384 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:48:52,400.400 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:48:52,434.434 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:48:52,444.444 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:48:52,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:48:52,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:48:52,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:48:54,499.499 INFO    ] ================================================
[2026-10-18 17:48:54,514.514 INFO    ] Launching Daemon at Sun Oct 18 17:48:54 IST 2026
[2026-10-18 17:48:54,526.526 INFO    ] ================================================
[2026-10-18 17:48:55,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:48:55
[2026-10-18 17:48:55,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:48:55,987.987 INFO    ] Initializing speech engine...
[2026-10-18 17:48:56,001.001 INFO    ] 2026-10-18 17:48:55
[2026-10-18 17:48:56,292.292 INFO    ] 2026-10-18 17:48:56
[2026-10-18 17:48:56,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:48:56,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:48:56,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:48:56,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:48:56,720.720 INFO    ] time= 18/10/2026 17:48:56
[2026-10-18 17:48:56,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:48:56,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:48:56,896.896 INFO    ] No existing commands found in stream
[2026-10-18 17:49:01,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:49:01,924.924 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-18 17:49:03,352.352 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:49:03,358.358 INFO    ] Checking for system updates...
[2026-10-18 17:49:03,400.400 INFO    ] 200
[2026-10-18 17:49:03,402.402 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:49:03,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:49:03,463.463 INFO    ] No update needed
[2026-10-18 17:49:03,466.466 INFO    ] Checking for camera pi updates...
[2026-10-18 17:49:03,505.505 INFO    ] 200
[2026-10-18 17:49:03,507.507 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:49:03,571.571 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:49:13,587.587 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:49:13,621.621 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:49:13,631.631 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:49:13,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:49:13,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:49:13,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:49:15,683.683 INFO    ] ================================================
[2026-10-18 17:49:15,699.699 INFO    ] Launching Daemon at Sun Oct 18 17:49:15 IST 2026
[2026-10-18 17:49:15,709.709 INFO    ] ================================================
[2026-10-18 17:49:16,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:49:16
[2026-10-18 17:49:17,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:49:17,307.307 INFO    ] Initializing speech engine...
[2026-10-18 17:49:17,312.312 INFO    ] 2026-10-18 17:49:17
[2026-10-18 17:49:17,584.584 INFO    ] 2026-10-18 17:49:17
[2026-10-18 17:49:17,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:49:17,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:49:17,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:49:18,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:49:18,092.092 INFO    ] time= 18/10/2026 17:49:18
[2026-10-18 17:49:18,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:49:18,160.160 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:49:18,313.313 INFO    ] No existing commands found in stream
[2026-10-18 17:49:23,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:49:23,345.345 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-18 17:49:27,691.691 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:49:27,694.694 INFO    ] Checking for system updates...
[2026-10-18 17:49:27,734.734 INFO    ] 200
[2026-10-18 17:49:27,737.737 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:49:27,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:49:27,800.800 INFO    ] No update needed
[2026-10-18 17:49:27,803.803 INFO    ] Checking for camera pi updates...
[2026-10-18 17:49:27,838.838 INFO    ] 200
[2026-10-18 17:49:27,840.840 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:49:27,885.885 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:49:37,902.902 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:49:37,942.942 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:49:37,953.953 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:49:37,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:49:37,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:49:37,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:49:40,013.013 INFO    ] ================================================
[2026-10-18 17:49:40,029.029 INFO    ] Launching Daemon at Sun Oct 18 17:49:40 IST 2026
[2026-10-18 17:49:40,040.040 INFO    ] ================================================
[2026-10-18 17:49:40,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:49:40
[2026-10-18 17:49:41,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:49:41,492.492 INFO    ] Initializing speech engine...
[2026-10-18 17:49:41,512.512 INFO    ] 2026-10-18 17:49:41
[2026-10-18 17:49:41,790.790 INFO    ] 2026-10-18 17:49:41
[2026-10-18 17:49:41,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:49:42,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:49:42,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:49:42,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:49:42,290.290 INFO    ] time= 18/10/2026 17:49:42
[2026-10-18 17:49:42,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:49:42,383.383 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:49:42,561.561 INFO    ] No existing commands found in stream
[2026-10-18 17:49:47,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:49:47,586.586 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-18 17:49:50,021.021 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:49:50,024.024 INFO    ] Checking for system updates...
[2026-10-18 17:49:50,059.059 INFO    ] 200
[2026-10-18 17:49:50,062.062 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:49:50,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:49:50,122.122 INFO    ] No update needed
[2026-10-18 17:49:50,125.125 INFO    ] Checking for camera pi updates...
[2026-10-18 17:49:50,159.159 INFO    ] 200
[2026-10-18 17:49:50,161.161 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:49:50,204.204 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:50:00,218.218 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d35150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:50:00,255.255 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:50:00,265.265 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:50:00,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:50:00,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:50:00,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:50:02,388.388 INFO    ] ================================================
[2026-10-18 17:50:02,448.448 INFO    ] Launching Daemon at Sun Oct 18 17:50:02 IST 2026
[2026-10-18 17:50:02,494.494 INFO    ] ================================================
[2026-10-18 17:50:03,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:50:03
[2026-10-18 17:50:04,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:50:04,346.346 INFO    ] Initializing speech engine...
[2026-10-18 17:50:04,370.370 INFO    ] 2026-10-18 17:50:04
[2026-10-18 17:50:04,631.631 INFO    ] 2026-10-18 17:50:04
[2026-10-18 17:50:04,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:50:04,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:50:04,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:50:05,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:50:05,205.205 INFO    ] time= 18/10/2026 17:50:05
[2026-10-18 17:50:05,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:50:05,231.231 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:50:05,365.365 INFO    ] No existing commands found in stream
[2026-10-18 17:50:10,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:50:10,383.383 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-18 17:50:13,293.293 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:50:13,296.296 INFO    ] Checking for system updates...
[2026-10-18 17:50:13,332.332 INFO    ] 200
[2026-10-18 17:50:13,335.335 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:50:13,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:50:13,395.395 INFO    ] No update needed
[2026-10-18 17:50:13,398.398 INFO    ] Checking for camera pi updates...
[2026-10-18 17:50:13,432.432 INFO    ] 200
[2026-10-18 17:50:13,434.434 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:50:13,481.481 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:50:23,497.497 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:50:23,535.535 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:50:23,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:50:23,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:50:23,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:50:23,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:50:25,601.601 INFO    ] ================================================
[2026-10-18 17:50:25,616.616 INFO    ] Launching Daemon at Sun Oct 18 17:50:25 IST 2026
[2026-10-18 17:50:25,627.627 INFO    ] ================================================
[2026-10-18 17:50:26,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:50:26
[2026-10-18 17:50:26,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:50:27,189.189 INFO    ] Initializing speech engine...
[2026-10-18 17:50:27,197.197 INFO    ] 2026-10-18 17:50:27
[2026-10-18 17:50:27,486.486 INFO    ] 2026-10-18 17:50:27
[2026-10-18 17:50:27,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:50:27,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:50:27,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:50:27,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:50:27,945.945 INFO    ] time= 18/10/2026 17:50:27
[2026-10-18 17:50:28,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:50:28,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:50:28,220.220 INFO    ] No existing commands found in stream
[2026-10-18 17:50:33,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:50:33,249.249 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-18 17:50:36,324.324 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:50:36,327.327 INFO    ] Checking for system updates...
[2026-10-18 17:50:36,363.363 INFO    ] 200
[2026-10-18 17:50:36,365.365 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:50:36,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:50:36,419.419 INFO    ] No update needed
[2026-10-18 17:50:36,422.422 INFO    ] Checking for camera pi updates...
[2026-10-18 17:50:36,457.457 INFO    ] 200
[2026-10-18 17:50:36,460.460 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:50:36,502.502 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:50:46,514.514 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:50:46,549.549 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:50:46,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:50:46,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:50:46,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:50:46,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:50:48,610.610 INFO    ] ================================================
[2026-10-18 17:50:48,626.626 INFO    ] Launching Daemon at Sun Oct 18 17:50:48 IST 2026
[2026-10-18 17:50:48,637.637 INFO    ] ================================================
[2026-10-18 17:50:49,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:50:49
[2026-10-18 17:50:49,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:50:50,194.194 INFO    ] Initializing speech engine...
[2026-10-18 17:50:50,203.203 INFO    ] 2026-10-18 17:50:50
[2026-10-18 17:50:50,471.471 INFO    ] 2026-10-18 17:50:50
[2026-10-18 17:50:50,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:50:50,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:50:50,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:50:50,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:50:51,023.023 INFO    ] time= 18/10/2026 17:50:50
[2026-10-18 17:50:51,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:50:51,053.053 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:50:51,189.189 INFO    ] No existing commands found in stream
[2026-10-18 17:50:56,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:50:56,220.220 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-18 17:50:56,756.756 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:50:56,759.759 INFO    ] Checking for system updates...
[2026-10-18 17:50:56,799.799 INFO    ] 200
[2026-10-18 17:50:56,801.801 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:50:56,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:50:56,861.861 INFO    ] No update needed
[2026-10-18 17:50:56,868.868 INFO    ] Checking for camera pi updates...
[2026-10-18 17:50:56,904.904 INFO    ] 200
[2026-10-18 17:50:56,907.907 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:50:56,947.947 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:51:06,964.964 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:51:07,004.004 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:51:07,015.015 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:51:07,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:51:07,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:51:07,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:51:09,070.070 INFO    ] ================================================
[2026-10-18 17:51:09,085.085 INFO    ] Launching Daemon at Sun Oct 18 17:51:09 IST 2026
[2026-10-18 17:51:09,096.096 INFO    ] ================================================
[2026-10-18 17:51:09,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:51:09
[2026-10-18 17:51:10,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:51:10,714.714 INFO    ] Initializing speech engine...
[2026-10-18 17:51:10,722.722 INFO    ] 2026-10-18 17:51:10
[2026-10-18 17:51:11,007.007 INFO    ] 2026-10-18 17:51:10
[2026-10-18 17:51:11,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:51:11,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:51:11,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:51:11,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:51:11,544.544 INFO    ] time= 18/10/2026 17:51:11
[2026-10-18 17:51:11,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:51:11,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:51:11,710.710 INFO    ] No existing commands found in stream
[2026-10-18 17:51:16,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:51:16,744.744 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-18 17:51:20,555.555 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:51:20,558.558 INFO    ] Checking for system updates...
[2026-10-18 17:51:20,594.594 INFO    ] 200
[2026-10-18 17:51:20,598.598 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:51:20,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:51:20,654.654 INFO    ] No update needed
[2026-10-18 17:51:20,657.657 INFO    ] Checking for camera pi updates...
[2026-10-18 17:51:20,695.695 INFO    ] 200
[2026-10-18 17:51:20,699.699 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:51:20,745.745 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:51:30,766.766 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:51:30,807.807 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:51:30,819.819 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:51:30,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:51:30,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:51:30,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:51:32,875.875 INFO    ] ================================================
[2026-10-18 17:51:32,891.891 INFO    ] Launching Daemon at Sun Oct 18 17:51:32 IST 2026
[2026-10-18 17:51:32,902.902 INFO    ] ================================================
[2026-10-18 17:51:33,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:51:33
[2026-10-18 17:51:34,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:51:34,302.302 INFO    ] Initializing speech engine...
[2026-10-18 17:51:34,317.317 INFO    ] 2026-10-18 17:51:34
[2026-10-18 17:51:34,583.583 INFO    ] 2026-10-18 17:51:34
[2026-10-18 17:51:34,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:51:34,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:51:34,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:51:35,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:51:35,081.081 INFO    ] time= 18/10/2026 17:51:35
[2026-10-18 17:51:35,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:51:35,156.156 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:51:35,309.309 INFO    ] No existing commands found in stream
[2026-10-18 17:51:40,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:51:40,323.323 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-18 17:51:42,614.614 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:51:42,617.617 INFO    ] Checking for system updates...
[2026-10-18 17:51:42,657.657 INFO    ] 200
[2026-10-18 17:51:42,659.659 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:51:42,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:51:42,720.720 INFO    ] No update needed
[2026-10-18 17:51:42,723.723 INFO    ] Checking for camera pi updates...
[2026-10-18 17:51:42,756.756 INFO    ] 200
[2026-10-18 17:51:42,759.759 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:51:42,803.803 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:51:52,818.818 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:51:52,852.852 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:51:52,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:51:52,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:51:52,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:51:52,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:51:54,917.917 INFO    ] ================================================
[2026-10-18 17:51:54,933.933 INFO    ] Launching Daemon at Sun Oct 18 17:51:54 IST 2026
[2026-10-18 17:51:54,944.944 INFO    ] ================================================
[2026-10-18 17:51:55,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:51:55
[2026-10-18 17:51:56,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:51:56,369.369 INFO    ] Initializing speech engine...
[2026-10-18 17:51:56,379.379 INFO    ] 2026-10-18 17:51:56
[2026-10-18 17:51:56,624.624 INFO    ] 2026-10-18 17:51:56
[2026-10-18 17:51:56,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:51:56,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:51:56,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:51:57,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:51:57,175.175 INFO    ] time= 18/10/2026 17:51:57
[2026-10-18 17:51:57,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:51:57,200.200 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:51:57,333.333 INFO    ] No existing commands found in stream
[2026-10-18 17:52:02,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:52:02,361.361 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-18 17:52:06,398.398 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:52:06,400.400 INFO    ] Checking for system updates...
[2026-10-18 17:52:06,439.439 INFO    ] 200
[2026-10-18 17:52:06,441.441 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:52:06,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:52:06,500.500 INFO    ] No update needed
[2026-10-18 17:52:06,502.502 INFO    ] Checking for camera pi updates...
[2026-10-18 17:52:06,537.537 INFO    ] 200
[2026-10-18 17:52:06,539.539 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:52:06,579.579 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:52:16,594.594 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:52:16,630.630 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:52:16,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:52:16,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:52:16,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:52:16,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:52:18,692.692 INFO    ] ================================================
[2026-10-18 17:52:18,708.708 INFO    ] Launching Daemon at Sun Oct 18 17:52:18 IST 2026
[2026-10-18 17:52:18,719.719 INFO    ] ================================================
[2026-10-18 17:52:19,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:52:19
[2026-10-18 17:52:20,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:52:20,336.336 INFO    ] Initializing speech engine...
[2026-10-18 17:52:20,345.345 INFO    ] 2026-10-18 17:52:20
[2026-10-18 17:52:20,628.628 INFO    ] 2026-10-18 17:52:20
[2026-10-18 17:52:20,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:52:20,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:52:20,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:52:21,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:52:21,133.133 INFO    ] time= 18/10/2026 17:52:21
[2026-10-18 17:52:21,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:52:21,198.198 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:52:21,343.343 INFO    ] No existing commands found in stream
[2026-10-18 17:52:26,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:52:26,364.364 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-18 17:52:27,543.543 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:52:27,545.545 INFO    ] Checking for system updates...
[2026-10-18 17:52:27,594.594 INFO    ] 200
[2026-10-18 17:52:27,597.597 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:52:27,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:52:27,673.673 INFO    ] No update needed
[2026-10-18 17:52:27,677.677 INFO    ] Checking for camera pi updates...
[2026-10-18 17:52:27,714.714 INFO    ] 200
[2026-10-18 17:52:27,717.717 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:52:27,760.760 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:52:37,774.774 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:52:37,811.811 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:52:37,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:52:37,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:52:37,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:52:37,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:52:39,873.873 INFO    ] ================================================
[2026-10-18 17:52:39,888.888 INFO    ] Launching Daemon at Sun Oct 18 17:52:39 IST 2026
[2026-10-18 17:52:39,899.899 INFO    ] ================================================
[2026-10-18 17:52:40,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:52:40
[2026-10-18 17:52:41,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:52:41,350.350 INFO    ] Initializing speech engine...
[2026-10-18 17:52:41,360.360 INFO    ] 2026-10-18 17:52:41
[2026-10-18 17:52:41,620.620 INFO    ] 2026-10-18 17:52:41
[2026-10-18 17:52:41,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:52:41,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:52:41,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:52:42,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:52:42,136.136 INFO    ] time= 18/10/2026 17:52:42
[2026-10-18 17:52:42,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:52:42,176.176 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:52:42,336.336 INFO    ] No existing commands found in stream
[2026-10-18 17:52:47,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:52:47,366.366 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-18 17:52:49,199.199 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 17:52:49,202.202 INFO    ] Checking for system updates...
[2026-10-18 17:52:49,240.240 INFO    ] 200
[2026-10-18 17:52:49,242.242 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:52:49,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:52:49,302.302 INFO    ] No update needed
[2026-10-18 17:52:49,304.304 INFO    ] Checking for camera pi updates...
[2026-10-18 17:52:49,340.340 INFO    ] 200
[2026-10-18 17:52:49,343.343 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:52:49,387.387 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:52:59,402.402 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:52:59,438.438 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:52:59,448.448 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:52:59,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:52:59,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:52:59,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:53:01,526.526 INFO    ] ================================================
[2026-10-18 17:53:01,551.551 INFO    ] Launching Daemon at Sun Oct 18 17:53:01 IST 2026
[2026-10-18 17:53:01,573.573 INFO    ] ================================================
[2026-10-18 17:53:02,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:53:02
[2026-10-18 17:53:02,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:53:03,182.182 INFO    ] Initializing speech engine...
[2026-10-18 17:53:03,205.205 INFO    ] 2026-10-18 17:53:03
[2026-10-18 17:53:03,505.505 INFO    ] 2026-10-18 17:53:03
[2026-10-18 17:53:03,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:53:03,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:53:03,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:53:04,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:53:04,049.049 INFO    ] time= 18/10/2026 17:53:04
[2026-10-18 17:53:04,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:53:04,073.073 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:53:04,204.204 INFO    ] No existing commands found in stream
[2026-10-18 17:53:09,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:53:09,229.229 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-18 17:53:13,142.142 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 17:53:13,144.144 INFO    ] Checking for system updates...
[2026-10-18 17:53:13,183.183 INFO    ] 200
[2026-10-18 17:53:13,186.186 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:53:13,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:53:13,246.246 INFO    ] No update needed
[2026-10-18 17:53:13,248.248 INFO    ] Checking for camera pi updates...
[2026-10-18 17:53:13,282.282 INFO    ] 200
[2026-10-18 17:53:13,285.285 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:53:13,326.326 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:53:23,341.341 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:53:23,381.381 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:53:23,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:53:23,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:53:23,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:53:23,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:53:25,446.446 INFO    ] ================================================
[2026-10-18 17:53:25,461.461 INFO    ] Launching Daemon at Sun Oct 18 17:53:25 IST 2026
[2026-10-18 17:53:25,472.472 INFO    ] ================================================
[2026-10-18 17:53:26,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:53:26
[2026-10-18 17:53:26,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:53:26,956.956 INFO    ] Initializing speech engine...
[2026-10-18 17:53:26,963.963 INFO    ] 2026-10-18 17:53:26
[2026-10-18 17:53:27,224.224 INFO    ] 2026-10-18 17:53:27
[2026-10-18 17:53:27,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:53:27,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:53:27,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:53:27,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:53:27,773.773 INFO    ] time= 18/10/2026 17:53:27
[2026-10-18 17:53:27,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:53:27,820.820 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:53:27,928.928 INFO    ] No existing commands found in stream
[2026-10-18 17:53:32,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:53:32,960.960 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-18 17:53:33,968.968 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:53:33,971.971 INFO    ] Checking for system updates...
[2026-10-18 17:53:34,010.010 INFO    ] 200
[2026-10-18 17:53:34,012.012 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:53:34,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:53:34,072.072 INFO    ] No update needed
[2026-10-18 17:53:34,075.075 INFO    ] Checking for camera pi updates...
[2026-10-18 17:53:34,108.108 INFO    ] 200
[2026-10-18 17:53:34,111.111 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:53:34,155.155 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:53:44,171.171 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:53:44,206.206 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:53:44,215.215 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:53:44,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:53:44,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:53:44,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:53:46,267.267 INFO    ] ================================================
[2026-10-18 17:53:46,282.282 INFO    ] Launching Daemon at Sun Oct 18 17:53:46 IST 2026
[2026-10-18 17:53:46,293.293 INFO    ] ================================================
[2026-10-18 17:53:46,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:53:46
[2026-10-18 17:53:47,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:53:47,887.887 INFO    ] Initializing speech engine...
[2026-10-18 17:53:47,907.907 INFO    ] 2026-10-18 17:53:47
[2026-10-18 17:53:48,168.168 INFO    ] 2026-10-18 17:53:48
[2026-10-18 17:53:48,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:53:48,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:53:48,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:53:48,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:53:48,726.726 INFO    ] time= 18/10/2026 17:53:48
[2026-10-18 17:53:48,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:53:48,753.753 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:53:48,882.882 INFO    ] No existing commands found in stream
[2026-10-18 17:53:53,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:53:53,905.905 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-18 17:53:58,376.376 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:53:58,379.379 INFO    ] Checking for system updates...
[2026-10-18 17:53:58,416.416 INFO    ] 200
[2026-10-18 17:53:58,419.419 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:53:58,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:53:58,475.475 INFO    ] No update needed
[2026-10-18 17:53:58,478.478 INFO    ] Checking for camera pi updates...
[2026-10-18 17:53:58,515.515 INFO    ] 200
[2026-10-18 17:53:58,519.519 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:53:58,564.564 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:54:08,579.579 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:54:08,613.613 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:54:08,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:54:08,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:54:08,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:54:08,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:54:10,675.675 INFO    ] ================================================
[2026-10-18 17:54:10,691.691 INFO    ] Launching Daemon at Sun Oct 18 17:54:10 IST 2026
[2026-10-18 17:54:10,701.701 INFO    ] ================================================
[2026-10-18 17:54:11,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:54:11
[2026-10-18 17:54:11,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:54:12,265.265 INFO    ] Initializing speech engine...
[2026-10-18 17:54:12,273.273 INFO    ] 2026-10-18 17:54:12
[2026-10-18 17:54:12,556.556 INFO    ] 2026-10-18 17:54:12
[2026-10-18 17:54:12,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:54:12,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:54:12,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:54:13,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:54:13,108.108 INFO    ] time= 18/10/2026 17:54:13
[2026-10-18 17:54:13,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:54:13,157.157 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:54:13,297.297 INFO    ] No existing commands found in stream
[2026-10-18 17:54:18,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:54:18,331.331 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-18 17:54:21,348.348 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:54:21,351.351 INFO    ] Checking for system updates...
[2026-10-18 17:54:21,388.388 INFO    ] 200
[2026-10-18 17:54:21,391.391 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:54:21,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:54:21,451.451 INFO    ] No update needed
[2026-10-18 17:54:21,454.454 INFO    ] Checking for camera pi updates...
[2026-10-18 17:54:21,490.490 INFO    ] 200
[2026-10-18 17:54:21,493.493 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:54:21,537.537 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:54:31,552.552 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:54:31,594.594 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:54:31,606.606 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:54:31,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:54:31,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:54:31,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:54:33,662.662 INFO    ] ================================================
[2026-10-18 17:54:33,678.678 INFO    ] Launching Daemon at Sun Oct 18 17:54:33 IST 2026
[2026-10-18 17:54:33,695.695 INFO    ] ================================================
[2026-10-18 17:54:34,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:54:34
[2026-10-18 17:54:34,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:54:35,190.190 INFO    ] Initializing speech engine...
[2026-10-18 17:54:35,196.196 INFO    ] 2026-10-18 17:54:35
[2026-10-18 17:54:35,454.454 INFO    ] 2026-10-18 17:54:35
[2026-10-18 17:54:35,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:54:35,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:54:35,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:54:35,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:54:36,002.002 INFO    ] time= 18/10/2026 17:54:35
[2026-10-18 17:54:36,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:54:36,028.028 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:54:36,157.157 INFO    ] No existing commands found in stream
[2026-10-18 17:54:41,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:54:41,175.175 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-18 17:54:43,396.396 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:54:43,399.399 INFO    ] Checking for system updates...
[2026-10-18 17:54:43,434.434 INFO    ] 200
[2026-10-18 17:54:43,437.437 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:54:43,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:54:43,499.499 INFO    ] No update needed
[2026-10-18 17:54:43,501.501 INFO    ] Checking for camera pi updates...
[2026-10-18 17:54:43,537.537 INFO    ] 200
[2026-10-18 17:54:43,539.539 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:54:43,583.583 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:54:53,598.598 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:54:53,632.632 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:54:53,642.642 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:54:53,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:54:53,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:54:53,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:54:55,694.694 INFO    ] ================================================
[2026-10-18 17:54:55,709.709 INFO    ] Launching Daemon at Sun Oct 18 17:54:55 IST 2026
[2026-10-18 17:54:55,720.720 INFO    ] ================================================
[2026-10-18 17:54:56,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:54:56
[2026-10-18 17:54:56,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:54:57,282.282 INFO    ] Initializing speech engine...
[2026-10-18 17:54:57,290.290 INFO    ] 2026-10-18 17:54:57
[2026-10-18 17:54:57,566.566 INFO    ] 2026-10-18 17:54:57
[2026-10-18 17:54:57,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:54:57,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:54:57,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:54:57,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:54:58,050.050 INFO    ] time= 18/10/2026 17:54:57
[2026-10-18 17:54:58,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:54:58,116.116 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:54:58,266.266 INFO    ] No existing commands found in stream
[2026-10-18 17:55:03,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:55:03,281.281 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-18 17:55:04,857.857 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:55:04,860.860 INFO    ] Checking for system updates...
[2026-10-18 17:55:04,895.895 INFO    ] 200
[2026-10-18 17:55:04,897.897 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:55:04,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:55:04,953.953 INFO    ] No update needed
[2026-10-18 17:55:04,955.955 INFO    ] Checking for camera pi updates...
[2026-10-18 17:55:04,997.997 INFO    ] 200
[2026-10-18 17:55:04,999.999 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:55:05,043.043 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:55:15,058.058 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:55:15,093.093 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:55:15,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:55:15,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:55:15,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:55:15,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:55:17,154.154 INFO    ] ================================================
[2026-10-18 17:55:17,169.169 INFO    ] Launching Daemon at Sun Oct 18 17:55:17 IST 2026
[2026-10-18 17:55:17,180.180 INFO    ] ================================================
[2026-10-18 17:55:17,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:55:17
[2026-10-18 17:55:18,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:55:18,593.593 INFO    ] Initializing speech engine...
[2026-10-18 17:55:18,611.611 INFO    ] 2026-10-18 17:55:18
[2026-10-18 17:55:18,863.863 INFO    ] 2026-10-18 17:55:18
[2026-10-18 17:55:18,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:55:19,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:55:19,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:55:19,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:55:19,359.359 INFO    ] time= 18/10/2026 17:55:19
[2026-10-18 17:55:19,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:55:19,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:55:19,587.587 INFO    ] No existing commands found in stream
[2026-10-18 17:55:24,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:55:24,606.606 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-18 17:55:25,105.105 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 17:55:25,108.108 INFO    ] Checking for system updates...
[2026-10-18 17:55:25,144.144 INFO    ] 200
[2026-10-18 17:55:25,147.147 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:55:25,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:55:25,202.202 INFO    ] No update needed
[2026-10-18 17:55:25,205.205 INFO    ] Checking for camera pi updates...
[2026-10-18 17:55:25,239.239 INFO    ] 200
[2026-10-18 17:55:25,241.241 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:55:25,285.285 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:55:35,301.301 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:55:35,336.336 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:55:35,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:55:35,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:55:35,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:55:35,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:55:37,398.398 INFO    ] ================================================
[2026-10-18 17:55:37,413.413 INFO    ] Launching Daemon at Sun Oct 18 17:55:37 IST 2026
[2026-10-18 17:55:37,424.424 INFO    ] ================================================
[2026-10-18 17:55:38,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:55:38
[2026-10-18 17:55:38,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:55:39,006.006 INFO    ] Initializing speech engine...
[2026-10-18 17:55:39,013.013 INFO    ] 2026-10-18 17:55:39
[2026-10-18 17:55:39,286.286 INFO    ] 2026-10-18 17:55:39
[2026-10-18 17:55:39,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:55:39,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:55:39,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:55:39,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:55:39,806.806 INFO    ] time= 18/10/2026 17:55:39
[2026-10-18 17:55:39,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:55:39,870.870 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:55:40,010.010 INFO    ] No existing commands found in stream
[2026-10-18 17:55:45,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:55:45,036.036 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-18 17:55:48,855.855 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:55:48,858.858 INFO    ] Checking for system updates...
[2026-10-18 17:55:48,894.894 INFO    ] 200
[2026-10-18 17:55:48,896.896 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:55:48,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:55:48,956.956 INFO    ] No update needed
[2026-10-18 17:55:48,958.958 INFO    ] Checking for camera pi updates...
[2026-10-18 17:55:48,994.994 INFO    ] 200
[2026-10-18 17:55:48,997.997 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:55:49,041.041 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:55:59,052.052 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:55:59,093.093 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:55:59,103.103 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:55:59,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:55:59,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:55:59,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:56:01,156.156 INFO    ] ================================================
[2026-10-18 17:56:01,170.170 INFO    ] Launching Daemon at Sun Oct 18 17:56:01 IST 2026
[2026-10-18 17:56:01,186.186 INFO    ] ================================================
[2026-10-18 17:56:01,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:56:01
[2026-10-18 17:56:02,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:56:03,096.096 INFO    ] Initializing speech engine...
[2026-10-18 17:56:03,108.108 INFO    ] 2026-10-18 17:56:03
[2026-10-18 17:56:03,410.410 INFO    ] 2026-10-18 17:56:03
[2026-10-18 17:56:03,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:56:03,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:56:03,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:56:03,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:56:03,893.893 INFO    ] time= 18/10/2026 17:56:03
[2026-10-18 17:56:03,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:56:03,969.969 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:56:04,117.117 INFO    ] No existing commands found in stream
[2026-10-18 17:56:09,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:56:09,134.134 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-18 17:56:13,402.402 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:56:13,405.405 INFO    ] Checking for system updates...
[2026-10-18 17:56:13,440.440 INFO    ] 200
[2026-10-18 17:56:13,443.443 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:56:13,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:56:13,498.498 INFO    ] No update needed
[2026-10-18 17:56:13,500.500 INFO    ] Checking for camera pi updates...
[2026-10-18 17:56:13,539.539 INFO    ] 200
[2026-10-18 17:56:13,541.541 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:56:13,586.586 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:56:23,601.601 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:56:23,637.637 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:56:23,647.647 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:56:23,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:56:23,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:56:23,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:56:25,701.701 INFO    ] ================================================
[2026-10-18 17:56:25,717.717 INFO    ] Launching Daemon at Sun Oct 18 17:56:25 IST 2026
[2026-10-18 17:56:25,728.728 INFO    ] ================================================
[2026-10-18 17:56:26,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:56:26
[2026-10-18 17:56:26,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:56:27,177.177 INFO    ] Initializing speech engine...
[2026-10-18 17:56:27,195.195 INFO    ] 2026-10-18 17:56:27
[2026-10-18 17:56:27,462.462 INFO    ] 2026-10-18 17:56:27
[2026-10-18 17:56:27,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:56:27,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:56:27,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:56:27,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:56:27,882.882 INFO    ] time= 18/10/2026 17:56:27
[2026-10-18 17:56:27,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:56:27,941.941 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:56:28,106.106 INFO    ] No existing commands found in stream
[2026-10-18 17:56:33,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:56:33,119.119 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-18 17:56:34,337.337 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:56:34,340.340 INFO    ] Checking for system updates...
[2026-10-18 17:56:34,375.375 INFO    ] 200
[2026-10-18 17:56:34,377.377 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:56:34,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:56:34,431.431 INFO    ] No update needed
[2026-10-18 17:56:34,434.434 INFO    ] Checking for camera pi updates...
[2026-10-18 17:56:34,468.468 INFO    ] 200
[2026-10-18 17:56:34,470.470 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:56:34,510.510 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:56:44,525.525 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:56:44,560.560 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:56:44,570.570 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:56:44,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:56:44,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:56:44,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:56:46,622.622 INFO    ] ================================================
[2026-10-18 17:56:46,637.637 INFO    ] Launching Daemon at Sun Oct 18 17:56:46 IST 2026
[2026-10-18 17:56:46,648.648 INFO    ] ================================================
[2026-10-18 17:56:47,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:56:47
[2026-10-18 17:56:47,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:56:48,057.057 INFO    ] Initializing speech engine...
[2026-10-18 17:56:48,063.063 INFO    ] 2026-10-18 17:56:48
[2026-10-18 17:56:48,339.339 INFO    ] 2026-10-18 17:56:48
[2026-10-18 17:56:48,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:56:48,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:56:48,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:56:48,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:56:48,849.849 INFO    ] time= 18/10/2026 17:56:48
[2026-10-18 17:56:48,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:56:48,915.915 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:56:49,043.043 INFO    ] No existing commands found in stream
[2026-10-18 17:56:54,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:56:54,073.073 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-18 17:56:57,759.759 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 17:56:57,762.762 INFO    ] Checking for system updates...
[2026-10-18 17:56:57,798.798 INFO    ] 200
[2026-10-18 17:56:57,800.800 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:56:57,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:56:57,861.861 INFO    ] No update needed
[2026-10-18 17:56:57,864.864 INFO    ] Checking for camera pi updates...
[2026-10-18 17:56:57,897.897 INFO    ] 200
[2026-10-18 17:56:57,899.899 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:56:57,944.944 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:57:07,957.957 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:57:07,992.992 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:57:08,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:57:08,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:57:08,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:57:08,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:57:10,053.053 INFO    ] ================================================
[2026-10-18 17:57:10,069.069 INFO    ] Launching Daemon at Sun Oct 18 17:57:10 IST 2026
[2026-10-18 17:57:10,080.080 INFO    ] ================================================
[2026-10-18 17:57:10,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:57:10
[2026-10-18 17:57:11,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:57:11,711.711 INFO    ] Initializing speech engine...
[2026-10-18 17:57:11,723.723 INFO    ] 2026-10-18 17:57:11
[2026-10-18 17:57:12,007.007 INFO    ] 2026-10-18 17:57:11
[2026-10-18 17:57:12,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:57:12,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:57:12,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:57:12,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:57:12,543.543 INFO    ] time= 18/10/2026 17:57:12
[2026-10-18 17:57:12,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:57:12,584.584 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:57:12,728.728 INFO    ] No existing commands found in stream
[2026-10-18 17:57:17,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:57:17,757.757 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-18 17:57:18,857.857 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:57:18,860.860 INFO    ] Checking for system updates...
[2026-10-18 17:57:18,897.897 INFO    ] 200
[2026-10-18 17:57:18,899.899 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:57:18,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:57:18,954.954 INFO    ] No update needed
[2026-10-18 17:57:18,956.956 INFO    ] Checking for camera pi updates...
[2026-10-18 17:57:18,991.991 INFO    ] 200
[2026-10-18 17:57:18,993.993 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:57:19,038.038 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:57:29,053.053 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:57:29,088.088 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:57:29,097.097 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:57:29,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:57:29,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:57:29,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:57:31,150.150 INFO    ] ================================================
[2026-10-18 17:57:31,165.165 INFO    ] Launching Daemon at Sun Oct 18 17:57:31 IST 2026
[2026-10-18 17:57:31,176.176 INFO    ] ================================================
[2026-10-18 17:57:31,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:57:31
[2026-10-18 17:57:32,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:57:32,678.678 INFO    ] Initializing speech engine...
[2026-10-18 17:57:32,687.687 INFO    ] 2026-10-18 17:57:32
[2026-10-18 17:57:32,964.964 INFO    ] 2026-10-18 17:57:32
[2026-10-18 17:57:32,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:57:33,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:57:33,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:57:33,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:57:33,456.456 INFO    ] time= 18/10/2026 17:57:33
[2026-10-18 17:57:33,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:57:33,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:57:33,672.672 INFO    ] No existing commands found in stream
[2026-10-18 17:57:38,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:57:38,702.702 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-18 17:57:40,609.609 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 17:57:40,612.612 INFO    ] Checking for system updates...
[2026-10-18 17:57:40,650.650 INFO    ] 200
[2026-10-18 17:57:40,653.653 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:57:40,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:57:40,713.713 INFO    ] No update needed
[2026-10-18 17:57:40,716.716 INFO    ] Checking for camera pi updates...
[2026-10-18 17:57:40,749.749 INFO    ] 200
[2026-10-18 17:57:40,751.751 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:57:40,791.791 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:57:50,806.806 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:57:50,841.841 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:57:50,850.850 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:57:50,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:57:50,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:57:50,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:57:52,903.903 INFO    ] ================================================
[2026-10-18 17:57:52,918.918 INFO    ] Launching Daemon at Sun Oct 18 17:57:52 IST 2026
[2026-10-18 17:57:52,929.929 INFO    ] ================================================
[2026-10-18 17:57:53,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:57:53
[2026-10-18 17:57:54,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:57:54,338.338 INFO    ] Initializing speech engine...
[2026-10-18 17:57:54,361.361 INFO    ] 2026-10-18 17:57:54
[2026-10-18 17:57:54,637.637 INFO    ] 2026-10-18 17:57:54
[2026-10-18 17:57:54,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:57:54,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:57:54,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:57:55,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:57:55,052.052 INFO    ] time= 18/10/2026 17:57:55
[2026-10-18 17:57:55,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:57:55,101.101 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:57:55,231.231 INFO    ] No existing commands found in stream
[2026-10-18 17:58:00,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:58:00,258.258 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-18 17:58:04,058.058 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 17:58:04,060.060 INFO    ] Checking for system updates...
[2026-10-18 17:58:04,096.096 INFO    ] 200
[2026-10-18 17:58:04,099.099 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:58:04,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:58:04,158.158 INFO    ] No update needed
[2026-10-18 17:58:04,161.161 INFO    ] Checking for camera pi updates...
[2026-10-18 17:58:04,194.194 INFO    ] 200
[2026-10-18 17:58:04,197.197 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:58:04,242.242 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:58:14,255.255 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:58:14,290.290 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:58:14,299.299 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:58:14,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:58:14,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:58:14,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:58:16,352.352 INFO    ] ================================================
[2026-10-18 17:58:16,368.368 INFO    ] Launching Daemon at Sun Oct 18 17:58:16 IST 2026
[2026-10-18 17:58:16,380.380 INFO    ] ================================================
[2026-10-18 17:58:16,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:58:16
[2026-10-18 17:58:17,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:58:17,895.895 INFO    ] Initializing speech engine...
[2026-10-18 17:58:17,903.903 INFO    ] 2026-10-18 17:58:17
[2026-10-18 17:58:18,185.185 INFO    ] 2026-10-18 17:58:18
[2026-10-18 17:58:18,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:58:18,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:58:18,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:58:18,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:58:18,722.722 INFO    ] time= 18/10/2026 17:58:18
[2026-10-18 17:58:18,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:58:18,769.769 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:58:18,876.876 INFO    ] No existing commands found in stream
[2026-10-18 17:58:23,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:58:23,904.904 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-18 17:58:26,887.887 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 17:58:26,890.890 INFO    ] Checking for system updates...
[2026-10-18 17:58:26,934.934 INFO    ] 200
[2026-10-18 17:58:26,937.937 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:58:26,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:58:26,999.999 INFO    ] No update needed
[2026-10-18 17:58:27,002.002 INFO    ] Checking for camera pi updates...
[2026-10-18 17:58:27,037.037 INFO    ] 200
[2026-10-18 17:58:27,040.040 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:58:27,090.090 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:58:37,105.105 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:58:37,144.144 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:58:37,155.155 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:58:37,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:58:37,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:58:37,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:58:39,210.210 INFO    ] ================================================
[2026-10-18 17:58:39,227.227 INFO    ] Launching Daemon at Sun Oct 18 17:58:39 IST 2026
[2026-10-18 17:58:39,238.238 INFO    ] ================================================
[2026-10-18 17:58:39,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:58:39
[2026-10-18 17:58:40,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:58:40,641.641 INFO    ] Initializing speech engine...
[2026-10-18 17:58:40,647.647 INFO    ] 2026-10-18 17:58:40
[2026-10-18 17:58:40,939.939 INFO    ] 2026-10-18 17:58:40
[2026-10-18 17:58:40,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:58:41,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:58:41,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:58:41,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:58:41,425.425 INFO    ] time= 18/10/2026 17:58:41
[2026-10-18 17:58:41,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:58:41,514.514 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:58:41,624.624 INFO    ] No existing commands found in stream
[2026-10-18 17:58:46,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:58:46,638.638 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-18 17:58:48,459.459 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 17:58:48,462.462 INFO    ] Checking for system updates...
[2026-10-18 17:58:48,501.501 INFO    ] 200
[2026-10-18 17:58:48,503.503 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:58:48,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 17:58:48,557.557 INFO    ] No update needed
[2026-10-18 17:58:48,559.559 INFO    ] Checking for camera pi updates...
[2026-10-18 17:58:48,600.600 INFO    ] 200
[2026-10-18 17:58:48,602.602 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:58:48,643.643 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:58:58,658.658 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:58:58,692.692 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:58:58,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:58:58,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:58:58,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:58:58,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:59:00,755.755 INFO    ] ================================================
[2026-10-18 17:59:00,770.770 INFO    ] Launching Daemon at Sun Oct 18 17:59:00 IST 2026
[2026-10-18 17:59:00,782.782 INFO    ] ================================================
[2026-10-18 17:59:01,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:59:01
[2026-10-18 17:59:02,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:59:02,505.505 INFO    ] Initializing speech engine...
[2026-10-18 17:59:02,521.521 INFO    ] 2026-10-18 17:59:02
[2026-10-18 17:59:02,814.814 INFO    ] 2026-10-18 17:59:02
[2026-10-18 17:59:02,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:59:03,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:59:03,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:59:03,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:59:03,370.370 INFO    ] time= 18/10/2026 17:59:03
[2026-10-18 17:59:03,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:59:03,450.450 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:59:03,603.603 INFO    ] No existing commands found in stream
[2026-10-18 17:59:08,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:59:08,627.627 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-18 17:59:09,781.781 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 17:59:09,783.783 INFO    ] Checking for system updates...
[2026-10-18 17:59:09,819.819 INFO    ] 200
[2026-10-18 17:59:09,822.822 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:59:09,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:59:09,880.880 INFO    ] No update needed
[2026-10-18 17:59:09,883.883 INFO    ] Checking for camera pi updates...
[2026-10-18 17:59:09,918.918 INFO    ] 200
[2026-10-18 17:59:09,920.920 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:59:09,970.970 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:59:19,986.986 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:59:20,021.021 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:59:20,031.031 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:59:20,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:59:20,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:59:20,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:59:22,083.083 INFO    ] ================================================
[2026-10-18 17:59:22,099.099 INFO    ] Launching Daemon at Sun Oct 18 17:59:22 IST 2026
[2026-10-18 17:59:22,110.110 INFO    ] ================================================
[2026-10-18 17:59:22,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:59:22
[2026-10-18 17:59:23,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:59:23,538.538 INFO    ] Initializing speech engine...
[2026-10-18 17:59:23,544.544 INFO    ] 2026-10-18 17:59:23
[2026-10-18 17:59:23,790.790 INFO    ] 2026-10-18 17:59:23
[2026-10-18 17:59:23,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:59:24,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:59:24,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:59:24,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:59:24,342.342 INFO    ] time= 18/10/2026 17:59:24
[2026-10-18 17:59:24,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:59:24,367.367 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:59:24,498.498 INFO    ] No existing commands found in stream
[2026-10-18 17:59:29,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:59:29,520.520 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-18 17:59:31,394.394 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 17:59:31,397.397 INFO    ] Checking for system updates...
[2026-10-18 17:59:31,433.433 INFO    ] 200
[2026-10-18 17:59:31,436.436 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:59:31,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:59:31,491.491 INFO    ] No update needed
[2026-10-18 17:59:31,494.494 INFO    ] Checking for camera pi updates...
[2026-10-18 17:59:31,528.528 INFO    ] 200
[2026-10-18 17:59:31,531.531 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:59:31,572.572 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 17:59:41,586.586 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 17:59:41,621.621 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 17:59:41,631.631 INFO    ] Script finished. Safe exiting...
[2026-10-18 17:59:41,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 17:59:41,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 17:59:41,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 17:59:43,684.684 INFO    ] ================================================
[2026-10-18 17:59:43,699.699 INFO    ] Launching Daemon at Sun Oct 18 17:59:43 IST 2026
[2026-10-18 17:59:43,711.711 INFO    ] ================================================
[2026-10-18 17:59:44,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 17:59:44
[2026-10-18 17:59:44,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 17:59:45,128.128 INFO    ] Initializing speech engine...
[2026-10-18 17:59:45,141.141 INFO    ] 2026-10-18 17:59:45
[2026-10-18 17:59:45,389.389 INFO    ] 2026-10-18 17:59:45
[2026-10-18 17:59:45,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 17:59:45,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 17:59:45,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 17:59:45,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 17:59:45,936.936 INFO    ] time= 18/10/2026 17:59:45
[2026-10-18 17:59:45,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 17:59:45,966.966 INFO    ] Checking for existing commands in stream...
[2026-10-18 17:59:46,099.099 INFO    ] No existing commands found in stream
[2026-10-18 17:59:51,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 17:59:51,124.124 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-18 17:59:55,173.173 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 17:59:55,176.176 INFO    ] Checking for system updates...
[2026-10-18 17:59:55,215.215 INFO    ] 200
[2026-10-18 17:59:55,218.218 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:59:55,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 17:59:55,273.273 INFO    ] No update needed
[2026-10-18 17:59:55,276.276 INFO    ] Checking for camera pi updates...
[2026-10-18 17:59:55,313.313 INFO    ] 200
[2026-10-18 17:59:55,317.317 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 17:59:55,358.358 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:00:05,374.374 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:00:05,506.506 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:00:05,534.534 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:00:05,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:00:05,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:00:05,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:00:07,620.620 INFO    ] ================================================
[2026-10-18 18:00:07,636.636 INFO    ] Launching Daemon at Sun Oct 18 18:00:07 IST 2026
[2026-10-18 18:00:07,649.649 INFO    ] ================================================
[2026-10-18 18:00:08,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:00:08
[2026-10-18 18:00:08,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:00:09,088.088 INFO    ] Initializing speech engine...
[2026-10-18 18:00:09,102.102 INFO    ] 2026-10-18 18:00:09
[2026-10-18 18:00:09,382.382 INFO    ] 2026-10-18 18:00:09
[2026-10-18 18:00:09,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:00:09,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:00:09,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:00:09,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:00:09,792.792 INFO    ] time= 18/10/2026 18:00:09
[2026-10-18 18:00:09,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:00:09,849.849 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:00:09,990.990 INFO    ] No existing commands found in stream
[2026-10-18 18:00:15,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:00:15,003.003 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-18 18:00:17,225.225 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:00:17,228.228 INFO    ] Checking for system updates...
[2026-10-18 18:00:17,267.267 INFO    ] 200
[2026-10-18 18:00:17,270.270 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:00:17,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:00:17,328.328 INFO    ] No update needed
[2026-10-18 18:00:17,331.331 INFO    ] Checking for camera pi updates...
[2026-10-18 18:00:17,372.372 INFO    ] 200
[2026-10-18 18:00:17,375.375 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:00:17,454.454 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:00:27,475.475 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:00:27,517.517 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:00:27,529.529 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:00:27,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:00:27,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:00:27,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:00:29,588.588 INFO    ] ================================================
[2026-10-18 18:00:29,604.604 INFO    ] Launching Daemon at Sun Oct 18 18:00:29 IST 2026
[2026-10-18 18:00:29,616.616 INFO    ] ================================================
[2026-10-18 18:00:30,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:00:30
[2026-10-18 18:00:30,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:00:31,057.057 INFO    ] Initializing speech engine...
[2026-10-18 18:00:31,066.066 INFO    ] 2026-10-18 18:00:31
[2026-10-18 18:00:31,315.315 INFO    ] 2026-10-18 18:00:31
[2026-10-18 18:00:31,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:00:31,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:00:31,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:00:31,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:00:31,876.876 INFO    ] time= 18/10/2026 18:00:31
[2026-10-18 18:00:31,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:00:31,927.927 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:00:32,079.079 INFO    ] No existing commands found in stream
[2026-10-18 18:00:37,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:00:37,114.114 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-18 18:00:38,865.865 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:00:38,868.868 INFO    ] Checking for system updates...
[2026-10-18 18:00:38,904.904 INFO    ] 200
[2026-10-18 18:00:38,906.906 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:00:38,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:00:38,962.962 INFO    ] No update needed
[2026-10-18 18:00:38,964.964 INFO    ] Checking for camera pi updates...
[2026-10-18 18:00:39,002.002 INFO    ] 200
[2026-10-18 18:00:39,005.005 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:00:39,045.045 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:00:49,060.060 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:00:49,095.095 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:00:49,105.105 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:00:49,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:00:49,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:00:49,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:00:51,159.159 INFO    ] ================================================
[2026-10-18 18:00:51,175.175 INFO    ] Launching Daemon at Sun Oct 18 18:00:51 IST 2026
[2026-10-18 18:00:51,186.186 INFO    ] ================================================
[2026-10-18 18:00:51,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:00:51
[2026-10-18 18:00:52,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:00:52,863.863 INFO    ] Initializing speech engine...
[2026-10-18 18:00:52,876.876 INFO    ] 2026-10-18 18:00:52
[2026-10-18 18:00:53,148.148 INFO    ] 2026-10-18 18:00:53
[2026-10-18 18:00:53,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:00:53,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:00:53,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:00:53,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:00:53,719.719 INFO    ] time= 18/10/2026 18:00:53
[2026-10-18 18:00:53,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:00:53,748.748 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:00:53,886.886 INFO    ] No existing commands found in stream
[2026-10-18 18:00:58,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:00:58,927.927 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-18 18:01:01,162.162 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:01:01,165.165 INFO    ] Checking for system updates...
[2026-10-18 18:01:01,202.202 INFO    ] 200
[2026-10-18 18:01:01,205.205 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:01:01,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:01:01,262.262 INFO    ] No update needed
[2026-10-18 18:01:01,265.265 INFO    ] Checking for camera pi updates...
[2026-10-18 18:01:01,300.300 INFO    ] 200
[2026-10-18 18:01:01,303.303 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:01:01,344.344 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:01:11,359.359 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:01:11,400.400 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:01:11,411.411 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:01:11,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:01:11,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:01:11,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:01:13,468.468 INFO    ] ================================================
[2026-10-18 18:01:13,485.485 INFO    ] Launching Daemon at Sun Oct 18 18:01:13 IST 2026
[2026-10-18 18:01:13,498.498 INFO    ] ================================================
[2026-10-18 18:01:14,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:01:14
[2026-10-18 18:01:14,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:01:15,052.052 INFO    ] Initializing speech engine...
[2026-10-18 18:01:15,059.059 INFO    ] 2026-10-18 18:01:15
[2026-10-18 18:01:15,317.317 INFO    ] 2026-10-18 18:01:15
[2026-10-18 18:01:15,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:01:15,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:01:15,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:01:15,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:01:15,914.914 INFO    ] time= 18/10/2026 18:01:15
[2026-10-18 18:01:15,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:01:15,954.954 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:01:16,075.075 INFO    ] No existing commands found in stream
[2026-10-18 18:01:21,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:01:21,099.099 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-18 18:01:25,647.647 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:01:25,650.650 INFO    ] Checking for system updates...
[2026-10-18 18:01:25,690.690 INFO    ] 200
[2026-10-18 18:01:25,692.692 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:01:25,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:01:25,749.749 INFO    ] No update needed
[2026-10-18 18:01:25,751.751 INFO    ] Checking for camera pi updates...
[2026-10-18 18:01:25,786.786 INFO    ] 200
[2026-10-18 18:01:25,788.788 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:01:25,831.831 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:01:35,846.846 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:01:35,882.882 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:01:35,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:01:35,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:01:35,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:01:35,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:01:37,946.946 INFO    ] ================================================
[2026-10-18 18:01:37,962.962 INFO    ] Launching Daemon at Sun Oct 18 18:01:37 IST 2026
[2026-10-18 18:01:37,973.973 INFO    ] ================================================
[2026-10-18 18:01:38,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:01:38
[2026-10-18 18:01:39,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:01:39,433.433 INFO    ] Initializing speech engine...
[2026-10-18 18:01:39,450.450 INFO    ] 2026-10-18 18:01:39
[2026-10-18 18:01:39,729.729 INFO    ] 2026-10-18 18:01:39
[2026-10-18 18:01:39,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:01:39,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:01:40,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:01:40,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:01:40,253.253 INFO    ] time= 18/10/2026 18:01:40
[2026-10-18 18:01:40,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:01:40,362.362 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:01:40,506.506 INFO    ] No existing commands found in stream
[2026-10-18 18:01:45,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:01:45,531.531 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-18 18:01:46,416.416 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:01:46,418.418 INFO    ] Checking for system updates...
[2026-10-18 18:01:46,458.458 INFO    ] 200
[2026-10-18 18:01:46,460.460 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:01:46,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:01:46,522.522 INFO    ] No update needed
[2026-10-18 18:01:46,524.524 INFO    ] Checking for camera pi updates...
[2026-10-18 18:01:46,558.558 INFO    ] 200
[2026-10-18 18:01:46,560.560 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:01:46,601.601 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:01:56,616.616 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:01:56,652.652 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:01:56,662.662 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:01:56,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:01:56,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:01:56,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:01:58,715.715 INFO    ] ================================================
[2026-10-18 18:01:58,731.731 INFO    ] Launching Daemon at Sun Oct 18 18:01:58 IST 2026
[2026-10-18 18:01:58,742.742 INFO    ] ================================================
[2026-10-18 18:01:59,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:01:59
[2026-10-18 18:01:59,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:02:00,157.157 INFO    ] Initializing speech engine...
[2026-10-18 18:02:00,165.165 INFO    ] 2026-10-18 18:02:00
[2026-10-18 18:02:00,463.463 INFO    ] 2026-10-18 18:02:00
[2026-10-18 18:02:00,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:02:00,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:02:00,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:02:00,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:02:00,890.890 INFO    ] time= 18/10/2026 18:02:00
[2026-10-18 18:02:00,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:02:00,902.902 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:02:01,041.041 INFO    ] No existing commands found in stream
[2026-10-18 18:02:06,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:02:06,069.069 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-18 18:02:07,244.244 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:02:07,247.247 INFO    ] Checking for system updates...
[2026-10-18 18:02:07,283.283 INFO    ] 200
[2026-10-18 18:02:07,286.286 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:02:07,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:02:07,342.342 INFO    ] No update needed
[2026-10-18 18:02:07,344.344 INFO    ] Checking for camera pi updates...
[2026-10-18 18:02:07,379.379 INFO    ] 200
[2026-10-18 18:02:07,381.381 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:02:07,421.421 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:02:17,436.436 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:02:17,471.471 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:02:17,481.481 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:02:17,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:02:17,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:02:17,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:02:19,534.534 INFO    ] ================================================
[2026-10-18 18:02:19,549.549 INFO    ] Launching Daemon at Sun Oct 18 18:02:19 IST 2026
[2026-10-18 18:02:19,560.560 INFO    ] ================================================
[2026-10-18 18:02:20,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:02:20
[2026-10-18 18:02:20,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:02:20,987.987 INFO    ] Initializing speech engine...
[2026-10-18 18:02:20,995.995 INFO    ] 2026-10-18 18:02:20
[2026-10-18 18:02:21,251.251 INFO    ] 2026-10-18 18:02:21
[2026-10-18 18:02:21,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:02:21,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:02:21,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:02:21,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:02:21,729.729 INFO    ] time= 18/10/2026 18:02:21
[2026-10-18 18:02:21,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:02:21,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:02:21,943.943 INFO    ] No existing commands found in stream
[2026-10-18 18:02:26,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:02:26,962.962 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-18 18:02:28,941.941 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 18:02:28,943.943 INFO    ] Checking for system updates...
[2026-10-18 18:02:28,983.983 INFO    ] 200
[2026-10-18 18:02:28,985.985 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:02:29,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:02:29,040.040 INFO    ] No update needed
[2026-10-18 18:02:29,043.043 INFO    ] Checking for camera pi updates...
[2026-10-18 18:02:29,080.080 INFO    ] 200
[2026-10-18 18:02:29,082.082 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:02:29,123.123 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:02:39,138.138 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:02:39,173.173 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:02:39,182.182 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:02:39,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:02:39,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:02:39,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:02:41,237.237 INFO    ] ================================================
[2026-10-18 18:02:41,253.253 INFO    ] Launching Daemon at Sun Oct 18 18:02:41 IST 2026
[2026-10-18 18:02:41,264.264 INFO    ] ================================================
[2026-10-18 18:02:41,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:02:41
[2026-10-18 18:02:42,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:02:42,816.816 INFO    ] Initializing speech engine...
[2026-10-18 18:02:42,828.828 INFO    ] 2026-10-18 18:02:42
[2026-10-18 18:02:43,147.147 INFO    ] 2026-10-18 18:02:43
[2026-10-18 18:02:43,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:02:43,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:02:43,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:02:43,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:02:43,677.677 INFO    ] time= 18/10/2026 18:02:43
[2026-10-18 18:02:43,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:02:43,716.716 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:02:43,823.823 INFO    ] No existing commands found in stream
[2026-10-18 18:02:48,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:02:48,851.851 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-18 18:02:51,304.304 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:02:51,307.307 INFO    ] Checking for system updates...
[2026-10-18 18:02:51,344.344 INFO    ] 200
[2026-10-18 18:02:51,347.347 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:02:51,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:02:51,402.402 INFO    ] No update needed
[2026-10-18 18:02:51,404.404 INFO    ] Checking for camera pi updates...
[2026-10-18 18:02:51,442.442 INFO    ] 200
[2026-10-18 18:02:51,444.444 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:02:51,491.491 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:03:01,507.507 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:03:01,570.570 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:03:01,584.584 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:03:01,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:03:01,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:03:01,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:03:03,646.646 INFO    ] ================================================
[2026-10-18 18:03:03,662.662 INFO    ] Launching Daemon at Sun Oct 18 18:03:03 IST 2026
[2026-10-18 18:03:03,674.674 INFO    ] ================================================
[2026-10-18 18:03:04,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:03:04
[2026-10-18 18:03:04,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:03:05,107.107 INFO    ] Initializing speech engine...
[2026-10-18 18:03:05,116.116 INFO    ] 2026-10-18 18:03:05
[2026-10-18 18:03:05,373.373 INFO    ] 2026-10-18 18:03:05
[2026-10-18 18:03:05,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:03:05,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:03:05,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:03:05,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:03:05,862.862 INFO    ] time= 18/10/2026 18:03:05
[2026-10-18 18:03:05,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:03:05,943.943 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:03:06,095.095 INFO    ] No existing commands found in stream
[2026-10-18 18:03:11,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:03:11,113.113 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-18 18:03:14,847.847 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:03:14,850.850 INFO    ] Checking for system updates...
[2026-10-18 18:03:14,886.886 INFO    ] 200
[2026-10-18 18:03:14,889.889 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:03:14,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:03:14,944.944 INFO    ] No update needed
[2026-10-18 18:03:14,946.946 INFO    ] Checking for camera pi updates...
[2026-10-18 18:03:14,980.980 INFO    ] 200
[2026-10-18 18:03:14,982.982 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:03:15,024.024 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:03:25,041.041 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:03:25,083.083 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:03:25,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:03:25,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:03:25,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:03:25,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:03:27,153.153 INFO    ] ================================================
[2026-10-18 18:03:27,169.169 INFO    ] Launching Daemon at Sun Oct 18 18:03:27 IST 2026
[2026-10-18 18:03:27,180.180 INFO    ] ================================================
[2026-10-18 18:03:27,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:03:27
[2026-10-18 18:03:28,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:03:28,634.634 INFO    ] Initializing speech engine...
[2026-10-18 18:03:28,644.644 INFO    ] 2026-10-18 18:03:28
[2026-10-18 18:03:28,895.895 INFO    ] 2026-10-18 18:03:28
[2026-10-18 18:03:28,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:03:29,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:03:29,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:03:29,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:03:29,453.453 INFO    ] time= 18/10/2026 18:03:29
[2026-10-18 18:03:29,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:03:29,480.480 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:03:29,610.610 INFO    ] No existing commands found in stream
[2026-10-18 18:03:34,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:03:34,640.640 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-18 18:03:38,226.226 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:03:38,229.229 INFO    ] Checking for system updates...
[2026-10-18 18:03:38,270.270 INFO    ] 200
[2026-10-18 18:03:38,272.272 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:03:38,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:03:38,327.327 INFO    ] No update needed
[2026-10-18 18:03:38,330.330 INFO    ] Checking for camera pi updates...
[2026-10-18 18:03:38,386.386 INFO    ] 200
[2026-10-18 18:03:38,388.388 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:03:38,435.435 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:03:48,448.448 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:03:48,484.484 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:03:48,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:03:48,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:03:48,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:03:48,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:03:50,547.547 INFO    ] ================================================
[2026-10-18 18:03:50,563.563 INFO    ] Launching Daemon at Sun Oct 18 18:03:50 IST 2026
[2026-10-18 18:03:50,574.574 INFO    ] ================================================
[2026-10-18 18:03:51,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:03:51
[2026-10-18 18:03:51,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:03:52,171.171 INFO    ] Initializing speech engine...
[2026-10-18 18:03:52,185.185 INFO    ] 2026-10-18 18:03:52
[2026-10-18 18:03:52,479.479 INFO    ] 2026-10-18 18:03:52
[2026-10-18 18:03:52,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:03:52,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:03:52,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:03:52,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:03:53,014.014 INFO    ] time= 18/10/2026 18:03:52
[2026-10-18 18:03:53,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:03:53,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:03:53,186.186 INFO    ] No existing commands found in stream
[2026-10-18 18:03:58,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:03:58,224.224 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-18 18:04:03,548.548 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:04:03,551.551 INFO    ] Checking for system updates...
[2026-10-18 18:04:03,590.590 INFO    ] 200
[2026-10-18 18:04:03,593.593 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:04:03,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:04:03,654.654 INFO    ] No update needed
[2026-10-18 18:04:03,657.657 INFO    ] Checking for camera pi updates...
[2026-10-18 18:04:03,691.691 INFO    ] 200
[2026-10-18 18:04:03,693.693 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:04:03,735.735 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:04:13,751.751 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:04:13,787.787 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:04:13,796.796 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:04:13,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:04:13,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:04:13,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:04:15,849.849 INFO    ] ================================================
[2026-10-18 18:04:15,864.864 INFO    ] Launching Daemon at Sun Oct 18 18:04:15 IST 2026
[2026-10-18 18:04:15,875.875 INFO    ] ================================================
[2026-10-18 18:04:16,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:04:16
[2026-10-18 18:04:17,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:04:17,394.394 INFO    ] Initializing speech engine...
[2026-10-18 18:04:17,401.401 INFO    ] 2026-10-18 18:04:17
[2026-10-18 18:04:17,688.688 INFO    ] 2026-10-18 18:04:17
[2026-10-18 18:04:17,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:04:17,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:04:17,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:04:18,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:04:18,174.174 INFO    ] time= 18/10/2026 18:04:18
[2026-10-18 18:04:18,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:04:18,234.234 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:04:18,377.377 INFO    ] No existing commands found in stream
[2026-10-18 18:04:23,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:04:23,397.397 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-18 18:04:24,804.804 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 18:04:24,807.807 INFO    ] Checking for system updates...
[2026-10-18 18:04:24,845.845 INFO    ] 200
[2026-10-18 18:04:24,848.848 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:04:24,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:04:24,905.905 INFO    ] No update needed
[2026-10-18 18:04:24,908.908 INFO    ] Checking for camera pi updates...
[2026-10-18 18:04:24,943.943 INFO    ] 200
[2026-10-18 18:04:24,946.946 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:04:24,988.988 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:04:35,003.003 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:04:35,044.044 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:04:35,055.055 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:04:35,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:04:35,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:04:35,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:04:37,110.110 INFO    ] ================================================
[2026-10-18 18:04:37,125.125 INFO    ] Launching Daemon at Sun Oct 18 18:04:37 IST 2026
[2026-10-18 18:04:37,136.136 INFO    ] ================================================
[2026-10-18 18:04:37,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:04:37
[2026-10-18 18:04:38,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:04:38,762.762 INFO    ] Initializing speech engine...
[2026-10-18 18:04:38,769.769 INFO    ] 2026-10-18 18:04:38
[2026-10-18 18:04:39,036.036 INFO    ] 2026-10-18 18:04:39
[2026-10-18 18:04:39,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:04:39,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:04:39,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:04:39,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:04:39,455.455 INFO    ] time= 18/10/2026 18:04:39
[2026-10-18 18:04:39,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:04:39,475.475 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:04:39,574.574 INFO    ] No existing commands found in stream
[2026-10-18 18:04:44,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:04:44,596.596 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-18 18:04:45,728.728 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:04:45,730.730 INFO    ] Checking for system updates...
[2026-10-18 18:04:45,769.769 INFO    ] 200
[2026-10-18 18:04:45,772.772 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:04:45,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:04:45,828.828 INFO    ] No update needed
[2026-10-18 18:04:45,830.830 INFO    ] Checking for camera pi updates...
[2026-10-18 18:04:45,871.871 INFO    ] 200
[2026-10-18 18:04:45,873.873 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:04:45,913.913 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:04:55,929.929 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:04:55,963.963 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:04:55,973.973 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:04:55,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:04:55,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:04:55,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:04:58,025.025 INFO    ] ================================================
[2026-10-18 18:04:58,040.040 INFO    ] Launching Daemon at Sun Oct 18 18:04:58 IST 2026
[2026-10-18 18:04:58,050.050 INFO    ] ================================================
[2026-10-18 18:04:58,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:04:58
[2026-10-18 18:04:59,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:04:59,454.454 INFO    ] Initializing speech engine...
[2026-10-18 18:04:59,463.463 INFO    ] 2026-10-18 18:04:59
[2026-10-18 18:04:59,737.737 INFO    ] 2026-10-18 18:04:59
[2026-10-18 18:04:59,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:04:59,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:05:00,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:05:00,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:05:00,211.211 INFO    ] time= 18/10/2026 18:05:00
[2026-10-18 18:05:00,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:05:00,310.310 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:05:00,447.447 INFO    ] No existing commands found in stream
[2026-10-18 18:05:05,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:05:05,477.477 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-18 18:05:07,581.581 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:05:07,583.583 INFO    ] Checking for system updates...
[2026-10-18 18:05:07,623.623 INFO    ] 200
[2026-10-18 18:05:07,626.626 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:05:07,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:05:07,689.689 INFO    ] No update needed
[2026-10-18 18:05:07,691.691 INFO    ] Checking for camera pi updates...
[2026-10-18 18:05:07,729.729 INFO    ] 200
[2026-10-18 18:05:07,731.731 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:05:07,771.771 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:05:17,786.786 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:05:17,821.821 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:05:17,830.830 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:05:17,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:05:17,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:05:17,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:05:19,882.882 INFO    ] ================================================
[2026-10-18 18:05:19,897.897 INFO    ] Launching Daemon at Sun Oct 18 18:05:19 IST 2026
[2026-10-18 18:05:19,907.907 INFO    ] ================================================
[2026-10-18 18:05:20,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:05:20
[2026-10-18 18:05:21,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:05:21,316.316 INFO    ] Initializing speech engine...
[2026-10-18 18:05:21,323.323 INFO    ] 2026-10-18 18:05:21
[2026-10-18 18:05:21,626.626 INFO    ] 2026-10-18 18:05:21
[2026-10-18 18:05:21,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:05:21,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:05:21,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:05:22,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:05:22,060.060 INFO    ] time= 18/10/2026 18:05:22
[2026-10-18 18:05:22,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:05:22,082.082 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:05:22,216.216 INFO    ] No existing commands found in stream
[2026-10-18 18:05:27,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:05:27,244.244 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-18 18:05:31,221.221 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 18:05:31,224.224 INFO    ] Checking for system updates...
[2026-10-18 18:05:31,260.260 INFO    ] 200
[2026-10-18 18:05:31,263.263 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:05:31,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:05:31,319.319 INFO    ] No update needed
[2026-10-18 18:05:31,322.322 INFO    ] Checking for camera pi updates...
[2026-10-18 18:05:31,360.360 INFO    ] 200
[2026-10-18 18:05:31,362.362 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:05:31,402.402 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:05:41,417.417 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:05:41,451.451 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:05:41,461.461 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:05:41,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:05:41,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:05:41,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:05:43,516.516 INFO    ] ================================================
[2026-10-18 18:05:43,532.532 INFO    ] Launching Daemon at Sun Oct 18 18:05:43 IST 2026
[2026-10-18 18:05:43,543.543 INFO    ] ================================================
[2026-10-18 18:05:44,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:05:44
[2026-10-18 18:05:44,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:05:45,069.069 INFO    ] Initializing speech engine...
[2026-10-18 18:05:45,075.075 INFO    ] 2026-10-18 18:05:45
[2026-10-18 18:05:45,363.363 INFO    ] 2026-10-18 18:05:45
[2026-10-18 18:05:45,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:05:45,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:05:45,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:05:45,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:05:45,901.901 INFO    ] time= 18/10/2026 18:05:45
[2026-10-18 18:05:45,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:05:45,952.952 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:05:46,097.097 INFO    ] No existing commands found in stream
[2026-10-18 18:05:51,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:05:51,137.137 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-18 18:05:52,525.525 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 18:05:52,528.528 INFO    ] Checking for system updates...
[2026-10-18 18:05:52,570.570 INFO    ] 200
[2026-10-18 18:05:52,573.573 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:05:52,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:05:52,632.632 INFO    ] No update needed
[2026-10-18 18:05:52,635.635 INFO    ] Checking for camera pi updates...
[2026-10-18 18:05:52,670.670 INFO    ] 200
[2026-10-18 18:05:52,673.673 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:05:52,721.721 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:06:02,739.739 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:06:02,785.785 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:06:02,799.799 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:06:02,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:06:02,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:06:02,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:06:04,858.858 INFO    ] ================================================
[2026-10-18 18:06:04,873.873 INFO    ] Launching Daemon at Sun Oct 18 18:06:04 IST 2026
[2026-10-18 18:06:04,884.884 INFO    ] ================================================
[2026-10-18 18:06:05,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:06:05
[2026-10-18 18:06:06,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:06:06,358.358 INFO    ] Initializing speech engine...
[2026-10-18 18:06:06,366.366 INFO    ] 2026-10-18 18:06:06
[2026-10-18 18:06:06,640.640 INFO    ] 2026-10-18 18:06:06
[2026-10-18 18:06:06,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:06:06,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:06:06,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:06:07,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:06:07,173.173 INFO    ] time= 18/10/2026 18:06:07
[2026-10-18 18:06:07,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:06:07,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:06:07,332.332 INFO    ] No existing commands found in stream
[2026-10-18 18:06:12,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:06:12,364.364 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-18 18:06:13,564.564 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 18:06:13,567.567 INFO    ] Checking for system updates...
[2026-10-18 18:06:13,623.623 INFO    ] 200
[2026-10-18 18:06:13,626.626 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:06:13,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:06:13,689.689 INFO    ] No update needed
[2026-10-18 18:06:13,691.691 INFO    ] Checking for camera pi updates...
[2026-10-18 18:06:13,729.729 INFO    ] 200
[2026-10-18 18:06:13,731.731 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:06:13,771.771 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:06:23,787.787 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:06:23,822.822 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:06:23,832.832 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:06:23,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:06:23,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:06:23,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:06:25,887.887 INFO    ] ================================================
[2026-10-18 18:06:25,904.904 INFO    ] Launching Daemon at Sun Oct 18 18:06:25 IST 2026
[2026-10-18 18:06:25,914.914 INFO    ] ================================================
[2026-10-18 18:06:26,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:06:26
[2026-10-18 18:06:27,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:06:27,389.389 INFO    ] Initializing speech engine...
[2026-10-18 18:06:27,397.397 INFO    ] 2026-10-18 18:06:27
[2026-10-18 18:06:27,647.647 INFO    ] 2026-10-18 18:06:27
[2026-10-18 18:06:27,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:06:27,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:06:27,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:06:28,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:06:28,208.208 INFO    ] time= 18/10/2026 18:06:28
[2026-10-18 18:06:28,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:06:28,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:06:28,370.370 INFO    ] No existing commands found in stream
[2026-10-18 18:06:33,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:06:33,403.403 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-18 18:06:36,976.976 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 18:06:36,979.979 INFO    ] Checking for system updates...
[2026-10-18 18:06:37,015.015 INFO    ] 200
[2026-10-18 18:06:37,018.018 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:06:37,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:06:37,073.073 INFO    ] No update needed
[2026-10-18 18:06:37,076.076 INFO    ] Checking for camera pi updates...
[2026-10-18 18:06:37,109.109 INFO    ] 200
[2026-10-18 18:06:37,112.112 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:06:37,157.157 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:06:47,172.172 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:06:47,207.207 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:06:47,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:06:47,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:06:47,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:06:47,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:06:49,271.271 INFO    ] ================================================
[2026-10-18 18:06:49,288.288 INFO    ] Launching Daemon at Sun Oct 18 18:06:49 IST 2026
[2026-10-18 18:06:49,299.299 INFO    ] ================================================
[2026-10-18 18:06:49,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:06:49
[2026-10-18 18:06:50,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:06:50,763.763 INFO    ] Initializing speech engine...
[2026-10-18 18:06:50,771.771 INFO    ] 2026-10-18 18:06:50
[2026-10-18 18:06:51,032.032 INFO    ] 2026-10-18 18:06:51
[2026-10-18 18:06:51,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:06:51,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:06:51,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:06:51,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:06:51,579.579 INFO    ] time= 18/10/2026 18:06:51
[2026-10-18 18:06:51,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:06:51,604.604 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:06:51,747.747 INFO    ] No existing commands found in stream
[2026-10-18 18:06:56,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:06:56,782.782 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-18 18:06:58,658.658 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 18:06:58,661.661 INFO    ] Checking for system updates...
[2026-10-18 18:06:58,701.701 INFO    ] 200
[2026-10-18 18:06:58,703.703 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:06:58,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:06:58,759.759 INFO    ] No update needed
[2026-10-18 18:06:58,762.762 INFO    ] Checking for camera pi updates...
[2026-10-18 18:06:58,797.797 INFO    ] 200
[2026-10-18 18:06:58,800.800 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:06:58,841.841 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:07:08,856.856 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:07:08,897.897 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:07:08,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:07:08,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:07:08,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:07:08,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:07:10,967.967 INFO    ] ================================================
[2026-10-18 18:07:10,983.983 INFO    ] Launching Daemon at Sun Oct 18 18:07:10 IST 2026
[2026-10-18 18:07:11,994.994 INFO    ] ================================================
[2026-10-18 18:07:11,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:07:11
[2026-10-18 18:07:12,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:07:12,677.677 INFO    ] Initializing speech engine...
[2026-10-18 18:07:12,689.689 INFO    ] 2026-10-18 18:07:12
[2026-10-18 18:07:12,972.972 INFO    ] 2026-10-18 18:07:12
[2026-10-18 18:07:13,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:07:13,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:07:13,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:07:13,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:07:13,510.510 INFO    ] time= 18/10/2026 18:07:13
[2026-10-18 18:07:13,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:07:13,560.560 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:07:13,685.685 INFO    ] No existing commands found in stream
[2026-10-18 18:07:18,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:07:18,720.720 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-18 18:07:19,959.959 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 18:07:19,962.962 INFO    ] Checking for system updates...
[2026-10-18 18:07:19,999.999 INFO    ] 200
[2026-10-18 18:07:20,002.002 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:07:20,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:07:20,058.058 INFO    ] No update needed
[2026-10-18 18:07:20,061.061 INFO    ] Checking for camera pi updates...
[2026-10-18 18:07:20,100.100 INFO    ] 200
[2026-10-18 18:07:20,103.103 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:07:20,151.151 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:07:30,167.167 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:07:30,209.209 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:07:30,221.221 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:07:30,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:07:30,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:07:30,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:07:32,279.279 INFO    ] ================================================
[2026-10-18 18:07:32,295.295 INFO    ] Launching Daemon at Sun Oct 18 18:07:32 IST 2026
[2026-10-18 18:07:32,306.306 INFO    ] ================================================
[2026-10-18 18:07:32,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:07:32
[2026-10-18 18:07:33,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:07:33,829.829 INFO    ] Initializing speech engine...
[2026-10-18 18:07:33,837.837 INFO    ] 2026-10-18 18:07:33
[2026-10-18 18:07:34,099.099 INFO    ] 2026-10-18 18:07:34
[2026-10-18 18:07:34,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:07:34,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:07:34,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:07:34,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:07:34,649.649 INFO    ] time= 18/10/2026 18:07:34
[2026-10-18 18:07:34,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:07:34,671.671 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:07:34,802.802 INFO    ] No existing commands found in stream
[2026-10-18 18:07:39,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:07:39,820.820 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-18 18:07:41,166.166 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:07:41,169.169 INFO    ] Checking for system updates...
[2026-10-18 18:07:41,206.206 INFO    ] 200
[2026-10-18 18:07:41,209.209 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:07:41,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:07:41,264.264 INFO    ] No update needed
[2026-10-18 18:07:41,267.267 INFO    ] Checking for camera pi updates...
[2026-10-18 18:07:41,300.300 INFO    ] 200
[2026-10-18 18:07:41,303.303 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:07:41,344.344 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:07:51,358.358 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:07:51,394.394 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:07:51,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:07:51,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:07:51,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:07:51,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:07:53,458.458 INFO    ] ================================================
[2026-10-18 18:07:53,474.474 INFO    ] Launching Daemon at Sun Oct 18 18:07:53 IST 2026
[2026-10-18 18:07:53,486.486 INFO    ] ================================================
[2026-10-18 18:07:54,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:07:54
[2026-10-18 18:07:54,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:07:54,921.921 INFO    ] Initializing speech engine...
[2026-10-18 18:07:54,931.931 INFO    ] 2026-10-18 18:07:54
[2026-10-18 18:07:55,177.177 INFO    ] 2026-10-18 18:07:55
[2026-10-18 18:07:55,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:07:55,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:07:55,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:07:55,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:07:55,718.718 INFO    ] time= 18/10/2026 18:07:55
[2026-10-18 18:07:55,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:07:55,751.751 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:07:55,829.829 INFO    ] No existing commands found in stream
[2026-10-18 18:08:00,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:08:00,857.857 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-18 18:08:04,807.807 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:08:04,810.810 INFO    ] Checking for system updates...
[2026-10-18 18:08:04,846.846 INFO    ] 200
[2026-10-18 18:08:04,848.848 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:08:04,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:08:04,904.904 INFO    ] No update needed
[2026-10-18 18:08:04,906.906 INFO    ] Checking for camera pi updates...
[2026-10-18 18:08:04,939.939 INFO    ] 200
[2026-10-18 18:08:04,942.942 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:08:04,982.982 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:08:14,996.996 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:08:15,031.031 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:08:15,041.041 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:08:15,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:08:15,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:08:15,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:08:17,096.096 INFO    ] ================================================
[2026-10-18 18:08:17,112.112 INFO    ] Launching Daemon at Sun Oct 18 18:08:17 IST 2026
[2026-10-18 18:08:17,123.123 INFO    ] ================================================
[2026-10-18 18:08:17,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:08:17
[2026-10-18 18:08:18,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:08:18,748.748 INFO    ] Initializing speech engine...
[2026-10-18 18:08:18,759.759 INFO    ] 2026-10-18 18:08:18
[2026-10-18 18:08:19,041.041 INFO    ] 2026-10-18 18:08:19
[2026-10-18 18:08:19,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:08:19,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:08:19,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:08:19,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:08:19,542.542 INFO    ] time= 18/10/2026 18:08:19
[2026-10-18 18:08:19,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:08:19,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:08:19,768.768 INFO    ] No existing commands found in stream
[2026-10-18 18:08:24,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:08:24,801.801 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-18 18:08:27,798.798 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:08:27,801.801 INFO    ] Checking for system updates...
[2026-10-18 18:08:27,839.839 INFO    ] 200
[2026-10-18 18:08:27,842.842 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:08:27,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:08:27,899.899 INFO    ] No update needed
[2026-10-18 18:08:27,902.902 INFO    ] Checking for camera pi updates...
[2026-10-18 18:08:27,937.937 INFO    ] 200
[2026-10-18 18:08:27,940.940 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:08:27,981.981 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:08:37,997.997 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:08:38,037.037 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:08:38,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:08:38,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:08:38,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:08:38,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:08:40,103.103 INFO    ] ================================================
[2026-10-18 18:08:40,120.120 INFO    ] Launching Daemon at Sun Oct 18 18:08:40 IST 2026
[2026-10-18 18:08:40,132.132 INFO    ] ================================================
[2026-10-18 18:08:40,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:08:40
[2026-10-18 18:08:41,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:08:41,551.551 INFO    ] Initializing speech engine...
[2026-10-18 18:08:41,575.575 INFO    ] 2026-10-18 18:08:41
[2026-10-18 18:08:41,850.850 INFO    ] 2026-10-18 18:08:41
[2026-10-18 18:08:41,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:08:42,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:08:42,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:08:42,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:08:42,383.383 INFO    ] time= 18/10/2026 18:08:42
[2026-10-18 18:08:42,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:08:42,491.491 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:08:42,621.621 INFO    ] No existing commands found in stream
[2026-10-18 18:08:47,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:08:47,641.641 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-18 18:08:48,169.169 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:08:48,172.172 INFO    ] Checking for system updates...
[2026-10-18 18:08:48,209.209 INFO    ] 200
[2026-10-18 18:08:48,212.212 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:08:48,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:08:48,269.269 INFO    ] No update needed
[2026-10-18 18:08:48,271.271 INFO    ] Checking for camera pi updates...
[2026-10-18 18:08:48,306.306 INFO    ] 200
[2026-10-18 18:08:48,309.309 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:08:48,351.351 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:08:58,368.368 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d35150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:08:58,408.408 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:08:58,419.419 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:08:58,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:08:58,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:08:58,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:09:00,474.474 INFO    ] ================================================
[2026-10-18 18:09:00,490.490 INFO    ] Launching Daemon at Sun Oct 18 18:09:00 IST 2026
[2026-10-18 18:09:00,501.501 INFO    ] ================================================
[2026-10-18 18:09:01,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:09:01
[2026-10-18 18:09:01,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:09:02,281.281 INFO    ] Initializing speech engine...
[2026-10-18 18:09:02,293.293 INFO    ] 2026-10-18 18:09:02
[2026-10-18 18:09:02,627.627 INFO    ] 2026-10-18 18:09:02
[2026-10-18 18:09:02,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:09:02,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:09:02,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:09:03,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:09:03,226.226 INFO    ] time= 18/10/2026 18:09:03
[2026-10-18 18:09:03,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:09:03,349.349 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:09:03,488.488 INFO    ] No existing commands found in stream
[2026-10-18 18:09:08,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:09:08,521.521 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-18 18:09:12,845.845 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:09:12,848.848 INFO    ] Checking for system updates...
[2026-10-18 18:09:12,883.883 INFO    ] 200
[2026-10-18 18:09:12,886.886 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:09:12,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:09:12,942.942 INFO    ] No update needed
[2026-10-18 18:09:12,944.944 INFO    ] Checking for camera pi updates...
[2026-10-18 18:09:12,978.978 INFO    ] 200
[2026-10-18 18:09:12,980.980 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:09:13,026.026 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:09:23,042.042 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:09:23,077.077 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:09:23,087.087 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:09:23,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:09:23,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:09:23,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:09:25,140.140 INFO    ] ================================================
[2026-10-18 18:09:25,156.156 INFO    ] Launching Daemon at Sun Oct 18 18:09:25 IST 2026
[2026-10-18 18:09:25,167.167 INFO    ] ================================================
[2026-10-18 18:09:25,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:09:25
[2026-10-18 18:09:26,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:09:26,573.573 INFO    ] Initializing speech engine...
[2026-10-18 18:09:26,588.588 INFO    ] 2026-10-18 18:09:26
[2026-10-18 18:09:26,855.855 INFO    ] 2026-10-18 18:09:26
[2026-10-18 18:09:26,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:09:27,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:09:27,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:09:27,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:09:27,342.342 INFO    ] time= 18/10/2026 18:09:27
[2026-10-18 18:09:27,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:09:27,432.432 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:09:27,584.584 INFO    ] No existing commands found in stream
[2026-10-18 18:09:32,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:09:32,601.601 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-18 18:09:36,205.205 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:09:36,208.208 INFO    ] Checking for system updates...
[2026-10-18 18:09:36,244.244 INFO    ] 200
[2026-10-18 18:09:36,247.247 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:09:36,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:09:36,302.302 INFO    ] No update needed
[2026-10-18 18:09:36,305.305 INFO    ] Checking for camera pi updates...
[2026-10-18 18:09:36,338.338 INFO    ] 200
[2026-10-18 18:09:36,341.341 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:09:36,382.382 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:09:46,397.397 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:09:46,432.432 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:09:46,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:09:46,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:09:46,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:09:46,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:09:48,496.496 INFO    ] ================================================
[2026-10-18 18:09:48,512.512 INFO    ] Launching Daemon at Sun Oct 18 18:09:48 IST 2026
[2026-10-18 18:09:48,524.524 INFO    ] ================================================
[2026-10-18 18:09:49,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:09:49
[2026-10-18 18:09:49,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:09:49,940.940 INFO    ] Initializing speech engine...
[2026-10-18 18:09:49,963.963 INFO    ] 2026-10-18 18:09:49
[2026-10-18 18:09:50,223.223 INFO    ] 2026-10-18 18:09:50
[2026-10-18 18:09:50,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:09:50,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:09:50,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:09:50,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:09:50,665.665 INFO    ] time= 18/10/2026 18:09:50
[2026-10-18 18:09:50,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:09:50,773.773 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:09:50,893.893 INFO    ] No existing commands found in stream
[2026-10-18 18:09:55,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:09:55,926.926 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-18 18:09:56,704.704 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:09:56,707.707 INFO    ] Checking for system updates...
[2026-10-18 18:09:56,746.746 INFO    ] 200
[2026-10-18 18:09:56,749.749 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:09:56,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:09:56,802.802 INFO    ] No update needed
[2026-10-18 18:09:56,805.805 INFO    ] Checking for camera pi updates...
[2026-10-18 18:09:56,842.842 INFO    ] 200
[2026-10-18 18:09:56,844.844 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:09:56,884.884 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:10:06,911.911 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:10:06,945.945 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:10:06,955.955 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:10:06,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:10:06,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:10:06,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:10:09,008.008 INFO    ] ================================================
[2026-10-18 18:10:09,024.024 INFO    ] Launching Daemon at Sun Oct 18 18:10:09 IST 2026
[2026-10-18 18:10:09,035.035 INFO    ] ================================================
[2026-10-18 18:10:09,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:10:09
[2026-10-18 18:10:10,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:10:10,460.460 INFO    ] Initializing speech engine...
[2026-10-18 18:10:10,467.467 INFO    ] 2026-10-18 18:10:10
[2026-10-18 18:10:10,768.768 INFO    ] 2026-10-18 18:10:10
[2026-10-18 18:10:10,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:10:11,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:10:11,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:10:11,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:10:11,249.249 INFO    ] time= 18/10/2026 18:10:11
[2026-10-18 18:10:11,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:10:11,337.337 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:10:11,461.461 INFO    ] No existing commands found in stream
[2026-10-18 18:10:16,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:10:16,484.484 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-18 18:10:18,122.122 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:10:18,124.124 INFO    ] Checking for system updates...
[2026-10-18 18:10:18,161.161 INFO    ] 200
[2026-10-18 18:10:18,164.164 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:10:18,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:10:18,221.221 INFO    ] No update needed
[2026-10-18 18:10:18,223.223 INFO    ] Checking for camera pi updates...
[2026-10-18 18:10:18,257.257 INFO    ] 200
[2026-10-18 18:10:18,260.260 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:10:18,301.301 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:10:28,317.317 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:10:28,353.353 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:10:28,363.363 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:10:28,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:10:28,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:10:28,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:10:30,416.416 INFO    ] ================================================
[2026-10-18 18:10:30,432.432 INFO    ] Launching Daemon at Sun Oct 18 18:10:30 IST 2026
[2026-10-18 18:10:30,443.443 INFO    ] ================================================
[2026-10-18 18:10:31,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:10:31
[2026-10-18 18:10:31,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:10:31,935.935 INFO    ] Initializing speech engine...
[2026-10-18 18:10:31,948.948 INFO    ] 2026-10-18 18:10:31
[2026-10-18 18:10:32,236.236 INFO    ] 2026-10-18 18:10:32
[2026-10-18 18:10:32,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:10:32,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:10:32,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:10:32,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:10:32,769.769 INFO    ] time= 18/10/2026 18:10:32
[2026-10-18 18:10:32,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:10:32,851.851 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:10:33,016.016 INFO    ] No existing commands found in stream
[2026-10-18 18:10:38,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:10:38,055.055 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-18 18:10:42,309.309 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:10:42,312.312 INFO    ] Checking for system updates...
[2026-10-18 18:10:42,350.350 INFO    ] 200
[2026-10-18 18:10:42,352.352 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:10:42,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:10:42,415.415 INFO    ] No update needed
[2026-10-18 18:10:42,418.418 INFO    ] Checking for camera pi updates...
[2026-10-18 18:10:42,457.457 INFO    ] 200
[2026-10-18 18:10:42,460.460 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:10:42,506.506 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:10:52,518.518 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:10:52,558.558 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:10:52,570.570 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:10:52,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:10:52,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:10:52,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:10:54,625.625 INFO    ] ================================================
[2026-10-18 18:10:54,641.641 INFO    ] Launching Daemon at Sun Oct 18 18:10:54 IST 2026
[2026-10-18 18:10:54,652.652 INFO    ] ================================================
[2026-10-18 18:10:55,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:10:55
[2026-10-18 18:10:55,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:10:56,106.106 INFO    ] Initializing speech engine...
[2026-10-18 18:10:56,114.114 INFO    ] 2026-10-18 18:10:56
[2026-10-18 18:10:56,389.389 INFO    ] 2026-10-18 18:10:56
[2026-10-18 18:10:56,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:10:56,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:10:56,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:10:56,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:10:56,933.933 INFO    ] time= 18/10/2026 18:10:56
[2026-10-18 18:10:56,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:10:56,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:10:57,132.132 INFO    ] No existing commands found in stream
[2026-10-18 18:11:02,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:11:02,168.168 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-18 18:11:05,244.244 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 18:11:05,246.246 INFO    ] Checking for system updates...
[2026-10-18 18:11:05,309.309 INFO    ] 200
[2026-10-18 18:11:05,312.312 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:11:05,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:11:05,372.372 INFO    ] No update needed
[2026-10-18 18:11:05,374.374 INFO    ] Checking for camera pi updates...
[2026-10-18 18:11:05,408.408 INFO    ] 200
[2026-10-18 18:11:05,410.410 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:11:05,451.451 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:11:15,466.466 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:11:15,502.502 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:11:15,512.512 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:11:15,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:11:15,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:11:15,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:11:17,565.565 INFO    ] ================================================
[2026-10-18 18:11:17,580.580 INFO    ] Launching Daemon at Sun Oct 18 18:11:17 IST 2026
[2026-10-18 18:11:17,591.591 INFO    ] ================================================
[2026-10-18 18:11:18,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:11:18
[2026-10-18 18:11:18,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:11:19,012.012 INFO    ] Initializing speech engine...
[2026-10-18 18:11:19,019.019 INFO    ] 2026-10-18 18:11:19
[2026-10-18 18:11:19,310.310 INFO    ] 2026-10-18 18:11:19
[2026-10-18 18:11:19,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:11:19,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:11:19,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:11:19,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:11:19,803.803 INFO    ] time= 18/10/2026 18:11:19
[2026-10-18 18:11:19,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:11:19,927.927 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:11:20,079.079 INFO    ] No existing commands found in stream
[2026-10-18 18:11:25,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:11:25,117.117 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-18 18:11:28,672.672 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:11:28,675.675 INFO    ] Checking for system updates...
[2026-10-18 18:11:28,711.711 INFO    ] 200
[2026-10-18 18:11:28,713.713 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:11:28,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:11:28,769.769 INFO    ] No update needed
[2026-10-18 18:11:28,771.771 INFO    ] Checking for camera pi updates...
[2026-10-18 18:11:28,808.808 INFO    ] 200
[2026-10-18 18:11:28,810.810 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:11:28,854.854 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:11:38,868.868 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:11:38,902.902 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:11:38,912.912 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:11:38,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:11:38,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:11:38,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:11:40,965.965 INFO    ] ================================================
[2026-10-18 18:11:40,985.985 INFO    ] Launching Daemon at Sun Oct 18 18:11:40 IST 2026
[2026-10-18 18:11:41,996.996 INFO    ] ================================================
[2026-10-18 18:11:41,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:11:41
[2026-10-18 18:11:42,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:11:42,608.608 INFO    ] Initializing speech engine...
[2026-10-18 18:11:42,614.614 INFO    ] 2026-10-18 18:11:42
[2026-10-18 18:11:42,902.902 INFO    ] 2026-10-18 18:11:42
[2026-10-18 18:11:42,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:11:43,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:11:43,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:11:43,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:11:43,454.454 INFO    ] time= 18/10/2026 18:11:43
[2026-10-18 18:11:43,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:11:43,496.496 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:11:43,623.623 INFO    ] No existing commands found in stream
[2026-10-18 18:11:48,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:11:48,651.651 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-18 18:11:52,886.886 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:11:52,889.889 INFO    ] Checking for system updates...
[2026-10-18 18:11:52,925.925 INFO    ] 200
[2026-10-18 18:11:52,928.928 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:11:52,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:11:52,984.984 INFO    ] No update needed
[2026-10-18 18:11:52,987.987 INFO    ] Checking for camera pi updates...
[2026-10-18 18:11:53,022.022 INFO    ] 200
[2026-10-18 18:11:53,024.024 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:11:53,065.065 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:12:03,078.078 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:12:03,113.113 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:12:03,126.126 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:12:03,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:12:03,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:12:03,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:12:05,184.184 INFO    ] ================================================
[2026-10-18 18:12:05,200.200 INFO    ] Launching Daemon at Sun Oct 18 18:12:05 IST 2026
[2026-10-18 18:12:05,211.211 INFO    ] ================================================
[2026-10-18 18:12:05,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:12:05
[2026-10-18 18:12:06,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:12:06,817.817 INFO    ] Initializing speech engine...
[2026-10-18 18:12:06,826.826 INFO    ] 2026-10-18 18:12:06
[2026-10-18 18:12:07,096.096 INFO    ] 2026-10-18 18:12:07
[2026-10-18 18:12:07,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:12:07,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:12:07,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:12:07,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:12:07,664.664 INFO    ] time= 18/10/2026 18:12:07
[2026-10-18 18:12:07,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:12:07,693.693 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:12:07,830.830 INFO    ] No existing commands found in stream
[2026-10-18 18:12:12,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:12:12,860.860 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-18 18:12:14,234.234 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:12:14,237.237 INFO    ] Checking for system updates...
[2026-10-18 18:12:14,275.275 INFO    ] 200
[2026-10-18 18:12:14,278.278 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:12:14,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:12:14,334.334 INFO    ] No update needed
[2026-10-18 18:12:14,337.337 INFO    ] Checking for camera pi updates...
[2026-10-18 18:12:14,371.371 INFO    ] 200
[2026-10-18 18:12:14,374.374 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:12:14,415.415 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:12:24,432.432 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:12:24,472.472 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:12:24,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:12:24,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:12:24,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:12:24,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:12:26,537.537 INFO    ] ================================================
[2026-10-18 18:12:26,553.553 INFO    ] Launching Daemon at Sun Oct 18 18:12:26 IST 2026
[2026-10-18 18:12:26,565.565 INFO    ] ================================================
[2026-10-18 18:12:27,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:12:27
[2026-10-18 18:12:27,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:12:28,174.174 INFO    ] Initializing speech engine...
[2026-10-18 18:12:28,185.185 INFO    ] 2026-10-18 18:12:28
[2026-10-18 18:12:28,493.493 INFO    ] 2026-10-18 18:12:28
[2026-10-18 18:12:28,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:12:28,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:12:28,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:12:28,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:12:29,011.011 INFO    ] time= 18/10/2026 18:12:28
[2026-10-18 18:12:29,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:12:29,048.048 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:12:29,154.154 INFO    ] No existing commands found in stream
[2026-10-18 18:12:34,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:12:34,179.179 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-18 18:12:37,818.818 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:12:37,821.821 INFO    ] Checking for system updates...
[2026-10-18 18:12:37,858.858 INFO    ] 200
[2026-10-18 18:12:37,861.861 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:12:37,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:12:37,917.917 INFO    ] No update needed
[2026-10-18 18:12:37,919.919 INFO    ] Checking for camera pi updates...
[2026-10-18 18:12:37,958.958 INFO    ] 200
[2026-10-18 18:12:37,961.961 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:12:38,005.005 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:12:48,021.021 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:12:48,057.057 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:12:48,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:12:48,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:12:48,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:12:48,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:12:50,120.120 INFO    ] ================================================
[2026-10-18 18:12:50,136.136 INFO    ] Launching Daemon at Sun Oct 18 18:12:50 IST 2026
[2026-10-18 18:12:50,147.147 INFO    ] ================================================
[2026-10-18 18:12:50,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:12:50
[2026-10-18 18:12:51,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:12:51,607.607 INFO    ] Initializing speech engine...
[2026-10-18 18:12:51,618.618 INFO    ] 2026-10-18 18:12:51
[2026-10-18 18:12:51,878.878 INFO    ] 2026-10-18 18:12:51
[2026-10-18 18:12:51,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:12:52,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:12:52,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:12:52,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:12:52,372.372 INFO    ] time= 18/10/2026 18:12:52
[2026-10-18 18:12:52,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:12:52,430.430 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:12:52,577.577 INFO    ] No existing commands found in stream
[2026-10-18 18:12:57,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:12:57,602.602 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-18 18:13:01,982.982 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:13:01,986.986 INFO    ] Checking for system updates...
[2026-10-18 18:13:02,031.031 INFO    ] 200
[2026-10-18 18:13:02,034.034 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:13:02,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:13:02,103.103 INFO    ] No update needed
[2026-10-18 18:13:02,106.106 INFO    ] Checking for camera pi updates...
[2026-10-18 18:13:02,149.149 INFO    ] 200
[2026-10-18 18:13:02,152.152 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:13:02,200.200 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:13:12,216.216 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:13:12,251.251 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:13:12,261.261 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:13:12,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:13:12,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:13:12,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:13:14,315.315 INFO    ] ================================================
[2026-10-18 18:13:14,330.330 INFO    ] Launching Daemon at Sun Oct 18 18:13:14 IST 2026
[2026-10-18 18:13:14,342.342 INFO    ] ================================================
[2026-10-18 18:13:14,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:13:14
[2026-10-18 18:13:15,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:13:15,759.759 INFO    ] Initializing speech engine...
[2026-10-18 18:13:15,778.778 INFO    ] 2026-10-18 18:13:15
[2026-10-18 18:13:16,039.039 INFO    ] 2026-10-18 18:13:16
[2026-10-18 18:13:16,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:13:16,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:13:16,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:13:16,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:13:16,534.534 INFO    ] time= 18/10/2026 18:13:16
[2026-10-18 18:13:16,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:13:16,637.637 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:13:16,774.774 INFO    ] No existing commands found in stream
[2026-10-18 18:13:21,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:13:21,800.800 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-18 18:13:24,711.711 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 18:13:24,714.714 INFO    ] Checking for system updates...
[2026-10-18 18:13:24,749.749 INFO    ] 200
[2026-10-18 18:13:24,752.752 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:13:24,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:13:24,807.807 INFO    ] No update needed
[2026-10-18 18:13:24,809.809 INFO    ] Checking for camera pi updates...
[2026-10-18 18:13:24,842.842 INFO    ] 200
[2026-10-18 18:13:24,844.844 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:13:24,885.885 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:13:34,898.898 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:13:34,932.932 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:13:34,942.942 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:13:34,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:13:34,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:13:34,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:13:37,994.994 INFO    ] ================================================
[2026-10-18 18:13:37,010.010 INFO    ] Launching Daemon at Sun Oct 18 18:13:37 IST 2026
[2026-10-18 18:13:37,021.021 INFO    ] ================================================
[2026-10-18 18:13:37,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:13:37
[2026-10-18 18:13:38,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:13:38,533.533 INFO    ] Initializing speech engine...
[2026-10-18 18:13:38,541.541 INFO    ] 2026-10-18 18:13:38
[2026-10-18 18:13:38,791.791 INFO    ] 2026-10-18 18:13:38
[2026-10-18 18:13:38,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:13:39,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:13:39,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:13:39,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:13:39,358.358 INFO    ] time= 18/10/2026 18:13:39
[2026-10-18 18:13:39,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:13:39,382.382 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:13:39,509.509 INFO    ] No existing commands found in stream
[2026-10-18 18:13:44,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:13:44,529.529 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-18 18:13:48,446.446 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 18:13:48,449.449 INFO    ] Checking for system updates...
[2026-10-18 18:13:48,488.488 INFO    ] 200
[2026-10-18 18:13:48,490.490 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:13:48,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:13:48,549.549 INFO    ] No update needed
[2026-10-18 18:13:48,551.551 INFO    ] Checking for camera pi updates...
[2026-10-18 18:13:48,586.586 INFO    ] 200
[2026-10-18 18:13:48,589.589 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:13:48,632.632 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:13:58,648.648 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:13:58,683.683 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:13:58,692.692 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:13:58,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:13:58,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:13:58,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:14:00,746.746 INFO    ] ================================================
[2026-10-18 18:14:00,761.761 INFO    ] Launching Daemon at Sun Oct 18 18:14:00 IST 2026
[2026-10-18 18:14:00,773.773 INFO    ] ================================================
[2026-10-18 18:14:01,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:14:01
[2026-10-18 18:14:02,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:14:02,471.471 INFO    ] Initializing speech engine...
[2026-10-18 18:14:02,486.486 INFO    ] 2026-10-18 18:14:02
[2026-10-18 18:14:02,852.852 INFO    ] 2026-10-18 18:14:02
[2026-10-18 18:14:02,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:14:03,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:14:03,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:14:03,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:14:03,393.393 INFO    ] time= 18/10/2026 18:14:03
[2026-10-18 18:14:03,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:14:03,447.447 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:14:03,575.575 INFO    ] No existing commands found in stream
[2026-10-18 18:14:08,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:14:08,594.594 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-18 18:14:12,099.099 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:14:12,102.102 INFO    ] Checking for system updates...
[2026-10-18 18:14:12,140.140 INFO    ] 200
[2026-10-18 18:14:12,142.142 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:14:12,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:14:12,197.197 INFO    ] No update needed
[2026-10-18 18:14:12,200.200 INFO    ] Checking for camera pi updates...
[2026-10-18 18:14:12,235.235 INFO    ] 200
[2026-10-18 18:14:12,238.238 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:14:12,278.278 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:14:22,295.295 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:14:22,334.334 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:14:22,345.345 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:14:22,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:14:22,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:14:22,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:14:24,398.398 INFO    ] ================================================
[2026-10-18 18:14:24,414.414 INFO    ] Launching Daemon at Sun Oct 18 18:14:24 IST 2026
[2026-10-18 18:14:24,426.426 INFO    ] ================================================
[2026-10-18 18:14:24,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:14:24
[2026-10-18 18:14:25,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:14:25,852.852 INFO    ] Initializing speech engine...
[2026-10-18 18:14:25,861.861 INFO    ] 2026-10-18 18:14:25
[2026-10-18 18:14:26,106.106 INFO    ] 2026-10-18 18:14:26
[2026-10-18 18:14:26,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:14:26,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:14:26,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:14:26,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:14:26,660.660 INFO    ] time= 18/10/2026 18:14:26
[2026-10-18 18:14:26,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:14:26,684.684 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:14:26,816.816 INFO    ] No existing commands found in stream
[2026-10-18 18:14:31,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:14:31,833.833 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-18 18:14:34,044.044 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 18:14:34,047.047 INFO    ] Checking for system updates...
[2026-10-18 18:14:34,082.082 INFO    ] 200
[2026-10-18 18:14:34,085.085 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:14:34,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:14:34,139.139 INFO    ] No update needed
[2026-10-18 18:14:34,141.141 INFO    ] Checking for camera pi updates...
[2026-10-18 18:14:34,178.178 INFO    ] 200
[2026-10-18 18:14:34,180.180 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:14:34,223.223 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:14:44,239.239 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:14:44,273.273 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:14:44,283.283 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:14:44,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:14:44,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:14:44,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:14:46,336.336 INFO    ] ================================================
[2026-10-18 18:14:46,351.351 INFO    ] Launching Daemon at Sun Oct 18 18:14:46 IST 2026
[2026-10-18 18:14:46,363.363 INFO    ] ================================================
[2026-10-18 18:14:46,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:14:46
[2026-10-18 18:14:47,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:14:47,870.870 INFO    ] Initializing speech engine...
[2026-10-18 18:14:47,877.877 INFO    ] 2026-10-18 18:14:47
[2026-10-18 18:14:48,189.189 INFO    ] 2026-10-18 18:14:48
[2026-10-18 18:14:48,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:14:48,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:14:48,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:14:48,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:14:48,695.695 INFO    ] time= 18/10/2026 18:14:48
[2026-10-18 18:14:48,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:14:48,742.742 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:14:48,851.851 INFO    ] No existing commands found in stream
[2026-10-18 18:14:53,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:14:53,888.888 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-18 18:14:59,684.684 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:14:59,687.687 INFO    ] Checking for system updates...
[2026-10-18 18:14:59,726.726 INFO    ] 200
[2026-10-18 18:14:59,730.730 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:14:59,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:14:59,791.791 INFO    ] No update needed
[2026-10-18 18:14:59,793.793 INFO    ] Checking for camera pi updates...
[2026-10-18 18:14:59,834.834 INFO    ] 200
[2026-10-18 18:14:59,837.837 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:14:59,882.882 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:15:09,902.902 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:15:09,941.941 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:15:09,952.952 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:15:09,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:15:09,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:15:09,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:15:12,007.007 INFO    ] ================================================
[2026-10-18 18:15:12,023.023 INFO    ] Launching Daemon at Sun Oct 18 18:15:12 IST 2026
[2026-10-18 18:15:12,034.034 INFO    ] ================================================
[2026-10-18 18:15:12,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:15:12
[2026-10-18 18:15:13,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:15:13,466.466 INFO    ] Initializing speech engine...
[2026-10-18 18:15:13,481.481 INFO    ] 2026-10-18 18:15:13
[2026-10-18 18:15:13,751.751 INFO    ] 2026-10-18 18:15:13
[2026-10-18 18:15:13,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:15:14,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:15:14,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:15:14,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:15:14,256.256 INFO    ] time= 18/10/2026 18:15:14
[2026-10-18 18:15:14,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:15:14,313.313 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:15:14,452.452 INFO    ] No existing commands found in stream
[2026-10-18 18:15:19,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:15:19,471.471 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-18 18:15:22,199.199 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 18:15:22,202.202 INFO    ] Checking for system updates...
[2026-10-18 18:15:22,240.240 INFO    ] 200
[2026-10-18 18:15:22,242.242 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:15:22,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:15:22,297.297 INFO    ] No update needed
[2026-10-18 18:15:22,299.299 INFO    ] Checking for camera pi updates...
[2026-10-18 18:15:22,333.333 INFO    ] 200
[2026-10-18 18:15:22,336.336 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:15:22,376.376 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:15:32,388.388 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:15:32,425.425 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:15:32,435.435 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:15:32,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:15:32,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:15:32,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:15:34,490.490 INFO    ] ================================================
[2026-10-18 18:15:34,506.506 INFO    ] Launching Daemon at Sun Oct 18 18:15:34 IST 2026
[2026-10-18 18:15:34,518.518 INFO    ] ================================================
[2026-10-18 18:15:35,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:15:35
[2026-10-18 18:15:35,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:15:35,968.968 INFO    ] Initializing speech engine...
[2026-10-18 18:15:35,977.977 INFO    ] 2026-10-18 18:15:35
[2026-10-18 18:15:36,232.232 INFO    ] 2026-10-18 18:15:36
[2026-10-18 18:15:36,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:15:36,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:15:36,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:15:36,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:15:36,802.802 INFO    ] time= 18/10/2026 18:15:36
[2026-10-18 18:15:36,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:15:36,825.825 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:15:36,974.974 INFO    ] No existing commands found in stream
[2026-10-18 18:15:41,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:15:41,991.991 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-18 18:15:44,333.333 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:15:44,335.335 INFO    ] Checking for system updates...
[2026-10-18 18:15:44,372.372 INFO    ] 200
[2026-10-18 18:15:44,374.374 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:15:44,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:15:44,433.433 INFO    ] No update needed
[2026-10-18 18:15:44,435.435 INFO    ] Checking for camera pi updates...
[2026-10-18 18:15:44,472.472 INFO    ] 200
[2026-10-18 18:15:44,474.474 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:15:44,518.518 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:15:54,532.532 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:15:54,567.567 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:15:54,576.576 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:15:54,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:15:54,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:15:54,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:15:56,629.629 INFO    ] ================================================
[2026-10-18 18:15:56,644.644 INFO    ] Launching Daemon at Sun Oct 18 18:15:56 IST 2026
[2026-10-18 18:15:56,656.656 INFO    ] ================================================
[2026-10-18 18:15:57,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:15:57
[2026-10-18 18:15:57,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:15:58,092.092 INFO    ] Initializing speech engine...
[2026-10-18 18:15:58,115.115 INFO    ] 2026-10-18 18:15:58
[2026-10-18 18:15:58,369.369 INFO    ] 2026-10-18 18:15:58
[2026-10-18 18:15:58,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:15:58,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:15:58,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:15:58,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:15:58,925.925 INFO    ] time= 18/10/2026 18:15:58
[2026-10-18 18:15:58,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:15:58,951.951 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:15:59,080.080 INFO    ] No existing commands found in stream
[2026-10-18 18:16:04,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:16:04,107.107 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-18 18:16:04,768.768 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 18:16:04,770.770 INFO    ] Checking for system updates...
[2026-10-18 18:16:04,806.806 INFO    ] 200
[2026-10-18 18:16:04,809.809 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:16:04,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:16:04,869.869 INFO    ] No update needed
[2026-10-18 18:16:04,871.871 INFO    ] Checking for camera pi updates...
[2026-10-18 18:16:04,905.905 INFO    ] 200
[2026-10-18 18:16:04,907.907 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:16:04,948.948 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:16:14,963.963 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:16:14,999.999 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:16:15,008.008 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:16:15,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:16:15,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:16:15,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:16:17,063.063 INFO    ] ================================================
[2026-10-18 18:16:17,078.078 INFO    ] Launching Daemon at Sun Oct 18 18:16:17 IST 2026
[2026-10-18 18:16:17,089.089 INFO    ] ================================================
[2026-10-18 18:16:17,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:16:17
[2026-10-18 18:16:18,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:16:18,551.551 INFO    ] Initializing speech engine...
[2026-10-18 18:16:18,558.558 INFO    ] 2026-10-18 18:16:18
[2026-10-18 18:16:18,818.818 INFO    ] 2026-10-18 18:16:18
[2026-10-18 18:16:18,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:16:19,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:16:19,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:16:19,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:16:19,302.302 INFO    ] time= 18/10/2026 18:16:19
[2026-10-18 18:16:19,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:16:19,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:16:19,519.519 INFO    ] No existing commands found in stream
[2026-10-18 18:16:24,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:16:24,536.536 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-18 18:16:27,264.264 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:16:27,267.267 INFO    ] Checking for system updates...
[2026-10-18 18:16:27,303.303 INFO    ] 200
[2026-10-18 18:16:27,306.306 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:16:27,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:16:27,361.361 INFO    ] No update needed
[2026-10-18 18:16:27,363.363 INFO    ] Checking for camera pi updates...
[2026-10-18 18:16:27,401.401 INFO    ] 200
[2026-10-18 18:16:27,403.403 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:16:27,443.443 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:16:37,460.460 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:16:37,496.496 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:16:37,506.506 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:16:37,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:16:37,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:16:37,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:16:39,560.560 INFO    ] ================================================
[2026-10-18 18:16:39,576.576 INFO    ] Launching Daemon at Sun Oct 18 18:16:39 IST 2026
[2026-10-18 18:16:39,587.587 INFO    ] ================================================
[2026-10-18 18:16:40,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:16:40
[2026-10-18 18:16:40,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:16:41,156.156 INFO    ] Initializing speech engine...
[2026-10-18 18:16:41,168.168 INFO    ] 2026-10-18 18:16:41
[2026-10-18 18:16:41,479.479 INFO    ] 2026-10-18 18:16:41
[2026-10-18 18:16:41,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:16:41,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:16:41,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:16:41,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:16:41,995.995 INFO    ] time= 18/10/2026 18:16:41
[2026-10-18 18:16:42,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:16:42,043.043 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:16:42,162.162 INFO    ] No existing commands found in stream
[2026-10-18 18:16:47,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:16:47,200.200 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-18 18:16:47,817.817 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:16:47,820.820 INFO    ] Checking for system updates...
[2026-10-18 18:16:47,858.858 INFO    ] 200
[2026-10-18 18:16:47,861.861 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:16:47,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:16:47,917.917 INFO    ] No update needed
[2026-10-18 18:16:47,920.920 INFO    ] Checking for camera pi updates...
[2026-10-18 18:16:47,954.954 INFO    ] 200
[2026-10-18 18:16:47,957.957 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:16:48,000.000 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:16:58,017.017 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:16:58,059.059 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:16:58,070.070 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:16:58,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:16:58,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:16:58,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:17:00,126.126 INFO    ] ================================================
[2026-10-18 18:17:00,142.142 INFO    ] Launching Daemon at Sun Oct 18 18:17:00 IST 2026
[2026-10-18 18:17:00,154.154 INFO    ] ================================================
[2026-10-18 18:17:00,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:17:00
[2026-10-18 18:17:01,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:17:01,952.952 INFO    ] Initializing speech engine...
[2026-10-18 18:17:01,957.957 INFO    ] 2026-10-18 18:17:01
[2026-10-18 18:17:02,500.500 INFO    ] 2026-10-18 18:17:02
[2026-10-18 18:17:02,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:17:02,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:17:02,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:17:03,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:17:03,039.039 INFO    ] time= 18/10/2026 18:17:03
[2026-10-18 18:17:03,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:17:03,078.078 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:17:03,233.233 INFO    ] No existing commands found in stream
[2026-10-18 18:17:08,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:17:08,263.263 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-18 18:17:12,507.507 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:17:12,510.510 INFO    ] Checking for system updates...
[2026-10-18 18:17:12,546.546 INFO    ] 200
[2026-10-18 18:17:12,549.549 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:17:12,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:17:12,604.604 INFO    ] No update needed
[2026-10-18 18:17:12,607.607 INFO    ] Checking for camera pi updates...
[2026-10-18 18:17:12,640.640 INFO    ] 200
[2026-10-18 18:17:12,643.643 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:17:12,688.688 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:17:22,704.704 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:17:22,740.740 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:17:22,750.750 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:17:22,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:17:22,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:17:22,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:17:24,805.805 INFO    ] ================================================
[2026-10-18 18:17:24,821.821 INFO    ] Launching Daemon at Sun Oct 18 18:17:24 IST 2026
[2026-10-18 18:17:24,833.833 INFO    ] ================================================
[2026-10-18 18:17:25,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:17:25
[2026-10-18 18:17:26,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:17:26,289.289 INFO    ] Initializing speech engine...
[2026-10-18 18:17:26,297.297 INFO    ] 2026-10-18 18:17:26
[2026-10-18 18:17:26,567.567 INFO    ] 2026-10-18 18:17:26
[2026-10-18 18:17:26,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:17:26,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:17:26,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:17:27,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:17:27,104.104 INFO    ] time= 18/10/2026 18:17:27
[2026-10-18 18:17:27,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:17:27,127.127 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:17:27,287.287 INFO    ] No existing commands found in stream
[2026-10-18 18:17:32,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:17:32,306.306 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-18 18:17:32,803.803 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:17:32,806.806 INFO    ] Checking for system updates...
[2026-10-18 18:17:32,848.848 INFO    ] 200
[2026-10-18 18:17:32,851.851 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:17:32,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:17:32,910.910 INFO    ] No update needed
[2026-10-18 18:17:32,913.913 INFO    ] Checking for camera pi updates...
[2026-10-18 18:17:32,953.953 INFO    ] 200
[2026-10-18 18:17:32,955.955 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:17:32,997.997 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:17:43,012.012 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:17:43,048.048 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:17:43,057.057 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:17:43,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:17:43,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:17:43,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:17:45,111.111 INFO    ] ================================================
[2026-10-18 18:17:45,126.126 INFO    ] Launching Daemon at Sun Oct 18 18:17:45 IST 2026
[2026-10-18 18:17:45,138.138 INFO    ] ================================================
[2026-10-18 18:17:45,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:17:45
[2026-10-18 18:17:46,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:17:46,755.755 INFO    ] Initializing speech engine...
[2026-10-18 18:17:46,761.761 INFO    ] 2026-10-18 18:17:46
[2026-10-18 18:17:47,074.074 INFO    ] 2026-10-18 18:17:47
[2026-10-18 18:17:47,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:17:47,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:17:47,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:17:47,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:17:47,597.597 INFO    ] time= 18/10/2026 18:17:47
[2026-10-18 18:17:47,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:17:47,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:17:47,784.784 INFO    ] No existing commands found in stream
[2026-10-18 18:17:52,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:17:52,818.818 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-18 18:17:57,124.124 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:17:57,127.127 INFO    ] Checking for system updates...
[2026-10-18 18:17:57,168.168 INFO    ] 200
[2026-10-18 18:17:57,170.170 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:17:57,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:17:57,226.226 INFO    ] No update needed
[2026-10-18 18:17:57,228.228 INFO    ] Checking for camera pi updates...
[2026-10-18 18:17:57,263.263 INFO    ] 200
[2026-10-18 18:17:57,265.265 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:17:57,307.307 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:18:07,323.323 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:18:07,359.359 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:18:07,369.369 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:18:07,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:18:07,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:18:07,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:18:09,422.422 INFO    ] ================================================
[2026-10-18 18:18:09,438.438 INFO    ] Launching Daemon at Sun Oct 18 18:18:09 IST 2026
[2026-10-18 18:18:09,449.449 INFO    ] ================================================
[2026-10-18 18:18:10,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:18:10
[2026-10-18 18:18:10,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:18:10,905.905 INFO    ] Initializing speech engine...
[2026-10-18 18:18:10,924.924 INFO    ] 2026-10-18 18:18:10
[2026-10-18 18:18:11,191.191 INFO    ] 2026-10-18 18:18:11
[2026-10-18 18:18:11,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:18:11,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:18:11,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:18:11,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:18:11,715.715 INFO    ] time= 18/10/2026 18:18:11
[2026-10-18 18:18:11,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:18:11,815.815 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:18:11,958.958 INFO    ] No existing commands found in stream
[2026-10-18 18:18:16,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:18:16,987.987 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-18 18:18:20,768.768 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:18:20,771.771 INFO    ] Checking for system updates...
[2026-10-18 18:18:20,807.807 INFO    ] 200
[2026-10-18 18:18:20,809.809 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:18:20,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:18:20,864.864 INFO    ] No update needed
[2026-10-18 18:18:20,866.866 INFO    ] Checking for camera pi updates...
[2026-10-18 18:18:20,900.900 INFO    ] 200
[2026-10-18 18:18:20,902.902 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:18:20,946.946 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:18:30,960.960 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:18:30,996.996 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:18:31,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:18:31,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:18:31,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:18:31,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:18:33,059.059 INFO    ] ================================================
[2026-10-18 18:18:33,076.076 INFO    ] Launching Daemon at Sun Oct 18 18:18:33 IST 2026
[2026-10-18 18:18:33,087.087 INFO    ] ================================================
[2026-10-18 18:18:33,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:18:33
[2026-10-18 18:18:34,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:18:34,506.506 INFO    ] Initializing speech engine...
[2026-10-18 18:18:34,522.522 INFO    ] 2026-10-18 18:18:34
[2026-10-18 18:18:34,804.804 INFO    ] 2026-10-18 18:18:34
[2026-10-18 18:18:34,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:18:35,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:18:35,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:18:35,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:18:35,230.230 INFO    ] time= 18/10/2026 18:18:35
[2026-10-18 18:18:35,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:18:35,324.324 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:18:35,442.442 INFO    ] No existing commands found in stream
[2026-10-18 18:18:40,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:18:40,458.458 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-18 18:18:41,270.270 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:18:41,273.273 INFO    ] Checking for system updates...
[2026-10-18 18:18:41,313.313 INFO    ] 200
[2026-10-18 18:18:41,316.316 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:18:41,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:18:41,372.372 INFO    ] No update needed
[2026-10-18 18:18:41,374.374 INFO    ] Checking for camera pi updates...
[2026-10-18 18:18:41,412.412 INFO    ] 200
[2026-10-18 18:18:41,414.414 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:18:41,457.457 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:18:51,473.473 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:18:51,512.512 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:18:51,523.523 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:18:51,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:18:51,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:18:51,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:18:53,578.578 INFO    ] ================================================
[2026-10-18 18:18:53,593.593 INFO    ] Launching Daemon at Sun Oct 18 18:18:53 IST 2026
[2026-10-18 18:18:53,611.611 INFO    ] ================================================
[2026-10-18 18:18:54,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:18:54
[2026-10-18 18:18:54,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:18:55,033.033 INFO    ] Initializing speech engine...
[2026-10-18 18:18:55,042.042 INFO    ] 2026-10-18 18:18:55
[2026-10-18 18:18:55,292.292 INFO    ] 2026-10-18 18:18:55
[2026-10-18 18:18:55,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:18:55,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:18:55,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:18:55,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:18:55,788.788 INFO    ] time= 18/10/2026 18:18:55
[2026-10-18 18:18:55,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:18:55,867.867 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:18:56,016.016 INFO    ] No existing commands found in stream
[2026-10-18 18:19:01,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:19:01,034.034 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-18 18:19:03,280.280 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 18:19:03,283.283 INFO    ] Checking for system updates...
[2026-10-18 18:19:03,329.329 INFO    ] 200
[2026-10-18 18:19:03,332.332 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:19:03,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:19:03,403.403 INFO    ] No update needed
[2026-10-18 18:19:03,406.406 INFO    ] Checking for camera pi updates...
[2026-10-18 18:19:03,443.443 INFO    ] 200
[2026-10-18 18:19:03,446.446 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:19:03,497.497 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:19:13,512.512 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:19:13,547.547 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:19:13,556.556 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:19:13,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:19:13,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:19:13,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:19:15,612.612 INFO    ] ================================================
[2026-10-18 18:19:15,629.629 INFO    ] Launching Daemon at Sun Oct 18 18:19:15 IST 2026
[2026-10-18 18:19:15,640.640 INFO    ] ================================================
[2026-10-18 18:19:16,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:19:16
[2026-10-18 18:19:16,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:19:17,263.263 INFO    ] Initializing speech engine...
[2026-10-18 18:19:17,276.276 INFO    ] 2026-10-18 18:19:17
[2026-10-18 18:19:17,579.579 INFO    ] 2026-10-18 18:19:17
[2026-10-18 18:19:17,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:19:17,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:19:17,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:19:18,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:19:18,132.132 INFO    ] time= 18/10/2026 18:19:18
[2026-10-18 18:19:18,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:19:18,186.186 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:19:18,330.330 INFO    ] No existing commands found in stream
[2026-10-18 18:19:23,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:19:23,370.370 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-18 18:19:26,260.260 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 18:19:26,263.263 INFO    ] Checking for system updates...
[2026-10-18 18:19:26,301.301 INFO    ] 200
[2026-10-18 18:19:26,304.304 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:19:26,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:19:26,360.360 INFO    ] No update needed
[2026-10-18 18:19:26,362.362 INFO    ] Checking for camera pi updates...
[2026-10-18 18:19:26,396.396 INFO    ] 200
[2026-10-18 18:19:26,398.398 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:19:26,438.438 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:19:36,454.454 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:19:36,489.489 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:19:36,499.499 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:19:36,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:19:36,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:19:36,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:19:38,551.551 INFO    ] ================================================
[2026-10-18 18:19:38,567.567 INFO    ] Launching Daemon at Sun Oct 18 18:19:38 IST 2026
[2026-10-18 18:19:38,578.578 INFO    ] ================================================
[2026-10-18 18:19:39,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:19:39
[2026-10-18 18:19:39,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:19:40,038.038 INFO    ] Initializing speech engine...
[2026-10-18 18:19:40,046.046 INFO    ] 2026-10-18 18:19:40
[2026-10-18 18:19:40,340.340 INFO    ] 2026-10-18 18:19:40
[2026-10-18 18:19:40,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:19:40,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:19:40,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:19:40,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:19:40,755.755 INFO    ] time= 18/10/2026 18:19:40
[2026-10-18 18:19:40,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:19:40,790.790 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:19:40,920.920 INFO    ] No existing commands found in stream
[2026-10-18 18:19:45,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:19:45,953.953 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-18 18:19:49,990.990 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:19:49,992.992 INFO    ] Checking for system updates...
[2026-10-18 18:19:50,028.028 INFO    ] 200
[2026-10-18 18:19:50,030.030 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:19:50,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:19:50,085.085 INFO    ] No update needed
[2026-10-18 18:19:50,087.087 INFO    ] Checking for camera pi updates...
[2026-10-18 18:19:50,121.121 INFO    ] 200
[2026-10-18 18:19:50,123.123 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:19:50,165.165 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:20:00,180.180 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:20:00,215.215 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:20:00,224.224 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:20:00,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:20:00,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:20:00,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:20:02,319.319 INFO    ] ================================================
[2026-10-18 18:20:02,368.368 INFO    ] Launching Daemon at Sun Oct 18 18:20:02 IST 2026
[2026-10-18 18:20:02,417.417 INFO    ] ================================================
[2026-10-18 18:20:03,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:20:03
[2026-10-18 18:20:04,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:20:04,531.531 INFO    ] Initializing speech engine...
[2026-10-18 18:20:04,541.541 INFO    ] 2026-10-18 18:20:04
[2026-10-18 18:20:04,826.826 INFO    ] 2026-10-18 18:20:04
[2026-10-18 18:20:04,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:20:05,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:20:05,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:20:05,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:20:05,359.359 INFO    ] time= 18/10/2026 18:20:05
[2026-10-18 18:20:05,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:20:05,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:20:05,539.539 INFO    ] No existing commands found in stream
[2026-10-18 18:20:10,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:20:10,568.568 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-18 18:20:11,402.402 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:20:11,405.405 INFO    ] Checking for system updates...
[2026-10-18 18:20:11,441.441 INFO    ] 200
[2026-10-18 18:20:11,443.443 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:20:11,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:20:11,503.503 INFO    ] No update needed
[2026-10-18 18:20:11,505.505 INFO    ] Checking for camera pi updates...
[2026-10-18 18:20:11,539.539 INFO    ] 200
[2026-10-18 18:20:11,542.542 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:20:11,582.582 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:20:21,598.598 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73dae150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:20:21,632.632 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:20:21,642.642 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:20:21,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:20:21,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:20:21,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:20:23,695.695 INFO    ] ================================================
[2026-10-18 18:20:23,710.710 INFO    ] Launching Daemon at Sun Oct 18 18:20:23 IST 2026
[2026-10-18 18:20:23,722.722 INFO    ] ================================================
[2026-10-18 18:20:24,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:20:24
[2026-10-18 18:20:24,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:20:25,185.185 INFO    ] Initializing speech engine...
[2026-10-18 18:20:25,195.195 INFO    ] 2026-10-18 18:20:25
[2026-10-18 18:20:25,443.443 INFO    ] 2026-10-18 18:20:25
[2026-10-18 18:20:25,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:20:25,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:20:25,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:20:25,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:20:25,940.940 INFO    ] time= 18/10/2026 18:20:25
[2026-10-18 18:20:25,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:20:26,009.009 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:20:26,144.144 INFO    ] No existing commands found in stream
[2026-10-18 18:20:31,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:20:31,167.167 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-18 18:20:34,805.805 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:20:34,808.808 INFO    ] Checking for system updates...
[2026-10-18 18:20:34,843.843 INFO    ] 200
[2026-10-18 18:20:34,847.847 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:20:34,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:20:34,901.901 INFO    ] No update needed
[2026-10-18 18:20:34,903.903 INFO    ] Checking for camera pi updates...
[2026-10-18 18:20:34,937.937 INFO    ] 200
[2026-10-18 18:20:34,939.939 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:20:34,980.980 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:20:44,996.996 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:20:45,032.032 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:20:45,042.042 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:20:45,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:20:45,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:20:45,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:20:47,096.096 INFO    ] ================================================
[2026-10-18 18:20:47,111.111 INFO    ] Launching Daemon at Sun Oct 18 18:20:47 IST 2026
[2026-10-18 18:20:47,123.123 INFO    ] ================================================
[2026-10-18 18:20:47,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:20:47
[2026-10-18 18:20:48,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:20:48,595.595 INFO    ] Initializing speech engine...
[2026-10-18 18:20:48,602.602 INFO    ] 2026-10-18 18:20:48
[2026-10-18 18:20:48,902.902 INFO    ] 2026-10-18 18:20:48
[2026-10-18 18:20:48,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:20:49,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:20:49,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:20:49,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:20:49,409.409 INFO    ] time= 18/10/2026 18:20:49
[2026-10-18 18:20:49,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:20:49,456.456 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:20:49,565.565 INFO    ] No existing commands found in stream
[2026-10-18 18:20:54,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:20:54,606.606 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-18 18:20:57,210.210 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 18:20:57,213.213 INFO    ] Checking for system updates...
[2026-10-18 18:20:57,255.255 INFO    ] 200
[2026-10-18 18:20:57,258.258 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:20:57,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:20:57,315.315 INFO    ] No update needed
[2026-10-18 18:20:57,318.318 INFO    ] Checking for camera pi updates...
[2026-10-18 18:20:57,352.352 INFO    ] 200
[2026-10-18 18:20:57,355.355 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:20:57,396.396 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:21:07,412.412 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:21:07,454.454 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:21:07,465.465 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:21:07,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:21:07,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:21:07,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:21:09,523.523 INFO    ] ================================================
[2026-10-18 18:21:09,538.538 INFO    ] Launching Daemon at Sun Oct 18 18:21:09 IST 2026
[2026-10-18 18:21:09,553.553 INFO    ] ================================================
[2026-10-18 18:21:10,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:21:10
[2026-10-18 18:21:10,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:21:11,015.015 INFO    ] Initializing speech engine...
[2026-10-18 18:21:11,021.021 INFO    ] 2026-10-18 18:21:11
[2026-10-18 18:21:11,283.283 INFO    ] 2026-10-18 18:21:11
[2026-10-18 18:21:11,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:21:11,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:21:11,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:21:11,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:21:11,767.767 INFO    ] time= 18/10/2026 18:21:11
[2026-10-18 18:21:11,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:21:11,836.836 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:21:11,983.983 INFO    ] No existing commands found in stream
[2026-10-18 18:21:17,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:21:17,009.009 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-18 18:21:18,071.071 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:21:18,074.074 INFO    ] Checking for system updates...
[2026-10-18 18:21:18,113.113 INFO    ] 200
[2026-10-18 18:21:18,116.116 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:21:18,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:21:18,179.179 INFO    ] No update needed
[2026-10-18 18:21:18,181.181 INFO    ] Checking for camera pi updates...
[2026-10-18 18:21:18,215.215 INFO    ] 200
[2026-10-18 18:21:18,218.218 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:21:18,258.258 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:21:28,273.273 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:21:28,309.309 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:21:28,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:21:28,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:21:28,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:21:28,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:21:30,375.375 INFO    ] ================================================
[2026-10-18 18:21:30,394.394 INFO    ] Launching Daemon at Sun Oct 18 18:21:30 IST 2026
[2026-10-18 18:21:30,405.405 INFO    ] ================================================
[2026-10-18 18:21:30,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:21:30
[2026-10-18 18:21:31,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:21:31,881.881 INFO    ] Initializing speech engine...
[2026-10-18 18:21:31,888.888 INFO    ] 2026-10-18 18:21:31
[2026-10-18 18:21:32,209.209 INFO    ] 2026-10-18 18:21:32
[2026-10-18 18:21:32,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:21:32,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:21:32,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:21:32,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:21:32,728.728 INFO    ] time= 18/10/2026 18:21:32
[2026-10-18 18:21:32,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:21:32,840.840 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:21:32,994.994 INFO    ] No existing commands found in stream
[2026-10-18 18:21:38,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:21:38,011.011 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-18 18:21:39,633.633 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 18:21:39,636.636 INFO    ] Checking for system updates...
[2026-10-18 18:21:39,672.672 INFO    ] 200
[2026-10-18 18:21:39,674.674 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:21:39,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:21:39,729.729 INFO    ] No update needed
[2026-10-18 18:21:39,732.732 INFO    ] Checking for camera pi updates...
[2026-10-18 18:21:39,765.765 INFO    ] 200
[2026-10-18 18:21:39,768.768 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:21:39,811.811 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:21:49,827.827 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:21:49,867.867 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:21:49,878.878 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:21:49,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:21:49,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:21:49,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:21:51,936.936 INFO    ] ================================================
[2026-10-18 18:21:51,953.953 INFO    ] Launching Daemon at Sun Oct 18 18:21:51 IST 2026
[2026-10-18 18:21:51,966.966 INFO    ] ================================================
[2026-10-18 18:21:52,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:21:52
[2026-10-18 18:21:53,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:21:53,532.532 INFO    ] Initializing speech engine...
[2026-10-18 18:21:53,541.541 INFO    ] 2026-10-18 18:21:53
[2026-10-18 18:21:53,792.792 INFO    ] 2026-10-18 18:21:53
[2026-10-18 18:21:53,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:21:54,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:21:54,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:21:54,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:21:54,275.275 INFO    ] time= 18/10/2026 18:21:54
[2026-10-18 18:21:54,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:21:54,369.369 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:21:54,516.516 INFO    ] No existing commands found in stream
[2026-10-18 18:21:59,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:21:59,535.535 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-18 18:22:02,015.015 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:22:02,020.020 INFO    ] Checking for system updates...
[2026-10-18 18:22:02,066.066 INFO    ] 200
[2026-10-18 18:22:02,070.070 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:22:02,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:22:02,154.154 INFO    ] No update needed
[2026-10-18 18:22:02,158.158 INFO    ] Checking for camera pi updates...
[2026-10-18 18:22:02,198.198 INFO    ] 200
[2026-10-18 18:22:02,202.202 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:22:02,250.250 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:22:12,267.267 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:22:12,306.306 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:22:12,317.317 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:22:12,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:22:12,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:22:12,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:22:14,372.372 INFO    ] ================================================
[2026-10-18 18:22:14,389.389 INFO    ] Launching Daemon at Sun Oct 18 18:22:14 IST 2026
[2026-10-18 18:22:14,400.400 INFO    ] ================================================
[2026-10-18 18:22:15,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:22:15
[2026-10-18 18:22:15,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:22:15,987.987 INFO    ] Initializing speech engine...
[2026-10-18 18:22:15,994.994 INFO    ] 2026-10-18 18:22:15
[2026-10-18 18:22:16,255.255 INFO    ] 2026-10-18 18:22:16
[2026-10-18 18:22:16,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:22:16,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:22:16,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:22:16,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:22:16,782.782 INFO    ] time= 18/10/2026 18:22:16
[2026-10-18 18:22:16,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:22:16,852.852 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:22:16,992.992 INFO    ] No existing commands found in stream
[2026-10-18 18:22:22,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:22:22,020.020 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-18 18:22:25,141.141 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:22:25,144.144 INFO    ] Checking for system updates...
[2026-10-18 18:22:25,181.181 INFO    ] 200
[2026-10-18 18:22:25,183.183 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:22:25,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:22:25,239.239 INFO    ] No update needed
[2026-10-18 18:22:25,242.242 INFO    ] Checking for camera pi updates...
[2026-10-18 18:22:25,276.276 INFO    ] 200
[2026-10-18 18:22:25,279.279 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:22:25,323.323 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:22:35,339.339 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:22:35,379.379 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:22:35,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:22:35,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:22:35,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:22:35,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:22:37,444.444 INFO    ] ================================================
[2026-10-18 18:22:37,460.460 INFO    ] Launching Daemon at Sun Oct 18 18:22:37 IST 2026
[2026-10-18 18:22:37,471.471 INFO    ] ================================================
[2026-10-18 18:22:38,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:22:38
[2026-10-18 18:22:38,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:22:38,874.874 INFO    ] Initializing speech engine...
[2026-10-18 18:22:38,889.889 INFO    ] 2026-10-18 18:22:38
[2026-10-18 18:22:39,155.155 INFO    ] 2026-10-18 18:22:39
[2026-10-18 18:22:39,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:22:39,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:22:39,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:22:39,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:22:39,632.632 INFO    ] time= 18/10/2026 18:22:39
[2026-10-18 18:22:39,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:22:39,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:22:39,867.867 INFO    ] No existing commands found in stream
[2026-10-18 18:22:44,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:22:44,893.893 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-18 18:22:47,777.777 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 18:22:47,780.780 INFO    ] Checking for system updates...
[2026-10-18 18:22:47,818.818 INFO    ] 200
[2026-10-18 18:22:47,821.821 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:22:47,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:22:47,875.875 INFO    ] No update needed
[2026-10-18 18:22:47,878.878 INFO    ] Checking for camera pi updates...
[2026-10-18 18:22:47,915.915 INFO    ] 200
[2026-10-18 18:22:47,917.917 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:22:47,957.957 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:22:57,972.972 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:22:58,006.006 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:22:58,016.016 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:22:58,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:22:58,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:22:58,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:23:00,069.069 INFO    ] ================================================
[2026-10-18 18:23:00,085.085 INFO    ] Launching Daemon at Sun Oct 18 18:23:00 IST 2026
[2026-10-18 18:23:00,096.096 INFO    ] ================================================
[2026-10-18 18:23:00,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:23:00
[2026-10-18 18:23:01,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:23:01,869.869 INFO    ] Initializing speech engine...
[2026-10-18 18:23:01,883.883 INFO    ] 2026-10-18 18:23:01
[2026-10-18 18:23:02,167.167 INFO    ] 2026-10-18 18:23:02
[2026-10-18 18:23:02,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:23:02,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:23:02,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:23:02,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:23:02,631.631 INFO    ] time= 18/10/2026 18:23:02
[2026-10-18 18:23:02,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:23:02,740.740 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:23:02,846.846 INFO    ] No existing commands found in stream
[2026-10-18 18:23:07,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:23:07,862.862 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-18 18:23:11,163.163 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 18:23:11,166.166 INFO    ] Checking for system updates...
[2026-10-18 18:23:11,201.201 INFO    ] 200
[2026-10-18 18:23:11,203.203 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:23:11,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:23:11,261.261 INFO    ] No update needed
[2026-10-18 18:23:11,263.263 INFO    ] Checking for camera pi updates...
[2026-10-18 18:23:11,297.297 INFO    ] 200
[2026-10-18 18:23:11,300.300 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:23:11,341.341 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:23:21,355.355 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:23:21,390.390 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:23:21,399.399 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:23:21,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:23:21,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:23:21,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:23:23,451.451 INFO    ] ================================================
[2026-10-18 18:23:23,467.467 INFO    ] Launching Daemon at Sun Oct 18 18:23:23 IST 2026
[2026-10-18 18:23:23,478.478 INFO    ] ================================================
[2026-10-18 18:23:24,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:23:24
[2026-10-18 18:23:24,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:23:24,961.961 INFO    ] Initializing speech engine...
[2026-10-18 18:23:24,971.971 INFO    ] 2026-10-18 18:23:24
[2026-10-18 18:23:25,232.232 INFO    ] 2026-10-18 18:23:25
[2026-10-18 18:23:25,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:23:25,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:23:25,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:23:25,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:23:25,743.743 INFO    ] time= 18/10/2026 18:23:25
[2026-10-18 18:23:25,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:23:25,850.850 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:23:25,979.979 INFO    ] No existing commands found in stream
[2026-10-18 18:23:31,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:23:31,004.004 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-18 18:23:33,370.370 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:23:33,372.372 INFO    ] Checking for system updates...
[2026-10-18 18:23:33,408.408 INFO    ] 200
[2026-10-18 18:23:33,410.410 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:23:33,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:23:33,464.464 INFO    ] No update needed
[2026-10-18 18:23:33,467.467 INFO    ] Checking for camera pi updates...
[2026-10-18 18:23:33,500.500 INFO    ] 200
[2026-10-18 18:23:33,502.502 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:23:33,547.547 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:23:43,561.561 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:23:43,597.597 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:23:43,606.606 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:23:43,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:23:43,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:23:43,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:23:45,659.659 INFO    ] ================================================
[2026-10-18 18:23:45,674.674 INFO    ] Launching Daemon at Sun Oct 18 18:23:45 IST 2026
[2026-10-18 18:23:45,686.686 INFO    ] ================================================
[2026-10-18 18:23:46,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:23:46
[2026-10-18 18:23:46,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:23:47,122.122 INFO    ] Initializing speech engine...
[2026-10-18 18:23:47,137.137 INFO    ] 2026-10-18 18:23:47
[2026-10-18 18:23:47,403.403 INFO    ] 2026-10-18 18:23:47
[2026-10-18 18:23:47,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:23:47,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:23:47,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:23:47,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:23:47,952.952 INFO    ] time= 18/10/2026 18:23:47
[2026-10-18 18:23:47,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:23:47,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:23:48,116.116 INFO    ] No existing commands found in stream
[2026-10-18 18:23:53,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:23:53,139.139 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-18 18:23:56,601.601 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:23:56,604.604 INFO    ] Checking for system updates...
[2026-10-18 18:23:56,641.641 INFO    ] 200
[2026-10-18 18:23:56,644.644 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:23:56,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:23:56,701.701 INFO    ] No update needed
[2026-10-18 18:23:56,703.703 INFO    ] Checking for camera pi updates...
[2026-10-18 18:23:56,740.740 INFO    ] 200
[2026-10-18 18:23:56,743.743 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:23:56,784.784 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:24:06,800.800 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:24:06,834.834 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:24:06,844.844 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:24:06,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:24:06,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:24:06,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:24:08,901.901 INFO    ] ================================================
[2026-10-18 18:24:08,916.916 INFO    ] Launching Daemon at Sun Oct 18 18:24:08 IST 2026
[2026-10-18 18:24:08,928.928 INFO    ] ================================================
[2026-10-18 18:24:09,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:24:09
[2026-10-18 18:24:10,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:24:10,384.384 INFO    ] Initializing speech engine...
[2026-10-18 18:24:10,391.391 INFO    ] 2026-10-18 18:24:10
[2026-10-18 18:24:10,653.653 INFO    ] 2026-10-18 18:24:10
[2026-10-18 18:24:10,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:24:10,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:24:10,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:24:11,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:24:11,196.196 INFO    ] time= 18/10/2026 18:24:11
[2026-10-18 18:24:11,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:24:11,218.218 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:24:11,354.354 INFO    ] No existing commands found in stream
[2026-10-18 18:24:16,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:24:16,385.385 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-18 18:24:20,037.037 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:24:20,039.039 INFO    ] Checking for system updates...
[2026-10-18 18:24:20,075.075 INFO    ] 200
[2026-10-18 18:24:20,078.078 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:24:20,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:24:20,138.138 INFO    ] No update needed
[2026-10-18 18:24:20,140.140 INFO    ] Checking for camera pi updates...
[2026-10-18 18:24:20,173.173 INFO    ] 200
[2026-10-18 18:24:20,175.175 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:24:20,216.216 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:24:30,231.231 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:24:30,267.267 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:24:30,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:24:30,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:24:30,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:24:30,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:24:32,330.330 INFO    ] ================================================
[2026-10-18 18:24:32,348.348 INFO    ] Launching Daemon at Sun Oct 18 18:24:32 IST 2026
[2026-10-18 18:24:32,359.359 INFO    ] ================================================
[2026-10-18 18:24:32,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:24:32
[2026-10-18 18:24:33,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:24:33,829.829 INFO    ] Initializing speech engine...
[2026-10-18 18:24:33,839.839 INFO    ] 2026-10-18 18:24:33
[2026-10-18 18:24:34,103.103 INFO    ] 2026-10-18 18:24:34
[2026-10-18 18:24:34,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:24:34,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:24:34,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:24:34,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:24:34,600.600 INFO    ] time= 18/10/2026 18:24:34
[2026-10-18 18:24:34,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:24:34,671.671 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:24:34,803.803 INFO    ] No existing commands found in stream
[2026-10-18 18:24:39,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:24:39,831.831 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-18 18:24:41,409.409 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:24:41,412.412 INFO    ] Checking for system updates...
[2026-10-18 18:24:41,448.448 INFO    ] 200
[2026-10-18 18:24:41,450.450 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:24:41,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:24:41,505.505 INFO    ] No update needed
[2026-10-18 18:24:41,508.508 INFO    ] Checking for camera pi updates...
[2026-10-18 18:24:41,542.542 INFO    ] 200
[2026-10-18 18:24:41,544.544 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:24:41,585.585 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:24:51,601.601 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:24:51,636.636 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:24:51,645.645 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:24:51,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:24:51,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:24:51,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:24:53,701.701 INFO    ] ================================================
[2026-10-18 18:24:53,717.717 INFO    ] Launching Daemon at Sun Oct 18 18:24:53 IST 2026
[2026-10-18 18:24:53,727.727 INFO    ] ================================================
[2026-10-18 18:24:54,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:24:54
[2026-10-18 18:24:54,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:24:55,183.183 INFO    ] Initializing speech engine...
[2026-10-18 18:24:55,193.193 INFO    ] 2026-10-18 18:24:55
[2026-10-18 18:24:55,442.442 INFO    ] 2026-10-18 18:24:55
[2026-10-18 18:24:55,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:24:55,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:24:55,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:24:55,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:24:55,941.941 INFO    ] time= 18/10/2026 18:24:55
[2026-10-18 18:24:56,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:24:56,010.010 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:24:56,158.158 INFO    ] No existing commands found in stream
[2026-10-18 18:25:01,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:25:01,186.186 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-18 18:25:01,911.911 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 18:25:01,914.914 INFO    ] Checking for system updates...
[2026-10-18 18:25:01,956.956 INFO    ] 200
[2026-10-18 18:25:01,959.959 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:25:02,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:25:02,033.033 INFO    ] No update needed
[2026-10-18 18:25:02,036.036 INFO    ] Checking for camera pi updates...
[2026-10-18 18:25:02,077.077 INFO    ] 200
[2026-10-18 18:25:02,080.080 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:25:02,148.148 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:25:12,163.163 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:25:12,199.199 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:25:12,209.209 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:25:12,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:25:12,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:25:12,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:25:14,264.264 INFO    ] ================================================
[2026-10-18 18:25:14,280.280 INFO    ] Launching Daemon at Sun Oct 18 18:25:14 IST 2026
[2026-10-18 18:25:14,292.292 INFO    ] ================================================
[2026-10-18 18:25:14,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:25:14
[2026-10-18 18:25:15,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:25:15,905.905 INFO    ] Initializing speech engine...
[2026-10-18 18:25:15,920.920 INFO    ] 2026-10-18 18:25:15
[2026-10-18 18:25:16,228.228 INFO    ] 2026-10-18 18:25:16
[2026-10-18 18:25:16,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:25:16,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:25:16,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:25:16,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:25:16,746.746 INFO    ] time= 18/10/2026 18:25:16
[2026-10-18 18:25:16,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:25:16,783.783 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:25:16,908.908 INFO    ] No existing commands found in stream
[2026-10-18 18:25:21,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:25:21,937.937 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-18 18:25:24,420.420 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 18:25:24,423.423 INFO    ] Checking for system updates...
[2026-10-18 18:25:24,458.458 INFO    ] 200
[2026-10-18 18:25:24,460.460 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:25:24,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:25:24,522.522 INFO    ] No update needed
[2026-10-18 18:25:24,524.524 INFO    ] Checking for camera pi updates...
[2026-10-18 18:25:24,558.558 INFO    ] 200
[2026-10-18 18:25:24,561.561 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:25:24,601.601 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:25:34,616.616 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:25:34,651.651 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:25:34,660.660 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:25:34,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:25:34,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:25:34,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:25:36,713.713 INFO    ] ================================================
[2026-10-18 18:25:36,728.728 INFO    ] Launching Daemon at Sun Oct 18 18:25:36 IST 2026
[2026-10-18 18:25:36,739.739 INFO    ] ================================================
[2026-10-18 18:25:37,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:25:37
[2026-10-18 18:25:38,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:25:38,409.409 INFO    ] Initializing speech engine...
[2026-10-18 18:25:38,421.421 INFO    ] 2026-10-18 18:25:38
[2026-10-18 18:25:38,713.713 INFO    ] 2026-10-18 18:25:38
[2026-10-18 18:25:38,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:25:39,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:25:39,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:25:39,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:25:39,259.259 INFO    ] time= 18/10/2026 18:25:39
[2026-10-18 18:25:39,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:25:39,311.311 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:25:39,431.431 INFO    ] No existing commands found in stream
[2026-10-18 18:25:44,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:25:44,470.470 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-18 18:25:47,111.111 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:25:47,114.114 INFO    ] Checking for system updates...
[2026-10-18 18:25:47,150.150 INFO    ] 200
[2026-10-18 18:25:47,153.153 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:25:47,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:25:47,212.212 INFO    ] No update needed
[2026-10-18 18:25:47,215.215 INFO    ] Checking for camera pi updates...
[2026-10-18 18:25:47,249.249 INFO    ] 200
[2026-10-18 18:25:47,251.251 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:25:47,293.293 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:25:57,307.307 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:25:57,342.342 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:25:57,352.352 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:25:57,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:25:57,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:25:57,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:25:59,405.405 INFO    ] ================================================
[2026-10-18 18:25:59,420.420 INFO    ] Launching Daemon at Sun Oct 18 18:25:59 IST 2026
[2026-10-18 18:25:59,432.432 INFO    ] ================================================
[2026-10-18 18:25:59,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:25:59
[2026-10-18 18:26:00,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:26:00,832.832 INFO    ] Initializing speech engine...
[2026-10-18 18:26:00,844.844 INFO    ] 2026-10-18 18:26:00
[2026-10-18 18:26:01,109.109 INFO    ] 2026-10-18 18:26:01
[2026-10-18 18:26:01,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:26:01,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:26:01,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:26:01,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:26:01,575.575 INFO    ] time= 18/10/2026 18:26:01
[2026-10-18 18:26:01,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:26:01,628.628 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:26:01,727.727 INFO    ] No existing commands found in stream
[2026-10-18 18:26:06,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:26:06,740.740 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-18 18:26:08,974.974 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 18:26:08,977.977 INFO    ] Checking for system updates...
[2026-10-18 18:26:09,013.013 INFO    ] 200
[2026-10-18 18:26:09,016.016 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:26:09,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:26:09,075.075 INFO    ] No update needed
[2026-10-18 18:26:09,078.078 INFO    ] Checking for camera pi updates...
[2026-10-18 18:26:09,111.111 INFO    ] 200
[2026-10-18 18:26:09,114.114 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:26:09,159.159 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:26:19,174.174 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:26:19,209.209 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:26:19,219.219 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:26:19,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:26:19,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:26:19,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:26:21,271.271 INFO    ] ================================================
[2026-10-18 18:26:21,288.288 INFO    ] Launching Daemon at Sun Oct 18 18:26:21 IST 2026
[2026-10-18 18:26:21,298.298 INFO    ] ================================================
[2026-10-18 18:26:21,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:26:21
[2026-10-18 18:26:22,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:26:22,763.763 INFO    ] Initializing speech engine...
[2026-10-18 18:26:22,768.768 INFO    ] 2026-10-18 18:26:22
[2026-10-18 18:26:23,017.017 INFO    ] 2026-10-18 18:26:23
[2026-10-18 18:26:23,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:26:23,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:26:23,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:26:23,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:26:23,573.573 INFO    ] time= 18/10/2026 18:26:23
[2026-10-18 18:26:23,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:26:23,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:26:23,721.721 INFO    ] No existing commands found in stream
[2026-10-18 18:26:28,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:26:28,740.740 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-18 18:26:30,356.356 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:26:30,359.359 INFO    ] Checking for system updates...
[2026-10-18 18:26:30,395.395 INFO    ] 200
[2026-10-18 18:26:30,398.398 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:26:30,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:26:30,452.452 INFO    ] No update needed
[2026-10-18 18:26:30,455.455 INFO    ] Checking for camera pi updates...
[2026-10-18 18:26:30,488.488 INFO    ] 200
[2026-10-18 18:26:30,491.491 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:26:30,537.537 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:26:40,553.553 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:26:40,589.589 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:26:40,599.599 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:26:40,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:26:40,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:26:40,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:26:42,653.653 INFO    ] ================================================
[2026-10-18 18:26:42,668.668 INFO    ] Launching Daemon at Sun Oct 18 18:26:42 IST 2026
[2026-10-18 18:26:42,680.680 INFO    ] ================================================
[2026-10-18 18:26:43,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:26:43
[2026-10-18 18:26:43,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:26:44,154.154 INFO    ] Initializing speech engine...
[2026-10-18 18:26:44,163.163 INFO    ] 2026-10-18 18:26:44
[2026-10-18 18:26:44,423.423 INFO    ] 2026-10-18 18:26:44
[2026-10-18 18:26:44,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:26:44,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:26:44,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:26:44,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:26:44,898.898 INFO    ] time= 18/10/2026 18:26:44
[2026-10-18 18:26:44,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:26:44,977.977 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:26:45,122.122 INFO    ] No existing commands found in stream
[2026-10-18 18:26:50,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:26:50,140.140 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-18 18:26:53,104.104 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:26:53,108.108 INFO    ] Checking for system updates...
[2026-10-18 18:26:53,150.150 INFO    ] 200
[2026-10-18 18:26:53,153.153 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:26:53,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:26:53,221.221 INFO    ] No update needed
[2026-10-18 18:26:53,223.223 INFO    ] Checking for camera pi updates...
[2026-10-18 18:26:53,256.256 INFO    ] 200
[2026-10-18 18:26:53,259.259 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:26:53,304.304 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:27:03,317.317 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:27:03,359.359 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:27:03,371.371 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:27:03,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:27:03,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:27:03,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:27:05,424.424 INFO    ] ================================================
[2026-10-18 18:27:05,440.440 INFO    ] Launching Daemon at Sun Oct 18 18:27:05 IST 2026
[2026-10-18 18:27:05,451.451 INFO    ] ================================================
[2026-10-18 18:27:06,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:27:06
[2026-10-18 18:27:06,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:27:06,850.850 INFO    ] Initializing speech engine...
[2026-10-18 18:27:06,859.859 INFO    ] 2026-10-18 18:27:06
[2026-10-18 18:27:07,131.131 INFO    ] 2026-10-18 18:27:07
[2026-10-18 18:27:07,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:27:07,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:27:07,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:27:07,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:27:07,640.640 INFO    ] time= 18/10/2026 18:27:07
[2026-10-18 18:27:07,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:27:07,712.712 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:27:07,876.876 INFO    ] No existing commands found in stream
[2026-10-18 18:27:12,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:27:12,910.910 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-18 18:27:14,638.638 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 18:27:14,641.641 INFO    ] Checking for system updates...
[2026-10-18 18:27:14,681.681 INFO    ] 200
[2026-10-18 18:27:14,683.683 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:27:14,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:27:14,746.746 INFO    ] No update needed
[2026-10-18 18:27:14,748.748 INFO    ] Checking for camera pi updates...
[2026-10-18 18:27:14,794.794 INFO    ] 200
[2026-10-18 18:27:14,796.796 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:27:14,837.837 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:27:24,852.852 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:27:24,894.894 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:27:24,905.905 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:27:24,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:27:24,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:27:24,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:27:26,961.961 INFO    ] ================================================
[2026-10-18 18:27:26,977.977 INFO    ] Launching Daemon at Sun Oct 18 18:27:26 IST 2026
[2026-10-18 18:27:26,988.988 INFO    ] ================================================
[2026-10-18 18:27:27,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:27:27
[2026-10-18 18:27:28,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:27:28,457.457 INFO    ] Initializing speech engine...
[2026-10-18 18:27:28,470.470 INFO    ] 2026-10-18 18:27:28
[2026-10-18 18:27:28,722.722 INFO    ] 2026-10-18 18:27:28
[2026-10-18 18:27:28,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:27:29,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:27:29,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:27:29,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:27:29,279.279 INFO    ] time= 18/10/2026 18:27:29
[2026-10-18 18:27:29,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:27:29,302.302 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:27:29,448.448 INFO    ] No existing commands found in stream
[2026-10-18 18:27:34,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:27:34,466.466 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-18 18:27:38,853.853 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 18:27:38,855.855 INFO    ] Checking for system updates...
[2026-10-18 18:27:38,891.891 INFO    ] 200
[2026-10-18 18:27:38,894.894 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:27:38,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:27:38,957.957 INFO    ] No update needed
[2026-10-18 18:27:38,959.959 INFO    ] Checking for camera pi updates...
[2026-10-18 18:27:38,997.997 INFO    ] 200
[2026-10-18 18:27:38,999.999 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:27:39,039.039 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:27:49,054.054 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:27:49,089.089 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:27:49,099.099 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:27:49,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:27:49,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:27:49,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:27:51,156.156 INFO    ] ================================================
[2026-10-18 18:27:51,172.172 INFO    ] Launching Daemon at Sun Oct 18 18:27:51 IST 2026
[2026-10-18 18:27:51,184.184 INFO    ] ================================================
[2026-10-18 18:27:51,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:27:51
[2026-10-18 18:27:52,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:27:52,677.677 INFO    ] Initializing speech engine...
[2026-10-18 18:27:52,689.689 INFO    ] 2026-10-18 18:27:52
[2026-10-18 18:27:52,954.954 INFO    ] 2026-10-18 18:27:52
[2026-10-18 18:27:53,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:27:53,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:27:53,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:27:53,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:27:53,502.502 INFO    ] time= 18/10/2026 18:27:53
[2026-10-18 18:27:53,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:27:53,550.550 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:27:53,660.660 INFO    ] No existing commands found in stream
[2026-10-18 18:27:58,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:27:58,683.683 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-18 18:28:02,218.218 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:28:02,221.221 INFO    ] Checking for system updates...
[2026-10-18 18:28:02,265.265 INFO    ] 200
[2026-10-18 18:28:02,268.268 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:28:02,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:28:02,331.331 INFO    ] No update needed
[2026-10-18 18:28:02,334.334 INFO    ] Checking for camera pi updates...
[2026-10-18 18:28:02,377.377 INFO    ] 200
[2026-10-18 18:28:02,380.380 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:28:02,432.432 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:28:12,447.447 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:28:12,481.481 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:28:12,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:28:12,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:28:12,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:28:12,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:28:14,544.544 INFO    ] ================================================
[2026-10-18 18:28:14,559.559 INFO    ] Launching Daemon at Sun Oct 18 18:28:14 IST 2026
[2026-10-18 18:28:14,569.569 INFO    ] ================================================
[2026-10-18 18:28:15,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:28:15
[2026-10-18 18:28:15,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:28:15,999.999 INFO    ] Initializing speech engine...
[2026-10-18 18:28:16,008.008 INFO    ] 2026-10-18 18:28:16
[2026-10-18 18:28:16,269.269 INFO    ] 2026-10-18 18:28:16
[2026-10-18 18:28:16,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:28:16,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:28:16,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:28:16,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:28:16,825.825 INFO    ] time= 18/10/2026 18:28:16
[2026-10-18 18:28:16,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:28:16,881.881 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:28:17,010.010 INFO    ] No existing commands found in stream
[2026-10-18 18:28:22,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:28:22,030.030 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-18 18:28:26,209.209 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:28:26,212.212 INFO    ] Checking for system updates...
[2026-10-18 18:28:26,250.250 INFO    ] 200
[2026-10-18 18:28:26,253.253 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:28:26,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:28:26,312.312 INFO    ] No update needed
[2026-10-18 18:28:26,315.315 INFO    ] Checking for camera pi updates...
[2026-10-18 18:28:26,353.353 INFO    ] 200
[2026-10-18 18:28:26,356.356 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:28:26,400.400 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:28:36,415.415 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:28:36,453.453 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:28:36,463.463 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:28:36,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:28:36,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:28:36,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:28:38,517.517 INFO    ] ================================================
[2026-10-18 18:28:38,532.532 INFO    ] Launching Daemon at Sun Oct 18 18:28:38 IST 2026
[2026-10-18 18:28:38,543.543 INFO    ] ================================================
[2026-10-18 18:28:39,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:28:39
[2026-10-18 18:28:39,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:28:39,998.998 INFO    ] Initializing speech engine...
[2026-10-18 18:28:40,014.014 INFO    ] 2026-10-18 18:28:40
[2026-10-18 18:28:40,274.274 INFO    ] 2026-10-18 18:28:40
[2026-10-18 18:28:40,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:28:40,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:28:40,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:28:40,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:28:40,783.783 INFO    ] time= 18/10/2026 18:28:40
[2026-10-18 18:28:40,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:28:40,842.842 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:28:40,988.988 INFO    ] No existing commands found in stream
[2026-10-18 18:28:46,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:28:46,005.005 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-18 18:28:46,853.853 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:28:46,856.856 INFO    ] Checking for system updates...
[2026-10-18 18:28:46,892.892 INFO    ] 200
[2026-10-18 18:28:46,895.895 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:28:46,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:28:46,951.951 INFO    ] No update needed
[2026-10-18 18:28:46,954.954 INFO    ] Checking for camera pi updates...
[2026-10-18 18:28:46,988.988 INFO    ] 200
[2026-10-18 18:28:46,991.991 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:28:47,035.035 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:28:57,051.051 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:28:57,090.090 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:28:57,100.100 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:28:57,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:28:57,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:28:57,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:28:59,155.155 INFO    ] ================================================
[2026-10-18 18:28:59,170.170 INFO    ] Launching Daemon at Sun Oct 18 18:28:59 IST 2026
[2026-10-18 18:28:59,181.181 INFO    ] ================================================
[2026-10-18 18:28:59,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:28:59
[2026-10-18 18:29:00,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:29:00,738.738 INFO    ] Initializing speech engine...
[2026-10-18 18:29:00,745.745 INFO    ] 2026-10-18 18:29:00
[2026-10-18 18:29:01,012.012 INFO    ] 2026-10-18 18:29:01
[2026-10-18 18:29:01,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:29:01,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:29:01,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:29:01,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:29:01,544.544 INFO    ] time= 18/10/2026 18:29:01
[2026-10-18 18:29:01,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:29:01,551.551 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:29:01,630.630 INFO    ] No existing commands found in stream
[2026-10-18 18:29:06,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:29:06,642.642 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-18 18:29:08,327.327 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:29:08,329.329 INFO    ] Checking for system updates...
[2026-10-18 18:29:08,365.365 INFO    ] 200
[2026-10-18 18:29:08,367.367 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:29:08,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:29:08,430.430 INFO    ] No update needed
[2026-10-18 18:29:08,433.433 INFO    ] Checking for camera pi updates...
[2026-10-18 18:29:08,469.469 INFO    ] 200
[2026-10-18 18:29:08,471.471 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:29:08,511.511 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:29:18,527.527 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:29:18,561.561 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:29:18,571.571 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:29:18,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:29:18,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:29:18,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:29:20,622.622 INFO    ] ================================================
[2026-10-18 18:29:20,638.638 INFO    ] Launching Daemon at Sun Oct 18 18:29:20 IST 2026
[2026-10-18 18:29:20,648.648 INFO    ] ================================================
[2026-10-18 18:29:21,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:29:21
[2026-10-18 18:29:21,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:29:22,092.092 INFO    ] Initializing speech engine...
[2026-10-18 18:29:22,106.106 INFO    ] 2026-10-18 18:29:22
[2026-10-18 18:29:22,392.392 INFO    ] 2026-10-18 18:29:22
[2026-10-18 18:29:22,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:29:22,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:29:22,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:29:22,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:29:22,809.809 INFO    ] time= 18/10/2026 18:29:22
[2026-10-18 18:29:22,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:29:22,882.882 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:29:23,018.018 INFO    ] No existing commands found in stream
[2026-10-18 18:29:28,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:29:28,038.038 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-18 18:29:31,421.421 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:29:31,425.425 INFO    ] Checking for system updates...
[2026-10-18 18:29:31,471.471 INFO    ] 200
[2026-10-18 18:29:31,478.478 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:29:31,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:29:31,547.547 INFO    ] No update needed
[2026-10-18 18:29:31,550.550 INFO    ] Checking for camera pi updates...
[2026-10-18 18:29:31,587.587 INFO    ] 200
[2026-10-18 18:29:31,589.589 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:29:31,633.633 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:29:41,648.648 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:29:41,682.682 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:29:41,691.691 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:29:41,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:29:41,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:29:41,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:29:43,743.743 INFO    ] ================================================
[2026-10-18 18:29:43,759.759 INFO    ] Launching Daemon at Sun Oct 18 18:29:43 IST 2026
[2026-10-18 18:29:43,770.770 INFO    ] ================================================
[2026-10-18 18:29:44,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:29:44
[2026-10-18 18:29:44,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:29:45,236.236 INFO    ] Initializing speech engine...
[2026-10-18 18:29:45,243.243 INFO    ] 2026-10-18 18:29:45
[2026-10-18 18:29:45,503.503 INFO    ] 2026-10-18 18:29:45
[2026-10-18 18:29:45,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:29:45,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:29:45,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:29:46,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:29:46,052.052 INFO    ] time= 18/10/2026 18:29:46
[2026-10-18 18:29:46,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:29:46,078.078 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:29:46,206.206 INFO    ] No existing commands found in stream
[2026-10-18 18:29:51,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:29:51,221.221 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-18 18:29:53,860.860 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:29:53,864.864 INFO    ] Checking for system updates...
[2026-10-18 18:29:53,900.900 INFO    ] 200
[2026-10-18 18:29:53,903.903 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:29:53,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:29:53,960.960 INFO    ] No update needed
[2026-10-18 18:29:53,962.962 INFO    ] Checking for camera pi updates...
[2026-10-18 18:29:53,997.997 INFO    ] 200
[2026-10-18 18:29:54,000.000 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:29:54,043.043 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:30:04,058.058 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:30:04,104.104 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:30:04,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:30:04,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:30:04,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:30:04,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:30:06,173.173 INFO    ] ================================================
[2026-10-18 18:30:06,190.190 INFO    ] Launching Daemon at Sun Oct 18 18:30:06 IST 2026
[2026-10-18 18:30:06,201.201 INFO    ] ================================================
[2026-10-18 18:30:06,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:30:06
[2026-10-18 18:30:07,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:30:07,653.653 INFO    ] Initializing speech engine...
[2026-10-18 18:30:07,660.660 INFO    ] 2026-10-18 18:30:07
[2026-10-18 18:30:07,955.955 INFO    ] 2026-10-18 18:30:07
[2026-10-18 18:30:07,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:30:08,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:30:08,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:30:08,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:30:08,492.492 INFO    ] time= 18/10/2026 18:30:08
[2026-10-18 18:30:08,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:30:08,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:30:08,734.734 INFO    ] No existing commands found in stream
[2026-10-18 18:30:13,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:30:13,750.750 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-18 18:30:16,821.821 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:30:16,823.823 INFO    ] Checking for system updates...
[2026-10-18 18:30:16,859.859 INFO    ] 200
[2026-10-18 18:30:16,862.862 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:30:16,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:30:16,924.924 INFO    ] No update needed
[2026-10-18 18:30:16,926.926 INFO    ] Checking for camera pi updates...
[2026-10-18 18:30:16,964.964 INFO    ] 200
[2026-10-18 18:30:16,967.967 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:30:17,007.007 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:30:27,023.023 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:30:27,058.058 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:30:27,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:30:27,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:30:27,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:30:27,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:30:29,120.120 INFO    ] ================================================
[2026-10-18 18:30:29,137.137 INFO    ] Launching Daemon at Sun Oct 18 18:30:29 IST 2026
[2026-10-18 18:30:29,149.149 INFO    ] ================================================
[2026-10-18 18:30:29,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:30:29
[2026-10-18 18:30:30,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:30:30,561.561 INFO    ] Initializing speech engine...
[2026-10-18 18:30:30,567.567 INFO    ] 2026-10-18 18:30:30
[2026-10-18 18:30:30,868.868 INFO    ] 2026-10-18 18:30:30
[2026-10-18 18:30:30,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:30:31,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:30:31,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:30:31,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:30:31,293.293 INFO    ] time= 18/10/2026 18:30:31
[2026-10-18 18:30:31,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:30:31,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:30:31,427.427 INFO    ] No existing commands found in stream
[2026-10-18 18:30:36,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:30:36,460.460 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-18 18:30:37,039.039 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 18:30:37,042.042 INFO    ] Checking for system updates...
[2026-10-18 18:30:37,081.081 INFO    ] 200
[2026-10-18 18:30:37,084.084 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:30:37,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:30:37,139.139 INFO    ] No update needed
[2026-10-18 18:30:37,142.142 INFO    ] Checking for camera pi updates...
[2026-10-18 18:30:37,176.176 INFO    ] 200
[2026-10-18 18:30:37,178.178 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:30:37,220.220 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:30:47,234.234 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:30:47,269.269 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:30:47,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:30:47,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:30:47,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:30:47,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:30:49,333.333 INFO    ] ================================================
[2026-10-18 18:30:49,349.349 INFO    ] Launching Daemon at Sun Oct 18 18:30:49 IST 2026
[2026-10-18 18:30:49,365.365 INFO    ] ================================================
[2026-10-18 18:30:50,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:30:50
[2026-10-18 18:30:50,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:30:51,084.084 INFO    ] Initializing speech engine...
[2026-10-18 18:30:51,098.098 INFO    ] 2026-10-18 18:30:51
[2026-10-18 18:30:51,416.416 INFO    ] 2026-10-18 18:30:51
[2026-10-18 18:30:51,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:30:51,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:30:51,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:30:51,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:30:51,948.948 INFO    ] time= 18/10/2026 18:30:51
[2026-10-18 18:30:51,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:30:51,989.989 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:30:52,118.118 INFO    ] No existing commands found in stream
[2026-10-18 18:30:57,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:30:57,152.152 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-18 18:31:02,903.903 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:31:02,906.906 INFO    ] Checking for system updates...
[2026-10-18 18:31:02,954.954 INFO    ] 200
[2026-10-18 18:31:02,958.958 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:31:03,029.029 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:31:03,033.033 INFO    ] No update needed
[2026-10-18 18:31:03,036.036 INFO    ] Checking for camera pi updates...
[2026-10-18 18:31:03,082.082 INFO    ] 200
[2026-10-18 18:31:03,085.085 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:31:03,134.134 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:31:13,149.149 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:31:13,184.184 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:31:13,194.194 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:31:13,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:31:13,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:31:13,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:31:15,247.247 INFO    ] ================================================
[2026-10-18 18:31:15,264.264 INFO    ] Launching Daemon at Sun Oct 18 18:31:15 IST 2026
[2026-10-18 18:31:15,275.275 INFO    ] ================================================
[2026-10-18 18:31:15,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:31:15
[2026-10-18 18:31:16,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:31:16,928.928 INFO    ] Initializing speech engine...
[2026-10-18 18:31:16,949.949 INFO    ] 2026-10-18 18:31:16
[2026-10-18 18:31:17,220.220 INFO    ] 2026-10-18 18:31:17
[2026-10-18 18:31:17,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:31:17,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:31:17,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:31:17,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:31:17,788.788 INFO    ] time= 18/10/2026 18:31:17
[2026-10-18 18:31:17,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:31:17,822.822 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:31:17,949.949 INFO    ] No existing commands found in stream
[2026-10-18 18:31:22,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:31:22,977.977 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-18 18:31:25,731.731 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:31:25,734.734 INFO    ] Checking for system updates...
[2026-10-18 18:31:25,772.772 INFO    ] 200
[2026-10-18 18:31:25,775.775 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:31:25,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:31:25,837.837 INFO    ] No update needed
[2026-10-18 18:31:25,846.846 INFO    ] Checking for camera pi updates...
[2026-10-18 18:31:25,888.888 INFO    ] 200
[2026-10-18 18:31:25,891.891 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:31:25,935.935 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:31:35,949.949 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:31:35,994.994 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:31:36,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:31:36,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:31:36,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:31:36,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:31:38,067.067 INFO    ] ================================================
[2026-10-18 18:31:38,083.083 INFO    ] Launching Daemon at Sun Oct 18 18:31:38 IST 2026
[2026-10-18 18:31:38,095.095 INFO    ] ================================================
[2026-10-18 18:31:38,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:31:38
[2026-10-18 18:31:39,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:31:39,605.605 INFO    ] Initializing speech engine...
[2026-10-18 18:31:39,615.615 INFO    ] 2026-10-18 18:31:39
[2026-10-18 18:31:39,861.861 INFO    ] 2026-10-18 18:31:39
[2026-10-18 18:31:39,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:31:40,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:31:40,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:31:40,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:31:40,415.415 INFO    ] time= 18/10/2026 18:31:40
[2026-10-18 18:31:40,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:31:40,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:31:40,570.570 INFO    ] No existing commands found in stream
[2026-10-18 18:31:45,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:31:45,591.591 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-18 18:31:49,626.626 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:31:49,629.629 INFO    ] Checking for system updates...
[2026-10-18 18:31:49,664.664 INFO    ] 200
[2026-10-18 18:31:49,667.667 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:31:49,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:31:49,723.723 INFO    ] No update needed
[2026-10-18 18:31:49,725.725 INFO    ] Checking for camera pi updates...
[2026-10-18 18:31:49,758.758 INFO    ] 200
[2026-10-18 18:31:49,761.761 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:31:49,801.801 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:31:59,816.816 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:31:59,852.852 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:31:59,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:31:59,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:31:59,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:31:59,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:32:01,917.917 INFO    ] ================================================
[2026-10-18 18:32:01,940.940 INFO    ] Launching Daemon at Sun Oct 18 18:32:01 IST 2026
[2026-10-18 18:32:01,957.957 INFO    ] ================================================
[2026-10-18 18:32:02,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:32:02
[2026-10-18 18:32:03,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:32:03,590.590 INFO    ] Initializing speech engine...
[2026-10-18 18:32:03,603.603 INFO    ] 2026-10-18 18:32:03
[2026-10-18 18:32:03,856.856 INFO    ] 2026-10-18 18:32:03
[2026-10-18 18:32:03,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:32:04,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:32:04,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:32:04,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:32:04,408.408 INFO    ] time= 18/10/2026 18:32:04
[2026-10-18 18:32:04,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:32:04,433.433 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:32:04,563.563 INFO    ] No existing commands found in stream
[2026-10-18 18:32:09,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:32:09,580.580 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-18 18:32:13,354.354 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 18:32:13,356.356 INFO    ] Checking for system updates...
[2026-10-18 18:32:13,397.397 INFO    ] 200
[2026-10-18 18:32:13,399.399 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:32:13,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:32:13,454.454 INFO    ] No update needed
[2026-10-18 18:32:13,456.456 INFO    ] Checking for camera pi updates...
[2026-10-18 18:32:13,494.494 INFO    ] 200
[2026-10-18 18:32:13,497.497 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:32:13,538.538 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:32:23,553.553 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:32:23,588.588 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:32:23,599.599 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:32:23,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:32:23,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:32:23,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:32:25,650.650 INFO    ] ================================================
[2026-10-18 18:32:25,667.667 INFO    ] Launching Daemon at Sun Oct 18 18:32:25 IST 2026
[2026-10-18 18:32:25,679.679 INFO    ] ================================================
[2026-10-18 18:32:26,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:32:26
[2026-10-18 18:32:27,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:32:27,301.301 INFO    ] Initializing speech engine...
[2026-10-18 18:32:27,313.313 INFO    ] 2026-10-18 18:32:27
[2026-10-18 18:32:27,574.574 INFO    ] 2026-10-18 18:32:27
[2026-10-18 18:32:27,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:32:27,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:32:27,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:32:28,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:32:28,099.099 INFO    ] time= 18/10/2026 18:32:28
[2026-10-18 18:32:28,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:32:28,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:32:28,253.253 INFO    ] No existing commands found in stream
[2026-10-18 18:32:33,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:32:33,268.268 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-18 18:32:35,013.013 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 18:32:35,016.016 INFO    ] Checking for system updates...
[2026-10-18 18:32:35,055.055 INFO    ] 200
[2026-10-18 18:32:35,058.058 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:32:35,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:32:35,112.112 INFO    ] No update needed
[2026-10-18 18:32:35,115.115 INFO    ] Checking for camera pi updates...
[2026-10-18 18:32:35,148.148 INFO    ] 200
[2026-10-18 18:32:35,151.151 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:32:35,192.192 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:32:45,208.208 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:32:45,242.242 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:32:45,253.253 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:32:45,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:32:45,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:32:45,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:32:47,306.306 INFO    ] ================================================
[2026-10-18 18:32:47,322.322 INFO    ] Launching Daemon at Sun Oct 18 18:32:47 IST 2026
[2026-10-18 18:32:47,334.334 INFO    ] ================================================
[2026-10-18 18:32:47,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:32:47
[2026-10-18 18:32:48,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:32:48,737.737 INFO    ] Initializing speech engine...
[2026-10-18 18:32:48,745.745 INFO    ] 2026-10-18 18:32:48
[2026-10-18 18:32:49,020.020 INFO    ] 2026-10-18 18:32:49
[2026-10-18 18:32:49,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:32:49,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:32:49,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:32:49,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:32:49,583.583 INFO    ] time= 18/10/2026 18:32:49
[2026-10-18 18:32:49,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:32:49,600.600 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:32:49,750.750 INFO    ] No existing commands found in stream
[2026-10-18 18:32:54,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:32:54,773.773 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-18 18:32:56,605.605 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:32:56,607.607 INFO    ] Checking for system updates...
[2026-10-18 18:32:56,643.643 INFO    ] 200
[2026-10-18 18:32:56,647.647 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:32:56,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:32:56,702.702 INFO    ] No update needed
[2026-10-18 18:32:56,705.705 INFO    ] Checking for camera pi updates...
[2026-10-18 18:32:56,740.740 INFO    ] 200
[2026-10-18 18:32:56,742.742 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:32:56,784.784 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:33:06,801.801 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:33:06,842.842 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:33:06,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:33:06,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:33:06,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:33:06,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:33:08,910.910 INFO    ] ================================================
[2026-10-18 18:33:08,925.925 INFO    ] Launching Daemon at Sun Oct 18 18:33:08 IST 2026
[2026-10-18 18:33:08,936.936 INFO    ] ================================================
[2026-10-18 18:33:09,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:33:09
[2026-10-18 18:33:10,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:33:10,355.355 INFO    ] Initializing speech engine...
[2026-10-18 18:33:10,364.364 INFO    ] 2026-10-18 18:33:10
[2026-10-18 18:33:10,610.610 INFO    ] 2026-10-18 18:33:10
[2026-10-18 18:33:10,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:33:10,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:33:10,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:33:11,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:33:11,096.096 INFO    ] time= 18/10/2026 18:33:11
[2026-10-18 18:33:11,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:33:11,172.172 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:33:11,322.322 INFO    ] No existing commands found in stream
[2026-10-18 18:33:16,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:33:16,348.348 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-18 18:33:19,289.289 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:33:19,292.292 INFO    ] Checking for system updates...
[2026-10-18 18:33:19,341.341 INFO    ] 200
[2026-10-18 18:33:19,344.344 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:33:19,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:33:19,412.412 INFO    ] No update needed
[2026-10-18 18:33:19,415.415 INFO    ] Checking for camera pi updates...
[2026-10-18 18:33:19,465.465 INFO    ] 200
[2026-10-18 18:33:19,468.468 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:33:19,507.507 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:33:29,522.522 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:33:29,557.557 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:33:29,566.566 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:33:29,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:33:29,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:33:29,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:33:31,619.619 INFO    ] ================================================
[2026-10-18 18:33:31,636.636 INFO    ] Launching Daemon at Sun Oct 18 18:33:31 IST 2026
[2026-10-18 18:33:31,648.648 INFO    ] ================================================
[2026-10-18 18:33:32,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:33:32
[2026-10-18 18:33:33,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:33:33,382.382 INFO    ] Initializing speech engine...
[2026-10-18 18:33:33,396.396 INFO    ] 2026-10-18 18:33:33
[2026-10-18 18:33:33,714.714 INFO    ] 2026-10-18 18:33:33
[2026-10-18 18:33:33,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:33:34,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:33:34,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:33:34,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:33:34,234.234 INFO    ] time= 18/10/2026 18:33:34
[2026-10-18 18:33:34,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:33:34,286.286 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:33:34,442.442 INFO    ] No existing commands found in stream
[2026-10-18 18:33:39,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:33:39,471.471 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-18 18:33:43,811.811 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:33:43,814.814 INFO    ] Checking for system updates...
[2026-10-18 18:33:43,851.851 INFO    ] 200
[2026-10-18 18:33:43,854.854 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:33:43,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:33:43,912.912 INFO    ] No update needed
[2026-10-18 18:33:43,915.915 INFO    ] Checking for camera pi updates...
[2026-10-18 18:33:43,950.950 INFO    ] 200
[2026-10-18 18:33:43,953.953 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:33:44,000.000 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:33:54,015.015 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:33:54,050.050 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:33:54,060.060 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:33:54,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:33:54,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:33:54,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:33:56,112.112 INFO    ] ================================================
[2026-10-18 18:33:56,127.127 INFO    ] Launching Daemon at Sun Oct 18 18:33:56 IST 2026
[2026-10-18 18:33:56,138.138 INFO    ] ================================================
[2026-10-18 18:33:56,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:33:56
[2026-10-18 18:33:57,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:33:57,780.780 INFO    ] Initializing speech engine...
[2026-10-18 18:33:57,788.788 INFO    ] 2026-10-18 18:33:57
[2026-10-18 18:33:58,114.114 INFO    ] 2026-10-18 18:33:58
[2026-10-18 18:33:58,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:33:58,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:33:58,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:33:58,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:33:58,648.648 INFO    ] time= 18/10/2026 18:33:58
[2026-10-18 18:33:58,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:33:58,689.689 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:33:58,794.794 INFO    ] No existing commands found in stream
[2026-10-18 18:34:03,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:34:03,827.827 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-18 18:34:07,761.761 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:34:07,763.763 INFO    ] Checking for system updates...
[2026-10-18 18:34:07,800.800 INFO    ] 200
[2026-10-18 18:34:07,803.803 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:34:07,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:34:07,864.864 INFO    ] No update needed
[2026-10-18 18:34:07,867.867 INFO    ] Checking for camera pi updates...
[2026-10-18 18:34:07,901.901 INFO    ] 200
[2026-10-18 18:34:07,904.904 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:34:07,949.949 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:34:17,965.965 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:34:18,004.004 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:34:18,014.014 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:34:18,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:34:18,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:34:18,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:34:20,069.069 INFO    ] ================================================
[2026-10-18 18:34:20,085.085 INFO    ] Launching Daemon at Sun Oct 18 18:34:20 IST 2026
[2026-10-18 18:34:20,096.096 INFO    ] ================================================
[2026-10-18 18:34:20,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:34:20
[2026-10-18 18:34:21,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:34:21,525.525 INFO    ] Initializing speech engine...
[2026-10-18 18:34:21,537.537 INFO    ] 2026-10-18 18:34:21
[2026-10-18 18:34:21,789.789 INFO    ] 2026-10-18 18:34:21
[2026-10-18 18:34:21,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:34:22,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:34:22,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:34:22,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:34:22,291.291 INFO    ] time= 18/10/2026 18:34:22
[2026-10-18 18:34:22,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:34:22,371.371 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:34:22,520.520 INFO    ] No existing commands found in stream
[2026-10-18 18:34:27,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:34:27,543.543 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-18 18:34:28,028.028 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:34:28,031.031 INFO    ] Checking for system updates...
[2026-10-18 18:34:28,067.067 INFO    ] 200
[2026-10-18 18:34:28,070.070 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:34:28,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:34:28,126.126 INFO    ] No update needed
[2026-10-18 18:34:28,128.128 INFO    ] Checking for camera pi updates...
[2026-10-18 18:34:28,163.163 INFO    ] 200
[2026-10-18 18:34:28,166.166 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:34:28,207.207 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:34:38,221.221 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:34:38,260.260 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:34:38,270.270 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:34:38,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:34:38,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:34:38,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:34:40,328.328 INFO    ] ================================================
[2026-10-18 18:34:40,343.343 INFO    ] Launching Daemon at Sun Oct 18 18:34:40 IST 2026
[2026-10-18 18:34:40,354.354 INFO    ] ================================================
[2026-10-18 18:34:40,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:34:40
[2026-10-18 18:34:41,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:34:41,761.761 INFO    ] Initializing speech engine...
[2026-10-18 18:34:41,786.786 INFO    ] 2026-10-18 18:34:41
[2026-10-18 18:34:42,051.051 INFO    ] 2026-10-18 18:34:42
[2026-10-18 18:34:42,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:34:42,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:34:42,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:34:42,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:34:42,608.608 INFO    ] time= 18/10/2026 18:34:42
[2026-10-18 18:34:42,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:34:42,634.634 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:34:42,763.763 INFO    ] No existing commands found in stream
[2026-10-18 18:34:47,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:34:47,781.781 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-18 18:34:49,420.420 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:34:49,422.422 INFO    ] Checking for system updates...
[2026-10-18 18:34:49,457.457 INFO    ] 200
[2026-10-18 18:34:49,460.460 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:34:49,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:34:49,515.515 INFO    ] No update needed
[2026-10-18 18:34:49,518.518 INFO    ] Checking for camera pi updates...
[2026-10-18 18:34:49,551.551 INFO    ] 200
[2026-10-18 18:34:49,553.553 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:34:49,597.597 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:34:59,612.612 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:34:59,647.647 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:34:59,656.656 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:34:59,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:34:59,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:34:59,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:35:01,722.722 INFO    ] ================================================
[2026-10-18 18:35:01,769.769 INFO    ] Launching Daemon at Sun Oct 18 18:35:01 IST 2026
[2026-10-18 18:35:01,786.786 INFO    ] ================================================
[2026-10-18 18:35:02,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:35:02
[2026-10-18 18:35:03,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:35:03,504.504 INFO    ] Initializing speech engine...
[2026-10-18 18:35:03,512.512 INFO    ] 2026-10-18 18:35:03
[2026-10-18 18:35:03,797.797 INFO    ] 2026-10-18 18:35:03
[2026-10-18 18:35:03,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:35:04,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:35:04,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:35:04,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:35:04,344.344 INFO    ] time= 18/10/2026 18:35:04
[2026-10-18 18:35:04,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:35:04,368.368 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:35:04,504.504 INFO    ] No existing commands found in stream
[2026-10-18 18:35:09,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:35:09,520.520 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-18 18:35:14,003.003 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:35:14,006.006 INFO    ] Checking for system updates...
[2026-10-18 18:35:14,042.042 INFO    ] 200
[2026-10-18 18:35:14,045.045 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:35:14,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:35:14,104.104 INFO    ] No update needed
[2026-10-18 18:35:14,107.107 INFO    ] Checking for camera pi updates...
[2026-10-18 18:35:14,143.143 INFO    ] 200
[2026-10-18 18:35:14,147.147 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:35:14,187.187 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:35:24,203.203 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:35:24,242.242 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:35:24,252.252 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:35:24,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:35:24,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:35:24,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:35:26,306.306 INFO    ] ================================================
[2026-10-18 18:35:26,321.321 INFO    ] Launching Daemon at Sun Oct 18 18:35:26 IST 2026
[2026-10-18 18:35:26,332.332 INFO    ] ================================================
[2026-10-18 18:35:26,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:35:26
[2026-10-18 18:35:27,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:35:27,886.886 INFO    ] Initializing speech engine...
[2026-10-18 18:35:27,893.893 INFO    ] 2026-10-18 18:35:27
[2026-10-18 18:35:28,163.163 INFO    ] 2026-10-18 18:35:28
[2026-10-18 18:35:28,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:35:28,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:35:28,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:35:28,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:35:28,719.719 INFO    ] time= 18/10/2026 18:35:28
[2026-10-18 18:35:28,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:35:28,743.743 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:35:28,879.879 INFO    ] No existing commands found in stream
[2026-10-18 18:35:33,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:35:33,903.903 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-18 18:35:35,830.830 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:35:35,833.833 INFO    ] Checking for system updates...
[2026-10-18 18:35:35,869.869 INFO    ] 200
[2026-10-18 18:35:35,872.872 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:35:35,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:35:35,930.930 INFO    ] No update needed
[2026-10-18 18:35:35,933.933 INFO    ] Checking for camera pi updates...
[2026-10-18 18:35:35,968.968 INFO    ] 200
[2026-10-18 18:35:35,971.971 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:35:36,011.011 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:35:46,023.023 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:35:46,058.058 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:35:46,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:35:46,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:35:46,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:35:46,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:35:48,119.119 INFO    ] ================================================
[2026-10-18 18:35:48,134.134 INFO    ] Launching Daemon at Sun Oct 18 18:35:48 IST 2026
[2026-10-18 18:35:48,145.145 INFO    ] ================================================
[2026-10-18 18:35:48,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:35:48
[2026-10-18 18:35:49,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:35:49,569.569 INFO    ] Initializing speech engine...
[2026-10-18 18:35:49,578.578 INFO    ] 2026-10-18 18:35:49
[2026-10-18 18:35:49,838.838 INFO    ] 2026-10-18 18:35:49
[2026-10-18 18:35:49,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:35:50,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:35:50,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:35:50,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:35:50,389.389 INFO    ] time= 18/10/2026 18:35:50
[2026-10-18 18:35:50,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:35:50,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:35:50,563.563 INFO    ] No existing commands found in stream
[2026-10-18 18:35:55,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:35:55,596.596 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-18 18:35:59,399.399 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:35:59,401.401 INFO    ] Checking for system updates...
[2026-10-18 18:35:59,438.438 INFO    ] 200
[2026-10-18 18:35:59,441.441 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:35:59,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:35:59,501.501 INFO    ] No update needed
[2026-10-18 18:35:59,503.503 INFO    ] Checking for camera pi updates...
[2026-10-18 18:35:59,542.542 INFO    ] 200
[2026-10-18 18:35:59,544.544 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:35:59,585.585 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:36:09,600.600 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:36:09,640.640 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:36:09,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:36:09,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:36:09,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:36:09,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:36:11,708.708 INFO    ] ================================================
[2026-10-18 18:36:11,723.723 INFO    ] Launching Daemon at Sun Oct 18 18:36:11 IST 2026
[2026-10-18 18:36:11,734.734 INFO    ] ================================================
[2026-10-18 18:36:12,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:36:12
[2026-10-18 18:36:12,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:36:13,195.195 INFO    ] Initializing speech engine...
[2026-10-18 18:36:13,200.200 INFO    ] 2026-10-18 18:36:13
[2026-10-18 18:36:13,465.465 INFO    ] 2026-10-18 18:36:13
[2026-10-18 18:36:13,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:36:13,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:36:13,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:36:13,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:36:13,946.946 INFO    ] time= 18/10/2026 18:36:13
[2026-10-18 18:36:14,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:36:14,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:36:14,166.166 INFO    ] No existing commands found in stream
[2026-10-18 18:36:19,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:36:19,180.180 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-18 18:36:22,269.269 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:36:22,275.275 INFO    ] Checking for system updates...
[2026-10-18 18:36:22,344.344 INFO    ] 200
[2026-10-18 18:36:22,348.348 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:36:22,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:36:22,409.409 INFO    ] No update needed
[2026-10-18 18:36:22,411.411 INFO    ] Checking for camera pi updates...
[2026-10-18 18:36:22,445.445 INFO    ] 200
[2026-10-18 18:36:22,448.448 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:36:22,489.489 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:36:32,504.504 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:36:32,541.541 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:36:32,551.551 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:36:32,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:36:32,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:36:32,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:36:34,607.607 INFO    ] ================================================
[2026-10-18 18:36:34,623.623 INFO    ] Launching Daemon at Sun Oct 18 18:36:34 IST 2026
[2026-10-18 18:36:34,633.633 INFO    ] ================================================
[2026-10-18 18:36:35,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:36:35
[2026-10-18 18:36:35,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:36:36,097.097 INFO    ] Initializing speech engine...
[2026-10-18 18:36:36,102.102 INFO    ] 2026-10-18 18:36:36
[2026-10-18 18:36:36,364.364 INFO    ] 2026-10-18 18:36:36
[2026-10-18 18:36:36,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:36:36,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:36:36,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:36:36,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:36:36,909.909 INFO    ] time= 18/10/2026 18:36:36
[2026-10-18 18:36:36,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:36:36,934.934 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:36:37,070.070 INFO    ] No existing commands found in stream
[2026-10-18 18:36:42,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:36:42,098.098 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-18 18:36:45,854.854 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:36:45,857.857 INFO    ] Checking for system updates...
[2026-10-18 18:36:45,893.893 INFO    ] 200
[2026-10-18 18:36:45,896.896 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:36:45,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:36:45,951.951 INFO    ] No update needed
[2026-10-18 18:36:45,953.953 INFO    ] Checking for camera pi updates...
[2026-10-18 18:36:45,991.991 INFO    ] 200
[2026-10-18 18:36:45,994.994 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:36:46,035.035 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:36:56,050.050 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:36:56,086.086 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:36:56,096.096 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:36:56,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:36:56,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:36:56,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:36:58,149.149 INFO    ] ================================================
[2026-10-18 18:36:58,164.164 INFO    ] Launching Daemon at Sun Oct 18 18:36:58 IST 2026
[2026-10-18 18:36:58,175.175 INFO    ] ================================================
[2026-10-18 18:36:58,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:36:58
[2026-10-18 18:36:59,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:36:59,877.877 INFO    ] Initializing speech engine...
[2026-10-18 18:36:59,889.889 INFO    ] 2026-10-18 18:36:59
[2026-10-18 18:37:00,164.164 INFO    ] 2026-10-18 18:37:00
[2026-10-18 18:37:00,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:37:00,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:37:00,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:37:00,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:37:00,742.742 INFO    ] time= 18/10/2026 18:37:00
[2026-10-18 18:37:00,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:37:00,783.783 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:37:00,941.941 INFO    ] No existing commands found in stream
[2026-10-18 18:37:05,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:37:05,975.975 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-18 18:37:08,413.413 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:37:08,417.417 INFO    ] Checking for system updates...
[2026-10-18 18:37:08,453.453 INFO    ] 200
[2026-10-18 18:37:08,456.456 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:37:08,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:37:08,514.514 INFO    ] No update needed
[2026-10-18 18:37:08,516.516 INFO    ] Checking for camera pi updates...
[2026-10-18 18:37:08,550.550 INFO    ] 200
[2026-10-18 18:37:08,552.552 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:37:08,596.596 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:37:18,612.612 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:37:18,646.646 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:37:18,656.656 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:37:18,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:37:18,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:37:18,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:37:20,709.709 INFO    ] ================================================
[2026-10-18 18:37:20,724.724 INFO    ] Launching Daemon at Sun Oct 18 18:37:20 IST 2026
[2026-10-18 18:37:20,736.736 INFO    ] ================================================
[2026-10-18 18:37:21,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:37:21
[2026-10-18 18:37:21,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:37:22,134.134 INFO    ] Initializing speech engine...
[2026-10-18 18:37:22,157.157 INFO    ] 2026-10-18 18:37:22
[2026-10-18 18:37:22,408.408 INFO    ] 2026-10-18 18:37:22
[2026-10-18 18:37:22,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:37:22,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:37:22,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:37:22,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:37:22,888.888 INFO    ] time= 18/10/2026 18:37:22
[2026-10-18 18:37:22,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:37:22,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:37:23,115.115 INFO    ] No existing commands found in stream
[2026-10-18 18:37:28,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:37:28,131.131 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-18 18:37:30,472.472 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 18:37:30,475.475 INFO    ] Checking for system updates...
[2026-10-18 18:37:30,515.515 INFO    ] 200
[2026-10-18 18:37:30,517.517 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:37:30,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:37:30,572.572 INFO    ] No update needed
[2026-10-18 18:37:30,574.574 INFO    ] Checking for camera pi updates...
[2026-10-18 18:37:30,607.607 INFO    ] 200
[2026-10-18 18:37:30,609.609 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:37:30,650.650 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:37:40,665.665 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:37:40,700.700 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:37:40,709.709 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:37:40,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:37:40,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:37:40,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:37:42,762.762 INFO    ] ================================================
[2026-10-18 18:37:42,778.778 INFO    ] Launching Daemon at Sun Oct 18 18:37:42 IST 2026
[2026-10-18 18:37:42,789.789 INFO    ] ================================================
[2026-10-18 18:37:43,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:37:43
[2026-10-18 18:37:43,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:37:44,230.230 INFO    ] Initializing speech engine...
[2026-10-18 18:37:44,239.239 INFO    ] 2026-10-18 18:37:44
[2026-10-18 18:37:44,493.493 INFO    ] 2026-10-18 18:37:44
[2026-10-18 18:37:44,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:37:44,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:37:44,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:37:44,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:37:45,018.018 INFO    ] time= 18/10/2026 18:37:44
[2026-10-18 18:37:45,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:37:45,060.060 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:37:45,186.186 INFO    ] No existing commands found in stream
[2026-10-18 18:37:50,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:37:50,211.211 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-18 18:37:52,233.233 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:37:52,236.236 INFO    ] Checking for system updates...
[2026-10-18 18:37:52,273.273 INFO    ] 200
[2026-10-18 18:37:52,275.275 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:37:52,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:37:52,336.336 INFO    ] No update needed
[2026-10-18 18:37:52,339.339 INFO    ] Checking for camera pi updates...
[2026-10-18 18:37:52,372.372 INFO    ] 200
[2026-10-18 18:37:52,374.374 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:37:52,414.414 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:38:02,428.428 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:38:02,467.467 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:38:02,478.478 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:38:02,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:38:02,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:38:02,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:38:04,535.535 INFO    ] ================================================
[2026-10-18 18:38:04,550.550 INFO    ] Launching Daemon at Sun Oct 18 18:38:04 IST 2026
[2026-10-18 18:38:04,561.561 INFO    ] ================================================
[2026-10-18 18:38:05,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:38:05
[2026-10-18 18:38:05,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:38:05,978.978 INFO    ] Initializing speech engine...
[2026-10-18 18:38:05,988.988 INFO    ] 2026-10-18 18:38:05
[2026-10-18 18:38:06,233.233 INFO    ] 2026-10-18 18:38:06
[2026-10-18 18:38:06,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:38:06,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:38:06,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:38:06,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:38:06,720.720 INFO    ] time= 18/10/2026 18:38:06
[2026-10-18 18:38:06,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:38:06,792.792 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:38:06,936.936 INFO    ] No existing commands found in stream
[2026-10-18 18:38:11,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:38:11,953.953 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-18 18:38:15,450.450 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:38:15,453.453 INFO    ] Checking for system updates...
[2026-10-18 18:38:15,491.491 INFO    ] 200
[2026-10-18 18:38:15,494.494 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:38:15,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:38:15,548.548 INFO    ] No update needed
[2026-10-18 18:38:15,550.550 INFO    ] Checking for camera pi updates...
[2026-10-18 18:38:15,584.584 INFO    ] 200
[2026-10-18 18:38:15,586.586 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:38:15,628.628 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:38:25,643.643 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:38:25,679.679 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:38:25,688.688 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:38:25,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:38:25,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:38:25,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:38:27,741.741 INFO    ] ================================================
[2026-10-18 18:38:27,757.757 INFO    ] Launching Daemon at Sun Oct 18 18:38:27 IST 2026
[2026-10-18 18:38:27,768.768 INFO    ] ================================================
[2026-10-18 18:38:28,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:38:28
[2026-10-18 18:38:28,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:38:29,178.178 INFO    ] Initializing speech engine...
[2026-10-18 18:38:29,201.201 INFO    ] 2026-10-18 18:38:29
[2026-10-18 18:38:29,455.455 INFO    ] 2026-10-18 18:38:29
[2026-10-18 18:38:29,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:38:29,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:38:29,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:38:29,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:38:29,933.933 INFO    ] time= 18/10/2026 18:38:29
[2026-10-18 18:38:29,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:38:30,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:38:30,163.163 INFO    ] No existing commands found in stream
[2026-10-18 18:38:35,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:38:35,190.190 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-18 18:38:36,713.713 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:38:36,716.716 INFO    ] Checking for system updates...
[2026-10-18 18:38:36,752.752 INFO    ] 200
[2026-10-18 18:38:36,755.755 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:38:36,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:38:36,813.813 INFO    ] No update needed
[2026-10-18 18:38:36,815.815 INFO    ] Checking for camera pi updates...
[2026-10-18 18:38:36,852.852 INFO    ] 200
[2026-10-18 18:38:36,854.854 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:38:36,894.894 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:38:46,909.909 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:38:46,947.947 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:38:46,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:38:46,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:38:46,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:38:46,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:38:49,010.010 INFO    ] ================================================
[2026-10-18 18:38:49,026.026 INFO    ] Launching Daemon at Sun Oct 18 18:38:49 IST 2026
[2026-10-18 18:38:49,038.038 INFO    ] ================================================
[2026-10-18 18:38:49,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:38:49
[2026-10-18 18:38:50,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:38:50,439.439 INFO    ] Initializing speech engine...
[2026-10-18 18:38:50,461.461 INFO    ] 2026-10-18 18:38:50
[2026-10-18 18:38:50,716.716 INFO    ] 2026-10-18 18:38:50
[2026-10-18 18:38:50,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:38:50,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:38:50,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:38:51,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:38:51,181.181 INFO    ] time= 18/10/2026 18:38:51
[2026-10-18 18:38:51,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:38:51,290.290 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:38:51,426.426 INFO    ] No existing commands found in stream
[2026-10-18 18:38:56,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:38:56,456.456 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-18 18:38:58,918.918 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:38:58,921.921 INFO    ] Checking for system updates...
[2026-10-18 18:38:58,959.959 INFO    ] 200
[2026-10-18 18:38:58,962.962 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:38:59,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:38:59,022.022 INFO    ] No update needed
[2026-10-18 18:38:59,025.025 INFO    ] Checking for camera pi updates...
[2026-10-18 18:38:59,060.060 INFO    ] 200
[2026-10-18 18:38:59,063.063 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:38:59,104.104 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:39:09,119.119 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:39:09,157.157 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:39:09,168.168 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:39:09,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:39:09,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:39:09,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:39:11,224.224 INFO    ] ================================================
[2026-10-18 18:39:11,239.239 INFO    ] Launching Daemon at Sun Oct 18 18:39:11 IST 2026
[2026-10-18 18:39:11,251.251 INFO    ] ================================================
[2026-10-18 18:39:11,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:39:11
[2026-10-18 18:39:12,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:39:12,842.842 INFO    ] Initializing speech engine...
[2026-10-18 18:39:12,852.852 INFO    ] 2026-10-18 18:39:12
[2026-10-18 18:39:13,131.131 INFO    ] 2026-10-18 18:39:13
[2026-10-18 18:39:13,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:39:13,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:39:13,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:39:13,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:39:13,683.683 INFO    ] time= 18/10/2026 18:39:13
[2026-10-18 18:39:13,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:39:13,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:39:13,851.851 INFO    ] No existing commands found in stream
[2026-10-18 18:39:18,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:39:18,880.880 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-18 18:39:21,741.741 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 18:39:21,744.744 INFO    ] Checking for system updates...
[2026-10-18 18:39:21,783.783 INFO    ] 200
[2026-10-18 18:39:21,786.786 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:39:21,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:39:21,853.853 INFO    ] No update needed
[2026-10-18 18:39:21,855.855 INFO    ] Checking for camera pi updates...
[2026-10-18 18:39:21,892.892 INFO    ] 200
[2026-10-18 18:39:21,895.895 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:39:21,937.937 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:39:31,953.953 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:39:31,994.994 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:39:32,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:39:32,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:39:32,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:39:32,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:39:34,063.063 INFO    ] ================================================
[2026-10-18 18:39:34,079.079 INFO    ] Launching Daemon at Sun Oct 18 18:39:34 IST 2026
[2026-10-18 18:39:34,090.090 INFO    ] ================================================
[2026-10-18 18:39:34,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:39:34
[2026-10-18 18:39:35,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:39:35,503.503 INFO    ] Initializing speech engine...
[2026-10-18 18:39:35,531.531 INFO    ] 2026-10-18 18:39:35
[2026-10-18 18:39:35,794.794 INFO    ] 2026-10-18 18:39:35
[2026-10-18 18:39:35,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:39:36,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:39:36,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:39:36,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:39:36,284.284 INFO    ] time= 18/10/2026 18:39:36
[2026-10-18 18:39:36,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:39:36,372.372 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:39:36,472.472 INFO    ] No existing commands found in stream
[2026-10-18 18:39:41,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:39:41,486.486 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-18 18:39:45,442.442 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 18:39:45,444.444 INFO    ] Checking for system updates...
[2026-10-18 18:39:45,481.481 INFO    ] 200
[2026-10-18 18:39:45,484.484 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:39:45,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:39:45,539.539 INFO    ] No update needed
[2026-10-18 18:39:45,541.541 INFO    ] Checking for camera pi updates...
[2026-10-18 18:39:45,578.578 INFO    ] 200
[2026-10-18 18:39:45,580.580 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:39:45,625.625 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:39:55,641.641 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:39:55,679.679 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:39:55,690.690 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:39:55,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:39:55,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:39:55,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:39:57,745.745 INFO    ] ================================================
[2026-10-18 18:39:57,760.760 INFO    ] Launching Daemon at Sun Oct 18 18:39:57 IST 2026
[2026-10-18 18:39:57,772.772 INFO    ] ================================================
[2026-10-18 18:39:58,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:39:58
[2026-10-18 18:39:58,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:39:59,230.230 INFO    ] Initializing speech engine...
[2026-10-18 18:39:59,237.237 INFO    ] 2026-10-18 18:39:59
[2026-10-18 18:39:59,507.507 INFO    ] 2026-10-18 18:39:59
[2026-10-18 18:39:59,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:39:59,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:39:59,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:39:59,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:40:00,026.026 INFO    ] time= 18/10/2026 18:39:59
[2026-10-18 18:40:00,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:40:00,057.057 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:40:00,191.191 INFO    ] No existing commands found in stream
[2026-10-18 18:40:05,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:40:05,218.218 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-18 18:40:08,190.190 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 18:40:08,192.192 INFO    ] Checking for system updates...
[2026-10-18 18:40:08,228.228 INFO    ] 200
[2026-10-18 18:40:08,230.230 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:40:08,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:40:08,284.284 INFO    ] No update needed
[2026-10-18 18:40:08,287.287 INFO    ] Checking for camera pi updates...
[2026-10-18 18:40:08,330.330 INFO    ] 200
[2026-10-18 18:40:08,333.333 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:40:08,388.388 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:40:18,404.404 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:40:18,442.442 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:40:18,452.452 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:40:18,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:40:18,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:40:18,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:40:20,506.506 INFO    ] ================================================
[2026-10-18 18:40:20,521.521 INFO    ] Launching Daemon at Sun Oct 18 18:40:20 IST 2026
[2026-10-18 18:40:20,534.534 INFO    ] ================================================
[2026-10-18 18:40:21,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:40:21
[2026-10-18 18:40:21,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:40:22,141.141 INFO    ] Initializing speech engine...
[2026-10-18 18:40:22,152.152 INFO    ] 2026-10-18 18:40:22
[2026-10-18 18:40:22,460.460 INFO    ] 2026-10-18 18:40:22
[2026-10-18 18:40:22,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:40:22,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:40:22,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:40:22,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:40:22,966.966 INFO    ] time= 18/10/2026 18:40:22
[2026-10-18 18:40:22,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:40:23,018.018 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:40:23,135.135 INFO    ] No existing commands found in stream
[2026-10-18 18:40:28,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:40:28,174.174 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-18 18:40:30,313.313 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:40:30,316.316 INFO    ] Checking for system updates...
[2026-10-18 18:40:30,356.356 INFO    ] 200
[2026-10-18 18:40:30,359.359 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:40:30,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:40:30,414.414 INFO    ] No update needed
[2026-10-18 18:40:30,416.416 INFO    ] Checking for camera pi updates...
[2026-10-18 18:40:30,450.450 INFO    ] 200
[2026-10-18 18:40:30,453.453 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:40:30,494.494 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:40:40,507.507 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:40:40,543.543 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:40:40,553.553 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:40:40,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:40:40,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:40:40,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:40:42,606.606 INFO    ] ================================================
[2026-10-18 18:40:42,621.621 INFO    ] Launching Daemon at Sun Oct 18 18:40:42 IST 2026
[2026-10-18 18:40:42,632.632 INFO    ] ================================================
[2026-10-18 18:40:43,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:40:43
[2026-10-18 18:40:43,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:40:44,046.046 INFO    ] Initializing speech engine...
[2026-10-18 18:40:44,054.054 INFO    ] 2026-10-18 18:40:44
[2026-10-18 18:40:44,346.346 INFO    ] 2026-10-18 18:40:44
[2026-10-18 18:40:44,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:40:44,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:40:44,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:40:44,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:40:44,762.762 INFO    ] time= 18/10/2026 18:40:44
[2026-10-18 18:40:44,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:40:44,774.774 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:40:44,878.878 INFO    ] No existing commands found in stream
[2026-10-18 18:40:49,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:40:49,911.911 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-18 18:40:52,266.266 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:40:52,269.269 INFO    ] Checking for system updates...
[2026-10-18 18:40:52,304.304 INFO    ] 200
[2026-10-18 18:40:52,307.307 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:40:52,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:40:52,365.365 INFO    ] No update needed
[2026-10-18 18:40:52,368.368 INFO    ] Checking for camera pi updates...
[2026-10-18 18:40:52,404.404 INFO    ] 200
[2026-10-18 18:40:52,407.407 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:40:52,456.456 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:41:02,472.472 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:41:02,511.511 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:41:02,522.522 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:41:02,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:41:02,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:41:02,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:41:04,579.579 INFO    ] ================================================
[2026-10-18 18:41:04,594.594 INFO    ] Launching Daemon at Sun Oct 18 18:41:04 IST 2026
[2026-10-18 18:41:04,604.604 INFO    ] ================================================
[2026-10-18 18:41:05,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:41:05
[2026-10-18 18:41:05,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:41:06,051.051 INFO    ] Initializing speech engine...
[2026-10-18 18:41:06,060.060 INFO    ] 2026-10-18 18:41:06
[2026-10-18 18:41:06,353.353 INFO    ] 2026-10-18 18:41:06
[2026-10-18 18:41:06,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:41:06,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:41:06,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:41:06,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:41:06,870.870 INFO    ] time= 18/10/2026 18:41:06
[2026-10-18 18:41:06,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:41:06,963.963 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:41:07,121.121 INFO    ] No existing commands found in stream
[2026-10-18 18:41:12,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:41:12,144.144 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-18 18:41:14,126.126 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:41:14,129.129 INFO    ] Checking for system updates...
[2026-10-18 18:41:14,164.164 INFO    ] 200
[2026-10-18 18:41:14,167.167 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:41:14,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:41:14,223.223 INFO    ] No update needed
[2026-10-18 18:41:14,225.225 INFO    ] Checking for camera pi updates...
[2026-10-18 18:41:14,260.260 INFO    ] 200
[2026-10-18 18:41:14,262.262 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:41:14,302.302 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:41:24,318.318 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:41:24,354.354 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:41:24,364.364 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:41:24,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:41:24,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:41:24,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:41:26,417.417 INFO    ] ================================================
[2026-10-18 18:41:26,432.432 INFO    ] Launching Daemon at Sun Oct 18 18:41:26 IST 2026
[2026-10-18 18:41:26,443.443 INFO    ] ================================================
[2026-10-18 18:41:27,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:41:27
[2026-10-18 18:41:27,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:41:27,853.853 INFO    ] Initializing speech engine...
[2026-10-18 18:41:27,859.859 INFO    ] 2026-10-18 18:41:27
[2026-10-18 18:41:28,148.148 INFO    ] 2026-10-18 18:41:28
[2026-10-18 18:41:28,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:41:28,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:41:28,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:41:28,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:41:28,620.620 INFO    ] time= 18/10/2026 18:41:28
[2026-10-18 18:41:28,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:41:28,654.654 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:41:28,784.784 INFO    ] No existing commands found in stream
[2026-10-18 18:41:33,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:41:33,799.799 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-18 18:41:39,049.049 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:41:39,051.051 INFO    ] Checking for system updates...
[2026-10-18 18:41:39,092.092 INFO    ] 200
[2026-10-18 18:41:39,094.094 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:41:39,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:41:39,161.161 INFO    ] No update needed
[2026-10-18 18:41:39,164.164 INFO    ] Checking for camera pi updates...
[2026-10-18 18:41:39,204.204 INFO    ] 200
[2026-10-18 18:41:39,207.207 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:41:39,252.252 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:41:49,269.269 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:41:49,308.308 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:41:49,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:41:49,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:41:49,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:41:49,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:41:51,375.375 INFO    ] ================================================
[2026-10-18 18:41:51,390.390 INFO    ] Launching Daemon at Sun Oct 18 18:41:51 IST 2026
[2026-10-18 18:41:51,401.401 INFO    ] ================================================
[2026-10-18 18:41:51,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:41:51
[2026-10-18 18:41:52,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:41:52,860.860 INFO    ] Initializing speech engine...
[2026-10-18 18:41:52,867.867 INFO    ] 2026-10-18 18:41:52
[2026-10-18 18:41:53,128.128 INFO    ] 2026-10-18 18:41:53
[2026-10-18 18:41:53,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:41:53,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:41:53,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:41:53,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:41:53,666.666 INFO    ] time= 18/10/2026 18:41:53
[2026-10-18 18:41:53,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:41:53,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:41:53,828.828 INFO    ] No existing commands found in stream
[2026-10-18 18:41:58,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:41:58,867.867 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-18 18:42:02,966.966 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:42:02,970.970 INFO    ] Checking for system updates...
[2026-10-18 18:42:03,021.021 INFO    ] 200
[2026-10-18 18:42:03,024.024 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:42:03,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:42:03,095.095 INFO    ] No update needed
[2026-10-18 18:42:03,098.098 INFO    ] Checking for camera pi updates...
[2026-10-18 18:42:03,148.148 INFO    ] 200
[2026-10-18 18:42:03,151.151 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:42:03,230.230 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:42:13,245.245 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:42:13,281.281 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:42:13,291.291 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:42:13,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:42:13,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:42:13,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:42:15,345.345 INFO    ] ================================================
[2026-10-18 18:42:15,360.360 INFO    ] Launching Daemon at Sun Oct 18 18:42:15 IST 2026
[2026-10-18 18:42:15,371.371 INFO    ] ================================================
[2026-10-18 18:42:15,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:42:15
[2026-10-18 18:42:16,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:42:16,779.779 INFO    ] Initializing speech engine...
[2026-10-18 18:42:16,788.788 INFO    ] 2026-10-18 18:42:16
[2026-10-18 18:42:17,076.076 INFO    ] 2026-10-18 18:42:17
[2026-10-18 18:42:17,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:42:17,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:42:17,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:42:17,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:42:17,617.617 INFO    ] time= 18/10/2026 18:42:17
[2026-10-18 18:42:17,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:42:17,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:42:17,834.834 INFO    ] No existing commands found in stream
[2026-10-18 18:42:22,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:42:22,854.854 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-18 18:42:25,674.674 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:42:25,677.677 INFO    ] Checking for system updates...
[2026-10-18 18:42:25,713.713 INFO    ] 200
[2026-10-18 18:42:25,715.715 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:42:25,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:42:25,769.769 INFO    ] No update needed
[2026-10-18 18:42:25,772.772 INFO    ] Checking for camera pi updates...
[2026-10-18 18:42:25,805.805 INFO    ] 200
[2026-10-18 18:42:25,808.808 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:42:25,848.848 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:42:35,863.863 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:42:35,899.899 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:42:35,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:42:35,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:42:35,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:42:35,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:42:37,961.961 INFO    ] ================================================
[2026-10-18 18:42:37,976.976 INFO    ] Launching Daemon at Sun Oct 18 18:42:37 IST 2026
[2026-10-18 18:42:37,986.986 INFO    ] ================================================
[2026-10-18 18:42:38,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:42:38
[2026-10-18 18:42:39,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:42:39,420.420 INFO    ] Initializing speech engine...
[2026-10-18 18:42:39,429.429 INFO    ] 2026-10-18 18:42:39
[2026-10-18 18:42:39,692.692 INFO    ] 2026-10-18 18:42:39
[2026-10-18 18:42:39,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:42:39,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:42:39,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:42:40,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:42:40,165.165 INFO    ] time= 18/10/2026 18:42:40
[2026-10-18 18:42:40,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:42:40,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:42:40,374.374 INFO    ] No existing commands found in stream
[2026-10-18 18:42:45,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:42:45,400.400 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-18 18:42:47,684.684 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:42:47,687.687 INFO    ] Checking for system updates...
[2026-10-18 18:42:47,723.723 INFO    ] 200
[2026-10-18 18:42:47,726.726 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:42:47,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:42:47,781.781 INFO    ] No update needed
[2026-10-18 18:42:47,783.783 INFO    ] Checking for camera pi updates...
[2026-10-18 18:42:47,819.819 INFO    ] 200
[2026-10-18 18:42:47,821.821 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:42:47,865.865 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:42:57,880.880 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:42:57,915.915 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:42:57,924.924 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:42:57,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:42:57,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:42:57,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:42:59,978.978 INFO    ] ================================================
[2026-10-18 18:43:00,031.031 INFO    ] Launching Daemon at Sun Oct 18 18:43:00 IST 2026
[2026-10-18 18:43:00,043.043 INFO    ] ================================================
[2026-10-18 18:43:00,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:43:00
[2026-10-18 18:43:01,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:43:01,571.571 INFO    ] Initializing speech engine...
[2026-10-18 18:43:01,580.580 INFO    ] 2026-10-18 18:43:01
[2026-10-18 18:43:01,839.839 INFO    ] 2026-10-18 18:43:01
[2026-10-18 18:43:01,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:43:02,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:43:02,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:43:02,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:43:02,571.571 INFO    ] time= 18/10/2026 18:43:02
[2026-10-18 18:43:02,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:43:02,662.662 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:43:02,828.828 INFO    ] No existing commands found in stream
[2026-10-18 18:43:07,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:43:07,861.861 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-18 18:43:10,940.940 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:43:10,943.943 INFO    ] Checking for system updates...
[2026-10-18 18:43:10,980.980 INFO    ] 200
[2026-10-18 18:43:10,983.983 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:43:11,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:43:11,038.038 INFO    ] No update needed
[2026-10-18 18:43:11,041.041 INFO    ] Checking for camera pi updates...
[2026-10-18 18:43:11,076.076 INFO    ] 200
[2026-10-18 18:43:11,078.078 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:43:11,119.119 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:43:21,134.134 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:43:21,173.173 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:43:21,185.185 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:43:21,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:43:21,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:43:21,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:43:23,241.241 INFO    ] ================================================
[2026-10-18 18:43:23,258.258 INFO    ] Launching Daemon at Sun Oct 18 18:43:23 IST 2026
[2026-10-18 18:43:23,269.269 INFO    ] ================================================
[2026-10-18 18:43:23,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:43:23
[2026-10-18 18:43:24,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:43:24,745.745 INFO    ] Initializing speech engine...
[2026-10-18 18:43:24,754.754 INFO    ] 2026-10-18 18:43:24
[2026-10-18 18:43:25,030.030 INFO    ] 2026-10-18 18:43:25
[2026-10-18 18:43:25,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:43:25,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:43:25,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:43:25,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:43:25,575.575 INFO    ] time= 18/10/2026 18:43:25
[2026-10-18 18:43:25,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:43:25,609.609 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:43:25,754.754 INFO    ] No existing commands found in stream
[2026-10-18 18:43:30,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:43:30,787.787 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-18 18:43:35,301.301 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:43:35,304.304 INFO    ] Checking for system updates...
[2026-10-18 18:43:35,343.343 INFO    ] 200
[2026-10-18 18:43:35,346.346 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:43:35,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:43:35,411.411 INFO    ] No update needed
[2026-10-18 18:43:35,413.413 INFO    ] Checking for camera pi updates...
[2026-10-18 18:43:35,450.450 INFO    ] 200
[2026-10-18 18:43:35,452.452 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:43:35,496.496 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:43:45,512.512 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:43:45,547.547 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:43:45,556.556 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:43:45,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:43:45,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:43:45,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:43:47,610.610 INFO    ] ================================================
[2026-10-18 18:43:47,626.626 INFO    ] Launching Daemon at Sun Oct 18 18:43:47 IST 2026
[2026-10-18 18:43:47,638.638 INFO    ] ================================================
[2026-10-18 18:43:48,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:43:48
[2026-10-18 18:43:48,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:43:49,085.085 INFO    ] Initializing speech engine...
[2026-10-18 18:43:49,102.102 INFO    ] 2026-10-18 18:43:49
[2026-10-18 18:43:49,364.364 INFO    ] 2026-10-18 18:43:49
[2026-10-18 18:43:49,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:43:49,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:43:49,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:43:49,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:43:49,858.858 INFO    ] time= 18/10/2026 18:43:49
[2026-10-18 18:43:49,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:43:49,943.943 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:43:50,094.094 INFO    ] No existing commands found in stream
[2026-10-18 18:43:55,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:43:55,112.112 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-18 18:43:57,720.720 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:43:57,723.723 INFO    ] Checking for system updates...
[2026-10-18 18:43:57,758.758 INFO    ] 200
[2026-10-18 18:43:57,761.761 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:43:57,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:43:57,815.815 INFO    ] No update needed
[2026-10-18 18:43:57,817.817 INFO    ] Checking for camera pi updates...
[2026-10-18 18:43:57,851.851 INFO    ] 200
[2026-10-18 18:43:57,853.853 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:43:57,898.898 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:44:07,913.913 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:44:07,948.948 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:44:07,958.958 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:44:07,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:44:07,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:44:07,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:44:10,011.011 INFO    ] ================================================
[2026-10-18 18:44:10,026.026 INFO    ] Launching Daemon at Sun Oct 18 18:44:10 IST 2026
[2026-10-18 18:44:10,037.037 INFO    ] ================================================
[2026-10-18 18:44:10,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:44:10
[2026-10-18 18:44:11,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:44:11,469.469 INFO    ] Initializing speech engine...
[2026-10-18 18:44:11,486.486 INFO    ] 2026-10-18 18:44:11
[2026-10-18 18:44:11,744.744 INFO    ] 2026-10-18 18:44:11
[2026-10-18 18:44:11,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:44:12,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:44:12,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:44:12,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:44:12,244.244 INFO    ] time= 18/10/2026 18:44:12
[2026-10-18 18:44:12,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:44:12,307.307 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:44:12,434.434 INFO    ] No existing commands found in stream
[2026-10-18 18:44:17,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:44:17,464.464 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-18 18:44:18,630.630 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:44:18,632.632 INFO    ] Checking for system updates...
[2026-10-18 18:44:18,669.669 INFO    ] 200
[2026-10-18 18:44:18,671.671 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:44:18,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:44:18,727.727 INFO    ] No update needed
[2026-10-18 18:44:18,729.729 INFO    ] Checking for camera pi updates...
[2026-10-18 18:44:18,766.766 INFO    ] 200
[2026-10-18 18:44:18,769.769 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:44:18,809.809 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:44:28,824.824 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73dae150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:44:28,860.860 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:44:28,870.870 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:44:28,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:44:28,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:44:28,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:44:30,924.924 INFO    ] ================================================
[2026-10-18 18:44:30,939.939 INFO    ] Launching Daemon at Sun Oct 18 18:44:30 IST 2026
[2026-10-18 18:44:30,952.952 INFO    ] ================================================
[2026-10-18 18:44:31,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:44:31
[2026-10-18 18:44:32,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:44:32,424.424 INFO    ] Initializing speech engine...
[2026-10-18 18:44:32,435.435 INFO    ] 2026-10-18 18:44:32
[2026-10-18 18:44:32,713.713 INFO    ] 2026-10-18 18:44:32
[2026-10-18 18:44:32,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:44:33,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:44:33,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:44:33,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:44:33,230.230 INFO    ] time= 18/10/2026 18:44:33
[2026-10-18 18:44:33,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:44:33,265.265 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:44:33,364.364 INFO    ] No existing commands found in stream
[2026-10-18 18:44:38,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:44:38,379.379 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-18 18:44:39,533.533 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:44:39,536.536 INFO    ] Checking for system updates...
[2026-10-18 18:44:39,571.571 INFO    ] 200
[2026-10-18 18:44:39,574.574 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:44:39,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:44:39,629.629 INFO    ] No update needed
[2026-10-18 18:44:39,631.631 INFO    ] Checking for camera pi updates...
[2026-10-18 18:44:39,669.669 INFO    ] 200
[2026-10-18 18:44:39,671.671 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:44:39,711.711 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:44:49,726.726 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:44:49,761.761 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:44:49,771.771 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:44:49,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:44:49,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:44:49,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:44:51,822.822 INFO    ] ================================================
[2026-10-18 18:44:51,837.837 INFO    ] Launching Daemon at Sun Oct 18 18:44:51 IST 2026
[2026-10-18 18:44:51,848.848 INFO    ] ================================================
[2026-10-18 18:44:52,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:44:52
[2026-10-18 18:44:53,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:44:53,272.272 INFO    ] Initializing speech engine...
[2026-10-18 18:44:53,280.280 INFO    ] 2026-10-18 18:44:53
[2026-10-18 18:44:53,532.532 INFO    ] 2026-10-18 18:44:53
[2026-10-18 18:44:53,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:44:53,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:44:53,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:44:53,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:44:54,038.038 INFO    ] time= 18/10/2026 18:44:53
[2026-10-18 18:44:54,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:44:54,109.109 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:44:54,255.255 INFO    ] No existing commands found in stream
[2026-10-18 18:44:59,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:44:59,272.272 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-18 18:44:59,793.793 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 18:44:59,796.796 INFO    ] Checking for system updates...
[2026-10-18 18:44:59,837.837 INFO    ] 200
[2026-10-18 18:44:59,839.839 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:44:59,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:44:59,900.900 INFO    ] No update needed
[2026-10-18 18:44:59,902.902 INFO    ] Checking for camera pi updates...
[2026-10-18 18:44:59,935.935 INFO    ] 200
[2026-10-18 18:44:59,938.938 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:44:59,978.978 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:45:09,993.993 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:45:10,028.028 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:45:10,037.037 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:45:10,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:45:10,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:45:10,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:45:12,091.091 INFO    ] ================================================
[2026-10-18 18:45:12,106.106 INFO    ] Launching Daemon at Sun Oct 18 18:45:12 IST 2026
[2026-10-18 18:45:12,117.117 INFO    ] ================================================
[2026-10-18 18:45:12,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:45:12
[2026-10-18 18:45:13,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:45:13,562.562 INFO    ] Initializing speech engine...
[2026-10-18 18:45:13,580.580 INFO    ] 2026-10-18 18:45:13
[2026-10-18 18:45:13,843.843 INFO    ] 2026-10-18 18:45:13
[2026-10-18 18:45:13,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:45:14,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:45:14,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:45:14,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:45:14,390.390 INFO    ] time= 18/10/2026 18:45:14
[2026-10-18 18:45:14,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:45:14,412.412 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:45:14,530.530 INFO    ] No existing commands found in stream
[2026-10-18 18:45:19,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:45:19,557.557 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-18 18:45:23,637.637 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 18:45:23,640.640 INFO    ] Checking for system updates...
[2026-10-18 18:45:23,680.680 INFO    ] 200
[2026-10-18 18:45:23,682.682 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:45:23,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:45:23,737.737 INFO    ] No update needed
[2026-10-18 18:45:23,739.739 INFO    ] Checking for camera pi updates...
[2026-10-18 18:45:23,776.776 INFO    ] 200
[2026-10-18 18:45:23,779.779 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:45:23,819.819 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:45:33,832.832 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:45:33,869.869 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:45:33,879.879 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:45:33,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:45:33,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:45:33,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:45:35,932.932 INFO    ] ================================================
[2026-10-18 18:45:35,951.951 INFO    ] Launching Daemon at Sun Oct 18 18:45:35 IST 2026
[2026-10-18 18:45:35,965.965 INFO    ] ================================================
[2026-10-18 18:45:36,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:45:36
[2026-10-18 18:45:37,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:45:37,385.385 INFO    ] Initializing speech engine...
[2026-10-18 18:45:37,395.395 INFO    ] 2026-10-18 18:45:37
[2026-10-18 18:45:37,655.655 INFO    ] 2026-10-18 18:45:37
[2026-10-18 18:45:37,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:45:37,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:45:37,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:45:38,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:45:38,148.148 INFO    ] time= 18/10/2026 18:45:38
[2026-10-18 18:45:38,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:45:38,207.207 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:45:38,353.353 INFO    ] No existing commands found in stream
[2026-10-18 18:45:43,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:45:43,378.378 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-18 18:45:46,442.442 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:45:46,445.445 INFO    ] Checking for system updates...
[2026-10-18 18:45:46,481.481 INFO    ] 200
[2026-10-18 18:45:46,484.484 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:45:46,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:45:46,539.539 INFO    ] No update needed
[2026-10-18 18:45:46,542.542 INFO    ] Checking for camera pi updates...
[2026-10-18 18:45:46,578.578 INFO    ] 200
[2026-10-18 18:45:46,581.581 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:45:46,622.622 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:45:56,636.636 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:45:56,671.671 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:45:56,680.680 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:45:56,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:45:56,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:45:56,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:45:58,733.733 INFO    ] ================================================
[2026-10-18 18:45:58,749.749 INFO    ] Launching Daemon at Sun Oct 18 18:45:58 IST 2026
[2026-10-18 18:45:58,760.760 INFO    ] ================================================
[2026-10-18 18:45:59,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:45:59
[2026-10-18 18:46:00,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:46:00,361.361 INFO    ] Initializing speech engine...
[2026-10-18 18:46:00,370.370 INFO    ] 2026-10-18 18:46:00
[2026-10-18 18:46:00,655.655 INFO    ] 2026-10-18 18:46:00
[2026-10-18 18:46:00,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:46:00,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:46:00,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:46:01,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:46:01,207.207 INFO    ] time= 18/10/2026 18:46:01
[2026-10-18 18:46:01,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:46:01,244.244 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:46:01,359.359 INFO    ] No existing commands found in stream
[2026-10-18 18:46:06,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:46:06,388.388 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-18 18:46:09,526.526 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:46:09,528.528 INFO    ] Checking for system updates...
[2026-10-18 18:46:09,563.563 INFO    ] 200
[2026-10-18 18:46:09,566.566 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:46:09,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:46:09,626.626 INFO    ] No update needed
[2026-10-18 18:46:09,628.628 INFO    ] Checking for camera pi updates...
[2026-10-18 18:46:09,661.661 INFO    ] 200
[2026-10-18 18:46:09,664.664 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:46:09,708.708 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:46:19,723.723 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:46:19,758.758 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:46:19,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:46:19,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:46:19,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:46:19,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:46:21,819.819 INFO    ] ================================================
[2026-10-18 18:46:21,834.834 INFO    ] Launching Daemon at Sun Oct 18 18:46:21 IST 2026
[2026-10-18 18:46:21,845.845 INFO    ] ================================================
[2026-10-18 18:46:22,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:46:22
[2026-10-18 18:46:23,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:46:23,303.303 INFO    ] Initializing speech engine...
[2026-10-18 18:46:23,312.312 INFO    ] 2026-10-18 18:46:23
[2026-10-18 18:46:23,574.574 INFO    ] 2026-10-18 18:46:23
[2026-10-18 18:46:23,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:46:23,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:46:23,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:46:24,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:46:24,117.117 INFO    ] time= 18/10/2026 18:46:24
[2026-10-18 18:46:24,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:46:24,145.145 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:46:24,273.273 INFO    ] No existing commands found in stream
[2026-10-18 18:46:29,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:46:29,296.296 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-18 18:46:31,810.810 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:46:31,812.812 INFO    ] Checking for system updates...
[2026-10-18 18:46:31,859.859 INFO    ] 200
[2026-10-18 18:46:31,862.862 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:46:31,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:46:31,923.923 INFO    ] No update needed
[2026-10-18 18:46:31,926.926 INFO    ] Checking for camera pi updates...
[2026-10-18 18:46:31,970.970 INFO    ] 200
[2026-10-18 18:46:31,973.973 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:46:32,026.026 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:46:42,041.041 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:46:42,077.077 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:46:42,087.087 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:46:42,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:46:42,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:46:42,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:46:44,140.140 INFO    ] ================================================
[2026-10-18 18:46:44,155.155 INFO    ] Launching Daemon at Sun Oct 18 18:46:44 IST 2026
[2026-10-18 18:46:44,166.166 INFO    ] ================================================
[2026-10-18 18:46:44,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:46:44
[2026-10-18 18:46:45,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:46:45,573.573 INFO    ] Initializing speech engine...
[2026-10-18 18:46:45,579.579 INFO    ] 2026-10-18 18:46:45
[2026-10-18 18:46:45,871.871 INFO    ] 2026-10-18 18:46:45
[2026-10-18 18:46:45,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:46:46,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:46:46,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:46:46,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:46:46,297.297 INFO    ] time= 18/10/2026 18:46:46
[2026-10-18 18:46:46,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:46:46,379.379 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:46:46,500.500 INFO    ] No existing commands found in stream
[2026-10-18 18:46:51,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:46:51,516.516 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-18 18:46:52,540.540 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 18:46:52,542.542 INFO    ] Checking for system updates...
[2026-10-18 18:46:52,582.582 INFO    ] 200
[2026-10-18 18:46:52,585.585 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:46:52,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:46:52,644.644 INFO    ] No update needed
[2026-10-18 18:46:52,647.647 INFO    ] Checking for camera pi updates...
[2026-10-18 18:46:52,681.681 INFO    ] 200
[2026-10-18 18:46:52,684.684 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:46:52,728.728 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:47:02,741.741 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:47:02,780.780 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:47:02,790.790 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:47:02,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:47:02,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:47:02,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:47:04,842.842 INFO    ] ================================================
[2026-10-18 18:47:04,857.857 INFO    ] Launching Daemon at Sun Oct 18 18:47:04 IST 2026
[2026-10-18 18:47:04,868.868 INFO    ] ================================================
[2026-10-18 18:47:05,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:47:05
[2026-10-18 18:47:06,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:47:06,281.281 INFO    ] Initializing speech engine...
[2026-10-18 18:47:06,288.288 INFO    ] 2026-10-18 18:47:06
[2026-10-18 18:47:06,581.581 INFO    ] 2026-10-18 18:47:06
[2026-10-18 18:47:06,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:47:06,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:47:06,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:47:07,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:47:07,047.047 INFO    ] time= 18/10/2026 18:47:07
[2026-10-18 18:47:07,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:47:07,148.148 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:47:07,294.294 INFO    ] No existing commands found in stream
[2026-10-18 18:47:12,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:47:12,310.310 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-18 18:47:14,491.491 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:47:14,494.494 INFO    ] Checking for system updates...
[2026-10-18 18:47:14,534.534 INFO    ] 200
[2026-10-18 18:47:14,537.537 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:47:14,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:47:14,598.598 INFO    ] No update needed
[2026-10-18 18:47:14,600.600 INFO    ] Checking for camera pi updates...
[2026-10-18 18:47:14,634.634 INFO    ] 200
[2026-10-18 18:47:14,637.637 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:47:14,677.677 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:47:24,692.692 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:47:24,727.727 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:47:24,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:47:24,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:47:24,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:47:24,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:47:26,792.792 INFO    ] ================================================
[2026-10-18 18:47:26,807.807 INFO    ] Launching Daemon at Sun Oct 18 18:47:26 IST 2026
[2026-10-18 18:47:26,817.817 INFO    ] ================================================
[2026-10-18 18:47:27,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:47:27
[2026-10-18 18:47:27,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:47:28,223.223 INFO    ] Initializing speech engine...
[2026-10-18 18:47:28,229.229 INFO    ] 2026-10-18 18:47:28
[2026-10-18 18:47:28,520.520 INFO    ] 2026-10-18 18:47:28
[2026-10-18 18:47:28,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:47:28,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:47:28,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:47:28,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:47:28,935.935 INFO    ] time= 18/10/2026 18:47:28
[2026-10-18 18:47:28,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:47:28,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:47:29,149.149 INFO    ] No existing commands found in stream
[2026-10-18 18:47:34,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:47:34,168.168 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-18 18:47:38,248.248 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:47:38,251.251 INFO    ] Checking for system updates...
[2026-10-18 18:47:38,291.291 INFO    ] 200
[2026-10-18 18:47:38,293.293 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:47:38,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:47:38,352.352 INFO    ] No update needed
[2026-10-18 18:47:38,355.355 INFO    ] Checking for camera pi updates...
[2026-10-18 18:47:38,390.390 INFO    ] 200
[2026-10-18 18:47:38,392.392 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:47:38,434.434 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:47:48,450.450 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:47:48,489.489 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:47:48,500.500 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:47:48,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:47:48,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:47:48,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:47:50,555.555 INFO    ] ================================================
[2026-10-18 18:47:50,570.570 INFO    ] Launching Daemon at Sun Oct 18 18:47:50 IST 2026
[2026-10-18 18:47:50,581.581 INFO    ] ================================================
[2026-10-18 18:47:51,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:47:51
[2026-10-18 18:47:51,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:47:52,185.185 INFO    ] Initializing speech engine...
[2026-10-18 18:47:52,198.198 INFO    ] 2026-10-18 18:47:52
[2026-10-18 18:47:52,483.483 INFO    ] 2026-10-18 18:47:52
[2026-10-18 18:47:52,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:47:52,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:47:52,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:47:53,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:47:53,035.035 INFO    ] time= 18/10/2026 18:47:53
[2026-10-18 18:47:53,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:47:53,063.063 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:47:53,192.192 INFO    ] No existing commands found in stream
[2026-10-18 18:47:58,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:47:58,210.210 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-18 18:47:58,831.831 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:47:58,834.834 INFO    ] Checking for system updates...
[2026-10-18 18:47:58,871.871 INFO    ] 200
[2026-10-18 18:47:58,874.874 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:47:58,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:47:58,936.936 INFO    ] No update needed
[2026-10-18 18:47:58,939.939 INFO    ] Checking for camera pi updates...
[2026-10-18 18:47:58,974.974 INFO    ] 200
[2026-10-18 18:47:58,977.977 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:47:59,018.018 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:48:09,034.034 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:48:09,076.076 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:48:09,088.088 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:48:09,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:48:09,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:48:09,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:48:11,145.145 INFO    ] ================================================
[2026-10-18 18:48:11,160.160 INFO    ] Launching Daemon at Sun Oct 18 18:48:11 IST 2026
[2026-10-18 18:48:11,170.170 INFO    ] ================================================
[2026-10-18 18:48:11,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:48:11
[2026-10-18 18:48:12,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:48:12,638.638 INFO    ] Initializing speech engine...
[2026-10-18 18:48:12,645.645 INFO    ] 2026-10-18 18:48:12
[2026-10-18 18:48:12,908.908 INFO    ] 2026-10-18 18:48:12
[2026-10-18 18:48:12,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:48:13,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:48:13,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:48:13,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:48:13,458.458 INFO    ] time= 18/10/2026 18:48:13
[2026-10-18 18:48:13,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:48:13,483.483 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:48:13,631.631 INFO    ] No existing commands found in stream
[2026-10-18 18:48:18,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:48:18,664.664 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-18 18:48:21,828.828 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:48:21,830.830 INFO    ] Checking for system updates...
[2026-10-18 18:48:21,867.867 INFO    ] 200
[2026-10-18 18:48:21,869.869 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:48:21,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:48:21,931.931 INFO    ] No update needed
[2026-10-18 18:48:21,933.933 INFO    ] Checking for camera pi updates...
[2026-10-18 18:48:21,967.967 INFO    ] 200
[2026-10-18 18:48:21,970.970 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:48:22,010.010 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:48:32,025.025 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:48:32,064.064 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:48:32,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:48:32,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:48:32,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:48:32,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:48:34,132.132 INFO    ] ================================================
[2026-10-18 18:48:34,147.147 INFO    ] Launching Daemon at Sun Oct 18 18:48:34 IST 2026
[2026-10-18 18:48:34,157.157 INFO    ] ================================================
[2026-10-18 18:48:34,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:48:34
[2026-10-18 18:48:35,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:48:35,566.566 INFO    ] Initializing speech engine...
[2026-10-18 18:48:35,574.574 INFO    ] 2026-10-18 18:48:35
[2026-10-18 18:48:35,849.849 INFO    ] 2026-10-18 18:48:35
[2026-10-18 18:48:35,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:48:36,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:48:36,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:48:36,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:48:36,349.349 INFO    ] time= 18/10/2026 18:48:36
[2026-10-18 18:48:36,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:48:36,424.424 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:48:36,553.553 INFO    ] No existing commands found in stream
[2026-10-18 18:48:41,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:48:41,584.584 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-18 18:48:44,706.706 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:48:44,709.709 INFO    ] Checking for system updates...
[2026-10-18 18:48:44,748.748 INFO    ] 200
[2026-10-18 18:48:44,751.751 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:48:44,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:48:44,815.815 INFO    ] No update needed
[2026-10-18 18:48:44,818.818 INFO    ] Checking for camera pi updates...
[2026-10-18 18:48:44,856.856 INFO    ] 200
[2026-10-18 18:48:44,859.859 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:48:44,909.909 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:48:54,925.925 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:48:54,960.960 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:48:54,969.969 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:48:54,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:48:54,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:48:54,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:48:57,022.022 INFO    ] ================================================
[2026-10-18 18:48:57,038.038 INFO    ] Launching Daemon at Sun Oct 18 18:48:57 IST 2026
[2026-10-18 18:48:57,049.049 INFO    ] ================================================
[2026-10-18 18:48:57,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:48:57
[2026-10-18 18:48:58,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:48:58,506.506 INFO    ] Initializing speech engine...
[2026-10-18 18:48:58,515.515 INFO    ] 2026-10-18 18:48:58
[2026-10-18 18:48:58,779.779 INFO    ] 2026-10-18 18:48:58
[2026-10-18 18:48:58,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:48:59,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:48:59,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:48:59,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:48:59,324.324 INFO    ] time= 18/10/2026 18:48:59
[2026-10-18 18:48:59,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:48:59,350.350 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:48:59,478.478 INFO    ] No existing commands found in stream
[2026-10-18 18:49:04,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:49:04,496.496 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-18 18:49:05,427.427 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:49:05,430.430 INFO    ] Checking for system updates...
[2026-10-18 18:49:05,470.470 INFO    ] 200
[2026-10-18 18:49:05,472.472 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:49:05,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:49:05,534.534 INFO    ] No update needed
[2026-10-18 18:49:05,537.537 INFO    ] Checking for camera pi updates...
[2026-10-18 18:49:05,571.571 INFO    ] 200
[2026-10-18 18:49:05,573.573 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:49:05,618.618 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:49:15,633.633 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:49:15,668.668 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:49:15,678.678 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:49:15,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:49:15,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:49:15,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:49:17,732.732 INFO    ] ================================================
[2026-10-18 18:49:17,747.747 INFO    ] Launching Daemon at Sun Oct 18 18:49:17 IST 2026
[2026-10-18 18:49:17,758.758 INFO    ] ================================================
[2026-10-18 18:49:18,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:49:18
[2026-10-18 18:49:18,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:49:19,210.210 INFO    ] Initializing speech engine...
[2026-10-18 18:49:19,216.216 INFO    ] 2026-10-18 18:49:19
[2026-10-18 18:49:19,471.471 INFO    ] 2026-10-18 18:49:19
[2026-10-18 18:49:19,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:49:19,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:49:19,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:49:19,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:49:19,961.961 INFO    ] time= 18/10/2026 18:49:19
[2026-10-18 18:49:20,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:49:20,030.030 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:49:20,189.189 INFO    ] No existing commands found in stream
[2026-10-18 18:49:25,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:49:25,221.221 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-18 18:49:26,291.291 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:49:26,293.293 INFO    ] Checking for system updates...
[2026-10-18 18:49:26,328.328 INFO    ] 200
[2026-10-18 18:49:26,331.331 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:49:26,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:49:26,386.386 INFO    ] No update needed
[2026-10-18 18:49:26,388.388 INFO    ] Checking for camera pi updates...
[2026-10-18 18:49:26,421.421 INFO    ] 200
[2026-10-18 18:49:26,424.424 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:49:26,466.466 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:49:36,482.482 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:49:36,518.518 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:49:36,527.527 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:49:36,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:49:36,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:49:36,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:49:38,581.581 INFO    ] ================================================
[2026-10-18 18:49:38,596.596 INFO    ] Launching Daemon at Sun Oct 18 18:49:38 IST 2026
[2026-10-18 18:49:38,606.606 INFO    ] ================================================
[2026-10-18 18:49:39,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:49:39
[2026-10-18 18:49:39,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:49:40,060.060 INFO    ] Initializing speech engine...
[2026-10-18 18:49:40,070.070 INFO    ] 2026-10-18 18:49:40
[2026-10-18 18:49:40,319.319 INFO    ] 2026-10-18 18:49:40
[2026-10-18 18:49:40,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:49:40,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:49:40,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:49:40,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:49:40,874.874 INFO    ] time= 18/10/2026 18:49:40
[2026-10-18 18:49:40,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:49:40,899.899 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:49:41,032.032 INFO    ] No existing commands found in stream
[2026-10-18 18:49:46,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:49:46,062.062 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-18 18:49:47,118.118 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:49:47,121.121 INFO    ] Checking for system updates...
[2026-10-18 18:49:47,158.158 INFO    ] 200
[2026-10-18 18:49:47,161.161 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:49:47,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:49:47,224.224 INFO    ] No update needed
[2026-10-18 18:49:47,227.227 INFO    ] Checking for camera pi updates...
[2026-10-18 18:49:47,261.261 INFO    ] 200
[2026-10-18 18:49:47,264.264 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:49:47,307.307 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:49:57,324.324 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:49:57,370.370 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:49:57,382.382 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:49:57,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:49:57,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:49:57,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:49:59,440.440 INFO    ] ================================================
[2026-10-18 18:49:59,455.455 INFO    ] Launching Daemon at Sun Oct 18 18:49:59 IST 2026
[2026-10-18 18:49:59,466.466 INFO    ] ================================================
[2026-10-18 18:50:00,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:50:00
[2026-10-18 18:50:00,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:50:01,078.078 INFO    ] Initializing speech engine...
[2026-10-18 18:50:01,094.094 INFO    ] 2026-10-18 18:50:01
[2026-10-18 18:50:01,785.785 INFO    ] 2026-10-18 18:50:01
[2026-10-18 18:50:01,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:50:02,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:50:02,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:50:02,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:50:02,342.342 INFO    ] time= 18/10/2026 18:50:02
[2026-10-18 18:50:02,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:50:02,349.349 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:50:02,434.434 INFO    ] No existing commands found in stream
[2026-10-18 18:50:07,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:50:07,448.448 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-18 18:50:09,859.859 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 18:50:09,861.861 INFO    ] Checking for system updates...
[2026-10-18 18:50:09,898.898 INFO    ] 200
[2026-10-18 18:50:09,901.901 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:50:09,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:50:09,957.957 INFO    ] No update needed
[2026-10-18 18:50:09,960.960 INFO    ] Checking for camera pi updates...
[2026-10-18 18:50:09,994.994 INFO    ] 200
[2026-10-18 18:50:09,997.997 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:50:10,040.040 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:50:20,057.057 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:50:20,097.097 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:50:20,109.109 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:50:20,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:50:20,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:50:20,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:50:22,164.164 INFO    ] ================================================
[2026-10-18 18:50:22,180.180 INFO    ] Launching Daemon at Sun Oct 18 18:50:22 IST 2026
[2026-10-18 18:50:22,193.193 INFO    ] ================================================
[2026-10-18 18:50:22,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:50:22
[2026-10-18 18:50:23,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:50:23,689.689 INFO    ] Initializing speech engine...
[2026-10-18 18:50:23,701.701 INFO    ] 2026-10-18 18:50:23
[2026-10-18 18:50:23,976.976 INFO    ] 2026-10-18 18:50:23
[2026-10-18 18:50:24,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:50:24,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:50:24,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:50:24,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:50:24,487.487 INFO    ] time= 18/10/2026 18:50:24
[2026-10-18 18:50:24,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:50:24,555.555 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:50:24,699.699 INFO    ] No existing commands found in stream
[2026-10-18 18:50:29,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:50:29,721.721 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-18 18:50:31,853.853 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:50:31,855.855 INFO    ] Checking for system updates...
[2026-10-18 18:50:31,894.894 INFO    ] 200
[2026-10-18 18:50:31,896.896 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:50:31,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:50:31,963.963 INFO    ] No update needed
[2026-10-18 18:50:31,966.966 INFO    ] Checking for camera pi updates...
[2026-10-18 18:50:32,006.006 INFO    ] 200
[2026-10-18 18:50:32,009.009 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:50:32,055.055 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:50:42,069.069 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:50:42,104.104 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:50:42,113.113 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:50:42,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:50:42,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:50:42,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:50:44,166.166 INFO    ] ================================================
[2026-10-18 18:50:44,181.181 INFO    ] Launching Daemon at Sun Oct 18 18:50:44 IST 2026
[2026-10-18 18:50:44,192.192 INFO    ] ================================================
[2026-10-18 18:50:44,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:50:44
[2026-10-18 18:50:45,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:50:45,827.827 INFO    ] Initializing speech engine...
[2026-10-18 18:50:45,838.838 INFO    ] 2026-10-18 18:50:45
[2026-10-18 18:50:46,123.123 INFO    ] 2026-10-18 18:50:46
[2026-10-18 18:50:46,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:50:46,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:50:46,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:50:46,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:50:46,678.678 INFO    ] time= 18/10/2026 18:50:46
[2026-10-18 18:50:46,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:50:46,727.727 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:50:46,857.857 INFO    ] No existing commands found in stream
[2026-10-18 18:50:51,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:50:51,896.896 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-18 18:50:53,312.312 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:50:53,315.315 INFO    ] Checking for system updates...
[2026-10-18 18:50:53,351.351 INFO    ] 200
[2026-10-18 18:50:53,353.353 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:50:53,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:50:53,410.410 INFO    ] No update needed
[2026-10-18 18:50:53,413.413 INFO    ] Checking for camera pi updates...
[2026-10-18 18:50:53,447.447 INFO    ] 200
[2026-10-18 18:50:53,450.450 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:50:53,492.492 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:51:03,504.504 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:51:03,540.540 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:51:03,550.550 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:51:03,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:51:03,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:51:03,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:51:05,602.602 INFO    ] ================================================
[2026-10-18 18:51:05,617.617 INFO    ] Launching Daemon at Sun Oct 18 18:51:05 IST 2026
[2026-10-18 18:51:05,628.628 INFO    ] ================================================
[2026-10-18 18:51:06,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:51:06
[2026-10-18 18:51:06,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:51:07,047.047 INFO    ] Initializing speech engine...
[2026-10-18 18:51:07,056.056 INFO    ] 2026-10-18 18:51:07
[2026-10-18 18:51:07,317.317 INFO    ] 2026-10-18 18:51:07
[2026-10-18 18:51:07,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:51:07,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:51:07,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:51:07,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:51:07,786.786 INFO    ] time= 18/10/2026 18:51:07
[2026-10-18 18:51:07,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:51:07,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:51:07,997.997 INFO    ] No existing commands found in stream
[2026-10-18 18:51:13,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:51:13,010.010 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-18 18:51:14,491.491 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:51:14,494.494 INFO    ] Checking for system updates...
[2026-10-18 18:51:14,530.530 INFO    ] 200
[2026-10-18 18:51:14,532.532 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:51:14,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:51:14,588.588 INFO    ] No update needed
[2026-10-18 18:51:14,590.590 INFO    ] Checking for camera pi updates...
[2026-10-18 18:51:14,623.623 INFO    ] 200
[2026-10-18 18:51:14,626.626 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:51:14,666.666 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:51:24,680.680 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:51:24,715.715 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:51:24,725.725 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:51:24,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:51:24,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:51:24,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:51:26,779.779 INFO    ] ================================================
[2026-10-18 18:51:26,794.794 INFO    ] Launching Daemon at Sun Oct 18 18:51:26 IST 2026
[2026-10-18 18:51:26,805.805 INFO    ] ================================================
[2026-10-18 18:51:27,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:51:27
[2026-10-18 18:51:27,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:51:28,211.211 INFO    ] Initializing speech engine...
[2026-10-18 18:51:28,227.227 INFO    ] 2026-10-18 18:51:28
[2026-10-18 18:51:28,485.485 INFO    ] 2026-10-18 18:51:28
[2026-10-18 18:51:28,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:51:28,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:51:28,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:51:28,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:51:28,960.960 INFO    ] time= 18/10/2026 18:51:28
[2026-10-18 18:51:29,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:51:29,063.063 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:51:29,215.215 INFO    ] No existing commands found in stream
[2026-10-18 18:51:34,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:51:34,233.233 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-18 18:51:34,822.822 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 18:51:34,825.825 INFO    ] Checking for system updates...
[2026-10-18 18:51:34,860.860 INFO    ] 200
[2026-10-18 18:51:34,863.863 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:51:34,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:51:34,919.919 INFO    ] No update needed
[2026-10-18 18:51:34,921.921 INFO    ] Checking for camera pi updates...
[2026-10-18 18:51:34,954.954 INFO    ] 200
[2026-10-18 18:51:34,957.957 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:51:35,002.002 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:51:45,017.017 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:51:45,054.054 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:51:45,063.063 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:51:45,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:51:45,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:51:45,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:51:47,117.117 INFO    ] ================================================
[2026-10-18 18:51:47,132.132 INFO    ] Launching Daemon at Sun Oct 18 18:51:47 IST 2026
[2026-10-18 18:51:47,142.142 INFO    ] ================================================
[2026-10-18 18:51:47,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:51:47
[2026-10-18 18:51:48,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:51:48,714.714 INFO    ] Initializing speech engine...
[2026-10-18 18:51:48,726.726 INFO    ] 2026-10-18 18:51:48
[2026-10-18 18:51:49,013.013 INFO    ] 2026-10-18 18:51:48
[2026-10-18 18:51:49,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:51:49,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:51:49,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:51:49,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:51:49,557.557 INFO    ] time= 18/10/2026 18:51:49
[2026-10-18 18:51:49,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:51:49,598.598 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:51:49,740.740 INFO    ] No existing commands found in stream
[2026-10-18 18:51:54,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:51:54,774.774 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-18 18:51:58,228.228 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:51:58,231.231 INFO    ] Checking for system updates...
[2026-10-18 18:51:58,268.268 INFO    ] 200
[2026-10-18 18:51:58,271.271 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:51:58,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:51:58,327.327 INFO    ] No update needed
[2026-10-18 18:51:58,330.330 INFO    ] Checking for camera pi updates...
[2026-10-18 18:51:58,364.364 INFO    ] 200
[2026-10-18 18:51:58,367.367 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:51:58,414.414 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:52:08,429.429 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:52:08,470.470 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:52:08,481.481 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:52:08,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:52:08,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:52:08,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:52:10,536.536 INFO    ] ================================================
[2026-10-18 18:52:10,552.552 INFO    ] Launching Daemon at Sun Oct 18 18:52:10 IST 2026
[2026-10-18 18:52:10,563.563 INFO    ] ================================================
[2026-10-18 18:52:11,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:52:11
[2026-10-18 18:52:11,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:52:11,974.974 INFO    ] Initializing speech engine...
[2026-10-18 18:52:11,980.980 INFO    ] 2026-10-18 18:52:11
[2026-10-18 18:52:12,274.274 INFO    ] 2026-10-18 18:52:12
[2026-10-18 18:52:12,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:52:12,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:52:12,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:52:12,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:52:12,763.763 INFO    ] time= 18/10/2026 18:52:12
[2026-10-18 18:52:12,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:52:12,861.861 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:52:12,961.961 INFO    ] No existing commands found in stream
[2026-10-18 18:52:17,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:52:17,977.977 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-18 18:52:19,155.155 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:52:19,157.157 INFO    ] Checking for system updates...
[2026-10-18 18:52:19,194.194 INFO    ] 200
[2026-10-18 18:52:19,196.196 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:52:19,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:52:19,251.251 INFO    ] No update needed
[2026-10-18 18:52:19,254.254 INFO    ] Checking for camera pi updates...
[2026-10-18 18:52:19,288.288 INFO    ] 200
[2026-10-18 18:52:19,290.290 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:52:19,330.330 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:52:29,345.345 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:52:29,381.381 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:52:29,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:52:29,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:52:29,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:52:29,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:52:31,443.443 INFO    ] ================================================
[2026-10-18 18:52:31,458.458 INFO    ] Launching Daemon at Sun Oct 18 18:52:31 IST 2026
[2026-10-18 18:52:31,469.469 INFO    ] ================================================
[2026-10-18 18:52:32,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:52:32
[2026-10-18 18:52:32,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:52:32,976.976 INFO    ] Initializing speech engine...
[2026-10-18 18:52:32,985.985 INFO    ] 2026-10-18 18:52:32
[2026-10-18 18:52:33,265.265 INFO    ] 2026-10-18 18:52:33
[2026-10-18 18:52:33,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:52:33,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:52:33,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:52:33,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:52:33,745.745 INFO    ] time= 18/10/2026 18:52:33
[2026-10-18 18:52:33,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:52:33,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:52:33,950.950 INFO    ] No existing commands found in stream
[2026-10-18 18:52:38,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:52:38,965.965 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-18 18:52:41,869.869 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:52:41,871.871 INFO    ] Checking for system updates...
[2026-10-18 18:52:41,906.906 INFO    ] 200
[2026-10-18 18:52:41,909.909 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:52:41,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:52:41,964.964 INFO    ] No update needed
[2026-10-18 18:52:41,967.967 INFO    ] Checking for camera pi updates...
[2026-10-18 18:52:42,001.001 INFO    ] 200
[2026-10-18 18:52:42,003.003 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:52:42,047.047 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:52:52,063.063 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:52:52,097.097 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:52:52,107.107 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:52:52,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:52:52,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:52:52,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:52:54,159.159 INFO    ] ================================================
[2026-10-18 18:52:54,174.174 INFO    ] Launching Daemon at Sun Oct 18 18:52:54 IST 2026
[2026-10-18 18:52:54,186.186 INFO    ] ================================================
[2026-10-18 18:52:54,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:52:54
[2026-10-18 18:52:55,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:52:55,778.778 INFO    ] Initializing speech engine...
[2026-10-18 18:52:55,787.787 INFO    ] 2026-10-18 18:52:55
[2026-10-18 18:52:56,068.068 INFO    ] 2026-10-18 18:52:56
[2026-10-18 18:52:56,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:52:56,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:52:56,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:52:56,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:52:56,619.619 INFO    ] time= 18/10/2026 18:52:56
[2026-10-18 18:52:56,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:52:56,657.657 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:52:56,782.782 INFO    ] No existing commands found in stream
[2026-10-18 18:53:01,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:53:01,815.815 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-18 18:53:06,031.031 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 18:53:06,034.034 INFO    ] Checking for system updates...
[2026-10-18 18:53:06,070.070 INFO    ] 200
[2026-10-18 18:53:06,073.073 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:53:06,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:53:06,129.129 INFO    ] No update needed
[2026-10-18 18:53:06,131.131 INFO    ] Checking for camera pi updates...
[2026-10-18 18:53:06,165.165 INFO    ] 200
[2026-10-18 18:53:06,168.168 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:53:06,214.214 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:53:16,227.227 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:53:16,266.266 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:53:16,276.276 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:53:16,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:53:16,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:53:16,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:53:18,331.331 INFO    ] ================================================
[2026-10-18 18:53:18,347.347 INFO    ] Launching Daemon at Sun Oct 18 18:53:18 IST 2026
[2026-10-18 18:53:18,358.358 INFO    ] ================================================
[2026-10-18 18:53:18,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:53:18
[2026-10-18 18:53:19,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:53:19,850.850 INFO    ] Initializing speech engine...
[2026-10-18 18:53:19,860.860 INFO    ] 2026-10-18 18:53:19
[2026-10-18 18:53:20,105.105 INFO    ] 2026-10-18 18:53:20
[2026-10-18 18:53:20,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:53:20,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:53:20,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:53:20,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:53:20,657.657 INFO    ] time= 18/10/2026 18:53:20
[2026-10-18 18:53:20,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:53:20,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:53:20,785.785 INFO    ] No existing commands found in stream
[2026-10-18 18:53:25,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:53:25,820.820 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-18 18:53:30,239.239 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:53:30,242.242 INFO    ] Checking for system updates...
[2026-10-18 18:53:30,277.277 INFO    ] 200
[2026-10-18 18:53:30,280.280 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:53:30,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:53:30,342.342 INFO    ] No update needed
[2026-10-18 18:53:30,344.344 INFO    ] Checking for camera pi updates...
[2026-10-18 18:53:30,378.378 INFO    ] 200
[2026-10-18 18:53:30,380.380 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:53:30,421.421 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:53:40,434.434 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:53:40,469.469 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:53:40,479.479 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:53:40,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:53:40,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:53:40,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:53:42,534.534 INFO    ] ================================================
[2026-10-18 18:53:42,549.549 INFO    ] Launching Daemon at Sun Oct 18 18:53:42 IST 2026
[2026-10-18 18:53:42,560.560 INFO    ] ================================================
[2026-10-18 18:53:43,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:53:43
[2026-10-18 18:53:43,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:53:43,980.980 INFO    ] Initializing speech engine...
[2026-10-18 18:53:43,989.989 INFO    ] 2026-10-18 18:53:43
[2026-10-18 18:53:44,283.283 INFO    ] 2026-10-18 18:53:44
[2026-10-18 18:53:44,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:53:44,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:53:44,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:53:44,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:53:44,705.705 INFO    ] time= 18/10/2026 18:53:44
[2026-10-18 18:53:44,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:53:44,743.743 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:53:44,887.887 INFO    ] No existing commands found in stream
[2026-10-18 18:53:49,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:53:49,920.920 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-18 18:53:53,380.380 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:53:53,382.382 INFO    ] Checking for system updates...
[2026-10-18 18:53:53,422.422 INFO    ] 200
[2026-10-18 18:53:53,424.424 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:53:53,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:53:53,480.480 INFO    ] No update needed
[2026-10-18 18:53:53,482.482 INFO    ] Checking for camera pi updates...
[2026-10-18 18:53:53,519.519 INFO    ] 200
[2026-10-18 18:53:53,521.521 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:53:53,566.566 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:54:03,579.579 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:54:03,619.619 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:54:03,630.630 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:54:03,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:54:03,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:54:03,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:54:05,689.689 INFO    ] ================================================
[2026-10-18 18:54:05,706.706 INFO    ] Launching Daemon at Sun Oct 18 18:54:05 IST 2026
[2026-10-18 18:54:05,718.718 INFO    ] ================================================
[2026-10-18 18:54:06,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:54:06
[2026-10-18 18:54:06,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:54:07,190.190 INFO    ] Initializing speech engine...
[2026-10-18 18:54:07,199.199 INFO    ] 2026-10-18 18:54:07
[2026-10-18 18:54:07,471.471 INFO    ] 2026-10-18 18:54:07
[2026-10-18 18:54:07,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:54:07,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:54:07,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:54:07,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:54:08,002.002 INFO    ] time= 18/10/2026 18:54:07
[2026-10-18 18:54:08,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:54:08,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:54:08,158.158 INFO    ] No existing commands found in stream
[2026-10-18 18:54:13,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:54:13,181.181 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-18 18:54:15,501.501 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 18:54:15,504.504 INFO    ] Checking for system updates...
[2026-10-18 18:54:15,540.540 INFO    ] 200
[2026-10-18 18:54:15,542.542 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:54:15,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:54:15,597.597 INFO    ] No update needed
[2026-10-18 18:54:15,600.600 INFO    ] Checking for camera pi updates...
[2026-10-18 18:54:15,633.633 INFO    ] 200
[2026-10-18 18:54:15,636.636 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:54:15,676.676 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:54:25,692.692 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:54:25,727.727 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:54:25,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:54:25,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:54:25,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:54:25,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:54:27,792.792 INFO    ] ================================================
[2026-10-18 18:54:27,807.807 INFO    ] Launching Daemon at Sun Oct 18 18:54:27 IST 2026
[2026-10-18 18:54:27,818.818 INFO    ] ================================================
[2026-10-18 18:54:28,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:54:28
[2026-10-18 18:54:29,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:54:29,405.405 INFO    ] Initializing speech engine...
[2026-10-18 18:54:29,418.418 INFO    ] 2026-10-18 18:54:29
[2026-10-18 18:54:29,697.697 INFO    ] 2026-10-18 18:54:29
[2026-10-18 18:54:29,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:54:29,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:54:30,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:54:30,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:54:30,246.246 INFO    ] time= 18/10/2026 18:54:30
[2026-10-18 18:54:30,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:54:30,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:54:30,420.420 INFO    ] No existing commands found in stream
[2026-10-18 18:54:35,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:54:35,454.454 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-18 18:54:38,463.463 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 18:54:38,466.466 INFO    ] Checking for system updates...
[2026-10-18 18:54:38,504.504 INFO    ] 200
[2026-10-18 18:54:38,506.506 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:54:38,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:54:38,563.563 INFO    ] No update needed
[2026-10-18 18:54:38,566.566 INFO    ] Checking for camera pi updates...
[2026-10-18 18:54:38,600.600 INFO    ] 200
[2026-10-18 18:54:38,603.603 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:54:38,642.642 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:54:48,658.658 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:54:48,692.692 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:54:48,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:54:48,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:54:48,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:54:48,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:54:50,754.754 INFO    ] ================================================
[2026-10-18 18:54:50,770.770 INFO    ] Launching Daemon at Sun Oct 18 18:54:50 IST 2026
[2026-10-18 18:54:50,782.782 INFO    ] ================================================
[2026-10-18 18:54:51,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:54:51
[2026-10-18 18:54:51,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:54:52,243.243 INFO    ] Initializing speech engine...
[2026-10-18 18:54:52,250.250 INFO    ] 2026-10-18 18:54:52
[2026-10-18 18:54:52,511.511 INFO    ] 2026-10-18 18:54:52
[2026-10-18 18:54:52,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:54:52,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:54:52,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:54:53,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:54:53,053.053 INFO    ] time= 18/10/2026 18:54:53
[2026-10-18 18:54:53,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:54:53,078.078 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:54:53,210.210 INFO    ] No existing commands found in stream
[2026-10-18 18:54:58,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:54:58,228.228 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-18 18:55:01,490.490 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:55:01,493.493 INFO    ] Checking for system updates...
[2026-10-18 18:55:01,533.533 INFO    ] 200
[2026-10-18 18:55:01,535.535 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:55:01,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:55:01,591.591 INFO    ] No update needed
[2026-10-18 18:55:01,594.594 INFO    ] Checking for camera pi updates...
[2026-10-18 18:55:01,632.632 INFO    ] 200
[2026-10-18 18:55:01,634.634 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:55:01,680.680 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:55:11,695.695 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:55:11,730.730 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:55:11,740.740 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:55:11,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:55:11,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:55:11,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:55:13,794.794 INFO    ] ================================================
[2026-10-18 18:55:13,809.809 INFO    ] Launching Daemon at Sun Oct 18 18:55:13 IST 2026
[2026-10-18 18:55:13,819.819 INFO    ] ================================================
[2026-10-18 18:55:14,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:55:14
[2026-10-18 18:55:14,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:55:15,271.271 INFO    ] Initializing speech engine...
[2026-10-18 18:55:15,281.281 INFO    ] 2026-10-18 18:55:15
[2026-10-18 18:55:15,542.542 INFO    ] 2026-10-18 18:55:15
[2026-10-18 18:55:15,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:55:15,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:55:15,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:55:16,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:55:16,082.082 INFO    ] time= 18/10/2026 18:55:16
[2026-10-18 18:55:16,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:55:16,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:55:16,239.239 INFO    ] No existing commands found in stream
[2026-10-18 18:55:21,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:55:21,261.261 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-18 18:55:24,462.462 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 18:55:24,465.465 INFO    ] Checking for system updates...
[2026-10-18 18:55:24,501.501 INFO    ] 200
[2026-10-18 18:55:24,503.503 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:55:24,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:55:24,559.559 INFO    ] No update needed
[2026-10-18 18:55:24,561.561 INFO    ] Checking for camera pi updates...
[2026-10-18 18:55:24,595.595 INFO    ] 200
[2026-10-18 18:55:24,598.598 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:55:24,642.642 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:55:34,657.657 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:55:34,693.693 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:55:34,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:55:34,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:55:34,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:55:34,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:55:36,754.754 INFO    ] ================================================
[2026-10-18 18:55:36,770.770 INFO    ] Launching Daemon at Sun Oct 18 18:55:36 IST 2026
[2026-10-18 18:55:36,781.781 INFO    ] ================================================
[2026-10-18 18:55:37,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:55:37
[2026-10-18 18:55:37,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:55:38,204.204 INFO    ] Initializing speech engine...
[2026-10-18 18:55:38,213.213 INFO    ] 2026-10-18 18:55:38
[2026-10-18 18:55:38,464.464 INFO    ] 2026-10-18 18:55:38
[2026-10-18 18:55:38,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:55:38,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:55:38,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:55:38,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:55:38,986.986 INFO    ] time= 18/10/2026 18:55:38
[2026-10-18 18:55:39,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:55:39,044.044 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:55:39,171.171 INFO    ] No existing commands found in stream
[2026-10-18 18:55:44,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:55:44,202.202 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-18 18:55:48,389.389 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:55:48,392.392 INFO    ] Checking for system updates...
[2026-10-18 18:55:48,428.428 INFO    ] 200
[2026-10-18 18:55:48,431.431 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:55:48,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:55:48,488.488 INFO    ] No update needed
[2026-10-18 18:55:48,490.490 INFO    ] Checking for camera pi updates...
[2026-10-18 18:55:48,523.523 INFO    ] 200
[2026-10-18 18:55:48,525.525 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:55:48,570.570 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:55:58,581.581 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:55:58,615.615 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:55:58,625.625 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:55:58,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:55:58,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:55:58,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:56:00,679.679 INFO    ] ================================================
[2026-10-18 18:56:00,694.694 INFO    ] Launching Daemon at Sun Oct 18 18:56:00 IST 2026
[2026-10-18 18:56:00,704.704 INFO    ] ================================================
[2026-10-18 18:56:01,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:56:01
[2026-10-18 18:56:02,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:56:02,450.450 INFO    ] Initializing speech engine...
[2026-10-18 18:56:02,456.456 INFO    ] 2026-10-18 18:56:02
[2026-10-18 18:56:02,846.846 INFO    ] 2026-10-18 18:56:02
[2026-10-18 18:56:02,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:56:03,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:56:03,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:56:03,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:56:03,348.348 INFO    ] time= 18/10/2026 18:56:03
[2026-10-18 18:56:03,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:56:03,382.382 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:56:03,535.535 INFO    ] No existing commands found in stream
[2026-10-18 18:56:08,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:56:08,566.566 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-18 18:56:11,073.073 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:56:11,075.075 INFO    ] Checking for system updates...
[2026-10-18 18:56:11,116.116 INFO    ] 200
[2026-10-18 18:56:11,119.119 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:56:11,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:56:11,180.180 INFO    ] No update needed
[2026-10-18 18:56:11,183.183 INFO    ] Checking for camera pi updates...
[2026-10-18 18:56:11,217.217 INFO    ] 200
[2026-10-18 18:56:11,220.220 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:56:11,261.261 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:56:21,277.277 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:56:21,316.316 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:56:21,327.327 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:56:21,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:56:21,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:56:21,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:56:23,382.382 INFO    ] ================================================
[2026-10-18 18:56:23,398.398 INFO    ] Launching Daemon at Sun Oct 18 18:56:23 IST 2026
[2026-10-18 18:56:23,409.409 INFO    ] ================================================
[2026-10-18 18:56:24,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:56:24
[2026-10-18 18:56:24,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:56:24,887.887 INFO    ] Initializing speech engine...
[2026-10-18 18:56:24,894.894 INFO    ] 2026-10-18 18:56:24
[2026-10-18 18:56:25,163.163 INFO    ] 2026-10-18 18:56:25
[2026-10-18 18:56:25,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:56:25,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:56:25,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:56:25,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:56:25,667.667 INFO    ] time= 18/10/2026 18:56:25
[2026-10-18 18:56:25,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:56:25,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:56:25,906.906 INFO    ] No existing commands found in stream
[2026-10-18 18:56:30,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:56:30,931.931 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-18 18:56:34,086.086 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 18:56:34,089.089 INFO    ] Checking for system updates...
[2026-10-18 18:56:34,124.124 INFO    ] 200
[2026-10-18 18:56:34,127.127 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:56:34,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:56:34,181.181 INFO    ] No update needed
[2026-10-18 18:56:34,184.184 INFO    ] Checking for camera pi updates...
[2026-10-18 18:56:34,216.216 INFO    ] 200
[2026-10-18 18:56:34,219.219 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:56:34,258.258 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:56:44,273.273 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:56:44,308.308 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:56:44,317.317 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:56:44,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:56:44,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:56:44,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:56:46,369.369 INFO    ] ================================================
[2026-10-18 18:56:46,385.385 INFO    ] Launching Daemon at Sun Oct 18 18:56:46 IST 2026
[2026-10-18 18:56:46,395.395 INFO    ] ================================================
[2026-10-18 18:56:47,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:56:47
[2026-10-18 18:56:47,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:56:47,953.953 INFO    ] Initializing speech engine...
[2026-10-18 18:56:47,966.966 INFO    ] 2026-10-18 18:56:47
[2026-10-18 18:56:48,246.246 INFO    ] 2026-10-18 18:56:48
[2026-10-18 18:56:48,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:56:48,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:56:48,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:56:48,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:56:48,775.775 INFO    ] time= 18/10/2026 18:56:48
[2026-10-18 18:56:48,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:56:48,811.811 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:56:48,932.932 INFO    ] No existing commands found in stream
[2026-10-18 18:56:53,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:56:53,964.964 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-18 18:56:56,065.065 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:56:56,068.068 INFO    ] Checking for system updates...
[2026-10-18 18:56:56,105.105 INFO    ] 200
[2026-10-18 18:56:56,108.108 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:56:56,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:56:56,170.170 INFO    ] No update needed
[2026-10-18 18:56:56,173.173 INFO    ] Checking for camera pi updates...
[2026-10-18 18:56:56,209.209 INFO    ] 200
[2026-10-18 18:56:56,211.211 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:56:56,256.256 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:57:06,272.272 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:57:06,308.308 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:57:06,318.318 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:57:06,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:57:06,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:57:06,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:57:08,370.370 INFO    ] ================================================
[2026-10-18 18:57:08,386.386 INFO    ] Launching Daemon at Sun Oct 18 18:57:08 IST 2026
[2026-10-18 18:57:08,398.398 INFO    ] ================================================
[2026-10-18 18:57:09,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:57:09
[2026-10-18 18:57:09,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:57:09,997.997 INFO    ] Initializing speech engine...
[2026-10-18 18:57:10,005.005 INFO    ] 2026-10-18 18:57:09
[2026-10-18 18:57:10,289.289 INFO    ] 2026-10-18 18:57:10
[2026-10-18 18:57:10,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:57:10,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:57:10,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:57:10,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:57:10,838.838 INFO    ] time= 18/10/2026 18:57:10
[2026-10-18 18:57:10,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:57:10,874.874 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:57:10,999.999 INFO    ] No existing commands found in stream
[2026-10-18 18:57:16,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:57:16,028.028 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-18 18:57:17,427.427 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:57:17,429.429 INFO    ] Checking for system updates...
[2026-10-18 18:57:17,469.469 INFO    ] 200
[2026-10-18 18:57:17,471.471 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:57:17,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:57:17,531.531 INFO    ] No update needed
[2026-10-18 18:57:17,533.533 INFO    ] Checking for camera pi updates...
[2026-10-18 18:57:17,567.567 INFO    ] 200
[2026-10-18 18:57:17,569.569 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:57:17,611.611 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:57:27,626.626 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:57:27,661.661 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:57:27,671.671 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:57:27,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:57:27,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:57:27,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:57:29,722.722 INFO    ] ================================================
[2026-10-18 18:57:29,738.738 INFO    ] Launching Daemon at Sun Oct 18 18:57:29 IST 2026
[2026-10-18 18:57:29,748.748 INFO    ] ================================================
[2026-10-18 18:57:30,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:57:30
[2026-10-18 18:57:30,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:57:31,166.166 INFO    ] Initializing speech engine...
[2026-10-18 18:57:31,175.175 INFO    ] 2026-10-18 18:57:31
[2026-10-18 18:57:31,423.423 INFO    ] 2026-10-18 18:57:31
[2026-10-18 18:57:31,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:57:31,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:57:31,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:57:31,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:57:31,901.901 INFO    ] time= 18/10/2026 18:57:31
[2026-10-18 18:57:31,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:57:31,991.991 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:57:32,150.150 INFO    ] No existing commands found in stream
[2026-10-18 18:57:37,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:57:37,202.202 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-18 18:57:38,521.521 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 18:57:38,523.523 INFO    ] Checking for system updates...
[2026-10-18 18:57:38,559.559 INFO    ] 200
[2026-10-18 18:57:38,561.561 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:57:38,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:57:38,622.622 INFO    ] No update needed
[2026-10-18 18:57:38,624.624 INFO    ] Checking for camera pi updates...
[2026-10-18 18:57:38,658.658 INFO    ] 200
[2026-10-18 18:57:38,660.660 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:57:38,700.700 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:57:48,716.716 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:57:48,750.750 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:57:48,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:57:48,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:57:48,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:57:48,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:57:50,813.813 INFO    ] ================================================
[2026-10-18 18:57:50,829.829 INFO    ] Launching Daemon at Sun Oct 18 18:57:50 IST 2026
[2026-10-18 18:57:50,840.840 INFO    ] ================================================
[2026-10-18 18:57:51,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:57:51
[2026-10-18 18:57:51,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:57:52,249.249 INFO    ] Initializing speech engine...
[2026-10-18 18:57:52,271.271 INFO    ] 2026-10-18 18:57:52
[2026-10-18 18:57:52,529.529 INFO    ] 2026-10-18 18:57:52
[2026-10-18 18:57:52,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:57:52,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:57:52,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:57:53,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:57:53,098.098 INFO    ] time= 18/10/2026 18:57:53
[2026-10-18 18:57:53,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:57:53,122.122 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:57:53,276.276 INFO    ] No existing commands found in stream
[2026-10-18 18:57:58,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:57:58,311.311 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-18 18:58:01,977.977 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:58:01,983.983 INFO    ] Checking for system updates...
[2026-10-18 18:58:02,047.047 INFO    ] 200
[2026-10-18 18:58:02,050.050 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:58:02,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:58:02,142.142 INFO    ] No update needed
[2026-10-18 18:58:02,146.146 INFO    ] Checking for camera pi updates...
[2026-10-18 18:58:02,191.191 INFO    ] 200
[2026-10-18 18:58:02,194.194 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:58:02,288.288 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:58:12,303.303 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:58:12,338.338 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:58:12,347.347 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:58:12,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:58:12,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:58:12,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:58:14,401.401 INFO    ] ================================================
[2026-10-18 18:58:14,416.416 INFO    ] Launching Daemon at Sun Oct 18 18:58:14 IST 2026
[2026-10-18 18:58:14,427.427 INFO    ] ================================================
[2026-10-18 18:58:15,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:58:14
[2026-10-18 18:58:15,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:58:15,840.840 INFO    ] Initializing speech engine...
[2026-10-18 18:58:15,849.849 INFO    ] 2026-10-18 18:58:15
[2026-10-18 18:58:16,144.144 INFO    ] 2026-10-18 18:58:16
[2026-10-18 18:58:16,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:58:16,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:58:16,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:58:16,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:58:16,642.642 INFO    ] time= 18/10/2026 18:58:16
[2026-10-18 18:58:16,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:58:16,740.740 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:58:16,904.904 INFO    ] No existing commands found in stream
[2026-10-18 18:58:21,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:58:21,928.928 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-18 18:58:23,850.850 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 18:58:23,852.852 INFO    ] Checking for system updates...
[2026-10-18 18:58:23,891.891 INFO    ] 200
[2026-10-18 18:58:23,894.894 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:58:23,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:58:23,954.954 INFO    ] No update needed
[2026-10-18 18:58:23,957.957 INFO    ] Checking for camera pi updates...
[2026-10-18 18:58:23,991.991 INFO    ] 200
[2026-10-18 18:58:23,993.993 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:58:24,034.034 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:58:34,045.045 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:58:34,080.080 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:58:34,090.090 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:58:34,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:58:34,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:58:34,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:58:36,143.143 INFO    ] ================================================
[2026-10-18 18:58:36,159.159 INFO    ] Launching Daemon at Sun Oct 18 18:58:36 IST 2026
[2026-10-18 18:58:36,170.170 INFO    ] ================================================
[2026-10-18 18:58:36,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:58:36
[2026-10-18 18:58:37,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:58:37,609.609 INFO    ] Initializing speech engine...
[2026-10-18 18:58:37,618.618 INFO    ] 2026-10-18 18:58:37
[2026-10-18 18:58:37,917.917 INFO    ] 2026-10-18 18:58:37
[2026-10-18 18:58:37,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:58:38,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:58:38,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:58:38,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:58:38,342.342 INFO    ] time= 18/10/2026 18:58:38
[2026-10-18 18:58:38,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:58:38,377.377 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:58:38,520.520 INFO    ] No existing commands found in stream
[2026-10-18 18:58:43,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:58:43,548.548 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-18 18:58:48,062.062 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 18:58:48,065.065 INFO    ] Checking for system updates...
[2026-10-18 18:58:48,102.102 INFO    ] 200
[2026-10-18 18:58:48,105.105 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:58:48,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:58:48,168.168 INFO    ] No update needed
[2026-10-18 18:58:48,171.171 INFO    ] Checking for camera pi updates...
[2026-10-18 18:58:48,206.206 INFO    ] 200
[2026-10-18 18:58:48,209.209 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:58:48,256.256 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:58:58,273.273 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:58:58,313.313 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:58:58,324.324 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:58:58,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:58:58,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:58:58,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:59:00,379.379 INFO    ] ================================================
[2026-10-18 18:59:00,395.395 INFO    ] Launching Daemon at Sun Oct 18 18:59:00 IST 2026
[2026-10-18 18:59:00,406.406 INFO    ] ================================================
[2026-10-18 18:59:01,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:59:01
[2026-10-18 18:59:01,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:59:02,351.351 INFO    ] Initializing speech engine...
[2026-10-18 18:59:02,371.371 INFO    ] 2026-10-18 18:59:02
[2026-10-18 18:59:02,711.711 INFO    ] 2026-10-18 18:59:02
[2026-10-18 18:59:02,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:59:03,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:59:03,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:59:03,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:59:03,261.261 INFO    ] time= 18/10/2026 18:59:03
[2026-10-18 18:59:03,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:59:03,297.297 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:59:03,448.448 INFO    ] No existing commands found in stream
[2026-10-18 18:59:08,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:59:08,482.482 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-18 18:59:12,193.193 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:59:12,196.196 INFO    ] Checking for system updates...
[2026-10-18 18:59:12,231.231 INFO    ] 200
[2026-10-18 18:59:12,233.233 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:59:12,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:59:12,288.288 INFO    ] No update needed
[2026-10-18 18:59:12,290.290 INFO    ] Checking for camera pi updates...
[2026-10-18 18:59:12,326.326 INFO    ] 200
[2026-10-18 18:59:12,328.328 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:59:12,373.373 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:59:22,389.389 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:59:22,424.424 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:59:22,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:59:22,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:59:22,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:59:22,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:59:24,488.488 INFO    ] ================================================
[2026-10-18 18:59:24,503.503 INFO    ] Launching Daemon at Sun Oct 18 18:59:24 IST 2026
[2026-10-18 18:59:24,515.515 INFO    ] ================================================
[2026-10-18 18:59:25,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:59:25
[2026-10-18 18:59:25,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:59:26,158.158 INFO    ] Initializing speech engine...
[2026-10-18 18:59:26,173.173 INFO    ] 2026-10-18 18:59:26
[2026-10-18 18:59:26,487.487 INFO    ] 2026-10-18 18:59:26
[2026-10-18 18:59:26,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:59:26,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:59:26,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:59:26,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:59:26,991.991 INFO    ] time= 18/10/2026 18:59:26
[2026-10-18 18:59:27,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:59:27,038.038 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:59:27,147.147 INFO    ] No existing commands found in stream
[2026-10-18 18:59:32,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:59:32,181.181 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-18 18:59:34,184.184 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 18:59:34,188.188 INFO    ] Checking for system updates...
[2026-10-18 18:59:34,224.224 INFO    ] 200
[2026-10-18 18:59:34,226.226 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:59:34,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 18:59:34,281.281 INFO    ] No update needed
[2026-10-18 18:59:34,283.283 INFO    ] Checking for camera pi updates...
[2026-10-18 18:59:34,318.318 INFO    ] 200
[2026-10-18 18:59:34,321.321 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:59:34,361.361 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 18:59:44,377.377 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73dae150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 18:59:44,411.411 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 18:59:44,421.421 INFO    ] Script finished. Safe exiting...
[2026-10-18 18:59:44,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 18:59:44,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 18:59:44,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 18:59:46,474.474 INFO    ] ================================================
[2026-10-18 18:59:46,489.489 INFO    ] Launching Daemon at Sun Oct 18 18:59:46 IST 2026
[2026-10-18 18:59:46,500.500 INFO    ] ================================================
[2026-10-18 18:59:47,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 18:59:47
[2026-10-18 18:59:47,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 18:59:47,906.906 INFO    ] Initializing speech engine...
[2026-10-18 18:59:47,915.915 INFO    ] 2026-10-18 18:59:47
[2026-10-18 18:59:48,212.212 INFO    ] 2026-10-18 18:59:48
[2026-10-18 18:59:48,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 18:59:48,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 18:59:48,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 18:59:48,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 18:59:48,638.638 INFO    ] time= 18/10/2026 18:59:48
[2026-10-18 18:59:48,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 18:59:48,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-18 18:59:48,836.836 INFO    ] No existing commands found in stream
[2026-10-18 18:59:53,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 18:59:53,869.869 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-18 18:59:55,852.852 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 18:59:55,855.855 INFO    ] Checking for system updates...
[2026-10-18 18:59:55,890.890 INFO    ] 200
[2026-10-18 18:59:55,893.893 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:59:55,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 18:59:55,947.947 INFO    ] No update needed
[2026-10-18 18:59:55,949.949 INFO    ] Checking for camera pi updates...
[2026-10-18 18:59:55,983.983 INFO    ] 200
[2026-10-18 18:59:55,986.986 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 18:59:56,026.026 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:00:06,041.041 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:00:06,080.080 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:00:06,089.089 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:00:06,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:00:06,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:00:06,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:00:08,142.142 INFO    ] ================================================
[2026-10-18 19:00:08,158.158 INFO    ] Launching Daemon at Sun Oct 18 19:00:08 IST 2026
[2026-10-18 19:00:08,169.169 INFO    ] ================================================
[2026-10-18 19:00:08,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:00:08
[2026-10-18 19:00:09,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:00:09,606.606 INFO    ] Initializing speech engine...
[2026-10-18 19:00:09,616.616 INFO    ] 2026-10-18 19:00:09
[2026-10-18 19:00:09,864.864 INFO    ] 2026-10-18 19:00:09
[2026-10-18 19:00:09,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:00:10,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:00:10,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:00:10,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:00:10,356.356 INFO    ] time= 18/10/2026 19:00:10
[2026-10-18 19:00:10,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:00:10,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:00:10,573.573 INFO    ] No existing commands found in stream
[2026-10-18 19:00:15,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:00:15,590.590 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-18 19:00:18,927.927 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 19:00:18,930.930 INFO    ] Checking for system updates...
[2026-10-18 19:00:18,969.969 INFO    ] 200
[2026-10-18 19:00:18,972.972 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:00:19,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:00:19,033.033 INFO    ] No update needed
[2026-10-18 19:00:19,036.036 INFO    ] Checking for camera pi updates...
[2026-10-18 19:00:19,070.070 INFO    ] 200
[2026-10-18 19:00:19,072.072 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:00:19,113.113 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:00:29,128.128 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:00:29,163.163 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:00:29,172.172 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:00:29,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:00:29,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:00:29,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:00:31,226.226 INFO    ] ================================================
[2026-10-18 19:00:31,243.243 INFO    ] Launching Daemon at Sun Oct 18 19:00:31 IST 2026
[2026-10-18 19:00:31,255.255 INFO    ] ================================================
[2026-10-18 19:00:31,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:00:31
[2026-10-18 19:00:32,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:00:32,813.813 INFO    ] Initializing speech engine...
[2026-10-18 19:00:32,825.825 INFO    ] 2026-10-18 19:00:32
[2026-10-18 19:00:33,139.139 INFO    ] 2026-10-18 19:00:33
[2026-10-18 19:00:33,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:00:33,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:00:33,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:00:33,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:00:33,665.665 INFO    ] time= 18/10/2026 19:00:33
[2026-10-18 19:00:33,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:00:33,702.702 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:00:33,833.833 INFO    ] No existing commands found in stream
[2026-10-18 19:00:38,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:00:38,867.867 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-18 19:00:39,568.568 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:00:39,571.571 INFO    ] Checking for system updates...
[2026-10-18 19:00:39,607.607 INFO    ] 200
[2026-10-18 19:00:39,610.610 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:00:39,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:00:39,664.664 INFO    ] No update needed
[2026-10-18 19:00:39,667.667 INFO    ] Checking for camera pi updates...
[2026-10-18 19:00:39,705.705 INFO    ] 200
[2026-10-18 19:00:39,707.707 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:00:39,748.748 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:00:49,762.762 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:00:49,796.796 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:00:49,806.806 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:00:49,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:00:49,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:00:49,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:00:51,859.859 INFO    ] ================================================
[2026-10-18 19:00:51,874.874 INFO    ] Launching Daemon at Sun Oct 18 19:00:51 IST 2026
[2026-10-18 19:00:51,886.886 INFO    ] ================================================
[2026-10-18 19:00:52,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:00:52
[2026-10-18 19:00:53,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:00:53,537.537 INFO    ] Initializing speech engine...
[2026-10-18 19:00:53,549.549 INFO    ] 2026-10-18 19:00:53
[2026-10-18 19:00:53,832.832 INFO    ] 2026-10-18 19:00:53
[2026-10-18 19:00:53,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:00:54,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:00:54,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:00:54,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:00:54,385.385 INFO    ] time= 18/10/2026 19:00:54
[2026-10-18 19:00:54,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:00:54,424.424 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:00:54,547.547 INFO    ] No existing commands found in stream
[2026-10-18 19:00:59,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:00:59,581.581 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-18 19:01:02,567.567 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:01:02,570.570 INFO    ] Checking for system updates...
[2026-10-18 19:01:02,618.618 INFO    ] 200
[2026-10-18 19:01:02,621.621 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:01:02,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:01:02,690.690 INFO    ] No update needed
[2026-10-18 19:01:02,693.693 INFO    ] Checking for camera pi updates...
[2026-10-18 19:01:02,727.727 INFO    ] 200
[2026-10-18 19:01:02,730.730 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:01:02,780.780 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:01:12,795.795 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:01:12,830.830 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:01:12,840.840 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:01:12,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:01:12,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:01:12,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:01:14,892.892 INFO    ] ================================================
[2026-10-18 19:01:14,907.907 INFO    ] Launching Daemon at Sun Oct 18 19:01:14 IST 2026
[2026-10-18 19:01:14,918.918 INFO    ] ================================================
[2026-10-18 19:01:15,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:01:15
[2026-10-18 19:01:16,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:01:16,339.339 INFO    ] Initializing speech engine...
[2026-10-18 19:01:16,358.358 INFO    ] 2026-10-18 19:01:16
[2026-10-18 19:01:16,604.604 INFO    ] 2026-10-18 19:01:16
[2026-10-18 19:01:16,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:01:16,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:01:16,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:01:17,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:01:17,161.161 INFO    ] time= 18/10/2026 19:01:17
[2026-10-18 19:01:17,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:01:17,207.207 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:01:17,320.320 INFO    ] No existing commands found in stream
[2026-10-18 19:01:22,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:01:22,352.352 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-18 19:01:24,631.631 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:01:24,634.634 INFO    ] Checking for system updates...
[2026-10-18 19:01:24,670.670 INFO    ] 200
[2026-10-18 19:01:24,672.672 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:01:24,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:01:24,727.727 INFO    ] No update needed
[2026-10-18 19:01:24,730.730 INFO    ] Checking for camera pi updates...
[2026-10-18 19:01:24,767.767 INFO    ] 200
[2026-10-18 19:01:24,769.769 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:01:24,814.814 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:01:34,828.828 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:01:34,863.863 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:01:34,873.873 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:01:34,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:01:34,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:01:34,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:01:36,926.926 INFO    ] ================================================
[2026-10-18 19:01:36,942.942 INFO    ] Launching Daemon at Sun Oct 18 19:01:36 IST 2026
[2026-10-18 19:01:36,953.953 INFO    ] ================================================
[2026-10-18 19:01:37,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:01:37
[2026-10-18 19:01:38,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:01:38,371.371 INFO    ] Initializing speech engine...
[2026-10-18 19:01:38,380.380 INFO    ] 2026-10-18 19:01:38
[2026-10-18 19:01:38,673.673 INFO    ] 2026-10-18 19:01:38
[2026-10-18 19:01:38,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:01:39,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:01:39,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:01:39,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:01:39,214.214 INFO    ] time= 18/10/2026 19:01:39
[2026-10-18 19:01:39,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:01:39,317.317 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:01:39,480.480 INFO    ] No existing commands found in stream
[2026-10-18 19:01:44,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:01:44,502.502 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-18 19:01:48,960.960 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 19:01:48,962.962 INFO    ] Checking for system updates...
[2026-10-18 19:01:49,000.000 INFO    ] 200
[2026-10-18 19:01:49,003.003 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:01:49,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:01:49,061.061 INFO    ] No update needed
[2026-10-18 19:01:49,064.064 INFO    ] Checking for camera pi updates...
[2026-10-18 19:01:49,103.103 INFO    ] 200
[2026-10-18 19:01:49,105.105 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:01:49,152.152 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:01:59,169.169 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:01:59,210.210 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:01:59,221.221 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:01:59,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:01:59,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:01:59,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:02:01,293.293 INFO    ] ================================================
[2026-10-18 19:02:01,323.323 INFO    ] Launching Daemon at Sun Oct 18 19:02:01 IST 2026
[2026-10-18 19:02:01,350.350 INFO    ] ================================================
[2026-10-18 19:02:02,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:02:02
[2026-10-18 19:02:02,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:02:02,966.966 INFO    ] Initializing speech engine...
[2026-10-18 19:02:02,981.981 INFO    ] 2026-10-18 19:02:02
[2026-10-18 19:02:03,303.303 INFO    ] 2026-10-18 19:02:03
[2026-10-18 19:02:03,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:02:03,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:02:03,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:02:03,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:02:03,832.832 INFO    ] time= 18/10/2026 19:02:03
[2026-10-18 19:02:03,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:02:03,897.897 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:02:04,029.029 INFO    ] No existing commands found in stream
[2026-10-18 19:02:09,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:02:09,048.048 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-18 19:02:12,197.197 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:02:12,200.200 INFO    ] Checking for system updates...
[2026-10-18 19:02:12,237.237 INFO    ] 200
[2026-10-18 19:02:12,240.240 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:02:12,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:02:12,297.297 INFO    ] No update needed
[2026-10-18 19:02:12,299.299 INFO    ] Checking for camera pi updates...
[2026-10-18 19:02:12,339.339 INFO    ] 200
[2026-10-18 19:02:12,342.342 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:02:12,388.388 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:02:22,405.405 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:02:22,445.445 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:02:22,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:02:22,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:02:22,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:02:22,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:02:24,513.513 INFO    ] ================================================
[2026-10-18 19:02:24,529.529 INFO    ] Launching Daemon at Sun Oct 18 19:02:24 IST 2026
[2026-10-18 19:02:24,541.541 INFO    ] ================================================
[2026-10-18 19:02:25,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:02:25
[2026-10-18 19:02:25,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:02:26,007.007 INFO    ] Initializing speech engine...
[2026-10-18 19:02:26,015.015 INFO    ] 2026-10-18 19:02:26
[2026-10-18 19:02:26,276.276 INFO    ] 2026-10-18 19:02:26
[2026-10-18 19:02:26,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:02:26,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:02:26,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:02:26,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:02:26,826.826 INFO    ] time= 18/10/2026 19:02:26
[2026-10-18 19:02:26,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:02:26,861.861 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:02:26,991.991 INFO    ] No existing commands found in stream
[2026-10-18 19:02:32,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:02:32,019.019 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-18 19:02:35,830.830 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:02:35,833.833 INFO    ] Checking for system updates...
[2026-10-18 19:02:35,869.869 INFO    ] 200
[2026-10-18 19:02:35,871.871 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:02:35,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:02:35,930.930 INFO    ] No update needed
[2026-10-18 19:02:35,932.932 INFO    ] Checking for camera pi updates...
[2026-10-18 19:02:35,974.974 INFO    ] 200
[2026-10-18 19:02:35,977.977 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:02:36,024.024 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:02:46,039.039 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:02:46,074.074 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:02:46,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:02:46,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:02:46,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:02:46,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:02:48,136.136 INFO    ] ================================================
[2026-10-18 19:02:48,152.152 INFO    ] Launching Daemon at Sun Oct 18 19:02:48 IST 2026
[2026-10-18 19:02:48,163.163 INFO    ] ================================================
[2026-10-18 19:02:48,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:02:48
[2026-10-18 19:02:49,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:02:49,616.616 INFO    ] Initializing speech engine...
[2026-10-18 19:02:49,629.629 INFO    ] 2026-10-18 19:02:49
[2026-10-18 19:02:49,898.898 INFO    ] 2026-10-18 19:02:49
[2026-10-18 19:02:49,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:02:50,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:02:50,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:02:50,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:02:50,321.321 INFO    ] time= 18/10/2026 19:02:50
[2026-10-18 19:02:50,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:02:50,385.385 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:02:50,523.523 INFO    ] No existing commands found in stream
[2026-10-18 19:02:55,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:02:55,561.561 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-18 19:02:59,316.316 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 19:02:59,319.319 INFO    ] Checking for system updates...
[2026-10-18 19:02:59,354.354 INFO    ] 200
[2026-10-18 19:02:59,357.357 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:02:59,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:02:59,419.419 INFO    ] No update needed
[2026-10-18 19:02:59,421.421 INFO    ] Checking for camera pi updates...
[2026-10-18 19:02:59,455.455 INFO    ] 200
[2026-10-18 19:02:59,458.458 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:02:59,501.501 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:03:09,515.515 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:03:09,556.556 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:03:09,567.567 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:03:09,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:03:09,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:03:09,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:03:11,625.625 INFO    ] ================================================
[2026-10-18 19:03:11,641.641 INFO    ] Launching Daemon at Sun Oct 18 19:03:11 IST 2026
[2026-10-18 19:03:11,652.652 INFO    ] ================================================
[2026-10-18 19:03:12,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:03:12
[2026-10-18 19:03:12,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:03:13,053.053 INFO    ] Initializing speech engine...
[2026-10-18 19:03:13,076.076 INFO    ] 2026-10-18 19:03:13
[2026-10-18 19:03:13,333.333 INFO    ] 2026-10-18 19:03:13
[2026-10-18 19:03:13,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:03:13,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:03:13,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:03:13,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:03:13,828.828 INFO    ] time= 18/10/2026 19:03:13
[2026-10-18 19:03:13,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:03:13,908.908 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:03:14,059.059 INFO    ] No existing commands found in stream
[2026-10-18 19:03:19,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:03:19,073.073 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-18 19:03:19,988.988 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 19:03:19,991.991 INFO    ] Checking for system updates...
[2026-10-18 19:03:20,027.027 INFO    ] 200
[2026-10-18 19:03:20,030.030 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:03:20,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:03:20,086.086 INFO    ] No update needed
[2026-10-18 19:03:20,088.088 INFO    ] Checking for camera pi updates...
[2026-10-18 19:03:20,126.126 INFO    ] 200
[2026-10-18 19:03:20,129.129 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:03:20,172.172 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:03:30,187.187 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:03:30,226.226 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:03:30,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:03:30,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:03:30,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:03:30,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:03:32,294.294 INFO    ] ================================================
[2026-10-18 19:03:32,312.312 INFO    ] Launching Daemon at Sun Oct 18 19:03:32 IST 2026
[2026-10-18 19:03:32,324.324 INFO    ] ================================================
[2026-10-18 19:03:32,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:03:32
[2026-10-18 19:03:33,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:03:33,812.812 INFO    ] Initializing speech engine...
[2026-10-18 19:03:33,822.822 INFO    ] 2026-10-18 19:03:33
[2026-10-18 19:03:34,076.076 INFO    ] 2026-10-18 19:03:34
[2026-10-18 19:03:34,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:03:34,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:03:34,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:03:34,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:03:34,628.628 INFO    ] time= 18/10/2026 19:03:34
[2026-10-18 19:03:34,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:03:34,650.650 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:03:34,776.776 INFO    ] No existing commands found in stream
[2026-10-18 19:03:39,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:03:39,793.793 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-18 19:03:40,599.599 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:03:40,602.602 INFO    ] Checking for system updates...
[2026-10-18 19:03:40,639.639 INFO    ] 200
[2026-10-18 19:03:40,642.642 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:03:40,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:03:40,699.699 INFO    ] No update needed
[2026-10-18 19:03:40,702.702 INFO    ] Checking for camera pi updates...
[2026-10-18 19:03:40,741.741 INFO    ] 200
[2026-10-18 19:03:40,744.744 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:03:40,785.785 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:03:50,802.802 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:03:50,842.842 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:03:50,853.853 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:03:50,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:03:50,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:03:50,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:03:52,910.910 INFO    ] ================================================
[2026-10-18 19:03:52,926.926 INFO    ] Launching Daemon at Sun Oct 18 19:03:52 IST 2026
[2026-10-18 19:03:52,938.938 INFO    ] ================================================
[2026-10-18 19:03:53,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:03:53
[2026-10-18 19:03:54,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:03:54,557.557 INFO    ] Initializing speech engine...
[2026-10-18 19:03:54,571.571 INFO    ] 2026-10-18 19:03:54
[2026-10-18 19:03:54,849.849 INFO    ] 2026-10-18 19:03:54
[2026-10-18 19:03:54,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:03:55,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:03:55,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:03:55,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:03:55,390.390 INFO    ] time= 18/10/2026 19:03:55
[2026-10-18 19:03:55,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:03:55,431.431 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:03:55,559.559 INFO    ] No existing commands found in stream
[2026-10-18 19:04:00,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:04:00,594.594 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-18 19:04:02,477.477 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:04:02,481.481 INFO    ] Checking for system updates...
[2026-10-18 19:04:02,538.538 INFO    ] 200
[2026-10-18 19:04:02,541.541 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:04:02,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:04:02,604.604 INFO    ] No update needed
[2026-10-18 19:04:02,606.606 INFO    ] Checking for camera pi updates...
[2026-10-18 19:04:02,647.647 INFO    ] 200
[2026-10-18 19:04:02,650.650 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:04:02,701.701 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:04:12,718.718 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:04:12,754.754 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:04:12,764.764 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:04:12,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:04:12,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:04:12,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:04:14,817.817 INFO    ] ================================================
[2026-10-18 19:04:14,833.833 INFO    ] Launching Daemon at Sun Oct 18 19:04:14 IST 2026
[2026-10-18 19:04:14,844.844 INFO    ] ================================================
[2026-10-18 19:04:15,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:04:15
[2026-10-18 19:04:16,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:04:16,428.428 INFO    ] Initializing speech engine...
[2026-10-18 19:04:16,441.441 INFO    ] 2026-10-18 19:04:16
[2026-10-18 19:04:16,716.716 INFO    ] 2026-10-18 19:04:16
[2026-10-18 19:04:16,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:04:17,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:04:17,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:04:17,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:04:17,250.250 INFO    ] time= 18/10/2026 19:04:17
[2026-10-18 19:04:17,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:04:17,301.301 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:04:17,410.410 INFO    ] No existing commands found in stream
[2026-10-18 19:04:22,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:04:22,443.443 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-18 19:04:24,541.541 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 19:04:24,543.543 INFO    ] Checking for system updates...
[2026-10-18 19:04:24,581.581 INFO    ] 200
[2026-10-18 19:04:24,583.583 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:04:24,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:04:24,640.640 INFO    ] No update needed
[2026-10-18 19:04:24,642.642 INFO    ] Checking for camera pi updates...
[2026-10-18 19:04:24,677.677 INFO    ] 200
[2026-10-18 19:04:24,680.680 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:04:24,721.721 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:04:34,736.736 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:04:34,771.771 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:04:34,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:04:34,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:04:34,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:04:34,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:04:36,835.835 INFO    ] ================================================
[2026-10-18 19:04:36,850.850 INFO    ] Launching Daemon at Sun Oct 18 19:04:36 IST 2026
[2026-10-18 19:04:36,862.862 INFO    ] ================================================
[2026-10-18 19:04:37,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:04:37
[2026-10-18 19:04:38,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:04:38,279.279 INFO    ] Initializing speech engine...
[2026-10-18 19:04:38,288.288 INFO    ] 2026-10-18 19:04:38
[2026-10-18 19:04:38,535.535 INFO    ] 2026-10-18 19:04:38
[2026-10-18 19:04:38,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:04:38,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:04:38,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:04:39,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:04:39,089.089 INFO    ] time= 18/10/2026 19:04:39
[2026-10-18 19:04:39,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:04:39,113.113 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:04:39,241.241 INFO    ] No existing commands found in stream
[2026-10-18 19:04:44,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:04:44,258.258 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-18 19:04:47,100.100 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 19:04:47,103.103 INFO    ] Checking for system updates...
[2026-10-18 19:04:47,140.140 INFO    ] 200
[2026-10-18 19:04:47,143.143 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:04:47,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:04:47,199.199 INFO    ] No update needed
[2026-10-18 19:04:47,202.202 INFO    ] Checking for camera pi updates...
[2026-10-18 19:04:47,239.239 INFO    ] 200
[2026-10-18 19:04:47,241.241 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:04:47,281.281 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:04:57,298.298 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:04:57,337.337 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:04:57,348.348 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:04:57,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:04:57,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:04:57,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:04:59,404.404 INFO    ] ================================================
[2026-10-18 19:04:59,419.419 INFO    ] Launching Daemon at Sun Oct 18 19:04:59 IST 2026
[2026-10-18 19:04:59,430.430 INFO    ] ================================================
[2026-10-18 19:04:59,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:04:59
[2026-10-18 19:05:00,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:05:00,847.847 INFO    ] Initializing speech engine...
[2026-10-18 19:05:00,863.863 INFO    ] 2026-10-18 19:05:00
[2026-10-18 19:05:01,123.123 INFO    ] 2026-10-18 19:05:01
[2026-10-18 19:05:01,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:05:01,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:05:01,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:05:01,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:05:01,719.719 INFO    ] time= 18/10/2026 19:05:01
[2026-10-18 19:05:01,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:05:01,737.737 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:05:01,823.823 INFO    ] No existing commands found in stream
[2026-10-18 19:05:06,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:05:06,848.848 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-18 19:05:08,739.739 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:05:08,741.741 INFO    ] Checking for system updates...
[2026-10-18 19:05:08,777.777 INFO    ] 200
[2026-10-18 19:05:08,779.779 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:05:08,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:05:08,833.833 INFO    ] No update needed
[2026-10-18 19:05:08,836.836 INFO    ] Checking for camera pi updates...
[2026-10-18 19:05:08,870.870 INFO    ] 200
[2026-10-18 19:05:08,872.872 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:05:08,917.917 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:05:18,933.933 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:05:18,968.968 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:05:18,978.978 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:05:18,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:05:18,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:05:18,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:05:21,030.030 INFO    ] ================================================
[2026-10-18 19:05:21,046.046 INFO    ] Launching Daemon at Sun Oct 18 19:05:21 IST 2026
[2026-10-18 19:05:21,057.057 INFO    ] ================================================
[2026-10-18 19:05:21,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:05:21
[2026-10-18 19:05:22,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:05:22,519.519 INFO    ] Initializing speech engine...
[2026-10-18 19:05:22,527.527 INFO    ] 2026-10-18 19:05:22
[2026-10-18 19:05:22,774.774 INFO    ] 2026-10-18 19:05:22
[2026-10-18 19:05:22,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:05:23,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:05:23,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:05:23,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:05:23,328.328 INFO    ] time= 18/10/2026 19:05:23
[2026-10-18 19:05:23,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:05:23,352.352 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:05:23,479.479 INFO    ] No existing commands found in stream
[2026-10-18 19:05:28,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:05:28,496.496 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-18 19:05:30,761.761 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 19:05:30,763.763 INFO    ] Checking for system updates...
[2026-10-18 19:05:30,805.805 INFO    ] 200
[2026-10-18 19:05:30,807.807 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:05:30,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:05:30,868.868 INFO    ] No update needed
[2026-10-18 19:05:30,870.870 INFO    ] Checking for camera pi updates...
[2026-10-18 19:05:30,906.906 INFO    ] 200
[2026-10-18 19:05:30,908.908 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:05:30,949.949 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:05:40,963.963 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:05:40,997.997 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:05:41,007.007 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:05:41,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:05:41,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:05:41,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:05:43,060.060 INFO    ] ================================================
[2026-10-18 19:05:43,077.077 INFO    ] Launching Daemon at Sun Oct 18 19:05:43 IST 2026
[2026-10-18 19:05:43,088.088 INFO    ] ================================================
[2026-10-18 19:05:43,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:05:43
[2026-10-18 19:05:44,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:05:44,615.615 INFO    ] Initializing speech engine...
[2026-10-18 19:05:44,624.624 INFO    ] 2026-10-18 19:05:44
[2026-10-18 19:05:44,881.881 INFO    ] 2026-10-18 19:05:44
[2026-10-18 19:05:44,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:05:45,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:05:45,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:05:45,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:05:45,420.420 INFO    ] time= 18/10/2026 19:05:45
[2026-10-18 19:05:45,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:05:45,444.444 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:05:45,575.575 INFO    ] No existing commands found in stream
[2026-10-18 19:05:50,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:05:50,592.592 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-18 19:05:51,448.448 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:05:51,451.451 INFO    ] Checking for system updates...
[2026-10-18 19:05:51,486.486 INFO    ] 200
[2026-10-18 19:05:51,489.489 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:05:51,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:05:51,548.548 INFO    ] No update needed
[2026-10-18 19:05:51,551.551 INFO    ] Checking for camera pi updates...
[2026-10-18 19:05:51,585.585 INFO    ] 200
[2026-10-18 19:05:51,587.587 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:05:51,627.627 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:06:01,643.643 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:06:01,684.684 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:06:01,697.697 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:06:01,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:06:01,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:06:01,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:06:03,759.759 INFO    ] ================================================
[2026-10-18 19:06:03,775.775 INFO    ] Launching Daemon at Sun Oct 18 19:06:03 IST 2026
[2026-10-18 19:06:03,787.787 INFO    ] ================================================
[2026-10-18 19:06:04,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:06:04
[2026-10-18 19:06:05,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:06:05,388.388 INFO    ] Initializing speech engine...
[2026-10-18 19:06:05,402.402 INFO    ] 2026-10-18 19:06:05
[2026-10-18 19:06:05,707.707 INFO    ] 2026-10-18 19:06:05
[2026-10-18 19:06:05,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:06:06,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:06:06,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:06:06,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:06:06,216.216 INFO    ] time= 18/10/2026 19:06:06
[2026-10-18 19:06:06,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:06:06,265.265 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:06:06,402.402 INFO    ] No existing commands found in stream
[2026-10-18 19:06:11,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:06:11,431.431 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-18 19:06:14,195.195 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 19:06:14,198.198 INFO    ] Checking for system updates...
[2026-10-18 19:06:14,236.236 INFO    ] 200
[2026-10-18 19:06:14,238.238 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:06:14,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:06:14,294.294 INFO    ] No update needed
[2026-10-18 19:06:14,296.296 INFO    ] Checking for camera pi updates...
[2026-10-18 19:06:14,332.332 INFO    ] 200
[2026-10-18 19:06:14,335.335 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:06:14,375.375 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:06:24,392.392 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:06:24,432.432 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:06:24,444.444 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:06:24,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:06:24,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:06:24,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:06:26,498.498 INFO    ] ================================================
[2026-10-18 19:06:26,514.514 INFO    ] Launching Daemon at Sun Oct 18 19:06:26 IST 2026
[2026-10-18 19:06:26,524.524 INFO    ] ================================================
[2026-10-18 19:06:27,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:06:27
[2026-10-18 19:06:27,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:06:27,942.942 INFO    ] Initializing speech engine...
[2026-10-18 19:06:27,950.950 INFO    ] 2026-10-18 19:06:27
[2026-10-18 19:06:28,197.197 INFO    ] 2026-10-18 19:06:28
[2026-10-18 19:06:28,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:06:28,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:06:28,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:06:28,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:06:28,752.752 INFO    ] time= 18/10/2026 19:06:28
[2026-10-18 19:06:28,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:06:28,776.776 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:06:28,907.907 INFO    ] No existing commands found in stream
[2026-10-18 19:06:33,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:06:33,924.924 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-18 19:06:35,418.418 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 19:06:35,421.421 INFO    ] Checking for system updates...
[2026-10-18 19:06:35,457.457 INFO    ] 200
[2026-10-18 19:06:35,459.459 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:06:35,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:06:35,520.520 INFO    ] No update needed
[2026-10-18 19:06:35,522.522 INFO    ] Checking for camera pi updates...
[2026-10-18 19:06:35,556.556 INFO    ] 200
[2026-10-18 19:06:35,559.559 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:06:35,603.603 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:06:45,618.618 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:06:45,654.654 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:06:45,664.664 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:06:45,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:06:45,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:06:45,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:06:47,717.717 INFO    ] ================================================
[2026-10-18 19:06:47,732.732 INFO    ] Launching Daemon at Sun Oct 18 19:06:47 IST 2026
[2026-10-18 19:06:47,742.742 INFO    ] ================================================
[2026-10-18 19:06:48,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:06:48
[2026-10-18 19:06:49,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:06:49,353.353 INFO    ] Initializing speech engine...
[2026-10-18 19:06:49,366.366 INFO    ] 2026-10-18 19:06:49
[2026-10-18 19:06:49,671.671 INFO    ] 2026-10-18 19:06:49
[2026-10-18 19:06:49,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:06:49,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:06:49,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:06:50,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:06:50,181.181 INFO    ] time= 18/10/2026 19:06:50
[2026-10-18 19:06:50,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:06:50,228.228 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:06:50,342.342 INFO    ] No existing commands found in stream
[2026-10-18 19:06:55,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:06:55,380.380 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-18 19:06:57,813.813 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:06:57,816.816 INFO    ] Checking for system updates...
[2026-10-18 19:06:57,855.855 INFO    ] 200
[2026-10-18 19:06:57,857.857 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:06:57,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:06:57,913.913 INFO    ] No update needed
[2026-10-18 19:06:57,916.916 INFO    ] Checking for camera pi updates...
[2026-10-18 19:06:57,949.949 INFO    ] 200
[2026-10-18 19:06:57,952.952 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:06:57,995.995 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:07:08,010.010 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:07:08,044.044 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:07:08,054.054 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:07:08,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:07:08,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:07:08,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:07:10,107.107 INFO    ] ================================================
[2026-10-18 19:07:10,122.122 INFO    ] Launching Daemon at Sun Oct 18 19:07:10 IST 2026
[2026-10-18 19:07:10,133.133 INFO    ] ================================================
[2026-10-18 19:07:10,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:07:10
[2026-10-18 19:07:11,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:07:11,538.538 INFO    ] Initializing speech engine...
[2026-10-18 19:07:11,544.544 INFO    ] 2026-10-18 19:07:11
[2026-10-18 19:07:11,840.840 INFO    ] 2026-10-18 19:07:11
[2026-10-18 19:07:11,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:07:12,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:07:12,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:07:12,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:07:12,372.372 INFO    ] time= 18/10/2026 19:07:12
[2026-10-18 19:07:12,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:07:12,469.469 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:07:12,599.599 INFO    ] No existing commands found in stream
[2026-10-18 19:07:17,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:07:17,619.619 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-18 19:07:22,400.400 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:07:22,403.403 INFO    ] Checking for system updates...
[2026-10-18 19:07:22,438.438 INFO    ] 200
[2026-10-18 19:07:22,441.441 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:07:22,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:07:22,494.494 INFO    ] No update needed
[2026-10-18 19:07:22,497.497 INFO    ] Checking for camera pi updates...
[2026-10-18 19:07:22,530.530 INFO    ] 200
[2026-10-18 19:07:22,533.533 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:07:22,573.573 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:07:32,588.588 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:07:32,627.627 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:07:32,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:07:32,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:07:32,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:07:32,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:07:34,689.689 INFO    ] ================================================
[2026-10-18 19:07:34,706.706 INFO    ] Launching Daemon at Sun Oct 18 19:07:34 IST 2026
[2026-10-18 19:07:34,717.717 INFO    ] ================================================
[2026-10-18 19:07:35,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:07:35
[2026-10-18 19:07:35,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:07:36,143.143 INFO    ] Initializing speech engine...
[2026-10-18 19:07:36,155.155 INFO    ] 2026-10-18 19:07:36
[2026-10-18 19:07:36,406.406 INFO    ] 2026-10-18 19:07:36
[2026-10-18 19:07:36,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:07:36,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:07:36,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:07:36,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:07:36,970.970 INFO    ] time= 18/10/2026 19:07:36
[2026-10-18 19:07:36,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:07:36,997.997 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:07:37,153.153 INFO    ] No existing commands found in stream
[2026-10-18 19:07:42,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:07:42,186.186 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-18 19:07:45,978.978 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:07:45,981.981 INFO    ] Checking for system updates...
[2026-10-18 19:07:46,018.018 INFO    ] 200
[2026-10-18 19:07:46,021.021 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:07:46,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:07:46,083.083 INFO    ] No update needed
[2026-10-18 19:07:46,086.086 INFO    ] Checking for camera pi updates...
[2026-10-18 19:07:46,121.121 INFO    ] 200
[2026-10-18 19:07:46,124.124 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:07:46,169.169 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:07:56,190.190 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:07:56,230.230 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:07:56,240.240 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:07:56,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:07:56,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:07:56,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:07:58,297.297 INFO    ] ================================================
[2026-10-18 19:07:58,312.312 INFO    ] Launching Daemon at Sun Oct 18 19:07:58 IST 2026
[2026-10-18 19:07:58,323.323 INFO    ] ================================================
[2026-10-18 19:07:58,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:07:58
[2026-10-18 19:07:59,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:07:59,836.836 INFO    ] Initializing speech engine...
[2026-10-18 19:07:59,842.842 INFO    ] 2026-10-18 19:07:59
[2026-10-18 19:08:00,152.152 INFO    ] 2026-10-18 19:08:00
[2026-10-18 19:08:00,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:08:00,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:08:00,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:08:00,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:08:00,657.657 INFO    ] time= 18/10/2026 19:08:00
[2026-10-18 19:08:00,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:08:00,692.692 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:08:00,815.815 INFO    ] No existing commands found in stream
[2026-10-18 19:08:05,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:08:05,842.842 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-18 19:08:08,695.695 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:08:08,698.698 INFO    ] Checking for system updates...
[2026-10-18 19:08:08,735.735 INFO    ] 200
[2026-10-18 19:08:08,737.737 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:08:08,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:08:08,799.799 INFO    ] No update needed
[2026-10-18 19:08:08,801.801 INFO    ] Checking for camera pi updates...
[2026-10-18 19:08:08,835.835 INFO    ] 200
[2026-10-18 19:08:08,837.837 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:08:08,877.877 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:08:18,892.892 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:08:18,927.927 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:08:18,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:08:18,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:08:18,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:08:18,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:08:20,988.988 INFO    ] ================================================
[2026-10-18 19:08:21,003.003 INFO    ] Launching Daemon at Sun Oct 18 19:08:20 IST 2026
[2026-10-18 19:08:21,014.014 INFO    ] ================================================
[2026-10-18 19:08:21,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:08:21
[2026-10-18 19:08:22,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:08:22,647.647 INFO    ] Initializing speech engine...
[2026-10-18 19:08:22,655.655 INFO    ] 2026-10-18 19:08:22
[2026-10-18 19:08:22,941.941 INFO    ] 2026-10-18 19:08:22
[2026-10-18 19:08:22,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:08:23,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:08:23,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:08:23,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:08:23,491.491 INFO    ] time= 18/10/2026 19:08:23
[2026-10-18 19:08:23,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:08:23,533.533 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:08:23,656.656 INFO    ] No existing commands found in stream
[2026-10-18 19:08:28,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:08:28,691.691 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-18 19:08:31,619.619 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 19:08:31,622.622 INFO    ] Checking for system updates...
[2026-10-18 19:08:31,662.662 INFO    ] 200
[2026-10-18 19:08:31,665.665 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:08:31,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:08:31,726.726 INFO    ] No update needed
[2026-10-18 19:08:31,728.728 INFO    ] Checking for camera pi updates...
[2026-10-18 19:08:31,765.765 INFO    ] 200
[2026-10-18 19:08:31,768.768 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:08:31,811.811 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:08:41,827.827 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:08:41,863.863 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:08:41,873.873 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:08:41,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:08:41,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:08:41,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:08:43,927.927 INFO    ] ================================================
[2026-10-18 19:08:43,943.943 INFO    ] Launching Daemon at Sun Oct 18 19:08:43 IST 2026
[2026-10-18 19:08:43,954.954 INFO    ] ================================================
[2026-10-18 19:08:44,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:08:44
[2026-10-18 19:08:45,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:08:45,489.489 INFO    ] Initializing speech engine...
[2026-10-18 19:08:45,495.495 INFO    ] 2026-10-18 19:08:45
[2026-10-18 19:08:45,757.757 INFO    ] 2026-10-18 19:08:45
[2026-10-18 19:08:45,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:08:46,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:08:46,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:08:46,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:08:46,303.303 INFO    ] time= 18/10/2026 19:08:46
[2026-10-18 19:08:46,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:08:46,328.328 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:08:46,456.456 INFO    ] No existing commands found in stream
[2026-10-18 19:08:51,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:08:51,471.471 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-18 19:08:52,102.102 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:08:52,105.105 INFO    ] Checking for system updates...
[2026-10-18 19:08:52,145.145 INFO    ] 200
[2026-10-18 19:08:52,148.148 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:08:52,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:08:52,210.210 INFO    ] No update needed
[2026-10-18 19:08:52,213.213 INFO    ] Checking for camera pi updates...
[2026-10-18 19:08:52,248.248 INFO    ] 200
[2026-10-18 19:08:52,251.251 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:08:52,296.296 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:09:02,312.312 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:09:02,361.361 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:09:02,374.374 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:09:02,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:09:02,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:09:02,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:09:04,442.442 INFO    ] ================================================
[2026-10-18 19:09:04,459.459 INFO    ] Launching Daemon at Sun Oct 18 19:09:04 IST 2026
[2026-10-18 19:09:04,471.471 INFO    ] ================================================
[2026-10-18 19:09:05,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:09:05
[2026-10-18 19:09:05,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:09:05,928.928 INFO    ] Initializing speech engine...
[2026-10-18 19:09:05,937.937 INFO    ] 2026-10-18 19:09:05
[2026-10-18 19:09:06,219.219 INFO    ] 2026-10-18 19:09:06
[2026-10-18 19:09:06,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:09:06,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:09:06,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:09:06,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:09:06,663.663 INFO    ] time= 18/10/2026 19:09:06
[2026-10-18 19:09:06,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:09:06,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:09:06,860.860 INFO    ] No existing commands found in stream
[2026-10-18 19:09:11,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:09:11,874.874 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-18 19:09:12,427.427 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 19:09:12,429.429 INFO    ] Checking for system updates...
[2026-10-18 19:09:12,465.465 INFO    ] 200
[2026-10-18 19:09:12,467.467 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:09:12,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:09:12,524.524 INFO    ] No update needed
[2026-10-18 19:09:12,527.527 INFO    ] Checking for camera pi updates...
[2026-10-18 19:09:12,561.561 INFO    ] 200
[2026-10-18 19:09:12,563.563 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:09:12,604.604 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:09:22,619.619 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:09:22,653.653 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:09:22,663.663 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:09:22,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:09:22,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:09:22,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:09:24,715.715 INFO    ] ================================================
[2026-10-18 19:09:24,731.731 INFO    ] Launching Daemon at Sun Oct 18 19:09:24 IST 2026
[2026-10-18 19:09:24,742.742 INFO    ] ================================================
[2026-10-18 19:09:25,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:09:25
[2026-10-18 19:09:25,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:09:26,136.136 INFO    ] Initializing speech engine...
[2026-10-18 19:09:26,145.145 INFO    ] 2026-10-18 19:09:26
[2026-10-18 19:09:26,439.439 INFO    ] 2026-10-18 19:09:26
[2026-10-18 19:09:26,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:09:26,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:09:26,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:09:26,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:09:26,949.949 INFO    ] time= 18/10/2026 19:09:26
[2026-10-18 19:09:27,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:09:27,063.063 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:09:27,214.214 INFO    ] No existing commands found in stream
[2026-10-18 19:09:32,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:09:32,243.243 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-18 19:09:35,303.303 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 19:09:35,306.306 INFO    ] Checking for system updates...
[2026-10-18 19:09:35,342.342 INFO    ] 200
[2026-10-18 19:09:35,344.344 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:09:35,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:09:35,406.406 INFO    ] No update needed
[2026-10-18 19:09:35,408.408 INFO    ] Checking for camera pi updates...
[2026-10-18 19:09:35,446.446 INFO    ] 200
[2026-10-18 19:09:35,449.449 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:09:35,494.494 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:09:45,511.511 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:09:45,550.550 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:09:45,561.561 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:09:45,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:09:45,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:09:45,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:09:47,617.617 INFO    ] ================================================
[2026-10-18 19:09:47,632.632 INFO    ] Launching Daemon at Sun Oct 18 19:09:47 IST 2026
[2026-10-18 19:09:47,643.643 INFO    ] ================================================
[2026-10-18 19:09:48,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:09:48
[2026-10-18 19:09:48,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:09:49,184.184 INFO    ] Initializing speech engine...
[2026-10-18 19:09:49,196.196 INFO    ] 2026-10-18 19:09:49
[2026-10-18 19:09:49,471.471 INFO    ] 2026-10-18 19:09:49
[2026-10-18 19:09:49,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:09:49,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:09:49,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:09:49,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:09:50,006.006 INFO    ] time= 18/10/2026 19:09:49
[2026-10-18 19:09:50,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:09:50,031.031 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:09:50,172.172 INFO    ] No existing commands found in stream
[2026-10-18 19:09:55,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:09:55,207.207 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-18 19:09:59,676.676 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:09:59,679.679 INFO    ] Checking for system updates...
[2026-10-18 19:09:59,716.716 INFO    ] 200
[2026-10-18 19:09:59,719.719 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:09:59,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:09:59,781.781 INFO    ] No update needed
[2026-10-18 19:09:59,784.784 INFO    ] Checking for camera pi updates...
[2026-10-18 19:09:59,823.823 INFO    ] 200
[2026-10-18 19:09:59,826.826 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:09:59,868.868 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:10:09,885.885 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:10:09,925.925 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:10:09,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:10:09,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:10:09,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:10:09,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:10:11,991.991 INFO    ] ================================================
[2026-10-18 19:10:12,007.007 INFO    ] Launching Daemon at Sun Oct 18 19:10:12 IST 2026
[2026-10-18 19:10:12,018.018 INFO    ] ================================================
[2026-10-18 19:10:12,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:10:12
[2026-10-18 19:10:13,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:10:13,584.584 INFO    ] Initializing speech engine...
[2026-10-18 19:10:13,593.593 INFO    ] 2026-10-18 19:10:13
[2026-10-18 19:10:13,888.888 INFO    ] 2026-10-18 19:10:13
[2026-10-18 19:10:13,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:10:14,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:10:14,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:10:14,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:10:14,319.319 INFO    ] time= 18/10/2026 19:10:14
[2026-10-18 19:10:14,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:10:14,374.374 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:10:14,513.513 INFO    ] No existing commands found in stream
[2026-10-18 19:10:19,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:10:19,547.547 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-18 19:10:23,653.653 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:10:23,655.655 INFO    ] Checking for system updates...
[2026-10-18 19:10:23,695.695 INFO    ] 200
[2026-10-18 19:10:23,697.697 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:10:23,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:10:23,753.753 INFO    ] No update needed
[2026-10-18 19:10:23,755.755 INFO    ] Checking for camera pi updates...
[2026-10-18 19:10:23,789.789 INFO    ] 200
[2026-10-18 19:10:23,791.791 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:10:23,832.832 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:10:33,844.844 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:10:33,879.879 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:10:33,889.889 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:10:33,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:10:33,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:10:33,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:10:35,941.941 INFO    ] ================================================
[2026-10-18 19:10:35,957.957 INFO    ] Launching Daemon at Sun Oct 18 19:10:35 IST 2026
[2026-10-18 19:10:35,968.968 INFO    ] ================================================
[2026-10-18 19:10:36,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:10:36
[2026-10-18 19:10:37,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:10:37,405.405 INFO    ] Initializing speech engine...
[2026-10-18 19:10:37,414.414 INFO    ] 2026-10-18 19:10:37
[2026-10-18 19:10:37,703.703 INFO    ] 2026-10-18 19:10:37
[2026-10-18 19:10:37,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:10:37,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:10:37,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:10:38,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:10:38,243.243 INFO    ] time= 18/10/2026 19:10:38
[2026-10-18 19:10:38,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:10:38,291.291 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:10:38,469.469 INFO    ] No existing commands found in stream
[2026-10-18 19:10:43,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:10:43,500.500 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-18 19:10:45,285.285 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 19:10:45,288.288 INFO    ] Checking for system updates...
[2026-10-18 19:10:45,326.326 INFO    ] 200
[2026-10-18 19:10:45,329.329 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:10:45,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:10:45,392.392 INFO    ] No update needed
[2026-10-18 19:10:45,395.395 INFO    ] Checking for camera pi updates...
[2026-10-18 19:10:45,433.433 INFO    ] 200
[2026-10-18 19:10:45,436.436 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:10:45,477.477 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:10:55,494.494 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:10:55,536.536 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:10:55,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:10:55,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:10:55,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:10:55,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:10:57,605.605 INFO    ] ================================================
[2026-10-18 19:10:57,621.621 INFO    ] Launching Daemon at Sun Oct 18 19:10:57 IST 2026
[2026-10-18 19:10:57,632.632 INFO    ] ================================================
[2026-10-18 19:10:58,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:10:58
[2026-10-18 19:10:58,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:10:59,065.065 INFO    ] Initializing speech engine...
[2026-10-18 19:10:59,072.072 INFO    ] 2026-10-18 19:10:59
[2026-10-18 19:10:59,333.333 INFO    ] 2026-10-18 19:10:59
[2026-10-18 19:10:59,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:10:59,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:10:59,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:10:59,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:10:59,878.878 INFO    ] time= 18/10/2026 19:10:59
[2026-10-18 19:10:59,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:10:59,900.900 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:11:00,036.036 INFO    ] No existing commands found in stream
[2026-10-18 19:11:05,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:11:05,057.057 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-18 19:11:08,905.905 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 19:11:08,908.908 INFO    ] Checking for system updates...
[2026-10-18 19:11:08,944.944 INFO    ] 200
[2026-10-18 19:11:08,947.947 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:11:08,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:11:09,001.001 INFO    ] No update needed
[2026-10-18 19:11:09,004.004 INFO    ] Checking for camera pi updates...
[2026-10-18 19:11:09,039.039 INFO    ] 200
[2026-10-18 19:11:09,041.041 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:11:09,081.081 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:11:19,096.096 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:11:19,131.131 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:11:19,140.140 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:11:19,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:11:19,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:11:19,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:11:21,193.193 INFO    ] ================================================
[2026-10-18 19:11:21,209.209 INFO    ] Launching Daemon at Sun Oct 18 19:11:21 IST 2026
[2026-10-18 19:11:21,219.219 INFO    ] ================================================
[2026-10-18 19:11:21,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:11:21
[2026-10-18 19:11:22,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:11:22,627.627 INFO    ] Initializing speech engine...
[2026-10-18 19:11:22,634.634 INFO    ] 2026-10-18 19:11:22
[2026-10-18 19:11:22,934.934 INFO    ] 2026-10-18 19:11:22
[2026-10-18 19:11:22,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:11:23,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:11:23,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:11:23,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:11:23,363.363 INFO    ] time= 18/10/2026 19:11:23
[2026-10-18 19:11:23,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:11:23,417.417 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:11:23,556.556 INFO    ] No existing commands found in stream
[2026-10-18 19:11:28,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:11:28,595.595 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-18 19:11:31,718.718 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:11:31,721.721 INFO    ] Checking for system updates...
[2026-10-18 19:11:31,771.771 INFO    ] 200
[2026-10-18 19:11:31,774.774 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:11:31,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:11:31,840.840 INFO    ] No update needed
[2026-10-18 19:11:31,843.843 INFO    ] Checking for camera pi updates...
[2026-10-18 19:11:31,884.884 INFO    ] 200
[2026-10-18 19:11:31,887.887 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:11:31,932.932 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:11:41,948.948 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:11:41,983.983 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:11:41,993.993 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:11:41,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:11:42,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:11:42,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:11:44,047.047 INFO    ] ================================================
[2026-10-18 19:11:44,062.062 INFO    ] Launching Daemon at Sun Oct 18 19:11:44 IST 2026
[2026-10-18 19:11:44,073.073 INFO    ] ================================================
[2026-10-18 19:11:44,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:11:44
[2026-10-18 19:11:45,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:11:45,498.498 INFO    ] Initializing speech engine...
[2026-10-18 19:11:45,509.509 INFO    ] 2026-10-18 19:11:45
[2026-10-18 19:11:45,757.757 INFO    ] 2026-10-18 19:11:45
[2026-10-18 19:11:45,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:11:46,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:11:46,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:11:46,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:11:46,227.227 INFO    ] time= 18/10/2026 19:11:46
[2026-10-18 19:11:46,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:11:46,325.325 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:11:46,422.422 INFO    ] No existing commands found in stream
[2026-10-18 19:11:51,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:11:51,437.437 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-18 19:11:54,869.869 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:11:54,872.872 INFO    ] Checking for system updates...
[2026-10-18 19:11:54,908.908 INFO    ] 200
[2026-10-18 19:11:54,911.911 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:11:54,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:11:54,965.965 INFO    ] No update needed
[2026-10-18 19:11:54,968.968 INFO    ] Checking for camera pi updates...
[2026-10-18 19:11:55,002.002 INFO    ] 200
[2026-10-18 19:11:55,004.004 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:11:55,044.044 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:12:05,059.059 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:12:05,094.094 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:12:05,104.104 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:12:05,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:12:05,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:12:05,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:12:07,156.156 INFO    ] ================================================
[2026-10-18 19:12:07,171.171 INFO    ] Launching Daemon at Sun Oct 18 19:12:07 IST 2026
[2026-10-18 19:12:07,182.182 INFO    ] ================================================
[2026-10-18 19:12:07,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:12:07
[2026-10-18 19:12:08,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:12:08,646.646 INFO    ] Initializing speech engine...
[2026-10-18 19:12:08,653.653 INFO    ] 2026-10-18 19:12:08
[2026-10-18 19:12:08,944.944 INFO    ] 2026-10-18 19:12:08
[2026-10-18 19:12:08,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:12:09,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:12:09,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:12:09,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:12:09,476.476 INFO    ] time= 18/10/2026 19:12:09
[2026-10-18 19:12:09,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:12:09,525.525 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:12:09,632.632 INFO    ] No existing commands found in stream
[2026-10-18 19:12:14,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:12:14,670.670 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-18 19:12:18,434.434 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:12:18,437.437 INFO    ] Checking for system updates...
[2026-10-18 19:12:18,474.474 INFO    ] 200
[2026-10-18 19:12:18,477.477 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:12:18,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:12:18,541.541 INFO    ] No update needed
[2026-10-18 19:12:18,544.544 INFO    ] Checking for camera pi updates...
[2026-10-18 19:12:18,579.579 INFO    ] 200
[2026-10-18 19:12:18,581.581 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:12:18,632.632 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:12:28,649.649 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:12:28,689.689 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:12:28,700.700 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:12:28,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:12:28,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:12:28,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:12:30,755.755 INFO    ] ================================================
[2026-10-18 19:12:30,771.771 INFO    ] Launching Daemon at Sun Oct 18 19:12:30 IST 2026
[2026-10-18 19:12:30,781.781 INFO    ] ================================================
[2026-10-18 19:12:31,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:12:31
[2026-10-18 19:12:32,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:12:32,296.296 INFO    ] Initializing speech engine...
[2026-10-18 19:12:32,303.303 INFO    ] 2026-10-18 19:12:32
[2026-10-18 19:12:32,574.574 INFO    ] 2026-10-18 19:12:32
[2026-10-18 19:12:32,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:12:32,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:12:32,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:12:33,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:12:33,098.098 INFO    ] time= 18/10/2026 19:12:33
[2026-10-18 19:12:33,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:12:33,164.164 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:12:33,315.315 INFO    ] No existing commands found in stream
[2026-10-18 19:12:38,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:12:38,337.337 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-18 19:12:42,230.230 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:12:42,233.233 INFO    ] Checking for system updates...
[2026-10-18 19:12:42,275.275 INFO    ] 200
[2026-10-18 19:12:42,277.277 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:12:42,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:12:42,333.333 INFO    ] No update needed
[2026-10-18 19:12:42,337.337 INFO    ] Checking for camera pi updates...
[2026-10-18 19:12:42,374.374 INFO    ] 200
[2026-10-18 19:12:42,377.377 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:12:42,417.417 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:12:52,432.432 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:12:52,467.467 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:12:52,477.477 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:12:52,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:12:52,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:12:52,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:12:54,530.530 INFO    ] ================================================
[2026-10-18 19:12:54,545.545 INFO    ] Launching Daemon at Sun Oct 18 19:12:54 IST 2026
[2026-10-18 19:12:54,555.555 INFO    ] ================================================
[2026-10-18 19:12:55,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:12:55
[2026-10-18 19:12:55,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:12:56,204.204 INFO    ] Initializing speech engine...
[2026-10-18 19:12:56,211.211 INFO    ] 2026-10-18 19:12:56
[2026-10-18 19:12:56,502.502 INFO    ] 2026-10-18 19:12:56
[2026-10-18 19:12:56,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:12:56,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:12:56,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:12:57,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:12:57,049.049 INFO    ] time= 18/10/2026 19:12:57
[2026-10-18 19:12:57,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:12:57,090.090 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:12:57,212.212 INFO    ] No existing commands found in stream
[2026-10-18 19:13:02,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:13:02,248.248 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-18 19:13:06,749.749 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:13:06,752.752 INFO    ] Checking for system updates...
[2026-10-18 19:13:06,790.790 INFO    ] 200
[2026-10-18 19:13:06,793.793 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:13:06,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:13:06,854.854 INFO    ] No update needed
[2026-10-18 19:13:06,857.857 INFO    ] Checking for camera pi updates...
[2026-10-18 19:13:06,892.892 INFO    ] 200
[2026-10-18 19:13:06,895.895 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:13:06,940.940 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:13:16,956.956 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:13:16,996.996 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:13:17,007.007 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:13:17,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:13:17,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:13:17,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:13:19,062.062 INFO    ] ================================================
[2026-10-18 19:13:19,078.078 INFO    ] Launching Daemon at Sun Oct 18 19:13:19 IST 2026
[2026-10-18 19:13:19,089.089 INFO    ] ================================================
[2026-10-18 19:13:19,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:13:19
[2026-10-18 19:13:20,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:13:20,498.498 INFO    ] Initializing speech engine...
[2026-10-18 19:13:20,503.503 INFO    ] 2026-10-18 19:13:20
[2026-10-18 19:13:20,782.782 INFO    ] 2026-10-18 19:13:20
[2026-10-18 19:13:20,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:13:21,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:13:21,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:13:21,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:13:21,356.356 INFO    ] time= 18/10/2026 19:13:21
[2026-10-18 19:13:21,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:13:21,379.379 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:13:21,523.523 INFO    ] No existing commands found in stream
[2026-10-18 19:13:26,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:13:26,552.552 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-18 19:13:31,040.040 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:13:31,043.043 INFO    ] Checking for system updates...
[2026-10-18 19:13:31,081.081 INFO    ] 200
[2026-10-18 19:13:31,084.084 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:13:31,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:13:31,138.138 INFO    ] No update needed
[2026-10-18 19:13:31,140.140 INFO    ] Checking for camera pi updates...
[2026-10-18 19:13:31,174.174 INFO    ] 200
[2026-10-18 19:13:31,177.177 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:13:31,217.217 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:13:41,233.233 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:13:41,268.268 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:13:41,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:13:41,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:13:41,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:13:41,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:13:43,331.331 INFO    ] ================================================
[2026-10-18 19:13:43,351.351 INFO    ] Launching Daemon at Sun Oct 18 19:13:43 IST 2026
[2026-10-18 19:13:43,362.362 INFO    ] ================================================
[2026-10-18 19:13:43,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:13:43
[2026-10-18 19:13:44,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:13:44,765.765 INFO    ] Initializing speech engine...
[2026-10-18 19:13:44,772.772 INFO    ] 2026-10-18 19:13:44
[2026-10-18 19:13:45,074.074 INFO    ] 2026-10-18 19:13:45
[2026-10-18 19:13:45,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:13:45,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:13:45,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:13:45,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:13:45,497.497 INFO    ] time= 18/10/2026 19:13:45
[2026-10-18 19:13:45,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:13:45,510.510 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:13:45,670.670 INFO    ] No existing commands found in stream
[2026-10-18 19:13:50,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:13:50,703.703 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-18 19:13:54,930.930 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 19:13:54,933.933 INFO    ] Checking for system updates...
[2026-10-18 19:13:54,969.969 INFO    ] 200
[2026-10-18 19:13:54,972.972 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:13:55,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:13:55,026.026 INFO    ] No update needed
[2026-10-18 19:13:55,028.028 INFO    ] Checking for camera pi updates...
[2026-10-18 19:13:55,066.066 INFO    ] 200
[2026-10-18 19:13:55,068.068 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:13:55,110.110 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:14:05,124.124 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:14:05,159.159 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:14:05,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:14:05,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:14:05,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:14:05,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:14:07,221.221 INFO    ] ================================================
[2026-10-18 19:14:07,237.237 INFO    ] Launching Daemon at Sun Oct 18 19:14:07 IST 2026
[2026-10-18 19:14:07,247.247 INFO    ] ================================================
[2026-10-18 19:14:07,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:14:07
[2026-10-18 19:14:08,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:14:08,737.737 INFO    ] Initializing speech engine...
[2026-10-18 19:14:08,747.747 INFO    ] 2026-10-18 19:14:08
[2026-10-18 19:14:09,024.024 INFO    ] 2026-10-18 19:14:09
[2026-10-18 19:14:09,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:14:09,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:14:09,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:14:09,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:14:09,566.566 INFO    ] time= 18/10/2026 19:14:09
[2026-10-18 19:14:09,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:14:09,610.610 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:14:09,743.743 INFO    ] No existing commands found in stream
[2026-10-18 19:14:14,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:14:14,765.765 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-18 19:14:18,318.318 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 19:14:18,321.321 INFO    ] Checking for system updates...
[2026-10-18 19:14:18,362.362 INFO    ] 200
[2026-10-18 19:14:18,365.365 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:14:18,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:14:18,422.422 INFO    ] No update needed
[2026-10-18 19:14:18,425.425 INFO    ] Checking for camera pi updates...
[2026-10-18 19:14:18,462.462 INFO    ] 200
[2026-10-18 19:14:18,465.465 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:14:18,512.512 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:14:28,529.529 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:14:28,569.569 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:14:28,580.580 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:14:28,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:14:28,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:14:28,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:14:30,636.636 INFO    ] ================================================
[2026-10-18 19:14:30,652.652 INFO    ] Launching Daemon at Sun Oct 18 19:14:30 IST 2026
[2026-10-18 19:14:30,662.662 INFO    ] ================================================
[2026-10-18 19:14:31,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:14:31
[2026-10-18 19:14:31,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:14:32,132.132 INFO    ] Initializing speech engine...
[2026-10-18 19:14:32,147.147 INFO    ] 2026-10-18 19:14:32
[2026-10-18 19:14:32,413.413 INFO    ] 2026-10-18 19:14:32
[2026-10-18 19:14:32,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:14:32,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:14:32,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:14:32,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:14:32,843.843 INFO    ] time= 18/10/2026 19:14:32
[2026-10-18 19:14:32,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:14:32,912.912 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:14:33,015.015 INFO    ] No existing commands found in stream
[2026-10-18 19:14:38,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:14:38,028.028 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-18 19:14:42,177.177 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:14:42,180.180 INFO    ] Checking for system updates...
[2026-10-18 19:14:42,216.216 INFO    ] 200
[2026-10-18 19:14:42,218.218 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:14:42,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:14:42,272.272 INFO    ] No update needed
[2026-10-18 19:14:42,274.274 INFO    ] Checking for camera pi updates...
[2026-10-18 19:14:42,311.311 INFO    ] 200
[2026-10-18 19:14:42,314.314 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:14:42,353.353 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:14:52,368.368 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:14:52,403.403 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:14:52,412.412 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:14:52,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:14:52,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:14:52,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:14:54,464.464 INFO    ] ================================================
[2026-10-18 19:14:54,480.480 INFO    ] Launching Daemon at Sun Oct 18 19:14:54 IST 2026
[2026-10-18 19:14:54,490.490 INFO    ] ================================================
[2026-10-18 19:14:55,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:14:55
[2026-10-18 19:14:55,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:14:55,898.898 INFO    ] Initializing speech engine...
[2026-10-18 19:14:55,907.907 INFO    ] 2026-10-18 19:14:55
[2026-10-18 19:14:56,202.202 INFO    ] 2026-10-18 19:14:56
[2026-10-18 19:14:56,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:14:56,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:14:56,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:14:56,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:14:56,707.707 INFO    ] time= 18/10/2026 19:14:56
[2026-10-18 19:14:56,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:14:56,811.811 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:14:56,976.976 INFO    ] No existing commands found in stream
[2026-10-18 19:15:01,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:15:01,998.998 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-18 19:15:03,329.329 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:15:03,332.332 INFO    ] Checking for system updates...
[2026-10-18 19:15:03,376.376 INFO    ] 200
[2026-10-18 19:15:03,382.382 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:15:03,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:15:03,439.439 INFO    ] No update needed
[2026-10-18 19:15:03,442.442 INFO    ] Checking for camera pi updates...
[2026-10-18 19:15:03,481.481 INFO    ] 200
[2026-10-18 19:15:03,486.486 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:15:03,539.539 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:15:13,554.554 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:15:13,594.594 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:15:13,605.605 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:15:13,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:15:13,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:15:13,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:15:15,661.661 INFO    ] ================================================
[2026-10-18 19:15:15,676.676 INFO    ] Launching Daemon at Sun Oct 18 19:15:15 IST 2026
[2026-10-18 19:15:15,687.687 INFO    ] ================================================
[2026-10-18 19:15:16,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:15:16
[2026-10-18 19:15:16,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:15:17,120.120 INFO    ] Initializing speech engine...
[2026-10-18 19:15:17,136.136 INFO    ] 2026-10-18 19:15:17
[2026-10-18 19:15:17,423.423 INFO    ] 2026-10-18 19:15:17
[2026-10-18 19:15:17,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:15:17,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:15:17,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:15:17,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:15:17,851.851 INFO    ] time= 18/10/2026 19:15:17
[2026-10-18 19:15:17,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:15:17,928.928 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:15:18,065.065 INFO    ] No existing commands found in stream
[2026-10-18 19:15:23,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:15:23,087.087 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-18 19:15:27,171.171 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:15:27,174.174 INFO    ] Checking for system updates...
[2026-10-18 19:15:27,210.210 INFO    ] 200
[2026-10-18 19:15:27,213.213 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:15:27,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:15:27,268.268 INFO    ] No update needed
[2026-10-18 19:15:27,270.270 INFO    ] Checking for camera pi updates...
[2026-10-18 19:15:27,308.308 INFO    ] 200
[2026-10-18 19:15:27,311.311 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:15:27,351.351 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:15:37,365.365 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:15:37,401.401 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:15:37,411.411 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:15:37,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:15:37,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:15:37,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:15:39,464.464 INFO    ] ================================================
[2026-10-18 19:15:39,480.480 INFO    ] Launching Daemon at Sun Oct 18 19:15:39 IST 2026
[2026-10-18 19:15:39,493.493 INFO    ] ================================================
[2026-10-18 19:15:40,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:15:40
[2026-10-18 19:15:40,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:15:41,133.133 INFO    ] Initializing speech engine...
[2026-10-18 19:15:41,141.141 INFO    ] 2026-10-18 19:15:41
[2026-10-18 19:15:41,441.441 INFO    ] 2026-10-18 19:15:41
[2026-10-18 19:15:41,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:15:41,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:15:41,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:15:41,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:15:41,966.966 INFO    ] time= 18/10/2026 19:15:41
[2026-10-18 19:15:41,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:15:42,005.005 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:15:42,121.121 INFO    ] No existing commands found in stream
[2026-10-18 19:15:47,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:15:47,160.160 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-18 19:15:50,718.718 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:15:50,721.721 INFO    ] Checking for system updates...
[2026-10-18 19:15:50,757.757 INFO    ] 200
[2026-10-18 19:15:50,759.759 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:15:50,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:15:50,814.814 INFO    ] No update needed
[2026-10-18 19:15:50,816.816 INFO    ] Checking for camera pi updates...
[2026-10-18 19:15:50,850.850 INFO    ] 200
[2026-10-18 19:15:50,852.852 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:15:50,893.893 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:16:00,908.908 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:16:00,943.943 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:16:00,952.952 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:16:00,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:16:00,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:16:00,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:16:03,020.020 INFO    ] ================================================
[2026-10-18 19:16:03,042.042 INFO    ] Launching Daemon at Sun Oct 18 19:16:03 IST 2026
[2026-10-18 19:16:03,055.055 INFO    ] ================================================
[2026-10-18 19:16:03,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:16:03
[2026-10-18 19:16:04,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:16:04,652.652 INFO    ] Initializing speech engine...
[2026-10-18 19:16:04,659.659 INFO    ] 2026-10-18 19:16:04
[2026-10-18 19:16:04,905.905 INFO    ] 2026-10-18 19:16:04
[2026-10-18 19:16:04,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:16:05,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:16:05,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:16:05,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:16:05,457.457 INFO    ] time= 18/10/2026 19:16:05
[2026-10-18 19:16:05,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:16:05,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:16:05,609.609 INFO    ] No existing commands found in stream
[2026-10-18 19:16:10,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:16:10,627.627 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-18 19:16:14,226.226 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:16:14,229.229 INFO    ] Checking for system updates...
[2026-10-18 19:16:14,264.264 INFO    ] 200
[2026-10-18 19:16:14,267.267 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:16:14,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:16:14,322.322 INFO    ] No update needed
[2026-10-18 19:16:14,324.324 INFO    ] Checking for camera pi updates...
[2026-10-18 19:16:14,357.357 INFO    ] 200
[2026-10-18 19:16:14,360.360 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:16:14,402.402 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:16:24,417.417 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:16:24,451.451 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:16:24,461.461 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:16:24,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:16:24,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:16:24,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:16:26,515.515 INFO    ] ================================================
[2026-10-18 19:16:26,530.530 INFO    ] Launching Daemon at Sun Oct 18 19:16:26 IST 2026
[2026-10-18 19:16:26,541.541 INFO    ] ================================================
[2026-10-18 19:16:27,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:16:27
[2026-10-18 19:16:27,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:16:28,011.011 INFO    ] Initializing speech engine...
[2026-10-18 19:16:28,018.018 INFO    ] 2026-10-18 19:16:28
[2026-10-18 19:16:28,278.278 INFO    ] 2026-10-18 19:16:28
[2026-10-18 19:16:28,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:16:28,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:16:28,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:16:28,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:16:28,823.823 INFO    ] time= 18/10/2026 19:16:28
[2026-10-18 19:16:28,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:16:28,851.851 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:16:29,002.002 INFO    ] No existing commands found in stream
[2026-10-18 19:16:34,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:16:34,036.036 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-18 19:16:38,433.433 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 19:16:38,436.436 INFO    ] Checking for system updates...
[2026-10-18 19:16:38,472.472 INFO    ] 200
[2026-10-18 19:16:38,475.475 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:16:38,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:16:38,536.536 INFO    ] No update needed
[2026-10-18 19:16:38,539.539 INFO    ] Checking for camera pi updates...
[2026-10-18 19:16:38,576.576 INFO    ] 200
[2026-10-18 19:16:38,578.578 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:16:38,618.618 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:16:48,633.633 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:16:48,669.669 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:16:48,679.679 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:16:48,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:16:48,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:16:48,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:16:50,732.732 INFO    ] ================================================
[2026-10-18 19:16:50,747.747 INFO    ] Launching Daemon at Sun Oct 18 19:16:50 IST 2026
[2026-10-18 19:16:50,758.758 INFO    ] ================================================
[2026-10-18 19:16:51,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:16:51
[2026-10-18 19:16:51,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:16:52,157.157 INFO    ] Initializing speech engine...
[2026-10-18 19:16:52,178.178 INFO    ] 2026-10-18 19:16:52
[2026-10-18 19:16:52,437.437 INFO    ] 2026-10-18 19:16:52
[2026-10-18 19:16:52,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:16:52,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:16:52,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:16:52,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:16:52,893.893 INFO    ] time= 18/10/2026 19:16:52
[2026-10-18 19:16:52,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:16:53,007.007 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:16:53,169.169 INFO    ] No existing commands found in stream
[2026-10-18 19:16:58,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:16:58,199.199 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-18 19:17:00,381.381 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 19:17:00,384.384 INFO    ] Checking for system updates...
[2026-10-18 19:17:00,420.420 INFO    ] 200
[2026-10-18 19:17:00,422.422 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:17:00,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:17:00,651.651 INFO    ] No update needed
[2026-10-18 19:17:00,653.653 INFO    ] Checking for camera pi updates...
[2026-10-18 19:17:00,687.687 INFO    ] 200
[2026-10-18 19:17:00,690.690 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:17:00,730.730 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:17:10,745.745 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:17:10,780.780 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:17:10,790.790 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:17:10,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:17:10,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:17:10,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:17:12,844.844 INFO    ] ================================================
[2026-10-18 19:17:12,860.860 INFO    ] Launching Daemon at Sun Oct 18 19:17:12 IST 2026
[2026-10-18 19:17:12,870.870 INFO    ] ================================================
[2026-10-18 19:17:13,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:17:13
[2026-10-18 19:17:14,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:17:14,311.311 INFO    ] Initializing speech engine...
[2026-10-18 19:17:14,318.318 INFO    ] 2026-10-18 19:17:14
[2026-10-18 19:17:14,601.601 INFO    ] 2026-10-18 19:17:14
[2026-10-18 19:17:14,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:17:14,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:17:14,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:17:15,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:17:15,138.138 INFO    ] time= 18/10/2026 19:17:15
[2026-10-18 19:17:15,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:17:15,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:17:15,333.333 INFO    ] No existing commands found in stream
[2026-10-18 19:17:20,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:17:20,367.367 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-18 19:17:22,863.863 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 19:17:22,866.866 INFO    ] Checking for system updates...
[2026-10-18 19:17:22,902.902 INFO    ] 200
[2026-10-18 19:17:22,904.904 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:17:22,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:17:22,963.963 INFO    ] No update needed
[2026-10-18 19:17:22,966.966 INFO    ] Checking for camera pi updates...
[2026-10-18 19:17:22,999.999 INFO    ] 200
[2026-10-18 19:17:23,002.002 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:17:23,049.049 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:17:33,062.062 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:17:33,098.098 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:17:33,110.110 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:17:33,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:17:33,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:17:33,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:17:35,168.168 INFO    ] ================================================
[2026-10-18 19:17:35,184.184 INFO    ] Launching Daemon at Sun Oct 18 19:17:35 IST 2026
[2026-10-18 19:17:35,196.196 INFO    ] ================================================
[2026-10-18 19:17:35,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:17:35
[2026-10-18 19:17:36,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:17:36,619.619 INFO    ] Initializing speech engine...
[2026-10-18 19:17:36,628.628 INFO    ] 2026-10-18 19:17:36
[2026-10-18 19:17:36,888.888 INFO    ] 2026-10-18 19:17:36
[2026-10-18 19:17:36,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:17:37,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:17:37,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:17:37,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:17:37,374.374 INFO    ] time= 18/10/2026 19:17:37
[2026-10-18 19:17:37,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:17:37,441.441 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:17:37,574.574 INFO    ] No existing commands found in stream
[2026-10-18 19:17:42,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:17:42,601.601 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-18 19:17:46,324.324 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:17:46,327.327 INFO    ] Checking for system updates...
[2026-10-18 19:17:46,363.363 INFO    ] 200
[2026-10-18 19:17:46,366.366 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:17:46,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:17:46,427.427 INFO    ] No update needed
[2026-10-18 19:17:46,430.430 INFO    ] Checking for camera pi updates...
[2026-10-18 19:17:46,464.464 INFO    ] 200
[2026-10-18 19:17:46,467.467 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:17:46,511.511 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:17:56,527.527 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:17:56,566.566 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:17:56,577.577 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:17:56,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:17:56,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:17:56,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:17:58,631.631 INFO    ] ================================================
[2026-10-18 19:17:58,647.647 INFO    ] Launching Daemon at Sun Oct 18 19:17:58 IST 2026
[2026-10-18 19:17:58,659.659 INFO    ] ================================================
[2026-10-18 19:17:59,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:17:59
[2026-10-18 19:17:59,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:18:00,150.150 INFO    ] Initializing speech engine...
[2026-10-18 19:18:00,158.158 INFO    ] 2026-10-18 19:18:00
[2026-10-18 19:18:00,461.461 INFO    ] 2026-10-18 19:18:00
[2026-10-18 19:18:00,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:18:00,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:18:00,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:18:00,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:18:00,959.959 INFO    ] time= 18/10/2026 19:18:00
[2026-10-18 19:18:00,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:18:00,986.986 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:18:01,109.109 INFO    ] No existing commands found in stream
[2026-10-18 19:18:06,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:18:06,128.128 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-18 19:18:07,816.816 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:18:07,818.818 INFO    ] Checking for system updates...
[2026-10-18 19:18:07,854.854 INFO    ] 200
[2026-10-18 19:18:07,857.857 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:18:07,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:18:07,912.912 INFO    ] No update needed
[2026-10-18 19:18:07,914.914 INFO    ] Checking for camera pi updates...
[2026-10-18 19:18:07,950.950 INFO    ] 200
[2026-10-18 19:18:07,953.953 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:18:07,996.996 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:18:18,009.009 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:18:18,044.044 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:18:18,054.054 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:18:18,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:18:18,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:18:18,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:18:20,106.106 INFO    ] ================================================
[2026-10-18 19:18:20,122.122 INFO    ] Launching Daemon at Sun Oct 18 19:18:20 IST 2026
[2026-10-18 19:18:20,134.134 INFO    ] ================================================
[2026-10-18 19:18:20,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:18:20
[2026-10-18 19:18:21,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:18:21,562.562 INFO    ] Initializing speech engine...
[2026-10-18 19:18:21,571.571 INFO    ] 2026-10-18 19:18:21
[2026-10-18 19:18:21,830.830 INFO    ] 2026-10-18 19:18:21
[2026-10-18 19:18:21,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:18:22,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:18:22,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:18:22,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:18:22,373.373 INFO    ] time= 18/10/2026 19:18:22
[2026-10-18 19:18:22,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:18:22,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:18:22,528.528 INFO    ] No existing commands found in stream
[2026-10-18 19:18:27,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:18:27,542.542 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-18 19:18:30,646.646 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:18:30,649.649 INFO    ] Checking for system updates...
[2026-10-18 19:18:30,685.685 INFO    ] 200
[2026-10-18 19:18:30,688.688 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:18:30,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:18:30,747.747 INFO    ] No update needed
[2026-10-18 19:18:30,750.750 INFO    ] Checking for camera pi updates...
[2026-10-18 19:18:30,788.788 INFO    ] 200
[2026-10-18 19:18:30,791.791 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:18:30,835.835 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:18:40,851.851 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:18:40,889.889 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:18:40,900.900 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:18:40,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:18:40,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:18:40,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:18:42,962.962 INFO    ] ================================================
[2026-10-18 19:18:42,978.978 INFO    ] Launching Daemon at Sun Oct 18 19:18:42 IST 2026
[2026-10-18 19:18:42,989.989 INFO    ] ================================================
[2026-10-18 19:18:43,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:18:43
[2026-10-18 19:18:44,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:18:44,416.416 INFO    ] Initializing speech engine...
[2026-10-18 19:18:44,425.425 INFO    ] 2026-10-18 19:18:44
[2026-10-18 19:18:44,674.674 INFO    ] 2026-10-18 19:18:44
[2026-10-18 19:18:44,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:18:44,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:18:44,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:18:45,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:18:45,146.146 INFO    ] time= 18/10/2026 19:18:45
[2026-10-18 19:18:45,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:18:45,239.239 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:18:45,326.326 INFO    ] No existing commands found in stream
[2026-10-18 19:18:50,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:18:50,341.341 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-18 19:18:52,979.979 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 19:18:52,982.982 INFO    ] Checking for system updates...
[2026-10-18 19:18:53,019.019 INFO    ] 200
[2026-10-18 19:18:53,022.022 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:18:53,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:18:53,075.075 INFO    ] No update needed
[2026-10-18 19:18:53,078.078 INFO    ] Checking for camera pi updates...
[2026-10-18 19:18:53,116.116 INFO    ] 200
[2026-10-18 19:18:53,118.118 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:18:53,159.159 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:19:03,174.174 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:19:03,215.215 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:19:03,226.226 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:19:03,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:19:03,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:19:03,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:19:05,283.283 INFO    ] ================================================
[2026-10-18 19:19:05,298.298 INFO    ] Launching Daemon at Sun Oct 18 19:19:05 IST 2026
[2026-10-18 19:19:05,310.310 INFO    ] ================================================
[2026-10-18 19:19:05,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:19:05
[2026-10-18 19:19:06,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:19:06,809.809 INFO    ] Initializing speech engine...
[2026-10-18 19:19:06,818.818 INFO    ] 2026-10-18 19:19:06
[2026-10-18 19:19:07,085.085 INFO    ] 2026-10-18 19:19:07
[2026-10-18 19:19:07,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:19:07,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:19:07,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:19:07,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:19:07,619.619 INFO    ] time= 18/10/2026 19:19:07
[2026-10-18 19:19:07,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:19:07,686.686 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:19:07,838.838 INFO    ] No existing commands found in stream
[2026-10-18 19:19:12,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:19:12,864.864 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-18 19:19:15,178.178 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:19:15,181.181 INFO    ] Checking for system updates...
[2026-10-18 19:19:15,218.218 INFO    ] 200
[2026-10-18 19:19:15,221.221 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:19:15,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:19:15,277.277 INFO    ] No update needed
[2026-10-18 19:19:15,279.279 INFO    ] Checking for camera pi updates...
[2026-10-18 19:19:15,317.317 INFO    ] 200
[2026-10-18 19:19:15,320.320 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:19:15,361.361 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:19:25,378.378 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:19:25,418.418 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:19:25,429.429 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:19:25,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:19:25,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:19:25,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:19:27,486.486 INFO    ] ================================================
[2026-10-18 19:19:27,502.502 INFO    ] Launching Daemon at Sun Oct 18 19:19:27 IST 2026
[2026-10-18 19:19:27,513.513 INFO    ] ================================================
[2026-10-18 19:19:28,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:19:28
[2026-10-18 19:19:28,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:19:28,945.945 INFO    ] Initializing speech engine...
[2026-10-18 19:19:28,954.954 INFO    ] 2026-10-18 19:19:28
[2026-10-18 19:19:29,208.208 INFO    ] 2026-10-18 19:19:29
[2026-10-18 19:19:29,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:19:29,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:19:29,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:19:29,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:19:29,755.755 INFO    ] time= 18/10/2026 19:19:29
[2026-10-18 19:19:29,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:19:29,780.780 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:19:29,908.908 INFO    ] No existing commands found in stream
[2026-10-18 19:19:34,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:19:34,927.927 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-18 19:19:38,053.053 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:19:38,056.056 INFO    ] Checking for system updates...
[2026-10-18 19:19:38,114.114 INFO    ] 200
[2026-10-18 19:19:38,116.116 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 19:19:38,120.120 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-18 19:19:38,122.122 INFO    ] Checking for camera pi updates...
[2026-10-18 19:19:38,176.176 INFO    ] 200
[2026-10-18 19:19:38,179.179 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 19:19:38,182.182 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-18 19:19:38,185.185 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:19:38,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:19:38,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:19:38,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:19:40,240.240 INFO    ] ================================================
[2026-10-18 19:19:40,256.256 INFO    ] Launching Daemon at Sun Oct 18 19:19:40 IST 2026
[2026-10-18 19:19:40,267.267 INFO    ] ================================================
[2026-10-18 19:19:40,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:19:40
[2026-10-18 19:19:41,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:19:41,809.809 INFO    ] Initializing speech engine...
[2026-10-18 19:19:41,817.817 INFO    ] 2026-10-18 19:19:41
[2026-10-18 19:19:42,078.078 INFO    ] 2026-10-18 19:19:42
[2026-10-18 19:19:42,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:19:42,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:19:42,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:19:42,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:19:42,596.596 INFO    ] time= 18/10/2026 19:19:42
[2026-10-18 19:19:42,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:19:42,646.646 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:19:42,779.779 INFO    ] No existing commands found in stream
[2026-10-18 19:19:47,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:19:47,796.796 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-18 19:19:48,726.726 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 19:19:48,729.729 INFO    ] Checking for system updates...
[2026-10-18 19:19:48,768.768 INFO    ] 200
[2026-10-18 19:19:48,771.771 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:19:48,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:19:48,825.825 INFO    ] No update needed
[2026-10-18 19:19:48,828.828 INFO    ] Checking for camera pi updates...
[2026-10-18 19:19:48,861.861 INFO    ] 200
[2026-10-18 19:19:48,864.864 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:19:48,903.903 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:19:58,919.919 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:19:58,954.954 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:19:58,964.964 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:19:58,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:19:58,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:19:58,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:20:01,018.018 INFO    ] ================================================
[2026-10-18 19:20:01,034.034 INFO    ] Launching Daemon at Sun Oct 18 19:20:01 IST 2026
[2026-10-18 19:20:01,045.045 INFO    ] ================================================
[2026-10-18 19:20:01,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:20:01
[2026-10-18 19:20:02,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:20:03,379.379 INFO    ] Initializing speech engine...
[2026-10-18 19:20:03,383.383 INFO    ] 2026-10-18 19:20:03
[2026-10-18 19:20:03,762.762 INFO    ] 2026-10-18 19:20:03
[2026-10-18 19:20:03,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:20:03,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:20:03,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:20:04,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:20:04,232.232 INFO    ] time= 18/10/2026 19:20:04
[2026-10-18 19:20:04,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:20:04,310.310 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:20:04,440.440 INFO    ] No existing commands found in stream
[2026-10-18 19:20:09,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:20:09,464.464 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-18 19:20:12,972.972 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 19:20:12,974.974 INFO    ] Checking for system updates...
[2026-10-18 19:20:13,010.010 INFO    ] 200
[2026-10-18 19:20:13,012.012 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:20:13,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:20:13,068.068 INFO    ] No update needed
[2026-10-18 19:20:13,071.071 INFO    ] Checking for camera pi updates...
[2026-10-18 19:20:13,108.108 INFO    ] 200
[2026-10-18 19:20:13,110.110 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:20:13,150.150 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:20:23,165.165 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:20:23,201.201 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:20:23,210.210 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:20:23,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:20:23,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:20:23,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:20:25,265.265 INFO    ] ================================================
[2026-10-18 19:20:25,281.281 INFO    ] Launching Daemon at Sun Oct 18 19:20:25 IST 2026
[2026-10-18 19:20:25,292.292 INFO    ] ================================================
[2026-10-18 19:20:25,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:20:25
[2026-10-18 19:20:26,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:20:26,717.717 INFO    ] Initializing speech engine...
[2026-10-18 19:20:26,727.727 INFO    ] 2026-10-18 19:20:26
[2026-10-18 19:20:26,979.979 INFO    ] 2026-10-18 19:20:26
[2026-10-18 19:20:27,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:20:27,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:20:27,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:20:27,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:20:27,476.476 INFO    ] time= 18/10/2026 19:20:27
[2026-10-18 19:20:27,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:20:27,555.555 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:20:27,697.697 INFO    ] No existing commands found in stream
[2026-10-18 19:20:32,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:20:32,721.721 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-18 19:20:36,943.943 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:20:36,945.945 INFO    ] Checking for system updates...
[2026-10-18 19:20:36,981.981 INFO    ] 200
[2026-10-18 19:20:36,984.984 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:20:37,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:20:37,038.038 INFO    ] No update needed
[2026-10-18 19:20:37,041.041 INFO    ] Checking for camera pi updates...
[2026-10-18 19:20:37,075.075 INFO    ] 200
[2026-10-18 19:20:37,077.077 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:20:37,121.121 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:20:47,133.133 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:20:47,168.168 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:20:47,177.177 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:20:47,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:20:47,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:20:47,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:20:49,231.231 INFO    ] ================================================
[2026-10-18 19:20:49,247.247 INFO    ] Launching Daemon at Sun Oct 18 19:20:49 IST 2026
[2026-10-18 19:20:49,258.258 INFO    ] ================================================
[2026-10-18 19:20:49,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:20:49
[2026-10-18 19:20:50,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:20:50,667.667 INFO    ] Initializing speech engine...
[2026-10-18 19:20:50,676.676 INFO    ] 2026-10-18 19:20:50
[2026-10-18 19:20:50,967.967 INFO    ] 2026-10-18 19:20:50
[2026-10-18 19:20:51,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:20:51,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:20:51,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:20:51,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:20:51,382.382 INFO    ] time= 18/10/2026 19:20:51
[2026-10-18 19:20:51,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:20:51,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:20:51,558.558 INFO    ] No existing commands found in stream
[2026-10-18 19:20:56,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:20:56,585.585 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-18 19:20:58,273.273 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:20:58,275.275 INFO    ] Checking for system updates...
[2026-10-18 19:20:58,314.314 INFO    ] 200
[2026-10-18 19:20:58,317.317 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:20:58,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:20:58,371.371 INFO    ] No update needed
[2026-10-18 19:20:58,373.373 INFO    ] Checking for camera pi updates...
[2026-10-18 19:20:58,406.406 INFO    ] 200
[2026-10-18 19:20:58,408.408 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:20:58,448.448 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:21:08,463.463 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:21:08,498.498 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:21:08,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:21:08,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:21:08,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:21:08,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:21:10,560.560 INFO    ] ================================================
[2026-10-18 19:21:10,576.576 INFO    ] Launching Daemon at Sun Oct 18 19:21:10 IST 2026
[2026-10-18 19:21:10,588.588 INFO    ] ================================================
[2026-10-18 19:21:11,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:21:11
[2026-10-18 19:21:11,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:21:12,014.014 INFO    ] Initializing speech engine...
[2026-10-18 19:21:12,023.023 INFO    ] 2026-10-18 19:21:12
[2026-10-18 19:21:12,268.268 INFO    ] 2026-10-18 19:21:12
[2026-10-18 19:21:12,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:21:12,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:21:12,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:21:12,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:21:12,822.822 INFO    ] time= 18/10/2026 19:21:12
[2026-10-18 19:21:12,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:21:12,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:21:12,989.989 INFO    ] No existing commands found in stream
[2026-10-18 19:21:18,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:21:18,023.023 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-18 19:21:22,187.187 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 19:21:22,190.190 INFO    ] Checking for system updates...
[2026-10-18 19:21:22,225.225 INFO    ] 200
[2026-10-18 19:21:22,228.228 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:21:22,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:21:22,281.281 INFO    ] No update needed
[2026-10-18 19:21:22,284.284 INFO    ] Checking for camera pi updates...
[2026-10-18 19:21:22,318.318 INFO    ] 200
[2026-10-18 19:21:22,320.320 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:21:22,362.362 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:21:32,377.377 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:21:32,413.413 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:21:32,424.424 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:21:32,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:21:32,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:21:32,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:21:34,478.478 INFO    ] ================================================
[2026-10-18 19:21:34,494.494 INFO    ] Launching Daemon at Sun Oct 18 19:21:34 IST 2026
[2026-10-18 19:21:34,505.505 INFO    ] ================================================
[2026-10-18 19:21:35,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:21:35
[2026-10-18 19:21:35,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:21:36,004.004 INFO    ] Initializing speech engine...
[2026-10-18 19:21:36,013.013 INFO    ] 2026-10-18 19:21:36
[2026-10-18 19:21:36,264.264 INFO    ] 2026-10-18 19:21:36
[2026-10-18 19:21:36,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:21:36,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:21:36,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:21:36,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:21:36,812.812 INFO    ] time= 18/10/2026 19:21:36
[2026-10-18 19:21:36,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:21:36,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:21:36,965.965 INFO    ] No existing commands found in stream
[2026-10-18 19:21:41,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:21:41,981.981 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-18 19:21:46,307.307 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:21:46,310.310 INFO    ] Checking for system updates...
[2026-10-18 19:21:46,346.346 INFO    ] 200
[2026-10-18 19:21:46,348.348 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:21:46,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:21:46,404.404 INFO    ] No update needed
[2026-10-18 19:21:46,407.407 INFO    ] Checking for camera pi updates...
[2026-10-18 19:21:46,442.442 INFO    ] 200
[2026-10-18 19:21:46,444.444 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:21:46,489.489 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:21:56,505.505 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:21:56,540.540 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:21:56,550.550 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:21:56,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:21:56,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:21:56,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:21:58,605.605 INFO    ] ================================================
[2026-10-18 19:21:58,620.620 INFO    ] Launching Daemon at Sun Oct 18 19:21:58 IST 2026
[2026-10-18 19:21:58,632.632 INFO    ] ================================================
[2026-10-18 19:21:59,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:21:59
[2026-10-18 19:21:59,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:22:00,089.089 INFO    ] Initializing speech engine...
[2026-10-18 19:22:00,095.095 INFO    ] 2026-10-18 19:22:00
[2026-10-18 19:22:00,342.342 INFO    ] 2026-10-18 19:22:00
[2026-10-18 19:22:00,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:22:00,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:22:00,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:22:00,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:22:00,893.893 INFO    ] time= 18/10/2026 19:22:00
[2026-10-18 19:22:00,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:22:00,917.917 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:22:01,053.053 INFO    ] No existing commands found in stream
[2026-10-18 19:22:06,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:22:06,084.084 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-18 19:22:09,315.315 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 19:22:09,317.317 INFO    ] Checking for system updates...
[2026-10-18 19:22:09,357.357 INFO    ] 200
[2026-10-18 19:22:09,359.359 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:22:09,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:22:09,414.414 INFO    ] No update needed
[2026-10-18 19:22:09,417.417 INFO    ] Checking for camera pi updates...
[2026-10-18 19:22:09,450.450 INFO    ] 200
[2026-10-18 19:22:09,453.453 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:22:09,494.494 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:22:19,509.509 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:22:19,544.544 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:22:19,554.554 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:22:19,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:22:19,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:22:19,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:22:21,608.608 INFO    ] ================================================
[2026-10-18 19:22:21,623.623 INFO    ] Launching Daemon at Sun Oct 18 19:22:21 IST 2026
[2026-10-18 19:22:21,634.634 INFO    ] ================================================
[2026-10-18 19:22:22,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:22:22
[2026-10-18 19:22:22,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:22:23,064.064 INFO    ] Initializing speech engine...
[2026-10-18 19:22:23,088.088 INFO    ] 2026-10-18 19:22:23
[2026-10-18 19:22:23,355.355 INFO    ] 2026-10-18 19:22:23
[2026-10-18 19:22:23,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:22:23,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:22:23,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:22:23,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:22:23,932.932 INFO    ] time= 18/10/2026 19:22:23
[2026-10-18 19:22:23,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:22:23,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:22:24,113.113 INFO    ] No existing commands found in stream
[2026-10-18 19:22:29,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:22:29,151.151 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-18 19:22:29,956.956 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:22:29,960.960 INFO    ] Checking for system updates...
[2026-10-18 19:22:30,001.001 INFO    ] 200
[2026-10-18 19:22:30,003.003 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:22:30,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:22:30,066.066 INFO    ] No update needed
[2026-10-18 19:22:30,068.068 INFO    ] Checking for camera pi updates...
[2026-10-18 19:22:30,103.103 INFO    ] 200
[2026-10-18 19:22:30,105.105 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:22:30,146.146 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:22:40,162.162 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:22:40,202.202 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:22:40,214.214 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:22:40,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:22:40,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:22:40,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:22:42,270.270 INFO    ] ================================================
[2026-10-18 19:22:42,285.285 INFO    ] Launching Daemon at Sun Oct 18 19:22:42 IST 2026
[2026-10-18 19:22:42,297.297 INFO    ] ================================================
[2026-10-18 19:22:42,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:22:42
[2026-10-18 19:22:43,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:22:43,917.917 INFO    ] Initializing speech engine...
[2026-10-18 19:22:43,927.927 INFO    ] 2026-10-18 19:22:43
[2026-10-18 19:22:44,174.174 INFO    ] 2026-10-18 19:22:44
[2026-10-18 19:22:44,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:22:44,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:22:44,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:22:44,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:22:44,733.733 INFO    ] time= 18/10/2026 19:22:44
[2026-10-18 19:22:44,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:22:44,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:22:44,897.897 INFO    ] No existing commands found in stream
[2026-10-18 19:22:49,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:22:49,927.927 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-18 19:22:52,727.727 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 19:22:52,730.730 INFO    ] Checking for system updates...
[2026-10-18 19:22:52,766.766 INFO    ] 200
[2026-10-18 19:22:52,769.769 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:22:52,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:22:52,824.824 INFO    ] No update needed
[2026-10-18 19:22:52,826.826 INFO    ] Checking for camera pi updates...
[2026-10-18 19:22:52,860.860 INFO    ] 200
[2026-10-18 19:22:52,862.862 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:22:52,902.902 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:23:02,916.916 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:23:02,957.957 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:23:02,969.969 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:23:02,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:23:02,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:23:02,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:23:05,025.025 INFO    ] ================================================
[2026-10-18 19:23:05,041.041 INFO    ] Launching Daemon at Sun Oct 18 19:23:05 IST 2026
[2026-10-18 19:23:05,052.052 INFO    ] ================================================
[2026-10-18 19:23:05,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:23:05
[2026-10-18 19:23:06,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:23:06,576.576 INFO    ] Initializing speech engine...
[2026-10-18 19:23:06,588.588 INFO    ] 2026-10-18 19:23:06
[2026-10-18 19:23:06,840.840 INFO    ] 2026-10-18 19:23:06
[2026-10-18 19:23:06,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:23:07,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:23:07,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:23:07,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:23:07,357.357 INFO    ] time= 18/10/2026 19:23:07
[2026-10-18 19:23:07,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:23:07,419.419 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:23:07,564.564 INFO    ] No existing commands found in stream
[2026-10-18 19:23:12,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:23:12,582.582 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-18 19:23:16,421.421 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:23:16,423.423 INFO    ] Checking for system updates...
[2026-10-18 19:23:16,459.459 INFO    ] 200
[2026-10-18 19:23:16,461.461 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:23:16,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:23:16,522.522 INFO    ] No update needed
[2026-10-18 19:23:16,525.525 INFO    ] Checking for camera pi updates...
[2026-10-18 19:23:16,562.562 INFO    ] 200
[2026-10-18 19:23:16,564.564 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:23:16,616.616 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:23:26,631.631 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:23:26,666.666 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:23:26,676.676 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:23:26,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:23:26,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:23:26,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:23:28,727.727 INFO    ] ================================================
[2026-10-18 19:23:28,743.743 INFO    ] Launching Daemon at Sun Oct 18 19:23:28 IST 2026
[2026-10-18 19:23:28,754.754 INFO    ] ================================================
[2026-10-18 19:23:29,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:23:29
[2026-10-18 19:23:29,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:23:30,192.192 INFO    ] Initializing speech engine...
[2026-10-18 19:23:30,202.202 INFO    ] 2026-10-18 19:23:30
[2026-10-18 19:23:30,466.466 INFO    ] 2026-10-18 19:23:30
[2026-10-18 19:23:30,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:23:30,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:23:30,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:23:30,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:23:30,893.893 INFO    ] time= 18/10/2026 19:23:30
[2026-10-18 19:23:30,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:23:30,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:23:31,076.076 INFO    ] No existing commands found in stream
[2026-10-18 19:23:36,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:23:36,101.101 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-18 19:23:39,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 19:23:39,249.249 INFO    ] Checking for system updates...
[2026-10-18 19:23:39,284.284 INFO    ] 200
[2026-10-18 19:23:39,287.287 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:23:39,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:23:39,343.343 INFO    ] No update needed
[2026-10-18 19:23:39,345.345 INFO    ] Checking for camera pi updates...
[2026-10-18 19:23:39,378.378 INFO    ] 200
[2026-10-18 19:23:39,381.381 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:23:39,421.421 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:23:49,435.435 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:23:49,470.470 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:23:49,480.480 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:23:49,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:23:49,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:23:49,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:23:51,532.532 INFO    ] ================================================
[2026-10-18 19:23:51,548.548 INFO    ] Launching Daemon at Sun Oct 18 19:23:51 IST 2026
[2026-10-18 19:23:51,559.559 INFO    ] ================================================
[2026-10-18 19:23:52,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:23:52
[2026-10-18 19:23:52,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:23:53,196.196 INFO    ] Initializing speech engine...
[2026-10-18 19:23:53,207.207 INFO    ] 2026-10-18 19:23:53
[2026-10-18 19:23:53,491.491 INFO    ] 2026-10-18 19:23:53
[2026-10-18 19:23:53,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:23:53,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:23:53,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:23:54,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:23:54,040.040 INFO    ] time= 18/10/2026 19:23:54
[2026-10-18 19:23:54,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:23:54,078.078 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:23:54,216.216 INFO    ] No existing commands found in stream
[2026-10-18 19:23:59,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:23:59,250.250 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-18 19:24:00,047.047 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:24:00,051.051 INFO    ] Checking for system updates...
[2026-10-18 19:24:00,093.093 INFO    ] 200
[2026-10-18 19:24:00,096.096 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:24:00,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:24:00,152.152 INFO    ] No update needed
[2026-10-18 19:24:00,155.155 INFO    ] Checking for camera pi updates...
[2026-10-18 19:24:00,188.188 INFO    ] 200
[2026-10-18 19:24:00,191.191 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:24:00,231.231 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:24:10,245.245 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:24:10,281.281 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:24:10,291.291 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:24:10,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:24:10,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:24:10,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:24:12,344.344 INFO    ] ================================================
[2026-10-18 19:24:12,359.359 INFO    ] Launching Daemon at Sun Oct 18 19:24:12 IST 2026
[2026-10-18 19:24:12,370.370 INFO    ] ================================================
[2026-10-18 19:24:12,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:24:12
[2026-10-18 19:24:13,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:24:13,796.796 INFO    ] Initializing speech engine...
[2026-10-18 19:24:13,806.806 INFO    ] 2026-10-18 19:24:13
[2026-10-18 19:24:14,074.074 INFO    ] 2026-10-18 19:24:14
[2026-10-18 19:24:14,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:24:14,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:24:14,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:24:14,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:24:14,527.527 INFO    ] time= 18/10/2026 19:24:14
[2026-10-18 19:24:14,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:24:14,586.586 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:24:14,727.727 INFO    ] No existing commands found in stream
[2026-10-18 19:24:19,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:24:19,739.739 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-18 19:24:21,949.949 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 19:24:21,951.951 INFO    ] Checking for system updates...
[2026-10-18 19:24:21,991.991 INFO    ] 200
[2026-10-18 19:24:21,993.993 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:24:22,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:24:22,049.049 INFO    ] No update needed
[2026-10-18 19:24:22,051.051 INFO    ] Checking for camera pi updates...
[2026-10-18 19:24:22,085.085 INFO    ] 200
[2026-10-18 19:24:22,087.087 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:24:22,127.127 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:24:32,142.142 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:24:32,179.179 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:24:32,189.189 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:24:32,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:24:32,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:24:32,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:24:34,244.244 INFO    ] ================================================
[2026-10-18 19:24:34,259.259 INFO    ] Launching Daemon at Sun Oct 18 19:24:34 IST 2026
[2026-10-18 19:24:34,271.271 INFO    ] ================================================
[2026-10-18 19:24:34,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:24:34
[2026-10-18 19:24:35,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:24:35,811.811 INFO    ] Initializing speech engine...
[2026-10-18 19:24:35,820.820 INFO    ] 2026-10-18 19:24:35
[2026-10-18 19:24:36,065.065 INFO    ] 2026-10-18 19:24:36
[2026-10-18 19:24:36,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:24:36,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:24:36,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:24:36,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:24:36,608.608 INFO    ] time= 18/10/2026 19:24:36
[2026-10-18 19:24:36,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:24:36,641.641 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:24:36,766.766 INFO    ] No existing commands found in stream
[2026-10-18 19:24:41,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:24:41,785.785 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-18 19:24:43,515.515 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:24:43,517.517 INFO    ] Checking for system updates...
[2026-10-18 19:24:43,557.557 INFO    ] 200
[2026-10-18 19:24:43,560.560 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:24:43,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:24:43,616.616 INFO    ] No update needed
[2026-10-18 19:24:43,618.618 INFO    ] Checking for camera pi updates...
[2026-10-18 19:24:43,656.656 INFO    ] 200
[2026-10-18 19:24:43,658.658 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:24:43,698.698 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:24:53,713.713 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:24:53,747.747 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:24:53,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:24:53,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:24:53,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:24:53,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:24:55,810.810 INFO    ] ================================================
[2026-10-18 19:24:55,826.826 INFO    ] Launching Daemon at Sun Oct 18 19:24:55 IST 2026
[2026-10-18 19:24:55,837.837 INFO    ] ================================================
[2026-10-18 19:24:56,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:24:56
[2026-10-18 19:24:57,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:24:57,305.305 INFO    ] Initializing speech engine...
[2026-10-18 19:24:57,314.314 INFO    ] 2026-10-18 19:24:57
[2026-10-18 19:24:57,578.578 INFO    ] 2026-10-18 19:24:57
[2026-10-18 19:24:57,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:24:57,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:24:57,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:24:58,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:24:58,121.121 INFO    ] time= 18/10/2026 19:24:58
[2026-10-18 19:24:58,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:24:58,145.145 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:24:58,274.274 INFO    ] No existing commands found in stream
[2026-10-18 19:25:03,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:25:03,291.291 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-18 19:25:07,300.300 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 19:25:07,303.303 INFO    ] Checking for system updates...
[2026-10-18 19:25:07,339.339 INFO    ] 200
[2026-10-18 19:25:07,341.341 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:25:07,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:25:07,395.395 INFO    ] No update needed
[2026-10-18 19:25:07,398.398 INFO    ] Checking for camera pi updates...
[2026-10-18 19:25:07,432.432 INFO    ] 200
[2026-10-18 19:25:07,435.435 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:25:07,482.482 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:25:17,497.497 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:25:17,533.533 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:25:17,543.543 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:25:17,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:25:17,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:25:17,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:25:19,595.595 INFO    ] ================================================
[2026-10-18 19:25:19,610.610 INFO    ] Launching Daemon at Sun Oct 18 19:25:19 IST 2026
[2026-10-18 19:25:19,621.621 INFO    ] ================================================
[2026-10-18 19:25:20,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:25:20
[2026-10-18 19:25:20,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:25:21,049.049 INFO    ] Initializing speech engine...
[2026-10-18 19:25:21,055.055 INFO    ] 2026-10-18 19:25:21
[2026-10-18 19:25:21,316.316 INFO    ] 2026-10-18 19:25:21
[2026-10-18 19:25:21,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:25:21,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:25:21,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:25:21,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:25:21,859.859 INFO    ] time= 18/10/2026 19:25:21
[2026-10-18 19:25:21,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:25:21,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:25:22,014.014 INFO    ] No existing commands found in stream
[2026-10-18 19:25:27,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:25:27,037.037 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-18 19:25:30,089.089 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:25:30,091.091 INFO    ] Checking for system updates...
[2026-10-18 19:25:30,130.130 INFO    ] 200
[2026-10-18 19:25:30,133.133 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:25:30,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:25:30,190.190 INFO    ] No update needed
[2026-10-18 19:25:30,192.192 INFO    ] Checking for camera pi updates...
[2026-10-18 19:25:30,227.227 INFO    ] 200
[2026-10-18 19:25:30,229.229 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:25:30,269.269 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:25:40,281.281 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:25:40,317.317 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:25:40,327.327 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:25:40,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:25:40,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:25:40,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:25:42,381.381 INFO    ] ================================================
[2026-10-18 19:25:42,396.396 INFO    ] Launching Daemon at Sun Oct 18 19:25:42 IST 2026
[2026-10-18 19:25:42,407.407 INFO    ] ================================================
[2026-10-18 19:25:43,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:25:42
[2026-10-18 19:25:43,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:25:43,858.858 INFO    ] Initializing speech engine...
[2026-10-18 19:25:43,864.864 INFO    ] 2026-10-18 19:25:43
[2026-10-18 19:25:44,156.156 INFO    ] 2026-10-18 19:25:44
[2026-10-18 19:25:44,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:25:44,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:25:44,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:25:44,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:25:44,576.576 INFO    ] time= 18/10/2026 19:25:44
[2026-10-18 19:25:44,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:25:44,589.589 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:25:44,746.746 INFO    ] No existing commands found in stream
[2026-10-18 19:25:49,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:25:49,769.769 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-18 19:25:51,618.618 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 19:25:51,620.620 INFO    ] Checking for system updates...
[2026-10-18 19:25:51,669.669 INFO    ] 200
[2026-10-18 19:25:51,671.671 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:25:51,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:25:51,727.727 INFO    ] No update needed
[2026-10-18 19:25:51,729.729 INFO    ] Checking for camera pi updates...
[2026-10-18 19:25:51,766.766 INFO    ] 200
[2026-10-18 19:25:51,769.769 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:25:51,810.810 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:26:01,827.827 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:26:01,870.870 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:26:01,883.883 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:26:01,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:26:01,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:26:01,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:26:03,944.944 INFO    ] ================================================
[2026-10-18 19:26:03,959.959 INFO    ] Launching Daemon at Sun Oct 18 19:26:03 IST 2026
[2026-10-18 19:26:03,970.970 INFO    ] ================================================
[2026-10-18 19:26:04,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:26:04
[2026-10-18 19:26:05,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:26:05,391.391 INFO    ] Initializing speech engine...
[2026-10-18 19:26:05,398.398 INFO    ] 2026-10-18 19:26:05
[2026-10-18 19:26:05,640.640 INFO    ] 2026-10-18 19:26:05
[2026-10-18 19:26:05,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:26:05,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:26:05,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:26:06,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:26:06,115.115 INFO    ] time= 18/10/2026 19:26:06
[2026-10-18 19:26:06,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:26:06,200.200 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:26:06,350.350 INFO    ] No existing commands found in stream
[2026-10-18 19:26:11,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:26:11,371.371 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-18 19:26:13,593.593 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:26:13,596.596 INFO    ] Checking for system updates...
[2026-10-18 19:26:13,631.631 INFO    ] 200
[2026-10-18 19:26:13,634.634 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:26:13,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:26:13,690.690 INFO    ] No update needed
[2026-10-18 19:26:13,695.695 INFO    ] Checking for camera pi updates...
[2026-10-18 19:26:13,729.729 INFO    ] 200
[2026-10-18 19:26:13,731.731 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:26:13,771.771 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:26:23,787.787 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db5150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:26:23,823.823 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:26:23,833.833 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:26:23,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:26:23,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:26:23,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:26:25,887.887 INFO    ] ================================================
[2026-10-18 19:26:25,902.902 INFO    ] Launching Daemon at Sun Oct 18 19:26:25 IST 2026
[2026-10-18 19:26:25,913.913 INFO    ] ================================================
[2026-10-18 19:26:26,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:26:26
[2026-10-18 19:26:27,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:26:27,339.339 INFO    ] Initializing speech engine...
[2026-10-18 19:26:27,349.349 INFO    ] 2026-10-18 19:26:27
[2026-10-18 19:26:27,594.594 INFO    ] 2026-10-18 19:26:27
[2026-10-18 19:26:27,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:26:27,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:26:27,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:26:28,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:26:28,099.099 INFO    ] time= 18/10/2026 19:26:28
[2026-10-18 19:26:28,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:26:28,169.169 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:26:28,308.308 INFO    ] No existing commands found in stream
[2026-10-18 19:26:33,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:26:33,341.341 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-18 19:26:34,263.263 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 19:26:34,266.266 INFO    ] Checking for system updates...
[2026-10-18 19:26:34,301.301 INFO    ] 200
[2026-10-18 19:26:34,304.304 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:26:34,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:26:34,365.365 INFO    ] No update needed
[2026-10-18 19:26:34,367.367 INFO    ] Checking for camera pi updates...
[2026-10-18 19:26:34,405.405 INFO    ] 200
[2026-10-18 19:26:34,407.407 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:26:34,449.449 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:26:44,464.464 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:26:44,500.500 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:26:44,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:26:44,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:26:44,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:26:44,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:26:46,565.565 INFO    ] ================================================
[2026-10-18 19:26:46,581.581 INFO    ] Launching Daemon at Sun Oct 18 19:26:46 IST 2026
[2026-10-18 19:26:46,591.591 INFO    ] ================================================
[2026-10-18 19:26:47,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:26:47
[2026-10-18 19:26:47,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:26:48,005.005 INFO    ] Initializing speech engine...
[2026-10-18 19:26:48,014.014 INFO    ] 2026-10-18 19:26:48
[2026-10-18 19:26:48,308.308 INFO    ] 2026-10-18 19:26:48
[2026-10-18 19:26:48,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:26:48,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:26:48,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:26:48,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:26:48,729.729 INFO    ] time= 18/10/2026 19:26:48
[2026-10-18 19:26:48,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:26:48,741.741 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:26:48,887.887 INFO    ] No existing commands found in stream
[2026-10-18 19:26:53,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:26:53,909.909 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-18 19:26:54,877.877 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:26:54,879.879 INFO    ] Checking for system updates...
[2026-10-18 19:26:54,916.916 INFO    ] 200
[2026-10-18 19:26:54,918.918 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:26:54,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:26:54,977.977 INFO    ] No update needed
[2026-10-18 19:26:54,979.979 INFO    ] Checking for camera pi updates...
[2026-10-18 19:26:55,016.016 INFO    ] 200
[2026-10-18 19:26:55,018.018 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:26:55,060.060 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:27:05,075.075 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:27:05,111.111 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:27:05,121.121 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:27:05,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:27:05,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:27:05,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:27:07,177.177 INFO    ] ================================================
[2026-10-18 19:27:07,192.192 INFO    ] Launching Daemon at Sun Oct 18 19:27:07 IST 2026
[2026-10-18 19:27:07,203.203 INFO    ] ================================================
[2026-10-18 19:27:07,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:27:07
[2026-10-18 19:27:08,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:27:08,600.600 INFO    ] Initializing speech engine...
[2026-10-18 19:27:08,614.614 INFO    ] 2026-10-18 19:27:08
[2026-10-18 19:27:08,897.897 INFO    ] 2026-10-18 19:27:08
[2026-10-18 19:27:08,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:27:09,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:27:09,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:27:09,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:27:09,325.325 INFO    ] time= 18/10/2026 19:27:09
[2026-10-18 19:27:09,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:27:09,398.398 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:27:09,520.520 INFO    ] No existing commands found in stream
[2026-10-18 19:27:14,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:27:14,553.553 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-18 19:27:15,250.250 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:27:15,252.252 INFO    ] Checking for system updates...
[2026-10-18 19:27:15,288.288 INFO    ] 200
[2026-10-18 19:27:15,290.290 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:27:15,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:27:15,352.352 INFO    ] No update needed
[2026-10-18 19:27:15,355.355 INFO    ] Checking for camera pi updates...
[2026-10-18 19:27:15,388.388 INFO    ] 200
[2026-10-18 19:27:15,390.390 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:27:15,431.431 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:27:25,446.446 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:27:25,480.480 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:27:25,490.490 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:27:25,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:27:25,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:27:25,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:27:27,541.541 INFO    ] ================================================
[2026-10-18 19:27:27,557.557 INFO    ] Launching Daemon at Sun Oct 18 19:27:27 IST 2026
[2026-10-18 19:27:27,567.567 INFO    ] ================================================
[2026-10-18 19:27:28,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:27:28
[2026-10-18 19:27:28,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:27:29,213.213 INFO    ] Initializing speech engine...
[2026-10-18 19:27:29,225.225 INFO    ] 2026-10-18 19:27:29
[2026-10-18 19:27:29,512.512 INFO    ] 2026-10-18 19:27:29
[2026-10-18 19:27:29,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:27:29,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:27:29,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:27:30,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:27:30,043.043 INFO    ] time= 18/10/2026 19:27:30
[2026-10-18 19:27:30,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:27:30,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:27:30,247.247 INFO    ] No existing commands found in stream
[2026-10-18 19:27:35,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:27:35,282.282 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-18 19:27:36,893.893 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 19:27:36,897.897 INFO    ] Checking for system updates...
[2026-10-18 19:27:36,933.933 INFO    ] 200
[2026-10-18 19:27:36,936.936 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:27:36,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:27:36,992.992 INFO    ] No update needed
[2026-10-18 19:27:36,995.995 INFO    ] Checking for camera pi updates...
[2026-10-18 19:27:37,029.029 INFO    ] 200
[2026-10-18 19:27:37,031.031 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:27:37,076.076 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:27:47,091.091 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:27:47,126.126 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:27:47,136.136 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:27:47,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:27:47,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:27:47,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:27:49,187.187 INFO    ] ================================================
[2026-10-18 19:27:49,203.203 INFO    ] Launching Daemon at Sun Oct 18 19:27:49 IST 2026
[2026-10-18 19:27:49,214.214 INFO    ] ================================================
[2026-10-18 19:27:49,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:27:49
[2026-10-18 19:27:50,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:27:50,635.635 INFO    ] Initializing speech engine...
[2026-10-18 19:27:50,645.645 INFO    ] 2026-10-18 19:27:50
[2026-10-18 19:27:50,904.904 INFO    ] 2026-10-18 19:27:50
[2026-10-18 19:27:50,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:27:51,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:27:51,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:27:51,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:27:51,413.413 INFO    ] time= 18/10/2026 19:27:51
[2026-10-18 19:27:51,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:27:51,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:27:51,602.602 INFO    ] No existing commands found in stream
[2026-10-18 19:27:56,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:27:56,618.618 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-18 19:28:00,762.762 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 19:28:00,765.765 INFO    ] Checking for system updates...
[2026-10-18 19:28:00,805.805 INFO    ] 200
[2026-10-18 19:28:00,807.807 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:28:00,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:28:00,863.863 INFO    ] No update needed
[2026-10-18 19:28:00,866.866 INFO    ] Checking for camera pi updates...
[2026-10-18 19:28:00,900.900 INFO    ] 200
[2026-10-18 19:28:00,902.902 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:28:00,942.942 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:28:10,955.955 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:28:10,990.990 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:28:11,000.000 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:28:11,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:28:11,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:28:11,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:28:13,054.054 INFO    ] ================================================
[2026-10-18 19:28:13,069.069 INFO    ] Launching Daemon at Sun Oct 18 19:28:13 IST 2026
[2026-10-18 19:28:13,080.080 INFO    ] ================================================
[2026-10-18 19:28:13,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:28:13
[2026-10-18 19:28:14,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:28:14,478.478 INFO    ] Initializing speech engine...
[2026-10-18 19:28:14,501.501 INFO    ] 2026-10-18 19:28:14
[2026-10-18 19:28:14,758.758 INFO    ] 2026-10-18 19:28:14
[2026-10-18 19:28:14,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:28:15,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:28:15,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:28:15,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:28:15,324.324 INFO    ] time= 18/10/2026 19:28:15
[2026-10-18 19:28:15,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:28:15,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:28:15,481.481 INFO    ] No existing commands found in stream
[2026-10-18 19:28:20,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:28:20,497.497 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-18 19:28:24,365.365 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:28:24,368.368 INFO    ] Checking for system updates...
[2026-10-18 19:28:24,405.405 INFO    ] 200
[2026-10-18 19:28:24,408.408 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:28:24,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:28:24,463.463 INFO    ] No update needed
[2026-10-18 19:28:24,466.466 INFO    ] Checking for camera pi updates...
[2026-10-18 19:28:24,504.504 INFO    ] 200
[2026-10-18 19:28:24,507.507 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:28:24,558.558 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:28:34,571.571 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:28:34,610.610 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:28:34,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:28:34,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:28:34,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:28:34,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:28:36,677.677 INFO    ] ================================================
[2026-10-18 19:28:36,692.692 INFO    ] Launching Daemon at Sun Oct 18 19:28:36 IST 2026
[2026-10-18 19:28:36,703.703 INFO    ] ================================================
[2026-10-18 19:28:37,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:28:37
[2026-10-18 19:28:37,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:28:38,105.105 INFO    ] Initializing speech engine...
[2026-10-18 19:28:38,128.128 INFO    ] 2026-10-18 19:28:38
[2026-10-18 19:28:38,385.385 INFO    ] 2026-10-18 19:28:38
[2026-10-18 19:28:38,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:28:38,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:28:38,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:28:38,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:28:38,951.951 INFO    ] time= 18/10/2026 19:28:38
[2026-10-18 19:28:38,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:28:38,975.975 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:28:39,112.112 INFO    ] No existing commands found in stream
[2026-10-18 19:28:44,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:28:44,137.137 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-18 19:28:47,695.695 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 19:28:47,697.697 INFO    ] Checking for system updates...
[2026-10-18 19:28:47,737.737 INFO    ] 200
[2026-10-18 19:28:47,739.739 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:28:47,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:28:47,794.794 INFO    ] No update needed
[2026-10-18 19:28:47,797.797 INFO    ] Checking for camera pi updates...
[2026-10-18 19:28:47,830.830 INFO    ] 200
[2026-10-18 19:28:47,832.832 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:28:47,872.872 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:28:57,887.887 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:28:57,922.922 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:28:57,932.932 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:28:57,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:28:57,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:28:57,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:28:59,985.985 INFO    ] ================================================
[2026-10-18 19:29:00,000.000 INFO    ] Launching Daemon at Sun Oct 18 19:28:59 IST 2026
[2026-10-18 19:29:00,011.011 INFO    ] ================================================
[2026-10-18 19:29:00,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:29:00
[2026-10-18 19:29:01,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:29:01,534.534 INFO    ] Initializing speech engine...
[2026-10-18 19:29:01,543.543 INFO    ] 2026-10-18 19:29:01
[2026-10-18 19:29:01,817.817 INFO    ] 2026-10-18 19:29:01
[2026-10-18 19:29:01,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:29:02,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:29:02,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:29:02,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:29:02,300.300 INFO    ] time= 18/10/2026 19:29:02
[2026-10-18 19:29:02,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:29:02,312.312 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:29:02,441.441 INFO    ] No existing commands found in stream
[2026-10-18 19:29:07,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:29:07,461.461 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-18 19:29:11,485.485 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:29:11,488.488 INFO    ] Checking for system updates...
[2026-10-18 19:29:11,527.527 INFO    ] 200
[2026-10-18 19:29:11,530.530 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:29:11,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:29:11,586.586 INFO    ] No update needed
[2026-10-18 19:29:11,589.589 INFO    ] Checking for camera pi updates...
[2026-10-18 19:29:11,623.623 INFO    ] 200
[2026-10-18 19:29:11,625.625 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:29:11,670.670 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:29:21,684.684 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:29:21,720.720 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:29:21,730.730 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:29:21,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:29:21,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:29:21,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:29:23,782.782 INFO    ] ================================================
[2026-10-18 19:29:23,797.797 INFO    ] Launching Daemon at Sun Oct 18 19:29:23 IST 2026
[2026-10-18 19:29:23,808.808 INFO    ] ================================================
[2026-10-18 19:29:24,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:29:24
[2026-10-18 19:29:24,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:29:25,272.272 INFO    ] Initializing speech engine...
[2026-10-18 19:29:25,281.281 INFO    ] 2026-10-18 19:29:25
[2026-10-18 19:29:25,540.540 INFO    ] 2026-10-18 19:29:25
[2026-10-18 19:29:25,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:29:25,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:29:25,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:29:26,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:29:26,089.089 INFO    ] time= 18/10/2026 19:29:26
[2026-10-18 19:29:26,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:29:26,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:29:26,267.267 INFO    ] No existing commands found in stream
[2026-10-18 19:29:31,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:29:31,301.301 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-18 19:29:34,086.086 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:29:34,089.089 INFO    ] Checking for system updates...
[2026-10-18 19:29:34,130.130 INFO    ] 200
[2026-10-18 19:29:34,132.132 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:29:34,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:29:34,186.186 INFO    ] No update needed
[2026-10-18 19:29:34,189.189 INFO    ] Checking for camera pi updates...
[2026-10-18 19:29:34,227.227 INFO    ] 200
[2026-10-18 19:29:34,229.229 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:29:34,270.270 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:29:44,284.284 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:29:44,319.319 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:29:44,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:29:44,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:29:44,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:29:44,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:29:46,380.380 INFO    ] ================================================
[2026-10-18 19:29:46,395.395 INFO    ] Launching Daemon at Sun Oct 18 19:29:46 IST 2026
[2026-10-18 19:29:46,406.406 INFO    ] ================================================
[2026-10-18 19:29:46,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:29:46
[2026-10-18 19:29:47,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:29:47,896.896 INFO    ] Initializing speech engine...
[2026-10-18 19:29:47,906.906 INFO    ] 2026-10-18 19:29:47
[2026-10-18 19:29:48,218.218 INFO    ] 2026-10-18 19:29:48
[2026-10-18 19:29:48,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:29:48,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:29:48,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:29:48,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:29:48,731.731 INFO    ] time= 18/10/2026 19:29:48
[2026-10-18 19:29:48,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:29:48,783.783 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:29:48,911.911 INFO    ] No existing commands found in stream
[2026-10-18 19:29:53,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:29:53,946.946 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-18 19:29:56,240.240 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 19:29:56,243.243 INFO    ] Checking for system updates...
[2026-10-18 19:29:56,279.279 INFO    ] 200
[2026-10-18 19:29:56,282.282 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:29:56,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:29:56,344.344 INFO    ] No update needed
[2026-10-18 19:29:56,347.347 INFO    ] Checking for camera pi updates...
[2026-10-18 19:29:56,380.380 INFO    ] 200
[2026-10-18 19:29:56,383.383 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:29:56,423.423 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:30:06,438.438 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:30:06,474.474 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:30:06,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:30:06,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:30:06,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:30:06,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:30:08,536.536 INFO    ] ================================================
[2026-10-18 19:30:08,551.551 INFO    ] Launching Daemon at Sun Oct 18 19:30:08 IST 2026
[2026-10-18 19:30:08,562.562 INFO    ] ================================================
[2026-10-18 19:30:09,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:30:09
[2026-10-18 19:30:09,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:30:09,998.998 INFO    ] Initializing speech engine...
[2026-10-18 19:30:10,022.022 INFO    ] 2026-10-18 19:30:10
[2026-10-18 19:30:10,277.277 INFO    ] 2026-10-18 19:30:10
[2026-10-18 19:30:10,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:30:10,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:30:10,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:30:10,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:30:10,773.773 INFO    ] time= 18/10/2026 19:30:10
[2026-10-18 19:30:10,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:30:10,851.851 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:30:10,980.980 INFO    ] No existing commands found in stream
[2026-10-18 19:30:16,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:30:16,011.011 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-18 19:30:19,671.671 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 19:30:19,674.674 INFO    ] Checking for system updates...
[2026-10-18 19:30:19,713.713 INFO    ] 200
[2026-10-18 19:30:19,716.716 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:30:19,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:30:19,776.776 INFO    ] No update needed
[2026-10-18 19:30:19,779.779 INFO    ] Checking for camera pi updates...
[2026-10-18 19:30:19,813.813 INFO    ] 200
[2026-10-18 19:30:19,816.816 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:30:19,856.856 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:30:29,871.871 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:30:29,906.906 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:30:29,916.916 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:30:29,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:30:29,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:30:29,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:30:31,968.968 INFO    ] ================================================
[2026-10-18 19:30:31,983.983 INFO    ] Launching Daemon at Sun Oct 18 19:30:31 IST 2026
[2026-10-18 19:30:31,994.994 INFO    ] ================================================
[2026-10-18 19:30:32,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:30:32
[2026-10-18 19:30:33,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:30:33,607.607 INFO    ] Initializing speech engine...
[2026-10-18 19:30:33,613.613 INFO    ] 2026-10-18 19:30:33
[2026-10-18 19:30:33,882.882 INFO    ] 2026-10-18 19:30:33
[2026-10-18 19:30:33,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:30:34,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:30:34,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:30:34,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:30:34,279.279 INFO    ] time= 18/10/2026 19:30:34
[2026-10-18 19:30:34,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:30:34,293.293 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:30:34,451.451 INFO    ] No existing commands found in stream
[2026-10-18 19:30:39,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:30:39,484.484 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-18 19:30:41,287.287 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:30:41,290.290 INFO    ] Checking for system updates...
[2026-10-18 19:30:41,328.328 INFO    ] 200
[2026-10-18 19:30:41,331.331 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:30:41,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:30:41,386.386 INFO    ] No update needed
[2026-10-18 19:30:41,389.389 INFO    ] Checking for camera pi updates...
[2026-10-18 19:30:41,426.426 INFO    ] 200
[2026-10-18 19:30:41,429.429 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:30:41,475.475 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:30:51,490.490 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:30:51,526.526 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:30:51,536.536 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:30:51,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:30:51,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:30:51,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:30:53,589.589 INFO    ] ================================================
[2026-10-18 19:30:53,605.605 INFO    ] Launching Daemon at Sun Oct 18 19:30:53 IST 2026
[2026-10-18 19:30:53,616.616 INFO    ] ================================================
[2026-10-18 19:30:54,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:30:54
[2026-10-18 19:30:54,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:30:55,042.042 INFO    ] Initializing speech engine...
[2026-10-18 19:30:55,051.051 INFO    ] 2026-10-18 19:30:55
[2026-10-18 19:30:55,298.298 INFO    ] 2026-10-18 19:30:55
[2026-10-18 19:30:55,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:30:55,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:30:55,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:30:55,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:30:55,834.834 INFO    ] time= 18/10/2026 19:30:55
[2026-10-18 19:30:55,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:30:55,910.910 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:30:56,052.052 INFO    ] No existing commands found in stream
[2026-10-18 19:31:01,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:31:01,077.077 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-18 19:31:03,326.326 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:31:03,330.330 INFO    ] Checking for system updates...
[2026-10-18 19:31:03,374.374 INFO    ] 200
[2026-10-18 19:31:03,377.377 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:31:03,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:31:03,439.439 INFO    ] No update needed
[2026-10-18 19:31:03,441.441 INFO    ] Checking for camera pi updates...
[2026-10-18 19:31:03,485.485 INFO    ] 200
[2026-10-18 19:31:03,489.489 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:31:03,542.542 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:31:13,558.558 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:31:13,599.599 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:31:13,611.611 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:31:13,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:31:13,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:31:13,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:31:15,668.668 INFO    ] ================================================
[2026-10-18 19:31:15,685.685 INFO    ] Launching Daemon at Sun Oct 18 19:31:15 IST 2026
[2026-10-18 19:31:15,696.696 INFO    ] ================================================
[2026-10-18 19:31:16,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:31:16
[2026-10-18 19:31:16,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:31:17,160.160 INFO    ] Initializing speech engine...
[2026-10-18 19:31:17,168.168 INFO    ] 2026-10-18 19:31:17
[2026-10-18 19:31:17,432.432 INFO    ] 2026-10-18 19:31:17
[2026-10-18 19:31:17,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:31:17,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:31:17,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:31:17,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:31:17,976.976 INFO    ] time= 18/10/2026 19:31:17
[2026-10-18 19:31:17,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:31:18,003.003 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:31:18,169.169 INFO    ] No existing commands found in stream
[2026-10-18 19:31:23,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:31:23,204.204 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-18 19:31:27,249.249 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 19:31:27,252.252 INFO    ] Checking for system updates...
[2026-10-18 19:31:27,290.290 INFO    ] 200
[2026-10-18 19:31:27,293.293 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:31:27,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:31:27,357.357 INFO    ] No update needed
[2026-10-18 19:31:27,359.359 INFO    ] Checking for camera pi updates...
[2026-10-18 19:31:27,394.394 INFO    ] 200
[2026-10-18 19:31:27,397.397 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:31:27,451.451 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:31:37,467.467 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:31:37,503.503 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:31:37,513.513 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:31:37,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:31:37,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:31:37,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:31:39,568.568 INFO    ] ================================================
[2026-10-18 19:31:39,584.584 INFO    ] Launching Daemon at Sun Oct 18 19:31:39 IST 2026
[2026-10-18 19:31:39,596.596 INFO    ] ================================================
[2026-10-18 19:31:40,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:31:40
[2026-10-18 19:31:40,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:31:41,286.286 INFO    ] Initializing speech engine...
[2026-10-18 19:31:41,298.298 INFO    ] 2026-10-18 19:31:41
[2026-10-18 19:31:41,590.590 INFO    ] 2026-10-18 19:31:41
[2026-10-18 19:31:41,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:31:41,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:31:41,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:31:42,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:31:42,134.134 INFO    ] time= 18/10/2026 19:31:42
[2026-10-18 19:31:42,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:31:42,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:31:42,308.308 INFO    ] No existing commands found in stream
[2026-10-18 19:31:47,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:31:47,337.337 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-18 19:31:48,292.292 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 19:31:48,295.295 INFO    ] Checking for system updates...
[2026-10-18 19:31:48,340.340 INFO    ] 200
[2026-10-18 19:31:48,343.343 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:31:48,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:31:48,423.423 INFO    ] No update needed
[2026-10-18 19:31:48,425.425 INFO    ] Checking for camera pi updates...
[2026-10-18 19:31:48,462.462 INFO    ] 200
[2026-10-18 19:31:48,465.465 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:31:48,516.516 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:31:58,531.531 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:31:58,566.566 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:31:58,576.576 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:31:58,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:31:58,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:31:58,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:32:00,629.629 INFO    ] ================================================
[2026-10-18 19:32:00,644.644 INFO    ] Launching Daemon at Sun Oct 18 19:32:00 IST 2026
[2026-10-18 19:32:00,656.656 INFO    ] ================================================
[2026-10-18 19:32:01,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:32:01
[2026-10-18 19:32:02,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:32:02,458.458 INFO    ] Initializing speech engine...
[2026-10-18 19:32:02,476.476 INFO    ] 2026-10-18 19:32:02
[2026-10-18 19:32:02,811.811 INFO    ] 2026-10-18 19:32:02
[2026-10-18 19:32:02,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:32:03,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:32:03,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:32:03,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:32:03,473.473 INFO    ] time= 18/10/2026 19:32:03
[2026-10-18 19:32:03,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:32:03,494.494 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:32:03,646.646 INFO    ] No existing commands found in stream
[2026-10-18 19:32:08,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:32:08,675.675 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-18 19:32:09,417.417 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:32:09,420.420 INFO    ] Checking for system updates...
[2026-10-18 19:32:09,458.458 INFO    ] 200
[2026-10-18 19:32:09,460.460 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:32:09,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:32:09,527.527 INFO    ] No update needed
[2026-10-18 19:32:09,530.530 INFO    ] Checking for camera pi updates...
[2026-10-18 19:32:09,568.568 INFO    ] 200
[2026-10-18 19:32:09,570.570 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:32:09,616.616 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:32:19,631.631 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:32:19,667.667 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:32:19,677.677 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:32:19,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:32:19,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:32:19,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:32:21,729.729 INFO    ] ================================================
[2026-10-18 19:32:21,744.744 INFO    ] Launching Daemon at Sun Oct 18 19:32:21 IST 2026
[2026-10-18 19:32:21,755.755 INFO    ] ================================================
[2026-10-18 19:32:22,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:32:22
[2026-10-18 19:32:23,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:32:23,427.427 INFO    ] Initializing speech engine...
[2026-10-18 19:32:23,438.438 INFO    ] 2026-10-18 19:32:23
[2026-10-18 19:32:23,750.750 INFO    ] 2026-10-18 19:32:23
[2026-10-18 19:32:23,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:32:24,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:32:24,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:32:24,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:32:24,278.278 INFO    ] time= 18/10/2026 19:32:24
[2026-10-18 19:32:24,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:32:24,315.315 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:32:24,433.433 INFO    ] No existing commands found in stream
[2026-10-18 19:32:29,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:32:29,467.467 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-18 19:32:33,483.483 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:32:33,486.486 INFO    ] Checking for system updates...
[2026-10-18 19:32:33,523.523 INFO    ] 200
[2026-10-18 19:32:33,526.526 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:32:33,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:32:33,591.591 INFO    ] No update needed
[2026-10-18 19:32:33,593.593 INFO    ] Checking for camera pi updates...
[2026-10-18 19:32:33,632.632 INFO    ] 200
[2026-10-18 19:32:33,635.635 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:32:33,682.682 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:32:43,698.698 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6e150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:32:43,738.738 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:32:43,750.750 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:32:43,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:32:43,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:32:43,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:32:45,806.806 INFO    ] ================================================
[2026-10-18 19:32:45,821.821 INFO    ] Launching Daemon at Sun Oct 18 19:32:45 IST 2026
[2026-10-18 19:32:45,833.833 INFO    ] ================================================
[2026-10-18 19:32:46,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:32:46
[2026-10-18 19:32:47,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:32:47,281.281 INFO    ] Initializing speech engine...
[2026-10-18 19:32:47,298.298 INFO    ] 2026-10-18 19:32:47
[2026-10-18 19:32:47,585.585 INFO    ] 2026-10-18 19:32:47
[2026-10-18 19:32:47,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:32:47,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:32:47,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:32:48,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:32:48,013.013 INFO    ] time= 18/10/2026 19:32:48
[2026-10-18 19:32:48,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:32:48,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:32:48,176.176 INFO    ] No existing commands found in stream
[2026-10-18 19:32:53,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:32:53,199.199 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-18 19:32:54,834.834 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:32:54,837.837 INFO    ] Checking for system updates...
[2026-10-18 19:32:54,873.873 INFO    ] 200
[2026-10-18 19:32:54,876.876 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:32:54,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:32:54,935.935 INFO    ] No update needed
[2026-10-18 19:32:54,937.937 INFO    ] Checking for camera pi updates...
[2026-10-18 19:32:54,971.971 INFO    ] 200
[2026-10-18 19:32:54,974.974 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:32:55,017.017 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:33:05,032.032 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:33:05,067.067 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:33:05,076.076 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:33:05,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:33:05,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:33:05,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:33:07,128.128 INFO    ] ================================================
[2026-10-18 19:33:07,144.144 INFO    ] Launching Daemon at Sun Oct 18 19:33:07 IST 2026
[2026-10-18 19:33:07,156.156 INFO    ] ================================================
[2026-10-18 19:33:07,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:33:07
[2026-10-18 19:33:08,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:33:08,621.621 INFO    ] Initializing speech engine...
[2026-10-18 19:33:08,631.631 INFO    ] 2026-10-18 19:33:08
[2026-10-18 19:33:08,923.923 INFO    ] 2026-10-18 19:33:08
[2026-10-18 19:33:08,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:33:09,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:33:09,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:33:09,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:33:09,465.465 INFO    ] time= 18/10/2026 19:33:09
[2026-10-18 19:33:09,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:33:09,515.515 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:33:09,645.645 INFO    ] No existing commands found in stream
[2026-10-18 19:33:14,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:33:14,680.680 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-18 19:33:15,341.341 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 19:33:15,344.344 INFO    ] Checking for system updates...
[2026-10-18 19:33:15,382.382 INFO    ] 200
[2026-10-18 19:33:15,384.384 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:33:15,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:33:15,449.449 INFO    ] No update needed
[2026-10-18 19:33:15,451.451 INFO    ] Checking for camera pi updates...
[2026-10-18 19:33:15,488.488 INFO    ] 200
[2026-10-18 19:33:15,491.491 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:33:15,536.536 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:33:25,552.552 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:33:25,587.587 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:33:25,597.597 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:33:25,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:33:25,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:33:25,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:33:27,650.650 INFO    ] ================================================
[2026-10-18 19:33:27,666.666 INFO    ] Launching Daemon at Sun Oct 18 19:33:27 IST 2026
[2026-10-18 19:33:27,678.678 INFO    ] ================================================
[2026-10-18 19:33:28,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:33:28
[2026-10-18 19:33:28,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:33:29,258.258 INFO    ] Initializing speech engine...
[2026-10-18 19:33:29,266.266 INFO    ] 2026-10-18 19:33:29
[2026-10-18 19:33:29,527.527 INFO    ] 2026-10-18 19:33:29
[2026-10-18 19:33:29,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:33:29,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:33:29,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:33:30,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:33:30,080.080 INFO    ] time= 18/10/2026 19:33:30
[2026-10-18 19:33:30,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:33:30,115.115 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:33:30,240.240 INFO    ] No existing commands found in stream
[2026-10-18 19:33:35,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:33:35,269.269 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-18 19:33:38,519.519 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 19:33:38,521.521 INFO    ] Checking for system updates...
[2026-10-18 19:33:38,558.558 INFO    ] 200
[2026-10-18 19:33:38,560.560 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:33:38,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:33:38,614.614 INFO    ] No update needed
[2026-10-18 19:33:38,617.617 INFO    ] Checking for camera pi updates...
[2026-10-18 19:33:38,650.650 INFO    ] 200
[2026-10-18 19:33:38,653.653 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:33:38,693.693 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:33:48,709.709 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:33:48,745.745 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:33:48,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:33:48,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:33:48,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:33:48,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:33:50,808.808 INFO    ] ================================================
[2026-10-18 19:33:50,822.822 INFO    ] Launching Daemon at Sun Oct 18 19:33:50 IST 2026
[2026-10-18 19:33:50,833.833 INFO    ] ================================================
[2026-10-18 19:33:51,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:33:51
[2026-10-18 19:33:52,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:33:52,301.301 INFO    ] Initializing speech engine...
[2026-10-18 19:33:52,308.308 INFO    ] 2026-10-18 19:33:52
[2026-10-18 19:33:52,574.574 INFO    ] 2026-10-18 19:33:52
[2026-10-18 19:33:52,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:33:52,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:33:52,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:33:53,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:33:53,115.115 INFO    ] time= 18/10/2026 19:33:53
[2026-10-18 19:33:53,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:33:53,139.139 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:33:53,275.275 INFO    ] No existing commands found in stream
[2026-10-18 19:33:58,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:33:58,309.309 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-18 19:34:01,979.979 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:34:01,982.982 INFO    ] Checking for system updates...
[2026-10-18 19:34:02,032.032 INFO    ] 200
[2026-10-18 19:34:02,036.036 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:34:02,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:34:02,159.159 INFO    ] No update needed
[2026-10-18 19:34:02,166.166 INFO    ] Checking for camera pi updates...
[2026-10-18 19:34:02,221.221 INFO    ] 200
[2026-10-18 19:34:02,225.225 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:34:02,281.281 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:34:12,297.297 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:34:12,331.331 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:34:12,341.341 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:34:12,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:34:12,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:34:12,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:34:14,393.393 INFO    ] ================================================
[2026-10-18 19:34:14,408.408 INFO    ] Launching Daemon at Sun Oct 18 19:34:14 IST 2026
[2026-10-18 19:34:14,419.419 INFO    ] ================================================
[2026-10-18 19:34:15,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:34:14
[2026-10-18 19:34:15,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:34:15,880.880 INFO    ] Initializing speech engine...
[2026-10-18 19:34:15,889.889 INFO    ] 2026-10-18 19:34:15
[2026-10-18 19:34:16,161.161 INFO    ] 2026-10-18 19:34:16
[2026-10-18 19:34:16,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:34:16,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:34:16,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:34:16,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:34:16,690.690 INFO    ] time= 18/10/2026 19:34:16
[2026-10-18 19:34:16,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:34:16,716.716 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:34:16,839.839 INFO    ] No existing commands found in stream
[2026-10-18 19:34:21,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:34:21,858.858 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-18 19:34:23,349.349 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 19:34:23,354.354 INFO    ] Checking for system updates...
[2026-10-18 19:34:23,390.390 INFO    ] 200
[2026-10-18 19:34:23,393.393 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:34:23,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:34:23,454.454 INFO    ] No update needed
[2026-10-18 19:34:23,456.456 INFO    ] Checking for camera pi updates...
[2026-10-18 19:34:23,494.494 INFO    ] 200
[2026-10-18 19:34:23,496.496 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:34:23,541.541 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:34:33,554.554 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:34:33,591.591 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:34:33,600.600 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:34:33,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:34:33,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:34:33,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:34:35,654.654 INFO    ] ================================================
[2026-10-18 19:34:35,670.670 INFO    ] Launching Daemon at Sun Oct 18 19:34:35 IST 2026
[2026-10-18 19:34:35,680.680 INFO    ] ================================================
[2026-10-18 19:34:36,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:34:36
[2026-10-18 19:34:37,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:34:37,314.314 INFO    ] Initializing speech engine...
[2026-10-18 19:34:37,327.327 INFO    ] 2026-10-18 19:34:37
[2026-10-18 19:34:37,644.644 INFO    ] 2026-10-18 19:34:37
[2026-10-18 19:34:37,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:34:37,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:34:37,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:34:38,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:34:38,165.165 INFO    ] time= 18/10/2026 19:34:38
[2026-10-18 19:34:38,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:34:38,214.214 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:34:38,331.331 INFO    ] No existing commands found in stream
[2026-10-18 19:34:43,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:34:43,370.370 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-18 19:34:46,096.096 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:34:46,100.100 INFO    ] Checking for system updates...
[2026-10-18 19:34:46,136.136 INFO    ] 200
[2026-10-18 19:34:46,138.138 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:34:46,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:34:46,193.193 INFO    ] No update needed
[2026-10-18 19:34:46,195.195 INFO    ] Checking for camera pi updates...
[2026-10-18 19:34:46,229.229 INFO    ] 200
[2026-10-18 19:34:46,232.232 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:34:46,272.272 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:34:56,287.287 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:34:56,323.323 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:34:56,333.333 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:34:56,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:34:56,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:34:56,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:34:58,386.386 INFO    ] ================================================
[2026-10-18 19:34:58,401.401 INFO    ] Launching Daemon at Sun Oct 18 19:34:58 IST 2026
[2026-10-18 19:34:58,412.412 INFO    ] ================================================
[2026-10-18 19:34:58,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:34:58
[2026-10-18 19:34:59,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:34:59,963.963 INFO    ] Initializing speech engine...
[2026-10-18 19:34:59,971.971 INFO    ] 2026-10-18 19:34:59
[2026-10-18 19:35:00,256.256 INFO    ] 2026-10-18 19:35:00
[2026-10-18 19:35:00,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:35:00,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:35:00,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:35:00,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:35:00,769.769 INFO    ] time= 18/10/2026 19:35:00
[2026-10-18 19:35:00,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:35:00,815.815 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:35:00,952.952 INFO    ] No existing commands found in stream
[2026-10-18 19:35:05,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:35:05,979.979 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-18 19:35:08,792.792 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 19:35:08,796.796 INFO    ] Checking for system updates...
[2026-10-18 19:35:08,832.832 INFO    ] 200
[2026-10-18 19:35:08,835.835 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:35:08,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:35:08,890.890 INFO    ] No update needed
[2026-10-18 19:35:08,892.892 INFO    ] Checking for camera pi updates...
[2026-10-18 19:35:08,925.925 INFO    ] 200
[2026-10-18 19:35:08,928.928 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:35:08,974.974 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:35:18,990.990 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:35:19,024.024 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:35:19,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:35:19,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:35:19,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:35:19,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:35:21,086.086 INFO    ] ================================================
[2026-10-18 19:35:21,101.101 INFO    ] Launching Daemon at Sun Oct 18 19:35:21 IST 2026
[2026-10-18 19:35:21,112.112 INFO    ] ================================================
[2026-10-18 19:35:21,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:35:21
[2026-10-18 19:35:22,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:35:22,538.538 INFO    ] Initializing speech engine...
[2026-10-18 19:35:22,549.549 INFO    ] 2026-10-18 19:35:22
[2026-10-18 19:35:22,797.797 INFO    ] 2026-10-18 19:35:22
[2026-10-18 19:35:22,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:35:23,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:35:23,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:35:23,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:35:23,291.291 INFO    ] time= 18/10/2026 19:35:23
[2026-10-18 19:35:23,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:35:23,380.380 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:35:23,537.537 INFO    ] No existing commands found in stream
[2026-10-18 19:35:28,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:35:28,554.554 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-18 19:35:30,526.526 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:35:30,529.529 INFO    ] Checking for system updates...
[2026-10-18 19:35:30,564.564 INFO    ] 200
[2026-10-18 19:35:30,567.567 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:35:30,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:35:30,622.622 INFO    ] No update needed
[2026-10-18 19:35:30,624.624 INFO    ] Checking for camera pi updates...
[2026-10-18 19:35:30,658.658 INFO    ] 200
[2026-10-18 19:35:30,660.660 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:35:30,700.700 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:35:40,712.712 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:35:40,747.747 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:35:40,756.756 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:35:40,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:35:40,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:35:40,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:35:42,809.809 INFO    ] ================================================
[2026-10-18 19:35:42,824.824 INFO    ] Launching Daemon at Sun Oct 18 19:35:42 IST 2026
[2026-10-18 19:35:42,834.834 INFO    ] ================================================
[2026-10-18 19:35:43,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:35:43
[2026-10-18 19:35:44,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:35:44,301.301 INFO    ] Initializing speech engine...
[2026-10-18 19:35:44,314.314 INFO    ] 2026-10-18 19:35:44
[2026-10-18 19:35:44,569.569 INFO    ] 2026-10-18 19:35:44
[2026-10-18 19:35:44,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:35:44,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:35:44,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:35:45,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:35:45,111.111 INFO    ] time= 18/10/2026 19:35:45
[2026-10-18 19:35:45,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:35:45,156.156 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:35:45,263.263 INFO    ] No existing commands found in stream
[2026-10-18 19:35:50,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:35:50,286.286 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-18 19:35:54,615.615 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:35:54,618.618 INFO    ] Checking for system updates...
[2026-10-18 19:35:54,658.658 INFO    ] 200
[2026-10-18 19:35:54,661.661 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:35:54,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:35:54,715.715 INFO    ] No update needed
[2026-10-18 19:35:54,718.718 INFO    ] Checking for camera pi updates...
[2026-10-18 19:35:54,752.752 INFO    ] 200
[2026-10-18 19:35:54,755.755 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:35:54,795.795 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:36:04,809.809 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:36:04,843.843 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:36:04,853.853 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:36:04,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:36:04,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:36:04,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:36:06,908.908 INFO    ] ================================================
[2026-10-18 19:36:06,924.924 INFO    ] Launching Daemon at Sun Oct 18 19:36:06 IST 2026
[2026-10-18 19:36:06,935.935 INFO    ] ================================================
[2026-10-18 19:36:07,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:36:07
[2026-10-18 19:36:08,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:36:08,362.362 INFO    ] Initializing speech engine...
[2026-10-18 19:36:08,369.369 INFO    ] 2026-10-18 19:36:08
[2026-10-18 19:36:08,628.628 INFO    ] 2026-10-18 19:36:08
[2026-10-18 19:36:08,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:36:08,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:36:08,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:36:09,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:36:09,171.171 INFO    ] time= 18/10/2026 19:36:09
[2026-10-18 19:36:09,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:36:09,194.194 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:36:09,322.322 INFO    ] No existing commands found in stream
[2026-10-18 19:36:14,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:36:14,340.340 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-18 19:36:16,286.286 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:36:16,289.289 INFO    ] Checking for system updates...
[2026-10-18 19:36:16,324.324 INFO    ] 200
[2026-10-18 19:36:16,327.327 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:36:16,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:36:16,382.382 INFO    ] No update needed
[2026-10-18 19:36:16,384.384 INFO    ] Checking for camera pi updates...
[2026-10-18 19:36:16,418.418 INFO    ] 200
[2026-10-18 19:36:16,420.420 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:36:16,461.461 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:36:26,476.476 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:36:26,511.511 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:36:26,521.521 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:36:26,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:36:26,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:36:26,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:36:28,574.574 INFO    ] ================================================
[2026-10-18 19:36:28,589.589 INFO    ] Launching Daemon at Sun Oct 18 19:36:28 IST 2026
[2026-10-18 19:36:28,600.600 INFO    ] ================================================
[2026-10-18 19:36:29,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:36:29
[2026-10-18 19:36:29,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:36:30,020.020 INFO    ] Initializing speech engine...
[2026-10-18 19:36:30,030.030 INFO    ] 2026-10-18 19:36:30
[2026-10-18 19:36:30,275.275 INFO    ] 2026-10-18 19:36:30
[2026-10-18 19:36:30,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:36:30,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:36:30,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:36:30,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:36:30,756.756 INFO    ] time= 18/10/2026 19:36:30
[2026-10-18 19:36:30,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:36:30,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:36:30,988.988 INFO    ] No existing commands found in stream
[2026-10-18 19:36:36,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:36:36,009.009 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-18 19:36:37,095.095 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 19:36:37,097.097 INFO    ] Checking for system updates...
[2026-10-18 19:36:37,133.133 INFO    ] 200
[2026-10-18 19:36:37,135.135 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:36:37,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:36:37,190.190 INFO    ] No update needed
[2026-10-18 19:36:37,192.192 INFO    ] Checking for camera pi updates...
[2026-10-18 19:36:37,225.225 INFO    ] 200
[2026-10-18 19:36:37,228.228 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:36:37,274.274 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:36:47,288.288 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:36:47,323.323 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:36:47,332.332 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:36:47,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:36:47,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:36:47,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:36:49,384.384 INFO    ] ================================================
[2026-10-18 19:36:49,400.400 INFO    ] Launching Daemon at Sun Oct 18 19:36:49 IST 2026
[2026-10-18 19:36:49,411.411 INFO    ] ================================================
[2026-10-18 19:36:49,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:36:49
[2026-10-18 19:36:50,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:36:50,820.820 INFO    ] Initializing speech engine...
[2026-10-18 19:36:50,834.834 INFO    ] 2026-10-18 19:36:50
[2026-10-18 19:36:51,103.103 INFO    ] 2026-10-18 19:36:51
[2026-10-18 19:36:51,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:36:51,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:36:51,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:36:51,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:36:51,655.655 INFO    ] time= 18/10/2026 19:36:51
[2026-10-18 19:36:51,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:36:51,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:36:51,830.830 INFO    ] No existing commands found in stream
[2026-10-18 19:36:56,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:36:56,846.846 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-18 19:37:00,718.718 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:37:00,721.721 INFO    ] Checking for system updates...
[2026-10-18 19:37:00,765.765 INFO    ] 200
[2026-10-18 19:37:00,768.768 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:37:00,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:37:00,829.829 INFO    ] No update needed
[2026-10-18 19:37:00,832.832 INFO    ] Checking for camera pi updates...
[2026-10-18 19:37:00,868.868 INFO    ] 200
[2026-10-18 19:37:00,870.870 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:37:00,914.914 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:37:10,930.930 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:37:10,965.965 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:37:10,974.974 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:37:10,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:37:10,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:37:10,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:37:13,027.027 INFO    ] ================================================
[2026-10-18 19:37:13,043.043 INFO    ] Launching Daemon at Sun Oct 18 19:37:13 IST 2026
[2026-10-18 19:37:13,054.054 INFO    ] ================================================
[2026-10-18 19:37:13,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:37:13
[2026-10-18 19:37:14,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:37:14,478.478 INFO    ] Initializing speech engine...
[2026-10-18 19:37:14,485.485 INFO    ] 2026-10-18 19:37:14
[2026-10-18 19:37:14,755.755 INFO    ] 2026-10-18 19:37:14
[2026-10-18 19:37:14,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:37:14,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:37:15,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:37:15,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:37:15,185.185 INFO    ] time= 18/10/2026 19:37:15
[2026-10-18 19:37:15,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:37:15,218.218 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:37:15,365.365 INFO    ] No existing commands found in stream
[2026-10-18 19:37:20,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:37:20,393.393 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-18 19:37:24,229.229 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:37:24,232.232 INFO    ] Checking for system updates...
[2026-10-18 19:37:24,276.276 INFO    ] 200
[2026-10-18 19:37:24,279.279 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:37:24,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:37:24,341.341 INFO    ] No update needed
[2026-10-18 19:37:24,344.344 INFO    ] Checking for camera pi updates...
[2026-10-18 19:37:24,382.382 INFO    ] 200
[2026-10-18 19:37:24,384.384 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:37:24,425.425 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:37:34,439.439 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:37:34,474.474 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:37:34,484.484 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:37:34,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:37:34,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:37:34,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:37:36,538.538 INFO    ] ================================================
[2026-10-18 19:37:36,553.553 INFO    ] Launching Daemon at Sun Oct 18 19:37:36 IST 2026
[2026-10-18 19:37:36,564.564 INFO    ] ================================================
[2026-10-18 19:37:37,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:37:37
[2026-10-18 19:37:37,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:37:37,981.981 INFO    ] Initializing speech engine...
[2026-10-18 19:37:37,996.996 INFO    ] 2026-10-18 19:37:37
[2026-10-18 19:37:38,284.284 INFO    ] 2026-10-18 19:37:38
[2026-10-18 19:37:38,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:37:38,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:37:38,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:37:38,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:37:38,715.715 INFO    ] time= 18/10/2026 19:37:38
[2026-10-18 19:37:38,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:37:38,744.744 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:37:38,878.878 INFO    ] No existing commands found in stream
[2026-10-18 19:37:43,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:37:43,906.906 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-18 19:37:47,268.268 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 19:37:47,271.271 INFO    ] Checking for system updates...
[2026-10-18 19:37:47,308.308 INFO    ] 200
[2026-10-18 19:37:47,311.311 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:37:47,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:37:47,369.369 INFO    ] No update needed
[2026-10-18 19:37:47,372.372 INFO    ] Checking for camera pi updates...
[2026-10-18 19:37:47,407.407 INFO    ] 200
[2026-10-18 19:37:47,410.410 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:37:47,457.457 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:37:57,473.473 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:37:57,514.514 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:37:57,526.526 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:37:57,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:37:57,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:37:57,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:37:59,582.582 INFO    ] ================================================
[2026-10-18 19:37:59,598.598 INFO    ] Launching Daemon at Sun Oct 18 19:37:59 IST 2026
[2026-10-18 19:37:59,609.609 INFO    ] ================================================
[2026-10-18 19:38:00,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:38:00
[2026-10-18 19:38:00,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:38:01,276.276 INFO    ] Initializing speech engine...
[2026-10-18 19:38:01,285.285 INFO    ] 2026-10-18 19:38:01
[2026-10-18 19:38:01,673.673 INFO    ] 2026-10-18 19:38:01
[2026-10-18 19:38:01,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:38:01,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:38:01,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:38:02,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:38:02,139.139 INFO    ] time= 18/10/2026 19:38:02
[2026-10-18 19:38:02,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:38:02,201.201 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:38:02,300.300 INFO    ] No existing commands found in stream
[2026-10-18 19:38:07,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:38:07,333.333 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-18 19:38:10,861.861 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 19:38:10,864.864 INFO    ] Checking for system updates...
[2026-10-18 19:38:10,900.900 INFO    ] 200
[2026-10-18 19:38:10,902.902 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:38:10,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:38:10,957.957 INFO    ] No update needed
[2026-10-18 19:38:10,959.959 INFO    ] Checking for camera pi updates...
[2026-10-18 19:38:10,992.992 INFO    ] 200
[2026-10-18 19:38:10,995.995 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:38:11,040.040 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:38:21,054.054 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:38:21,089.089 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:38:21,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:38:21,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:38:21,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:38:21,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:38:23,152.152 INFO    ] ================================================
[2026-10-18 19:38:23,168.168 INFO    ] Launching Daemon at Sun Oct 18 19:38:23 IST 2026
[2026-10-18 19:38:23,180.180 INFO    ] ================================================
[2026-10-18 19:38:23,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:38:23
[2026-10-18 19:38:24,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:38:24,598.598 INFO    ] Initializing speech engine...
[2026-10-18 19:38:24,607.607 INFO    ] 2026-10-18 19:38:24
[2026-10-18 19:38:24,853.853 INFO    ] 2026-10-18 19:38:24
[2026-10-18 19:38:24,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:38:25,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:38:25,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:38:25,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:38:25,416.416 INFO    ] time= 18/10/2026 19:38:25
[2026-10-18 19:38:25,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:38:25,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:38:25,572.572 INFO    ] No existing commands found in stream
[2026-10-18 19:38:30,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:38:30,593.593 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-18 19:38:31,273.273 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:38:31,276.276 INFO    ] Checking for system updates...
[2026-10-18 19:38:31,311.311 INFO    ] 200
[2026-10-18 19:38:31,314.314 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:38:31,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:38:31,376.376 INFO    ] No update needed
[2026-10-18 19:38:31,379.379 INFO    ] Checking for camera pi updates...
[2026-10-18 19:38:31,416.416 INFO    ] 200
[2026-10-18 19:38:31,419.419 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:38:31,463.463 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:38:41,479.479 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:38:41,515.515 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:38:41,525.525 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:38:41,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:38:41,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:38:41,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:38:43,578.578 INFO    ] ================================================
[2026-10-18 19:38:43,594.594 INFO    ] Launching Daemon at Sun Oct 18 19:38:43 IST 2026
[2026-10-18 19:38:43,606.606 INFO    ] ================================================
[2026-10-18 19:38:44,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:38:44
[2026-10-18 19:38:44,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:38:45,056.056 INFO    ] Initializing speech engine...
[2026-10-18 19:38:45,067.067 INFO    ] 2026-10-18 19:38:45
[2026-10-18 19:38:45,328.328 INFO    ] 2026-10-18 19:38:45
[2026-10-18 19:38:45,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:38:45,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:38:45,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:38:45,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:38:45,870.870 INFO    ] time= 18/10/2026 19:38:45
[2026-10-18 19:38:45,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:38:45,897.897 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:38:46,021.021 INFO    ] No existing commands found in stream
[2026-10-18 19:38:51,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:38:51,039.039 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-18 19:38:52,705.705 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 19:38:52,708.708 INFO    ] Checking for system updates...
[2026-10-18 19:38:52,745.745 INFO    ] 200
[2026-10-18 19:38:52,748.748 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:38:52,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:38:52,806.806 INFO    ] No update needed
[2026-10-18 19:38:52,809.809 INFO    ] Checking for camera pi updates...
[2026-10-18 19:38:52,848.848 INFO    ] 200
[2026-10-18 19:38:52,851.851 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:38:52,900.900 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:39:02,913.913 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:39:02,955.955 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:39:02,967.967 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:39:02,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:39:02,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:39:02,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:39:05,028.028 INFO    ] ================================================
[2026-10-18 19:39:05,043.043 INFO    ] Launching Daemon at Sun Oct 18 19:39:05 IST 2026
[2026-10-18 19:39:05,054.054 INFO    ] ================================================
[2026-10-18 19:39:05,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:39:05
[2026-10-18 19:39:06,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:39:06,561.561 INFO    ] Initializing speech engine...
[2026-10-18 19:39:06,569.569 INFO    ] 2026-10-18 19:39:06
[2026-10-18 19:39:06,846.846 INFO    ] 2026-10-18 19:39:06
[2026-10-18 19:39:06,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:39:07,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:39:07,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:39:07,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:39:07,417.417 INFO    ] time= 18/10/2026 19:39:07
[2026-10-18 19:39:07,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:39:07,447.447 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:39:07,577.577 INFO    ] No existing commands found in stream
[2026-10-18 19:39:12,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:39:12,597.597 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-18 19:39:13,397.397 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 19:39:13,400.400 INFO    ] Checking for system updates...
[2026-10-18 19:39:13,437.437 INFO    ] 200
[2026-10-18 19:39:13,440.440 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:39:13,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:39:13,501.501 INFO    ] No update needed
[2026-10-18 19:39:13,504.504 INFO    ] Checking for camera pi updates...
[2026-10-18 19:39:13,542.542 INFO    ] 200
[2026-10-18 19:39:13,545.545 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:39:13,591.591 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:39:23,607.607 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:39:23,647.647 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:39:23,658.658 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:39:23,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:39:23,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:39:23,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:39:25,713.713 INFO    ] ================================================
[2026-10-18 19:39:25,729.729 INFO    ] Launching Daemon at Sun Oct 18 19:39:25 IST 2026
[2026-10-18 19:39:25,740.740 INFO    ] ================================================
[2026-10-18 19:39:26,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:39:26
[2026-10-18 19:39:26,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:39:27,144.144 INFO    ] Initializing speech engine...
[2026-10-18 19:39:27,166.166 INFO    ] 2026-10-18 19:39:27
[2026-10-18 19:39:27,424.424 INFO    ] 2026-10-18 19:39:27
[2026-10-18 19:39:27,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:39:27,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:39:27,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:39:27,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:39:27,984.984 INFO    ] time= 18/10/2026 19:39:27
[2026-10-18 19:39:27,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:39:28,014.014 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:39:28,170.170 INFO    ] No existing commands found in stream
[2026-10-18 19:39:33,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:39:33,182.182 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-18 19:39:36,062.062 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 19:39:36,065.065 INFO    ] Checking for system updates...
[2026-10-18 19:39:36,104.104 INFO    ] 200
[2026-10-18 19:39:36,106.106 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:39:36,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:39:36,162.162 INFO    ] No update needed
[2026-10-18 19:39:36,164.164 INFO    ] Checking for camera pi updates...
[2026-10-18 19:39:36,198.198 INFO    ] 200
[2026-10-18 19:39:36,200.200 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:39:36,241.241 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:39:46,256.256 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:39:46,290.290 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:39:46,300.300 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:39:46,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:39:46,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:39:46,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:39:48,353.353 INFO    ] ================================================
[2026-10-18 19:39:48,368.368 INFO    ] Launching Daemon at Sun Oct 18 19:39:48 IST 2026
[2026-10-18 19:39:48,379.379 INFO    ] ================================================
[2026-10-18 19:39:48,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:39:48
[2026-10-18 19:39:49,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:39:49,839.839 INFO    ] Initializing speech engine...
[2026-10-18 19:39:49,848.848 INFO    ] 2026-10-18 19:39:49
[2026-10-18 19:39:50,112.112 INFO    ] 2026-10-18 19:39:50
[2026-10-18 19:39:50,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:39:50,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:39:50,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:39:50,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:39:50,596.596 INFO    ] time= 18/10/2026 19:39:50
[2026-10-18 19:39:50,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:39:50,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:39:50,828.828 INFO    ] No existing commands found in stream
[2026-10-18 19:39:55,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:39:55,861.861 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-18 19:39:58,940.940 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:39:58,943.943 INFO    ] Checking for system updates...
[2026-10-18 19:39:58,979.979 INFO    ] 200
[2026-10-18 19:39:58,981.981 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:39:59,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:39:59,037.037 INFO    ] No update needed
[2026-10-18 19:39:59,039.039 INFO    ] Checking for camera pi updates...
[2026-10-18 19:39:59,078.078 INFO    ] 200
[2026-10-18 19:39:59,080.080 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:39:59,125.125 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:40:09,139.139 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:40:09,177.177 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:40:09,187.187 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:40:09,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:40:09,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:40:09,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:40:11,245.245 INFO    ] ================================================
[2026-10-18 19:40:11,261.261 INFO    ] Launching Daemon at Sun Oct 18 19:40:11 IST 2026
[2026-10-18 19:40:11,273.273 INFO    ] ================================================
[2026-10-18 19:40:11,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:40:11
[2026-10-18 19:40:12,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:40:12,741.741 INFO    ] Initializing speech engine...
[2026-10-18 19:40:12,749.749 INFO    ] 2026-10-18 19:40:12
[2026-10-18 19:40:13,008.008 INFO    ] 2026-10-18 19:40:13
[2026-10-18 19:40:13,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:40:13,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:40:13,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:40:13,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:40:13,554.554 INFO    ] time= 18/10/2026 19:40:13
[2026-10-18 19:40:13,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:40:13,580.580 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:40:13,707.707 INFO    ] No existing commands found in stream
[2026-10-18 19:40:18,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:40:18,721.721 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-18 19:40:22,584.584 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:40:22,587.587 INFO    ] Checking for system updates...
[2026-10-18 19:40:22,626.626 INFO    ] 200
[2026-10-18 19:40:22,628.628 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:40:22,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:40:22,684.684 INFO    ] No update needed
[2026-10-18 19:40:22,686.686 INFO    ] Checking for camera pi updates...
[2026-10-18 19:40:22,723.723 INFO    ] 200
[2026-10-18 19:40:22,726.726 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:40:22,767.767 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:40:32,782.782 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:40:32,823.823 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:40:32,834.834 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:40:32,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:40:32,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:40:32,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:40:34,892.892 INFO    ] ================================================
[2026-10-18 19:40:34,908.908 INFO    ] Launching Daemon at Sun Oct 18 19:40:34 IST 2026
[2026-10-18 19:40:34,919.919 INFO    ] ================================================
[2026-10-18 19:40:35,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:40:35
[2026-10-18 19:40:36,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:40:36,335.335 INFO    ] Initializing speech engine...
[2026-10-18 19:40:36,341.341 INFO    ] 2026-10-18 19:40:36
[2026-10-18 19:40:36,632.632 INFO    ] 2026-10-18 19:40:36
[2026-10-18 19:40:36,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:40:36,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:40:36,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:40:37,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:40:37,048.048 INFO    ] time= 18/10/2026 19:40:37
[2026-10-18 19:40:37,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:40:37,102.102 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:40:37,244.244 INFO    ] No existing commands found in stream
[2026-10-18 19:40:42,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:40:42,273.273 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-18 19:40:46,079.079 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:40:46,081.081 INFO    ] Checking for system updates...
[2026-10-18 19:40:46,118.118 INFO    ] 200
[2026-10-18 19:40:46,121.121 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:40:46,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:40:46,177.177 INFO    ] No update needed
[2026-10-18 19:40:46,180.180 INFO    ] Checking for camera pi updates...
[2026-10-18 19:40:46,217.217 INFO    ] 200
[2026-10-18 19:40:46,220.220 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:40:46,267.267 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:40:56,283.283 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:40:56,323.323 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:40:56,333.333 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:40:56,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:40:56,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:40:56,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:40:58,389.389 INFO    ] ================================================
[2026-10-18 19:40:58,404.404 INFO    ] Launching Daemon at Sun Oct 18 19:40:58 IST 2026
[2026-10-18 19:40:58,415.415 INFO    ] ================================================
[2026-10-18 19:40:59,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:40:59
[2026-10-18 19:40:59,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:41:00,010.010 INFO    ] Initializing speech engine...
[2026-10-18 19:41:00,021.021 INFO    ] 2026-10-18 19:41:00
[2026-10-18 19:41:00,295.295 INFO    ] 2026-10-18 19:41:00
[2026-10-18 19:41:00,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:41:00,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:41:00,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:41:00,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:41:00,838.838 INFO    ] time= 18/10/2026 19:41:00
[2026-10-18 19:41:00,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:41:00,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:41:01,008.008 INFO    ] No existing commands found in stream
[2026-10-18 19:41:06,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:41:06,042.042 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-18 19:41:08,659.659 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:41:08,662.662 INFO    ] Checking for system updates...
[2026-10-18 19:41:08,699.699 INFO    ] 200
[2026-10-18 19:41:08,702.702 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:41:08,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:41:08,756.756 INFO    ] No update needed
[2026-10-18 19:41:08,759.759 INFO    ] Checking for camera pi updates...
[2026-10-18 19:41:08,792.792 INFO    ] 200
[2026-10-18 19:41:08,795.795 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:41:08,838.838 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:41:18,853.853 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:41:18,889.889 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:41:18,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:41:18,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:41:18,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:41:18,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:41:20,950.950 INFO    ] ================================================
[2026-10-18 19:41:20,965.965 INFO    ] Launching Daemon at Sun Oct 18 19:41:20 IST 2026
[2026-10-18 19:41:20,976.976 INFO    ] ================================================
[2026-10-18 19:41:21,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:41:21
[2026-10-18 19:41:22,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:41:22,563.563 INFO    ] Initializing speech engine...
[2026-10-18 19:41:22,571.571 INFO    ] 2026-10-18 19:41:22
[2026-10-18 19:41:22,835.835 INFO    ] 2026-10-18 19:41:22
[2026-10-18 19:41:22,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:41:23,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:41:23,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:41:23,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:41:23,345.345 INFO    ] time= 18/10/2026 19:41:23
[2026-10-18 19:41:23,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:41:23,414.414 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:41:23,554.554 INFO    ] No existing commands found in stream
[2026-10-18 19:41:28,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:41:28,584.584 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-18 19:41:30,061.061 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:41:30,064.064 INFO    ] Checking for system updates...
[2026-10-18 19:41:30,103.103 INFO    ] 200
[2026-10-18 19:41:30,106.106 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:41:30,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:41:30,161.161 INFO    ] No update needed
[2026-10-18 19:41:30,163.163 INFO    ] Checking for camera pi updates...
[2026-10-18 19:41:30,200.200 INFO    ] 200
[2026-10-18 19:41:30,202.202 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:41:30,246.246 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:41:40,260.260 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:41:40,294.294 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:41:40,304.304 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:41:40,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:41:40,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:41:40,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:41:42,357.357 INFO    ] ================================================
[2026-10-18 19:41:42,373.373 INFO    ] Launching Daemon at Sun Oct 18 19:41:42 IST 2026
[2026-10-18 19:41:42,384.384 INFO    ] ================================================
[2026-10-18 19:41:42,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:41:42
[2026-10-18 19:41:43,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:41:43,786.786 INFO    ] Initializing speech engine...
[2026-10-18 19:41:43,794.794 INFO    ] 2026-10-18 19:41:43
[2026-10-18 19:41:44,081.081 INFO    ] 2026-10-18 19:41:44
[2026-10-18 19:41:44,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:41:44,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:41:44,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:41:44,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:41:44,588.588 INFO    ] time= 18/10/2026 19:41:44
[2026-10-18 19:41:44,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:41:44,671.671 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:41:44,825.825 INFO    ] No existing commands found in stream
[2026-10-18 19:41:49,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:41:49,849.849 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-18 19:41:50,381.381 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:41:50,384.384 INFO    ] Checking for system updates...
[2026-10-18 19:41:50,422.422 INFO    ] 200
[2026-10-18 19:41:50,425.425 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:41:50,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:41:50,479.479 INFO    ] No update needed
[2026-10-18 19:41:50,481.481 INFO    ] Checking for camera pi updates...
[2026-10-18 19:41:50,516.516 INFO    ] 200
[2026-10-18 19:41:50,518.518 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:41:50,558.558 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:42:00,573.573 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d75150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:42:00,608.608 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:42:00,617.617 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:42:00,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:42:00,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:42:00,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:42:02,675.675 INFO    ] ================================================
[2026-10-18 19:42:02,701.701 INFO    ] Launching Daemon at Sun Oct 18 19:42:02 IST 2026
[2026-10-18 19:42:02,721.721 INFO    ] ================================================
[2026-10-18 19:42:03,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:42:03
[2026-10-18 19:42:04,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:42:04,380.380 INFO    ] Initializing speech engine...
[2026-10-18 19:42:04,394.394 INFO    ] 2026-10-18 19:42:04
[2026-10-18 19:42:04,701.701 INFO    ] 2026-10-18 19:42:04
[2026-10-18 19:42:04,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:42:04,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:42:05,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:42:05,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:42:05,207.207 INFO    ] time= 18/10/2026 19:42:05
[2026-10-18 19:42:05,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:42:05,254.254 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:42:05,362.362 INFO    ] No existing commands found in stream
[2026-10-18 19:42:10,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:42:10,395.395 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-18 19:42:13,631.631 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:42:13,634.634 INFO    ] Checking for system updates...
[2026-10-18 19:42:13,670.670 INFO    ] 200
[2026-10-18 19:42:13,673.673 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:42:13,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:42:13,730.730 INFO    ] No update needed
[2026-10-18 19:42:13,732.732 INFO    ] Checking for camera pi updates...
[2026-10-18 19:42:13,766.766 INFO    ] 200
[2026-10-18 19:42:13,769.769 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:42:13,813.813 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:42:23,830.830 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:42:23,869.869 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:42:23,880.880 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:42:23,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:42:23,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:42:23,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:42:25,934.934 INFO    ] ================================================
[2026-10-18 19:42:25,951.951 INFO    ] Launching Daemon at Sun Oct 18 19:42:25 IST 2026
[2026-10-18 19:42:25,962.962 INFO    ] ================================================
[2026-10-18 19:42:26,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:42:26
[2026-10-18 19:42:27,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:42:27,390.390 INFO    ] Initializing speech engine...
[2026-10-18 19:42:27,393.393 INFO    ] 2026-10-18 19:42:27
[2026-10-18 19:42:27,651.651 INFO    ] 2026-10-18 19:42:27
[2026-10-18 19:42:27,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:42:27,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:42:27,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:42:28,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:42:28,147.147 INFO    ] time= 18/10/2026 19:42:28
[2026-10-18 19:42:28,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:42:28,225.225 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:42:28,360.360 INFO    ] No existing commands found in stream
[2026-10-18 19:42:33,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:42:33,386.386 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-18 19:42:37,364.364 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 19:42:37,366.366 INFO    ] Checking for system updates...
[2026-10-18 19:42:37,402.402 INFO    ] 200
[2026-10-18 19:42:37,404.404 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:42:37,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:42:37,468.468 INFO    ] No update needed
[2026-10-18 19:42:37,471.471 INFO    ] Checking for camera pi updates...
[2026-10-18 19:42:37,507.507 INFO    ] 200
[2026-10-18 19:42:37,509.509 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:42:37,552.552 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:42:47,567.567 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:42:47,601.601 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:42:47,611.611 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:42:47,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:42:47,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:42:47,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:42:49,663.663 INFO    ] ================================================
[2026-10-18 19:42:49,678.678 INFO    ] Launching Daemon at Sun Oct 18 19:42:49 IST 2026
[2026-10-18 19:42:49,688.688 INFO    ] ================================================
[2026-10-18 19:42:50,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:42:50
[2026-10-18 19:42:50,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:42:51,113.113 INFO    ] Initializing speech engine...
[2026-10-18 19:42:51,127.127 INFO    ] 2026-10-18 19:42:51
[2026-10-18 19:42:51,395.395 INFO    ] 2026-10-18 19:42:51
[2026-10-18 19:42:51,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:42:51,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:42:51,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:42:51,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:42:52,005.005 INFO    ] time= 18/10/2026 19:42:51
[2026-10-18 19:42:52,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:42:52,029.029 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:42:52,162.162 INFO    ] No existing commands found in stream
[2026-10-18 19:42:57,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:42:57,189.189 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-18 19:43:01,040.040 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:43:01,042.042 INFO    ] Checking for system updates...
[2026-10-18 19:43:01,081.081 INFO    ] 200
[2026-10-18 19:43:01,084.084 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:43:01,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:43:01,156.156 INFO    ] No update needed
[2026-10-18 19:43:01,158.158 INFO    ] Checking for camera pi updates...
[2026-10-18 19:43:01,194.194 INFO    ] 200
[2026-10-18 19:43:01,196.196 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:43:01,236.236 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:43:11,248.248 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:43:11,283.283 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:43:11,293.293 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:43:11,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:43:11,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:43:11,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:43:13,346.346 INFO    ] ================================================
[2026-10-18 19:43:13,361.361 INFO    ] Launching Daemon at Sun Oct 18 19:43:13 IST 2026
[2026-10-18 19:43:13,372.372 INFO    ] ================================================
[2026-10-18 19:43:14,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:43:14
[2026-10-18 19:43:14,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:43:14,960.960 INFO    ] Initializing speech engine...
[2026-10-18 19:43:14,974.974 INFO    ] 2026-10-18 19:43:14
[2026-10-18 19:43:15,257.257 INFO    ] 2026-10-18 19:43:15
[2026-10-18 19:43:15,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:43:15,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:43:15,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:43:15,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:43:15,834.834 INFO    ] time= 18/10/2026 19:43:15
[2026-10-18 19:43:15,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:43:15,871.871 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:43:16,015.015 INFO    ] No existing commands found in stream
[2026-10-18 19:43:21,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:43:21,034.034 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-18 19:43:25,496.496 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:43:25,499.499 INFO    ] Checking for system updates...
[2026-10-18 19:43:25,541.541 INFO    ] 200
[2026-10-18 19:43:25,543.543 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:43:25,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:43:25,598.598 INFO    ] No update needed
[2026-10-18 19:43:25,601.601 INFO    ] Checking for camera pi updates...
[2026-10-18 19:43:25,634.634 INFO    ] 200
[2026-10-18 19:43:25,637.637 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:43:25,678.678 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:43:35,692.692 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:43:35,728.728 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:43:35,738.738 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:43:35,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:43:35,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:43:35,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:43:37,791.791 INFO    ] ================================================
[2026-10-18 19:43:37,806.806 INFO    ] Launching Daemon at Sun Oct 18 19:43:37 IST 2026
[2026-10-18 19:43:37,816.816 INFO    ] ================================================
[2026-10-18 19:43:38,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:43:38
[2026-10-18 19:43:39,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:43:39,283.283 INFO    ] Initializing speech engine...
[2026-10-18 19:43:39,288.288 INFO    ] 2026-10-18 19:43:39
[2026-10-18 19:43:39,549.549 INFO    ] 2026-10-18 19:43:39
[2026-10-18 19:43:39,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:43:39,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:43:39,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:43:40,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:43:40,094.094 INFO    ] time= 18/10/2026 19:43:40
[2026-10-18 19:43:40,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:43:40,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:43:40,249.249 INFO    ] No existing commands found in stream
[2026-10-18 19:43:45,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:43:45,280.280 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-18 19:43:49,471.471 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:43:49,474.474 INFO    ] Checking for system updates...
[2026-10-18 19:43:49,511.511 INFO    ] 200
[2026-10-18 19:43:49,514.514 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:43:49,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:43:49,571.571 INFO    ] No update needed
[2026-10-18 19:43:49,573.573 INFO    ] Checking for camera pi updates...
[2026-10-18 19:43:49,613.613 INFO    ] 200
[2026-10-18 19:43:49,616.616 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:43:49,667.667 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:43:59,683.683 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:43:59,723.723 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:43:59,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:43:59,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:43:59,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:43:59,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:44:01,790.790 INFO    ] ================================================
[2026-10-18 19:44:01,805.805 INFO    ] Launching Daemon at Sun Oct 18 19:44:01 IST 2026
[2026-10-18 19:44:01,816.816 INFO    ] ================================================
[2026-10-18 19:44:02,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:44:02
[2026-10-18 19:44:03,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:44:03,536.536 INFO    ] Initializing speech engine...
[2026-10-18 19:44:03,539.539 INFO    ] 2026-10-18 19:44:03
[2026-10-18 19:44:03,830.830 INFO    ] 2026-10-18 19:44:03
[2026-10-18 19:44:03,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:44:04,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:44:04,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:44:04,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:44:04,236.236 INFO    ] time= 18/10/2026 19:44:04
[2026-10-18 19:44:04,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:44:04,306.306 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:44:04,431.431 INFO    ] No existing commands found in stream
[2026-10-18 19:44:09,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:44:09,447.447 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-18 19:44:12,632.632 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:44:12,634.634 INFO    ] Checking for system updates...
[2026-10-18 19:44:12,673.673 INFO    ] 200
[2026-10-18 19:44:12,676.676 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:44:12,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:44:12,736.736 INFO    ] No update needed
[2026-10-18 19:44:12,738.738 INFO    ] Checking for camera pi updates...
[2026-10-18 19:44:12,774.774 INFO    ] 200
[2026-10-18 19:44:12,777.777 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:44:12,817.817 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:44:22,832.832 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:44:22,868.868 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:44:22,878.878 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:44:22,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:44:22,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:44:22,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:44:24,931.931 INFO    ] ================================================
[2026-10-18 19:44:24,946.946 INFO    ] Launching Daemon at Sun Oct 18 19:44:24 IST 2026
[2026-10-18 19:44:24,957.957 INFO    ] ================================================
[2026-10-18 19:44:25,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:44:25
[2026-10-18 19:44:26,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:44:26,376.376 INFO    ] Initializing speech engine...
[2026-10-18 19:44:26,384.384 INFO    ] 2026-10-18 19:44:26
[2026-10-18 19:44:26,636.636 INFO    ] 2026-10-18 19:44:26
[2026-10-18 19:44:26,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:44:26,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:44:26,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:44:27,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:44:27,115.115 INFO    ] time= 18/10/2026 19:44:27
[2026-10-18 19:44:27,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:44:27,208.208 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:44:27,339.339 INFO    ] No existing commands found in stream
[2026-10-18 19:44:32,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:44:32,370.370 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-18 19:44:35,926.926 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 19:44:35,928.928 INFO    ] Checking for system updates...
[2026-10-18 19:44:35,964.964 INFO    ] 200
[2026-10-18 19:44:35,966.966 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:44:36,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:44:36,020.020 INFO    ] No update needed
[2026-10-18 19:44:36,023.023 INFO    ] Checking for camera pi updates...
[2026-10-18 19:44:36,056.056 INFO    ] 200
[2026-10-18 19:44:36,058.058 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:44:36,104.104 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:44:46,119.119 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:44:46,154.154 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:44:46,164.164 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:44:46,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:44:46,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:44:46,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:44:48,216.216 INFO    ] ================================================
[2026-10-18 19:44:48,232.232 INFO    ] Launching Daemon at Sun Oct 18 19:44:48 IST 2026
[2026-10-18 19:44:48,243.243 INFO    ] ================================================
[2026-10-18 19:44:48,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:44:48
[2026-10-18 19:44:49,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:44:49,831.831 INFO    ] Initializing speech engine...
[2026-10-18 19:44:49,838.838 INFO    ] 2026-10-18 19:44:49
[2026-10-18 19:44:50,111.111 INFO    ] 2026-10-18 19:44:50
[2026-10-18 19:44:50,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:44:50,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:44:50,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:44:50,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:44:50,623.623 INFO    ] time= 18/10/2026 19:44:50
[2026-10-18 19:44:50,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:44:50,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:44:50,819.819 INFO    ] No existing commands found in stream
[2026-10-18 19:44:55,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:44:55,844.844 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-18 19:44:56,416.416 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:44:56,419.419 INFO    ] Checking for system updates...
[2026-10-18 19:44:56,455.455 INFO    ] 200
[2026-10-18 19:44:56,458.458 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:44:56,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:44:56,513.513 INFO    ] No update needed
[2026-10-18 19:44:56,516.516 INFO    ] Checking for camera pi updates...
[2026-10-18 19:44:56,550.550 INFO    ] 200
[2026-10-18 19:44:56,552.552 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:44:56,593.593 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:45:06,610.610 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:45:06,644.644 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:45:06,654.654 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:45:06,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:45:06,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:45:06,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:45:08,706.706 INFO    ] ================================================
[2026-10-18 19:45:08,721.721 INFO    ] Launching Daemon at Sun Oct 18 19:45:08 IST 2026
[2026-10-18 19:45:08,731.731 INFO    ] ================================================
[2026-10-18 19:45:09,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:45:09
[2026-10-18 19:45:09,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:45:10,182.182 INFO    ] Initializing speech engine...
[2026-10-18 19:45:10,196.196 INFO    ] 2026-10-18 19:45:10
[2026-10-18 19:45:10,477.477 INFO    ] 2026-10-18 19:45:10
[2026-10-18 19:45:10,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:45:10,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:45:10,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:45:10,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:45:11,004.004 INFO    ] time= 18/10/2026 19:45:10
[2026-10-18 19:45:11,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:45:11,104.104 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:45:11,228.228 INFO    ] No existing commands found in stream
[2026-10-18 19:45:16,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:45:16,250.250 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-18 19:45:19,585.585 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 19:45:19,588.588 INFO    ] Checking for system updates...
[2026-10-18 19:45:19,627.627 INFO    ] 200
[2026-10-18 19:45:19,630.630 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:45:19,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:45:19,690.690 INFO    ] No update needed
[2026-10-18 19:45:19,692.692 INFO    ] Checking for camera pi updates...
[2026-10-18 19:45:19,728.728 INFO    ] 200
[2026-10-18 19:45:19,731.731 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:45:19,771.771 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:45:29,786.786 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:45:29,821.821 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:45:29,830.830 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:45:29,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:45:29,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:45:29,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:45:31,884.884 INFO    ] ================================================
[2026-10-18 19:45:31,901.901 INFO    ] Launching Daemon at Sun Oct 18 19:45:31 IST 2026
[2026-10-18 19:45:31,913.913 INFO    ] ================================================
[2026-10-18 19:45:32,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:45:32
[2026-10-18 19:45:33,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:45:33,431.431 INFO    ] Initializing speech engine...
[2026-10-18 19:45:33,438.438 INFO    ] 2026-10-18 19:45:33
[2026-10-18 19:45:33,698.698 INFO    ] 2026-10-18 19:45:33
[2026-10-18 19:45:33,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:45:33,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:45:33,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:45:34,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:45:34,240.240 INFO    ] time= 18/10/2026 19:45:34
[2026-10-18 19:45:34,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:45:34,264.264 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:45:34,396.396 INFO    ] No existing commands found in stream
[2026-10-18 19:45:39,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:45:39,422.422 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-18 19:45:41,230.230 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:45:41,233.233 INFO    ] Checking for system updates...
[2026-10-18 19:45:41,269.269 INFO    ] 200
[2026-10-18 19:45:41,271.271 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:45:41,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:45:41,326.326 INFO    ] No update needed
[2026-10-18 19:45:41,329.329 INFO    ] Checking for camera pi updates...
[2026-10-18 19:45:41,362.362 INFO    ] 200
[2026-10-18 19:45:41,365.365 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:45:41,409.409 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:45:51,423.423 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:45:51,458.458 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:45:51,467.467 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:45:51,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:45:51,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:45:51,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:45:53,521.521 INFO    ] ================================================
[2026-10-18 19:45:53,537.537 INFO    ] Launching Daemon at Sun Oct 18 19:45:53 IST 2026
[2026-10-18 19:45:53,548.548 INFO    ] ================================================
[2026-10-18 19:45:54,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:45:54
[2026-10-18 19:45:54,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:45:55,148.148 INFO    ] Initializing speech engine...
[2026-10-18 19:45:55,159.159 INFO    ] 2026-10-18 19:45:55
[2026-10-18 19:45:55,463.463 INFO    ] 2026-10-18 19:45:55
[2026-10-18 19:45:55,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:45:55,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:45:55,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:45:55,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:45:55,971.971 INFO    ] time= 18/10/2026 19:45:55
[2026-10-18 19:45:55,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:45:55,996.996 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:45:56,119.119 INFO    ] No existing commands found in stream
[2026-10-18 19:46:01,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:46:01,140.140 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-18 19:46:03,161.161 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 19:46:03,164.164 INFO    ] Checking for system updates...
[2026-10-18 19:46:03,214.214 INFO    ] 200
[2026-10-18 19:46:03,217.217 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:46:03,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:46:03,291.291 INFO    ] No update needed
[2026-10-18 19:46:03,294.294 INFO    ] Checking for camera pi updates...
[2026-10-18 19:46:03,330.330 INFO    ] 200
[2026-10-18 19:46:03,332.332 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:46:03,387.387 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:46:13,403.403 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:46:13,437.437 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:46:13,447.447 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:46:13,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:46:13,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:46:13,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:46:15,499.499 INFO    ] ================================================
[2026-10-18 19:46:15,515.515 INFO    ] Launching Daemon at Sun Oct 18 19:46:15 IST 2026
[2026-10-18 19:46:15,526.526 INFO    ] ================================================
[2026-10-18 19:46:16,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:46:16
[2026-10-18 19:46:16,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:46:17,113.113 INFO    ] Initializing speech engine...
[2026-10-18 19:46:17,122.122 INFO    ] 2026-10-18 19:46:17
[2026-10-18 19:46:17,407.407 INFO    ] 2026-10-18 19:46:17
[2026-10-18 19:46:17,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:46:17,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:46:17,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:46:17,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:46:17,957.957 INFO    ] time= 18/10/2026 19:46:17
[2026-10-18 19:46:17,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:46:17,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:46:18,112.112 INFO    ] No existing commands found in stream
[2026-10-18 19:46:23,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:46:23,131.131 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-18 19:46:27,379.379 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:46:27,382.382 INFO    ] Checking for system updates...
[2026-10-18 19:46:27,418.418 INFO    ] 200
[2026-10-18 19:46:27,421.421 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:46:27,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:46:27,482.482 INFO    ] No update needed
[2026-10-18 19:46:27,485.485 INFO    ] Checking for camera pi updates...
[2026-10-18 19:46:27,522.522 INFO    ] 200
[2026-10-18 19:46:27,526.526 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:46:27,567.567 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:46:37,583.583 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:46:37,622.622 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:46:37,632.632 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:46:37,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:46:37,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:46:37,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:46:39,687.687 INFO    ] ================================================
[2026-10-18 19:46:39,702.702 INFO    ] Launching Daemon at Sun Oct 18 19:46:39 IST 2026
[2026-10-18 19:46:39,713.713 INFO    ] ================================================
[2026-10-18 19:46:40,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:46:40
[2026-10-18 19:46:40,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:46:41,166.166 INFO    ] Initializing speech engine...
[2026-10-18 19:46:41,173.173 INFO    ] 2026-10-18 19:46:41
[2026-10-18 19:46:41,421.421 INFO    ] 2026-10-18 19:46:41
[2026-10-18 19:46:41,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:46:41,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:46:41,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:46:41,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:46:41,975.975 INFO    ] time= 18/10/2026 19:46:41
[2026-10-18 19:46:41,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:46:42,000.000 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:46:42,176.176 INFO    ] No existing commands found in stream
[2026-10-18 19:46:47,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:46:47,209.209 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-18 19:46:51,388.388 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:46:51,391.391 INFO    ] Checking for system updates...
[2026-10-18 19:46:51,427.427 INFO    ] 200
[2026-10-18 19:46:51,430.430 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:46:51,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:46:51,486.486 INFO    ] No update needed
[2026-10-18 19:46:51,489.489 INFO    ] Checking for camera pi updates...
[2026-10-18 19:46:51,523.523 INFO    ] 200
[2026-10-18 19:46:51,526.526 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:46:51,566.566 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:47:01,579.579 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:47:01,652.652 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:47:01,670.670 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:47:01,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:47:01,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:47:01,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:47:03,736.736 INFO    ] ================================================
[2026-10-18 19:47:03,751.751 INFO    ] Launching Daemon at Sun Oct 18 19:47:03 IST 2026
[2026-10-18 19:47:03,763.763 INFO    ] ================================================
[2026-10-18 19:47:04,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:47:04
[2026-10-18 19:47:04,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:47:05,203.203 INFO    ] Initializing speech engine...
[2026-10-18 19:47:05,219.219 INFO    ] 2026-10-18 19:47:05
[2026-10-18 19:47:05,498.498 INFO    ] 2026-10-18 19:47:05
[2026-10-18 19:47:05,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:47:05,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:47:05,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:47:05,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:47:06,009.009 INFO    ] time= 18/10/2026 19:47:05
[2026-10-18 19:47:06,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:47:06,102.102 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:47:06,266.266 INFO    ] No existing commands found in stream
[2026-10-18 19:47:11,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:47:11,295.295 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-18 19:47:15,498.498 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:47:15,501.501 INFO    ] Checking for system updates...
[2026-10-18 19:47:15,539.539 INFO    ] 200
[2026-10-18 19:47:15,542.542 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:47:15,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:47:15,602.602 INFO    ] No update needed
[2026-10-18 19:47:15,604.604 INFO    ] Checking for camera pi updates...
[2026-10-18 19:47:15,637.637 INFO    ] 200
[2026-10-18 19:47:15,639.639 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:47:15,679.679 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:47:25,694.694 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:47:25,730.730 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:47:25,739.739 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:47:25,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:47:25,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:47:25,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:47:27,791.791 INFO    ] ================================================
[2026-10-18 19:47:27,807.807 INFO    ] Launching Daemon at Sun Oct 18 19:47:27 IST 2026
[2026-10-18 19:47:27,818.818 INFO    ] ================================================
[2026-10-18 19:47:28,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:47:28
[2026-10-18 19:47:28,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:47:29,236.236 INFO    ] Initializing speech engine...
[2026-10-18 19:47:29,249.249 INFO    ] 2026-10-18 19:47:29
[2026-10-18 19:47:29,496.496 INFO    ] 2026-10-18 19:47:29
[2026-10-18 19:47:29,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:47:29,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:47:29,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:47:29,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:47:29,986.986 INFO    ] time= 18/10/2026 19:47:29
[2026-10-18 19:47:30,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:47:30,059.059 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:47:30,204.204 INFO    ] No existing commands found in stream
[2026-10-18 19:47:35,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:47:35,219.219 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-18 19:47:37,363.363 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 19:47:37,369.369 INFO    ] Checking for system updates...
[2026-10-18 19:47:37,413.413 INFO    ] 200
[2026-10-18 19:47:37,415.415 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:47:37,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:47:37,470.470 INFO    ] No update needed
[2026-10-18 19:47:37,472.472 INFO    ] Checking for camera pi updates...
[2026-10-18 19:47:37,506.506 INFO    ] 200
[2026-10-18 19:47:37,508.508 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:47:37,548.548 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:47:47,563.563 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:47:47,599.599 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:47:47,609.609 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:47:47,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:47:47,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:47:47,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:47:49,662.662 INFO    ] ================================================
[2026-10-18 19:47:49,678.678 INFO    ] Launching Daemon at Sun Oct 18 19:47:49 IST 2026
[2026-10-18 19:47:49,689.689 INFO    ] ================================================
[2026-10-18 19:47:50,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:47:50
[2026-10-18 19:47:51,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:47:51,318.318 INFO    ] Initializing speech engine...
[2026-10-18 19:47:51,332.332 INFO    ] 2026-10-18 19:47:51
[2026-10-18 19:47:51,637.637 INFO    ] 2026-10-18 19:47:51
[2026-10-18 19:47:51,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:47:51,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:47:51,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:47:52,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:47:52,157.157 INFO    ] time= 18/10/2026 19:47:52
[2026-10-18 19:47:52,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:47:52,198.198 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:47:52,322.322 INFO    ] No existing commands found in stream
[2026-10-18 19:47:57,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:47:57,356.356 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-18 19:48:00,713.713 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 19:48:00,716.716 INFO    ] Checking for system updates...
[2026-10-18 19:48:00,753.753 INFO    ] 200
[2026-10-18 19:48:00,755.755 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:48:00,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:48:00,816.816 INFO    ] No update needed
[2026-10-18 19:48:00,819.819 INFO    ] Checking for camera pi updates...
[2026-10-18 19:48:00,854.854 INFO    ] 200
[2026-10-18 19:48:00,857.857 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:48:00,897.897 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:48:10,909.909 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:48:10,943.943 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:48:10,953.953 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:48:10,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:48:10,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:48:10,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:48:13,006.006 INFO    ] ================================================
[2026-10-18 19:48:13,024.024 INFO    ] Launching Daemon at Sun Oct 18 19:48:13 IST 2026
[2026-10-18 19:48:13,036.036 INFO    ] ================================================
[2026-10-18 19:48:13,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:48:13
[2026-10-18 19:48:14,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:48:14,446.446 INFO    ] Initializing speech engine...
[2026-10-18 19:48:14,465.465 INFO    ] 2026-10-18 19:48:14
[2026-10-18 19:48:14,715.715 INFO    ] 2026-10-18 19:48:14
[2026-10-18 19:48:14,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:48:15,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:48:15,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:48:15,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:48:15,219.219 INFO    ] time= 18/10/2026 19:48:15
[2026-10-18 19:48:15,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:48:15,288.288 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:48:15,441.441 INFO    ] No existing commands found in stream
[2026-10-18 19:48:20,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:48:20,463.463 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-18 19:48:21,906.906 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 19:48:21,909.909 INFO    ] Checking for system updates...
[2026-10-18 19:48:21,948.948 INFO    ] 200
[2026-10-18 19:48:21,950.950 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:48:22,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:48:22,013.013 INFO    ] No update needed
[2026-10-18 19:48:22,016.016 INFO    ] Checking for camera pi updates...
[2026-10-18 19:48:22,049.049 INFO    ] 200
[2026-10-18 19:48:22,051.051 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:48:22,096.096 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:48:32,111.111 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:48:32,149.149 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:48:32,160.160 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:48:32,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:48:32,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:48:32,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:48:34,217.217 INFO    ] ================================================
[2026-10-18 19:48:34,232.232 INFO    ] Launching Daemon at Sun Oct 18 19:48:34 IST 2026
[2026-10-18 19:48:34,243.243 INFO    ] ================================================
[2026-10-18 19:48:34,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:48:34
[2026-10-18 19:48:35,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:48:35,663.663 INFO    ] Initializing speech engine...
[2026-10-18 19:48:35,678.678 INFO    ] 2026-10-18 19:48:35
[2026-10-18 19:48:35,960.960 INFO    ] 2026-10-18 19:48:35
[2026-10-18 19:48:35,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:48:36,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:48:36,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:48:36,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:48:36,460.460 INFO    ] time= 18/10/2026 19:48:36
[2026-10-18 19:48:36,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:48:36,568.568 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:48:36,733.733 INFO    ] No existing commands found in stream
[2026-10-18 19:48:41,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:48:41,761.761 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-18 19:48:45,866.866 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:48:45,869.869 INFO    ] Checking for system updates...
[2026-10-18 19:48:45,905.905 INFO    ] 200
[2026-10-18 19:48:45,907.907 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:48:45,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:48:45,962.962 INFO    ] No update needed
[2026-10-18 19:48:45,964.964 INFO    ] Checking for camera pi updates...
[2026-10-18 19:48:46,001.001 INFO    ] 200
[2026-10-18 19:48:46,003.003 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:48:46,042.042 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:48:56,057.057 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:48:56,092.092 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:48:56,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:48:56,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:48:56,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:48:56,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:48:58,157.157 INFO    ] ================================================
[2026-10-18 19:48:58,173.173 INFO    ] Launching Daemon at Sun Oct 18 19:48:58 IST 2026
[2026-10-18 19:48:58,185.185 INFO    ] ================================================
[2026-10-18 19:48:58,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:48:58
[2026-10-18 19:48:59,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:48:59,653.653 INFO    ] Initializing speech engine...
[2026-10-18 19:48:59,667.667 INFO    ] 2026-10-18 19:48:59
[2026-10-18 19:48:59,945.945 INFO    ] 2026-10-18 19:48:59
[2026-10-18 19:48:59,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:49:00,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:49:00,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:49:00,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:49:00,495.495 INFO    ] time= 18/10/2026 19:49:00
[2026-10-18 19:49:00,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:49:00,531.531 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:49:00,652.652 INFO    ] No existing commands found in stream
[2026-10-18 19:49:05,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:49:05,687.687 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-18 19:49:07,654.654 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:49:07,657.657 INFO    ] Checking for system updates...
[2026-10-18 19:49:07,697.697 INFO    ] 200
[2026-10-18 19:49:07,700.700 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:49:07,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:49:07,754.754 INFO    ] No update needed
[2026-10-18 19:49:07,757.757 INFO    ] Checking for camera pi updates...
[2026-10-18 19:49:07,790.790 INFO    ] 200
[2026-10-18 19:49:07,794.794 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:49:07,849.849 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:49:17,865.865 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:49:17,902.902 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:49:17,912.912 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:49:17,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:49:17,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:49:17,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:49:19,965.965 INFO    ] ================================================
[2026-10-18 19:49:19,984.984 INFO    ] Launching Daemon at Sun Oct 18 19:49:19 IST 2026
[2026-10-18 19:49:20,995.995 INFO    ] ================================================
[2026-10-18 19:49:20,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:49:20
[2026-10-18 19:49:21,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:49:21,399.399 INFO    ] Initializing speech engine...
[2026-10-18 19:49:21,408.408 INFO    ] 2026-10-18 19:49:21
[2026-10-18 19:49:21,699.699 INFO    ] 2026-10-18 19:49:21
[2026-10-18 19:49:21,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:49:21,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:49:21,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:49:22,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:49:22,188.188 INFO    ] time= 18/10/2026 19:49:22
[2026-10-18 19:49:22,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:49:22,297.297 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:49:22,395.395 INFO    ] No existing commands found in stream
[2026-10-18 19:49:27,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:49:27,410.410 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-18 19:49:31,698.698 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:49:31,701.701 INFO    ] Checking for system updates...
[2026-10-18 19:49:31,744.744 INFO    ] 200
[2026-10-18 19:49:31,746.746 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:49:31,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:49:31,812.812 INFO    ] No update needed
[2026-10-18 19:49:31,815.815 INFO    ] Checking for camera pi updates...
[2026-10-18 19:49:31,851.851 INFO    ] 200
[2026-10-18 19:49:31,854.854 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:49:31,908.908 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:49:41,923.923 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:49:41,958.958 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:49:41,967.967 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:49:41,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:49:41,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:49:41,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:49:44,021.021 INFO    ] ================================================
[2026-10-18 19:49:44,037.037 INFO    ] Launching Daemon at Sun Oct 18 19:49:44 IST 2026
[2026-10-18 19:49:44,049.049 INFO    ] ================================================
[2026-10-18 19:49:44,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:49:44
[2026-10-18 19:49:45,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:49:45,655.655 INFO    ] Initializing speech engine...
[2026-10-18 19:49:45,669.669 INFO    ] 2026-10-18 19:49:45
[2026-10-18 19:49:45,950.950 INFO    ] 2026-10-18 19:49:45
[2026-10-18 19:49:45,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:49:46,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:49:46,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:49:46,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:49:46,500.500 INFO    ] time= 18/10/2026 19:49:46
[2026-10-18 19:49:46,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:49:46,526.526 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:49:46,647.647 INFO    ] No existing commands found in stream
[2026-10-18 19:49:51,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:49:51,673.673 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-18 19:49:53,804.804 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:49:53,807.807 INFO    ] Checking for system updates...
[2026-10-18 19:49:53,843.843 INFO    ] 200
[2026-10-18 19:49:53,846.846 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:49:53,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:49:53,907.907 INFO    ] No update needed
[2026-10-18 19:49:53,909.909 INFO    ] Checking for camera pi updates...
[2026-10-18 19:49:53,943.943 INFO    ] 200
[2026-10-18 19:49:53,945.945 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:49:53,987.987 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:50:04,001.001 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:50:04,036.036 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:50:04,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:50:04,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:50:04,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:50:04,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:50:06,099.099 INFO    ] ================================================
[2026-10-18 19:50:06,114.114 INFO    ] Launching Daemon at Sun Oct 18 19:50:06 IST 2026
[2026-10-18 19:50:06,126.126 INFO    ] ================================================
[2026-10-18 19:50:06,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:50:06
[2026-10-18 19:50:07,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:50:07,588.588 INFO    ] Initializing speech engine...
[2026-10-18 19:50:07,597.597 INFO    ] 2026-10-18 19:50:07
[2026-10-18 19:50:07,850.850 INFO    ] 2026-10-18 19:50:07
[2026-10-18 19:50:07,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:50:08,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:50:08,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:50:08,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:50:08,397.397 INFO    ] time= 18/10/2026 19:50:08
[2026-10-18 19:50:08,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:50:08,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:50:08,586.586 INFO    ] No existing commands found in stream
[2026-10-18 19:50:13,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:50:13,611.611 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-18 19:50:14,227.227 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 19:50:14,230.230 INFO    ] Checking for system updates...
[2026-10-18 19:50:14,270.270 INFO    ] 200
[2026-10-18 19:50:14,272.272 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:50:14,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:50:14,334.334 INFO    ] No update needed
[2026-10-18 19:50:14,336.336 INFO    ] Checking for camera pi updates...
[2026-10-18 19:50:14,369.369 INFO    ] 200
[2026-10-18 19:50:14,372.372 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:50:14,417.417 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:50:24,432.432 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:50:24,467.467 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:50:24,476.476 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:50:24,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:50:24,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:50:24,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:50:26,531.531 INFO    ] ================================================
[2026-10-18 19:50:26,547.547 INFO    ] Launching Daemon at Sun Oct 18 19:50:26 IST 2026
[2026-10-18 19:50:26,559.559 INFO    ] ================================================
[2026-10-18 19:50:27,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:50:27
[2026-10-18 19:50:27,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:50:28,183.183 INFO    ] Initializing speech engine...
[2026-10-18 19:50:28,192.192 INFO    ] 2026-10-18 19:50:28
[2026-10-18 19:50:28,511.511 INFO    ] 2026-10-18 19:50:28
[2026-10-18 19:50:28,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:50:28,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:50:28,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:50:29,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:50:29,028.028 INFO    ] time= 18/10/2026 19:50:29
[2026-10-18 19:50:29,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:50:29,067.067 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:50:29,196.196 INFO    ] No existing commands found in stream
[2026-10-18 19:50:34,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:50:34,230.230 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-18 19:50:36,878.878 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:50:36,882.882 INFO    ] Checking for system updates...
[2026-10-18 19:50:36,921.921 INFO    ] 200
[2026-10-18 19:50:36,924.924 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:50:36,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:50:36,992.992 INFO    ] No update needed
[2026-10-18 19:50:36,994.994 INFO    ] Checking for camera pi updates...
[2026-10-18 19:50:37,034.034 INFO    ] 200
[2026-10-18 19:50:37,037.037 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:50:37,087.087 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:50:47,098.098 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:50:47,133.133 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:50:47,142.142 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:50:47,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:50:47,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:50:47,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:50:49,195.195 INFO    ] ================================================
[2026-10-18 19:50:49,211.211 INFO    ] Launching Daemon at Sun Oct 18 19:50:49 IST 2026
[2026-10-18 19:50:49,222.222 INFO    ] ================================================
[2026-10-18 19:50:49,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:50:49
[2026-10-18 19:50:50,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:50:50,828.828 INFO    ] Initializing speech engine...
[2026-10-18 19:50:50,835.835 INFO    ] 2026-10-18 19:50:50
[2026-10-18 19:50:51,149.149 INFO    ] 2026-10-18 19:50:51
[2026-10-18 19:50:51,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:50:51,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:50:51,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:50:51,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:50:51,658.658 INFO    ] time= 18/10/2026 19:50:51
[2026-10-18 19:50:51,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:50:51,707.707 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:50:51,823.823 INFO    ] No existing commands found in stream
[2026-10-18 19:50:56,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:50:56,851.851 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-18 19:51:01,120.120 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:51:01,123.123 INFO    ] Checking for system updates...
[2026-10-18 19:51:01,159.159 INFO    ] 200
[2026-10-18 19:51:01,162.162 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:51:01,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:51:01,224.224 INFO    ] No update needed
[2026-10-18 19:51:01,227.227 INFO    ] Checking for camera pi updates...
[2026-10-18 19:51:01,265.265 INFO    ] 200
[2026-10-18 19:51:01,268.268 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:51:01,318.318 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:51:11,333.333 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:51:11,373.373 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:51:11,383.383 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:51:11,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:51:11,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:51:11,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:51:13,438.438 INFO    ] ================================================
[2026-10-18 19:51:13,454.454 INFO    ] Launching Daemon at Sun Oct 18 19:51:13 IST 2026
[2026-10-18 19:51:13,465.465 INFO    ] ================================================
[2026-10-18 19:51:14,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:51:14
[2026-10-18 19:51:14,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:51:14,928.928 INFO    ] Initializing speech engine...
[2026-10-18 19:51:14,937.937 INFO    ] 2026-10-18 19:51:14
[2026-10-18 19:51:15,194.194 INFO    ] 2026-10-18 19:51:15
[2026-10-18 19:51:15,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:51:15,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:51:15,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:51:15,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:51:15,677.677 INFO    ] time= 18/10/2026 19:51:15
[2026-10-18 19:51:15,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:51:15,775.775 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:51:15,957.957 INFO    ] No existing commands found in stream
[2026-10-18 19:51:20,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:51:20,971.971 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-18 19:51:21,494.494 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 19:51:21,496.496 INFO    ] Checking for system updates...
[2026-10-18 19:51:21,532.532 INFO    ] 200
[2026-10-18 19:51:21,535.535 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:51:21,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:51:21,595.595 INFO    ] No update needed
[2026-10-18 19:51:21,598.598 INFO    ] Checking for camera pi updates...
[2026-10-18 19:51:21,631.631 INFO    ] 200
[2026-10-18 19:51:21,633.633 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:51:21,678.678 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:51:31,692.692 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:51:31,727.727 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:51:31,736.736 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:51:31,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:51:31,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:51:31,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:51:33,790.790 INFO    ] ================================================
[2026-10-18 19:51:33,805.805 INFO    ] Launching Daemon at Sun Oct 18 19:51:33 IST 2026
[2026-10-18 19:51:33,816.816 INFO    ] ================================================
[2026-10-18 19:51:34,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:51:34
[2026-10-18 19:51:34,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:51:35,230.230 INFO    ] Initializing speech engine...
[2026-10-18 19:51:35,248.248 INFO    ] 2026-10-18 19:51:35
[2026-10-18 19:51:35,500.500 INFO    ] 2026-10-18 19:51:35
[2026-10-18 19:51:35,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:51:35,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:51:35,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:51:35,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:51:36,003.003 INFO    ] time= 18/10/2026 19:51:35
[2026-10-18 19:51:36,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:51:36,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:51:36,231.231 INFO    ] No existing commands found in stream
[2026-10-18 19:51:41,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:51:41,246.246 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-18 19:51:42,187.187 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 19:51:42,189.189 INFO    ] Checking for system updates...
[2026-10-18 19:51:42,228.228 INFO    ] 200
[2026-10-18 19:51:42,231.231 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:51:42,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:51:42,291.291 INFO    ] No update needed
[2026-10-18 19:51:42,293.293 INFO    ] Checking for camera pi updates...
[2026-10-18 19:51:42,330.330 INFO    ] 200
[2026-10-18 19:51:42,332.332 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:51:42,372.372 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:51:52,387.387 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:51:52,422.422 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:51:52,431.431 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:51:52,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:51:52,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:51:52,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:51:54,483.483 INFO    ] ================================================
[2026-10-18 19:51:54,499.499 INFO    ] Launching Daemon at Sun Oct 18 19:51:54 IST 2026
[2026-10-18 19:51:54,509.509 INFO    ] ================================================
[2026-10-18 19:51:55,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:51:55
[2026-10-18 19:51:55,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:51:55,971.971 INFO    ] Initializing speech engine...
[2026-10-18 19:51:55,977.977 INFO    ] 2026-10-18 19:51:55
[2026-10-18 19:51:56,238.238 INFO    ] 2026-10-18 19:51:56
[2026-10-18 19:51:56,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:51:56,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:51:56,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:51:56,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:51:56,784.784 INFO    ] time= 18/10/2026 19:51:56
[2026-10-18 19:51:56,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:51:56,809.809 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:51:56,941.941 INFO    ] No existing commands found in stream
[2026-10-18 19:52:01,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:52:01,969.969 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-18 19:52:03,589.589 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 19:52:03,592.592 INFO    ] Checking for system updates...
[2026-10-18 19:52:03,635.635 INFO    ] 200
[2026-10-18 19:52:03,638.638 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:52:03,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:52:03,693.693 INFO    ] No update needed
[2026-10-18 19:52:03,695.695 INFO    ] Checking for camera pi updates...
[2026-10-18 19:52:03,737.737 INFO    ] 200
[2026-10-18 19:52:03,740.740 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:52:03,800.800 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:52:13,816.816 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:52:13,851.851 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:52:13,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:52:13,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:52:13,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:52:13,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:52:15,914.914 INFO    ] ================================================
[2026-10-18 19:52:15,929.929 INFO    ] Launching Daemon at Sun Oct 18 19:52:15 IST 2026
[2026-10-18 19:52:15,940.940 INFO    ] ================================================
[2026-10-18 19:52:16,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:52:16
[2026-10-18 19:52:17,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:52:17,411.411 INFO    ] Initializing speech engine...
[2026-10-18 19:52:17,424.424 INFO    ] 2026-10-18 19:52:17
[2026-10-18 19:52:17,692.692 INFO    ] 2026-10-18 19:52:17
[2026-10-18 19:52:17,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:52:17,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:52:17,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:52:18,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:52:18,103.103 INFO    ] time= 18/10/2026 19:52:18
[2026-10-18 19:52:18,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:52:18,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:52:18,296.296 INFO    ] No existing commands found in stream
[2026-10-18 19:52:23,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:52:23,314.314 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-18 19:52:25,455.455 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:52:25,458.458 INFO    ] Checking for system updates...
[2026-10-18 19:52:25,493.493 INFO    ] 200
[2026-10-18 19:52:25,495.495 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:52:25,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:52:25,551.551 INFO    ] No update needed
[2026-10-18 19:52:25,553.553 INFO    ] Checking for camera pi updates...
[2026-10-18 19:52:25,590.590 INFO    ] 200
[2026-10-18 19:52:25,592.592 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:52:25,641.641 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:52:35,657.657 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:52:35,692.692 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:52:35,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:52:35,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:52:35,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:52:35,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:52:37,754.754 INFO    ] ================================================
[2026-10-18 19:52:37,770.770 INFO    ] Launching Daemon at Sun Oct 18 19:52:37 IST 2026
[2026-10-18 19:52:37,780.780 INFO    ] ================================================
[2026-10-18 19:52:38,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:52:38
[2026-10-18 19:52:38,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:52:39,250.250 INFO    ] Initializing speech engine...
[2026-10-18 19:52:39,259.259 INFO    ] 2026-10-18 19:52:39
[2026-10-18 19:52:39,548.548 INFO    ] 2026-10-18 19:52:39
[2026-10-18 19:52:39,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:52:39,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:52:39,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:52:40,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:52:40,085.085 INFO    ] time= 18/10/2026 19:52:40
[2026-10-18 19:52:40,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:52:40,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:52:40,302.302 INFO    ] No existing commands found in stream
[2026-10-18 19:52:45,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:52:45,332.332 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-18 19:52:49,465.465 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 19:52:49,468.468 INFO    ] Checking for system updates...
[2026-10-18 19:52:49,507.507 INFO    ] 200
[2026-10-18 19:52:49,510.510 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:52:49,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:52:49,571.571 INFO    ] No update needed
[2026-10-18 19:52:49,573.573 INFO    ] Checking for camera pi updates...
[2026-10-18 19:52:49,607.607 INFO    ] 200
[2026-10-18 19:52:49,609.609 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:52:49,658.658 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:52:59,674.674 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:52:59,710.710 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:52:59,720.720 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:52:59,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:52:59,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:52:59,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:53:01,773.773 INFO    ] ================================================
[2026-10-18 19:53:01,790.790 INFO    ] Launching Daemon at Sun Oct 18 19:53:01 IST 2026
[2026-10-18 19:53:01,801.801 INFO    ] ================================================
[2026-10-18 19:53:02,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:53:02
[2026-10-18 19:53:03,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:53:03,568.568 INFO    ] Initializing speech engine...
[2026-10-18 19:53:03,575.575 INFO    ] 2026-10-18 19:53:03
[2026-10-18 19:53:03,854.854 INFO    ] 2026-10-18 19:53:03
[2026-10-18 19:53:03,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:53:04,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:53:04,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:53:04,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:53:04,309.309 INFO    ] time= 18/10/2026 19:53:04
[2026-10-18 19:53:04,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:53:04,438.438 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:53:04,579.579 INFO    ] No existing commands found in stream
[2026-10-18 19:53:09,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:53:09,604.604 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-18 19:53:12,592.592 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 19:53:12,594.594 INFO    ] Checking for system updates...
[2026-10-18 19:53:12,634.634 INFO    ] 200
[2026-10-18 19:53:12,636.636 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:53:12,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:53:12,697.697 INFO    ] No update needed
[2026-10-18 19:53:12,700.700 INFO    ] Checking for camera pi updates...
[2026-10-18 19:53:12,733.733 INFO    ] 200
[2026-10-18 19:53:12,736.736 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:53:12,775.775 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:53:22,788.788 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:53:22,824.824 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:53:22,834.834 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:53:22,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:53:22,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:53:22,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:53:24,887.887 INFO    ] ================================================
[2026-10-18 19:53:24,903.903 INFO    ] Launching Daemon at Sun Oct 18 19:53:24 IST 2026
[2026-10-18 19:53:24,914.914 INFO    ] ================================================
[2026-10-18 19:53:25,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:53:25
[2026-10-18 19:53:26,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:53:26,377.377 INFO    ] Initializing speech engine...
[2026-10-18 19:53:26,384.384 INFO    ] 2026-10-18 19:53:26
[2026-10-18 19:53:26,645.645 INFO    ] 2026-10-18 19:53:26
[2026-10-18 19:53:26,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:53:26,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:53:26,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:53:27,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:53:27,190.190 INFO    ] time= 18/10/2026 19:53:27
[2026-10-18 19:53:27,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:53:27,237.237 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:53:27,406.406 INFO    ] No existing commands found in stream
[2026-10-18 19:53:32,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:53:32,442.442 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-18 19:53:34,151.151 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:53:34,153.153 INFO    ] Checking for system updates...
[2026-10-18 19:53:34,194.194 INFO    ] 200
[2026-10-18 19:53:34,196.196 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:53:34,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:53:34,257.257 INFO    ] No update needed
[2026-10-18 19:53:34,260.260 INFO    ] Checking for camera pi updates...
[2026-10-18 19:53:34,297.297 INFO    ] 200
[2026-10-18 19:53:34,299.299 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:53:34,344.344 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:53:44,359.359 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:53:44,394.394 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:53:44,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:53:44,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:53:44,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:53:44,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:53:46,457.457 INFO    ] ================================================
[2026-10-18 19:53:46,473.473 INFO    ] Launching Daemon at Sun Oct 18 19:53:46 IST 2026
[2026-10-18 19:53:46,484.484 INFO    ] ================================================
[2026-10-18 19:53:47,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:53:47
[2026-10-18 19:53:47,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:53:47,885.885 INFO    ] Initializing speech engine...
[2026-10-18 19:53:47,907.907 INFO    ] 2026-10-18 19:53:47
[2026-10-18 19:53:48,165.165 INFO    ] 2026-10-18 19:53:48
[2026-10-18 19:53:48,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:53:48,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:53:48,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:53:48,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:53:48,620.620 INFO    ] time= 18/10/2026 19:53:48
[2026-10-18 19:53:48,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:53:48,738.738 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:53:48,883.883 INFO    ] No existing commands found in stream
[2026-10-18 19:53:53,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:53:53,901.901 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-18 19:53:57,559.559 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:53:57,562.562 INFO    ] Checking for system updates...
[2026-10-18 19:53:57,598.598 INFO    ] 200
[2026-10-18 19:53:57,601.601 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:53:57,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:53:57,664.664 INFO    ] No update needed
[2026-10-18 19:53:57,667.667 INFO    ] Checking for camera pi updates...
[2026-10-18 19:53:57,702.702 INFO    ] 200
[2026-10-18 19:53:57,704.704 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:53:57,750.750 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:54:07,765.765 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:54:07,801.801 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:54:07,810.810 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:54:07,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:54:07,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:54:07,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:54:09,864.864 INFO    ] ================================================
[2026-10-18 19:54:09,882.882 INFO    ] Launching Daemon at Sun Oct 18 19:54:09 IST 2026
[2026-10-18 19:54:09,893.893 INFO    ] ================================================
[2026-10-18 19:54:10,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:54:10
[2026-10-18 19:54:11,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:54:11,319.319 INFO    ] Initializing speech engine...
[2026-10-18 19:54:11,328.328 INFO    ] 2026-10-18 19:54:11
[2026-10-18 19:54:11,581.581 INFO    ] 2026-10-18 19:54:11
[2026-10-18 19:54:11,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:54:11,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:54:11,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:54:12,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:54:12,080.080 INFO    ] time= 18/10/2026 19:54:12
[2026-10-18 19:54:12,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:54:12,142.142 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:54:12,270.270 INFO    ] No existing commands found in stream
[2026-10-18 19:54:17,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:54:17,308.308 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-18 19:54:17,893.893 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 19:54:17,896.896 INFO    ] Checking for system updates...
[2026-10-18 19:54:17,937.937 INFO    ] 200
[2026-10-18 19:54:17,940.940 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:54:17,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:54:18,001.001 INFO    ] No update needed
[2026-10-18 19:54:18,004.004 INFO    ] Checking for camera pi updates...
[2026-10-18 19:54:18,040.040 INFO    ] 200
[2026-10-18 19:54:18,043.043 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:54:18,084.084 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:54:28,101.101 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:54:28,141.141 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:54:28,152.152 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:54:28,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:54:28,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:54:28,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:54:30,208.208 INFO    ] ================================================
[2026-10-18 19:54:30,223.223 INFO    ] Launching Daemon at Sun Oct 18 19:54:30 IST 2026
[2026-10-18 19:54:30,234.234 INFO    ] ================================================
[2026-10-18 19:54:30,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:54:30
[2026-10-18 19:54:31,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:54:31,747.747 INFO    ] Initializing speech engine...
[2026-10-18 19:54:31,758.758 INFO    ] 2026-10-18 19:54:31
[2026-10-18 19:54:32,037.037 INFO    ] 2026-10-18 19:54:32
[2026-10-18 19:54:32,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:54:32,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:54:32,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:54:32,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:54:32,619.619 INFO    ] time= 18/10/2026 19:54:32
[2026-10-18 19:54:32,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:54:32,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:54:32,793.793 INFO    ] No existing commands found in stream
[2026-10-18 19:54:37,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:54:37,827.827 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-18 19:54:41,877.877 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 19:54:41,879.879 INFO    ] Checking for system updates...
[2026-10-18 19:54:41,915.915 INFO    ] 200
[2026-10-18 19:54:41,918.918 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:54:41,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:54:41,979.979 INFO    ] No update needed
[2026-10-18 19:54:41,981.981 INFO    ] Checking for camera pi updates...
[2026-10-18 19:54:42,018.018 INFO    ] 200
[2026-10-18 19:54:42,020.020 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:54:42,065.065 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:54:52,081.081 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:54:52,115.115 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:54:52,125.125 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:54:52,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:54:52,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:54:52,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:54:54,178.178 INFO    ] ================================================
[2026-10-18 19:54:54,193.193 INFO    ] Launching Daemon at Sun Oct 18 19:54:54 IST 2026
[2026-10-18 19:54:54,204.204 INFO    ] ================================================
[2026-10-18 19:54:54,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:54:54
[2026-10-18 19:54:55,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:54:55,842.842 INFO    ] Initializing speech engine...
[2026-10-18 19:54:55,850.850 INFO    ] 2026-10-18 19:54:55
[2026-10-18 19:54:56,157.157 INFO    ] 2026-10-18 19:54:56
[2026-10-18 19:54:56,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:54:56,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:54:56,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:54:56,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:54:56,674.674 INFO    ] time= 18/10/2026 19:54:56
[2026-10-18 19:54:56,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:54:56,711.711 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:54:56,819.819 INFO    ] No existing commands found in stream
[2026-10-18 19:55:01,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:55:01,840.840 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-18 19:55:03,132.132 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:55:03,135.135 INFO    ] Checking for system updates...
[2026-10-18 19:55:03,185.185 INFO    ] 200
[2026-10-18 19:55:03,189.189 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:55:03,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:55:03,277.277 INFO    ] No update needed
[2026-10-18 19:55:03,280.280 INFO    ] Checking for camera pi updates...
[2026-10-18 19:55:03,316.316 INFO    ] 200
[2026-10-18 19:55:03,319.319 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:55:03,360.360 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:55:13,377.377 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:55:13,418.418 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:55:13,429.429 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:55:13,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:55:13,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:55:13,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:55:15,485.485 INFO    ] ================================================
[2026-10-18 19:55:15,501.501 INFO    ] Launching Daemon at Sun Oct 18 19:55:15 IST 2026
[2026-10-18 19:55:15,512.512 INFO    ] ================================================
[2026-10-18 19:55:16,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:55:16
[2026-10-18 19:55:16,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:55:17,087.087 INFO    ] Initializing speech engine...
[2026-10-18 19:55:17,102.102 INFO    ] 2026-10-18 19:55:17
[2026-10-18 19:55:17,418.418 INFO    ] 2026-10-18 19:55:17
[2026-10-18 19:55:17,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:55:17,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:55:17,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:55:17,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:55:17,944.944 INFO    ] time= 18/10/2026 19:55:17
[2026-10-18 19:55:17,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:55:17,994.994 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:55:18,169.169 INFO    ] No existing commands found in stream
[2026-10-18 19:55:23,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:55:23,203.203 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-18 19:55:26,737.737 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:55:26,740.740 INFO    ] Checking for system updates...
[2026-10-18 19:55:26,777.777 INFO    ] 200
[2026-10-18 19:55:26,780.780 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:55:26,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:55:26,836.836 INFO    ] No update needed
[2026-10-18 19:55:26,839.839 INFO    ] Checking for camera pi updates...
[2026-10-18 19:55:26,873.873 INFO    ] 200
[2026-10-18 19:55:26,876.876 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:55:26,921.921 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:55:36,937.937 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:55:36,971.971 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:55:36,981.981 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:55:36,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:55:36,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:55:36,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:55:39,033.033 INFO    ] ================================================
[2026-10-18 19:55:39,050.050 INFO    ] Launching Daemon at Sun Oct 18 19:55:39 IST 2026
[2026-10-18 19:55:39,061.061 INFO    ] ================================================
[2026-10-18 19:55:39,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:55:39
[2026-10-18 19:55:40,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:55:40,645.645 INFO    ] Initializing speech engine...
[2026-10-18 19:55:40,652.652 INFO    ] 2026-10-18 19:55:40
[2026-10-18 19:55:40,962.962 INFO    ] 2026-10-18 19:55:40
[2026-10-18 19:55:41,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:55:41,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:55:41,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:55:41,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:55:41,487.487 INFO    ] time= 18/10/2026 19:55:41
[2026-10-18 19:55:41,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:55:41,524.524 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:55:41,640.640 INFO    ] No existing commands found in stream
[2026-10-18 19:55:46,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:55:46,679.679 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-18 19:55:49,060.060 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:55:49,064.064 INFO    ] Checking for system updates...
[2026-10-18 19:55:49,101.101 INFO    ] 200
[2026-10-18 19:55:49,103.103 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:55:49,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:55:49,165.165 INFO    ] No update needed
[2026-10-18 19:55:49,167.167 INFO    ] Checking for camera pi updates...
[2026-10-18 19:55:49,205.205 INFO    ] 200
[2026-10-18 19:55:49,207.207 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:55:49,252.252 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:55:59,265.265 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:55:59,300.300 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:55:59,310.310 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:55:59,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:55:59,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:55:59,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:56:01,392.392 INFO    ] ================================================
[2026-10-18 19:56:01,417.417 INFO    ] Launching Daemon at Sun Oct 18 19:56:01 IST 2026
[2026-10-18 19:56:01,437.437 INFO    ] ================================================
[2026-10-18 19:56:02,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:56:02
[2026-10-18 19:56:02,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:56:03,186.186 INFO    ] Initializing speech engine...
[2026-10-18 19:56:03,196.196 INFO    ] 2026-10-18 19:56:03
[2026-10-18 19:56:03,502.502 INFO    ] 2026-10-18 19:56:03
[2026-10-18 19:56:03,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:56:03,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:56:03,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:56:04,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:56:04,068.068 INFO    ] time= 18/10/2026 19:56:04
[2026-10-18 19:56:04,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:56:04,116.116 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:56:04,277.277 INFO    ] No existing commands found in stream
[2026-10-18 19:56:09,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:56:09,306.306 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-18 19:56:12,626.626 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:56:12,629.629 INFO    ] Checking for system updates...
[2026-10-18 19:56:12,666.666 INFO    ] 200
[2026-10-18 19:56:12,668.668 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:56:12,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:56:12,730.730 INFO    ] No update needed
[2026-10-18 19:56:12,732.732 INFO    ] Checking for camera pi updates...
[2026-10-18 19:56:12,766.766 INFO    ] 200
[2026-10-18 19:56:12,768.768 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:56:12,808.808 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:56:22,823.823 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:56:22,858.858 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:56:22,868.868 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:56:22,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:56:22,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:56:22,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:56:24,920.920 INFO    ] ================================================
[2026-10-18 19:56:24,936.936 INFO    ] Launching Daemon at Sun Oct 18 19:56:24 IST 2026
[2026-10-18 19:56:24,947.947 INFO    ] ================================================
[2026-10-18 19:56:25,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:56:25
[2026-10-18 19:56:26,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:56:26,593.593 INFO    ] Initializing speech engine...
[2026-10-18 19:56:26,605.605 INFO    ] 2026-10-18 19:56:26
[2026-10-18 19:56:26,897.897 INFO    ] 2026-10-18 19:56:26
[2026-10-18 19:56:27,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:56:27,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:56:27,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:56:27,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:56:27,457.457 INFO    ] time= 18/10/2026 19:56:27
[2026-10-18 19:56:27,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:56:27,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:56:27,605.605 INFO    ] No existing commands found in stream
[2026-10-18 19:56:32,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:56:32,644.644 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-18 19:56:37,216.216 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:56:37,220.220 INFO    ] Checking for system updates...
[2026-10-18 19:56:37,257.257 INFO    ] 200
[2026-10-18 19:56:37,260.260 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:56:37,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:56:37,314.314 INFO    ] No update needed
[2026-10-18 19:56:37,317.317 INFO    ] Checking for camera pi updates...
[2026-10-18 19:56:37,350.350 INFO    ] 200
[2026-10-18 19:56:37,353.353 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:56:37,393.393 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:56:47,408.408 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:56:47,445.445 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:56:47,455.455 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:56:47,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:56:47,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:56:47,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:56:49,507.507 INFO    ] ================================================
[2026-10-18 19:56:49,524.524 INFO    ] Launching Daemon at Sun Oct 18 19:56:49 IST 2026
[2026-10-18 19:56:49,535.535 INFO    ] ================================================
[2026-10-18 19:56:50,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:56:50
[2026-10-18 19:56:50,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:56:51,004.004 INFO    ] Initializing speech engine...
[2026-10-18 19:56:51,011.011 INFO    ] 2026-10-18 19:56:51
[2026-10-18 19:56:51,285.285 INFO    ] 2026-10-18 19:56:51
[2026-10-18 19:56:51,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:56:51,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:56:51,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:56:51,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:56:51,816.816 INFO    ] time= 18/10/2026 19:56:51
[2026-10-18 19:56:51,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:56:51,841.841 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:56:51,967.967 INFO    ] No existing commands found in stream
[2026-10-18 19:56:56,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:56:56,985.985 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-18 19:57:00,886.886 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:57:00,889.889 INFO    ] Checking for system updates...
[2026-10-18 19:57:00,925.925 INFO    ] 200
[2026-10-18 19:57:00,928.928 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:57:00,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:57:00,991.991 INFO    ] No update needed
[2026-10-18 19:57:00,993.993 INFO    ] Checking for camera pi updates...
[2026-10-18 19:57:01,028.028 INFO    ] 200
[2026-10-18 19:57:01,030.030 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:57:01,084.084 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:57:11,100.100 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:57:11,135.135 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:57:11,145.145 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:57:11,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:57:11,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:57:11,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:57:13,198.198 INFO    ] ================================================
[2026-10-18 19:57:13,214.214 INFO    ] Launching Daemon at Sun Oct 18 19:57:13 IST 2026
[2026-10-18 19:57:13,225.225 INFO    ] ================================================
[2026-10-18 19:57:13,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:57:13
[2026-10-18 19:57:14,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:57:14,731.731 INFO    ] Initializing speech engine...
[2026-10-18 19:57:14,752.752 INFO    ] 2026-10-18 19:57:14
[2026-10-18 19:57:15,011.011 INFO    ] 2026-10-18 19:57:15
[2026-10-18 19:57:15,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:57:15,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:57:15,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:57:15,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:57:15,582.582 INFO    ] time= 18/10/2026 19:57:15
[2026-10-18 19:57:15,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:57:15,607.607 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:57:15,760.760 INFO    ] No existing commands found in stream
[2026-10-18 19:57:20,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:57:20,794.794 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-18 19:57:25,018.018 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 19:57:25,021.021 INFO    ] Checking for system updates...
[2026-10-18 19:57:25,071.071 INFO    ] 200
[2026-10-18 19:57:25,074.074 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:57:25,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:57:25,152.152 INFO    ] No update needed
[2026-10-18 19:57:25,155.155 INFO    ] Checking for camera pi updates...
[2026-10-18 19:57:25,192.192 INFO    ] 200
[2026-10-18 19:57:25,195.195 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:57:25,239.239 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:57:35,255.255 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:57:35,289.289 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:57:35,299.299 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:57:35,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:57:35,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:57:35,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:57:37,352.352 INFO    ] ================================================
[2026-10-18 19:57:37,368.368 INFO    ] Launching Daemon at Sun Oct 18 19:57:37 IST 2026
[2026-10-18 19:57:37,379.379 INFO    ] ================================================
[2026-10-18 19:57:37,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:57:37
[2026-10-18 19:57:38,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:57:38,848.848 INFO    ] Initializing speech engine...
[2026-10-18 19:57:38,854.854 INFO    ] 2026-10-18 19:57:38
[2026-10-18 19:57:39,117.117 INFO    ] 2026-10-18 19:57:39
[2026-10-18 19:57:39,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:57:39,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:57:39,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:57:39,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:57:39,636.636 INFO    ] time= 18/10/2026 19:57:39
[2026-10-18 19:57:39,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:57:39,741.741 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:57:39,879.879 INFO    ] No existing commands found in stream
[2026-10-18 19:57:44,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:57:44,900.900 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-18 19:57:47,616.616 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 19:57:47,619.619 INFO    ] Checking for system updates...
[2026-10-18 19:57:47,656.656 INFO    ] 200
[2026-10-18 19:57:47,659.659 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:57:47,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:57:47,714.714 INFO    ] No update needed
[2026-10-18 19:57:47,716.716 INFO    ] Checking for camera pi updates...
[2026-10-18 19:57:47,754.754 INFO    ] 200
[2026-10-18 19:57:47,757.757 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:57:47,797.797 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:57:57,812.812 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:57:57,847.847 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:57:57,857.857 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:57:57,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:57:57,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:57:57,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:57:59,910.910 INFO    ] ================================================
[2026-10-18 19:57:59,926.926 INFO    ] Launching Daemon at Sun Oct 18 19:57:59 IST 2026
[2026-10-18 19:57:59,937.937 INFO    ] ================================================
[2026-10-18 19:58:00,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:58:00
[2026-10-18 19:58:01,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:58:01,712.712 INFO    ] Initializing speech engine...
[2026-10-18 19:58:01,716.716 INFO    ] 2026-10-18 19:58:01
[2026-10-18 19:58:02,105.105 INFO    ] 2026-10-18 19:58:02
[2026-10-18 19:58:02,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:58:02,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:58:02,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:58:02,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:58:02,704.704 INFO    ] time= 18/10/2026 19:58:02
[2026-10-18 19:58:02,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:58:02,839.839 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:58:02,992.992 INFO    ] No existing commands found in stream
[2026-10-18 19:58:08,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:58:08,020.020 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-18 19:58:11,590.590 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:58:11,593.593 INFO    ] Checking for system updates...
[2026-10-18 19:58:11,628.628 INFO    ] 200
[2026-10-18 19:58:11,631.631 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:58:11,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:58:11,694.694 INFO    ] No update needed
[2026-10-18 19:58:11,697.697 INFO    ] Checking for camera pi updates...
[2026-10-18 19:58:11,732.732 INFO    ] 200
[2026-10-18 19:58:11,735.735 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:58:11,781.781 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:58:21,796.796 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:58:21,837.837 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:58:21,848.848 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:58:21,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:58:21,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:58:21,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:58:23,906.906 INFO    ] ================================================
[2026-10-18 19:58:23,922.922 INFO    ] Launching Daemon at Sun Oct 18 19:58:23 IST 2026
[2026-10-18 19:58:23,933.933 INFO    ] ================================================
[2026-10-18 19:58:24,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:58:24
[2026-10-18 19:58:25,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:58:25,345.345 INFO    ] Initializing speech engine...
[2026-10-18 19:58:25,351.351 INFO    ] 2026-10-18 19:58:25
[2026-10-18 19:58:25,636.636 INFO    ] 2026-10-18 19:58:25
[2026-10-18 19:58:25,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:58:25,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:58:25,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:58:26,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:58:26,130.130 INFO    ] time= 18/10/2026 19:58:26
[2026-10-18 19:58:26,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:58:26,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:58:26,346.346 INFO    ] No existing commands found in stream
[2026-10-18 19:58:31,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:58:31,367.367 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-18 19:58:34,019.019 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 19:58:34,022.022 INFO    ] Checking for system updates...
[2026-10-18 19:58:34,061.061 INFO    ] 200
[2026-10-18 19:58:34,063.063 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:58:34,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 19:58:34,119.119 INFO    ] No update needed
[2026-10-18 19:58:34,121.121 INFO    ] Checking for camera pi updates...
[2026-10-18 19:58:34,154.154 INFO    ] 200
[2026-10-18 19:58:34,156.156 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:58:34,202.202 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:58:44,217.217 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:58:44,252.252 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:58:44,262.262 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:58:44,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:58:44,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:58:44,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:58:46,314.314 INFO    ] ================================================
[2026-10-18 19:58:46,331.331 INFO    ] Launching Daemon at Sun Oct 18 19:58:46 IST 2026
[2026-10-18 19:58:46,342.342 INFO    ] ================================================
[2026-10-18 19:58:46,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:58:46
[2026-10-18 19:58:47,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:58:47,989.989 INFO    ] Initializing speech engine...
[2026-10-18 19:58:47,995.995 INFO    ] 2026-10-18 19:58:47
[2026-10-18 19:58:48,305.305 INFO    ] 2026-10-18 19:58:48
[2026-10-18 19:58:48,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:58:48,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:58:48,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:58:48,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:58:48,825.825 INFO    ] time= 18/10/2026 19:58:48
[2026-10-18 19:58:48,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:58:48,863.863 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:58:48,996.996 INFO    ] No existing commands found in stream
[2026-10-18 19:58:54,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:58:54,035.035 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-18 19:58:57,196.196 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 19:58:57,199.199 INFO    ] Checking for system updates...
[2026-10-18 19:58:57,240.240 INFO    ] 200
[2026-10-18 19:58:57,243.243 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:58:57,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:58:57,308.308 INFO    ] No update needed
[2026-10-18 19:58:57,311.311 INFO    ] Checking for camera pi updates...
[2026-10-18 19:58:57,345.345 INFO    ] 200
[2026-10-18 19:58:57,348.348 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:58:57,392.392 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:59:07,410.410 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:59:07,450.450 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:59:07,461.461 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:59:07,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:59:07,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:59:07,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:59:09,519.519 INFO    ] ================================================
[2026-10-18 19:59:09,534.534 INFO    ] Launching Daemon at Sun Oct 18 19:59:09 IST 2026
[2026-10-18 19:59:09,545.545 INFO    ] ================================================
[2026-10-18 19:59:10,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:59:10
[2026-10-18 19:59:10,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:59:10,969.969 INFO    ] Initializing speech engine...
[2026-10-18 19:59:10,975.975 INFO    ] 2026-10-18 19:59:10
[2026-10-18 19:59:11,276.276 INFO    ] 2026-10-18 19:59:11
[2026-10-18 19:59:11,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:59:11,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:59:11,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:59:11,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:59:11,701.701 INFO    ] time= 18/10/2026 19:59:11
[2026-10-18 19:59:11,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:59:11,712.712 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:59:11,805.805 INFO    ] No existing commands found in stream
[2026-10-18 19:59:16,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:59:16,843.843 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-18 19:59:18,043.043 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 19:59:18,046.046 INFO    ] Checking for system updates...
[2026-10-18 19:59:18,081.081 INFO    ] 200
[2026-10-18 19:59:18,084.084 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:59:18,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:59:18,140.140 INFO    ] No update needed
[2026-10-18 19:59:18,142.142 INFO    ] Checking for camera pi updates...
[2026-10-18 19:59:18,176.176 INFO    ] 200
[2026-10-18 19:59:18,178.178 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:59:18,229.229 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:59:28,244.244 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:59:28,279.279 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:59:28,288.288 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:59:28,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:59:28,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:59:28,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:59:30,341.341 INFO    ] ================================================
[2026-10-18 19:59:30,357.357 INFO    ] Launching Daemon at Sun Oct 18 19:59:30 IST 2026
[2026-10-18 19:59:30,368.368 INFO    ] ================================================
[2026-10-18 19:59:31,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:59:31
[2026-10-18 19:59:31,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:59:31,994.994 INFO    ] Initializing speech engine...
[2026-10-18 19:59:32,004.004 INFO    ] 2026-10-18 19:59:31
[2026-10-18 19:59:32,277.277 INFO    ] 2026-10-18 19:59:32
[2026-10-18 19:59:32,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:59:32,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:59:32,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:59:32,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:59:32,801.801 INFO    ] time= 18/10/2026 19:59:32
[2026-10-18 19:59:32,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:59:32,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:59:33,042.042 INFO    ] No existing commands found in stream
[2026-10-18 19:59:38,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:59:38,074.074 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-18 19:59:39,569.569 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 19:59:39,572.572 INFO    ] Checking for system updates...
[2026-10-18 19:59:39,610.610 INFO    ] 200
[2026-10-18 19:59:39,612.612 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:59:39,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 19:59:39,670.670 INFO    ] No update needed
[2026-10-18 19:59:39,672.672 INFO    ] Checking for camera pi updates...
[2026-10-18 19:59:39,711.711 INFO    ] 200
[2026-10-18 19:59:39,714.714 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 19:59:39,761.761 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 19:59:49,777.777 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 19:59:49,818.818 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 19:59:49,829.829 INFO    ] Script finished. Safe exiting...
[2026-10-18 19:59:49,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 19:59:49,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 19:59:49,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 19:59:51,888.888 INFO    ] ================================================
[2026-10-18 19:59:51,903.903 INFO    ] Launching Daemon at Sun Oct 18 19:59:51 IST 2026
[2026-10-18 19:59:51,915.915 INFO    ] ================================================
[2026-10-18 19:59:52,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 19:59:52
[2026-10-18 19:59:53,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 19:59:53,347.347 INFO    ] Initializing speech engine...
[2026-10-18 19:59:53,353.353 INFO    ] 2026-10-18 19:59:53
[2026-10-18 19:59:53,615.615 INFO    ] 2026-10-18 19:59:53
[2026-10-18 19:59:53,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 19:59:53,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 19:59:53,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 19:59:54,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 19:59:54,158.158 INFO    ] time= 18/10/2026 19:59:54
[2026-10-18 19:59:54,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 19:59:54,186.186 INFO    ] Checking for existing commands in stream...
[2026-10-18 19:59:54,326.326 INFO    ] No existing commands found in stream
[2026-10-18 19:59:59,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 19:59:59,359.359 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-18 20:00:03,240.240 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:00:03,243.243 INFO    ] Checking for system updates...
[2026-10-18 20:00:03,400.400 INFO    ] 200
[2026-10-18 20:00:03,403.403 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:00:03,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:00:03,797.797 INFO    ] No update needed
[2026-10-18 20:00:03,801.801 INFO    ] Checking for camera pi updates...
[2026-10-18 20:00:03,959.959 INFO    ] 200
[2026-10-18 20:00:03,963.963 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:00:04,185.185 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:00:14,237.237 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:00:14,273.273 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:00:14,283.283 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:00:14,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:00:14,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:00:14,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:00:16,338.338 INFO    ] ================================================
[2026-10-18 20:00:16,355.355 INFO    ] Launching Daemon at Sun Oct 18 20:00:16 IST 2026
[2026-10-18 20:00:16,365.365 INFO    ] ================================================
[2026-10-18 20:00:16,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:00:16
[2026-10-18 20:00:17,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:00:17,833.833 INFO    ] Initializing speech engine...
[2026-10-18 20:00:17,840.840 INFO    ] 2026-10-18 20:00:17
[2026-10-18 20:00:18,104.104 INFO    ] 2026-10-18 20:00:18
[2026-10-18 20:00:18,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:00:18,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:00:18,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:00:18,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:00:18,578.578 INFO    ] time= 18/10/2026 20:00:18
[2026-10-18 20:00:18,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:00:18,656.656 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:00:18,800.800 INFO    ] No existing commands found in stream
[2026-10-18 20:00:23,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:00:23,818.818 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-18 20:00:25,296.296 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:00:25,299.299 INFO    ] Checking for system updates...
[2026-10-18 20:00:25,334.334 INFO    ] 200
[2026-10-18 20:00:25,337.337 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:00:25,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:00:25,401.401 INFO    ] No update needed
[2026-10-18 20:00:25,403.403 INFO    ] Checking for camera pi updates...
[2026-10-18 20:00:25,438.438 INFO    ] 200
[2026-10-18 20:00:25,441.441 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:00:25,486.486 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:00:35,502.502 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:00:35,538.538 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:00:35,548.548 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:00:35,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:00:35,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:00:35,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:00:37,602.602 INFO    ] ================================================
[2026-10-18 20:00:37,618.618 INFO    ] Launching Daemon at Sun Oct 18 20:00:37 IST 2026
[2026-10-18 20:00:37,630.630 INFO    ] ================================================
[2026-10-18 20:00:38,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:00:38
[2026-10-18 20:00:38,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:00:39,040.040 INFO    ] Initializing speech engine...
[2026-10-18 20:00:39,054.054 INFO    ] 2026-10-18 20:00:39
[2026-10-18 20:00:39,321.321 INFO    ] 2026-10-18 20:00:39
[2026-10-18 20:00:39,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:00:39,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:00:39,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:00:39,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:00:39,824.824 INFO    ] time= 18/10/2026 20:00:39
[2026-10-18 20:00:39,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:00:39,900.900 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:00:40,031.031 INFO    ] No existing commands found in stream
[2026-10-18 20:00:45,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:00:45,062.062 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-18 20:00:48,783.783 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 20:00:48,786.786 INFO    ] Checking for system updates...
[2026-10-18 20:00:48,826.826 INFO    ] 200
[2026-10-18 20:00:48,829.829 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:00:48,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:00:48,884.884 INFO    ] No update needed
[2026-10-18 20:00:48,886.886 INFO    ] Checking for camera pi updates...
[2026-10-18 20:00:48,921.921 INFO    ] 200
[2026-10-18 20:00:48,923.923 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:00:48,969.969 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:00:58,981.981 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:00:59,017.017 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:00:59,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:00:59,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:00:59,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:00:59,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:01:01,082.082 INFO    ] ================================================
[2026-10-18 20:01:01,098.098 INFO    ] Launching Daemon at Sun Oct 18 20:01:01 IST 2026
[2026-10-18 20:01:01,109.109 INFO    ] ================================================
[2026-10-18 20:01:01,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:01:01
[2026-10-18 20:01:02,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:01:02,843.843 INFO    ] Initializing speech engine...
[2026-10-18 20:01:02,859.859 INFO    ] 2026-10-18 20:01:02
[2026-10-18 20:01:03,173.173 INFO    ] 2026-10-18 20:01:03
[2026-10-18 20:01:03,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:01:03,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:01:03,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:01:03,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:01:03,776.776 INFO    ] time= 18/10/2026 20:01:03
[2026-10-18 20:01:03,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:01:03,804.804 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:01:03,935.935 INFO    ] No existing commands found in stream
[2026-10-18 20:01:08,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:01:08,972.972 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-18 20:01:09,578.578 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:01:09,581.581 INFO    ] Checking for system updates...
[2026-10-18 20:01:09,625.625 INFO    ] 200
[2026-10-18 20:01:09,629.629 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:01:09,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:01:09,697.697 INFO    ] No update needed
[2026-10-18 20:01:09,700.700 INFO    ] Checking for camera pi updates...
[2026-10-18 20:01:09,738.738 INFO    ] 200
[2026-10-18 20:01:09,741.741 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:01:09,785.785 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:01:19,801.801 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:01:19,841.841 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:01:19,852.852 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:01:19,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:01:19,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:01:19,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:01:21,908.908 INFO    ] ================================================
[2026-10-18 20:01:21,924.924 INFO    ] Launching Daemon at Sun Oct 18 20:01:21 IST 2026
[2026-10-18 20:01:21,935.935 INFO    ] ================================================
[2026-10-18 20:01:22,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:01:22
[2026-10-18 20:01:23,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:01:23,345.345 INFO    ] Initializing speech engine...
[2026-10-18 20:01:23,351.351 INFO    ] 2026-10-18 20:01:23
[2026-10-18 20:01:23,646.646 INFO    ] 2026-10-18 20:01:23
[2026-10-18 20:01:23,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:01:24,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:01:24,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:01:24,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:01:24,258.258 INFO    ] time= 18/10/2026 20:01:24
[2026-10-18 20:01:24,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:01:24,284.284 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:01:24,412.412 INFO    ] No existing commands found in stream
[2026-10-18 20:01:29,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:01:29,437.437 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-18 20:01:31,485.485 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:01:31,488.488 INFO    ] Checking for system updates...
[2026-10-18 20:01:31,527.527 INFO    ] 200
[2026-10-18 20:01:31,530.530 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:01:31,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:01:31,600.600 INFO    ] No update needed
[2026-10-18 20:01:31,603.603 INFO    ] Checking for camera pi updates...
[2026-10-18 20:01:31,640.640 INFO    ] 200
[2026-10-18 20:01:31,643.643 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:01:31,686.686 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:01:41,701.701 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:01:41,736.736 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:01:41,745.745 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:01:41,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:01:41,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:01:41,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:01:43,798.798 INFO    ] ================================================
[2026-10-18 20:01:43,814.814 INFO    ] Launching Daemon at Sun Oct 18 20:01:43 IST 2026
[2026-10-18 20:01:43,826.826 INFO    ] ================================================
[2026-10-18 20:01:44,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:01:44
[2026-10-18 20:01:45,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:01:45,296.296 INFO    ] Initializing speech engine...
[2026-10-18 20:01:45,306.306 INFO    ] 2026-10-18 20:01:45
[2026-10-18 20:01:45,564.564 INFO    ] 2026-10-18 20:01:45
[2026-10-18 20:01:45,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:01:45,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:01:45,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:01:45,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:01:46,057.057 INFO    ] time= 18/10/2026 20:01:46
[2026-10-18 20:01:46,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:01:46,120.120 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:01:46,256.256 INFO    ] No existing commands found in stream
[2026-10-18 20:01:51,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:01:51,280.280 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-18 20:01:56,959.959 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:01:56,962.962 INFO    ] Checking for system updates...
[2026-10-18 20:01:56,999.999 INFO    ] 200
[2026-10-18 20:01:57,002.002 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:01:57,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:01:57,063.063 INFO    ] No update needed
[2026-10-18 20:01:57,066.066 INFO    ] Checking for camera pi updates...
[2026-10-18 20:01:57,099.099 INFO    ] 200
[2026-10-18 20:01:57,101.101 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:01:57,141.141 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:02:07,157.157 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:02:07,193.193 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:02:07,203.203 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:02:07,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:02:07,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:02:07,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:02:09,258.258 INFO    ] ================================================
[2026-10-18 20:02:09,273.273 INFO    ] Launching Daemon at Sun Oct 18 20:02:09 IST 2026
[2026-10-18 20:02:09,284.284 INFO    ] ================================================
[2026-10-18 20:02:09,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:02:09
[2026-10-18 20:02:10,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:02:10,706.706 INFO    ] Initializing speech engine...
[2026-10-18 20:02:10,714.714 INFO    ] 2026-10-18 20:02:10
[2026-10-18 20:02:10,965.965 INFO    ] 2026-10-18 20:02:10
[2026-10-18 20:02:11,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:02:11,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:02:11,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:02:11,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:02:11,428.428 INFO    ] time= 18/10/2026 20:02:11
[2026-10-18 20:02:11,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:02:11,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:02:11,694.694 INFO    ] No existing commands found in stream
[2026-10-18 20:02:16,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:02:16,712.712 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-18 20:02:20,142.142 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:02:20,144.144 INFO    ] Checking for system updates...
[2026-10-18 20:02:20,183.183 INFO    ] 200
[2026-10-18 20:02:20,185.185 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:02:20,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:02:20,240.240 INFO    ] No update needed
[2026-10-18 20:02:20,242.242 INFO    ] Checking for camera pi updates...
[2026-10-18 20:02:20,276.276 INFO    ] 200
[2026-10-18 20:02:20,279.279 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:02:20,318.318 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:02:30,334.334 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:02:30,370.370 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:02:30,380.380 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:02:30,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:02:30,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:02:30,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:02:32,436.436 INFO    ] ================================================
[2026-10-18 20:02:32,453.453 INFO    ] Launching Daemon at Sun Oct 18 20:02:32 IST 2026
[2026-10-18 20:02:32,469.469 INFO    ] ================================================
[2026-10-18 20:02:33,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:02:33
[2026-10-18 20:02:33,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:02:33,938.938 INFO    ] Initializing speech engine...
[2026-10-18 20:02:33,947.947 INFO    ] 2026-10-18 20:02:33
[2026-10-18 20:02:34,210.210 INFO    ] 2026-10-18 20:02:34
[2026-10-18 20:02:34,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:02:34,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:02:34,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:02:34,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:02:34,713.713 INFO    ] time= 18/10/2026 20:02:34
[2026-10-18 20:02:34,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:02:34,776.776 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:02:34,922.922 INFO    ] No existing commands found in stream
[2026-10-18 20:02:39,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:02:39,940.940 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-18 20:02:41,022.022 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 20:02:41,025.025 INFO    ] Checking for system updates...
[2026-10-18 20:02:41,060.060 INFO    ] 200
[2026-10-18 20:02:41,063.063 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:02:41,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:02:41,124.124 INFO    ] No update needed
[2026-10-18 20:02:41,126.126 INFO    ] Checking for camera pi updates...
[2026-10-18 20:02:41,160.160 INFO    ] 200
[2026-10-18 20:02:41,163.163 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:02:41,202.202 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:02:51,219.219 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:02:51,278.278 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:02:51,289.289 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:02:51,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:02:51,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:02:51,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:02:53,349.349 INFO    ] ================================================
[2026-10-18 20:02:53,366.366 INFO    ] Launching Daemon at Sun Oct 18 20:02:53 IST 2026
[2026-10-18 20:02:53,378.378 INFO    ] ================================================
[2026-10-18 20:02:53,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:02:53
[2026-10-18 20:02:54,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:02:54,887.887 INFO    ] Initializing speech engine...
[2026-10-18 20:02:54,896.896 INFO    ] 2026-10-18 20:02:54
[2026-10-18 20:02:55,159.159 INFO    ] 2026-10-18 20:02:55
[2026-10-18 20:02:55,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:02:55,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:02:55,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:02:55,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:02:55,645.645 INFO    ] time= 18/10/2026 20:02:55
[2026-10-18 20:02:55,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:02:55,777.777 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:02:55,909.909 INFO    ] No existing commands found in stream
[2026-10-18 20:03:00,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:03:00,935.935 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-18 20:03:02,784.784 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:03:02,787.787 INFO    ] Checking for system updates...
[2026-10-18 20:03:02,831.831 INFO    ] 200
[2026-10-18 20:03:02,834.834 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:03:02,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:03:02,904.904 INFO    ] No update needed
[2026-10-18 20:03:02,907.907 INFO    ] Checking for camera pi updates...
[2026-10-18 20:03:02,950.950 INFO    ] 200
[2026-10-18 20:03:02,954.954 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:03:03,007.007 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:03:13,023.023 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:03:13,058.058 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:03:13,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:03:13,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:03:13,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:03:13,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:03:15,120.120 INFO    ] ================================================
[2026-10-18 20:03:15,136.136 INFO    ] Launching Daemon at Sun Oct 18 20:03:15 IST 2026
[2026-10-18 20:03:15,147.147 INFO    ] ================================================
[2026-10-18 20:03:15,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:03:15
[2026-10-18 20:03:16,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:03:16,609.609 INFO    ] Initializing speech engine...
[2026-10-18 20:03:16,618.618 INFO    ] 2026-10-18 20:03:16
[2026-10-18 20:03:16,894.894 INFO    ] 2026-10-18 20:03:16
[2026-10-18 20:03:16,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:03:17,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:03:17,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:03:17,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:03:17,413.413 INFO    ] time= 18/10/2026 20:03:17
[2026-10-18 20:03:17,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:03:17,486.486 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:03:17,622.622 INFO    ] No existing commands found in stream
[2026-10-18 20:03:22,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:03:22,647.647 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-18 20:03:24,859.859 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:03:24,862.862 INFO    ] Checking for system updates...
[2026-10-18 20:03:24,900.900 INFO    ] 200
[2026-10-18 20:03:24,903.903 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:03:24,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:03:24,960.960 INFO    ] No update needed
[2026-10-18 20:03:24,962.962 INFO    ] Checking for camera pi updates...
[2026-10-18 20:03:25,000.000 INFO    ] 200
[2026-10-18 20:03:25,002.002 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:03:25,042.042 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:03:35,056.056 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:03:35,091.091 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:03:35,100.100 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:03:35,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:03:35,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:03:35,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:03:37,153.153 INFO    ] ================================================
[2026-10-18 20:03:37,168.168 INFO    ] Launching Daemon at Sun Oct 18 20:03:37 IST 2026
[2026-10-18 20:03:37,179.179 INFO    ] ================================================
[2026-10-18 20:03:37,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:03:37
[2026-10-18 20:03:38,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:03:38,596.596 INFO    ] Initializing speech engine...
[2026-10-18 20:03:38,613.613 INFO    ] 2026-10-18 20:03:38
[2026-10-18 20:03:38,877.877 INFO    ] 2026-10-18 20:03:38
[2026-10-18 20:03:38,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:03:39,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:03:39,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:03:39,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:03:39,379.379 INFO    ] time= 18/10/2026 20:03:39
[2026-10-18 20:03:39,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:03:39,483.483 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:03:39,631.631 INFO    ] No existing commands found in stream
[2026-10-18 20:03:44,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:03:44,667.667 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-18 20:03:45,493.493 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 20:03:45,495.495 INFO    ] Checking for system updates...
[2026-10-18 20:03:45,531.531 INFO    ] 200
[2026-10-18 20:03:45,533.533 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:03:45,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:03:45,587.587 INFO    ] No update needed
[2026-10-18 20:03:45,590.590 INFO    ] Checking for camera pi updates...
[2026-10-18 20:03:45,627.627 INFO    ] 200
[2026-10-18 20:03:45,629.629 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:03:45,670.670 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:03:55,685.685 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:03:55,720.720 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:03:55,730.730 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:03:55,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:03:55,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:03:55,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:03:57,781.781 INFO    ] ================================================
[2026-10-18 20:03:57,796.796 INFO    ] Launching Daemon at Sun Oct 18 20:03:57 IST 2026
[2026-10-18 20:03:57,807.807 INFO    ] ================================================
[2026-10-18 20:03:58,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:03:58
[2026-10-18 20:03:58,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:03:59,241.241 INFO    ] Initializing speech engine...
[2026-10-18 20:03:59,251.251 INFO    ] 2026-10-18 20:03:59
[2026-10-18 20:03:59,514.514 INFO    ] 2026-10-18 20:03:59
[2026-10-18 20:03:59,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:03:59,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:03:59,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:03:59,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:03:59,915.915 INFO    ] time= 18/10/2026 20:03:59
[2026-10-18 20:03:59,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:03:59,964.964 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:04:00,106.106 INFO    ] No existing commands found in stream
[2026-10-18 20:04:05,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:04:05,134.134 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-18 20:04:07,354.354 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:04:07,356.356 INFO    ] Checking for system updates...
[2026-10-18 20:04:07,392.392 INFO    ] 200
[2026-10-18 20:04:07,394.394 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:04:07,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:04:07,450.450 INFO    ] No update needed
[2026-10-18 20:04:07,453.453 INFO    ] Checking for camera pi updates...
[2026-10-18 20:04:07,489.489 INFO    ] 200
[2026-10-18 20:04:07,492.492 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:04:07,533.533 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:04:17,548.548 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:04:17,582.582 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:04:17,592.592 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:04:17,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:04:17,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:04:17,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:04:19,644.644 INFO    ] ================================================
[2026-10-18 20:04:19,660.660 INFO    ] Launching Daemon at Sun Oct 18 20:04:19 IST 2026
[2026-10-18 20:04:19,670.670 INFO    ] ================================================
[2026-10-18 20:04:20,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:04:20
[2026-10-18 20:04:20,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:04:21,131.131 INFO    ] Initializing speech engine...
[2026-10-18 20:04:21,140.140 INFO    ] 2026-10-18 20:04:21
[2026-10-18 20:04:21,400.400 INFO    ] 2026-10-18 20:04:21
[2026-10-18 20:04:21,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:04:21,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:04:21,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:04:21,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:04:21,940.940 INFO    ] time= 18/10/2026 20:04:21
[2026-10-18 20:04:21,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:04:21,973.973 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:04:22,103.103 INFO    ] No existing commands found in stream
[2026-10-18 20:04:27,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:04:27,131.131 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-18 20:04:29,086.086 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:04:29,089.089 INFO    ] Checking for system updates...
[2026-10-18 20:04:29,125.125 INFO    ] 200
[2026-10-18 20:04:29,127.127 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:04:29,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:04:29,183.183 INFO    ] No update needed
[2026-10-18 20:04:29,186.186 INFO    ] Checking for camera pi updates...
[2026-10-18 20:04:29,219.219 INFO    ] 200
[2026-10-18 20:04:29,221.221 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:04:29,269.269 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:04:39,284.284 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:04:39,319.319 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:04:39,328.328 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:04:39,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:04:39,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:04:39,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:04:41,382.382 INFO    ] ================================================
[2026-10-18 20:04:41,397.397 INFO    ] Launching Daemon at Sun Oct 18 20:04:41 IST 2026
[2026-10-18 20:04:41,408.408 INFO    ] ================================================
[2026-10-18 20:04:41,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:04:41
[2026-10-18 20:04:42,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:04:42,839.839 INFO    ] Initializing speech engine...
[2026-10-18 20:04:42,848.848 INFO    ] 2026-10-18 20:04:42
[2026-10-18 20:04:43,140.140 INFO    ] 2026-10-18 20:04:43
[2026-10-18 20:04:43,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:04:43,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:04:43,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:04:43,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:04:43,632.632 INFO    ] time= 18/10/2026 20:04:43
[2026-10-18 20:04:43,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:04:43,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:04:43,831.831 INFO    ] No existing commands found in stream
[2026-10-18 20:04:48,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:04:48,847.847 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-18 20:04:52,789.789 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:04:52,792.792 INFO    ] Checking for system updates...
[2026-10-18 20:04:52,829.829 INFO    ] 200
[2026-10-18 20:04:52,831.831 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:04:52,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:04:52,885.885 INFO    ] No update needed
[2026-10-18 20:04:52,888.888 INFO    ] Checking for camera pi updates...
[2026-10-18 20:04:52,922.922 INFO    ] 200
[2026-10-18 20:04:52,925.925 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:04:52,965.965 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:05:02,980.980 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:05:03,018.018 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:05:03,029.029 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:05:03,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:05:03,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:05:03,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:05:05,085.085 INFO    ] ================================================
[2026-10-18 20:05:05,101.101 INFO    ] Launching Daemon at Sun Oct 18 20:05:05 IST 2026
[2026-10-18 20:05:05,111.111 INFO    ] ================================================
[2026-10-18 20:05:05,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:05:05
[2026-10-18 20:05:06,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:05:06,516.516 INFO    ] Initializing speech engine...
[2026-10-18 20:05:06,539.539 INFO    ] 2026-10-18 20:05:06
[2026-10-18 20:05:06,795.795 INFO    ] 2026-10-18 20:05:06
[2026-10-18 20:05:06,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:05:07,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:05:07,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:05:07,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:05:07,235.235 INFO    ] time= 18/10/2026 20:05:07
[2026-10-18 20:05:07,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:05:07,311.311 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:05:07,419.419 INFO    ] No existing commands found in stream
[2026-10-18 20:05:12,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:05:12,433.433 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-18 20:05:15,745.745 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:05:15,748.748 INFO    ] Checking for system updates...
[2026-10-18 20:05:15,784.784 INFO    ] 200
[2026-10-18 20:05:15,786.786 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:05:15,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:05:15,844.844 INFO    ] No update needed
[2026-10-18 20:05:15,847.847 INFO    ] Checking for camera pi updates...
[2026-10-18 20:05:15,884.884 INFO    ] 200
[2026-10-18 20:05:15,886.886 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:05:15,927.927 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:05:25,942.942 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:05:25,977.977 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:05:25,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:05:25,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:05:25,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:05:25,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:05:28,040.040 INFO    ] ================================================
[2026-10-18 20:05:28,054.054 INFO    ] Launching Daemon at Sun Oct 18 20:05:28 IST 2026
[2026-10-18 20:05:28,065.065 INFO    ] ================================================
[2026-10-18 20:05:28,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:05:28
[2026-10-18 20:05:29,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:05:29,508.508 INFO    ] Initializing speech engine...
[2026-10-18 20:05:29,521.521 INFO    ] 2026-10-18 20:05:29
[2026-10-18 20:05:29,809.809 INFO    ] 2026-10-18 20:05:29
[2026-10-18 20:05:29,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:05:30,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:05:30,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:05:30,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:05:30,298.298 INFO    ] time= 18/10/2026 20:05:30
[2026-10-18 20:05:30,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:05:30,406.406 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:05:30,567.567 INFO    ] No existing commands found in stream
[2026-10-18 20:05:35,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:05:35,586.586 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-18 20:05:38,283.283 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 20:05:38,286.286 INFO    ] Checking for system updates...
[2026-10-18 20:05:38,324.324 INFO    ] 200
[2026-10-18 20:05:38,326.326 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:05:38,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:05:38,387.387 INFO    ] No update needed
[2026-10-18 20:05:38,389.389 INFO    ] Checking for camera pi updates...
[2026-10-18 20:05:38,423.423 INFO    ] 200
[2026-10-18 20:05:38,426.426 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:05:38,467.467 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:05:48,480.480 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:05:48,516.516 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:05:48,526.526 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:05:48,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:05:48,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:05:48,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:05:50,578.578 INFO    ] ================================================
[2026-10-18 20:05:50,593.593 INFO    ] Launching Daemon at Sun Oct 18 20:05:50 IST 2026
[2026-10-18 20:05:50,604.604 INFO    ] ================================================
[2026-10-18 20:05:51,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:05:51
[2026-10-18 20:05:51,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:05:52,075.075 INFO    ] Initializing speech engine...
[2026-10-18 20:05:52,084.084 INFO    ] 2026-10-18 20:05:52
[2026-10-18 20:05:52,334.334 INFO    ] 2026-10-18 20:05:52
[2026-10-18 20:05:52,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:05:52,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:05:52,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:05:52,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:05:52,865.865 INFO    ] time= 18/10/2026 20:05:52
[2026-10-18 20:05:52,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:05:52,911.911 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:05:53,047.047 INFO    ] No existing commands found in stream
[2026-10-18 20:05:58,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:05:58,078.078 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-18 20:05:59,218.218 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 20:05:59,220.220 INFO    ] Checking for system updates...
[2026-10-18 20:05:59,257.257 INFO    ] 200
[2026-10-18 20:05:59,259.259 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:05:59,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:05:59,314.314 INFO    ] No update needed
[2026-10-18 20:05:59,317.317 INFO    ] Checking for camera pi updates...
[2026-10-18 20:05:59,350.350 INFO    ] 200
[2026-10-18 20:05:59,353.353 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:05:59,397.397 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:06:09,412.412 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:06:09,447.447 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:06:09,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:06:09,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:06:09,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:06:09,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:06:11,511.511 INFO    ] ================================================
[2026-10-18 20:06:11,526.526 INFO    ] Launching Daemon at Sun Oct 18 20:06:11 IST 2026
[2026-10-18 20:06:11,538.538 INFO    ] ================================================
[2026-10-18 20:06:12,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:06:12
[2026-10-18 20:06:12,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:06:13,124.124 INFO    ] Initializing speech engine...
[2026-10-18 20:06:13,138.138 INFO    ] 2026-10-18 20:06:13
[2026-10-18 20:06:13,415.415 INFO    ] 2026-10-18 20:06:13
[2026-10-18 20:06:13,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:06:13,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:06:13,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:06:13,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:06:13,950.950 INFO    ] time= 18/10/2026 20:06:13
[2026-10-18 20:06:13,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:06:14,000.000 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:06:14,134.134 INFO    ] No existing commands found in stream
[2026-10-18 20:06:19,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:06:19,164.164 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-18 20:06:20,210.210 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:06:20,213.213 INFO    ] Checking for system updates...
[2026-10-18 20:06:20,253.253 INFO    ] 200
[2026-10-18 20:06:20,256.256 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:06:20,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:06:20,317.317 INFO    ] No update needed
[2026-10-18 20:06:20,320.320 INFO    ] Checking for camera pi updates...
[2026-10-18 20:06:20,357.357 INFO    ] 200
[2026-10-18 20:06:20,359.359 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:06:20,410.410 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:06:30,426.426 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:06:30,465.465 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:06:30,476.476 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:06:30,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:06:30,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:06:30,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:06:32,531.531 INFO    ] ================================================
[2026-10-18 20:06:32,553.553 INFO    ] Launching Daemon at Sun Oct 18 20:06:32 IST 2026
[2026-10-18 20:06:32,567.567 INFO    ] ================================================
[2026-10-18 20:06:33,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:06:33
[2026-10-18 20:06:33,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:06:34,084.084 INFO    ] Initializing speech engine...
[2026-10-18 20:06:34,091.091 INFO    ] 2026-10-18 20:06:34
[2026-10-18 20:06:34,352.352 INFO    ] 2026-10-18 20:06:34
[2026-10-18 20:06:34,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:06:34,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:06:34,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:06:34,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:06:34,849.849 INFO    ] time= 18/10/2026 20:06:34
[2026-10-18 20:06:34,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:06:34,909.909 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:06:35,055.055 INFO    ] No existing commands found in stream
[2026-10-18 20:06:40,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:06:40,077.077 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-18 20:06:42,939.939 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:06:42,942.942 INFO    ] Checking for system updates...
[2026-10-18 20:06:42,978.978 INFO    ] 200
[2026-10-18 20:06:42,981.981 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:06:43,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:06:43,035.035 INFO    ] No update needed
[2026-10-18 20:06:43,038.038 INFO    ] Checking for camera pi updates...
[2026-10-18 20:06:43,072.072 INFO    ] 200
[2026-10-18 20:06:43,074.074 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:06:43,115.115 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:06:53,130.130 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:06:53,166.166 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:06:53,176.176 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:06:53,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:06:53,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:06:53,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:06:55,229.229 INFO    ] ================================================
[2026-10-18 20:06:55,245.245 INFO    ] Launching Daemon at Sun Oct 18 20:06:55 IST 2026
[2026-10-18 20:06:55,257.257 INFO    ] ================================================
[2026-10-18 20:06:55,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:06:55
[2026-10-18 20:06:56,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:06:56,707.707 INFO    ] Initializing speech engine...
[2026-10-18 20:06:56,715.715 INFO    ] 2026-10-18 20:06:56
[2026-10-18 20:06:56,963.963 INFO    ] 2026-10-18 20:06:56
[2026-10-18 20:06:56,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:06:57,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:06:57,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:06:57,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:06:57,518.518 INFO    ] time= 18/10/2026 20:06:57
[2026-10-18 20:06:57,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:06:57,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:06:57,698.698 INFO    ] No existing commands found in stream
[2026-10-18 20:07:02,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:07:02,736.736 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-18 20:07:06,670.670 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:07:06,672.672 INFO    ] Checking for system updates...
[2026-10-18 20:07:06,708.708 INFO    ] 200
[2026-10-18 20:07:06,710.710 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:07:06,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:07:06,773.773 INFO    ] No update needed
[2026-10-18 20:07:06,775.775 INFO    ] Checking for camera pi updates...
[2026-10-18 20:07:06,812.812 INFO    ] 200
[2026-10-18 20:07:06,814.814 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:07:06,855.855 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:07:16,870.870 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:07:16,904.904 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:07:16,914.914 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:07:16,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:07:16,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:07:16,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:07:18,967.967 INFO    ] ================================================
[2026-10-18 20:07:18,983.983 INFO    ] Launching Daemon at Sun Oct 18 20:07:18 IST 2026
[2026-10-18 20:07:19,995.995 INFO    ] ================================================
[2026-10-18 20:07:19,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:07:19
[2026-10-18 20:07:20,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:07:20,401.401 INFO    ] Initializing speech engine...
[2026-10-18 20:07:20,410.410 INFO    ] 2026-10-18 20:07:20
[2026-10-18 20:07:20,702.702 INFO    ] 2026-10-18 20:07:20
[2026-10-18 20:07:20,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:07:20,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:07:20,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:07:21,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:07:21,124.124 INFO    ] time= 18/10/2026 20:07:21
[2026-10-18 20:07:21,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:07:21,199.199 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:07:21,323.323 INFO    ] No existing commands found in stream
[2026-10-18 20:07:26,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:07:26,351.351 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-18 20:07:29,932.932 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:07:29,934.934 INFO    ] Checking for system updates...
[2026-10-18 20:07:29,973.973 INFO    ] 200
[2026-10-18 20:07:29,976.976 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:07:30,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:07:30,030.030 INFO    ] No update needed
[2026-10-18 20:07:30,032.032 INFO    ] Checking for camera pi updates...
[2026-10-18 20:07:30,069.069 INFO    ] 200
[2026-10-18 20:07:30,071.071 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:07:30,111.111 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:07:40,127.127 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:07:40,162.162 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:07:40,172.172 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:07:40,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:07:40,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:07:40,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:07:42,226.226 INFO    ] ================================================
[2026-10-18 20:07:42,242.242 INFO    ] Launching Daemon at Sun Oct 18 20:07:42 IST 2026
[2026-10-18 20:07:42,253.253 INFO    ] ================================================
[2026-10-18 20:07:42,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:07:42
[2026-10-18 20:07:43,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:07:43,670.670 INFO    ] Initializing speech engine...
[2026-10-18 20:07:43,678.678 INFO    ] 2026-10-18 20:07:43
[2026-10-18 20:07:43,974.974 INFO    ] 2026-10-18 20:07:43
[2026-10-18 20:07:44,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:07:44,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:07:44,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:07:44,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:07:44,400.400 INFO    ] time= 18/10/2026 20:07:44
[2026-10-18 20:07:44,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:07:44,433.433 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:07:44,566.566 INFO    ] No existing commands found in stream
[2026-10-18 20:07:49,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:07:49,594.594 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-18 20:07:53,968.968 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:07:53,970.970 INFO    ] Checking for system updates...
[2026-10-18 20:07:54,006.006 INFO    ] 200
[2026-10-18 20:07:54,009.009 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:07:54,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:07:54,065.065 INFO    ] No update needed
[2026-10-18 20:07:54,068.068 INFO    ] Checking for camera pi updates...
[2026-10-18 20:07:54,101.101 INFO    ] 200
[2026-10-18 20:07:54,104.104 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:07:54,143.143 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:08:04,157.157 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:08:04,193.193 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:08:04,203.203 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:08:04,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:08:04,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:08:04,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:08:06,257.257 INFO    ] ================================================
[2026-10-18 20:08:06,276.276 INFO    ] Launching Daemon at Sun Oct 18 20:08:06 IST 2026
[2026-10-18 20:08:06,287.287 INFO    ] ================================================
[2026-10-18 20:08:06,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:08:06
[2026-10-18 20:08:07,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:08:07,703.703 INFO    ] Initializing speech engine...
[2026-10-18 20:08:07,728.728 INFO    ] 2026-10-18 20:08:07
[2026-10-18 20:08:08,005.005 INFO    ] 2026-10-18 20:08:07
[2026-10-18 20:08:08,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:08:08,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:08:08,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:08:08,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:08:08,542.542 INFO    ] time= 18/10/2026 20:08:08
[2026-10-18 20:08:08,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:08:08,646.646 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:08:08,803.803 INFO    ] No existing commands found in stream
[2026-10-18 20:08:13,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:08:13,827.827 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-18 20:08:18,131.131 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:08:18,134.134 INFO    ] Checking for system updates...
[2026-10-18 20:08:18,171.171 INFO    ] 200
[2026-10-18 20:08:18,173.173 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:08:18,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:08:18,237.237 INFO    ] No update needed
[2026-10-18 20:08:18,240.240 INFO    ] Checking for camera pi updates...
[2026-10-18 20:08:18,277.277 INFO    ] 200
[2026-10-18 20:08:18,280.280 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:08:18,322.322 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:08:28,337.337 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:08:28,373.373 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:08:28,383.383 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:08:28,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:08:28,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:08:28,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:08:30,437.437 INFO    ] ================================================
[2026-10-18 20:08:30,452.452 INFO    ] Launching Daemon at Sun Oct 18 20:08:30 IST 2026
[2026-10-18 20:08:30,464.464 INFO    ] ================================================
[2026-10-18 20:08:31,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:08:31
[2026-10-18 20:08:31,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:08:31,876.876 INFO    ] Initializing speech engine...
[2026-10-18 20:08:31,883.883 INFO    ] 2026-10-18 20:08:31
[2026-10-18 20:08:32,190.190 INFO    ] 2026-10-18 20:08:32
[2026-10-18 20:08:32,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:08:32,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:08:32,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:08:32,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:08:32,716.716 INFO    ] time= 18/10/2026 20:08:32
[2026-10-18 20:08:32,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:08:32,786.786 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:08:32,949.949 INFO    ] No existing commands found in stream
[2026-10-18 20:08:37,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:08:37,971.971 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-18 20:08:38,948.948 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:08:38,952.952 INFO    ] Checking for system updates...
[2026-10-18 20:08:38,993.993 INFO    ] 200
[2026-10-18 20:08:38,996.996 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:08:39,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:08:39,052.052 INFO    ] No update needed
[2026-10-18 20:08:39,055.055 INFO    ] Checking for camera pi updates...
[2026-10-18 20:08:39,094.094 INFO    ] 200
[2026-10-18 20:08:39,098.098 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:08:39,139.139 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:08:49,156.156 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:08:49,197.197 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:08:49,209.209 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:08:49,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:08:49,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:08:49,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:08:51,264.264 INFO    ] ================================================
[2026-10-18 20:08:51,279.279 INFO    ] Launching Daemon at Sun Oct 18 20:08:51 IST 2026
[2026-10-18 20:08:51,291.291 INFO    ] ================================================
[2026-10-18 20:08:51,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:08:51
[2026-10-18 20:08:52,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:08:52,956.956 INFO    ] Initializing speech engine...
[2026-10-18 20:08:52,965.965 INFO    ] 2026-10-18 20:08:52
[2026-10-18 20:08:53,240.240 INFO    ] 2026-10-18 20:08:53
[2026-10-18 20:08:53,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:08:53,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:08:53,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:08:53,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:08:53,800.800 INFO    ] time= 18/10/2026 20:08:53
[2026-10-18 20:08:53,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:08:53,850.850 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:08:53,987.987 INFO    ] No existing commands found in stream
[2026-10-18 20:08:59,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:08:59,022.022 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-18 20:09:01,422.422 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 20:09:01,425.425 INFO    ] Checking for system updates...
[2026-10-18 20:09:01,461.461 INFO    ] 200
[2026-10-18 20:09:01,464.464 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:09:01,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:09:01,526.526 INFO    ] No update needed
[2026-10-18 20:09:01,529.529 INFO    ] Checking for camera pi updates...
[2026-10-18 20:09:01,562.562 INFO    ] 200
[2026-10-18 20:09:01,565.565 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:09:01,611.611 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:09:11,626.626 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:09:11,662.662 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:09:11,672.672 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:09:11,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:09:11,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:09:11,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:09:13,726.726 INFO    ] ================================================
[2026-10-18 20:09:13,741.741 INFO    ] Launching Daemon at Sun Oct 18 20:09:13 IST 2026
[2026-10-18 20:09:13,753.753 INFO    ] ================================================
[2026-10-18 20:09:14,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:09:14
[2026-10-18 20:09:14,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:09:15,167.167 INFO    ] Initializing speech engine...
[2026-10-18 20:09:15,174.174 INFO    ] 2026-10-18 20:09:15
[2026-10-18 20:09:15,471.471 INFO    ] 2026-10-18 20:09:15
[2026-10-18 20:09:15,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:09:15,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:09:15,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:09:15,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:09:15,895.895 INFO    ] time= 18/10/2026 20:09:15
[2026-10-18 20:09:15,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:09:15,907.907 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:09:16,055.055 INFO    ] No existing commands found in stream
[2026-10-18 20:09:21,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:09:21,078.078 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-18 20:09:25,347.347 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:09:25,349.349 INFO    ] Checking for system updates...
[2026-10-18 20:09:25,386.386 INFO    ] 200
[2026-10-18 20:09:25,388.388 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:09:25,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:09:25,443.443 INFO    ] No update needed
[2026-10-18 20:09:25,445.445 INFO    ] Checking for camera pi updates...
[2026-10-18 20:09:25,478.478 INFO    ] 200
[2026-10-18 20:09:25,480.480 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:09:25,525.525 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:09:35,540.540 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:09:35,574.574 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:09:35,584.584 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:09:35,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:09:35,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:09:35,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:09:37,637.637 INFO    ] ================================================
[2026-10-18 20:09:37,653.653 INFO    ] Launching Daemon at Sun Oct 18 20:09:37 IST 2026
[2026-10-18 20:09:37,664.664 INFO    ] ================================================
[2026-10-18 20:09:38,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:09:38
[2026-10-18 20:09:38,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:09:39,083.083 INFO    ] Initializing speech engine...
[2026-10-18 20:09:39,102.102 INFO    ] 2026-10-18 20:09:39
[2026-10-18 20:09:39,353.353 INFO    ] 2026-10-18 20:09:39
[2026-10-18 20:09:39,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:09:39,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:09:39,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:09:39,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:09:39,848.848 INFO    ] time= 18/10/2026 20:09:39
[2026-10-18 20:09:39,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:09:39,933.933 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:09:40,084.084 INFO    ] No existing commands found in stream
[2026-10-18 20:09:45,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:09:45,102.102 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-18 20:09:48,854.854 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 20:09:48,857.857 INFO    ] Checking for system updates...
[2026-10-18 20:09:48,899.899 INFO    ] 200
[2026-10-18 20:09:48,902.902 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:09:48,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:09:48,958.958 INFO    ] No update needed
[2026-10-18 20:09:48,961.961 INFO    ] Checking for camera pi updates...
[2026-10-18 20:09:48,996.996 INFO    ] 200
[2026-10-18 20:09:48,999.999 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:09:49,039.039 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:09:59,054.054 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:09:59,089.089 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:09:59,099.099 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:09:59,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:09:59,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:09:59,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:10:01,158.158 INFO    ] ================================================
[2026-10-18 20:10:01,255.255 INFO    ] Launching Daemon at Sun Oct 18 20:10:01 IST 2026
[2026-10-18 20:10:01,338.338 INFO    ] ================================================
[2026-10-18 20:10:02,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:10:02
[2026-10-18 20:10:03,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:10:03,392.392 INFO    ] Initializing speech engine...
[2026-10-18 20:10:03,400.400 INFO    ] 2026-10-18 20:10:03
[2026-10-18 20:10:03,727.727 INFO    ] 2026-10-18 20:10:03
[2026-10-18 20:10:03,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:10:03,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:10:03,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:10:04,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:10:04,151.151 INFO    ] time= 18/10/2026 20:10:04
[2026-10-18 20:10:04,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:10:04,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:10:04,316.316 INFO    ] No existing commands found in stream
[2026-10-18 20:10:09,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:10:09,344.344 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-18 20:10:12,873.873 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:10:12,875.875 INFO    ] Checking for system updates...
[2026-10-18 20:10:12,911.911 INFO    ] 200
[2026-10-18 20:10:12,914.914 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:10:12,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:10:12,969.969 INFO    ] No update needed
[2026-10-18 20:10:12,971.971 INFO    ] Checking for camera pi updates...
[2026-10-18 20:10:13,009.009 INFO    ] 200
[2026-10-18 20:10:13,011.011 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:10:13,051.051 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:10:23,066.066 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:10:23,102.102 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:10:23,112.112 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:10:23,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:10:23,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:10:23,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:10:25,166.166 INFO    ] ================================================
[2026-10-18 20:10:25,183.183 INFO    ] Launching Daemon at Sun Oct 18 20:10:25 IST 2026
[2026-10-18 20:10:25,193.193 INFO    ] ================================================
[2026-10-18 20:10:25,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:10:25
[2026-10-18 20:10:26,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:10:26,651.651 INFO    ] Initializing speech engine...
[2026-10-18 20:10:26,656.656 INFO    ] 2026-10-18 20:10:26
[2026-10-18 20:10:26,904.904 INFO    ] 2026-10-18 20:10:26
[2026-10-18 20:10:26,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:10:27,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:10:27,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:10:27,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:10:27,406.406 INFO    ] time= 18/10/2026 20:10:27
[2026-10-18 20:10:27,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:10:27,516.516 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:10:27,605.605 INFO    ] No existing commands found in stream
[2026-10-18 20:10:32,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:10:32,619.619 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-18 20:10:33,873.873 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:10:33,876.876 INFO    ] Checking for system updates...
[2026-10-18 20:10:33,913.913 INFO    ] 200
[2026-10-18 20:10:33,915.915 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:10:33,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:10:33,971.971 INFO    ] No update needed
[2026-10-18 20:10:33,973.973 INFO    ] Checking for camera pi updates...
[2026-10-18 20:10:34,008.008 INFO    ] 200
[2026-10-18 20:10:34,011.011 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:10:34,060.060 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:10:44,075.075 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:10:44,111.111 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:10:44,121.121 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:10:44,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:10:44,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:10:44,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:10:46,176.176 INFO    ] ================================================
[2026-10-18 20:10:46,192.192 INFO    ] Launching Daemon at Sun Oct 18 20:10:46 IST 2026
[2026-10-18 20:10:46,203.203 INFO    ] ================================================
[2026-10-18 20:10:46,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:10:46
[2026-10-18 20:10:47,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:10:47,843.843 INFO    ] Initializing speech engine...
[2026-10-18 20:10:47,855.855 INFO    ] 2026-10-18 20:10:47
[2026-10-18 20:10:48,137.137 INFO    ] 2026-10-18 20:10:48
[2026-10-18 20:10:48,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:10:48,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:10:48,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:10:48,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:10:48,727.727 INFO    ] time= 18/10/2026 20:10:48
[2026-10-18 20:10:48,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:10:48,766.766 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:10:48,885.885 INFO    ] No existing commands found in stream
[2026-10-18 20:10:53,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:10:53,918.918 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-18 20:10:56,708.708 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:10:56,711.711 INFO    ] Checking for system updates...
[2026-10-18 20:10:56,746.746 INFO    ] 200
[2026-10-18 20:10:56,749.749 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:10:56,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:10:56,803.803 INFO    ] No update needed
[2026-10-18 20:10:56,806.806 INFO    ] Checking for camera pi updates...
[2026-10-18 20:10:56,840.840 INFO    ] 200
[2026-10-18 20:10:56,842.842 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:10:56,884.884 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:11:06,903.903 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:11:06,943.943 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:11:06,954.954 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:11:06,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:11:06,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:11:06,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:11:09,012.012 INFO    ] ================================================
[2026-10-18 20:11:09,027.027 INFO    ] Launching Daemon at Sun Oct 18 20:11:09 IST 2026
[2026-10-18 20:11:09,038.038 INFO    ] ================================================
[2026-10-18 20:11:09,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:11:09
[2026-10-18 20:11:10,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:11:10,478.478 INFO    ] Initializing speech engine...
[2026-10-18 20:11:10,486.486 INFO    ] 2026-10-18 20:11:10
[2026-10-18 20:11:10,786.786 INFO    ] 2026-10-18 20:11:10
[2026-10-18 20:11:10,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:11:11,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:11:11,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:11:11,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:11:11,299.299 INFO    ] time= 18/10/2026 20:11:11
[2026-10-18 20:11:11,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:11:11,382.382 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:11:11,495.495 INFO    ] No existing commands found in stream
[2026-10-18 20:11:16,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:11:16,510.510 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-18 20:11:18,392.392 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 20:11:18,394.394 INFO    ] Checking for system updates...
[2026-10-18 20:11:18,431.431 INFO    ] 200
[2026-10-18 20:11:18,433.433 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:11:18,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:11:18,494.494 INFO    ] No update needed
[2026-10-18 20:11:18,497.497 INFO    ] Checking for camera pi updates...
[2026-10-18 20:11:18,531.531 INFO    ] 200
[2026-10-18 20:11:18,533.533 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:11:18,574.574 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:11:28,589.589 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:11:28,624.624 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:11:28,634.634 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:11:28,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:11:28,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:11:28,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:11:30,688.688 INFO    ] ================================================
[2026-10-18 20:11:30,703.703 INFO    ] Launching Daemon at Sun Oct 18 20:11:30 IST 2026
[2026-10-18 20:11:30,715.715 INFO    ] ================================================
[2026-10-18 20:11:31,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:11:31
[2026-10-18 20:11:32,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:11:32,431.431 INFO    ] Initializing speech engine...
[2026-10-18 20:11:32,442.442 INFO    ] 2026-10-18 20:11:32
[2026-10-18 20:11:32,730.730 INFO    ] 2026-10-18 20:11:32
[2026-10-18 20:11:32,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:11:33,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:11:33,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:11:33,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:11:33,320.320 INFO    ] time= 18/10/2026 20:11:33
[2026-10-18 20:11:33,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:11:33,366.366 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:11:33,514.514 INFO    ] No existing commands found in stream
[2026-10-18 20:11:38,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:11:38,548.548 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-18 20:11:40,097.097 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:11:40,100.100 INFO    ] Checking for system updates...
[2026-10-18 20:11:40,141.141 INFO    ] 200
[2026-10-18 20:11:40,144.144 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:11:40,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:11:40,200.200 INFO    ] No update needed
[2026-10-18 20:11:40,203.203 INFO    ] Checking for camera pi updates...
[2026-10-18 20:11:40,237.237 INFO    ] 200
[2026-10-18 20:11:40,240.240 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:11:40,279.279 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:11:50,294.294 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:11:50,329.329 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:11:50,339.339 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:11:50,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:11:50,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:11:50,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:11:52,392.392 INFO    ] ================================================
[2026-10-18 20:11:52,409.409 INFO    ] Launching Daemon at Sun Oct 18 20:11:52 IST 2026
[2026-10-18 20:11:52,420.420 INFO    ] ================================================
[2026-10-18 20:11:53,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:11:53
[2026-10-18 20:11:53,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:11:53,952.952 INFO    ] Initializing speech engine...
[2026-10-18 20:11:53,961.961 INFO    ] 2026-10-18 20:11:53
[2026-10-18 20:11:54,253.253 INFO    ] 2026-10-18 20:11:54
[2026-10-18 20:11:54,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:11:54,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:11:54,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:11:54,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:11:54,682.682 INFO    ] time= 18/10/2026 20:11:54
[2026-10-18 20:11:54,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:11:54,757.757 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:11:54,882.882 INFO    ] No existing commands found in stream
[2026-10-18 20:11:59,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:11:59,910.910 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-18 20:12:02,243.243 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 20:12:02,246.246 INFO    ] Checking for system updates...
[2026-10-18 20:12:02,289.289 INFO    ] 200
[2026-10-18 20:12:02,292.292 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:12:02,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:12:02,362.362 INFO    ] No update needed
[2026-10-18 20:12:02,366.366 INFO    ] Checking for camera pi updates...
[2026-10-18 20:12:02,421.421 INFO    ] 200
[2026-10-18 20:12:02,424.424 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:12:02,480.480 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:12:12,496.496 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:12:12,531.531 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:12:12,541.541 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:12:12,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:12:12,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:12:12,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:12:14,593.593 INFO    ] ================================================
[2026-10-18 20:12:14,608.608 INFO    ] Launching Daemon at Sun Oct 18 20:12:14 IST 2026
[2026-10-18 20:12:14,619.619 INFO    ] ================================================
[2026-10-18 20:12:15,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:12:15
[2026-10-18 20:12:15,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:12:16,218.218 INFO    ] Initializing speech engine...
[2026-10-18 20:12:16,230.230 INFO    ] 2026-10-18 20:12:16
[2026-10-18 20:12:16,548.548 INFO    ] 2026-10-18 20:12:16
[2026-10-18 20:12:16,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:12:16,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:12:16,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:12:17,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:12:17,069.069 INFO    ] time= 18/10/2026 20:12:17
[2026-10-18 20:12:17,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:12:17,104.104 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:12:17,220.220 INFO    ] No existing commands found in stream
[2026-10-18 20:12:22,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:12:22,260.260 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-18 20:12:24,392.392 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:12:24,395.395 INFO    ] Checking for system updates...
[2026-10-18 20:12:24,434.434 INFO    ] 200
[2026-10-18 20:12:24,438.438 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:12:24,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:12:24,510.510 INFO    ] No update needed
[2026-10-18 20:12:24,513.513 INFO    ] Checking for camera pi updates...
[2026-10-18 20:12:24,547.547 INFO    ] 200
[2026-10-18 20:12:24,550.550 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:12:24,591.591 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:12:34,606.606 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:12:34,647.647 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:12:34,658.658 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:12:34,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:12:34,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:12:34,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:12:36,719.719 INFO    ] ================================================
[2026-10-18 20:12:36,734.734 INFO    ] Launching Daemon at Sun Oct 18 20:12:36 IST 2026
[2026-10-18 20:12:36,746.746 INFO    ] ================================================
[2026-10-18 20:12:37,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:12:37
[2026-10-18 20:12:37,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:12:38,285.285 INFO    ] Initializing speech engine...
[2026-10-18 20:12:38,293.293 INFO    ] 2026-10-18 20:12:38
[2026-10-18 20:12:38,569.569 INFO    ] 2026-10-18 20:12:38
[2026-10-18 20:12:38,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:12:38,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:12:38,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:12:39,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:12:39,112.112 INFO    ] time= 18/10/2026 20:12:39
[2026-10-18 20:12:39,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:12:39,144.144 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:12:39,278.278 INFO    ] No existing commands found in stream
[2026-10-18 20:12:44,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:12:44,303.303 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-18 20:12:47,879.879 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:12:47,882.882 INFO    ] Checking for system updates...
[2026-10-18 20:12:47,920.920 INFO    ] 200
[2026-10-18 20:12:47,922.922 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:12:47,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:12:47,977.977 INFO    ] No update needed
[2026-10-18 20:12:47,979.979 INFO    ] Checking for camera pi updates...
[2026-10-18 20:12:48,013.013 INFO    ] 200
[2026-10-18 20:12:48,015.015 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:12:48,056.056 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:12:58,071.071 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:12:58,106.106 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:12:58,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:12:58,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:12:58,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:12:58,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:13:00,169.169 INFO    ] ================================================
[2026-10-18 20:13:00,186.186 INFO    ] Launching Daemon at Sun Oct 18 20:13:00 IST 2026
[2026-10-18 20:13:00,197.197 INFO    ] ================================================
[2026-10-18 20:13:00,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:13:00
[2026-10-18 20:13:01,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:13:02,052.052 INFO    ] Initializing speech engine...
[2026-10-18 20:13:02,057.057 INFO    ] 2026-10-18 20:13:02
[2026-10-18 20:13:02,464.464 INFO    ] 2026-10-18 20:13:02
[2026-10-18 20:13:02,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:13:02,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:13:02,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:13:02,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:13:02,997.997 INFO    ] time= 18/10/2026 20:13:02
[2026-10-18 20:13:03,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:13:03,024.024 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:13:03,181.181 INFO    ] No existing commands found in stream
[2026-10-18 20:13:08,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:13:08,230.230 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-18 20:13:09,864.864 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:13:09,868.868 INFO    ] Checking for system updates...
[2026-10-18 20:13:09,904.904 INFO    ] 200
[2026-10-18 20:13:09,907.907 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:13:09,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:13:09,970.970 INFO    ] No update needed
[2026-10-18 20:13:09,972.972 INFO    ] Checking for camera pi updates...
[2026-10-18 20:13:10,007.007 INFO    ] 200
[2026-10-18 20:13:10,010.010 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:13:10,052.052 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:13:20,068.068 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:13:20,109.109 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:13:20,120.120 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:13:20,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:13:20,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:13:20,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:13:22,177.177 INFO    ] ================================================
[2026-10-18 20:13:22,193.193 INFO    ] Launching Daemon at Sun Oct 18 20:13:22 IST 2026
[2026-10-18 20:13:22,208.208 INFO    ] ================================================
[2026-10-18 20:13:22,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:13:22
[2026-10-18 20:13:23,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:13:23,854.854 INFO    ] Initializing speech engine...
[2026-10-18 20:13:23,866.866 INFO    ] 2026-10-18 20:13:23
[2026-10-18 20:13:24,144.144 INFO    ] 2026-10-18 20:13:24
[2026-10-18 20:13:24,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:13:24,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:13:24,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:13:24,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:13:24,683.683 INFO    ] time= 18/10/2026 20:13:24
[2026-10-18 20:13:24,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:13:24,733.733 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:13:24,914.914 INFO    ] No existing commands found in stream
[2026-10-18 20:13:29,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:13:29,947.947 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-18 20:13:33,858.858 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:13:33,861.861 INFO    ] Checking for system updates...
[2026-10-18 20:13:33,897.897 INFO    ] 200
[2026-10-18 20:13:33,900.900 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:13:33,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:13:33,956.956 INFO    ] No update needed
[2026-10-18 20:13:33,959.959 INFO    ] Checking for camera pi updates...
[2026-10-18 20:13:33,997.997 INFO    ] 200
[2026-10-18 20:13:34,000.000 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:13:34,046.046 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:13:44,062.062 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:13:44,103.103 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:13:44,114.114 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:13:44,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:13:44,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:13:44,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:13:46,169.169 INFO    ] ================================================
[2026-10-18 20:13:46,184.184 INFO    ] Launching Daemon at Sun Oct 18 20:13:46 IST 2026
[2026-10-18 20:13:46,195.195 INFO    ] ================================================
[2026-10-18 20:13:46,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:13:46
[2026-10-18 20:13:47,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:13:47,857.857 INFO    ] Initializing speech engine...
[2026-10-18 20:13:47,870.870 INFO    ] 2026-10-18 20:13:47
[2026-10-18 20:13:48,184.184 INFO    ] 2026-10-18 20:13:48
[2026-10-18 20:13:48,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:13:48,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:13:48,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:13:48,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:13:48,691.691 INFO    ] time= 18/10/2026 20:13:48
[2026-10-18 20:13:48,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:13:48,742.742 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:13:48,852.852 INFO    ] No existing commands found in stream
[2026-10-18 20:13:53,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:13:53,885.885 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-18 20:13:54,776.776 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:13:54,779.779 INFO    ] Checking for system updates...
[2026-10-18 20:13:54,817.817 INFO    ] 200
[2026-10-18 20:13:54,819.819 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:13:54,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:13:54,883.883 INFO    ] No update needed
[2026-10-18 20:13:54,886.886 INFO    ] Checking for camera pi updates...
[2026-10-18 20:13:54,921.921 INFO    ] 200
[2026-10-18 20:13:54,924.924 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:13:54,971.971 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:14:04,986.986 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:14:05,022.022 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:14:05,032.032 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:14:05,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:14:05,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:14:05,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:14:07,085.085 INFO    ] ================================================
[2026-10-18 20:14:07,102.102 INFO    ] Launching Daemon at Sun Oct 18 20:14:07 IST 2026
[2026-10-18 20:14:07,113.113 INFO    ] ================================================
[2026-10-18 20:14:07,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:14:07
[2026-10-18 20:14:08,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:14:08,567.567 INFO    ] Initializing speech engine...
[2026-10-18 20:14:08,590.590 INFO    ] 2026-10-18 20:14:08
[2026-10-18 20:14:08,847.847 INFO    ] 2026-10-18 20:14:08
[2026-10-18 20:14:08,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:14:09,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:14:09,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:14:09,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:14:09,339.339 INFO    ] time= 18/10/2026 20:14:09
[2026-10-18 20:14:09,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:14:09,412.412 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:14:09,558.558 INFO    ] No existing commands found in stream
[2026-10-18 20:14:14,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:14:14,571.571 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-18 20:14:18,782.782 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 20:14:18,785.785 INFO    ] Checking for system updates...
[2026-10-18 20:14:18,821.821 INFO    ] 200
[2026-10-18 20:14:18,823.823 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:14:18,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:14:18,884.884 INFO    ] No update needed
[2026-10-18 20:14:18,887.887 INFO    ] Checking for camera pi updates...
[2026-10-18 20:14:18,920.920 INFO    ] 200
[2026-10-18 20:14:18,922.922 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:14:18,963.963 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:14:28,978.978 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:14:29,013.013 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:14:29,022.022 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:14:29,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:14:29,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:14:29,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:14:31,077.077 INFO    ] ================================================
[2026-10-18 20:14:31,092.092 INFO    ] Launching Daemon at Sun Oct 18 20:14:31 IST 2026
[2026-10-18 20:14:31,103.103 INFO    ] ================================================
[2026-10-18 20:14:31,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:14:31
[2026-10-18 20:14:32,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:14:32,607.607 INFO    ] Initializing speech engine...
[2026-10-18 20:14:32,625.625 INFO    ] 2026-10-18 20:14:32
[2026-10-18 20:14:32,897.897 INFO    ] 2026-10-18 20:14:32
[2026-10-18 20:14:32,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:14:33,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:14:33,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:14:33,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:14:33,473.473 INFO    ] time= 18/10/2026 20:14:33
[2026-10-18 20:14:33,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:14:33,504.504 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:14:33,659.659 INFO    ] No existing commands found in stream
[2026-10-18 20:14:38,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:14:38,684.684 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-18 20:14:40,194.194 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:14:40,197.197 INFO    ] Checking for system updates...
[2026-10-18 20:14:40,234.234 INFO    ] 200
[2026-10-18 20:14:40,236.236 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:14:40,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:14:40,292.292 INFO    ] No update needed
[2026-10-18 20:14:40,294.294 INFO    ] Checking for camera pi updates...
[2026-10-18 20:14:40,328.328 INFO    ] 200
[2026-10-18 20:14:40,330.330 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:14:40,380.380 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:14:50,395.395 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:14:50,436.436 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:14:50,446.446 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:14:50,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:14:50,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:14:50,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:14:52,499.499 INFO    ] ================================================
[2026-10-18 20:14:52,514.514 INFO    ] Launching Daemon at Sun Oct 18 20:14:52 IST 2026
[2026-10-18 20:14:52,526.526 INFO    ] ================================================
[2026-10-18 20:14:53,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:14:53
[2026-10-18 20:14:53,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:14:53,963.963 INFO    ] Initializing speech engine...
[2026-10-18 20:14:53,971.971 INFO    ] 2026-10-18 20:14:53
[2026-10-18 20:14:54,225.225 INFO    ] 2026-10-18 20:14:54
[2026-10-18 20:14:54,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:14:54,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:14:54,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:14:54,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:14:54,784.784 INFO    ] time= 18/10/2026 20:14:54
[2026-10-18 20:14:54,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:14:54,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:14:54,963.963 INFO    ] No existing commands found in stream
[2026-10-18 20:14:59,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:14:59,997.997 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-18 20:15:00,992.992 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:15:00,995.995 INFO    ] Checking for system updates...
[2026-10-18 20:15:01,034.034 INFO    ] 200
[2026-10-18 20:15:01,037.037 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:15:01,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:15:01,091.091 INFO    ] No update needed
[2026-10-18 20:15:01,094.094 INFO    ] Checking for camera pi updates...
[2026-10-18 20:15:01,127.127 INFO    ] 200
[2026-10-18 20:15:01,130.130 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:15:01,171.171 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:15:11,187.187 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:15:11,226.226 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:15:11,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:15:11,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:15:11,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:15:11,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:15:13,292.292 INFO    ] ================================================
[2026-10-18 20:15:13,308.308 INFO    ] Launching Daemon at Sun Oct 18 20:15:13 IST 2026
[2026-10-18 20:15:13,319.319 INFO    ] ================================================
[2026-10-18 20:15:13,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:15:13
[2026-10-18 20:15:14,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:15:14,750.750 INFO    ] Initializing speech engine...
[2026-10-18 20:15:14,773.773 INFO    ] 2026-10-18 20:15:14
[2026-10-18 20:15:15,039.039 INFO    ] 2026-10-18 20:15:15
[2026-10-18 20:15:15,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:15:15,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:15:15,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:15:15,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:15:15,522.522 INFO    ] time= 18/10/2026 20:15:15
[2026-10-18 20:15:15,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:15:15,614.614 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:15:15,725.725 INFO    ] No existing commands found in stream
[2026-10-18 20:15:20,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:15:20,740.740 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-18 20:15:23,786.786 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 20:15:23,788.788 INFO    ] Checking for system updates...
[2026-10-18 20:15:23,824.824 INFO    ] 200
[2026-10-18 20:15:23,826.826 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:15:23,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:15:23,887.887 INFO    ] No update needed
[2026-10-18 20:15:23,889.889 INFO    ] Checking for camera pi updates...
[2026-10-18 20:15:23,922.922 INFO    ] 200
[2026-10-18 20:15:23,925.925 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:15:23,970.970 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:15:33,983.983 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:15:34,017.017 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:15:34,027.027 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:15:34,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:15:34,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:15:34,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:15:36,079.079 INFO    ] ================================================
[2026-10-18 20:15:36,094.094 INFO    ] Launching Daemon at Sun Oct 18 20:15:36 IST 2026
[2026-10-18 20:15:36,105.105 INFO    ] ================================================
[2026-10-18 20:15:36,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:15:36
[2026-10-18 20:15:37,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:15:37,517.517 INFO    ] Initializing speech engine...
[2026-10-18 20:15:37,526.526 INFO    ] 2026-10-18 20:15:37
[2026-10-18 20:15:37,819.819 INFO    ] 2026-10-18 20:15:37
[2026-10-18 20:15:37,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:15:38,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:15:38,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:15:38,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:15:38,327.327 INFO    ] time= 18/10/2026 20:15:38
[2026-10-18 20:15:38,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:15:38,441.441 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:15:38,589.589 INFO    ] No existing commands found in stream
[2026-10-18 20:15:43,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:15:43,620.620 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-18 20:15:45,355.355 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:15:45,358.358 INFO    ] Checking for system updates...
[2026-10-18 20:15:45,396.396 INFO    ] 200
[2026-10-18 20:15:45,399.399 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:15:45,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:15:45,456.456 INFO    ] No update needed
[2026-10-18 20:15:45,459.459 INFO    ] Checking for camera pi updates...
[2026-10-18 20:15:45,493.493 INFO    ] 200
[2026-10-18 20:15:45,496.496 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:15:45,537.537 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:15:55,554.554 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:15:55,594.594 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:15:55,605.605 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:15:55,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:15:55,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:15:55,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:15:57,661.661 INFO    ] ================================================
[2026-10-18 20:15:57,677.677 INFO    ] Launching Daemon at Sun Oct 18 20:15:57 IST 2026
[2026-10-18 20:15:57,687.687 INFO    ] ================================================
[2026-10-18 20:15:58,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:15:58
[2026-10-18 20:15:58,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:15:59,154.154 INFO    ] Initializing speech engine...
[2026-10-18 20:15:59,164.164 INFO    ] 2026-10-18 20:15:59
[2026-10-18 20:15:59,427.427 INFO    ] 2026-10-18 20:15:59
[2026-10-18 20:15:59,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:15:59,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:15:59,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:15:59,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:15:59,972.972 INFO    ] time= 18/10/2026 20:15:59
[2026-10-18 20:15:59,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:16:00,000.000 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:16:00,177.177 INFO    ] No existing commands found in stream
[2026-10-18 20:16:05,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:16:05,216.216 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-18 20:16:07,160.160 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:16:07,163.163 INFO    ] Checking for system updates...
[2026-10-18 20:16:07,200.200 INFO    ] 200
[2026-10-18 20:16:07,202.202 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:16:07,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:16:07,259.259 INFO    ] No update needed
[2026-10-18 20:16:07,261.261 INFO    ] Checking for camera pi updates...
[2026-10-18 20:16:07,296.296 INFO    ] 200
[2026-10-18 20:16:07,299.299 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:16:07,343.343 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:16:17,360.360 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:16:17,399.399 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:16:17,410.410 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:16:17,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:16:17,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:16:17,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:16:19,466.466 INFO    ] ================================================
[2026-10-18 20:16:19,481.481 INFO    ] Launching Daemon at Sun Oct 18 20:16:19 IST 2026
[2026-10-18 20:16:19,492.492 INFO    ] ================================================
[2026-10-18 20:16:20,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:16:20
[2026-10-18 20:16:20,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:16:20,916.916 INFO    ] Initializing speech engine...
[2026-10-18 20:16:20,925.925 INFO    ] 2026-10-18 20:16:20
[2026-10-18 20:16:21,188.188 INFO    ] 2026-10-18 20:16:21
[2026-10-18 20:16:21,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:16:21,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:16:21,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:16:21,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:16:21,738.738 INFO    ] time= 18/10/2026 20:16:21
[2026-10-18 20:16:21,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:16:21,767.767 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:16:21,904.904 INFO    ] No existing commands found in stream
[2026-10-18 20:16:26,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:16:26,930.930 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-18 20:16:29,715.715 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:16:29,718.718 INFO    ] Checking for system updates...
[2026-10-18 20:16:29,754.754 INFO    ] 200
[2026-10-18 20:16:29,757.757 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:16:29,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:16:29,812.812 INFO    ] No update needed
[2026-10-18 20:16:29,814.814 INFO    ] Checking for camera pi updates...
[2026-10-18 20:16:29,855.855 INFO    ] 200
[2026-10-18 20:16:29,858.858 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:16:29,902.902 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:16:39,922.922 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:16:39,960.960 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:16:39,971.971 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:16:39,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:16:39,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:16:39,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:16:42,028.028 INFO    ] ================================================
[2026-10-18 20:16:42,043.043 INFO    ] Launching Daemon at Sun Oct 18 20:16:42 IST 2026
[2026-10-18 20:16:42,054.054 INFO    ] ================================================
[2026-10-18 20:16:42,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:16:42
[2026-10-18 20:16:43,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:16:43,454.454 INFO    ] Initializing speech engine...
[2026-10-18 20:16:43,477.477 INFO    ] 2026-10-18 20:16:43
[2026-10-18 20:16:43,733.733 INFO    ] 2026-10-18 20:16:43
[2026-10-18 20:16:43,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:16:44,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:16:44,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:16:44,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:16:44,298.298 INFO    ] time= 18/10/2026 20:16:44
[2026-10-18 20:16:44,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:16:44,323.323 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:16:44,452.452 INFO    ] No existing commands found in stream
[2026-10-18 20:16:49,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:16:49,471.471 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-18 20:16:51,092.092 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:16:51,095.095 INFO    ] Checking for system updates...
[2026-10-18 20:16:51,135.135 INFO    ] 200
[2026-10-18 20:16:51,138.138 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:16:51,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:16:51,195.195 INFO    ] No update needed
[2026-10-18 20:16:51,198.198 INFO    ] Checking for camera pi updates...
[2026-10-18 20:16:51,233.233 INFO    ] 200
[2026-10-18 20:16:51,236.236 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:16:51,278.278 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:17:01,294.294 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:17:01,342.342 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:17:01,357.357 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:17:01,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:17:01,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:17:01,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:17:03,425.425 INFO    ] ================================================
[2026-10-18 20:17:03,440.440 INFO    ] Launching Daemon at Sun Oct 18 20:17:03 IST 2026
[2026-10-18 20:17:03,451.451 INFO    ] ================================================
[2026-10-18 20:17:04,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:17:04
[2026-10-18 20:17:04,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:17:04,867.867 INFO    ] Initializing speech engine...
[2026-10-18 20:17:04,874.874 INFO    ] 2026-10-18 20:17:04
[2026-10-18 20:17:05,164.164 INFO    ] 2026-10-18 20:17:05
[2026-10-18 20:17:05,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:17:05,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:17:05,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:17:05,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:17:05,649.649 INFO    ] time= 18/10/2026 20:17:05
[2026-10-18 20:17:05,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:17:05,749.749 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:17:05,914.914 INFO    ] No existing commands found in stream
[2026-10-18 20:17:10,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:17:10,933.933 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-18 20:17:12,539.539 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:17:12,542.542 INFO    ] Checking for system updates...
[2026-10-18 20:17:12,581.581 INFO    ] 200
[2026-10-18 20:17:12,584.584 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:17:12,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:17:12,640.640 INFO    ] No update needed
[2026-10-18 20:17:12,643.643 INFO    ] Checking for camera pi updates...
[2026-10-18 20:17:12,677.677 INFO    ] 200
[2026-10-18 20:17:12,680.680 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:17:12,721.721 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:17:22,737.737 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:17:22,777.777 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:17:22,787.787 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:17:22,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:17:22,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:17:22,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:17:24,841.841 INFO    ] ================================================
[2026-10-18 20:17:24,857.857 INFO    ] Launching Daemon at Sun Oct 18 20:17:24 IST 2026
[2026-10-18 20:17:24,867.867 INFO    ] ================================================
[2026-10-18 20:17:25,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:17:25
[2026-10-18 20:17:26,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:17:26,453.453 INFO    ] Initializing speech engine...
[2026-10-18 20:17:26,461.461 INFO    ] 2026-10-18 20:17:26
[2026-10-18 20:17:26,744.744 INFO    ] 2026-10-18 20:17:26
[2026-10-18 20:17:26,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:17:27,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:17:27,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:17:27,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:17:27,284.284 INFO    ] time= 18/10/2026 20:17:27
[2026-10-18 20:17:27,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:17:27,334.334 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:17:27,453.453 INFO    ] No existing commands found in stream
[2026-10-18 20:17:32,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:17:32,482.482 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-18 20:17:35,258.258 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:17:35,261.261 INFO    ] Checking for system updates...
[2026-10-18 20:17:35,298.298 INFO    ] 200
[2026-10-18 20:17:35,301.301 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:17:35,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:17:35,362.362 INFO    ] No update needed
[2026-10-18 20:17:35,365.365 INFO    ] Checking for camera pi updates...
[2026-10-18 20:17:35,410.410 INFO    ] 200
[2026-10-18 20:17:35,413.413 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:17:35,454.454 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:17:45,471.471 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:17:45,509.509 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:17:45,520.520 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:17:45,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:17:45,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:17:45,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:17:47,575.575 INFO    ] ================================================
[2026-10-18 20:17:47,590.590 INFO    ] Launching Daemon at Sun Oct 18 20:17:47 IST 2026
[2026-10-18 20:17:47,601.601 INFO    ] ================================================
[2026-10-18 20:17:48,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:17:48
[2026-10-18 20:17:48,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:17:49,061.061 INFO    ] Initializing speech engine...
[2026-10-18 20:17:49,068.068 INFO    ] 2026-10-18 20:17:49
[2026-10-18 20:17:49,333.333 INFO    ] 2026-10-18 20:17:49
[2026-10-18 20:17:49,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:17:49,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:17:49,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:17:49,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:17:49,888.888 INFO    ] time= 18/10/2026 20:17:49
[2026-10-18 20:17:49,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:17:49,913.913 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:17:50,044.044 INFO    ] No existing commands found in stream
[2026-10-18 20:17:55,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:17:55,080.080 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-18 20:17:57,299.299 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:17:57,302.302 INFO    ] Checking for system updates...
[2026-10-18 20:17:57,339.339 INFO    ] 200
[2026-10-18 20:17:57,342.342 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:17:57,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:17:57,403.403 INFO    ] No update needed
[2026-10-18 20:17:57,406.406 INFO    ] Checking for camera pi updates...
[2026-10-18 20:17:57,440.440 INFO    ] 200
[2026-10-18 20:17:57,443.443 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:17:57,485.485 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:18:07,501.501 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:18:07,539.539 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:18:07,550.550 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:18:07,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:18:07,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:18:07,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:18:09,606.606 INFO    ] ================================================
[2026-10-18 20:18:09,622.622 INFO    ] Launching Daemon at Sun Oct 18 20:18:09 IST 2026
[2026-10-18 20:18:09,634.634 INFO    ] ================================================
[2026-10-18 20:18:10,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:18:10
[2026-10-18 20:18:10,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:18:11,282.282 INFO    ] Initializing speech engine...
[2026-10-18 20:18:11,297.297 INFO    ] 2026-10-18 20:18:11
[2026-10-18 20:18:11,592.592 INFO    ] 2026-10-18 20:18:11
[2026-10-18 20:18:11,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:18:11,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:18:11,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:18:12,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:18:12,144.144 INFO    ] time= 18/10/2026 20:18:12
[2026-10-18 20:18:12,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:18:12,197.197 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:18:12,332.332 INFO    ] No existing commands found in stream
[2026-10-18 20:18:17,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:18:17,367.367 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-18 20:18:20,861.861 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:18:20,864.864 INFO    ] Checking for system updates...
[2026-10-18 20:18:20,904.904 INFO    ] 200
[2026-10-18 20:18:20,907.907 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:18:20,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:18:20,962.962 INFO    ] No update needed
[2026-10-18 20:18:20,964.964 INFO    ] Checking for camera pi updates...
[2026-10-18 20:18:20,998.998 INFO    ] 200
[2026-10-18 20:18:21,001.001 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:18:21,041.041 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:18:31,056.056 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:18:31,091.091 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:18:31,101.101 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:18:31,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:18:31,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:18:31,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:18:33,153.153 INFO    ] ================================================
[2026-10-18 20:18:33,169.169 INFO    ] Launching Daemon at Sun Oct 18 20:18:33 IST 2026
[2026-10-18 20:18:33,180.180 INFO    ] ================================================
[2026-10-18 20:18:33,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:18:33
[2026-10-18 20:18:34,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:18:34,601.601 INFO    ] Initializing speech engine...
[2026-10-18 20:18:34,610.610 INFO    ] 2026-10-18 20:18:34
[2026-10-18 20:18:34,859.859 INFO    ] 2026-10-18 20:18:34
[2026-10-18 20:18:34,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:18:35,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:18:35,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:18:35,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:18:35,354.354 INFO    ] time= 18/10/2026 20:18:35
[2026-10-18 20:18:35,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:18:35,433.433 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:18:35,584.584 INFO    ] No existing commands found in stream
[2026-10-18 20:18:40,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:18:40,607.607 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-18 20:18:44,841.841 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:18:44,844.844 INFO    ] Checking for system updates...
[2026-10-18 20:18:44,881.881 INFO    ] 200
[2026-10-18 20:18:44,884.884 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:18:44,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:18:44,941.941 INFO    ] No update needed
[2026-10-18 20:18:44,944.944 INFO    ] Checking for camera pi updates...
[2026-10-18 20:18:44,979.979 INFO    ] 200
[2026-10-18 20:18:44,981.981 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:18:45,021.021 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:18:55,036.036 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:18:55,070.070 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:18:55,080.080 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:18:55,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:18:55,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:18:55,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:18:57,133.133 INFO    ] ================================================
[2026-10-18 20:18:57,148.148 INFO    ] Launching Daemon at Sun Oct 18 20:18:57 IST 2026
[2026-10-18 20:18:57,158.158 INFO    ] ================================================
[2026-10-18 20:18:57,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:18:57
[2026-10-18 20:18:58,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:18:58,588.588 INFO    ] Initializing speech engine...
[2026-10-18 20:18:58,598.598 INFO    ] 2026-10-18 20:18:58
[2026-10-18 20:18:58,858.858 INFO    ] 2026-10-18 20:18:58
[2026-10-18 20:18:58,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:18:59,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:18:59,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:18:59,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:18:59,357.357 INFO    ] time= 18/10/2026 20:18:59
[2026-10-18 20:18:59,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:18:59,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:18:59,560.560 INFO    ] No existing commands found in stream
[2026-10-18 20:19:04,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:19:04,588.588 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-18 20:19:08,919.919 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 20:19:08,922.922 INFO    ] Checking for system updates...
[2026-10-18 20:19:08,958.958 INFO    ] 200
[2026-10-18 20:19:08,960.960 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:19:09,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:19:09,017.017 INFO    ] No update needed
[2026-10-18 20:19:09,019.019 INFO    ] Checking for camera pi updates...
[2026-10-18 20:19:09,052.052 INFO    ] 200
[2026-10-18 20:19:09,055.055 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:19:09,095.095 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:19:19,110.110 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:19:19,145.145 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:19:19,154.154 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:19:19,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:19:19,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:19:19,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:19:21,208.208 INFO    ] ================================================
[2026-10-18 20:19:21,223.223 INFO    ] Launching Daemon at Sun Oct 18 20:19:21 IST 2026
[2026-10-18 20:19:21,234.234 INFO    ] ================================================
[2026-10-18 20:19:21,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:19:21
[2026-10-18 20:19:22,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:19:22,764.764 INFO    ] Initializing speech engine...
[2026-10-18 20:19:22,772.772 INFO    ] 2026-10-18 20:19:22
[2026-10-18 20:19:23,062.062 INFO    ] 2026-10-18 20:19:23
[2026-10-18 20:19:23,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:19:23,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:19:23,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:19:23,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:19:23,616.616 INFO    ] time= 18/10/2026 20:19:23
[2026-10-18 20:19:23,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:19:23,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:19:23,811.811 INFO    ] No existing commands found in stream
[2026-10-18 20:19:28,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:19:28,845.845 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-18 20:19:31,531.531 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:19:31,535.535 INFO    ] Checking for system updates...
[2026-10-18 20:19:31,574.574 INFO    ] 200
[2026-10-18 20:19:31,578.578 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:19:31,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:19:31,638.638 INFO    ] No update needed
[2026-10-18 20:19:31,640.640 INFO    ] Checking for camera pi updates...
[2026-10-18 20:19:31,687.687 INFO    ] 200
[2026-10-18 20:19:31,690.690 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:19:31,736.736 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:19:41,752.752 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:19:41,788.788 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:19:41,798.798 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:19:41,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:19:41,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:19:41,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:19:43,851.851 INFO    ] ================================================
[2026-10-18 20:19:43,866.866 INFO    ] Launching Daemon at Sun Oct 18 20:19:43 IST 2026
[2026-10-18 20:19:43,877.877 INFO    ] ================================================
[2026-10-18 20:19:44,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:19:44
[2026-10-18 20:19:45,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:19:45,280.280 INFO    ] Initializing speech engine...
[2026-10-18 20:19:45,286.286 INFO    ] 2026-10-18 20:19:45
[2026-10-18 20:19:45,555.555 INFO    ] 2026-10-18 20:19:45
[2026-10-18 20:19:45,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:19:45,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:19:45,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:19:46,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:19:46,110.110 INFO    ] time= 18/10/2026 20:19:46
[2026-10-18 20:19:46,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:19:46,134.134 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:19:46,264.264 INFO    ] No existing commands found in stream
[2026-10-18 20:19:51,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:19:51,280.280 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-18 20:19:52,949.949 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 20:19:52,958.958 INFO    ] Checking for system updates...
[2026-10-18 20:19:52,996.996 INFO    ] 200
[2026-10-18 20:19:52,999.999 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:19:53,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:19:53,069.069 INFO    ] No update needed
[2026-10-18 20:19:53,072.072 INFO    ] Checking for camera pi updates...
[2026-10-18 20:19:53,108.108 INFO    ] 200
[2026-10-18 20:19:53,111.111 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:19:53,153.153 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:20:03,167.167 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:20:03,236.236 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:20:03,250.250 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:20:03,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:20:03,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:20:03,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:20:05,309.309 INFO    ] ================================================
[2026-10-18 20:20:05,324.324 INFO    ] Launching Daemon at Sun Oct 18 20:20:05 IST 2026
[2026-10-18 20:20:05,335.335 INFO    ] ================================================
[2026-10-18 20:20:05,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:20:05
[2026-10-18 20:20:06,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:20:06,793.793 INFO    ] Initializing speech engine...
[2026-10-18 20:20:06,803.803 INFO    ] 2026-10-18 20:20:06
[2026-10-18 20:20:07,081.081 INFO    ] 2026-10-18 20:20:07
[2026-10-18 20:20:07,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:20:07,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:20:07,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:20:07,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:20:07,622.622 INFO    ] time= 18/10/2026 20:20:07
[2026-10-18 20:20:07,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:20:07,673.673 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:20:07,852.852 INFO    ] No existing commands found in stream
[2026-10-18 20:20:12,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:20:12,888.888 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-18 20:20:13,648.648 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:20:13,651.651 INFO    ] Checking for system updates...
[2026-10-18 20:20:13,691.691 INFO    ] 200
[2026-10-18 20:20:13,694.694 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:20:13,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:20:13,754.754 INFO    ] No update needed
[2026-10-18 20:20:13,757.757 INFO    ] Checking for camera pi updates...
[2026-10-18 20:20:13,791.791 INFO    ] 200
[2026-10-18 20:20:13,794.794 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:20:13,835.835 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:20:23,851.851 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:20:23,890.890 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:20:23,901.901 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:20:23,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:20:23,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:20:23,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:20:25,957.957 INFO    ] ================================================
[2026-10-18 20:20:25,972.972 INFO    ] Launching Daemon at Sun Oct 18 20:20:25 IST 2026
[2026-10-18 20:20:25,982.982 INFO    ] ================================================
[2026-10-18 20:20:26,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:20:26
[2026-10-18 20:20:27,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:20:27,442.442 INFO    ] Initializing speech engine...
[2026-10-18 20:20:27,449.449 INFO    ] 2026-10-18 20:20:27
[2026-10-18 20:20:27,711.711 INFO    ] 2026-10-18 20:20:27
[2026-10-18 20:20:27,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:20:27,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:20:27,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:20:28,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:20:28,249.249 INFO    ] time= 18/10/2026 20:20:28
[2026-10-18 20:20:28,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:20:28,275.275 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:20:28,411.411 INFO    ] No existing commands found in stream
[2026-10-18 20:20:33,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:20:33,433.433 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-18 20:20:37,357.357 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 20:20:37,360.360 INFO    ] Checking for system updates...
[2026-10-18 20:20:37,396.396 INFO    ] 200
[2026-10-18 20:20:37,398.398 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:20:37,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:20:37,459.459 INFO    ] No update needed
[2026-10-18 20:20:37,461.461 INFO    ] Checking for camera pi updates...
[2026-10-18 20:20:37,495.495 INFO    ] 200
[2026-10-18 20:20:37,498.498 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:20:37,539.539 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:20:47,552.552 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:20:47,588.588 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:20:47,598.598 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:20:47,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:20:47,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:20:47,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:20:49,653.653 INFO    ] ================================================
[2026-10-18 20:20:49,669.669 INFO    ] Launching Daemon at Sun Oct 18 20:20:49 IST 2026
[2026-10-18 20:20:49,680.680 INFO    ] ================================================
[2026-10-18 20:20:50,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:20:50
[2026-10-18 20:20:50,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:20:51,086.086 INFO    ] Initializing speech engine...
[2026-10-18 20:20:51,094.094 INFO    ] 2026-10-18 20:20:51
[2026-10-18 20:20:51,387.387 INFO    ] 2026-10-18 20:20:51
[2026-10-18 20:20:51,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:20:51,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:20:51,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:20:51,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:20:51,803.803 INFO    ] time= 18/10/2026 20:20:51
[2026-10-18 20:20:51,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:20:51,863.863 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:20:51,996.996 INFO    ] No existing commands found in stream
[2026-10-18 20:20:57,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:20:57,029.029 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-18 20:21:00,348.348 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:21:00,351.351 INFO    ] Checking for system updates...
[2026-10-18 20:21:00,390.390 INFO    ] 200
[2026-10-18 20:21:00,392.392 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:21:00,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:21:00,448.448 INFO    ] No update needed
[2026-10-18 20:21:00,450.450 INFO    ] Checking for camera pi updates...
[2026-10-18 20:21:00,485.485 INFO    ] 200
[2026-10-18 20:21:00,488.488 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:21:00,528.528 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:21:10,542.542 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:21:10,576.576 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:21:10,586.586 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:21:10,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:21:10,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:21:10,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:21:12,638.638 INFO    ] ================================================
[2026-10-18 20:21:12,654.654 INFO    ] Launching Daemon at Sun Oct 18 20:21:12 IST 2026
[2026-10-18 20:21:12,664.664 INFO    ] ================================================
[2026-10-18 20:21:13,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:21:13
[2026-10-18 20:21:13,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:21:14,240.240 INFO    ] Initializing speech engine...
[2026-10-18 20:21:14,247.247 INFO    ] 2026-10-18 20:21:14
[2026-10-18 20:21:14,535.535 INFO    ] 2026-10-18 20:21:14
[2026-10-18 20:21:14,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:21:14,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:21:14,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:21:15,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:21:15,071.071 INFO    ] time= 18/10/2026 20:21:15
[2026-10-18 20:21:15,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:21:15,107.107 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:21:15,255.255 INFO    ] No existing commands found in stream
[2026-10-18 20:21:20,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:21:20,290.290 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-18 20:21:24,644.644 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:21:24,647.647 INFO    ] Checking for system updates...
[2026-10-18 20:21:24,689.689 INFO    ] 200
[2026-10-18 20:21:24,692.692 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:21:24,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:21:24,753.753 INFO    ] No update needed
[2026-10-18 20:21:24,756.756 INFO    ] Checking for camera pi updates...
[2026-10-18 20:21:24,791.791 INFO    ] 200
[2026-10-18 20:21:24,794.794 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:21:24,834.834 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:21:34,847.847 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:21:34,882.882 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:21:34,891.891 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:21:34,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:21:34,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:21:34,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:21:36,944.944 INFO    ] ================================================
[2026-10-18 20:21:36,960.960 INFO    ] Launching Daemon at Sun Oct 18 20:21:36 IST 2026
[2026-10-18 20:21:36,972.972 INFO    ] ================================================
[2026-10-18 20:21:37,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:21:37
[2026-10-18 20:21:38,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:21:38,433.433 INFO    ] Initializing speech engine...
[2026-10-18 20:21:38,439.439 INFO    ] 2026-10-18 20:21:38
[2026-10-18 20:21:38,697.697 INFO    ] 2026-10-18 20:21:38
[2026-10-18 20:21:38,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:21:38,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:21:38,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:21:39,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:21:39,239.239 INFO    ] time= 18/10/2026 20:21:39
[2026-10-18 20:21:39,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:21:39,264.264 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:21:39,399.399 INFO    ] No existing commands found in stream
[2026-10-18 20:21:44,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:21:44,428.428 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-18 20:21:46,596.596 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:21:46,599.599 INFO    ] Checking for system updates...
[2026-10-18 20:21:46,634.634 INFO    ] 200
[2026-10-18 20:21:46,637.637 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:21:46,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:21:46,698.698 INFO    ] No update needed
[2026-10-18 20:21:46,700.700 INFO    ] Checking for camera pi updates...
[2026-10-18 20:21:46,734.734 INFO    ] 200
[2026-10-18 20:21:46,737.737 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:21:46,782.782 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:21:56,799.799 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:21:56,838.838 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:21:56,849.849 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:21:56,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:21:56,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:21:56,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:21:58,904.904 INFO    ] ================================================
[2026-10-18 20:21:58,919.919 INFO    ] Launching Daemon at Sun Oct 18 20:21:58 IST 2026
[2026-10-18 20:21:58,930.930 INFO    ] ================================================
[2026-10-18 20:21:59,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:21:59
[2026-10-18 20:22:00,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:22:00,388.388 INFO    ] Initializing speech engine...
[2026-10-18 20:22:00,396.396 INFO    ] 2026-10-18 20:22:00
[2026-10-18 20:22:00,656.656 INFO    ] 2026-10-18 20:22:00
[2026-10-18 20:22:00,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:22:00,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:22:00,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:22:01,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:22:01,194.194 INFO    ] time= 18/10/2026 20:22:01
[2026-10-18 20:22:01,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:22:01,219.219 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:22:01,349.349 INFO    ] No existing commands found in stream
[2026-10-18 20:22:06,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:22:06,366.366 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-18 20:22:07,249.249 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:22:07,252.252 INFO    ] Checking for system updates...
[2026-10-18 20:22:07,288.288 INFO    ] 200
[2026-10-18 20:22:07,291.291 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:22:07,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:22:07,347.347 INFO    ] No update needed
[2026-10-18 20:22:07,350.350 INFO    ] Checking for camera pi updates...
[2026-10-18 20:22:07,388.388 INFO    ] 200
[2026-10-18 20:22:07,390.390 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:22:07,430.430 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:22:17,445.445 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:22:17,485.485 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:22:17,495.495 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:22:17,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:22:17,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:22:17,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:22:19,550.550 INFO    ] ================================================
[2026-10-18 20:22:19,566.566 INFO    ] Launching Daemon at Sun Oct 18 20:22:19 IST 2026
[2026-10-18 20:22:19,577.577 INFO    ] ================================================
[2026-10-18 20:22:20,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:22:20
[2026-10-18 20:22:20,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:22:21,282.282 INFO    ] Initializing speech engine...
[2026-10-18 20:22:21,293.293 INFO    ] 2026-10-18 20:22:21
[2026-10-18 20:22:21,600.600 INFO    ] 2026-10-18 20:22:21
[2026-10-18 20:22:21,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:22:21,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:22:21,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:22:22,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:22:22,123.123 INFO    ] time= 18/10/2026 20:22:22
[2026-10-18 20:22:22,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:22:22,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:22:22,290.290 INFO    ] No existing commands found in stream
[2026-10-18 20:22:27,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:22:27,330.330 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-18 20:22:28,904.904 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:22:28,907.907 INFO    ] Checking for system updates...
[2026-10-18 20:22:28,944.944 INFO    ] 200
[2026-10-18 20:22:28,947.947 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:22:29,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:22:29,005.005 INFO    ] No update needed
[2026-10-18 20:22:29,008.008 INFO    ] Checking for camera pi updates...
[2026-10-18 20:22:29,048.048 INFO    ] 200
[2026-10-18 20:22:29,051.051 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:22:29,097.097 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:22:39,113.113 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:22:39,155.155 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:22:39,167.167 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:22:39,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:22:39,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:22:39,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:22:41,223.223 INFO    ] ================================================
[2026-10-18 20:22:41,239.239 INFO    ] Launching Daemon at Sun Oct 18 20:22:41 IST 2026
[2026-10-18 20:22:41,250.250 INFO    ] ================================================
[2026-10-18 20:22:41,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:22:41
[2026-10-18 20:22:42,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:22:42,885.885 INFO    ] Initializing speech engine...
[2026-10-18 20:22:42,899.899 INFO    ] 2026-10-18 20:22:42
[2026-10-18 20:22:43,212.212 INFO    ] 2026-10-18 20:22:43
[2026-10-18 20:22:43,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:22:43,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:22:43,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:22:43,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:22:43,747.747 INFO    ] time= 18/10/2026 20:22:43
[2026-10-18 20:22:43,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:22:43,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:22:43,906.906 INFO    ] No existing commands found in stream
[2026-10-18 20:22:48,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:22:48,937.937 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-18 20:22:49,850.850 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:22:49,853.853 INFO    ] Checking for system updates...
[2026-10-18 20:22:49,891.891 INFO    ] 200
[2026-10-18 20:22:49,894.894 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:22:49,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:22:49,961.961 INFO    ] No update needed
[2026-10-18 20:22:49,964.964 INFO    ] Checking for camera pi updates...
[2026-10-18 20:22:49,998.998 INFO    ] 200
[2026-10-18 20:22:50,000.000 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:22:50,044.044 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:23:00,060.060 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:23:00,094.094 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:23:00,104.104 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:23:00,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:23:00,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:23:00,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:23:02,171.171 INFO    ] ================================================
[2026-10-18 20:23:02,198.198 INFO    ] Launching Daemon at Sun Oct 18 20:23:02 IST 2026
[2026-10-18 20:23:02,217.217 INFO    ] ================================================
[2026-10-18 20:23:02,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:23:02
[2026-10-18 20:23:03,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:23:03,967.967 INFO    ] Initializing speech engine...
[2026-10-18 20:23:03,975.975 INFO    ] 2026-10-18 20:23:03
[2026-10-18 20:23:04,248.248 INFO    ] 2026-10-18 20:23:04
[2026-10-18 20:23:04,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:23:04,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:23:04,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:23:04,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:23:04,784.784 INFO    ] time= 18/10/2026 20:23:04
[2026-10-18 20:23:04,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:23:04,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:23:04,952.952 INFO    ] No existing commands found in stream
[2026-10-18 20:23:09,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:23:09,990.990 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-18 20:23:12,909.909 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:23:12,912.912 INFO    ] Checking for system updates...
[2026-10-18 20:23:12,948.948 INFO    ] 200
[2026-10-18 20:23:12,950.950 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:23:13,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:23:13,009.009 INFO    ] No update needed
[2026-10-18 20:23:13,012.012 INFO    ] Checking for camera pi updates...
[2026-10-18 20:23:13,049.049 INFO    ] 200
[2026-10-18 20:23:13,051.051 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:23:13,092.092 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:23:23,104.104 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:23:23,139.139 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:23:23,148.148 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:23:23,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:23:23,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:23:23,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:23:25,200.200 INFO    ] ================================================
[2026-10-18 20:23:25,215.215 INFO    ] Launching Daemon at Sun Oct 18 20:23:25 IST 2026
[2026-10-18 20:23:25,226.226 INFO    ] ================================================
[2026-10-18 20:23:25,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:23:25
[2026-10-18 20:23:26,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:23:26,672.672 INFO    ] Initializing speech engine...
[2026-10-18 20:23:26,679.679 INFO    ] 2026-10-18 20:23:26
[2026-10-18 20:23:26,939.939 INFO    ] 2026-10-18 20:23:26
[2026-10-18 20:23:26,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:23:27,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:23:27,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:23:27,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:23:27,485.485 INFO    ] time= 18/10/2026 20:23:27
[2026-10-18 20:23:27,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:23:27,522.522 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:23:27,662.662 INFO    ] No existing commands found in stream
[2026-10-18 20:23:32,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:23:32,677.677 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-18 20:23:33,539.539 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 20:23:33,541.541 INFO    ] Checking for system updates...
[2026-10-18 20:23:33,577.577 INFO    ] 200
[2026-10-18 20:23:33,579.579 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:23:33,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:23:33,635.635 INFO    ] No update needed
[2026-10-18 20:23:33,637.637 INFO    ] Checking for camera pi updates...
[2026-10-18 20:23:33,676.676 INFO    ] 200
[2026-10-18 20:23:33,679.679 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:23:33,719.719 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:23:43,734.734 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:23:43,769.769 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:23:43,779.779 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:23:43,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:23:43,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:23:43,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:23:45,837.837 INFO    ] ================================================
[2026-10-18 20:23:45,852.852 INFO    ] Launching Daemon at Sun Oct 18 20:23:45 IST 2026
[2026-10-18 20:23:45,863.863 INFO    ] ================================================
[2026-10-18 20:23:46,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:23:46
[2026-10-18 20:23:47,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:23:47,276.276 INFO    ] Initializing speech engine...
[2026-10-18 20:23:47,285.285 INFO    ] 2026-10-18 20:23:47
[2026-10-18 20:23:47,557.557 INFO    ] 2026-10-18 20:23:47
[2026-10-18 20:23:47,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:23:47,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:23:47,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:23:47,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:23:48,046.046 INFO    ] time= 18/10/2026 20:23:48
[2026-10-18 20:23:48,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:23:48,136.136 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:23:48,255.255 INFO    ] No existing commands found in stream
[2026-10-18 20:23:53,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:23:53,280.280 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-18 20:23:55,671.671 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:23:55,675.675 INFO    ] Checking for system updates...
[2026-10-18 20:23:55,712.712 INFO    ] 200
[2026-10-18 20:23:55,715.715 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:23:55,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:23:55,771.771 INFO    ] No update needed
[2026-10-18 20:23:55,774.774 INFO    ] Checking for camera pi updates...
[2026-10-18 20:23:55,809.809 INFO    ] 200
[2026-10-18 20:23:55,811.811 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:23:55,858.858 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:24:05,874.874 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:24:05,917.917 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:24:05,929.929 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:24:05,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:24:05,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:24:05,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:24:07,989.989 INFO    ] ================================================
[2026-10-18 20:24:08,004.004 INFO    ] Launching Daemon at Sun Oct 18 20:24:07 IST 2026
[2026-10-18 20:24:08,015.015 INFO    ] ================================================
[2026-10-18 20:24:08,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:24:08
[2026-10-18 20:24:09,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:24:09,425.425 INFO    ] Initializing speech engine...
[2026-10-18 20:24:09,433.433 INFO    ] 2026-10-18 20:24:09
[2026-10-18 20:24:09,708.708 INFO    ] 2026-10-18 20:24:09
[2026-10-18 20:24:09,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:24:09,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:24:10,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:24:10,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:24:10,218.218 INFO    ] time= 18/10/2026 20:24:10
[2026-10-18 20:24:10,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:24:10,289.289 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:24:10,422.422 INFO    ] No existing commands found in stream
[2026-10-18 20:24:15,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:24:15,450.450 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-18 20:24:16,771.771 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:24:16,774.774 INFO    ] Checking for system updates...
[2026-10-18 20:24:16,813.813 INFO    ] 200
[2026-10-18 20:24:16,816.816 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:24:16,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:24:16,870.870 INFO    ] No update needed
[2026-10-18 20:24:16,872.872 INFO    ] Checking for camera pi updates...
[2026-10-18 20:24:16,905.905 INFO    ] 200
[2026-10-18 20:24:16,907.907 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:24:16,948.948 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:24:26,962.962 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:24:26,997.997 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:24:27,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:24:27,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:24:27,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:24:27,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:24:29,060.060 INFO    ] ================================================
[2026-10-18 20:24:29,076.076 INFO    ] Launching Daemon at Sun Oct 18 20:24:29 IST 2026
[2026-10-18 20:24:29,087.087 INFO    ] ================================================
[2026-10-18 20:24:29,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:24:29
[2026-10-18 20:24:30,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:24:30,668.668 INFO    ] Initializing speech engine...
[2026-10-18 20:24:30,677.677 INFO    ] 2026-10-18 20:24:30
[2026-10-18 20:24:30,926.926 INFO    ] 2026-10-18 20:24:30
[2026-10-18 20:24:30,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:24:31,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:24:31,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:24:31,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:24:31,492.492 INFO    ] time= 18/10/2026 20:24:31
[2026-10-18 20:24:31,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:24:31,516.516 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:24:31,652.652 INFO    ] No existing commands found in stream
[2026-10-18 20:24:36,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:24:36,678.678 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-18 20:24:39,058.058 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:24:39,087.087 INFO    ] Checking for system updates...
[2026-10-18 20:24:39,128.128 INFO    ] 200
[2026-10-18 20:24:39,131.131 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:24:39,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:24:39,184.184 INFO    ] No update needed
[2026-10-18 20:24:39,187.187 INFO    ] Checking for camera pi updates...
[2026-10-18 20:24:39,225.225 INFO    ] 200
[2026-10-18 20:24:39,227.227 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:24:39,267.267 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:24:49,282.282 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:24:49,317.317 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:24:49,327.327 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:24:49,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:24:49,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:24:49,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:24:51,378.378 INFO    ] ================================================
[2026-10-18 20:24:51,394.394 INFO    ] Launching Daemon at Sun Oct 18 20:24:51 IST 2026
[2026-10-18 20:24:51,405.405 INFO    ] ================================================
[2026-10-18 20:24:52,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:24:52
[2026-10-18 20:24:52,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:24:52,881.881 INFO    ] Initializing speech engine...
[2026-10-18 20:24:52,904.904 INFO    ] 2026-10-18 20:24:52
[2026-10-18 20:24:53,167.167 INFO    ] 2026-10-18 20:24:53
[2026-10-18 20:24:53,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:24:53,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:24:53,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:24:53,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:24:53,681.681 INFO    ] time= 18/10/2026 20:24:53
[2026-10-18 20:24:53,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:24:53,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:24:53,906.906 INFO    ] No existing commands found in stream
[2026-10-18 20:24:58,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:24:58,933.933 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-18 20:25:01,523.523 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:25:01,526.526 INFO    ] Checking for system updates...
[2026-10-18 20:25:01,562.562 INFO    ] 200
[2026-10-18 20:25:01,565.565 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:25:01,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:25:01,620.620 INFO    ] No update needed
[2026-10-18 20:25:01,623.623 INFO    ] Checking for camera pi updates...
[2026-10-18 20:25:01,660.660 INFO    ] 200
[2026-10-18 20:25:01,663.663 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:25:01,708.708 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:25:11,723.723 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:25:11,758.758 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:25:11,768.768 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:25:11,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:25:11,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:25:11,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:25:13,821.821 INFO    ] ================================================
[2026-10-18 20:25:13,837.837 INFO    ] Launching Daemon at Sun Oct 18 20:25:13 IST 2026
[2026-10-18 20:25:13,848.848 INFO    ] ================================================
[2026-10-18 20:25:14,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:25:14
[2026-10-18 20:25:15,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:25:15,312.312 INFO    ] Initializing speech engine...
[2026-10-18 20:25:15,334.334 INFO    ] 2026-10-18 20:25:15
[2026-10-18 20:25:15,592.592 INFO    ] 2026-10-18 20:25:15
[2026-10-18 20:25:15,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:25:15,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:25:15,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:25:16,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:25:16,157.157 INFO    ] time= 18/10/2026 20:25:16
[2026-10-18 20:25:16,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:25:16,182.182 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:25:16,316.316 INFO    ] No existing commands found in stream
[2026-10-18 20:25:21,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:25:21,331.331 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-18 20:25:25,653.653 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 20:25:25,656.656 INFO    ] Checking for system updates...
[2026-10-18 20:25:25,693.693 INFO    ] 200
[2026-10-18 20:25:25,696.696 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:25:25,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:25:25,753.753 INFO    ] No update needed
[2026-10-18 20:25:25,756.756 INFO    ] Checking for camera pi updates...
[2026-10-18 20:25:25,794.794 INFO    ] 200
[2026-10-18 20:25:25,797.797 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:25:25,838.838 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:25:35,856.856 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:25:35,896.896 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:25:35,907.907 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:25:35,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:25:35,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:25:35,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:25:37,963.963 INFO    ] ================================================
[2026-10-18 20:25:37,978.978 INFO    ] Launching Daemon at Sun Oct 18 20:25:37 IST 2026
[2026-10-18 20:25:37,990.990 INFO    ] ================================================
[2026-10-18 20:25:38,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:25:38
[2026-10-18 20:25:39,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:25:39,575.575 INFO    ] Initializing speech engine...
[2026-10-18 20:25:39,584.584 INFO    ] 2026-10-18 20:25:39
[2026-10-18 20:25:39,882.882 INFO    ] 2026-10-18 20:25:39
[2026-10-18 20:25:39,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:25:40,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:25:40,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:25:40,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:25:40,269.269 INFO    ] time= 18/10/2026 20:25:40
[2026-10-18 20:25:40,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:25:40,335.335 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:25:40,461.461 INFO    ] No existing commands found in stream
[2026-10-18 20:25:45,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:25:45,471.471 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-18 20:25:49,229.229 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:25:49,232.232 INFO    ] Checking for system updates...
[2026-10-18 20:25:49,271.271 INFO    ] 200
[2026-10-18 20:25:49,273.273 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:25:49,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:25:49,327.327 INFO    ] No update needed
[2026-10-18 20:25:49,329.329 INFO    ] Checking for camera pi updates...
[2026-10-18 20:25:49,362.362 INFO    ] 200
[2026-10-18 20:25:49,365.365 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:25:49,414.414 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:25:59,428.428 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:25:59,465.465 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:25:59,475.475 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:25:59,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:25:59,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:25:59,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:26:01,547.547 INFO    ] ================================================
[2026-10-18 20:26:01,568.568 INFO    ] Launching Daemon at Sun Oct 18 20:26:01 IST 2026
[2026-10-18 20:26:01,585.585 INFO    ] ================================================
[2026-10-18 20:26:02,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:26:02
[2026-10-18 20:26:02,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:26:03,189.189 INFO    ] Initializing speech engine...
[2026-10-18 20:26:03,197.197 INFO    ] 2026-10-18 20:26:03
[2026-10-18 20:26:03,489.489 INFO    ] 2026-10-18 20:26:03
[2026-10-18 20:26:03,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:26:03,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:26:03,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:26:04,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:26:04,026.026 INFO    ] time= 18/10/2026 20:26:04
[2026-10-18 20:26:04,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:26:04,052.052 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:26:04,180.180 INFO    ] No existing commands found in stream
[2026-10-18 20:26:09,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:26:09,199.199 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-18 20:26:10,089.089 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:26:10,092.092 INFO    ] Checking for system updates...
[2026-10-18 20:26:10,130.130 INFO    ] 200
[2026-10-18 20:26:10,132.132 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:26:10,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:26:10,192.192 INFO    ] No update needed
[2026-10-18 20:26:10,194.194 INFO    ] Checking for camera pi updates...
[2026-10-18 20:26:10,228.228 INFO    ] 200
[2026-10-18 20:26:10,230.230 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:26:10,275.275 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:26:20,290.290 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:26:20,325.325 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:26:20,335.335 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:26:20,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:26:20,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:26:20,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:26:22,388.388 INFO    ] ================================================
[2026-10-18 20:26:22,403.403 INFO    ] Launching Daemon at Sun Oct 18 20:26:22 IST 2026
[2026-10-18 20:26:22,414.414 INFO    ] ================================================
[2026-10-18 20:26:23,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:26:23
[2026-10-18 20:26:23,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:26:24,017.017 INFO    ] Initializing speech engine...
[2026-10-18 20:26:24,029.029 INFO    ] 2026-10-18 20:26:24
[2026-10-18 20:26:24,299.299 INFO    ] 2026-10-18 20:26:24
[2026-10-18 20:26:24,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:26:24,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:26:24,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:26:24,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:26:24,851.851 INFO    ] time= 18/10/2026 20:26:24
[2026-10-18 20:26:24,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:26:24,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:26:25,009.009 INFO    ] No existing commands found in stream
[2026-10-18 20:26:30,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:26:30,032.032 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-18 20:26:34,122.122 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:26:34,126.126 INFO    ] Checking for system updates...
[2026-10-18 20:26:34,166.166 INFO    ] 200
[2026-10-18 20:26:34,168.168 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:26:34,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:26:34,224.224 INFO    ] No update needed
[2026-10-18 20:26:34,227.227 INFO    ] Checking for camera pi updates...
[2026-10-18 20:26:34,261.261 INFO    ] 200
[2026-10-18 20:26:34,264.264 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:26:34,306.306 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:26:44,322.322 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:26:44,362.362 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:26:44,372.372 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:26:44,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:26:44,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:26:44,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:26:46,427.427 INFO    ] ================================================
[2026-10-18 20:26:46,442.442 INFO    ] Launching Daemon at Sun Oct 18 20:26:46 IST 2026
[2026-10-18 20:26:46,453.453 INFO    ] ================================================
[2026-10-18 20:26:47,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:26:47
[2026-10-18 20:26:47,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:26:48,054.054 INFO    ] Initializing speech engine...
[2026-10-18 20:26:48,061.061 INFO    ] 2026-10-18 20:26:48
[2026-10-18 20:26:48,346.346 INFO    ] 2026-10-18 20:26:48
[2026-10-18 20:26:48,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:26:48,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:26:48,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:26:48,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:26:48,893.893 INFO    ] time= 18/10/2026 20:26:48
[2026-10-18 20:26:48,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:26:48,941.941 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:26:49,049.049 INFO    ] No existing commands found in stream
[2026-10-18 20:26:54,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:26:54,077.077 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-18 20:26:58,470.470 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:26:58,473.473 INFO    ] Checking for system updates...
[2026-10-18 20:26:58,510.510 INFO    ] 200
[2026-10-18 20:26:58,513.513 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:26:58,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:26:58,569.569 INFO    ] No update needed
[2026-10-18 20:26:58,572.572 INFO    ] Checking for camera pi updates...
[2026-10-18 20:26:58,609.609 INFO    ] 200
[2026-10-18 20:26:58,612.612 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:26:58,657.657 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:27:08,672.672 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:27:08,711.711 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:27:08,722.722 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:27:08,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:27:08,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:27:08,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:27:10,777.777 INFO    ] ================================================
[2026-10-18 20:27:10,792.792 INFO    ] Launching Daemon at Sun Oct 18 20:27:10 IST 2026
[2026-10-18 20:27:10,803.803 INFO    ] ================================================
[2026-10-18 20:27:11,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:27:11
[2026-10-18 20:27:12,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:27:12,392.392 INFO    ] Initializing speech engine...
[2026-10-18 20:27:12,401.401 INFO    ] 2026-10-18 20:27:12
[2026-10-18 20:27:12,673.673 INFO    ] 2026-10-18 20:27:12
[2026-10-18 20:27:12,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:27:12,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:27:12,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:27:13,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:27:13,221.221 INFO    ] time= 18/10/2026 20:27:13
[2026-10-18 20:27:13,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:27:13,249.249 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:27:13,374.374 INFO    ] No existing commands found in stream
[2026-10-18 20:27:18,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:27:18,394.394 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-18 20:27:18,953.953 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 20:27:18,956.956 INFO    ] Checking for system updates...
[2026-10-18 20:27:18,996.996 INFO    ] 200
[2026-10-18 20:27:18,999.999 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:27:19,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:27:19,064.064 INFO    ] No update needed
[2026-10-18 20:27:19,067.067 INFO    ] Checking for camera pi updates...
[2026-10-18 20:27:19,102.102 INFO    ] 200
[2026-10-18 20:27:19,105.105 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:27:19,150.150 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:27:29,166.166 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:27:29,206.206 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:27:29,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:27:29,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:27:29,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:27:29,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:27:31,272.272 INFO    ] ================================================
[2026-10-18 20:27:31,287.287 INFO    ] Launching Daemon at Sun Oct 18 20:27:31 IST 2026
[2026-10-18 20:27:31,297.297 INFO    ] ================================================
[2026-10-18 20:27:31,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:27:31
[2026-10-18 20:27:32,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:27:33,005.005 INFO    ] Initializing speech engine...
[2026-10-18 20:27:33,016.016 INFO    ] 2026-10-18 20:27:33
[2026-10-18 20:27:33,303.303 INFO    ] 2026-10-18 20:27:33
[2026-10-18 20:27:33,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:27:33,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:27:33,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:27:33,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:27:33,844.844 INFO    ] time= 18/10/2026 20:27:33
[2026-10-18 20:27:33,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:27:33,885.885 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:27:34,050.050 INFO    ] No existing commands found in stream
[2026-10-18 20:27:39,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:27:39,084.084 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-18 20:27:42,602.602 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:27:42,606.606 INFO    ] Checking for system updates...
[2026-10-18 20:27:42,642.642 INFO    ] 200
[2026-10-18 20:27:42,645.645 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:27:42,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:27:42,702.702 INFO    ] No update needed
[2026-10-18 20:27:42,705.705 INFO    ] Checking for camera pi updates...
[2026-10-18 20:27:42,738.738 INFO    ] 200
[2026-10-18 20:27:42,741.741 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:27:42,781.781 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:27:52,796.796 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:27:52,832.832 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:27:52,842.842 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:27:52,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:27:52,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:27:52,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:27:54,894.894 INFO    ] ================================================
[2026-10-18 20:27:54,910.910 INFO    ] Launching Daemon at Sun Oct 18 20:27:54 IST 2026
[2026-10-18 20:27:54,920.920 INFO    ] ================================================
[2026-10-18 20:27:55,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:27:55
[2026-10-18 20:27:56,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:27:56,502.502 INFO    ] Initializing speech engine...
[2026-10-18 20:27:56,511.511 INFO    ] 2026-10-18 20:27:56
[2026-10-18 20:27:56,760.760 INFO    ] 2026-10-18 20:27:56
[2026-10-18 20:27:56,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:27:57,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:27:57,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:27:57,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:27:57,329.329 INFO    ] time= 18/10/2026 20:27:57
[2026-10-18 20:27:57,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:27:57,352.352 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:27:57,491.491 INFO    ] No existing commands found in stream
[2026-10-18 20:28:02,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:28:02,520.520 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-18 20:28:06,795.795 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 20:28:06,797.797 INFO    ] Checking for system updates...
[2026-10-18 20:28:06,832.832 INFO    ] 200
[2026-10-18 20:28:06,835.835 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:28:06,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:28:06,889.889 INFO    ] No update needed
[2026-10-18 20:28:06,892.892 INFO    ] Checking for camera pi updates...
[2026-10-18 20:28:06,925.925 INFO    ] 200
[2026-10-18 20:28:06,928.928 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:28:06,969.969 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:28:16,983.983 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:28:17,018.018 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:28:17,028.028 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:28:17,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:28:17,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:28:17,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:28:19,081.081 INFO    ] ================================================
[2026-10-18 20:28:19,096.096 INFO    ] Launching Daemon at Sun Oct 18 20:28:19 IST 2026
[2026-10-18 20:28:19,106.106 INFO    ] ================================================
[2026-10-18 20:28:19,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:28:19
[2026-10-18 20:28:20,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:28:20,563.563 INFO    ] Initializing speech engine...
[2026-10-18 20:28:20,569.569 INFO    ] 2026-10-18 20:28:20
[2026-10-18 20:28:20,830.830 INFO    ] 2026-10-18 20:28:20
[2026-10-18 20:28:20,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:28:21,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:28:21,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:28:21,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:28:21,374.374 INFO    ] time= 18/10/2026 20:28:21
[2026-10-18 20:28:21,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:28:21,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:28:21,524.524 INFO    ] No existing commands found in stream
[2026-10-18 20:28:26,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:28:26,541.541 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-18 20:28:28,774.774 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:28:28,777.777 INFO    ] Checking for system updates...
[2026-10-18 20:28:28,817.817 INFO    ] 200
[2026-10-18 20:28:28,819.819 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:28:28,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:28:28,874.874 INFO    ] No update needed
[2026-10-18 20:28:28,876.876 INFO    ] Checking for camera pi updates...
[2026-10-18 20:28:28,910.910 INFO    ] 200
[2026-10-18 20:28:28,913.913 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:28:28,953.953 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:28:38,968.968 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:28:39,003.003 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:28:39,013.013 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:28:39,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:28:39,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:28:39,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:28:41,066.066 INFO    ] ================================================
[2026-10-18 20:28:41,082.082 INFO    ] Launching Daemon at Sun Oct 18 20:28:41 IST 2026
[2026-10-18 20:28:41,092.092 INFO    ] ================================================
[2026-10-18 20:28:41,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:28:41
[2026-10-18 20:28:42,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:28:42,716.716 INFO    ] Initializing speech engine...
[2026-10-18 20:28:42,731.731 INFO    ] 2026-10-18 20:28:42
[2026-10-18 20:28:43,013.013 INFO    ] 2026-10-18 20:28:42
[2026-10-18 20:28:43,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:28:43,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:28:43,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:28:43,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:28:43,560.560 INFO    ] time= 18/10/2026 20:28:43
[2026-10-18 20:28:43,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:28:43,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:28:43,725.725 INFO    ] No existing commands found in stream
[2026-10-18 20:28:48,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:28:48,751.751 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-18 20:28:50,780.780 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:28:50,783.783 INFO    ] Checking for system updates...
[2026-10-18 20:28:50,820.820 INFO    ] 200
[2026-10-18 20:28:50,822.822 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:28:50,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:28:50,882.882 INFO    ] No update needed
[2026-10-18 20:28:50,884.884 INFO    ] Checking for camera pi updates...
[2026-10-18 20:28:50,917.917 INFO    ] 200
[2026-10-18 20:28:50,919.919 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:28:50,964.964 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:29:00,980.980 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:29:01,016.016 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:29:01,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:29:01,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:29:01,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:29:01,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:29:03,087.087 INFO    ] ================================================
[2026-10-18 20:29:03,102.102 INFO    ] Launching Daemon at Sun Oct 18 20:29:03 IST 2026
[2026-10-18 20:29:03,113.113 INFO    ] ================================================
[2026-10-18 20:29:03,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:29:03
[2026-10-18 20:29:04,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:29:04,590.590 INFO    ] Initializing speech engine...
[2026-10-18 20:29:04,600.600 INFO    ] 2026-10-18 20:29:04
[2026-10-18 20:29:04,858.858 INFO    ] 2026-10-18 20:29:04
[2026-10-18 20:29:04,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:29:05,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:29:05,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:29:05,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:29:05,403.403 INFO    ] time= 18/10/2026 20:29:05
[2026-10-18 20:29:05,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:29:05,430.430 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:29:05,561.561 INFO    ] No existing commands found in stream
[2026-10-18 20:29:10,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:29:10,586.586 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-18 20:29:12,781.781 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:29:12,784.784 INFO    ] Checking for system updates...
[2026-10-18 20:29:12,820.820 INFO    ] 200
[2026-10-18 20:29:12,823.823 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:29:12,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:29:12,878.878 INFO    ] No update needed
[2026-10-18 20:29:12,882.882 INFO    ] Checking for camera pi updates...
[2026-10-18 20:29:12,918.918 INFO    ] 200
[2026-10-18 20:29:12,921.921 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:29:12,961.961 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:29:22,975.975 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:29:23,010.010 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:29:23,020.020 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:29:23,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:29:23,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:29:23,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:29:25,074.074 INFO    ] ================================================
[2026-10-18 20:29:25,089.089 INFO    ] Launching Daemon at Sun Oct 18 20:29:25 IST 2026
[2026-10-18 20:29:25,100.100 INFO    ] ================================================
[2026-10-18 20:29:25,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:29:25
[2026-10-18 20:29:26,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:29:26,521.521 INFO    ] Initializing speech engine...
[2026-10-18 20:29:26,530.530 INFO    ] 2026-10-18 20:29:26
[2026-10-18 20:29:26,775.775 INFO    ] 2026-10-18 20:29:26
[2026-10-18 20:29:26,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:29:27,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:29:27,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:29:27,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:29:27,323.323 INFO    ] time= 18/10/2026 20:29:27
[2026-10-18 20:29:27,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:29:27,344.344 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:29:27,495.495 INFO    ] No existing commands found in stream
[2026-10-18 20:29:32,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:29:32,529.529 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-18 20:29:34,494.494 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:29:34,497.497 INFO    ] Checking for system updates...
[2026-10-18 20:29:34,537.537 INFO    ] 200
[2026-10-18 20:29:34,540.540 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:29:34,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:29:34,596.596 INFO    ] No update needed
[2026-10-18 20:29:34,598.598 INFO    ] Checking for camera pi updates...
[2026-10-18 20:29:34,633.633 INFO    ] 200
[2026-10-18 20:29:34,636.636 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:29:34,678.678 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:29:44,694.694 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:29:44,734.734 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:29:44,746.746 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:29:44,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:29:44,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:29:44,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:29:46,801.801 INFO    ] ================================================
[2026-10-18 20:29:46,816.816 INFO    ] Launching Daemon at Sun Oct 18 20:29:46 IST 2026
[2026-10-18 20:29:46,827.827 INFO    ] ================================================
[2026-10-18 20:29:47,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:29:47
[2026-10-18 20:29:47,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:29:48,231.231 INFO    ] Initializing speech engine...
[2026-10-18 20:29:48,245.245 INFO    ] 2026-10-18 20:29:48
[2026-10-18 20:29:48,511.511 INFO    ] 2026-10-18 20:29:48
[2026-10-18 20:29:48,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:29:48,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:29:48,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:29:48,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:29:48,990.990 INFO    ] time= 18/10/2026 20:29:48
[2026-10-18 20:29:49,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:29:49,089.089 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:29:49,221.221 INFO    ] No existing commands found in stream
[2026-10-18 20:29:54,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:29:54,252.252 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-18 20:29:58,369.369 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:29:58,372.372 INFO    ] Checking for system updates...
[2026-10-18 20:29:58,409.409 INFO    ] 200
[2026-10-18 20:29:58,412.412 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:29:58,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:29:58,476.476 INFO    ] No update needed
[2026-10-18 20:29:58,479.479 INFO    ] Checking for camera pi updates...
[2026-10-18 20:29:58,514.514 INFO    ] 200
[2026-10-18 20:29:58,517.517 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:29:58,559.559 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:30:08,574.574 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:30:08,612.612 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:30:08,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:30:08,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:30:08,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:30:08,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:30:10,679.679 INFO    ] ================================================
[2026-10-18 20:30:10,694.694 INFO    ] Launching Daemon at Sun Oct 18 20:30:10 IST 2026
[2026-10-18 20:30:10,705.705 INFO    ] ================================================
[2026-10-18 20:30:11,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:30:11
[2026-10-18 20:30:11,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:30:12,113.113 INFO    ] Initializing speech engine...
[2026-10-18 20:30:12,127.127 INFO    ] 2026-10-18 20:30:12
[2026-10-18 20:30:12,395.395 INFO    ] 2026-10-18 20:30:12
[2026-10-18 20:30:12,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:30:12,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:30:12,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:30:12,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:30:12,962.962 INFO    ] time= 18/10/2026 20:30:12
[2026-10-18 20:30:12,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:30:12,983.983 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:30:13,131.131 INFO    ] No existing commands found in stream
[2026-10-18 20:30:18,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:30:18,160.160 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-18 20:30:22,503.503 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:30:22,506.506 INFO    ] Checking for system updates...
[2026-10-18 20:30:22,545.545 INFO    ] 200
[2026-10-18 20:30:22,547.547 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:30:22,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:30:22,607.607 INFO    ] No update needed
[2026-10-18 20:30:22,609.609 INFO    ] Checking for camera pi updates...
[2026-10-18 20:30:22,646.646 INFO    ] 200
[2026-10-18 20:30:22,648.648 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:30:22,689.689 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:30:32,704.704 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:30:32,744.744 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:30:32,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:30:32,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:30:32,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:30:32,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:30:34,810.810 INFO    ] ================================================
[2026-10-18 20:30:34,825.825 INFO    ] Launching Daemon at Sun Oct 18 20:30:34 IST 2026
[2026-10-18 20:30:34,836.836 INFO    ] ================================================
[2026-10-18 20:30:35,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:30:35
[2026-10-18 20:30:35,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:30:36,271.271 INFO    ] Initializing speech engine...
[2026-10-18 20:30:36,280.280 INFO    ] 2026-10-18 20:30:36
[2026-10-18 20:30:36,527.527 INFO    ] 2026-10-18 20:30:36
[2026-10-18 20:30:36,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:30:36,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:30:36,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:30:36,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:30:37,026.026 INFO    ] time= 18/10/2026 20:30:36
[2026-10-18 20:30:37,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:30:37,101.101 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:30:37,231.231 INFO    ] No existing commands found in stream
[2026-10-18 20:30:42,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:30:42,264.264 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-18 20:30:44,517.517 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 20:30:44,520.520 INFO    ] Checking for system updates...
[2026-10-18 20:30:44,558.558 INFO    ] 200
[2026-10-18 20:30:44,561.561 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:30:44,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:30:44,616.616 INFO    ] No update needed
[2026-10-18 20:30:44,618.618 INFO    ] Checking for camera pi updates...
[2026-10-18 20:30:44,653.653 INFO    ] 200
[2026-10-18 20:30:44,656.656 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:30:44,696.696 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:30:54,713.713 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:30:54,753.753 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:30:54,763.763 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:30:54,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:30:54,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:30:54,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:30:56,819.819 INFO    ] ================================================
[2026-10-18 20:30:56,834.834 INFO    ] Launching Daemon at Sun Oct 18 20:30:56 IST 2026
[2026-10-18 20:30:56,845.845 INFO    ] ================================================
[2026-10-18 20:30:57,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:30:57
[2026-10-18 20:30:58,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:30:58,432.432 INFO    ] Initializing speech engine...
[2026-10-18 20:30:58,446.446 INFO    ] 2026-10-18 20:30:58
[2026-10-18 20:30:58,729.729 INFO    ] 2026-10-18 20:30:58
[2026-10-18 20:30:58,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:30:59,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:30:59,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:30:59,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:30:59,280.280 INFO    ] time= 18/10/2026 20:30:59
[2026-10-18 20:30:59,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:30:59,320.320 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:30:59,420.420 INFO    ] No existing commands found in stream
[2026-10-18 20:31:04,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:31:04,437.437 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-18 20:31:07,635.635 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 20:31:07,638.638 INFO    ] Checking for system updates...
[2026-10-18 20:31:07,675.675 INFO    ] 200
[2026-10-18 20:31:07,678.678 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:31:07,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:31:07,733.733 INFO    ] No update needed
[2026-10-18 20:31:07,736.736 INFO    ] Checking for camera pi updates...
[2026-10-18 20:31:07,773.773 INFO    ] 200
[2026-10-18 20:31:07,776.776 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:31:07,817.817 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:31:17,833.833 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:31:17,872.872 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:31:17,883.883 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:31:17,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:31:17,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:31:17,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:31:19,937.937 INFO    ] ================================================
[2026-10-18 20:31:19,952.952 INFO    ] Launching Daemon at Sun Oct 18 20:31:19 IST 2026
[2026-10-18 20:31:19,963.963 INFO    ] ================================================
[2026-10-18 20:31:20,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:31:20
[2026-10-18 20:31:21,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:31:21,500.500 INFO    ] Initializing speech engine...
[2026-10-18 20:31:21,520.520 INFO    ] 2026-10-18 20:31:21
[2026-10-18 20:31:21,791.791 INFO    ] 2026-10-18 20:31:21
[2026-10-18 20:31:21,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:31:22,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:31:22,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:31:22,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:31:22,303.303 INFO    ] time= 18/10/2026 20:31:22
[2026-10-18 20:31:22,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:31:22,399.399 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:31:22,533.533 INFO    ] No existing commands found in stream
[2026-10-18 20:31:27,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:31:27,564.564 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-18 20:31:30,437.437 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:31:30,440.440 INFO    ] Checking for system updates...
[2026-10-18 20:31:30,479.479 INFO    ] 200
[2026-10-18 20:31:30,482.482 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:31:30,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:31:30,543.543 INFO    ] No update needed
[2026-10-18 20:31:30,545.545 INFO    ] Checking for camera pi updates...
[2026-10-18 20:31:30,583.583 INFO    ] 200
[2026-10-18 20:31:30,586.586 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:31:30,631.631 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:31:40,646.646 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:31:40,681.681 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:31:40,691.691 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:31:40,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:31:40,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:31:40,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:31:42,745.745 INFO    ] ================================================
[2026-10-18 20:31:42,760.760 INFO    ] Launching Daemon at Sun Oct 18 20:31:42 IST 2026
[2026-10-18 20:31:42,770.770 INFO    ] ================================================
[2026-10-18 20:31:43,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:31:43
[2026-10-18 20:31:43,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:31:44,185.185 INFO    ] Initializing speech engine...
[2026-10-18 20:31:44,209.209 INFO    ] 2026-10-18 20:31:44
[2026-10-18 20:31:44,479.479 INFO    ] 2026-10-18 20:31:44
[2026-10-18 20:31:44,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:31:44,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:31:44,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:31:44,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:31:45,028.028 INFO    ] time= 18/10/2026 20:31:44
[2026-10-18 20:31:45,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:31:45,060.060 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:31:45,211.211 INFO    ] No existing commands found in stream
[2026-10-18 20:31:50,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:31:50,237.237 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-18 20:31:53,016.016 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:31:53,019.019 INFO    ] Checking for system updates...
[2026-10-18 20:31:53,058.058 INFO    ] 200
[2026-10-18 20:31:53,060.060 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:31:53,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:31:53,114.114 INFO    ] No update needed
[2026-10-18 20:31:53,117.117 INFO    ] Checking for camera pi updates...
[2026-10-18 20:31:53,151.151 INFO    ] 200
[2026-10-18 20:31:53,153.153 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:31:53,194.194 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:32:03,212.212 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:32:03,259.259 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:32:03,270.270 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:32:03,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:32:03,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:32:03,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:32:05,329.329 INFO    ] ================================================
[2026-10-18 20:32:05,344.344 INFO    ] Launching Daemon at Sun Oct 18 20:32:05 IST 2026
[2026-10-18 20:32:05,355.355 INFO    ] ================================================
[2026-10-18 20:32:05,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:32:05
[2026-10-18 20:32:06,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:32:06,787.787 INFO    ] Initializing speech engine...
[2026-10-18 20:32:06,795.795 INFO    ] 2026-10-18 20:32:06
[2026-10-18 20:32:07,048.048 INFO    ] 2026-10-18 20:32:07
[2026-10-18 20:32:07,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:32:07,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:32:07,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:32:07,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:32:07,520.520 INFO    ] time= 18/10/2026 20:32:07
[2026-10-18 20:32:07,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:32:07,606.606 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:32:07,755.755 INFO    ] No existing commands found in stream
[2026-10-18 20:32:12,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:32:12,773.773 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-18 20:32:17,196.196 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 20:32:17,199.199 INFO    ] Checking for system updates...
[2026-10-18 20:32:17,235.235 INFO    ] 200
[2026-10-18 20:32:17,237.237 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 20:32:17,240.240 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-18 20:32:17,242.242 INFO    ] Checking for camera pi updates...
[2026-10-18 20:32:17,276.276 INFO    ] 200
[2026-10-18 20:32:17,278.278 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 20:32:17,281.281 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-18 20:32:17,283.283 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:32:17,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:32:17,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:32:17,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:32:19,340.340 INFO    ] ================================================
[2026-10-18 20:32:19,356.356 INFO    ] Launching Daemon at Sun Oct 18 20:32:19 IST 2026
[2026-10-18 20:32:19,367.367 INFO    ] ================================================
[2026-10-18 20:32:19,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:32:19
[2026-10-18 20:32:20,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:32:20,836.836 INFO    ] Initializing speech engine...
[2026-10-18 20:32:20,844.844 INFO    ] 2026-10-18 20:32:20
[2026-10-18 20:32:21,104.104 INFO    ] 2026-10-18 20:32:21
[2026-10-18 20:32:21,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:32:21,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:32:21,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:32:21,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:32:21,596.596 INFO    ] time= 18/10/2026 20:32:21
[2026-10-18 20:32:21,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:32:21,689.689 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:32:21,832.832 INFO    ] No existing commands found in stream
[2026-10-18 20:32:26,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:32:26,857.857 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-18 20:32:30,526.526 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 20:32:30,529.529 INFO    ] Checking for system updates...
[2026-10-18 20:32:30,570.570 INFO    ] 200
[2026-10-18 20:32:30,573.573 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:32:30,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:32:30,637.637 INFO    ] No update needed
[2026-10-18 20:32:30,640.640 INFO    ] Checking for camera pi updates...
[2026-10-18 20:32:30,676.676 INFO    ] 200
[2026-10-18 20:32:30,678.678 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:32:30,724.724 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:32:40,741.741 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:32:40,781.781 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:32:40,793.793 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:32:40,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:32:40,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:32:40,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:32:42,851.851 INFO    ] ================================================
[2026-10-18 20:32:42,869.869 INFO    ] Launching Daemon at Sun Oct 18 20:32:42 IST 2026
[2026-10-18 20:32:42,881.881 INFO    ] ================================================
[2026-10-18 20:32:43,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:32:43
[2026-10-18 20:32:44,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:32:44,414.414 INFO    ] Initializing speech engine...
[2026-10-18 20:32:44,440.440 INFO    ] 2026-10-18 20:32:44
[2026-10-18 20:32:44,726.726 INFO    ] 2026-10-18 20:32:44
[2026-10-18 20:32:44,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:32:45,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:32:45,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:32:45,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:32:45,222.222 INFO    ] time= 18/10/2026 20:32:45
[2026-10-18 20:32:45,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:32:45,294.294 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:32:45,455.455 INFO    ] No existing commands found in stream
[2026-10-18 20:32:50,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:32:50,482.482 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-18 20:32:51,313.313 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:32:51,317.317 INFO    ] Checking for system updates...
[2026-10-18 20:32:51,356.356 INFO    ] 200
[2026-10-18 20:32:51,358.358 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:32:51,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:32:51,414.414 INFO    ] No update needed
[2026-10-18 20:32:51,417.417 INFO    ] Checking for camera pi updates...
[2026-10-18 20:32:51,453.453 INFO    ] 200
[2026-10-18 20:32:51,456.456 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:32:51,496.496 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:33:01,511.511 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:33:01,547.547 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:33:01,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:33:01,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:33:01,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:33:01,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:33:03,612.612 INFO    ] ================================================
[2026-10-18 20:33:03,627.627 INFO    ] Launching Daemon at Sun Oct 18 20:33:03 IST 2026
[2026-10-18 20:33:03,642.642 INFO    ] ================================================
[2026-10-18 20:33:04,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:33:04
[2026-10-18 20:33:04,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:33:05,123.123 INFO    ] Initializing speech engine...
[2026-10-18 20:33:05,134.134 INFO    ] 2026-10-18 20:33:05
[2026-10-18 20:33:05,396.396 INFO    ] 2026-10-18 20:33:05
[2026-10-18 20:33:05,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:33:05,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:33:05,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:33:05,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:33:05,951.951 INFO    ] time= 18/10/2026 20:33:05
[2026-10-18 20:33:05,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:33:05,979.979 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:33:06,111.111 INFO    ] No existing commands found in stream
[2026-10-18 20:33:11,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:33:11,134.134 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-18 20:33:12,918.918 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:33:12,921.921 INFO    ] Checking for system updates...
[2026-10-18 20:33:12,958.958 INFO    ] 200
[2026-10-18 20:33:12,960.960 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:33:13,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:33:13,014.014 INFO    ] No update needed
[2026-10-18 20:33:13,017.017 INFO    ] Checking for camera pi updates...
[2026-10-18 20:33:13,051.051 INFO    ] 200
[2026-10-18 20:33:13,054.054 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:33:13,100.100 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:33:23,114.114 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:33:23,150.150 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:33:23,160.160 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:33:23,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:33:23,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:33:23,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:33:25,214.214 INFO    ] ================================================
[2026-10-18 20:33:25,229.229 INFO    ] Launching Daemon at Sun Oct 18 20:33:25 IST 2026
[2026-10-18 20:33:25,240.240 INFO    ] ================================================
[2026-10-18 20:33:25,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:33:25
[2026-10-18 20:33:26,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:33:26,680.680 INFO    ] Initializing speech engine...
[2026-10-18 20:33:26,687.687 INFO    ] 2026-10-18 20:33:26
[2026-10-18 20:33:26,977.977 INFO    ] 2026-10-18 20:33:26
[2026-10-18 20:33:27,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:33:27,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:33:27,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:33:27,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:33:27,493.493 INFO    ] time= 18/10/2026 20:33:27
[2026-10-18 20:33:27,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:33:27,604.604 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:33:27,735.735 INFO    ] No existing commands found in stream
[2026-10-18 20:33:32,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:33:32,761.761 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-18 20:33:33,394.394 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 20:33:33,397.397 INFO    ] Checking for system updates...
[2026-10-18 20:33:33,436.436 INFO    ] 200
[2026-10-18 20:33:33,438.438 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:33:33,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:33:33,493.493 INFO    ] No update needed
[2026-10-18 20:33:33,495.495 INFO    ] Checking for camera pi updates...
[2026-10-18 20:33:33,529.529 INFO    ] 200
[2026-10-18 20:33:33,531.531 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:33:33,578.578 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:33:43,593.593 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:33:43,631.631 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:33:43,641.641 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:33:43,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:33:43,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:33:43,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:33:45,696.696 INFO    ] ================================================
[2026-10-18 20:33:45,711.711 INFO    ] Launching Daemon at Sun Oct 18 20:33:45 IST 2026
[2026-10-18 20:33:45,721.721 INFO    ] ================================================
[2026-10-18 20:33:46,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:33:46
[2026-10-18 20:33:46,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:33:47,141.141 INFO    ] Initializing speech engine...
[2026-10-18 20:33:47,156.156 INFO    ] 2026-10-18 20:33:47
[2026-10-18 20:33:47,422.422 INFO    ] 2026-10-18 20:33:47
[2026-10-18 20:33:47,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:33:47,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:33:47,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:33:47,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:33:47,894.894 INFO    ] time= 18/10/2026 20:33:47
[2026-10-18 20:33:47,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:33:47,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:33:48,160.160 INFO    ] No existing commands found in stream
[2026-10-18 20:33:53,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:33:53,185.185 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-18 20:33:57,915.915 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:33:57,918.918 INFO    ] Checking for system updates...
[2026-10-18 20:33:57,956.956 INFO    ] 200
[2026-10-18 20:33:57,958.958 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:33:58,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:33:58,018.018 INFO    ] No update needed
[2026-10-18 20:33:58,020.020 INFO    ] Checking for camera pi updates...
[2026-10-18 20:33:58,053.053 INFO    ] 200
[2026-10-18 20:33:58,056.056 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:33:58,097.097 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:34:08,111.111 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:34:08,151.151 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:34:08,162.162 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:34:08,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:34:08,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:34:08,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:34:10,218.218 INFO    ] ================================================
[2026-10-18 20:34:10,233.233 INFO    ] Launching Daemon at Sun Oct 18 20:34:10 IST 2026
[2026-10-18 20:34:10,244.244 INFO    ] ================================================
[2026-10-18 20:34:10,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:34:10
[2026-10-18 20:34:11,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:34:11,666.666 INFO    ] Initializing speech engine...
[2026-10-18 20:34:11,680.680 INFO    ] 2026-10-18 20:34:11
[2026-10-18 20:34:11,965.965 INFO    ] 2026-10-18 20:34:11
[2026-10-18 20:34:12,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:34:12,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:34:12,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:34:12,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:34:12,478.478 INFO    ] time= 18/10/2026 20:34:12
[2026-10-18 20:34:12,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:34:12,586.586 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:34:12,740.740 INFO    ] No existing commands found in stream
[2026-10-18 20:34:17,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:34:17,768.768 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-18 20:34:19,764.764 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:34:19,767.767 INFO    ] Checking for system updates...
[2026-10-18 20:34:19,803.803 INFO    ] 200
[2026-10-18 20:34:19,805.805 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:34:19,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:34:19,865.865 INFO    ] No update needed
[2026-10-18 20:34:19,868.868 INFO    ] Checking for camera pi updates...
[2026-10-18 20:34:19,901.901 INFO    ] 200
[2026-10-18 20:34:19,903.903 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:34:19,943.943 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:34:29,958.958 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:34:29,992.992 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:34:30,002.002 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:34:30,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:34:30,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:34:30,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:34:32,055.055 INFO    ] ================================================
[2026-10-18 20:34:32,071.071 INFO    ] Launching Daemon at Sun Oct 18 20:34:32 IST 2026
[2026-10-18 20:34:32,082.082 INFO    ] ================================================
[2026-10-18 20:34:32,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:34:32
[2026-10-18 20:34:33,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:34:33,566.566 INFO    ] Initializing speech engine...
[2026-10-18 20:34:33,573.573 INFO    ] 2026-10-18 20:34:33
[2026-10-18 20:34:33,822.822 INFO    ] 2026-10-18 20:34:33
[2026-10-18 20:34:33,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:34:34,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:34:34,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:34:34,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:34:34,383.383 INFO    ] time= 18/10/2026 20:34:34
[2026-10-18 20:34:34,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:34:34,410.410 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:34:34,535.535 INFO    ] No existing commands found in stream
[2026-10-18 20:34:39,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:34:39,553.553 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-18 20:34:43,495.495 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 20:34:43,498.498 INFO    ] Checking for system updates...
[2026-10-18 20:34:43,537.537 INFO    ] 200
[2026-10-18 20:34:43,539.539 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:34:43,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:34:43,595.595 INFO    ] No update needed
[2026-10-18 20:34:43,597.597 INFO    ] Checking for camera pi updates...
[2026-10-18 20:34:43,631.631 INFO    ] 200
[2026-10-18 20:34:43,634.634 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:34:43,685.685 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:34:53,701.701 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:34:53,736.736 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:34:53,745.745 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:34:53,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:34:53,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:34:53,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:34:55,799.799 INFO    ] ================================================
[2026-10-18 20:34:55,813.813 INFO    ] Launching Daemon at Sun Oct 18 20:34:55 IST 2026
[2026-10-18 20:34:55,824.824 INFO    ] ================================================
[2026-10-18 20:34:56,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:34:56
[2026-10-18 20:34:57,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:34:57,297.297 INFO    ] Initializing speech engine...
[2026-10-18 20:34:57,305.305 INFO    ] 2026-10-18 20:34:57
[2026-10-18 20:34:57,574.574 INFO    ] 2026-10-18 20:34:57
[2026-10-18 20:34:57,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:34:57,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:34:57,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:34:58,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:34:58,074.074 INFO    ] time= 18/10/2026 20:34:58
[2026-10-18 20:34:58,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:34:58,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:34:58,348.348 INFO    ] No existing commands found in stream
[2026-10-18 20:35:03,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:35:03,373.373 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-18 20:35:03,934.934 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 20:35:03,938.938 INFO    ] Checking for system updates...
[2026-10-18 20:35:03,975.975 INFO    ] 200
[2026-10-18 20:35:03,978.978 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:35:04,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:35:04,035.035 INFO    ] No update needed
[2026-10-18 20:35:04,038.038 INFO    ] Checking for camera pi updates...
[2026-10-18 20:35:04,073.073 INFO    ] 200
[2026-10-18 20:35:04,076.076 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:35:04,118.118 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:35:14,134.134 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:35:14,175.175 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:35:14,186.186 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:35:14,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:35:14,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:35:14,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:35:16,242.242 INFO    ] ================================================
[2026-10-18 20:35:16,258.258 INFO    ] Launching Daemon at Sun Oct 18 20:35:16 IST 2026
[2026-10-18 20:35:16,269.269 INFO    ] ================================================
[2026-10-18 20:35:16,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:35:16
[2026-10-18 20:35:17,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:35:17,798.798 INFO    ] Initializing speech engine...
[2026-10-18 20:35:17,805.805 INFO    ] 2026-10-18 20:35:17
[2026-10-18 20:35:18,071.071 INFO    ] 2026-10-18 20:35:18
[2026-10-18 20:35:18,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:35:18,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:35:18,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:35:18,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:35:18,573.573 INFO    ] time= 18/10/2026 20:35:18
[2026-10-18 20:35:18,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:35:18,676.676 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:35:18,783.783 INFO    ] No existing commands found in stream
[2026-10-18 20:35:23,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:35:23,799.799 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-18 20:35:25,194.194 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:35:25,197.197 INFO    ] Checking for system updates...
[2026-10-18 20:35:25,233.233 INFO    ] 200
[2026-10-18 20:35:25,235.235 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:35:25,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:35:25,297.297 INFO    ] No update needed
[2026-10-18 20:35:25,299.299 INFO    ] Checking for camera pi updates...
[2026-10-18 20:35:25,333.333 INFO    ] 200
[2026-10-18 20:35:25,335.335 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:35:25,379.379 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:35:35,394.394 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:35:35,430.430 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:35:35,440.440 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:35:35,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:35:35,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:35:35,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:35:37,492.492 INFO    ] ================================================
[2026-10-18 20:35:37,508.508 INFO    ] Launching Daemon at Sun Oct 18 20:35:37 IST 2026
[2026-10-18 20:35:37,518.518 INFO    ] ================================================
[2026-10-18 20:35:38,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:35:38
[2026-10-18 20:35:38,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:35:38,944.944 INFO    ] Initializing speech engine...
[2026-10-18 20:35:38,950.950 INFO    ] 2026-10-18 20:35:38
[2026-10-18 20:35:39,246.246 INFO    ] 2026-10-18 20:35:39
[2026-10-18 20:35:39,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:35:39,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:35:39,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:35:39,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:35:39,674.674 INFO    ] time= 18/10/2026 20:35:39
[2026-10-18 20:35:39,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:35:39,686.686 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:35:39,839.839 INFO    ] No existing commands found in stream
[2026-10-18 20:35:44,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:35:44,867.867 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-18 20:35:45,395.395 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:35:45,398.398 INFO    ] Checking for system updates...
[2026-10-18 20:35:45,436.436 INFO    ] 200
[2026-10-18 20:35:45,439.439 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:35:45,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:35:45,503.503 INFO    ] No update needed
[2026-10-18 20:35:45,506.506 INFO    ] Checking for camera pi updates...
[2026-10-18 20:35:45,545.545 INFO    ] 200
[2026-10-18 20:35:45,548.548 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:35:45,594.594 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:35:55,611.611 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:35:55,652.652 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:35:55,663.663 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:35:55,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:35:55,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:35:55,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:35:57,719.719 INFO    ] ================================================
[2026-10-18 20:35:57,734.734 INFO    ] Launching Daemon at Sun Oct 18 20:35:57 IST 2026
[2026-10-18 20:35:57,745.745 INFO    ] ================================================
[2026-10-18 20:35:58,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:35:58
[2026-10-18 20:35:58,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:35:59,151.151 INFO    ] Initializing speech engine...
[2026-10-18 20:35:59,174.174 INFO    ] 2026-10-18 20:35:59
[2026-10-18 20:35:59,425.425 INFO    ] 2026-10-18 20:35:59
[2026-10-18 20:35:59,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:35:59,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:35:59,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:35:59,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:35:59,912.912 INFO    ] time= 18/10/2026 20:35:59
[2026-10-18 20:35:59,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:35:59,989.989 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:36:00,114.114 INFO    ] No existing commands found in stream
[2026-10-18 20:36:05,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:36:05,142.142 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-18 20:36:07,285.285 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:36:07,288.288 INFO    ] Checking for system updates...
[2026-10-18 20:36:07,324.324 INFO    ] 200
[2026-10-18 20:36:07,326.326 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:36:07,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:36:07,382.382 INFO    ] No update needed
[2026-10-18 20:36:07,384.384 INFO    ] Checking for camera pi updates...
[2026-10-18 20:36:07,418.418 INFO    ] 200
[2026-10-18 20:36:07,421.421 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:36:07,461.461 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:36:17,476.476 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:36:17,512.512 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:36:17,522.522 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:36:17,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:36:17,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:36:17,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:36:19,576.576 INFO    ] ================================================
[2026-10-18 20:36:19,591.591 INFO    ] Launching Daemon at Sun Oct 18 20:36:19 IST 2026
[2026-10-18 20:36:19,602.602 INFO    ] ================================================
[2026-10-18 20:36:20,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:36:20
[2026-10-18 20:36:20,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:36:21,011.011 INFO    ] Initializing speech engine...
[2026-10-18 20:36:21,027.027 INFO    ] 2026-10-18 20:36:21
[2026-10-18 20:36:21,315.315 INFO    ] 2026-10-18 20:36:21
[2026-10-18 20:36:21,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:36:21,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:36:21,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:36:21,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:36:21,738.738 INFO    ] time= 18/10/2026 20:36:21
[2026-10-18 20:36:21,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:36:21,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:36:21,916.916 INFO    ] No existing commands found in stream
[2026-10-18 20:36:26,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:36:26,944.944 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-18 20:36:28,765.765 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:36:28,768.768 INFO    ] Checking for system updates...
[2026-10-18 20:36:28,804.804 INFO    ] 200
[2026-10-18 20:36:28,807.807 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:36:28,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:36:28,868.868 INFO    ] No update needed
[2026-10-18 20:36:28,870.870 INFO    ] Checking for camera pi updates...
[2026-10-18 20:36:28,903.903 INFO    ] 200
[2026-10-18 20:36:28,906.906 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:36:28,946.946 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:36:38,960.960 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:36:38,995.995 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:36:39,004.004 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:36:39,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:36:39,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:36:39,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:36:41,057.057 INFO    ] ================================================
[2026-10-18 20:36:41,072.072 INFO    ] Launching Daemon at Sun Oct 18 20:36:41 IST 2026
[2026-10-18 20:36:41,083.083 INFO    ] ================================================
[2026-10-18 20:36:41,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:36:41
[2026-10-18 20:36:42,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:36:42,730.730 INFO    ] Initializing speech engine...
[2026-10-18 20:36:42,743.743 INFO    ] 2026-10-18 20:36:42
[2026-10-18 20:36:43,031.031 INFO    ] 2026-10-18 20:36:43
[2026-10-18 20:36:43,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:36:43,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:36:43,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:36:43,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:36:43,573.573 INFO    ] time= 18/10/2026 20:36:43
[2026-10-18 20:36:43,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:36:43,612.612 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:36:43,754.754 INFO    ] No existing commands found in stream
[2026-10-18 20:36:48,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:36:48,783.783 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-18 20:36:51,156.156 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:36:51,159.159 INFO    ] Checking for system updates...
[2026-10-18 20:36:51,200.200 INFO    ] 200
[2026-10-18 20:36:51,202.202 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:36:51,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:36:51,257.257 INFO    ] No update needed
[2026-10-18 20:36:51,260.260 INFO    ] Checking for camera pi updates...
[2026-10-18 20:36:51,298.298 INFO    ] 200
[2026-10-18 20:36:51,300.300 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:36:51,340.340 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:37:01,355.355 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73dae150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:37:01,390.390 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:37:01,400.400 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:37:01,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:37:01,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:37:01,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:37:03,454.454 INFO    ] ================================================
[2026-10-18 20:37:03,478.478 INFO    ] Launching Daemon at Sun Oct 18 20:37:03 IST 2026
[2026-10-18 20:37:03,494.494 INFO    ] ================================================
[2026-10-18 20:37:04,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:37:04
[2026-10-18 20:37:04,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:37:05,155.155 INFO    ] Initializing speech engine...
[2026-10-18 20:37:05,168.168 INFO    ] 2026-10-18 20:37:05
[2026-10-18 20:37:05,451.451 INFO    ] 2026-10-18 20:37:05
[2026-10-18 20:37:05,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:37:05,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:37:05,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:37:05,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:37:05,989.989 INFO    ] time= 18/10/2026 20:37:05
[2026-10-18 20:37:06,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:37:06,035.035 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:37:06,167.167 INFO    ] No existing commands found in stream
[2026-10-18 20:37:11,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:37:11,196.196 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-18 20:37:12,905.905 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:37:12,908.908 INFO    ] Checking for system updates...
[2026-10-18 20:37:12,945.945 INFO    ] 200
[2026-10-18 20:37:12,948.948 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:37:13,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:37:13,006.006 INFO    ] No update needed
[2026-10-18 20:37:13,009.009 INFO    ] Checking for camera pi updates...
[2026-10-18 20:37:13,044.044 INFO    ] 200
[2026-10-18 20:37:13,047.047 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:37:13,088.088 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:37:23,105.105 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:37:23,146.146 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:37:23,158.158 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:37:23,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:37:23,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:37:23,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:37:25,213.213 INFO    ] ================================================
[2026-10-18 20:37:25,229.229 INFO    ] Launching Daemon at Sun Oct 18 20:37:25 IST 2026
[2026-10-18 20:37:25,240.240 INFO    ] ================================================
[2026-10-18 20:37:25,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:37:25
[2026-10-18 20:37:26,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:37:26,648.648 INFO    ] Initializing speech engine...
[2026-10-18 20:37:26,670.670 INFO    ] 2026-10-18 20:37:26
[2026-10-18 20:37:26,928.928 INFO    ] 2026-10-18 20:37:26
[2026-10-18 20:37:26,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:37:27,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:37:27,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:37:27,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:37:27,456.456 INFO    ] time= 18/10/2026 20:37:27
[2026-10-18 20:37:27,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:37:27,518.518 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:37:27,658.658 INFO    ] No existing commands found in stream
[2026-10-18 20:37:32,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:37:32,671.671 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-18 20:37:33,617.617 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:37:33,619.619 INFO    ] Checking for system updates...
[2026-10-18 20:37:33,657.657 INFO    ] 200
[2026-10-18 20:37:33,660.660 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:37:33,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:37:33,723.723 INFO    ] No update needed
[2026-10-18 20:37:33,725.725 INFO    ] Checking for camera pi updates...
[2026-10-18 20:37:33,760.760 INFO    ] 200
[2026-10-18 20:37:33,763.763 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:37:33,804.804 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:37:43,820.820 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:37:43,861.861 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:37:43,872.872 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:37:43,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:37:43,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:37:43,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:37:45,928.928 INFO    ] ================================================
[2026-10-18 20:37:45,944.944 INFO    ] Launching Daemon at Sun Oct 18 20:37:45 IST 2026
[2026-10-18 20:37:45,954.954 INFO    ] ================================================
[2026-10-18 20:37:46,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:37:46
[2026-10-18 20:37:47,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:37:47,369.369 INFO    ] Initializing speech engine...
[2026-10-18 20:37:47,376.376 INFO    ] 2026-10-18 20:37:47
[2026-10-18 20:37:47,671.671 INFO    ] 2026-10-18 20:37:47
[2026-10-18 20:37:47,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:37:47,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:37:48,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:37:48,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:37:48,173.173 INFO    ] time= 18/10/2026 20:37:48
[2026-10-18 20:37:48,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:37:48,256.256 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:37:48,375.375 INFO    ] No existing commands found in stream
[2026-10-18 20:37:53,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:37:53,389.389 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-18 20:37:57,349.349 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:37:57,353.353 INFO    ] Checking for system updates...
[2026-10-18 20:37:57,394.394 INFO    ] 200
[2026-10-18 20:37:57,397.397 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:37:57,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:37:57,455.455 INFO    ] No update needed
[2026-10-18 20:37:57,458.458 INFO    ] Checking for camera pi updates...
[2026-10-18 20:37:57,497.497 INFO    ] 200
[2026-10-18 20:37:57,500.500 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:37:57,542.542 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:38:07,559.559 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:38:07,599.599 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:38:07,610.610 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:38:07,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:38:07,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:38:07,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:38:09,664.664 INFO    ] ================================================
[2026-10-18 20:38:09,679.679 INFO    ] Launching Daemon at Sun Oct 18 20:38:09 IST 2026
[2026-10-18 20:38:09,690.690 INFO    ] ================================================
[2026-10-18 20:38:10,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:38:10
[2026-10-18 20:38:10,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:38:11,158.158 INFO    ] Initializing speech engine...
[2026-10-18 20:38:11,173.173 INFO    ] 2026-10-18 20:38:11
[2026-10-18 20:38:11,492.492 INFO    ] 2026-10-18 20:38:11
[2026-10-18 20:38:11,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:38:11,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:38:11,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:38:12,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:38:12,053.053 INFO    ] time= 18/10/2026 20:38:12
[2026-10-18 20:38:12,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:38:12,084.084 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:38:12,236.236 INFO    ] No existing commands found in stream
[2026-10-18 20:38:17,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:38:17,260.260 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-18 20:38:20,660.660 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:38:20,663.663 INFO    ] Checking for system updates...
[2026-10-18 20:38:20,698.698 INFO    ] 200
[2026-10-18 20:38:20,700.700 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:38:20,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:38:20,754.754 INFO    ] No update needed
[2026-10-18 20:38:20,757.757 INFO    ] Checking for camera pi updates...
[2026-10-18 20:38:20,790.790 INFO    ] 200
[2026-10-18 20:38:20,792.792 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:38:20,834.834 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:38:30,849.849 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:38:30,883.883 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:38:30,893.893 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:38:30,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:38:30,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:38:30,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:38:32,947.947 INFO    ] ================================================
[2026-10-18 20:38:32,965.965 INFO    ] Launching Daemon at Sun Oct 18 20:38:32 IST 2026
[2026-10-18 20:38:32,976.976 INFO    ] ================================================
[2026-10-18 20:38:33,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:38:33
[2026-10-18 20:38:34,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:38:34,537.537 INFO    ] Initializing speech engine...
[2026-10-18 20:38:34,550.550 INFO    ] 2026-10-18 20:38:34
[2026-10-18 20:38:34,844.844 INFO    ] 2026-10-18 20:38:34
[2026-10-18 20:38:34,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:38:35,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:38:35,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:38:35,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:38:35,390.390 INFO    ] time= 18/10/2026 20:38:35
[2026-10-18 20:38:35,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:38:35,439.439 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:38:35,592.592 INFO    ] No existing commands found in stream
[2026-10-18 20:38:40,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:38:40,626.626 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-18 20:38:42,818.818 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 20:38:42,821.821 INFO    ] Checking for system updates...
[2026-10-18 20:38:42,859.859 INFO    ] 200
[2026-10-18 20:38:42,862.862 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:38:42,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:38:42,918.918 INFO    ] No update needed
[2026-10-18 20:38:42,923.923 INFO    ] Checking for camera pi updates...
[2026-10-18 20:38:42,970.970 INFO    ] 200
[2026-10-18 20:38:42,972.972 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:38:43,013.013 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:38:53,028.028 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2e150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:38:53,064.064 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:38:53,074.074 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:38:53,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:38:53,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:38:53,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:38:55,127.127 INFO    ] ================================================
[2026-10-18 20:38:55,143.143 INFO    ] Launching Daemon at Sun Oct 18 20:38:55 IST 2026
[2026-10-18 20:38:55,155.155 INFO    ] ================================================
[2026-10-18 20:38:55,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:38:55
[2026-10-18 20:38:56,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:38:56,629.629 INFO    ] Initializing speech engine...
[2026-10-18 20:38:56,637.637 INFO    ] 2026-10-18 20:38:56
[2026-10-18 20:38:56,898.898 INFO    ] 2026-10-18 20:38:56
[2026-10-18 20:38:56,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:38:57,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:38:57,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:38:57,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:38:57,429.429 INFO    ] time= 18/10/2026 20:38:57
[2026-10-18 20:38:57,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:38:57,461.461 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:38:57,596.596 INFO    ] No existing commands found in stream
[2026-10-18 20:39:02,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:39:02,622.622 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-18 20:39:03,820.820 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 20:39:03,823.823 INFO    ] Checking for system updates...
[2026-10-18 20:39:03,861.861 INFO    ] 200
[2026-10-18 20:39:03,864.864 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:39:03,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:39:03,929.929 INFO    ] No update needed
[2026-10-18 20:39:03,932.932 INFO    ] Checking for camera pi updates...
[2026-10-18 20:39:03,979.979 INFO    ] 200
[2026-10-18 20:39:03,982.982 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:39:04,026.026 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:39:14,041.041 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:39:14,076.076 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:39:14,085.085 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:39:14,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:39:14,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:39:14,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:39:16,138.138 INFO    ] ================================================
[2026-10-18 20:39:16,153.153 INFO    ] Launching Daemon at Sun Oct 18 20:39:16 IST 2026
[2026-10-18 20:39:16,165.165 INFO    ] ================================================
[2026-10-18 20:39:16,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:39:16
[2026-10-18 20:39:17,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:39:17,588.588 INFO    ] Initializing speech engine...
[2026-10-18 20:39:17,598.598 INFO    ] 2026-10-18 20:39:17
[2026-10-18 20:39:17,843.843 INFO    ] 2026-10-18 20:39:17
[2026-10-18 20:39:17,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:39:18,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:39:18,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:39:18,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:39:18,296.296 INFO    ] time= 18/10/2026 20:39:18
[2026-10-18 20:39:18,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:39:18,410.410 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:39:18,559.559 INFO    ] No existing commands found in stream
[2026-10-18 20:39:23,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:39:23,579.579 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-18 20:39:27,525.525 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 20:39:27,528.528 INFO    ] Checking for system updates...
[2026-10-18 20:39:27,564.564 INFO    ] 200
[2026-10-18 20:39:27,567.567 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:39:27,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:39:27,630.630 INFO    ] No update needed
[2026-10-18 20:39:27,632.632 INFO    ] Checking for camera pi updates...
[2026-10-18 20:39:27,667.667 INFO    ] 200
[2026-10-18 20:39:27,669.669 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:39:27,710.710 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:39:37,725.725 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:39:37,760.760 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:39:37,770.770 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:39:37,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:39:37,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:39:37,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:39:39,824.824 INFO    ] ================================================
[2026-10-18 20:39:39,840.840 INFO    ] Launching Daemon at Sun Oct 18 20:39:39 IST 2026
[2026-10-18 20:39:39,854.854 INFO    ] ================================================
[2026-10-18 20:39:40,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:39:40
[2026-10-18 20:39:41,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:39:41,282.282 INFO    ] Initializing speech engine...
[2026-10-18 20:39:41,291.291 INFO    ] 2026-10-18 20:39:41
[2026-10-18 20:39:41,541.541 INFO    ] 2026-10-18 20:39:41
[2026-10-18 20:39:41,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:39:41,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:39:41,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:39:41,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:39:42,010.010 INFO    ] time= 18/10/2026 20:39:41
[2026-10-18 20:39:42,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:39:42,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:39:42,265.265 INFO    ] No existing commands found in stream
[2026-10-18 20:39:47,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:39:47,280.280 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-18 20:39:49,610.610 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:39:49,613.613 INFO    ] Checking for system updates...
[2026-10-18 20:39:49,650.650 INFO    ] 200
[2026-10-18 20:39:49,653.653 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:39:49,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:39:49,709.709 INFO    ] No update needed
[2026-10-18 20:39:49,711.711 INFO    ] Checking for camera pi updates...
[2026-10-18 20:39:49,750.750 INFO    ] 200
[2026-10-18 20:39:49,752.752 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:39:49,793.793 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:39:59,809.809 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:39:59,844.844 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:39:59,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:39:59,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:39:59,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:39:59,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:40:01,909.909 INFO    ] ================================================
[2026-10-18 20:40:01,926.926 INFO    ] Launching Daemon at Sun Oct 18 20:40:01 IST 2026
[2026-10-18 20:40:01,937.937 INFO    ] ================================================
[2026-10-18 20:40:02,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:40:02
[2026-10-18 20:40:03,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:40:04,014.014 INFO    ] Initializing speech engine...
[2026-10-18 20:40:04,021.021 INFO    ] 2026-10-18 20:40:04
[2026-10-18 20:40:04,310.310 INFO    ] 2026-10-18 20:40:04
[2026-10-18 20:40:04,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:40:04,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:40:04,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:40:04,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:40:04,754.754 INFO    ] time= 18/10/2026 20:40:04
[2026-10-18 20:40:04,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:40:04,822.822 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:40:04,905.905 INFO    ] No existing commands found in stream
[2026-10-18 20:40:09,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:40:09,938.938 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-18 20:40:13,619.619 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:40:13,622.622 INFO    ] Checking for system updates...
[2026-10-18 20:40:13,659.659 INFO    ] 200
[2026-10-18 20:40:13,662.662 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:40:13,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:40:13,726.726 INFO    ] No update needed
[2026-10-18 20:40:13,729.729 INFO    ] Checking for camera pi updates...
[2026-10-18 20:40:13,764.764 INFO    ] 200
[2026-10-18 20:40:13,767.767 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:40:13,809.809 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:40:23,826.826 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:40:23,866.866 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:40:23,878.878 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:40:23,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:40:23,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:40:23,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:40:25,934.934 INFO    ] ================================================
[2026-10-18 20:40:25,950.950 INFO    ] Launching Daemon at Sun Oct 18 20:40:25 IST 2026
[2026-10-18 20:40:25,961.961 INFO    ] ================================================
[2026-10-18 20:40:26,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:40:26
[2026-10-18 20:40:27,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:40:27,421.421 INFO    ] Initializing speech engine...
[2026-10-18 20:40:27,431.431 INFO    ] 2026-10-18 20:40:27
[2026-10-18 20:40:27,693.693 INFO    ] 2026-10-18 20:40:27
[2026-10-18 20:40:27,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:40:28,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:40:28,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:40:28,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:40:28,236.236 INFO    ] time= 18/10/2026 20:40:28
[2026-10-18 20:40:28,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:40:28,325.325 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:40:28,462.462 INFO    ] No existing commands found in stream
[2026-10-18 20:40:33,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:40:33,489.489 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-18 20:40:37,699.699 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:40:37,701.701 INFO    ] Checking for system updates...
[2026-10-18 20:40:37,738.738 INFO    ] 200
[2026-10-18 20:40:37,740.740 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:40:37,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:40:37,799.799 INFO    ] No update needed
[2026-10-18 20:40:37,801.801 INFO    ] Checking for camera pi updates...
[2026-10-18 20:40:37,839.839 INFO    ] 200
[2026-10-18 20:40:37,842.842 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:40:37,881.881 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:40:47,895.895 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:40:47,931.931 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:40:47,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:40:47,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:40:47,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:40:47,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:40:49,994.994 INFO    ] ================================================
[2026-10-18 20:40:50,009.009 INFO    ] Launching Daemon at Sun Oct 18 20:40:50 IST 2026
[2026-10-18 20:40:50,020.020 INFO    ] ================================================
[2026-10-18 20:40:50,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:40:50
[2026-10-18 20:40:51,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:40:51,484.484 INFO    ] Initializing speech engine...
[2026-10-18 20:40:51,490.490 INFO    ] 2026-10-18 20:40:51
[2026-10-18 20:40:51,738.738 INFO    ] 2026-10-18 20:40:51
[2026-10-18 20:40:51,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:40:52,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:40:52,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:40:52,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:40:52,295.295 INFO    ] time= 18/10/2026 20:40:52
[2026-10-18 20:40:52,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:40:52,320.320 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:40:52,448.448 INFO    ] No existing commands found in stream
[2026-10-18 20:40:57,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:40:57,470.470 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-18 20:40:59,364.364 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:40:59,367.367 INFO    ] Checking for system updates...
[2026-10-18 20:40:59,403.403 INFO    ] 200
[2026-10-18 20:40:59,406.406 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:40:59,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:40:59,462.462 INFO    ] No update needed
[2026-10-18 20:40:59,465.465 INFO    ] Checking for camera pi updates...
[2026-10-18 20:40:59,504.504 INFO    ] 200
[2026-10-18 20:40:59,507.507 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:40:59,548.548 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:41:09,563.563 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:41:09,599.599 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:41:09,609.609 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:41:09,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:41:09,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:41:09,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:41:11,663.663 INFO    ] ================================================
[2026-10-18 20:41:11,679.679 INFO    ] Launching Daemon at Sun Oct 18 20:41:11 IST 2026
[2026-10-18 20:41:11,690.690 INFO    ] ================================================
[2026-10-18 20:41:12,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:41:12
[2026-10-18 20:41:12,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:41:13,168.168 INFO    ] Initializing speech engine...
[2026-10-18 20:41:13,178.178 INFO    ] 2026-10-18 20:41:13
[2026-10-18 20:41:13,455.455 INFO    ] 2026-10-18 20:41:13
[2026-10-18 20:41:13,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:41:13,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:41:13,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:41:13,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:41:13,888.888 INFO    ] time= 18/10/2026 20:41:13
[2026-10-18 20:41:13,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:41:13,917.917 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:41:14,052.052 INFO    ] No existing commands found in stream
[2026-10-18 20:41:19,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:41:19,075.075 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-18 20:41:22,473.473 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:41:22,476.476 INFO    ] Checking for system updates...
[2026-10-18 20:41:22,512.512 INFO    ] 200
[2026-10-18 20:41:22,516.516 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:41:22,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:41:22,581.581 INFO    ] No update needed
[2026-10-18 20:41:22,584.584 INFO    ] Checking for camera pi updates...
[2026-10-18 20:41:22,619.619 INFO    ] 200
[2026-10-18 20:41:22,622.622 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:41:22,674.674 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:41:32,696.696 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:41:32,739.739 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:41:32,753.753 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:41:32,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:41:32,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:41:32,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:41:34,813.813 INFO    ] ================================================
[2026-10-18 20:41:34,829.829 INFO    ] Launching Daemon at Sun Oct 18 20:41:34 IST 2026
[2026-10-18 20:41:34,840.840 INFO    ] ================================================
[2026-10-18 20:41:35,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:41:35
[2026-10-18 20:41:36,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:41:36,303.303 INFO    ] Initializing speech engine...
[2026-10-18 20:41:36,308.308 INFO    ] 2026-10-18 20:41:36
[2026-10-18 20:41:36,571.571 INFO    ] 2026-10-18 20:41:36
[2026-10-18 20:41:36,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:41:36,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:41:36,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:41:37,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:41:37,116.116 INFO    ] time= 18/10/2026 20:41:37
[2026-10-18 20:41:37,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:41:37,141.141 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:41:37,266.266 INFO    ] No existing commands found in stream
[2026-10-18 20:41:42,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:41:42,283.283 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-18 20:41:44,971.971 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 20:41:44,974.974 INFO    ] Checking for system updates...
[2026-10-18 20:41:45,010.010 INFO    ] 200
[2026-10-18 20:41:45,013.013 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:41:45,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:41:45,068.068 INFO    ] No update needed
[2026-10-18 20:41:45,070.070 INFO    ] Checking for camera pi updates...
[2026-10-18 20:41:45,105.105 INFO    ] 200
[2026-10-18 20:41:45,107.107 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:41:45,147.147 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:41:55,163.163 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:41:55,198.198 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:41:55,208.208 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:41:55,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:41:55,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:41:55,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:41:57,262.262 INFO    ] ================================================
[2026-10-18 20:41:57,278.278 INFO    ] Launching Daemon at Sun Oct 18 20:41:57 IST 2026
[2026-10-18 20:41:57,289.289 INFO    ] ================================================
[2026-10-18 20:41:57,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:41:57
[2026-10-18 20:41:58,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:41:58,752.752 INFO    ] Initializing speech engine...
[2026-10-18 20:41:58,758.758 INFO    ] 2026-10-18 20:41:58
[2026-10-18 20:41:59,022.022 INFO    ] 2026-10-18 20:41:59
[2026-10-18 20:41:59,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:41:59,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:41:59,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:41:59,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:41:59,528.528 INFO    ] time= 18/10/2026 20:41:59
[2026-10-18 20:41:59,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:41:59,637.637 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:41:59,795.795 INFO    ] No existing commands found in stream
[2026-10-18 20:42:04,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:42:04,831.831 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-18 20:42:08,805.805 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:42:08,808.808 INFO    ] Checking for system updates...
[2026-10-18 20:42:08,844.844 INFO    ] 200
[2026-10-18 20:42:08,870.870 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:42:08,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:42:08,931.931 INFO    ] No update needed
[2026-10-18 20:42:08,933.933 INFO    ] Checking for camera pi updates...
[2026-10-18 20:42:08,966.966 INFO    ] 200
[2026-10-18 20:42:08,969.969 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:42:09,009.009 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:42:19,024.024 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:42:19,060.060 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:42:19,070.070 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:42:19,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:42:19,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:42:19,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:42:21,124.124 INFO    ] ================================================
[2026-10-18 20:42:21,140.140 INFO    ] Launching Daemon at Sun Oct 18 20:42:21 IST 2026
[2026-10-18 20:42:21,151.151 INFO    ] ================================================
[2026-10-18 20:42:21,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:42:21
[2026-10-18 20:42:22,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:42:22,613.613 INFO    ] Initializing speech engine...
[2026-10-18 20:42:22,622.622 INFO    ] 2026-10-18 20:42:22
[2026-10-18 20:42:22,882.882 INFO    ] 2026-10-18 20:42:22
[2026-10-18 20:42:22,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:42:23,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:42:23,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:42:23,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:42:23,425.425 INFO    ] time= 18/10/2026 20:42:23
[2026-10-18 20:42:23,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:42:23,452.452 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:42:23,580.580 INFO    ] No existing commands found in stream
[2026-10-18 20:42:28,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:42:28,602.602 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-18 20:42:31,140.140 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:42:31,143.143 INFO    ] Checking for system updates...
[2026-10-18 20:42:31,179.179 INFO    ] 200
[2026-10-18 20:42:31,182.182 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:42:31,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:42:31,239.239 INFO    ] No update needed
[2026-10-18 20:42:31,242.242 INFO    ] Checking for camera pi updates...
[2026-10-18 20:42:31,276.276 INFO    ] 200
[2026-10-18 20:42:31,278.278 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:42:31,319.319 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:42:41,333.333 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:42:41,369.369 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:42:41,379.379 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:42:41,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:42:41,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:42:41,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:42:43,433.433 INFO    ] ================================================
[2026-10-18 20:42:43,448.448 INFO    ] Launching Daemon at Sun Oct 18 20:42:43 IST 2026
[2026-10-18 20:42:43,459.459 INFO    ] ================================================
[2026-10-18 20:42:44,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:42:44
[2026-10-18 20:42:44,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:42:44,900.900 INFO    ] Initializing speech engine...
[2026-10-18 20:42:44,920.920 INFO    ] 2026-10-18 20:42:44
[2026-10-18 20:42:45,192.192 INFO    ] 2026-10-18 20:42:45
[2026-10-18 20:42:45,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:42:45,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:42:45,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:42:45,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:42:45,579.579 INFO    ] time= 18/10/2026 20:42:45
[2026-10-18 20:42:45,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:42:45,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:42:45,780.780 INFO    ] No existing commands found in stream
[2026-10-18 20:42:50,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:42:50,792.792 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-18 20:42:55,076.076 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:42:55,079.079 INFO    ] Checking for system updates...
[2026-10-18 20:42:55,116.116 INFO    ] 200
[2026-10-18 20:42:55,118.118 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:42:55,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:42:55,180.180 INFO    ] No update needed
[2026-10-18 20:42:55,183.183 INFO    ] Checking for camera pi updates...
[2026-10-18 20:42:55,217.217 INFO    ] 200
[2026-10-18 20:42:55,220.220 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:42:55,265.265 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:43:05,281.281 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:43:05,317.317 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:43:05,327.327 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:43:05,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:43:05,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:43:05,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:43:07,380.380 INFO    ] ================================================
[2026-10-18 20:43:07,396.396 INFO    ] Launching Daemon at Sun Oct 18 20:43:07 IST 2026
[2026-10-18 20:43:07,407.407 INFO    ] ================================================
[2026-10-18 20:43:07,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:43:07
[2026-10-18 20:43:08,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:43:08,858.858 INFO    ] Initializing speech engine...
[2026-10-18 20:43:08,872.872 INFO    ] 2026-10-18 20:43:08
[2026-10-18 20:43:09,164.164 INFO    ] 2026-10-18 20:43:09
[2026-10-18 20:43:09,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:43:09,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:43:09,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:43:09,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:43:09,588.588 INFO    ] time= 18/10/2026 20:43:09
[2026-10-18 20:43:09,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:43:09,622.622 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:43:09,751.751 INFO    ] No existing commands found in stream
[2026-10-18 20:43:14,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:43:14,781.781 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-18 20:43:16,786.786 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 20:43:16,789.789 INFO    ] Checking for system updates...
[2026-10-18 20:43:16,824.824 INFO    ] 200
[2026-10-18 20:43:16,827.827 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:43:16,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:43:16,881.881 INFO    ] No update needed
[2026-10-18 20:43:16,884.884 INFO    ] Checking for camera pi updates...
[2026-10-18 20:43:16,917.917 INFO    ] 200
[2026-10-18 20:43:16,920.920 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:43:16,961.961 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:43:26,976.976 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:43:27,012.012 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:43:27,022.022 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:43:27,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:43:27,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:43:27,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:43:29,076.076 INFO    ] ================================================
[2026-10-18 20:43:29,092.092 INFO    ] Launching Daemon at Sun Oct 18 20:43:29 IST 2026
[2026-10-18 20:43:29,103.103 INFO    ] ================================================
[2026-10-18 20:43:29,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:43:29
[2026-10-18 20:43:30,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:43:30,504.504 INFO    ] Initializing speech engine...
[2026-10-18 20:43:30,518.518 INFO    ] 2026-10-18 20:43:30
[2026-10-18 20:43:30,786.786 INFO    ] 2026-10-18 20:43:30
[2026-10-18 20:43:30,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:43:31,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:43:31,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:43:31,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:43:31,298.298 INFO    ] time= 18/10/2026 20:43:31
[2026-10-18 20:43:31,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:43:31,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:43:31,514.514 INFO    ] No existing commands found in stream
[2026-10-18 20:43:36,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:43:36,529.529 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-18 20:43:39,783.783 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:43:39,785.785 INFO    ] Checking for system updates...
[2026-10-18 20:43:39,822.822 INFO    ] 200
[2026-10-18 20:43:39,825.825 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:43:39,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:43:39,881.881 INFO    ] No update needed
[2026-10-18 20:43:39,884.884 INFO    ] Checking for camera pi updates...
[2026-10-18 20:43:39,922.922 INFO    ] 200
[2026-10-18 20:43:39,925.925 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:43:39,972.972 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:43:49,989.989 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:43:50,029.029 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:43:50,040.040 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:43:50,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:43:50,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:43:50,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:43:52,097.097 INFO    ] ================================================
[2026-10-18 20:43:52,113.113 INFO    ] Launching Daemon at Sun Oct 18 20:43:52 IST 2026
[2026-10-18 20:43:52,124.124 INFO    ] ================================================
[2026-10-18 20:43:52,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:43:52
[2026-10-18 20:43:53,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:43:53,580.580 INFO    ] Initializing speech engine...
[2026-10-18 20:43:53,590.590 INFO    ] 2026-10-18 20:43:53
[2026-10-18 20:43:53,852.852 INFO    ] 2026-10-18 20:43:53
[2026-10-18 20:43:53,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:43:54,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:43:54,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:43:54,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:43:54,275.275 INFO    ] time= 18/10/2026 20:43:54
[2026-10-18 20:43:54,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:43:54,358.358 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:43:54,460.460 INFO    ] No existing commands found in stream
[2026-10-18 20:43:59,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:43:59,474.474 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-18 20:44:00,964.964 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 20:44:00,967.967 INFO    ] Checking for system updates...
[2026-10-18 20:44:01,003.003 INFO    ] 200
[2026-10-18 20:44:01,005.005 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:44:01,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:44:01,060.060 INFO    ] No update needed
[2026-10-18 20:44:01,062.062 INFO    ] Checking for camera pi updates...
[2026-10-18 20:44:01,096.096 INFO    ] 200
[2026-10-18 20:44:01,099.099 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:44:01,138.138 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:44:11,153.153 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:44:11,189.189 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:44:11,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:44:11,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:44:11,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:44:11,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:44:13,252.252 INFO    ] ================================================
[2026-10-18 20:44:13,268.268 INFO    ] Launching Daemon at Sun Oct 18 20:44:13 IST 2026
[2026-10-18 20:44:13,280.280 INFO    ] ================================================
[2026-10-18 20:44:13,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:44:13
[2026-10-18 20:44:14,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:44:14,734.734 INFO    ] Initializing speech engine...
[2026-10-18 20:44:14,741.741 INFO    ] 2026-10-18 20:44:14
[2026-10-18 20:44:15,044.044 INFO    ] 2026-10-18 20:44:15
[2026-10-18 20:44:15,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:44:15,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:44:15,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:44:15,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:44:15,472.472 INFO    ] time= 18/10/2026 20:44:15
[2026-10-18 20:44:15,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:44:15,488.488 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:44:15,567.567 INFO    ] No existing commands found in stream
[2026-10-18 20:44:20,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:44:20,605.605 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-18 20:44:22,693.693 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:44:22,696.696 INFO    ] Checking for system updates...
[2026-10-18 20:44:22,731.731 INFO    ] 200
[2026-10-18 20:44:22,734.734 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:44:22,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:44:22,788.788 INFO    ] No update needed
[2026-10-18 20:44:22,791.791 INFO    ] Checking for camera pi updates...
[2026-10-18 20:44:22,824.824 INFO    ] 200
[2026-10-18 20:44:22,826.826 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:44:22,867.867 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:44:32,882.882 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:44:32,920.920 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:44:32,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:44:32,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:44:32,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:44:32,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:44:34,987.987 INFO    ] ================================================
[2026-10-18 20:44:35,003.003 INFO    ] Launching Daemon at Sun Oct 18 20:44:34 IST 2026
[2026-10-18 20:44:35,014.014 INFO    ] ================================================
[2026-10-18 20:44:35,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:44:35
[2026-10-18 20:44:36,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:44:36,461.461 INFO    ] Initializing speech engine...
[2026-10-18 20:44:36,468.468 INFO    ] 2026-10-18 20:44:36
[2026-10-18 20:44:36,766.766 INFO    ] 2026-10-18 20:44:36
[2026-10-18 20:44:36,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:44:37,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:44:37,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:44:37,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:44:37,306.306 INFO    ] time= 18/10/2026 20:44:37
[2026-10-18 20:44:37,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:44:37,416.416 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:44:37,570.570 INFO    ] No existing commands found in stream
[2026-10-18 20:44:42,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:44:42,600.600 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-18 20:44:47,242.242 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:44:47,245.245 INFO    ] Checking for system updates...
[2026-10-18 20:44:47,282.282 INFO    ] 200
[2026-10-18 20:44:47,285.285 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:44:47,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:44:47,341.341 INFO    ] No update needed
[2026-10-18 20:44:47,344.344 INFO    ] Checking for camera pi updates...
[2026-10-18 20:44:47,379.379 INFO    ] 200
[2026-10-18 20:44:47,382.382 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:44:47,428.428 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:44:57,444.444 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:44:57,485.485 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:44:57,496.496 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:44:57,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:44:57,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:44:57,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:44:59,552.552 INFO    ] ================================================
[2026-10-18 20:44:59,568.568 INFO    ] Launching Daemon at Sun Oct 18 20:44:59 IST 2026
[2026-10-18 20:44:59,580.580 INFO    ] ================================================
[2026-10-18 20:45:00,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:45:00
[2026-10-18 20:45:00,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:45:01,005.005 INFO    ] Initializing speech engine...
[2026-10-18 20:45:01,014.014 INFO    ] 2026-10-18 20:45:01
[2026-10-18 20:45:01,264.264 INFO    ] 2026-10-18 20:45:01
[2026-10-18 20:45:01,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:45:01,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:45:01,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:45:01,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:45:01,755.755 INFO    ] time= 18/10/2026 20:45:01
[2026-10-18 20:45:01,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:45:01,841.841 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:45:01,947.947 INFO    ] No existing commands found in stream
[2026-10-18 20:45:06,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:45:06,979.979 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-18 20:45:11,409.409 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:45:11,412.412 INFO    ] Checking for system updates...
[2026-10-18 20:45:11,448.448 INFO    ] 200
[2026-10-18 20:45:11,450.450 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:45:11,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:45:11,505.505 INFO    ] No update needed
[2026-10-18 20:45:11,507.507 INFO    ] Checking for camera pi updates...
[2026-10-18 20:45:11,544.544 INFO    ] 200
[2026-10-18 20:45:11,547.547 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:45:11,587.587 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:45:21,602.602 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:45:21,638.638 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:45:21,648.648 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:45:21,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:45:21,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:45:21,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:45:23,701.701 INFO    ] ================================================
[2026-10-18 20:45:23,717.717 INFO    ] Launching Daemon at Sun Oct 18 20:45:23 IST 2026
[2026-10-18 20:45:23,728.728 INFO    ] ================================================
[2026-10-18 20:45:24,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:45:24
[2026-10-18 20:45:25,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:45:25,368.368 INFO    ] Initializing speech engine...
[2026-10-18 20:45:25,378.378 INFO    ] 2026-10-18 20:45:25
[2026-10-18 20:45:25,665.665 INFO    ] 2026-10-18 20:45:25
[2026-10-18 20:45:25,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:45:25,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:45:25,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:45:26,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:45:26,207.207 INFO    ] time= 18/10/2026 20:45:26
[2026-10-18 20:45:26,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:45:26,249.249 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:45:26,408.408 INFO    ] No existing commands found in stream
[2026-10-18 20:45:31,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:45:31,442.442 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-18 20:45:34,597.597 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:45:34,600.600 INFO    ] Checking for system updates...
[2026-10-18 20:45:34,641.641 INFO    ] 200
[2026-10-18 20:45:34,644.644 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:45:34,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:45:34,700.700 INFO    ] No update needed
[2026-10-18 20:45:34,703.703 INFO    ] Checking for camera pi updates...
[2026-10-18 20:45:34,737.737 INFO    ] 200
[2026-10-18 20:45:34,740.740 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:45:34,796.796 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:45:44,811.811 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:45:44,857.857 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:45:44,868.868 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:45:44,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:45:44,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:45:44,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:45:46,926.926 INFO    ] ================================================
[2026-10-18 20:45:46,943.943 INFO    ] Launching Daemon at Sun Oct 18 20:45:46 IST 2026
[2026-10-18 20:45:46,954.954 INFO    ] ================================================
[2026-10-18 20:45:47,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:45:47
[2026-10-18 20:45:48,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:45:48,373.373 INFO    ] Initializing speech engine...
[2026-10-18 20:45:48,382.382 INFO    ] 2026-10-18 20:45:48
[2026-10-18 20:45:48,628.628 INFO    ] 2026-10-18 20:45:48
[2026-10-18 20:45:48,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:45:48,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:45:48,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:45:49,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:45:49,109.109 INFO    ] time= 18/10/2026 20:45:49
[2026-10-18 20:45:49,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:45:49,190.190 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:45:49,324.324 INFO    ] No existing commands found in stream
[2026-10-18 20:45:54,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:45:54,350.350 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-18 20:45:58,354.354 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:45:58,356.356 INFO    ] Checking for system updates...
[2026-10-18 20:45:58,391.391 INFO    ] 200
[2026-10-18 20:45:58,394.394 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:45:58,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:45:58,448.448 INFO    ] No update needed
[2026-10-18 20:45:58,451.451 INFO    ] Checking for camera pi updates...
[2026-10-18 20:45:58,484.484 INFO    ] 200
[2026-10-18 20:45:58,486.486 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:45:58,531.531 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:46:08,546.546 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:46:08,581.581 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:46:08,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:46:08,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:46:08,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:46:08,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:46:10,645.645 INFO    ] ================================================
[2026-10-18 20:46:10,660.660 INFO    ] Launching Daemon at Sun Oct 18 20:46:10 IST 2026
[2026-10-18 20:46:10,672.672 INFO    ] ================================================
[2026-10-18 20:46:11,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:46:11
[2026-10-18 20:46:11,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:46:12,094.094 INFO    ] Initializing speech engine...
[2026-10-18 20:46:12,118.118 INFO    ] 2026-10-18 20:46:12
[2026-10-18 20:46:12,395.395 INFO    ] 2026-10-18 20:46:12
[2026-10-18 20:46:12,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:46:12,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:46:12,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:46:12,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:46:12,817.817 INFO    ] time= 18/10/2026 20:46:12
[2026-10-18 20:46:12,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:46:12,847.847 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:46:12,989.989 INFO    ] No existing commands found in stream
[2026-10-18 20:46:18,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:46:18,011.011 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-18 20:46:20,979.979 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 20:46:20,982.982 INFO    ] Checking for system updates...
[2026-10-18 20:46:21,020.020 INFO    ] 200
[2026-10-18 20:46:21,022.022 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:46:21,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:46:21,078.078 INFO    ] No update needed
[2026-10-18 20:46:21,081.081 INFO    ] Checking for camera pi updates...
[2026-10-18 20:46:21,120.120 INFO    ] 200
[2026-10-18 20:46:21,123.123 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:46:21,164.164 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:46:31,180.180 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:46:31,215.215 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:46:31,224.224 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:46:31,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:46:31,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:46:31,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:46:33,279.279 INFO    ] ================================================
[2026-10-18 20:46:33,294.294 INFO    ] Launching Daemon at Sun Oct 18 20:46:33 IST 2026
[2026-10-18 20:46:33,306.306 INFO    ] ================================================
[2026-10-18 20:46:33,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:46:33
[2026-10-18 20:46:34,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:46:34,873.873 INFO    ] Initializing speech engine...
[2026-10-18 20:46:34,879.879 INFO    ] 2026-10-18 20:46:34
[2026-10-18 20:46:35,142.142 INFO    ] 2026-10-18 20:46:35
[2026-10-18 20:46:35,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:46:35,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:46:35,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:46:35,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:46:35,622.622 INFO    ] time= 18/10/2026 20:46:35
[2026-10-18 20:46:35,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:46:35,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:46:35,843.843 INFO    ] No existing commands found in stream
[2026-10-18 20:46:40,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:46:40,859.859 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-18 20:46:41,610.610 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:46:41,612.612 INFO    ] Checking for system updates...
[2026-10-18 20:46:41,648.648 INFO    ] 200
[2026-10-18 20:46:41,651.651 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:46:41,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:46:41,705.705 INFO    ] No update needed
[2026-10-18 20:46:41,708.708 INFO    ] Checking for camera pi updates...
[2026-10-18 20:46:41,741.741 INFO    ] 200
[2026-10-18 20:46:41,744.744 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:46:41,784.784 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:46:51,799.799 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:46:51,834.834 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:46:51,843.843 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:46:51,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:46:51,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:46:51,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:46:53,897.897 INFO    ] ================================================
[2026-10-18 20:46:53,913.913 INFO    ] Launching Daemon at Sun Oct 18 20:46:53 IST 2026
[2026-10-18 20:46:53,925.925 INFO    ] ================================================
[2026-10-18 20:46:54,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:46:54
[2026-10-18 20:46:55,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:46:55,410.410 INFO    ] Initializing speech engine...
[2026-10-18 20:46:55,433.433 INFO    ] 2026-10-18 20:46:55
[2026-10-18 20:46:55,688.688 INFO    ] 2026-10-18 20:46:55
[2026-10-18 20:46:55,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:46:55,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:46:55,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:46:56,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:46:56,194.194 INFO    ] time= 18/10/2026 20:46:56
[2026-10-18 20:46:56,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:46:56,267.267 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:46:56,417.417 INFO    ] No existing commands found in stream
[2026-10-18 20:47:01,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:47:01,439.439 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-18 20:47:02,244.244 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 20:47:02,247.247 INFO    ] Checking for system updates...
[2026-10-18 20:47:02,289.289 INFO    ] 200
[2026-10-18 20:47:02,292.292 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:47:02,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:47:02,360.360 INFO    ] No update needed
[2026-10-18 20:47:02,363.363 INFO    ] Checking for camera pi updates...
[2026-10-18 20:47:02,401.401 INFO    ] 200
[2026-10-18 20:47:02,403.403 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:47:02,451.451 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:47:12,467.467 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:47:12,502.502 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:47:12,512.512 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:47:12,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:47:12,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:47:12,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:47:14,567.567 INFO    ] ================================================
[2026-10-18 20:47:14,583.583 INFO    ] Launching Daemon at Sun Oct 18 20:47:14 IST 2026
[2026-10-18 20:47:14,594.594 INFO    ] ================================================
[2026-10-18 20:47:15,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:47:15
[2026-10-18 20:47:15,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:47:16,039.039 INFO    ] Initializing speech engine...
[2026-10-18 20:47:16,048.048 INFO    ] 2026-10-18 20:47:16
[2026-10-18 20:47:16,343.343 INFO    ] 2026-10-18 20:47:16
[2026-10-18 20:47:16,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:47:16,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:47:16,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:47:16,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:47:16,867.867 INFO    ] time= 18/10/2026 20:47:16
[2026-10-18 20:47:16,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:47:16,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:47:17,122.122 INFO    ] No existing commands found in stream
[2026-10-18 20:47:22,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:47:22,150.150 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-18 20:47:26,474.474 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:47:26,476.476 INFO    ] Checking for system updates...
[2026-10-18 20:47:26,512.512 INFO    ] 200
[2026-10-18 20:47:26,515.515 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:47:26,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:47:26,570.570 INFO    ] No update needed
[2026-10-18 20:47:26,573.573 INFO    ] Checking for camera pi updates...
[2026-10-18 20:47:26,607.607 INFO    ] 200
[2026-10-18 20:47:26,610.610 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:47:26,653.653 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:47:36,669.669 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:47:36,707.707 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:47:36,717.717 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:47:36,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:47:36,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:47:36,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:47:38,772.772 INFO    ] ================================================
[2026-10-18 20:47:38,788.788 INFO    ] Launching Daemon at Sun Oct 18 20:47:38 IST 2026
[2026-10-18 20:47:38,800.800 INFO    ] ================================================
[2026-10-18 20:47:39,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:47:39
[2026-10-18 20:47:39,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:47:40,222.222 INFO    ] Initializing speech engine...
[2026-10-18 20:47:40,236.236 INFO    ] 2026-10-18 20:47:40
[2026-10-18 20:47:40,528.528 INFO    ] 2026-10-18 20:47:40
[2026-10-18 20:47:40,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:47:40,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:47:40,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:47:41,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:47:41,042.042 INFO    ] time= 18/10/2026 20:47:41
[2026-10-18 20:47:41,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:47:41,155.155 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:47:41,308.308 INFO    ] No existing commands found in stream
[2026-10-18 20:47:46,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:47:46,336.336 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-18 20:47:49,663.663 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:47:49,666.666 INFO    ] Checking for system updates...
[2026-10-18 20:47:49,703.703 INFO    ] 200
[2026-10-18 20:47:49,706.706 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:47:49,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:47:49,762.762 INFO    ] No update needed
[2026-10-18 20:47:49,765.765 INFO    ] Checking for camera pi updates...
[2026-10-18 20:47:49,800.800 INFO    ] 200
[2026-10-18 20:47:49,802.802 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:47:49,843.843 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:47:59,859.859 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:47:59,899.899 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:47:59,910.910 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:47:59,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:47:59,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:47:59,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:48:02,996.996 INFO    ] ================================================
[2026-10-18 20:48:02,041.041 INFO    ] Launching Daemon at Sun Oct 18 20:48:02 IST 2026
[2026-10-18 20:48:02,069.069 INFO    ] ================================================
[2026-10-18 20:48:02,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:48:02
[2026-10-18 20:48:03,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:48:03,872.872 INFO    ] Initializing speech engine...
[2026-10-18 20:48:03,892.892 INFO    ] 2026-10-18 20:48:03
[2026-10-18 20:48:04,142.142 INFO    ] 2026-10-18 20:48:04
[2026-10-18 20:48:04,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:48:04,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:48:04,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:48:04,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:48:04,642.642 INFO    ] time= 18/10/2026 20:48:04
[2026-10-18 20:48:04,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:48:04,712.712 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:48:04,811.811 INFO    ] No existing commands found in stream
[2026-10-18 20:48:09,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:48:09,823.823 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-18 20:48:13,543.543 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:48:13,546.546 INFO    ] Checking for system updates...
[2026-10-18 20:48:13,582.582 INFO    ] 200
[2026-10-18 20:48:13,584.584 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:48:13,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:48:13,639.639 INFO    ] No update needed
[2026-10-18 20:48:13,641.641 INFO    ] Checking for camera pi updates...
[2026-10-18 20:48:13,675.675 INFO    ] 200
[2026-10-18 20:48:13,678.678 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:48:13,718.718 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:48:23,731.731 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:48:23,767.767 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:48:23,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:48:23,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:48:23,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:48:23,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:48:25,829.829 INFO    ] ================================================
[2026-10-18 20:48:25,845.845 INFO    ] Launching Daemon at Sun Oct 18 20:48:25 IST 2026
[2026-10-18 20:48:25,856.856 INFO    ] ================================================
[2026-10-18 20:48:26,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:48:26
[2026-10-18 20:48:27,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:48:27,309.309 INFO    ] Initializing speech engine...
[2026-10-18 20:48:27,316.316 INFO    ] 2026-10-18 20:48:27
[2026-10-18 20:48:27,581.581 INFO    ] 2026-10-18 20:48:27
[2026-10-18 20:48:27,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:48:27,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:48:27,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:48:28,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:48:28,113.113 INFO    ] time= 18/10/2026 20:48:28
[2026-10-18 20:48:28,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:48:28,213.213 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:48:28,359.359 INFO    ] No existing commands found in stream
[2026-10-18 20:48:33,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:48:33,385.385 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-18 20:48:37,733.733 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:48:37,735.735 INFO    ] Checking for system updates...
[2026-10-18 20:48:37,772.772 INFO    ] 200
[2026-10-18 20:48:37,774.774 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:48:37,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:48:37,829.829 INFO    ] No update needed
[2026-10-18 20:48:37,831.831 INFO    ] Checking for camera pi updates...
[2026-10-18 20:48:37,868.868 INFO    ] 200
[2026-10-18 20:48:37,871.871 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:48:37,911.911 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:48:47,926.926 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:48:47,961.961 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:48:47,971.971 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:48:47,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:48:47,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:48:47,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:48:50,024.024 INFO    ] ================================================
[2026-10-18 20:48:50,040.040 INFO    ] Launching Daemon at Sun Oct 18 20:48:50 IST 2026
[2026-10-18 20:48:50,051.051 INFO    ] ================================================
[2026-10-18 20:48:50,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:48:50
[2026-10-18 20:48:51,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:48:51,556.556 INFO    ] Initializing speech engine...
[2026-10-18 20:48:51,561.561 INFO    ] 2026-10-18 20:48:51
[2026-10-18 20:48:51,860.860 INFO    ] 2026-10-18 20:48:51
[2026-10-18 20:48:51,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:48:52,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:48:52,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:48:52,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:48:52,286.286 INFO    ] time= 18/10/2026 20:48:52
[2026-10-18 20:48:52,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:48:52,297.297 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:48:52,416.416 INFO    ] No existing commands found in stream
[2026-10-18 20:48:57,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:48:57,449.449 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-18 20:48:59,174.174 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 20:48:59,176.176 INFO    ] Checking for system updates...
[2026-10-18 20:48:59,212.212 INFO    ] 200
[2026-10-18 20:48:59,215.215 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:48:59,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:48:59,273.273 INFO    ] No update needed
[2026-10-18 20:48:59,276.276 INFO    ] Checking for camera pi updates...
[2026-10-18 20:48:59,309.309 INFO    ] 200
[2026-10-18 20:48:59,311.311 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:48:59,351.351 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:49:09,366.366 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:49:09,406.406 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:49:09,416.416 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:49:09,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:49:09,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:49:09,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:49:11,472.472 INFO    ] ================================================
[2026-10-18 20:49:11,489.489 INFO    ] Launching Daemon at Sun Oct 18 20:49:11 IST 2026
[2026-10-18 20:49:11,500.500 INFO    ] ================================================
[2026-10-18 20:49:12,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:49:12
[2026-10-18 20:49:12,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:49:12,961.961 INFO    ] Initializing speech engine...
[2026-10-18 20:49:12,976.976 INFO    ] 2026-10-18 20:49:12
[2026-10-18 20:49:13,258.258 INFO    ] 2026-10-18 20:49:13
[2026-10-18 20:49:13,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:49:13,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:49:13,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:49:13,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:49:13,756.756 INFO    ] time= 18/10/2026 20:49:13
[2026-10-18 20:49:13,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:49:13,789.789 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:49:13,908.908 INFO    ] No existing commands found in stream
[2026-10-18 20:49:18,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:49:18,921.921 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-18 20:49:22,014.014 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:49:22,017.017 INFO    ] Checking for system updates...
[2026-10-18 20:49:22,053.053 INFO    ] 200
[2026-10-18 20:49:22,056.056 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:49:22,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:49:22,110.110 INFO    ] No update needed
[2026-10-18 20:49:22,112.112 INFO    ] Checking for camera pi updates...
[2026-10-18 20:49:22,152.152 INFO    ] 200
[2026-10-18 20:49:22,155.155 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:49:22,194.194 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:49:32,209.209 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:49:32,247.247 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:49:32,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:49:32,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:49:32,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:49:32,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:49:34,312.312 INFO    ] ================================================
[2026-10-18 20:49:34,328.328 INFO    ] Launching Daemon at Sun Oct 18 20:49:34 IST 2026
[2026-10-18 20:49:34,340.340 INFO    ] ================================================
[2026-10-18 20:49:34,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:49:34
[2026-10-18 20:49:35,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:49:35,806.806 INFO    ] Initializing speech engine...
[2026-10-18 20:49:35,815.815 INFO    ] 2026-10-18 20:49:35
[2026-10-18 20:49:36,075.075 INFO    ] 2026-10-18 20:49:36
[2026-10-18 20:49:36,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:49:36,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:49:36,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:49:36,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:49:36,547.547 INFO    ] time= 18/10/2026 20:49:36
[2026-10-18 20:49:36,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:49:36,623.623 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:49:36,756.756 INFO    ] No existing commands found in stream
[2026-10-18 20:49:41,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:49:41,783.783 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-18 20:49:44,975.975 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:49:44,978.978 INFO    ] Checking for system updates...
[2026-10-18 20:49:45,013.013 INFO    ] 200
[2026-10-18 20:49:45,015.015 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:49:45,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:49:45,070.070 INFO    ] No update needed
[2026-10-18 20:49:45,072.072 INFO    ] Checking for camera pi updates...
[2026-10-18 20:49:45,105.105 INFO    ] 200
[2026-10-18 20:49:45,107.107 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:49:45,147.147 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:49:55,163.163 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:49:55,197.197 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:49:55,207.207 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:49:55,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:49:55,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:49:55,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:49:57,260.260 INFO    ] ================================================
[2026-10-18 20:49:57,277.277 INFO    ] Launching Daemon at Sun Oct 18 20:49:57 IST 2026
[2026-10-18 20:49:57,288.288 INFO    ] ================================================
[2026-10-18 20:49:57,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:49:57
[2026-10-18 20:49:58,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:49:58,710.710 INFO    ] Initializing speech engine...
[2026-10-18 20:49:58,720.720 INFO    ] 2026-10-18 20:49:58
[2026-10-18 20:49:58,966.966 INFO    ] 2026-10-18 20:49:58
[2026-10-18 20:49:59,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:49:59,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:49:59,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:49:59,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:49:59,499.499 INFO    ] time= 18/10/2026 20:49:59
[2026-10-18 20:49:59,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:49:59,537.537 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:49:59,679.679 INFO    ] No existing commands found in stream
[2026-10-18 20:50:04,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:50:04,698.698 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-18 20:50:07,879.879 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:50:07,881.881 INFO    ] Checking for system updates...
[2026-10-18 20:50:07,917.917 INFO    ] 200
[2026-10-18 20:50:07,919.919 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:50:07,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:50:07,976.976 INFO    ] No update needed
[2026-10-18 20:50:07,978.978 INFO    ] Checking for camera pi updates...
[2026-10-18 20:50:08,012.012 INFO    ] 200
[2026-10-18 20:50:08,014.014 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:50:08,054.054 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:50:18,069.069 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:50:18,103.103 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:50:18,113.113 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:50:18,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:50:18,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:50:18,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:50:20,167.167 INFO    ] ================================================
[2026-10-18 20:50:20,183.183 INFO    ] Launching Daemon at Sun Oct 18 20:50:20 IST 2026
[2026-10-18 20:50:20,194.194 INFO    ] ================================================
[2026-10-18 20:50:20,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:50:20
[2026-10-18 20:50:21,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:50:21,739.739 INFO    ] Initializing speech engine...
[2026-10-18 20:50:21,747.747 INFO    ] 2026-10-18 20:50:21
[2026-10-18 20:50:22,016.016 INFO    ] 2026-10-18 20:50:22
[2026-10-18 20:50:22,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:50:22,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:50:22,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:50:22,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:50:22,566.566 INFO    ] time= 18/10/2026 20:50:22
[2026-10-18 20:50:22,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:50:22,612.612 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:50:22,719.719 INFO    ] No existing commands found in stream
[2026-10-18 20:50:27,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:50:27,748.748 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-18 20:50:28,269.269 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:50:28,272.272 INFO    ] Checking for system updates...
[2026-10-18 20:50:28,311.311 INFO    ] 200
[2026-10-18 20:50:28,314.314 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:50:28,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:50:28,369.369 INFO    ] No update needed
[2026-10-18 20:50:28,371.371 INFO    ] Checking for camera pi updates...
[2026-10-18 20:50:28,407.407 INFO    ] 200
[2026-10-18 20:50:28,409.409 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:50:28,449.449 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:50:38,462.462 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:50:38,497.497 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:50:38,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:50:38,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:50:38,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:50:38,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:50:40,559.559 INFO    ] ================================================
[2026-10-18 20:50:40,575.575 INFO    ] Launching Daemon at Sun Oct 18 20:50:40 IST 2026
[2026-10-18 20:50:40,585.585 INFO    ] ================================================
[2026-10-18 20:50:41,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:50:41
[2026-10-18 20:50:41,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:50:42,038.038 INFO    ] Initializing speech engine...
[2026-10-18 20:50:42,053.053 INFO    ] 2026-10-18 20:50:42
[2026-10-18 20:50:42,336.336 INFO    ] 2026-10-18 20:50:42
[2026-10-18 20:50:42,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:50:42,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:50:42,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:50:42,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:50:42,753.753 INFO    ] time= 18/10/2026 20:50:42
[2026-10-18 20:50:42,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:50:42,802.802 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:50:42,936.936 INFO    ] No existing commands found in stream
[2026-10-18 20:50:47,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:50:47,969.969 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-18 20:50:51,860.860 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:50:51,863.863 INFO    ] Checking for system updates...
[2026-10-18 20:50:51,899.899 INFO    ] 200
[2026-10-18 20:50:51,901.901 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:50:51,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:50:51,959.959 INFO    ] No update needed
[2026-10-18 20:50:51,962.962 INFO    ] Checking for camera pi updates...
[2026-10-18 20:50:51,995.995 INFO    ] 200
[2026-10-18 20:50:51,998.998 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:50:52,039.039 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:51:02,055.055 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:51:02,098.098 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:51:02,110.110 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:51:02,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:51:02,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:51:02,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:51:04,169.169 INFO    ] ================================================
[2026-10-18 20:51:04,184.184 INFO    ] Launching Daemon at Sun Oct 18 20:51:04 IST 2026
[2026-10-18 20:51:04,195.195 INFO    ] ================================================
[2026-10-18 20:51:04,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:51:04
[2026-10-18 20:51:05,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:51:05,633.633 INFO    ] Initializing speech engine...
[2026-10-18 20:51:05,639.639 INFO    ] 2026-10-18 20:51:05
[2026-10-18 20:51:05,883.883 INFO    ] 2026-10-18 20:51:05
[2026-10-18 20:51:05,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:51:06,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:51:06,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:51:06,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:51:06,372.372 INFO    ] time= 18/10/2026 20:51:06
[2026-10-18 20:51:06,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:51:06,452.452 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:51:06,592.592 INFO    ] No existing commands found in stream
[2026-10-18 20:51:11,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:51:11,610.610 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-18 20:51:12,576.576 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 20:51:12,579.579 INFO    ] Checking for system updates...
[2026-10-18 20:51:12,615.615 INFO    ] 200
[2026-10-18 20:51:12,617.617 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:51:12,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:51:12,676.676 INFO    ] No update needed
[2026-10-18 20:51:12,679.679 INFO    ] Checking for camera pi updates...
[2026-10-18 20:51:12,713.713 INFO    ] 200
[2026-10-18 20:51:12,715.715 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:51:12,758.758 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:51:22,773.773 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:51:22,808.808 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:51:22,817.817 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:51:22,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:51:22,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:51:22,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:51:24,869.869 INFO    ] ================================================
[2026-10-18 20:51:24,884.884 INFO    ] Launching Daemon at Sun Oct 18 20:51:24 IST 2026
[2026-10-18 20:51:24,896.896 INFO    ] ================================================
[2026-10-18 20:51:25,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:51:25
[2026-10-18 20:51:26,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:51:26,326.326 INFO    ] Initializing speech engine...
[2026-10-18 20:51:26,334.334 INFO    ] 2026-10-18 20:51:26
[2026-10-18 20:51:26,602.602 INFO    ] 2026-10-18 20:51:26
[2026-10-18 20:51:26,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:51:26,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:51:26,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:51:27,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:51:27,151.151 INFO    ] time= 18/10/2026 20:51:27
[2026-10-18 20:51:27,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:51:27,173.173 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:51:27,306.306 INFO    ] No existing commands found in stream
[2026-10-18 20:51:32,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:51:32,324.324 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-18 20:51:35,474.474 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:51:35,477.477 INFO    ] Checking for system updates...
[2026-10-18 20:51:35,513.513 INFO    ] 200
[2026-10-18 20:51:35,516.516 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:51:35,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:51:35,570.570 INFO    ] No update needed
[2026-10-18 20:51:35,573.573 INFO    ] Checking for camera pi updates...
[2026-10-18 20:51:35,612.612 INFO    ] 200
[2026-10-18 20:51:35,615.615 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:51:35,659.659 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:51:45,674.674 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:51:45,710.710 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:51:45,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:51:45,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:51:45,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:51:45,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:51:47,775.775 INFO    ] ================================================
[2026-10-18 20:51:47,791.791 INFO    ] Launching Daemon at Sun Oct 18 20:51:47 IST 2026
[2026-10-18 20:51:47,802.802 INFO    ] ================================================
[2026-10-18 20:51:48,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:51:48
[2026-10-18 20:51:48,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:51:49,218.218 INFO    ] Initializing speech engine...
[2026-10-18 20:51:49,228.228 INFO    ] 2026-10-18 20:51:49
[2026-10-18 20:51:49,475.475 INFO    ] 2026-10-18 20:51:49
[2026-10-18 20:51:49,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:51:49,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:51:49,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:51:49,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:51:50,040.040 INFO    ] time= 18/10/2026 20:51:49
[2026-10-18 20:51:50,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:51:50,061.061 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:51:50,186.186 INFO    ] No existing commands found in stream
[2026-10-18 20:51:55,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:51:55,209.209 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-18 20:51:56,333.333 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 20:51:56,336.336 INFO    ] Checking for system updates...
[2026-10-18 20:51:56,373.373 INFO    ] 200
[2026-10-18 20:51:56,376.376 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:51:56,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:51:56,431.431 INFO    ] No update needed
[2026-10-18 20:51:56,434.434 INFO    ] Checking for camera pi updates...
[2026-10-18 20:51:56,468.468 INFO    ] 200
[2026-10-18 20:51:56,471.471 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:51:56,525.525 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:52:06,543.543 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:52:06,585.585 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:52:06,595.595 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:52:06,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:52:06,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:52:06,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:52:08,648.648 INFO    ] ================================================
[2026-10-18 20:52:08,664.664 INFO    ] Launching Daemon at Sun Oct 18 20:52:08 IST 2026
[2026-10-18 20:52:08,675.675 INFO    ] ================================================
[2026-10-18 20:52:09,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:52:09
[2026-10-18 20:52:09,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:52:10,092.092 INFO    ] Initializing speech engine...
[2026-10-18 20:52:10,101.101 INFO    ] 2026-10-18 20:52:10
[2026-10-18 20:52:10,347.347 INFO    ] 2026-10-18 20:52:10
[2026-10-18 20:52:10,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:52:10,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:52:10,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:52:10,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:52:10,828.828 INFO    ] time= 18/10/2026 20:52:10
[2026-10-18 20:52:10,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:52:10,904.904 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:52:11,053.053 INFO    ] No existing commands found in stream
[2026-10-18 20:52:16,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:52:16,071.071 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-18 20:52:19,311.311 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:52:19,313.313 INFO    ] Checking for system updates...
[2026-10-18 20:52:19,349.349 INFO    ] 200
[2026-10-18 20:52:19,352.352 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:52:19,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:52:19,409.409 INFO    ] No update needed
[2026-10-18 20:52:19,412.412 INFO    ] Checking for camera pi updates...
[2026-10-18 20:52:19,449.449 INFO    ] 200
[2026-10-18 20:52:19,451.451 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:52:19,495.495 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:52:29,511.511 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:52:29,547.547 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:52:29,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:52:29,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:52:29,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:52:29,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:52:31,611.611 INFO    ] ================================================
[2026-10-18 20:52:31,627.627 INFO    ] Launching Daemon at Sun Oct 18 20:52:31 IST 2026
[2026-10-18 20:52:31,639.639 INFO    ] ================================================
[2026-10-18 20:52:32,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:52:32
[2026-10-18 20:52:32,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:52:33,201.201 INFO    ] Initializing speech engine...
[2026-10-18 20:52:33,216.216 INFO    ] 2026-10-18 20:52:33
[2026-10-18 20:52:33,482.482 INFO    ] 2026-10-18 20:52:33
[2026-10-18 20:52:33,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:52:33,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:52:33,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:52:33,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:52:33,988.988 INFO    ] time= 18/10/2026 20:52:33
[2026-10-18 20:52:34,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:52:34,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:52:34,197.197 INFO    ] No existing commands found in stream
[2026-10-18 20:52:39,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:52:39,227.227 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-18 20:52:40,239.239 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 20:52:40,241.241 INFO    ] Checking for system updates...
[2026-10-18 20:52:40,278.278 INFO    ] 200
[2026-10-18 20:52:40,280.280 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:52:40,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:52:40,334.334 INFO    ] No update needed
[2026-10-18 20:52:40,337.337 INFO    ] Checking for camera pi updates...
[2026-10-18 20:52:40,377.377 INFO    ] 200
[2026-10-18 20:52:40,380.380 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:52:40,424.424 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:52:50,439.439 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:52:50,474.474 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:52:50,484.484 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:52:50,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:52:50,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:52:50,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:52:52,538.538 INFO    ] ================================================
[2026-10-18 20:52:52,553.553 INFO    ] Launching Daemon at Sun Oct 18 20:52:52 IST 2026
[2026-10-18 20:52:52,564.564 INFO    ] ================================================
[2026-10-18 20:52:53,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:52:53
[2026-10-18 20:52:53,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:52:54,116.116 INFO    ] Initializing speech engine...
[2026-10-18 20:52:54,124.124 INFO    ] 2026-10-18 20:52:54
[2026-10-18 20:52:54,383.383 INFO    ] 2026-10-18 20:52:54
[2026-10-18 20:52:54,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:52:54,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:52:54,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:52:54,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:52:54,929.929 INFO    ] time= 18/10/2026 20:52:54
[2026-10-18 20:52:54,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:52:54,954.954 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:52:55,077.077 INFO    ] No existing commands found in stream
[2026-10-18 20:53:00,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:53:00,096.096 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-18 20:53:03,013.013 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 20:53:03,016.016 INFO    ] Checking for system updates...
[2026-10-18 20:53:03,052.052 INFO    ] 200
[2026-10-18 20:53:03,055.055 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:53:03,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:53:03,119.119 INFO    ] No update needed
[2026-10-18 20:53:03,121.121 INFO    ] Checking for camera pi updates...
[2026-10-18 20:53:03,155.155 INFO    ] 200
[2026-10-18 20:53:03,157.157 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:53:03,208.208 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:53:13,230.230 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:53:13,271.271 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:53:13,282.282 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:53:13,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:53:13,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:53:13,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:53:15,340.340 INFO    ] ================================================
[2026-10-18 20:53:15,357.357 INFO    ] Launching Daemon at Sun Oct 18 20:53:15 IST 2026
[2026-10-18 20:53:15,370.370 INFO    ] ================================================
[2026-10-18 20:53:16,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:53:16
[2026-10-18 20:53:16,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:53:17,023.023 INFO    ] Initializing speech engine...
[2026-10-18 20:53:17,030.030 INFO    ] 2026-10-18 20:53:17
[2026-10-18 20:53:17,317.317 INFO    ] 2026-10-18 20:53:17
[2026-10-18 20:53:17,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:53:17,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:53:17,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:53:17,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:53:17,857.857 INFO    ] time= 18/10/2026 20:53:17
[2026-10-18 20:53:17,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:53:17,906.906 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:53:18,024.024 INFO    ] No existing commands found in stream
[2026-10-18 20:53:23,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:53:23,063.063 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-18 20:53:25,129.129 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:53:25,132.132 INFO    ] Checking for system updates...
[2026-10-18 20:53:25,169.169 INFO    ] 200
[2026-10-18 20:53:25,172.172 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:53:25,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:53:25,237.237 INFO    ] No update needed
[2026-10-18 20:53:25,240.240 INFO    ] Checking for camera pi updates...
[2026-10-18 20:53:25,278.278 INFO    ] 200
[2026-10-18 20:53:25,281.281 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:53:25,321.321 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:53:35,334.334 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:53:35,369.369 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:53:35,379.379 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:53:35,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:53:35,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:53:35,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:53:37,431.431 INFO    ] ================================================
[2026-10-18 20:53:37,446.446 INFO    ] Launching Daemon at Sun Oct 18 20:53:37 IST 2026
[2026-10-18 20:53:37,457.457 INFO    ] ================================================
[2026-10-18 20:53:38,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:53:38
[2026-10-18 20:53:38,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:53:38,912.912 INFO    ] Initializing speech engine...
[2026-10-18 20:53:38,923.923 INFO    ] 2026-10-18 20:53:38
[2026-10-18 20:53:39,172.172 INFO    ] 2026-10-18 20:53:39
[2026-10-18 20:53:39,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:53:39,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:53:39,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:53:39,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:53:39,727.727 INFO    ] time= 18/10/2026 20:53:39
[2026-10-18 20:53:39,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:53:39,753.753 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:53:39,880.880 INFO    ] No existing commands found in stream
[2026-10-18 20:53:44,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:53:44,898.898 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-18 20:53:47,282.282 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 20:53:47,284.284 INFO    ] Checking for system updates...
[2026-10-18 20:53:47,321.321 INFO    ] 200
[2026-10-18 20:53:47,324.324 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:53:47,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:53:47,378.378 INFO    ] No update needed
[2026-10-18 20:53:47,381.381 INFO    ] Checking for camera pi updates...
[2026-10-18 20:53:47,419.419 INFO    ] 200
[2026-10-18 20:53:47,421.421 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:53:47,467.467 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:53:57,482.482 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d34150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:53:57,518.518 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:53:57,528.528 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:53:57,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:53:57,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:53:57,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:53:59,580.580 INFO    ] ================================================
[2026-10-18 20:53:59,595.595 INFO    ] Launching Daemon at Sun Oct 18 20:53:59 IST 2026
[2026-10-18 20:53:59,606.606 INFO    ] ================================================
[2026-10-18 20:54:00,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:54:00
[2026-10-18 20:54:00,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:54:01,223.223 INFO    ] Initializing speech engine...
[2026-10-18 20:54:01,230.230 INFO    ] 2026-10-18 20:54:01
[2026-10-18 20:54:01,726.726 INFO    ] 2026-10-18 20:54:01
[2026-10-18 20:54:01,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:54:01,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:54:01,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:54:02,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:54:02,246.246 INFO    ] time= 18/10/2026 20:54:02
[2026-10-18 20:54:02,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:54:02,297.297 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:54:02,447.447 INFO    ] No existing commands found in stream
[2026-10-18 20:54:07,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:54:07,466.466 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-18 20:54:08,389.389 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:54:08,392.392 INFO    ] Checking for system updates...
[2026-10-18 20:54:08,427.427 INFO    ] 200
[2026-10-18 20:54:08,429.429 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:54:08,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:54:08,484.484 INFO    ] No update needed
[2026-10-18 20:54:08,486.486 INFO    ] Checking for camera pi updates...
[2026-10-18 20:54:08,520.520 INFO    ] 200
[2026-10-18 20:54:08,522.522 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:54:08,563.563 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:54:18,578.578 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:54:18,613.613 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:54:18,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:54:18,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:54:18,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:54:18,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:54:20,674.674 INFO    ] ================================================
[2026-10-18 20:54:20,689.689 INFO    ] Launching Daemon at Sun Oct 18 20:54:20 IST 2026
[2026-10-18 20:54:20,700.700 INFO    ] ================================================
[2026-10-18 20:54:21,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:54:21
[2026-10-18 20:54:21,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:54:22,145.145 INFO    ] Initializing speech engine...
[2026-10-18 20:54:22,170.170 INFO    ] 2026-10-18 20:54:22
[2026-10-18 20:54:22,445.445 INFO    ] 2026-10-18 20:54:22
[2026-10-18 20:54:22,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:54:22,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:54:22,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:54:22,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:54:22,822.822 INFO    ] time= 18/10/2026 20:54:22
[2026-10-18 20:54:22,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:54:22,878.878 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:54:23,017.017 INFO    ] No existing commands found in stream
[2026-10-18 20:54:28,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:54:28,030.030 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-18 20:54:31,093.093 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:54:31,096.096 INFO    ] Checking for system updates...
[2026-10-18 20:54:31,131.131 INFO    ] 200
[2026-10-18 20:54:31,133.133 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:54:31,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:54:31,188.188 INFO    ] No update needed
[2026-10-18 20:54:31,190.190 INFO    ] Checking for camera pi updates...
[2026-10-18 20:54:31,227.227 INFO    ] 200
[2026-10-18 20:54:31,229.229 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:54:31,269.269 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:54:41,284.284 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:54:41,319.319 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:54:41,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:54:41,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:54:41,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:54:41,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:54:43,380.380 INFO    ] ================================================
[2026-10-18 20:54:43,396.396 INFO    ] Launching Daemon at Sun Oct 18 20:54:43 IST 2026
[2026-10-18 20:54:43,407.407 INFO    ] ================================================
[2026-10-18 20:54:43,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:54:43
[2026-10-18 20:54:44,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:54:44,864.864 INFO    ] Initializing speech engine...
[2026-10-18 20:54:44,873.873 INFO    ] 2026-10-18 20:54:44
[2026-10-18 20:54:45,132.132 INFO    ] 2026-10-18 20:54:45
[2026-10-18 20:54:45,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:54:45,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:54:45,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:54:45,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:54:45,674.674 INFO    ] time= 18/10/2026 20:54:45
[2026-10-18 20:54:45,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:54:45,699.699 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:54:45,832.832 INFO    ] No existing commands found in stream
[2026-10-18 20:54:50,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:54:50,851.851 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-18 20:54:53,028.028 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 20:54:53,030.030 INFO    ] Checking for system updates...
[2026-10-18 20:54:53,070.070 INFO    ] 200
[2026-10-18 20:54:53,072.072 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:54:53,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:54:53,126.126 INFO    ] No update needed
[2026-10-18 20:54:53,129.129 INFO    ] Checking for camera pi updates...
[2026-10-18 20:54:53,166.166 INFO    ] 200
[2026-10-18 20:54:53,169.169 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:54:53,214.214 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:55:03,228.228 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:55:03,264.264 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:55:03,273.273 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:55:03,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:55:03,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:55:03,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:55:05,336.336 INFO    ] ================================================
[2026-10-18 20:55:05,351.351 INFO    ] Launching Daemon at Sun Oct 18 20:55:05 IST 2026
[2026-10-18 20:55:05,362.362 INFO    ] ================================================
[2026-10-18 20:55:06,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:55:06
[2026-10-18 20:55:06,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:55:06,970.970 INFO    ] Initializing speech engine...
[2026-10-18 20:55:06,983.983 INFO    ] 2026-10-18 20:55:06
[2026-10-18 20:55:07,262.262 INFO    ] 2026-10-18 20:55:07
[2026-10-18 20:55:07,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:55:07,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:55:07,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:55:07,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:55:07,813.813 INFO    ] time= 18/10/2026 20:55:07
[2026-10-18 20:55:07,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:55:07,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:55:07,962.962 INFO    ] No existing commands found in stream
[2026-10-18 20:55:12,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:55:12,995.995 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-18 20:55:15,445.445 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:55:15,448.448 INFO    ] Checking for system updates...
[2026-10-18 20:55:15,486.486 INFO    ] 200
[2026-10-18 20:55:15,489.489 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:55:15,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:55:15,544.544 INFO    ] No update needed
[2026-10-18 20:55:15,547.547 INFO    ] Checking for camera pi updates...
[2026-10-18 20:55:15,581.581 INFO    ] 200
[2026-10-18 20:55:15,584.584 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:55:15,626.626 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:55:25,643.643 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:55:25,682.682 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:55:25,693.693 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:55:25,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:55:25,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:55:25,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:55:27,748.748 INFO    ] ================================================
[2026-10-18 20:55:27,762.762 INFO    ] Launching Daemon at Sun Oct 18 20:55:27 IST 2026
[2026-10-18 20:55:27,773.773 INFO    ] ================================================
[2026-10-18 20:55:28,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:55:28
[2026-10-18 20:55:29,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:55:29,381.381 INFO    ] Initializing speech engine...
[2026-10-18 20:55:29,396.396 INFO    ] 2026-10-18 20:55:29
[2026-10-18 20:55:29,704.704 INFO    ] 2026-10-18 20:55:29
[2026-10-18 20:55:29,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:55:30,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:55:30,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:55:30,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:55:30,211.211 INFO    ] time= 18/10/2026 20:55:30
[2026-10-18 20:55:30,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:55:30,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:55:30,395.395 INFO    ] No existing commands found in stream
[2026-10-18 20:55:35,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:55:35,429.429 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-18 20:55:36,021.021 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 20:55:36,024.024 INFO    ] Checking for system updates...
[2026-10-18 20:55:36,061.061 INFO    ] 200
[2026-10-18 20:55:36,064.064 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:55:36,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:55:36,119.119 INFO    ] No update needed
[2026-10-18 20:55:36,122.122 INFO    ] Checking for camera pi updates...
[2026-10-18 20:55:36,158.158 INFO    ] 200
[2026-10-18 20:55:36,161.161 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:55:36,201.201 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:55:46,216.216 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:55:46,255.255 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:55:46,266.266 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:55:46,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:55:46,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:55:46,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:55:48,321.321 INFO    ] ================================================
[2026-10-18 20:55:48,336.336 INFO    ] Launching Daemon at Sun Oct 18 20:55:48 IST 2026
[2026-10-18 20:55:48,347.347 INFO    ] ================================================
[2026-10-18 20:55:48,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:55:48
[2026-10-18 20:55:49,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:55:49,796.796 INFO    ] Initializing speech engine...
[2026-10-18 20:55:49,801.801 INFO    ] 2026-10-18 20:55:49
[2026-10-18 20:55:50,066.066 INFO    ] 2026-10-18 20:55:50
[2026-10-18 20:55:50,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:55:50,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:55:50,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:55:50,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:55:50,609.609 INFO    ] time= 18/10/2026 20:55:50
[2026-10-18 20:55:50,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:55:50,633.633 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:55:50,756.756 INFO    ] No existing commands found in stream
[2026-10-18 20:55:55,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:55:55,774.774 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-18 20:55:57,926.926 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 20:55:57,929.929 INFO    ] Checking for system updates...
[2026-10-18 20:55:57,968.968 INFO    ] 200
[2026-10-18 20:55:57,970.970 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:55:58,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:55:58,024.024 INFO    ] No update needed
[2026-10-18 20:55:58,027.027 INFO    ] Checking for camera pi updates...
[2026-10-18 20:55:58,065.065 INFO    ] 200
[2026-10-18 20:55:58,068.068 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:55:58,118.118 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:56:08,138.138 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:56:08,178.178 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:56:08,188.188 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:56:08,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:56:08,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:56:08,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:56:10,243.243 INFO    ] ================================================
[2026-10-18 20:56:10,258.258 INFO    ] Launching Daemon at Sun Oct 18 20:56:10 IST 2026
[2026-10-18 20:56:10,269.269 INFO    ] ================================================
[2026-10-18 20:56:10,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:56:10
[2026-10-18 20:56:11,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:56:11,872.872 INFO    ] Initializing speech engine...
[2026-10-18 20:56:11,881.881 INFO    ] 2026-10-18 20:56:11
[2026-10-18 20:56:12,168.168 INFO    ] 2026-10-18 20:56:12
[2026-10-18 20:56:12,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:56:12,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:56:12,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:56:12,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:56:12,717.717 INFO    ] time= 18/10/2026 20:56:12
[2026-10-18 20:56:12,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:56:12,767.767 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:56:12,901.901 INFO    ] No existing commands found in stream
[2026-10-18 20:56:17,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:56:17,934.934 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-18 20:56:21,462.462 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 20:56:21,465.465 INFO    ] Checking for system updates...
[2026-10-18 20:56:21,505.505 INFO    ] 200
[2026-10-18 20:56:21,508.508 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:56:21,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:56:21,567.567 INFO    ] No update needed
[2026-10-18 20:56:21,570.570 INFO    ] Checking for camera pi updates...
[2026-10-18 20:56:21,604.604 INFO    ] 200
[2026-10-18 20:56:21,607.607 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:56:21,649.649 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:56:31,665.665 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:56:31,704.704 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:56:31,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:56:31,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:56:31,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:56:31,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:56:33,776.776 INFO    ] ================================================
[2026-10-18 20:56:33,792.792 INFO    ] Launching Daemon at Sun Oct 18 20:56:33 IST 2026
[2026-10-18 20:56:33,803.803 INFO    ] ================================================
[2026-10-18 20:56:34,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:56:34
[2026-10-18 20:56:35,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:56:35,340.340 INFO    ] Initializing speech engine...
[2026-10-18 20:56:35,350.350 INFO    ] 2026-10-18 20:56:35
[2026-10-18 20:56:35,619.619 INFO    ] 2026-10-18 20:56:35
[2026-10-18 20:56:35,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:56:35,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:56:35,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:56:36,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:56:36,167.167 INFO    ] time= 18/10/2026 20:56:36
[2026-10-18 20:56:36,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:56:36,209.209 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:56:36,366.366 INFO    ] No existing commands found in stream
[2026-10-18 20:56:41,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:56:41,402.402 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-18 20:56:41,962.962 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:56:41,965.965 INFO    ] Checking for system updates...
[2026-10-18 20:56:42,006.006 INFO    ] 200
[2026-10-18 20:56:42,008.008 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:56:42,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:56:42,065.065 INFO    ] No update needed
[2026-10-18 20:56:42,068.068 INFO    ] Checking for camera pi updates...
[2026-10-18 20:56:42,106.106 INFO    ] 200
[2026-10-18 20:56:42,109.109 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:56:42,158.158 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:56:52,174.174 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:56:52,209.209 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:56:52,218.218 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:56:52,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:56:52,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:56:52,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:56:54,270.270 INFO    ] ================================================
[2026-10-18 20:56:54,286.286 INFO    ] Launching Daemon at Sun Oct 18 20:56:54 IST 2026
[2026-10-18 20:56:54,296.296 INFO    ] ================================================
[2026-10-18 20:56:54,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:56:54
[2026-10-18 20:56:55,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:56:55,759.759 INFO    ] Initializing speech engine...
[2026-10-18 20:56:55,770.770 INFO    ] 2026-10-18 20:56:55
[2026-10-18 20:56:56,033.033 INFO    ] 2026-10-18 20:56:56
[2026-10-18 20:56:56,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:56:56,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:56:56,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:56:56,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:56:56,578.578 INFO    ] time= 18/10/2026 20:56:56
[2026-10-18 20:56:56,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:56:56,605.605 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:56:56,731.731 INFO    ] No existing commands found in stream
[2026-10-18 20:57:01,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:57:01,749.749 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-18 20:57:05,644.644 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 20:57:05,647.647 INFO    ] Checking for system updates...
[2026-10-18 20:57:05,683.683 INFO    ] 200
[2026-10-18 20:57:05,685.685 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:57:05,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:57:05,742.742 INFO    ] No update needed
[2026-10-18 20:57:05,744.744 INFO    ] Checking for camera pi updates...
[2026-10-18 20:57:05,777.777 INFO    ] 200
[2026-10-18 20:57:05,780.780 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:57:05,824.824 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:57:15,839.839 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:57:15,874.874 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:57:15,884.884 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:57:15,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:57:15,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:57:15,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:57:17,936.936 INFO    ] ================================================
[2026-10-18 20:57:17,951.951 INFO    ] Launching Daemon at Sun Oct 18 20:57:17 IST 2026
[2026-10-18 20:57:17,961.961 INFO    ] ================================================
[2026-10-18 20:57:18,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:57:18
[2026-10-18 20:57:19,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:57:19,383.383 INFO    ] Initializing speech engine...
[2026-10-18 20:57:19,391.391 INFO    ] 2026-10-18 20:57:19
[2026-10-18 20:57:19,641.641 INFO    ] 2026-10-18 20:57:19
[2026-10-18 20:57:19,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:57:19,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:57:19,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:57:20,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:57:20,150.150 INFO    ] time= 18/10/2026 20:57:20
[2026-10-18 20:57:20,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:57:20,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:57:20,363.363 INFO    ] No existing commands found in stream
[2026-10-18 20:57:25,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:57:25,380.380 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-18 20:57:28,494.494 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:57:28,497.497 INFO    ] Checking for system updates...
[2026-10-18 20:57:28,532.532 INFO    ] 200
[2026-10-18 20:57:28,534.534 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:57:28,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:57:28,599.599 INFO    ] No update needed
[2026-10-18 20:57:28,601.601 INFO    ] Checking for camera pi updates...
[2026-10-18 20:57:28,638.638 INFO    ] 200
[2026-10-18 20:57:28,640.640 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:57:28,680.680 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:57:38,694.694 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:57:38,729.729 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:57:38,739.739 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:57:38,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:57:38,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:57:38,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:57:40,792.792 INFO    ] ================================================
[2026-10-18 20:57:40,807.807 INFO    ] Launching Daemon at Sun Oct 18 20:57:40 IST 2026
[2026-10-18 20:57:40,817.817 INFO    ] ================================================
[2026-10-18 20:57:41,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:57:41
[2026-10-18 20:57:42,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:57:42,269.269 INFO    ] Initializing speech engine...
[2026-10-18 20:57:42,279.279 INFO    ] 2026-10-18 20:57:42
[2026-10-18 20:57:42,524.524 INFO    ] 2026-10-18 20:57:42
[2026-10-18 20:57:42,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:57:42,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:57:42,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:57:42,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:57:43,035.035 INFO    ] time= 18/10/2026 20:57:42
[2026-10-18 20:57:43,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:57:43,109.109 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:57:43,237.237 INFO    ] No existing commands found in stream
[2026-10-18 20:57:48,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:57:48,263.263 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-18 20:57:51,650.650 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 20:57:51,653.653 INFO    ] Checking for system updates...
[2026-10-18 20:57:51,689.689 INFO    ] 200
[2026-10-18 20:57:51,692.692 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:57:51,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:57:51,748.748 INFO    ] No update needed
[2026-10-18 20:57:51,750.750 INFO    ] Checking for camera pi updates...
[2026-10-18 20:57:51,784.784 INFO    ] 200
[2026-10-18 20:57:51,787.787 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:57:51,833.833 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:58:01,858.858 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:58:01,901.901 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:58:01,915.915 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:58:01,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:58:01,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:58:01,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:58:03,976.976 INFO    ] ================================================
[2026-10-18 20:58:03,991.991 INFO    ] Launching Daemon at Sun Oct 18 20:58:03 IST 2026
[2026-10-18 20:58:04,002.002 INFO    ] ================================================
[2026-10-18 20:58:04,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:58:04
[2026-10-18 20:58:05,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:58:05,420.420 INFO    ] Initializing speech engine...
[2026-10-18 20:58:05,430.430 INFO    ] 2026-10-18 20:58:05
[2026-10-18 20:58:05,691.691 INFO    ] 2026-10-18 20:58:05
[2026-10-18 20:58:05,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:58:05,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:58:05,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:58:06,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:58:06,229.229 INFO    ] time= 18/10/2026 20:58:06
[2026-10-18 20:58:06,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:58:06,253.253 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:58:06,385.385 INFO    ] No existing commands found in stream
[2026-10-18 20:58:11,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:58:11,416.416 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-18 20:58:14,401.401 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:58:14,404.404 INFO    ] Checking for system updates...
[2026-10-18 20:58:14,439.439 INFO    ] 200
[2026-10-18 20:58:14,442.442 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:58:14,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:58:14,497.497 INFO    ] No update needed
[2026-10-18 20:58:14,499.499 INFO    ] Checking for camera pi updates...
[2026-10-18 20:58:14,532.532 INFO    ] 200
[2026-10-18 20:58:14,535.535 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:58:14,577.577 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:58:24,593.593 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:58:24,634.634 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:58:24,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:58:24,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:58:24,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:58:24,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:58:26,701.701 INFO    ] ================================================
[2026-10-18 20:58:26,716.716 INFO    ] Launching Daemon at Sun Oct 18 20:58:26 IST 2026
[2026-10-18 20:58:26,727.727 INFO    ] ================================================
[2026-10-18 20:58:27,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:58:27
[2026-10-18 20:58:27,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:58:28,156.156 INFO    ] Initializing speech engine...
[2026-10-18 20:58:28,165.165 INFO    ] 2026-10-18 20:58:28
[2026-10-18 20:58:28,412.412 INFO    ] 2026-10-18 20:58:28
[2026-10-18 20:58:28,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:58:28,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:58:28,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:58:28,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:58:28,969.969 INFO    ] time= 18/10/2026 20:58:28
[2026-10-18 20:58:28,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:58:28,994.994 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:58:29,127.127 INFO    ] No existing commands found in stream
[2026-10-18 20:58:34,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:58:34,152.152 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-18 20:58:35,497.497 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:58:35,499.499 INFO    ] Checking for system updates...
[2026-10-18 20:58:35,535.535 INFO    ] 200
[2026-10-18 20:58:35,538.538 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:58:35,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 20:58:35,594.594 INFO    ] No update needed
[2026-10-18 20:58:35,596.596 INFO    ] Checking for camera pi updates...
[2026-10-18 20:58:35,634.634 INFO    ] 200
[2026-10-18 20:58:35,636.636 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:58:35,676.676 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:58:45,691.691 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:58:45,726.726 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:58:45,735.735 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:58:45,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:58:45,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:58:45,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:58:47,789.789 INFO    ] ================================================
[2026-10-18 20:58:47,804.804 INFO    ] Launching Daemon at Sun Oct 18 20:58:47 IST 2026
[2026-10-18 20:58:47,815.815 INFO    ] ================================================
[2026-10-18 20:58:48,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:58:48
[2026-10-18 20:58:49,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:58:49,482.482 INFO    ] Initializing speech engine...
[2026-10-18 20:58:49,497.497 INFO    ] 2026-10-18 20:58:49
[2026-10-18 20:58:49,783.783 INFO    ] 2026-10-18 20:58:49
[2026-10-18 20:58:49,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:58:50,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:58:50,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:58:50,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:58:50,337.337 INFO    ] time= 18/10/2026 20:58:50
[2026-10-18 20:58:50,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:58:50,396.396 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:58:50,525.525 INFO    ] No existing commands found in stream
[2026-10-18 20:58:55,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:58:55,555.555 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-18 20:58:59,438.438 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 20:58:59,441.441 INFO    ] Checking for system updates...
[2026-10-18 20:58:59,483.483 INFO    ] 200
[2026-10-18 20:58:59,486.486 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:58:59,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:58:59,554.554 INFO    ] No update needed
[2026-10-18 20:58:59,557.557 INFO    ] Checking for camera pi updates...
[2026-10-18 20:58:59,591.591 INFO    ] 200
[2026-10-18 20:58:59,594.594 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:58:59,635.635 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:59:09,651.651 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:59:09,692.692 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:59:09,703.703 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:59:09,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:59:09,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:59:09,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:59:11,758.758 INFO    ] ================================================
[2026-10-18 20:59:11,774.774 INFO    ] Launching Daemon at Sun Oct 18 20:59:11 IST 2026
[2026-10-18 20:59:11,784.784 INFO    ] ================================================
[2026-10-18 20:59:12,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:59:12
[2026-10-18 20:59:12,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:59:13,239.239 INFO    ] Initializing speech engine...
[2026-10-18 20:59:13,245.245 INFO    ] 2026-10-18 20:59:13
[2026-10-18 20:59:13,506.506 INFO    ] 2026-10-18 20:59:13
[2026-10-18 20:59:13,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:59:13,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:59:13,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:59:13,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:59:13,997.997 INFO    ] time= 18/10/2026 20:59:13
[2026-10-18 20:59:14,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:59:14,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:59:14,209.209 INFO    ] No existing commands found in stream
[2026-10-18 20:59:19,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:59:19,229.229 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-18 20:59:20,836.836 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 20:59:20,839.839 INFO    ] Checking for system updates...
[2026-10-18 20:59:20,881.881 INFO    ] 200
[2026-10-18 20:59:20,883.883 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:59:20,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:59:20,938.938 INFO    ] No update needed
[2026-10-18 20:59:20,941.941 INFO    ] Checking for camera pi updates...
[2026-10-18 20:59:20,978.978 INFO    ] 200
[2026-10-18 20:59:20,981.981 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:59:21,021.021 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:59:31,036.036 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:59:31,071.071 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:59:31,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:59:31,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:59:31,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:59:31,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:59:33,134.134 INFO    ] ================================================
[2026-10-18 20:59:33,151.151 INFO    ] Launching Daemon at Sun Oct 18 20:59:33 IST 2026
[2026-10-18 20:59:33,163.163 INFO    ] ================================================
[2026-10-18 20:59:33,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:59:33
[2026-10-18 20:59:34,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:59:34,689.689 INFO    ] Initializing speech engine...
[2026-10-18 20:59:34,698.698 INFO    ] 2026-10-18 20:59:34
[2026-10-18 20:59:34,963.963 INFO    ] 2026-10-18 20:59:34
[2026-10-18 20:59:34,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:59:35,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:59:35,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:59:35,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:59:35,469.469 INFO    ] time= 18/10/2026 20:59:35
[2026-10-18 20:59:35,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:59:35,551.551 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:59:35,739.739 INFO    ] No existing commands found in stream
[2026-10-18 20:59:40,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 20:59:40,773.773 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-18 20:59:43,857.857 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 20:59:43,860.860 INFO    ] Checking for system updates...
[2026-10-18 20:59:43,895.895 INFO    ] 200
[2026-10-18 20:59:43,898.898 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:59:43,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 20:59:43,954.954 INFO    ] No update needed
[2026-10-18 20:59:43,956.956 INFO    ] Checking for camera pi updates...
[2026-10-18 20:59:43,991.991 INFO    ] 200
[2026-10-18 20:59:43,994.994 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 20:59:44,035.035 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 20:59:54,050.050 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 20:59:54,084.084 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 20:59:54,094.094 INFO    ] Script finished. Safe exiting...
[2026-10-18 20:59:54,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 20:59:54,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 20:59:54,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 20:59:56,147.147 INFO    ] ================================================
[2026-10-18 20:59:56,162.162 INFO    ] Launching Daemon at Sun Oct 18 20:59:56 IST 2026
[2026-10-18 20:59:56,173.173 INFO    ] ================================================
[2026-10-18 20:59:56,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 20:59:56
[2026-10-18 20:59:57,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 20:59:57,592.592 INFO    ] Initializing speech engine...
[2026-10-18 20:59:57,602.602 INFO    ] 2026-10-18 20:59:57
[2026-10-18 20:59:57,862.862 INFO    ] 2026-10-18 20:59:57
[2026-10-18 20:59:57,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 20:59:58,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 20:59:58,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 20:59:58,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 20:59:58,407.407 INFO    ] time= 18/10/2026 20:59:58
[2026-10-18 20:59:58,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 20:59:58,431.431 INFO    ] Checking for existing commands in stream...
[2026-10-18 20:59:58,571.571 INFO    ] No existing commands found in stream
[2026-10-18 21:00:03,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:00:03,601.601 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-18 21:00:09,507.507 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:00:09,510.510 INFO    ] Checking for system updates...
[2026-10-18 21:00:09,546.546 INFO    ] 200
[2026-10-18 21:00:09,548.548 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:00:09,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:00:09,603.603 INFO    ] No update needed
[2026-10-18 21:00:09,605.605 INFO    ] Checking for camera pi updates...
[2026-10-18 21:00:09,643.643 INFO    ] 200
[2026-10-18 21:00:09,645.645 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:00:09,685.685 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:00:19,700.700 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:00:19,737.737 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:00:19,747.747 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:00:19,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:00:19,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:00:19,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:00:21,799.799 INFO    ] ================================================
[2026-10-18 21:00:21,815.815 INFO    ] Launching Daemon at Sun Oct 18 21:00:21 IST 2026
[2026-10-18 21:00:21,826.826 INFO    ] ================================================
[2026-10-18 21:00:22,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:00:22
[2026-10-18 21:00:23,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:00:23,301.301 INFO    ] Initializing speech engine...
[2026-10-18 21:00:23,308.308 INFO    ] 2026-10-18 21:00:23
[2026-10-18 21:00:23,572.572 INFO    ] 2026-10-18 21:00:23
[2026-10-18 21:00:23,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:00:23,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:00:23,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:00:24,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:00:24,116.116 INFO    ] time= 18/10/2026 21:00:24
[2026-10-18 21:00:24,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:00:24,140.140 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:00:24,272.272 INFO    ] No existing commands found in stream
[2026-10-18 21:00:29,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:00:29,294.294 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-18 21:00:31,126.126 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:00:31,128.128 INFO    ] Checking for system updates...
[2026-10-18 21:00:31,168.168 INFO    ] 200
[2026-10-18 21:00:31,170.170 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:00:31,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:00:31,232.232 INFO    ] No update needed
[2026-10-18 21:00:31,234.234 INFO    ] Checking for camera pi updates...
[2026-10-18 21:00:31,272.272 INFO    ] 200
[2026-10-18 21:00:31,274.274 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:00:31,320.320 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:00:41,335.335 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:00:41,371.371 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:00:41,381.381 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:00:41,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:00:41,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:00:41,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:00:43,433.433 INFO    ] ================================================
[2026-10-18 21:00:43,448.448 INFO    ] Launching Daemon at Sun Oct 18 21:00:43 IST 2026
[2026-10-18 21:00:43,459.459 INFO    ] ================================================
[2026-10-18 21:00:44,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:00:44
[2026-10-18 21:00:44,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:00:44,904.904 INFO    ] Initializing speech engine...
[2026-10-18 21:00:44,913.913 INFO    ] 2026-10-18 21:00:44
[2026-10-18 21:00:45,201.201 INFO    ] 2026-10-18 21:00:45
[2026-10-18 21:00:45,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:00:45,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:00:45,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:00:45,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:00:45,734.734 INFO    ] time= 18/10/2026 21:00:45
[2026-10-18 21:00:45,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:00:45,759.759 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:00:45,885.885 INFO    ] No existing commands found in stream
[2026-10-18 21:00:50,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:00:50,902.902 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-18 21:00:52,480.480 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:00:52,482.482 INFO    ] Checking for system updates...
[2026-10-18 21:00:52,518.518 INFO    ] 200
[2026-10-18 21:00:52,521.521 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:00:52,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:00:52,578.578 INFO    ] No update needed
[2026-10-18 21:00:52,581.581 INFO    ] Checking for camera pi updates...
[2026-10-18 21:00:52,616.616 INFO    ] 200
[2026-10-18 21:00:52,619.619 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:00:52,661.661 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:01:02,678.678 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:01:02,730.730 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:01:02,744.744 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:01:02,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:01:02,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:01:02,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:01:04,809.809 INFO    ] ================================================
[2026-10-18 21:01:04,826.826 INFO    ] Launching Daemon at Sun Oct 18 21:01:04 IST 2026
[2026-10-18 21:01:04,837.837 INFO    ] ================================================
[2026-10-18 21:01:05,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:01:05
[2026-10-18 21:01:06,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:01:06,371.371 INFO    ] Initializing speech engine...
[2026-10-18 21:01:06,376.376 INFO    ] 2026-10-18 21:01:06
[2026-10-18 21:01:06,621.621 INFO    ] 2026-10-18 21:01:06
[2026-10-18 21:01:06,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:01:06,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:01:06,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:01:07,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:01:07,177.177 INFO    ] time= 18/10/2026 21:01:07
[2026-10-18 21:01:07,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:01:07,198.198 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:01:07,331.331 INFO    ] No existing commands found in stream
[2026-10-18 21:01:12,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:01:12,348.348 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-18 21:01:14,163.163 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:01:14,166.166 INFO    ] Checking for system updates...
[2026-10-18 21:01:14,206.206 INFO    ] 200
[2026-10-18 21:01:14,208.208 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:01:14,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:01:14,263.263 INFO    ] No update needed
[2026-10-18 21:01:14,265.265 INFO    ] Checking for camera pi updates...
[2026-10-18 21:01:14,302.302 INFO    ] 200
[2026-10-18 21:01:14,305.305 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:01:14,351.351 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:01:24,366.366 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:01:24,401.401 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:01:24,411.411 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:01:24,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:01:24,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:01:24,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:01:26,464.464 INFO    ] ================================================
[2026-10-18 21:01:26,480.480 INFO    ] Launching Daemon at Sun Oct 18 21:01:26 IST 2026
[2026-10-18 21:01:26,491.491 INFO    ] ================================================
[2026-10-18 21:01:27,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:01:27
[2026-10-18 21:01:27,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:01:27,950.950 INFO    ] Initializing speech engine...
[2026-10-18 21:01:27,957.957 INFO    ] 2026-10-18 21:01:27
[2026-10-18 21:01:28,218.218 INFO    ] 2026-10-18 21:01:28
[2026-10-18 21:01:28,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:01:28,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:01:28,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:01:28,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:01:28,841.841 INFO    ] time= 18/10/2026 21:01:28
[2026-10-18 21:01:28,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:01:28,924.924 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:01:29,088.088 INFO    ] No existing commands found in stream
[2026-10-18 21:01:34,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:01:34,121.121 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-18 21:01:36,181.181 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:01:36,183.183 INFO    ] Checking for system updates...
[2026-10-18 21:01:36,225.225 INFO    ] 200
[2026-10-18 21:01:36,228.228 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:01:36,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:01:36,297.297 INFO    ] No update needed
[2026-10-18 21:01:36,301.301 INFO    ] Checking for camera pi updates...
[2026-10-18 21:01:36,335.335 INFO    ] 200
[2026-10-18 21:01:36,338.338 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:01:36,380.380 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:01:46,397.397 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:01:46,437.437 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:01:46,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:01:46,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:01:46,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:01:46,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:01:48,512.512 INFO    ] ================================================
[2026-10-18 21:01:48,529.529 INFO    ] Launching Daemon at Sun Oct 18 21:01:48 IST 2026
[2026-10-18 21:01:48,540.540 INFO    ] ================================================
[2026-10-18 21:01:49,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:01:49
[2026-10-18 21:01:49,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:01:49,966.966 INFO    ] Initializing speech engine...
[2026-10-18 21:01:49,972.972 INFO    ] 2026-10-18 21:01:49
[2026-10-18 21:01:50,237.237 INFO    ] 2026-10-18 21:01:50
[2026-10-18 21:01:50,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:01:50,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:01:50,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:01:50,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:01:50,789.789 INFO    ] time= 18/10/2026 21:01:50
[2026-10-18 21:01:50,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:01:50,837.837 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:01:50,959.959 INFO    ] No existing commands found in stream
[2026-10-18 21:01:55,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:01:55,994.994 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-18 21:01:56,655.655 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:01:56,658.658 INFO    ] Checking for system updates...
[2026-10-18 21:01:56,696.696 INFO    ] 200
[2026-10-18 21:01:56,699.699 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:01:56,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:01:56,757.757 INFO    ] No update needed
[2026-10-18 21:01:56,759.759 INFO    ] Checking for camera pi updates...
[2026-10-18 21:01:56,794.794 INFO    ] 200
[2026-10-18 21:01:56,797.797 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:01:56,839.839 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:02:06,856.856 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:02:06,892.892 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:02:06,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:02:06,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:02:06,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:02:06,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:02:08,955.955 INFO    ] ================================================
[2026-10-18 21:02:08,971.971 INFO    ] Launching Daemon at Sun Oct 18 21:02:08 IST 2026
[2026-10-18 21:02:08,982.982 INFO    ] ================================================
[2026-10-18 21:02:09,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:02:09
[2026-10-18 21:02:10,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:02:10,458.458 INFO    ] Initializing speech engine...
[2026-10-18 21:02:10,467.467 INFO    ] 2026-10-18 21:02:10
[2026-10-18 21:02:10,733.733 INFO    ] 2026-10-18 21:02:10
[2026-10-18 21:02:10,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:02:11,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:02:11,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:02:11,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:02:11,283.283 INFO    ] time= 18/10/2026 21:02:11
[2026-10-18 21:02:11,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:02:11,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:02:11,437.437 INFO    ] No existing commands found in stream
[2026-10-18 21:02:16,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:02:16,453.453 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-18 21:02:17,535.535 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:02:17,537.537 INFO    ] Checking for system updates...
[2026-10-18 21:02:17,577.577 INFO    ] 200
[2026-10-18 21:02:17,580.580 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:02:17,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:02:17,635.635 INFO    ] No update needed
[2026-10-18 21:02:17,637.637 INFO    ] Checking for camera pi updates...
[2026-10-18 21:02:17,674.674 INFO    ] 200
[2026-10-18 21:02:17,677.677 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:02:17,717.717 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:02:27,732.732 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:02:27,768.768 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:02:27,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:02:27,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:02:27,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:02:27,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:02:29,831.831 INFO    ] ================================================
[2026-10-18 21:02:29,846.846 INFO    ] Launching Daemon at Sun Oct 18 21:02:29 IST 2026
[2026-10-18 21:02:29,858.858 INFO    ] ================================================
[2026-10-18 21:02:30,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:02:30
[2026-10-18 21:02:31,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:02:31,427.427 INFO    ] Initializing speech engine...
[2026-10-18 21:02:31,436.436 INFO    ] 2026-10-18 21:02:31
[2026-10-18 21:02:31,699.699 INFO    ] 2026-10-18 21:02:31
[2026-10-18 21:02:31,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:02:31,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:02:32,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:02:32,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:02:32,219.219 INFO    ] time= 18/10/2026 21:02:32
[2026-10-18 21:02:32,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:02:32,308.308 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:02:32,471.471 INFO    ] No existing commands found in stream
[2026-10-18 21:02:37,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:02:37,500.500 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-18 21:02:39,741.741 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:02:39,743.743 INFO    ] Checking for system updates...
[2026-10-18 21:02:39,783.783 INFO    ] 200
[2026-10-18 21:02:39,786.786 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:02:39,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:02:39,847.847 INFO    ] No update needed
[2026-10-18 21:02:39,850.850 INFO    ] Checking for camera pi updates...
[2026-10-18 21:02:39,887.887 INFO    ] 200
[2026-10-18 21:02:39,889.889 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:02:39,930.930 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:02:49,945.945 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:02:49,981.981 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:02:49,991.991 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:02:49,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:02:49,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:02:50,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:02:52,044.044 INFO    ] ================================================
[2026-10-18 21:02:52,059.059 INFO    ] Launching Daemon at Sun Oct 18 21:02:52 IST 2026
[2026-10-18 21:02:52,070.070 INFO    ] ================================================
[2026-10-18 21:02:52,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:02:52
[2026-10-18 21:02:53,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:02:53,472.472 INFO    ] Initializing speech engine...
[2026-10-18 21:02:53,485.485 INFO    ] 2026-10-18 21:02:53
[2026-10-18 21:02:53,751.751 INFO    ] 2026-10-18 21:02:53
[2026-10-18 21:02:53,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:02:54,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:02:54,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:02:54,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:02:54,304.304 INFO    ] time= 18/10/2026 21:02:54
[2026-10-18 21:02:54,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:02:54,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:02:54,478.478 INFO    ] No existing commands found in stream
[2026-10-18 21:02:59,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:02:59,499.499 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-18 21:03:01,733.733 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:03:01,736.736 INFO    ] Checking for system updates...
[2026-10-18 21:03:01,796.796 INFO    ] 200
[2026-10-18 21:03:01,800.800 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:03:01,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:03:01,925.925 INFO    ] No update needed
[2026-10-18 21:03:01,932.932 INFO    ] Checking for camera pi updates...
[2026-10-18 21:03:01,982.982 INFO    ] 200
[2026-10-18 21:03:01,985.985 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:03:02,038.038 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:03:12,052.052 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:03:12,088.088 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:03:12,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:03:12,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:03:12,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:03:12,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:03:14,151.151 INFO    ] ================================================
[2026-10-18 21:03:14,167.167 INFO    ] Launching Daemon at Sun Oct 18 21:03:14 IST 2026
[2026-10-18 21:03:14,178.178 INFO    ] ================================================
[2026-10-18 21:03:14,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:03:14
[2026-10-18 21:03:15,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:03:15,644.644 INFO    ] Initializing speech engine...
[2026-10-18 21:03:15,654.654 INFO    ] 2026-10-18 21:03:15
[2026-10-18 21:03:15,903.903 INFO    ] 2026-10-18 21:03:15
[2026-10-18 21:03:15,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:03:16,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:03:16,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:03:16,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:03:16,457.457 INFO    ] time= 18/10/2026 21:03:16
[2026-10-18 21:03:16,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:03:16,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:03:16,608.608 INFO    ] No existing commands found in stream
[2026-10-18 21:03:21,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:03:21,628.628 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-18 21:03:22,653.653 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:03:22,656.656 INFO    ] Checking for system updates...
[2026-10-18 21:03:22,702.702 INFO    ] 200
[2026-10-18 21:03:22,705.705 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:03:22,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:03:22,762.762 INFO    ] No update needed
[2026-10-18 21:03:22,764.764 INFO    ] Checking for camera pi updates...
[2026-10-18 21:03:22,803.803 INFO    ] 200
[2026-10-18 21:03:22,806.806 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:03:22,848.848 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:03:32,862.862 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:03:32,902.902 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:03:32,914.914 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:03:32,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:03:32,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:03:32,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:03:34,969.969 INFO    ] ================================================
[2026-10-18 21:03:34,985.985 INFO    ] Launching Daemon at Sun Oct 18 21:03:34 IST 2026
[2026-10-18 21:03:35,997.997 INFO    ] ================================================
[2026-10-18 21:03:35,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:03:35
[2026-10-18 21:03:36,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:03:36,623.623 INFO    ] Initializing speech engine...
[2026-10-18 21:03:36,633.633 INFO    ] 2026-10-18 21:03:36
[2026-10-18 21:03:36,939.939 INFO    ] 2026-10-18 21:03:36
[2026-10-18 21:03:37,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:03:37,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:03:37,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:03:37,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:03:37,461.461 INFO    ] time= 18/10/2026 21:03:37
[2026-10-18 21:03:37,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:03:37,500.500 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:03:37,614.614 INFO    ] No existing commands found in stream
[2026-10-18 21:03:42,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:03:42,643.643 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-18 21:03:46,567.567 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:03:46,570.570 INFO    ] Checking for system updates...
[2026-10-18 21:03:46,611.611 INFO    ] 200
[2026-10-18 21:03:46,614.614 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:03:46,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:03:46,678.678 INFO    ] No update needed
[2026-10-18 21:03:46,681.681 INFO    ] Checking for camera pi updates...
[2026-10-18 21:03:46,720.720 INFO    ] 200
[2026-10-18 21:03:46,723.723 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:03:46,770.770 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:03:56,787.787 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:03:56,828.828 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:03:56,839.839 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:03:56,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:03:56,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:03:56,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:03:58,897.897 INFO    ] ================================================
[2026-10-18 21:03:58,913.913 INFO    ] Launching Daemon at Sun Oct 18 21:03:58 IST 2026
[2026-10-18 21:03:58,925.925 INFO    ] ================================================
[2026-10-18 21:03:59,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:03:59
[2026-10-18 21:04:00,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:04:00,573.573 INFO    ] Initializing speech engine...
[2026-10-18 21:04:00,582.582 INFO    ] 2026-10-18 21:04:00
[2026-10-18 21:04:00,858.858 INFO    ] 2026-10-18 21:04:00
[2026-10-18 21:04:00,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:04:01,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:04:01,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:04:01,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:04:01,376.376 INFO    ] time= 18/10/2026 21:04:01
[2026-10-18 21:04:01,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:04:01,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:04:01,528.528 INFO    ] No existing commands found in stream
[2026-10-18 21:04:06,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:04:06,552.552 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-18 21:04:10,714.714 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:04:10,717.717 INFO    ] Checking for system updates...
[2026-10-18 21:04:10,756.756 INFO    ] 200
[2026-10-18 21:04:10,759.759 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:04:10,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:04:10,830.830 INFO    ] No update needed
[2026-10-18 21:04:10,833.833 INFO    ] Checking for camera pi updates...
[2026-10-18 21:04:10,874.874 INFO    ] 200
[2026-10-18 21:04:10,877.877 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:04:10,927.927 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:04:20,943.943 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:04:20,978.978 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:04:20,988.988 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:04:20,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:04:20,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:04:21,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:04:23,041.041 INFO    ] ================================================
[2026-10-18 21:04:23,057.057 INFO    ] Launching Daemon at Sun Oct 18 21:04:23 IST 2026
[2026-10-18 21:04:23,068.068 INFO    ] ================================================
[2026-10-18 21:04:23,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:04:23
[2026-10-18 21:04:24,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:04:24,499.499 INFO    ] Initializing speech engine...
[2026-10-18 21:04:24,507.507 INFO    ] 2026-10-18 21:04:24
[2026-10-18 21:04:24,763.763 INFO    ] 2026-10-18 21:04:24
[2026-10-18 21:04:24,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:04:25,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:04:25,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:04:25,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:04:25,309.309 INFO    ] time= 18/10/2026 21:04:25
[2026-10-18 21:04:25,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:04:25,333.333 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:04:25,461.461 INFO    ] No existing commands found in stream
[2026-10-18 21:04:30,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:04:30,476.476 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-18 21:04:31,241.241 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:04:31,243.243 INFO    ] Checking for system updates...
[2026-10-18 21:04:31,281.281 INFO    ] 200
[2026-10-18 21:04:31,284.284 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:04:31,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:04:31,342.342 INFO    ] No update needed
[2026-10-18 21:04:31,345.345 INFO    ] Checking for camera pi updates...
[2026-10-18 21:04:31,380.380 INFO    ] 200
[2026-10-18 21:04:31,382.382 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:04:31,424.424 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:04:41,441.441 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:04:41,482.482 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:04:41,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:04:41,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:04:41,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:04:41,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:04:43,551.551 INFO    ] ================================================
[2026-10-18 21:04:43,567.567 INFO    ] Launching Daemon at Sun Oct 18 21:04:43 IST 2026
[2026-10-18 21:04:43,578.578 INFO    ] ================================================
[2026-10-18 21:04:44,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:04:44
[2026-10-18 21:04:44,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:04:45,232.232 INFO    ] Initializing speech engine...
[2026-10-18 21:04:45,244.244 INFO    ] 2026-10-18 21:04:45
[2026-10-18 21:04:45,531.531 INFO    ] 2026-10-18 21:04:45
[2026-10-18 21:04:45,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:04:45,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:04:45,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:04:46,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:04:46,064.064 INFO    ] time= 18/10/2026 21:04:46
[2026-10-18 21:04:46,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:04:46,112.112 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:04:46,248.248 INFO    ] No existing commands found in stream
[2026-10-18 21:04:51,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:04:51,272.272 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-18 21:04:52,208.208 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:04:52,210.210 INFO    ] Checking for system updates...
[2026-10-18 21:04:52,246.246 INFO    ] 200
[2026-10-18 21:04:52,249.249 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:04:52,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:04:52,304.304 INFO    ] No update needed
[2026-10-18 21:04:52,307.307 INFO    ] Checking for camera pi updates...
[2026-10-18 21:04:52,342.342 INFO    ] 200
[2026-10-18 21:04:52,345.345 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:04:52,389.389 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:05:02,405.405 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:05:02,453.453 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:05:02,467.467 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:05:02,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:05:02,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:05:02,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:05:04,525.525 INFO    ] ================================================
[2026-10-18 21:05:04,541.541 INFO    ] Launching Daemon at Sun Oct 18 21:05:04 IST 2026
[2026-10-18 21:05:04,553.553 INFO    ] ================================================
[2026-10-18 21:05:05,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:05:05
[2026-10-18 21:05:05,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:05:05,985.985 INFO    ] Initializing speech engine...
[2026-10-18 21:05:05,994.994 INFO    ] 2026-10-18 21:05:05
[2026-10-18 21:05:06,291.291 INFO    ] 2026-10-18 21:05:06
[2026-10-18 21:05:06,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:05:06,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:05:06,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:05:06,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:05:06,720.720 INFO    ] time= 18/10/2026 21:05:06
[2026-10-18 21:05:06,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:05:06,753.753 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:05:06,885.885 INFO    ] No existing commands found in stream
[2026-10-18 21:05:11,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:05:11,918.918 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-18 21:05:12,419.419 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:05:12,421.421 INFO    ] Checking for system updates...
[2026-10-18 21:05:12,461.461 INFO    ] 200
[2026-10-18 21:05:12,463.463 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:05:12,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:05:12,517.517 INFO    ] No update needed
[2026-10-18 21:05:12,520.520 INFO    ] Checking for camera pi updates...
[2026-10-18 21:05:12,553.553 INFO    ] 200
[2026-10-18 21:05:12,556.556 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:05:12,596.596 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:05:22,611.611 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:05:22,646.646 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:05:22,655.655 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:05:22,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:05:22,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:05:22,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:05:24,708.708 INFO    ] ================================================
[2026-10-18 21:05:24,722.722 INFO    ] Launching Daemon at Sun Oct 18 21:05:24 IST 2026
[2026-10-18 21:05:24,734.734 INFO    ] ================================================
[2026-10-18 21:05:25,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:05:25
[2026-10-18 21:05:25,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:05:26,158.158 INFO    ] Initializing speech engine...
[2026-10-18 21:05:26,167.167 INFO    ] 2026-10-18 21:05:26
[2026-10-18 21:05:26,413.413 INFO    ] 2026-10-18 21:05:26
[2026-10-18 21:05:26,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:05:26,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:05:26,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:05:26,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:05:26,960.960 INFO    ] time= 18/10/2026 21:05:26
[2026-10-18 21:05:26,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:05:26,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:05:27,147.147 INFO    ] No existing commands found in stream
[2026-10-18 21:05:32,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:05:32,181.181 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-18 21:05:35,738.738 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:05:35,740.740 INFO    ] Checking for system updates...
[2026-10-18 21:05:35,777.777 INFO    ] 200
[2026-10-18 21:05:35,780.780 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:05:35,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:05:35,839.839 INFO    ] No update needed
[2026-10-18 21:05:35,842.842 INFO    ] Checking for camera pi updates...
[2026-10-18 21:05:35,876.876 INFO    ] 200
[2026-10-18 21:05:35,879.879 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:05:35,924.924 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:05:45,938.938 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:05:45,974.974 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:05:45,984.984 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:05:45,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:05:45,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:05:45,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:05:48,039.039 INFO    ] ================================================
[2026-10-18 21:05:48,055.055 INFO    ] Launching Daemon at Sun Oct 18 21:05:48 IST 2026
[2026-10-18 21:05:48,066.066 INFO    ] ================================================
[2026-10-18 21:05:48,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:05:48
[2026-10-18 21:05:49,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:05:49,509.509 INFO    ] Initializing speech engine...
[2026-10-18 21:05:49,515.515 INFO    ] 2026-10-18 21:05:49
[2026-10-18 21:05:49,773.773 INFO    ] 2026-10-18 21:05:49
[2026-10-18 21:05:49,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:05:50,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:05:50,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:05:50,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:05:50,230.230 INFO    ] time= 18/10/2026 21:05:50
[2026-10-18 21:05:50,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:05:50,325.325 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:05:50,460.460 INFO    ] No existing commands found in stream
[2026-10-18 21:05:55,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:05:55,482.482 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-18 21:05:57,989.989 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:05:57,991.991 INFO    ] Checking for system updates...
[2026-10-18 21:05:58,031.031 INFO    ] 200
[2026-10-18 21:05:58,033.033 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:05:58,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:05:58,095.095 INFO    ] No update needed
[2026-10-18 21:05:58,098.098 INFO    ] Checking for camera pi updates...
[2026-10-18 21:05:58,132.132 INFO    ] 200
[2026-10-18 21:05:58,135.135 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:05:58,180.180 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:06:08,196.196 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:06:08,231.231 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:06:08,241.241 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:06:08,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:06:08,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:06:08,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:06:10,294.294 INFO    ] ================================================
[2026-10-18 21:06:10,310.310 INFO    ] Launching Daemon at Sun Oct 18 21:06:10 IST 2026
[2026-10-18 21:06:10,321.321 INFO    ] ================================================
[2026-10-18 21:06:10,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:06:10
[2026-10-18 21:06:11,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:06:11,739.739 INFO    ] Initializing speech engine...
[2026-10-18 21:06:11,751.751 INFO    ] 2026-10-18 21:06:11
[2026-10-18 21:06:12,019.019 INFO    ] 2026-10-18 21:06:12
[2026-10-18 21:06:12,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:06:12,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:06:12,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:06:12,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:06:12,571.571 INFO    ] time= 18/10/2026 21:06:12
[2026-10-18 21:06:12,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:06:12,599.599 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:06:12,735.735 INFO    ] No existing commands found in stream
[2026-10-18 21:06:17,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:06:17,765.765 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-18 21:06:23,847.847 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:06:23,849.849 INFO    ] Checking for system updates...
[2026-10-18 21:06:23,888.888 INFO    ] 200
[2026-10-18 21:06:23,891.891 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:06:23,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:06:23,947.947 INFO    ] No update needed
[2026-10-18 21:06:23,949.949 INFO    ] Checking for camera pi updates...
[2026-10-18 21:06:23,983.983 INFO    ] 200
[2026-10-18 21:06:23,986.986 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:06:24,026.026 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:06:34,039.039 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:06:34,073.073 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:06:34,083.083 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:06:34,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:06:34,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:06:34,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:06:36,135.135 INFO    ] ================================================
[2026-10-18 21:06:36,152.152 INFO    ] Launching Daemon at Sun Oct 18 21:06:36 IST 2026
[2026-10-18 21:06:36,163.163 INFO    ] ================================================
[2026-10-18 21:06:36,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:06:36
[2026-10-18 21:06:37,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:06:37,612.612 INFO    ] Initializing speech engine...
[2026-10-18 21:06:37,618.618 INFO    ] 2026-10-18 21:06:37
[2026-10-18 21:06:37,915.915 INFO    ] 2026-10-18 21:06:37
[2026-10-18 21:06:37,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:06:38,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:06:38,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:06:38,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:06:38,341.341 INFO    ] time= 18/10/2026 21:06:38
[2026-10-18 21:06:38,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:06:38,352.352 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:06:38,454.454 INFO    ] No existing commands found in stream
[2026-10-18 21:06:43,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:06:43,487.487 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-18 21:06:44,319.319 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:06:44,321.321 INFO    ] Checking for system updates...
[2026-10-18 21:06:44,357.357 INFO    ] 200
[2026-10-18 21:06:44,359.359 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:06:44,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:06:44,417.417 INFO    ] No update needed
[2026-10-18 21:06:44,420.420 INFO    ] Checking for camera pi updates...
[2026-10-18 21:06:44,454.454 INFO    ] 200
[2026-10-18 21:06:44,457.457 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:06:44,497.497 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:06:54,512.512 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:06:54,548.548 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:06:54,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:06:54,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:06:54,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:06:54,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:06:56,611.611 INFO    ] ================================================
[2026-10-18 21:06:56,627.627 INFO    ] Launching Daemon at Sun Oct 18 21:06:56 IST 2026
[2026-10-18 21:06:56,638.638 INFO    ] ================================================
[2026-10-18 21:06:57,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:06:57
[2026-10-18 21:06:57,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:06:58,253.253 INFO    ] Initializing speech engine...
[2026-10-18 21:06:58,267.267 INFO    ] 2026-10-18 21:06:58
[2026-10-18 21:06:58,576.576 INFO    ] 2026-10-18 21:06:58
[2026-10-18 21:06:58,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:06:58,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:06:58,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:06:59,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:06:59,085.085 INFO    ] time= 18/10/2026 21:06:59
[2026-10-18 21:06:59,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:06:59,132.132 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:06:59,246.246 INFO    ] No existing commands found in stream
[2026-10-18 21:07:04,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:07:04,280.280 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-18 21:07:06,343.343 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:07:06,346.346 INFO    ] Checking for system updates...
[2026-10-18 21:07:06,382.382 INFO    ] 200
[2026-10-18 21:07:06,384.384 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:07:06,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:07:06,448.448 INFO    ] No update needed
[2026-10-18 21:07:06,450.450 INFO    ] Checking for camera pi updates...
[2026-10-18 21:07:06,497.497 INFO    ] 200
[2026-10-18 21:07:06,499.499 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:07:06,539.539 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:07:16,555.555 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:07:16,590.590 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:07:16,599.599 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:07:16,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:07:16,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:07:16,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:07:18,652.652 INFO    ] ================================================
[2026-10-18 21:07:18,667.667 INFO    ] Launching Daemon at Sun Oct 18 21:07:18 IST 2026
[2026-10-18 21:07:18,679.679 INFO    ] ================================================
[2026-10-18 21:07:19,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:07:19
[2026-10-18 21:07:19,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:07:20,211.211 INFO    ] Initializing speech engine...
[2026-10-18 21:07:20,221.221 INFO    ] 2026-10-18 21:07:20
[2026-10-18 21:07:20,507.507 INFO    ] 2026-10-18 21:07:20
[2026-10-18 21:07:20,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:07:20,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:07:20,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:07:21,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:07:21,056.056 INFO    ] time= 18/10/2026 21:07:21
[2026-10-18 21:07:21,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:07:21,103.103 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:07:21,225.225 INFO    ] No existing commands found in stream
[2026-10-18 21:07:26,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:07:26,263.263 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-18 21:07:26,803.803 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:07:26,805.805 INFO    ] Checking for system updates...
[2026-10-18 21:07:26,842.842 INFO    ] 200
[2026-10-18 21:07:26,845.845 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:07:26,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:07:26,903.903 INFO    ] No update needed
[2026-10-18 21:07:26,905.905 INFO    ] Checking for camera pi updates...
[2026-10-18 21:07:26,940.940 INFO    ] 200
[2026-10-18 21:07:26,942.942 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:07:26,987.987 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:07:37,002.002 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:07:37,037.037 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:07:37,047.047 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:07:37,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:07:37,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:07:37,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:07:39,099.099 INFO    ] ================================================
[2026-10-18 21:07:39,114.114 INFO    ] Launching Daemon at Sun Oct 18 21:07:39 IST 2026
[2026-10-18 21:07:39,124.124 INFO    ] ================================================
[2026-10-18 21:07:39,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:07:39
[2026-10-18 21:07:40,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:07:40,544.544 INFO    ] Initializing speech engine...
[2026-10-18 21:07:40,560.560 INFO    ] 2026-10-18 21:07:40
[2026-10-18 21:07:40,844.844 INFO    ] 2026-10-18 21:07:40
[2026-10-18 21:07:40,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:07:41,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:07:41,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:07:41,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:07:41,353.353 INFO    ] time= 18/10/2026 21:07:41
[2026-10-18 21:07:41,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:07:41,422.422 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:07:41,557.557 INFO    ] No existing commands found in stream
[2026-10-18 21:07:46,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:07:46,585.585 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-18 21:07:49,817.817 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:07:49,820.820 INFO    ] Checking for system updates...
[2026-10-18 21:07:49,856.856 INFO    ] 200
[2026-10-18 21:07:49,858.858 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:07:49,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:07:49,917.917 INFO    ] No update needed
[2026-10-18 21:07:49,919.919 INFO    ] Checking for camera pi updates...
[2026-10-18 21:07:49,953.953 INFO    ] 200
[2026-10-18 21:07:49,955.955 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:07:49,999.999 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:08:00,015.015 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:08:00,050.050 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:08:00,060.060 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:08:00,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:08:00,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:08:00,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:08:02,137.137 INFO    ] ================================================
[2026-10-18 21:08:02,167.167 INFO    ] Launching Daemon at Sun Oct 18 21:08:02 IST 2026
[2026-10-18 21:08:02,190.190 INFO    ] ================================================
[2026-10-18 21:08:02,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:08:02
[2026-10-18 21:08:03,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:08:03,759.759 INFO    ] Initializing speech engine...
[2026-10-18 21:08:03,763.763 INFO    ] 2026-10-18 21:08:03
[2026-10-18 21:08:04,049.049 INFO    ] 2026-10-18 21:08:04
[2026-10-18 21:08:04,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:08:04,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:08:04,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:08:04,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:08:04,539.539 INFO    ] time= 18/10/2026 21:08:04
[2026-10-18 21:08:04,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:08:04,623.623 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:08:04,759.759 INFO    ] No existing commands found in stream
[2026-10-18 21:08:09,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:08:09,784.784 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-18 21:08:13,633.633 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:08:13,636.636 INFO    ] Checking for system updates...
[2026-10-18 21:08:13,673.673 INFO    ] 200
[2026-10-18 21:08:13,676.676 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:08:13,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:08:13,731.731 INFO    ] No update needed
[2026-10-18 21:08:13,733.733 INFO    ] Checking for camera pi updates...
[2026-10-18 21:08:13,768.768 INFO    ] 200
[2026-10-18 21:08:13,770.770 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:08:13,813.813 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:08:23,829.829 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:08:23,867.867 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:08:23,878.878 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:08:23,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:08:23,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:08:23,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:08:25,932.932 INFO    ] ================================================
[2026-10-18 21:08:25,948.948 INFO    ] Launching Daemon at Sun Oct 18 21:08:25 IST 2026
[2026-10-18 21:08:25,959.959 INFO    ] ================================================
[2026-10-18 21:08:26,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:08:26
[2026-10-18 21:08:27,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:08:27,393.393 INFO    ] Initializing speech engine...
[2026-10-18 21:08:27,402.402 INFO    ] 2026-10-18 21:08:27
[2026-10-18 21:08:27,654.654 INFO    ] 2026-10-18 21:08:27
[2026-10-18 21:08:27,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:08:27,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:08:27,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:08:28,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:08:28,154.154 INFO    ] time= 18/10/2026 21:08:28
[2026-10-18 21:08:28,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:08:28,228.228 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:08:28,360.360 INFO    ] No existing commands found in stream
[2026-10-18 21:08:33,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:08:33,388.388 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-18 21:08:37,340.340 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:08:37,343.343 INFO    ] Checking for system updates...
[2026-10-18 21:08:37,379.379 INFO    ] 200
[2026-10-18 21:08:37,382.382 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:08:37,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:08:37,441.441 INFO    ] No update needed
[2026-10-18 21:08:37,443.443 INFO    ] Checking for camera pi updates...
[2026-10-18 21:08:37,477.477 INFO    ] 200
[2026-10-18 21:08:37,479.479 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:08:37,519.519 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:08:47,533.533 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:08:47,568.568 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:08:47,578.578 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:08:47,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:08:47,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:08:47,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:08:49,629.629 INFO    ] ================================================
[2026-10-18 21:08:49,645.645 INFO    ] Launching Daemon at Sun Oct 18 21:08:49 IST 2026
[2026-10-18 21:08:49,656.656 INFO    ] ================================================
[2026-10-18 21:08:50,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:08:50
[2026-10-18 21:08:50,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:08:51,218.218 INFO    ] Initializing speech engine...
[2026-10-18 21:08:51,226.226 INFO    ] 2026-10-18 21:08:51
[2026-10-18 21:08:51,499.499 INFO    ] 2026-10-18 21:08:51
[2026-10-18 21:08:51,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:08:51,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:08:51,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:08:52,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:08:52,060.060 INFO    ] time= 18/10/2026 21:08:52
[2026-10-18 21:08:52,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:08:52,096.096 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:08:52,262.262 INFO    ] No existing commands found in stream
[2026-10-18 21:08:57,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:08:57,302.302 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-18 21:08:58,618.618 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:08:58,620.620 INFO    ] Checking for system updates...
[2026-10-18 21:08:58,657.657 INFO    ] 200
[2026-10-18 21:08:58,660.660 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:08:58,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:08:58,719.719 INFO    ] No update needed
[2026-10-18 21:08:58,722.722 INFO    ] Checking for camera pi updates...
[2026-10-18 21:08:58,762.762 INFO    ] 200
[2026-10-18 21:08:58,765.765 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:08:58,807.807 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:09:08,822.822 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:09:08,860.860 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:09:08,871.871 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:09:08,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:09:08,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:09:08,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:09:10,925.925 INFO    ] ================================================
[2026-10-18 21:09:10,941.941 INFO    ] Launching Daemon at Sun Oct 18 21:09:10 IST 2026
[2026-10-18 21:09:10,952.952 INFO    ] ================================================
[2026-10-18 21:09:11,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:09:11
[2026-10-18 21:09:12,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:09:12,406.406 INFO    ] Initializing speech engine...
[2026-10-18 21:09:12,412.412 INFO    ] 2026-10-18 21:09:12
[2026-10-18 21:09:12,673.673 INFO    ] 2026-10-18 21:09:12
[2026-10-18 21:09:12,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:09:12,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:09:12,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:09:13,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:09:13,198.198 INFO    ] time= 18/10/2026 21:09:13
[2026-10-18 21:09:13,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:09:13,235.235 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:09:13,370.370 INFO    ] No existing commands found in stream
[2026-10-18 21:09:18,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:09:18,394.394 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-18 21:09:19,251.251 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:09:19,254.254 INFO    ] Checking for system updates...
[2026-10-18 21:09:19,290.290 INFO    ] 200
[2026-10-18 21:09:19,292.292 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:09:19,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:09:19,350.350 INFO    ] No update needed
[2026-10-18 21:09:19,353.353 INFO    ] Checking for camera pi updates...
[2026-10-18 21:09:19,386.386 INFO    ] 200
[2026-10-18 21:09:19,388.388 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:09:19,429.429 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:09:29,444.444 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:09:29,480.480 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:09:29,490.490 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:09:29,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:09:29,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:09:29,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:09:31,547.547 INFO    ] ================================================
[2026-10-18 21:09:31,562.562 INFO    ] Launching Daemon at Sun Oct 18 21:09:31 IST 2026
[2026-10-18 21:09:31,573.573 INFO    ] ================================================
[2026-10-18 21:09:32,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:09:32
[2026-10-18 21:09:32,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:09:33,338.338 INFO    ] Initializing speech engine...
[2026-10-18 21:09:33,342.342 INFO    ] 2026-10-18 21:09:33
[2026-10-18 21:09:33,617.617 INFO    ] 2026-10-18 21:09:33
[2026-10-18 21:09:33,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:09:33,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:09:33,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:09:34,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:09:34,094.094 INFO    ] time= 18/10/2026 21:09:34
[2026-10-18 21:09:34,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:09:34,161.161 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:09:34,307.307 INFO    ] No existing commands found in stream
[2026-10-18 21:09:39,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:09:39,326.326 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-18 21:09:42,244.244 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:09:42,247.247 INFO    ] Checking for system updates...
[2026-10-18 21:09:42,283.283 INFO    ] 200
[2026-10-18 21:09:42,286.286 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:09:42,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:09:42,348.348 INFO    ] No update needed
[2026-10-18 21:09:42,350.350 INFO    ] Checking for camera pi updates...
[2026-10-18 21:09:42,388.388 INFO    ] 200
[2026-10-18 21:09:42,391.391 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:09:42,432.432 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:09:52,447.447 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:09:52,483.483 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:09:52,493.493 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:09:52,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:09:52,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:09:52,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:09:54,547.547 INFO    ] ================================================
[2026-10-18 21:09:54,563.563 INFO    ] Launching Daemon at Sun Oct 18 21:09:54 IST 2026
[2026-10-18 21:09:54,575.575 INFO    ] ================================================
[2026-10-18 21:09:55,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:09:55
[2026-10-18 21:09:55,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:09:55,976.976 INFO    ] Initializing speech engine...
[2026-10-18 21:09:55,991.991 INFO    ] 2026-10-18 21:09:55
[2026-10-18 21:09:56,257.257 INFO    ] 2026-10-18 21:09:56
[2026-10-18 21:09:56,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:09:56,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:09:56,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:09:56,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:09:56,762.762 INFO    ] time= 18/10/2026 21:09:56
[2026-10-18 21:09:56,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:09:56,833.833 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:09:56,982.982 INFO    ] No existing commands found in stream
[2026-10-18 21:10:01,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:10:02,000.000 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-18 21:10:08,224.224 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:10:08,227.227 INFO    ] Checking for system updates...
[2026-10-18 21:10:08,267.267 INFO    ] 200
[2026-10-18 21:10:08,269.269 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:10:08,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:10:08,333.333 INFO    ] No update needed
[2026-10-18 21:10:08,336.336 INFO    ] Checking for camera pi updates...
[2026-10-18 21:10:08,372.372 INFO    ] 200
[2026-10-18 21:10:08,375.375 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:10:08,423.423 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:10:18,439.439 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:10:18,473.473 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:10:18,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:10:18,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:10:18,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:10:18,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:10:20,541.541 INFO    ] ================================================
[2026-10-18 21:10:20,557.557 INFO    ] Launching Daemon at Sun Oct 18 21:10:20 IST 2026
[2026-10-18 21:10:20,568.568 INFO    ] ================================================
[2026-10-18 21:10:21,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:10:21
[2026-10-18 21:10:21,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:10:22,042.042 INFO    ] Initializing speech engine...
[2026-10-18 21:10:22,050.050 INFO    ] 2026-10-18 21:10:22
[2026-10-18 21:10:22,324.324 INFO    ] 2026-10-18 21:10:22
[2026-10-18 21:10:22,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:10:22,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:10:22,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:10:22,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:10:22,862.862 INFO    ] time= 18/10/2026 21:10:22
[2026-10-18 21:10:22,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:10:22,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:10:23,011.011 INFO    ] No existing commands found in stream
[2026-10-18 21:10:28,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:10:28,030.030 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-18 21:10:31,682.682 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:10:31,684.684 INFO    ] Checking for system updates...
[2026-10-18 21:10:31,720.720 INFO    ] 200
[2026-10-18 21:10:31,722.722 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:10:31,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:10:31,786.786 INFO    ] No update needed
[2026-10-18 21:10:31,788.788 INFO    ] Checking for camera pi updates...
[2026-10-18 21:10:31,826.826 INFO    ] 200
[2026-10-18 21:10:31,829.829 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:10:31,875.875 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:10:41,889.889 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:10:41,924.924 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:10:41,934.934 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:10:41,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:10:41,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:10:41,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:10:43,990.990 INFO    ] ================================================
[2026-10-18 21:10:44,006.006 INFO    ] Launching Daemon at Sun Oct 18 21:10:44 IST 2026
[2026-10-18 21:10:44,017.017 INFO    ] ================================================
[2026-10-18 21:10:44,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:10:44
[2026-10-18 21:10:45,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:10:45,507.507 INFO    ] Initializing speech engine...
[2026-10-18 21:10:45,516.516 INFO    ] 2026-10-18 21:10:45
[2026-10-18 21:10:45,779.779 INFO    ] 2026-10-18 21:10:45
[2026-10-18 21:10:45,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:10:46,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:10:46,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:10:46,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:10:46,316.316 INFO    ] time= 18/10/2026 21:10:46
[2026-10-18 21:10:46,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:10:46,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:10:46,490.490 INFO    ] No existing commands found in stream
[2026-10-18 21:10:51,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:10:51,525.525 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-18 21:10:55,263.263 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:10:55,266.266 INFO    ] Checking for system updates...
[2026-10-18 21:10:55,304.304 INFO    ] 200
[2026-10-18 21:10:55,307.307 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:10:55,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:10:55,371.371 INFO    ] No update needed
[2026-10-18 21:10:55,374.374 INFO    ] Checking for camera pi updates...
[2026-10-18 21:10:55,413.413 INFO    ] 200
[2026-10-18 21:10:55,416.416 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:10:55,458.458 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:11:05,471.471 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:11:05,511.511 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:11:05,522.522 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:11:05,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:11:05,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:11:05,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:11:07,578.578 INFO    ] ================================================
[2026-10-18 21:11:07,602.602 INFO    ] Launching Daemon at Sun Oct 18 21:11:07 IST 2026
[2026-10-18 21:11:07,614.614 INFO    ] ================================================
[2026-10-18 21:11:08,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:11:08
[2026-10-18 21:11:08,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:11:09,018.018 INFO    ] Initializing speech engine...
[2026-10-18 21:11:09,038.038 INFO    ] 2026-10-18 21:11:09
[2026-10-18 21:11:09,298.298 INFO    ] 2026-10-18 21:11:09
[2026-10-18 21:11:09,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:11:09,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:11:09,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:11:09,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:11:09,852.852 INFO    ] time= 18/10/2026 21:11:09
[2026-10-18 21:11:09,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:11:09,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:11:10,030.030 INFO    ] No existing commands found in stream
[2026-10-18 21:11:15,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:11:15,051.051 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-18 21:11:19,413.413 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:11:19,416.416 INFO    ] Checking for system updates...
[2026-10-18 21:11:19,451.451 INFO    ] 200
[2026-10-18 21:11:19,454.454 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:11:19,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:11:19,508.508 INFO    ] No update needed
[2026-10-18 21:11:19,511.511 INFO    ] Checking for camera pi updates...
[2026-10-18 21:11:19,544.544 INFO    ] 200
[2026-10-18 21:11:19,547.547 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:11:19,588.588 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:11:29,603.603 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:11:29,638.638 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:11:29,648.648 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:11:29,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:11:29,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:11:29,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:11:31,701.701 INFO    ] ================================================
[2026-10-18 21:11:31,718.718 INFO    ] Launching Daemon at Sun Oct 18 21:11:31 IST 2026
[2026-10-18 21:11:31,729.729 INFO    ] ================================================
[2026-10-18 21:11:32,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:11:32
[2026-10-18 21:11:32,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:11:33,213.213 INFO    ] Initializing speech engine...
[2026-10-18 21:11:33,227.227 INFO    ] 2026-10-18 21:11:33
[2026-10-18 21:11:33,511.511 INFO    ] 2026-10-18 21:11:33
[2026-10-18 21:11:33,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:11:33,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:11:33,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:11:33,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:11:34,000.000 INFO    ] time= 18/10/2026 21:11:33
[2026-10-18 21:11:34,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:11:34,080.080 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:11:34,229.229 INFO    ] No existing commands found in stream
[2026-10-18 21:11:39,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:11:39,247.247 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-18 21:11:42,454.454 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:11:42,457.457 INFO    ] Checking for system updates...
[2026-10-18 21:11:42,493.493 INFO    ] 200
[2026-10-18 21:11:42,495.495 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:11:42,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:11:42,558.558 INFO    ] No update needed
[2026-10-18 21:11:42,560.560 INFO    ] Checking for camera pi updates...
[2026-10-18 21:11:42,597.597 INFO    ] 200
[2026-10-18 21:11:42,600.600 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:11:42,645.645 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:11:52,660.660 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:11:52,694.694 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:11:52,704.704 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:11:52,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:11:52,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:11:52,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:11:54,758.758 INFO    ] ================================================
[2026-10-18 21:11:54,774.774 INFO    ] Launching Daemon at Sun Oct 18 21:11:54 IST 2026
[2026-10-18 21:11:54,785.785 INFO    ] ================================================
[2026-10-18 21:11:55,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:11:55
[2026-10-18 21:11:55,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:11:56,240.240 INFO    ] Initializing speech engine...
[2026-10-18 21:11:56,257.257 INFO    ] 2026-10-18 21:11:56
[2026-10-18 21:11:56,547.547 INFO    ] 2026-10-18 21:11:56
[2026-10-18 21:11:56,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:11:56,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:11:56,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:11:57,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:11:57,047.047 INFO    ] time= 18/10/2026 21:11:57
[2026-10-18 21:11:57,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:11:57,161.161 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:11:57,326.326 INFO    ] No existing commands found in stream
[2026-10-18 21:12:02,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:12:02,352.352 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-18 21:12:05,971.971 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:12:05,973.973 INFO    ] Checking for system updates...
[2026-10-18 21:12:06,009.009 INFO    ] 200
[2026-10-18 21:12:06,012.012 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:12:06,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:12:06,067.067 INFO    ] No update needed
[2026-10-18 21:12:06,070.070 INFO    ] Checking for camera pi updates...
[2026-10-18 21:12:06,104.104 INFO    ] 200
[2026-10-18 21:12:06,106.106 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:12:06,152.152 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:12:16,167.167 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:12:16,202.202 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:12:16,212.212 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:12:16,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:12:16,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:12:16,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:12:18,266.266 INFO    ] ================================================
[2026-10-18 21:12:18,282.282 INFO    ] Launching Daemon at Sun Oct 18 21:12:18 IST 2026
[2026-10-18 21:12:18,294.294 INFO    ] ================================================
[2026-10-18 21:12:18,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:12:18
[2026-10-18 21:12:19,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:12:19,755.755 INFO    ] Initializing speech engine...
[2026-10-18 21:12:19,764.764 INFO    ] 2026-10-18 21:12:19
[2026-10-18 21:12:20,023.023 INFO    ] 2026-10-18 21:12:20
[2026-10-18 21:12:20,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:12:20,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:12:20,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:12:20,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:12:20,518.518 INFO    ] time= 18/10/2026 21:12:20
[2026-10-18 21:12:20,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:12:20,577.577 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:12:20,725.725 INFO    ] No existing commands found in stream
[2026-10-18 21:12:25,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:12:25,750.750 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-18 21:12:29,173.173 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:12:29,176.176 INFO    ] Checking for system updates...
[2026-10-18 21:12:29,211.211 INFO    ] 200
[2026-10-18 21:12:29,214.214 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:12:29,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:12:29,270.270 INFO    ] No update needed
[2026-10-18 21:12:29,272.272 INFO    ] Checking for camera pi updates...
[2026-10-18 21:12:29,306.306 INFO    ] 200
[2026-10-18 21:12:29,308.308 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:12:29,353.353 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:12:39,368.368 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:12:39,404.404 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:12:39,414.414 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:12:39,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:12:39,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:12:39,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:12:41,468.468 INFO    ] ================================================
[2026-10-18 21:12:41,485.485 INFO    ] Launching Daemon at Sun Oct 18 21:12:41 IST 2026
[2026-10-18 21:12:41,496.496 INFO    ] ================================================
[2026-10-18 21:12:42,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:12:42
[2026-10-18 21:12:42,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:12:43,140.140 INFO    ] Initializing speech engine...
[2026-10-18 21:12:43,148.148 INFO    ] 2026-10-18 21:12:43
[2026-10-18 21:12:43,435.435 INFO    ] 2026-10-18 21:12:43
[2026-10-18 21:12:43,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:12:43,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:12:43,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:12:43,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:12:43,972.972 INFO    ] time= 18/10/2026 21:12:43
[2026-10-18 21:12:43,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:12:44,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:12:44,133.133 INFO    ] No existing commands found in stream
[2026-10-18 21:12:49,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:12:49,166.166 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-18 21:12:53,335.335 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:12:53,337.337 INFO    ] Checking for system updates...
[2026-10-18 21:12:53,378.378 INFO    ] 200
[2026-10-18 21:12:53,380.380 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:12:53,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:12:53,441.441 INFO    ] No update needed
[2026-10-18 21:12:53,444.444 INFO    ] Checking for camera pi updates...
[2026-10-18 21:12:53,478.478 INFO    ] 200
[2026-10-18 21:12:53,480.480 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:12:53,520.520 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:13:03,534.534 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:13:03,569.569 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:13:03,581.581 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:13:03,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:13:03,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:13:03,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:13:05,639.639 INFO    ] ================================================
[2026-10-18 21:13:05,655.655 INFO    ] Launching Daemon at Sun Oct 18 21:13:05 IST 2026
[2026-10-18 21:13:05,667.667 INFO    ] ================================================
[2026-10-18 21:13:06,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:13:06
[2026-10-18 21:13:06,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:13:07,259.259 INFO    ] Initializing speech engine...
[2026-10-18 21:13:07,268.268 INFO    ] 2026-10-18 21:13:07
[2026-10-18 21:13:07,526.526 INFO    ] 2026-10-18 21:13:07
[2026-10-18 21:13:07,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:13:07,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:13:07,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:13:07,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:13:08,035.035 INFO    ] time= 18/10/2026 21:13:07
[2026-10-18 21:13:08,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:13:08,117.117 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:13:08,262.262 INFO    ] No existing commands found in stream
[2026-10-18 21:13:13,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:13:13,289.289 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-18 21:13:16,451.451 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:13:16,454.454 INFO    ] Checking for system updates...
[2026-10-18 21:13:16,492.492 INFO    ] 200
[2026-10-18 21:13:16,495.495 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:13:16,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:13:16,555.555 INFO    ] No update needed
[2026-10-18 21:13:16,558.558 INFO    ] Checking for camera pi updates...
[2026-10-18 21:13:16,592.592 INFO    ] 200
[2026-10-18 21:13:16,594.594 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:13:16,636.636 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:13:26,652.652 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:13:26,691.691 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:13:26,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:13:26,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:13:26,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:13:26,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:13:28,758.758 INFO    ] ================================================
[2026-10-18 21:13:28,773.773 INFO    ] Launching Daemon at Sun Oct 18 21:13:28 IST 2026
[2026-10-18 21:13:28,784.784 INFO    ] ================================================
[2026-10-18 21:13:29,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:13:29
[2026-10-18 21:13:29,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:13:30,232.232 INFO    ] Initializing speech engine...
[2026-10-18 21:13:30,241.241 INFO    ] 2026-10-18 21:13:30
[2026-10-18 21:13:30,488.488 INFO    ] 2026-10-18 21:13:30
[2026-10-18 21:13:30,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:13:30,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:13:30,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:13:30,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:13:30,992.992 INFO    ] time= 18/10/2026 21:13:30
[2026-10-18 21:13:31,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:13:31,050.050 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:13:31,196.196 INFO    ] No existing commands found in stream
[2026-10-18 21:13:36,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:13:36,213.213 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-18 21:13:37,393.393 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:13:37,396.396 INFO    ] Checking for system updates...
[2026-10-18 21:13:37,432.432 INFO    ] 200
[2026-10-18 21:13:37,434.434 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:13:37,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:13:37,488.488 INFO    ] No update needed
[2026-10-18 21:13:37,491.491 INFO    ] Checking for camera pi updates...
[2026-10-18 21:13:37,523.523 INFO    ] 200
[2026-10-18 21:13:37,526.526 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:13:37,565.565 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:13:47,581.581 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:13:47,615.615 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:13:47,625.625 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:13:47,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:13:47,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:13:47,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:13:49,678.678 INFO    ] ================================================
[2026-10-18 21:13:49,693.693 INFO    ] Launching Daemon at Sun Oct 18 21:13:49 IST 2026
[2026-10-18 21:13:49,704.704 INFO    ] ================================================
[2026-10-18 21:13:50,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:13:50
[2026-10-18 21:13:50,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:13:51,104.104 INFO    ] Initializing speech engine...
[2026-10-18 21:13:51,119.119 INFO    ] 2026-10-18 21:13:51
[2026-10-18 21:13:51,384.384 INFO    ] 2026-10-18 21:13:51
[2026-10-18 21:13:51,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:13:51,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:13:51,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:13:51,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:13:51,901.901 INFO    ] time= 18/10/2026 21:13:51
[2026-10-18 21:13:51,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:13:51,962.962 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:13:52,106.106 INFO    ] No existing commands found in stream
[2026-10-18 21:13:57,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:13:57,124.124 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-18 21:13:58,092.092 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:13:58,095.095 INFO    ] Checking for system updates...
[2026-10-18 21:13:58,130.130 INFO    ] 200
[2026-10-18 21:13:58,132.132 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:13:58,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:13:58,194.194 INFO    ] No update needed
[2026-10-18 21:13:58,197.197 INFO    ] Checking for camera pi updates...
[2026-10-18 21:13:58,233.233 INFO    ] 200
[2026-10-18 21:13:58,236.236 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:13:58,280.280 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:14:08,295.295 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:14:08,329.329 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:14:08,339.339 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:14:08,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:14:08,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:14:08,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:14:10,391.391 INFO    ] ================================================
[2026-10-18 21:14:10,406.406 INFO    ] Launching Daemon at Sun Oct 18 21:14:10 IST 2026
[2026-10-18 21:14:10,416.416 INFO    ] ================================================
[2026-10-18 21:14:10,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:14:10
[2026-10-18 21:14:11,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:14:11,872.872 INFO    ] Initializing speech engine...
[2026-10-18 21:14:11,879.879 INFO    ] 2026-10-18 21:14:11
[2026-10-18 21:14:12,140.140 INFO    ] 2026-10-18 21:14:12
[2026-10-18 21:14:12,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:14:12,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:14:12,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:14:12,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:14:12,682.682 INFO    ] time= 18/10/2026 21:14:12
[2026-10-18 21:14:12,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:14:12,709.709 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:14:12,837.837 INFO    ] No existing commands found in stream
[2026-10-18 21:14:17,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:14:17,863.863 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-18 21:14:19,821.821 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:14:19,824.824 INFO    ] Checking for system updates...
[2026-10-18 21:14:19,861.861 INFO    ] 200
[2026-10-18 21:14:19,864.864 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:14:19,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:14:19,920.920 INFO    ] No update needed
[2026-10-18 21:14:19,923.923 INFO    ] Checking for camera pi updates...
[2026-10-18 21:14:19,961.961 INFO    ] 200
[2026-10-18 21:14:19,963.963 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:14:20,008.008 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:14:30,023.023 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:14:30,058.058 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:14:30,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:14:30,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:14:30,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:14:30,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:14:32,122.122 INFO    ] ================================================
[2026-10-18 21:14:32,138.138 INFO    ] Launching Daemon at Sun Oct 18 21:14:32 IST 2026
[2026-10-18 21:14:32,150.150 INFO    ] ================================================
[2026-10-18 21:14:32,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:14:32
[2026-10-18 21:14:33,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:14:33,618.618 INFO    ] Initializing speech engine...
[2026-10-18 21:14:33,632.632 INFO    ] 2026-10-18 21:14:33
[2026-10-18 21:14:33,886.886 INFO    ] 2026-10-18 21:14:33
[2026-10-18 21:14:33,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:14:34,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:14:34,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:14:34,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:14:34,391.391 INFO    ] time= 18/10/2026 21:14:34
[2026-10-18 21:14:34,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:14:34,449.449 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:14:34,579.579 INFO    ] No existing commands found in stream
[2026-10-18 21:14:39,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:14:39,606.606 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-18 21:14:41,147.147 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:14:41,150.150 INFO    ] Checking for system updates...
[2026-10-18 21:14:41,185.185 INFO    ] 200
[2026-10-18 21:14:41,188.188 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:14:41,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:14:41,243.243 INFO    ] No update needed
[2026-10-18 21:14:41,246.246 INFO    ] Checking for camera pi updates...
[2026-10-18 21:14:41,280.280 INFO    ] 200
[2026-10-18 21:14:41,282.282 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:14:41,326.326 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:14:51,342.342 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:14:51,377.377 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:14:51,387.387 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:14:51,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:14:51,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:14:51,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:14:53,440.440 INFO    ] ================================================
[2026-10-18 21:14:53,455.455 INFO    ] Launching Daemon at Sun Oct 18 21:14:53 IST 2026
[2026-10-18 21:14:53,465.465 INFO    ] ================================================
[2026-10-18 21:14:54,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:14:54
[2026-10-18 21:14:54,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:14:54,881.881 INFO    ] Initializing speech engine...
[2026-10-18 21:14:54,904.904 INFO    ] 2026-10-18 21:14:54
[2026-10-18 21:14:55,160.160 INFO    ] 2026-10-18 21:14:55
[2026-10-18 21:14:55,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:14:55,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:14:55,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:14:55,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:14:55,627.627 INFO    ] time= 18/10/2026 21:14:55
[2026-10-18 21:14:55,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:14:55,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:14:55,864.864 INFO    ] No existing commands found in stream
[2026-10-18 21:15:00,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:15:00,891.891 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-18 21:15:03,452.452 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:15:03,455.455 INFO    ] Checking for system updates...
[2026-10-18 21:15:03,509.509 INFO    ] 200
[2026-10-18 21:15:03,512.512 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:15:03,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:15:03,585.585 INFO    ] No update needed
[2026-10-18 21:15:03,587.587 INFO    ] Checking for camera pi updates...
[2026-10-18 21:15:03,634.634 INFO    ] 200
[2026-10-18 21:15:03,637.637 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:15:03,700.700 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:15:13,716.716 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:15:13,759.759 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:15:13,769.769 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:15:13,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:15:13,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:15:13,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:15:15,821.821 INFO    ] ================================================
[2026-10-18 21:15:15,837.837 INFO    ] Launching Daemon at Sun Oct 18 21:15:15 IST 2026
[2026-10-18 21:15:15,848.848 INFO    ] ================================================
[2026-10-18 21:15:16,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:15:16
[2026-10-18 21:15:17,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:15:17,321.321 INFO    ] Initializing speech engine...
[2026-10-18 21:15:17,328.328 INFO    ] 2026-10-18 21:15:17
[2026-10-18 21:15:17,590.590 INFO    ] 2026-10-18 21:15:17
[2026-10-18 21:15:17,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:15:17,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:15:17,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:15:18,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:15:18,137.137 INFO    ] time= 18/10/2026 21:15:18
[2026-10-18 21:15:18,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:15:18,167.167 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:15:18,344.344 INFO    ] No existing commands found in stream
[2026-10-18 21:15:23,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:15:23,377.377 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-18 21:15:24,004.004 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:15:24,008.008 INFO    ] Checking for system updates...
[2026-10-18 21:15:24,051.051 INFO    ] 200
[2026-10-18 21:15:24,054.054 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:15:24,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:15:24,117.117 INFO    ] No update needed
[2026-10-18 21:15:24,119.119 INFO    ] Checking for camera pi updates...
[2026-10-18 21:15:24,153.153 INFO    ] 200
[2026-10-18 21:15:24,156.156 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:15:24,200.200 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:15:34,214.214 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:15:34,250.250 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:15:34,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:15:34,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:15:34,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:15:34,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:15:36,312.312 INFO    ] ================================================
[2026-10-18 21:15:36,327.327 INFO    ] Launching Daemon at Sun Oct 18 21:15:36 IST 2026
[2026-10-18 21:15:36,338.338 INFO    ] ================================================
[2026-10-18 21:15:36,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:15:36
[2026-10-18 21:15:37,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:15:37,798.798 INFO    ] Initializing speech engine...
[2026-10-18 21:15:37,809.809 INFO    ] 2026-10-18 21:15:37
[2026-10-18 21:15:38,071.071 INFO    ] 2026-10-18 21:15:38
[2026-10-18 21:15:38,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:15:38,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:15:38,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:15:38,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:15:38,616.616 INFO    ] time= 18/10/2026 21:15:38
[2026-10-18 21:15:38,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:15:38,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:15:38,772.772 INFO    ] No existing commands found in stream
[2026-10-18 21:15:43,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:15:43,803.803 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-18 21:15:46,905.905 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:15:46,908.908 INFO    ] Checking for system updates...
[2026-10-18 21:15:46,945.945 INFO    ] 200
[2026-10-18 21:15:46,948.948 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:15:46,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:15:47,002.002 INFO    ] No update needed
[2026-10-18 21:15:47,004.004 INFO    ] Checking for camera pi updates...
[2026-10-18 21:15:47,042.042 INFO    ] 200
[2026-10-18 21:15:47,045.045 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:15:47,091.091 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:15:57,104.104 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:15:57,140.140 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:15:57,150.150 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:15:57,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:15:57,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:15:57,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:15:59,202.202 INFO    ] ================================================
[2026-10-18 21:15:59,218.218 INFO    ] Launching Daemon at Sun Oct 18 21:15:59 IST 2026
[2026-10-18 21:15:59,228.228 INFO    ] ================================================
[2026-10-18 21:15:59,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:15:59
[2026-10-18 21:16:00,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:16:00,688.688 INFO    ] Initializing speech engine...
[2026-10-18 21:16:00,698.698 INFO    ] 2026-10-18 21:16:00
[2026-10-18 21:16:00,960.960 INFO    ] 2026-10-18 21:16:00
[2026-10-18 21:16:01,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:16:01,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:16:01,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:16:01,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:16:01,415.415 INFO    ] time= 18/10/2026 21:16:01
[2026-10-18 21:16:01,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:16:01,422.422 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:16:01,505.505 INFO    ] No existing commands found in stream
[2026-10-18 21:16:06,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:16:06,518.518 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-18 21:16:08,805.805 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:16:08,808.808 INFO    ] Checking for system updates...
[2026-10-18 21:16:08,844.844 INFO    ] 200
[2026-10-18 21:16:08,847.847 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:16:08,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:16:08,907.907 INFO    ] No update needed
[2026-10-18 21:16:08,909.909 INFO    ] Checking for camera pi updates...
[2026-10-18 21:16:08,972.972 INFO    ] 200
[2026-10-18 21:16:08,974.974 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:16:09,015.015 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:16:19,030.030 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:16:19,066.066 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:16:19,076.076 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:16:19,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:16:19,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:16:19,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:16:21,128.128 INFO    ] ================================================
[2026-10-18 21:16:21,143.143 INFO    ] Launching Daemon at Sun Oct 18 21:16:21 IST 2026
[2026-10-18 21:16:21,154.154 INFO    ] ================================================
[2026-10-18 21:16:21,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:16:21
[2026-10-18 21:16:22,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:16:22,675.675 INFO    ] Initializing speech engine...
[2026-10-18 21:16:22,689.689 INFO    ] 2026-10-18 21:16:22
[2026-10-18 21:16:22,974.974 INFO    ] 2026-10-18 21:16:22
[2026-10-18 21:16:23,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:16:23,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:16:23,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:16:23,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:16:23,506.506 INFO    ] time= 18/10/2026 21:16:23
[2026-10-18 21:16:23,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:16:23,554.554 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:16:23,686.686 INFO    ] No existing commands found in stream
[2026-10-18 21:16:28,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:16:28,715.715 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-18 21:16:31,958.958 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:16:31,962.962 INFO    ] Checking for system updates...
[2026-10-18 21:16:32,003.003 INFO    ] 200
[2026-10-18 21:16:32,006.006 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:16:32,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:16:32,066.066 INFO    ] No update needed
[2026-10-18 21:16:32,070.070 INFO    ] Checking for camera pi updates...
[2026-10-18 21:16:32,106.106 INFO    ] 200
[2026-10-18 21:16:32,110.110 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:16:32,154.154 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:16:42,171.171 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:16:42,210.210 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:16:42,221.221 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:16:42,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:16:42,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:16:42,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:16:44,277.277 INFO    ] ================================================
[2026-10-18 21:16:44,292.292 INFO    ] Launching Daemon at Sun Oct 18 21:16:44 IST 2026
[2026-10-18 21:16:44,303.303 INFO    ] ================================================
[2026-10-18 21:16:44,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:16:44
[2026-10-18 21:16:45,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:16:45,901.901 INFO    ] Initializing speech engine...
[2026-10-18 21:16:45,909.909 INFO    ] 2026-10-18 21:16:45
[2026-10-18 21:16:46,197.197 INFO    ] 2026-10-18 21:16:46
[2026-10-18 21:16:46,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:16:46,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:16:46,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:16:46,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:16:46,732.732 INFO    ] time= 18/10/2026 21:16:46
[2026-10-18 21:16:46,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:16:46,779.779 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:16:46,904.904 INFO    ] No existing commands found in stream
[2026-10-18 21:16:51,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:16:51,942.942 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-18 21:16:55,916.916 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:16:55,918.918 INFO    ] Checking for system updates...
[2026-10-18 21:16:55,957.957 INFO    ] 200
[2026-10-18 21:16:55,960.960 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:16:56,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:16:56,020.020 INFO    ] No update needed
[2026-10-18 21:16:56,023.023 INFO    ] Checking for camera pi updates...
[2026-10-18 21:16:56,056.056 INFO    ] 200
[2026-10-18 21:16:56,059.059 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:16:56,100.100 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:17:06,115.115 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:17:06,151.151 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:17:06,161.161 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:17:06,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:17:06,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:17:06,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:17:08,214.214 INFO    ] ================================================
[2026-10-18 21:17:08,230.230 INFO    ] Launching Daemon at Sun Oct 18 21:17:08 IST 2026
[2026-10-18 21:17:08,241.241 INFO    ] ================================================
[2026-10-18 21:17:08,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:17:08
[2026-10-18 21:17:09,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:17:09,696.696 INFO    ] Initializing speech engine...
[2026-10-18 21:17:09,705.705 INFO    ] 2026-10-18 21:17:09
[2026-10-18 21:17:09,970.970 INFO    ] 2026-10-18 21:17:09
[2026-10-18 21:17:10,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:17:10,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:17:10,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:17:10,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:17:10,515.515 INFO    ] time= 18/10/2026 21:17:10
[2026-10-18 21:17:10,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:17:10,539.539 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:17:10,671.671 INFO    ] No existing commands found in stream
[2026-10-18 21:17:15,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:17:15,688.688 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-18 21:17:17,266.266 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:17:17,269.269 INFO    ] Checking for system updates...
[2026-10-18 21:17:17,308.308 INFO    ] 200
[2026-10-18 21:17:17,311.311 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:17:17,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:17:17,365.365 INFO    ] No update needed
[2026-10-18 21:17:17,368.368 INFO    ] Checking for camera pi updates...
[2026-10-18 21:17:17,405.405 INFO    ] 200
[2026-10-18 21:17:17,407.407 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:17:17,447.447 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:17:27,462.462 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:17:27,498.498 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:17:27,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:17:27,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:17:27,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:17:27,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:17:29,563.563 INFO    ] ================================================
[2026-10-18 21:17:29,579.579 INFO    ] Launching Daemon at Sun Oct 18 21:17:29 IST 2026
[2026-10-18 21:17:29,590.590 INFO    ] ================================================
[2026-10-18 21:17:30,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:17:30
[2026-10-18 21:17:30,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:17:31,048.048 INFO    ] Initializing speech engine...
[2026-10-18 21:17:31,054.054 INFO    ] 2026-10-18 21:17:31
[2026-10-18 21:17:31,325.325 INFO    ] 2026-10-18 21:17:31
[2026-10-18 21:17:31,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:17:31,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:17:31,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:17:31,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:17:31,892.892 INFO    ] time= 18/10/2026 21:17:31
[2026-10-18 21:17:31,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:17:31,940.940 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:17:32,018.018 INFO    ] No existing commands found in stream
[2026-10-18 21:17:37,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:17:37,031.031 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-18 21:17:38,753.753 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:17:38,756.756 INFO    ] Checking for system updates...
[2026-10-18 21:17:38,799.799 INFO    ] 200
[2026-10-18 21:17:38,802.802 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:17:38,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:17:38,858.858 INFO    ] No update needed
[2026-10-18 21:17:38,860.860 INFO    ] Checking for camera pi updates...
[2026-10-18 21:17:38,900.900 INFO    ] 200
[2026-10-18 21:17:38,902.902 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:17:38,943.943 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:17:48,959.959 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:17:48,998.998 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:17:49,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:17:49,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:17:49,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:17:49,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:17:51,065.065 INFO    ] ================================================
[2026-10-18 21:17:51,081.081 INFO    ] Launching Daemon at Sun Oct 18 21:17:51 IST 2026
[2026-10-18 21:17:51,092.092 INFO    ] ================================================
[2026-10-18 21:17:51,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:17:51
[2026-10-18 21:17:52,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:17:52,553.553 INFO    ] Initializing speech engine...
[2026-10-18 21:17:52,560.560 INFO    ] 2026-10-18 21:17:52
[2026-10-18 21:17:52,820.820 INFO    ] 2026-10-18 21:17:52
[2026-10-18 21:17:52,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:17:53,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:17:53,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:17:53,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:17:53,362.362 INFO    ] time= 18/10/2026 21:17:53
[2026-10-18 21:17:53,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:17:53,388.388 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:17:53,516.516 INFO    ] No existing commands found in stream
[2026-10-18 21:17:58,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:17:58,531.531 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-18 21:17:59,844.844 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:17:59,847.847 INFO    ] Checking for system updates...
[2026-10-18 21:17:59,888.888 INFO    ] 200
[2026-10-18 21:17:59,891.891 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:17:59,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:17:59,958.958 INFO    ] No update needed
[2026-10-18 21:17:59,961.961 INFO    ] Checking for camera pi updates...
[2026-10-18 21:17:59,996.996 INFO    ] 200
[2026-10-18 21:17:59,998.998 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:18:00,040.040 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:18:10,056.056 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:18:10,092.092 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:18:10,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:18:10,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:18:10,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:18:10,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:18:12,155.155 INFO    ] ================================================
[2026-10-18 21:18:12,171.171 INFO    ] Launching Daemon at Sun Oct 18 21:18:12 IST 2026
[2026-10-18 21:18:12,181.181 INFO    ] ================================================
[2026-10-18 21:18:12,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:18:12
[2026-10-18 21:18:13,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:18:13,630.630 INFO    ] Initializing speech engine...
[2026-10-18 21:18:13,650.650 INFO    ] 2026-10-18 21:18:13
[2026-10-18 21:18:13,915.915 INFO    ] 2026-10-18 21:18:13
[2026-10-18 21:18:13,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:18:14,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:18:14,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:18:14,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:18:14,412.412 INFO    ] time= 18/10/2026 21:18:14
[2026-10-18 21:18:14,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:18:14,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:18:14,633.633 INFO    ] No existing commands found in stream
[2026-10-18 21:18:19,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:18:19,667.667 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-18 21:18:23,918.918 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:18:23,921.921 INFO    ] Checking for system updates...
[2026-10-18 21:18:23,960.960 INFO    ] 200
[2026-10-18 21:18:23,962.962 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:18:24,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:18:24,016.016 INFO    ] No update needed
[2026-10-18 21:18:24,019.019 INFO    ] Checking for camera pi updates...
[2026-10-18 21:18:24,053.053 INFO    ] 200
[2026-10-18 21:18:24,056.056 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:18:24,096.096 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:18:34,108.108 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:18:34,145.145 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:18:34,154.154 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:18:34,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:18:34,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:18:34,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:18:36,208.208 INFO    ] ================================================
[2026-10-18 21:18:36,223.223 INFO    ] Launching Daemon at Sun Oct 18 21:18:36 IST 2026
[2026-10-18 21:18:36,234.234 INFO    ] ================================================
[2026-10-18 21:18:36,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:18:36
[2026-10-18 21:18:37,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:18:37,701.701 INFO    ] Initializing speech engine...
[2026-10-18 21:18:37,708.708 INFO    ] 2026-10-18 21:18:37
[2026-10-18 21:18:37,973.973 INFO    ] 2026-10-18 21:18:37
[2026-10-18 21:18:38,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:18:38,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:18:38,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:18:38,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:18:38,510.510 INFO    ] time= 18/10/2026 21:18:38
[2026-10-18 21:18:38,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:18:38,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:18:38,726.726 INFO    ] No existing commands found in stream
[2026-10-18 21:18:43,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:18:43,759.759 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-18 21:18:46,250.250 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:18:46,254.254 INFO    ] Checking for system updates...
[2026-10-18 21:18:46,290.290 INFO    ] 200
[2026-10-18 21:18:46,292.292 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:18:46,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:18:46,351.351 INFO    ] No update needed
[2026-10-18 21:18:46,353.353 INFO    ] Checking for camera pi updates...
[2026-10-18 21:18:46,387.387 INFO    ] 200
[2026-10-18 21:18:46,389.389 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:18:46,430.430 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:18:56,445.445 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:18:56,481.481 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:18:56,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:18:56,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:18:56,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:18:56,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:18:58,543.543 INFO    ] ================================================
[2026-10-18 21:18:58,558.558 INFO    ] Launching Daemon at Sun Oct 18 21:18:58 IST 2026
[2026-10-18 21:18:58,569.569 INFO    ] ================================================
[2026-10-18 21:18:59,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:18:59
[2026-10-18 21:18:59,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:18:59,987.987 INFO    ] Initializing speech engine...
[2026-10-18 21:18:59,996.996 INFO    ] 2026-10-18 21:18:59
[2026-10-18 21:19:00,243.243 INFO    ] 2026-10-18 21:19:00
[2026-10-18 21:19:00,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:19:00,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:19:00,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:19:00,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:19:00,795.795 INFO    ] time= 18/10/2026 21:19:00
[2026-10-18 21:19:00,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:19:00,820.820 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:19:00,989.989 INFO    ] No existing commands found in stream
[2026-10-18 21:19:06,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:19:06,031.031 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-18 21:19:08,413.413 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:19:08,416.416 INFO    ] Checking for system updates...
[2026-10-18 21:19:08,452.452 INFO    ] 200
[2026-10-18 21:19:08,454.454 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:19:08,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:19:08,509.509 INFO    ] No update needed
[2026-10-18 21:19:08,511.511 INFO    ] Checking for camera pi updates...
[2026-10-18 21:19:08,549.549 INFO    ] 200
[2026-10-18 21:19:08,552.552 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:19:08,597.597 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:19:18,612.612 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:19:18,648.648 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:19:18,657.657 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:19:18,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:19:18,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:19:18,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:19:20,711.711 INFO    ] ================================================
[2026-10-18 21:19:20,726.726 INFO    ] Launching Daemon at Sun Oct 18 21:19:20 IST 2026
[2026-10-18 21:19:20,737.737 INFO    ] ================================================
[2026-10-18 21:19:21,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:19:21
[2026-10-18 21:19:21,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:19:22,177.177 INFO    ] Initializing speech engine...
[2026-10-18 21:19:22,182.182 INFO    ] 2026-10-18 21:19:22
[2026-10-18 21:19:22,445.445 INFO    ] 2026-10-18 21:19:22
[2026-10-18 21:19:22,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:19:22,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:19:22,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:19:22,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:19:22,990.990 INFO    ] time= 18/10/2026 21:19:22
[2026-10-18 21:19:23,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:19:23,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:19:23,138.138 INFO    ] No existing commands found in stream
[2026-10-18 21:19:28,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:19:28,156.156 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-18 21:19:29,212.212 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:19:29,215.215 INFO    ] Checking for system updates...
[2026-10-18 21:19:29,257.257 INFO    ] 200
[2026-10-18 21:19:29,260.260 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:19:29,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:19:29,316.316 INFO    ] No update needed
[2026-10-18 21:19:29,319.319 INFO    ] Checking for camera pi updates...
[2026-10-18 21:19:29,358.358 INFO    ] 200
[2026-10-18 21:19:29,362.362 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:19:29,403.403 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:19:39,419.419 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:19:39,461.461 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:19:39,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:19:39,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:19:39,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:19:39,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:19:41,532.532 INFO    ] ================================================
[2026-10-18 21:19:41,547.547 INFO    ] Launching Daemon at Sun Oct 18 21:19:41 IST 2026
[2026-10-18 21:19:41,558.558 INFO    ] ================================================
[2026-10-18 21:19:42,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:19:42
[2026-10-18 21:19:42,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:19:42,984.984 INFO    ] Initializing speech engine...
[2026-10-18 21:19:42,991.991 INFO    ] 2026-10-18 21:19:42
[2026-10-18 21:19:43,295.295 INFO    ] 2026-10-18 21:19:43
[2026-10-18 21:19:43,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:19:43,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:19:43,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:19:43,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:19:43,731.731 INFO    ] time= 18/10/2026 21:19:43
[2026-10-18 21:19:43,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:19:43,742.742 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:19:43,820.820 INFO    ] No existing commands found in stream
[2026-10-18 21:19:48,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:19:48,839.839 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-18 21:19:49,700.700 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:19:49,703.703 INFO    ] Checking for system updates...
[2026-10-18 21:19:49,746.746 INFO    ] 200
[2026-10-18 21:19:49,749.749 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:19:49,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:19:49,806.806 INFO    ] No update needed
[2026-10-18 21:19:49,809.809 INFO    ] Checking for camera pi updates...
[2026-10-18 21:19:49,849.849 INFO    ] 200
[2026-10-18 21:19:49,852.852 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:19:49,900.900 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:19:59,918.918 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:19:59,962.962 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:19:59,974.974 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:19:59,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:19:59,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:19:59,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:20:02,035.035 INFO    ] ================================================
[2026-10-18 21:20:02,068.068 INFO    ] Launching Daemon at Sun Oct 18 21:20:02 IST 2026
[2026-10-18 21:20:02,090.090 INFO    ] ================================================
[2026-10-18 21:20:02,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:20:02
[2026-10-18 21:20:03,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:20:03,839.839 INFO    ] Initializing speech engine...
[2026-10-18 21:20:03,846.846 INFO    ] 2026-10-18 21:20:03
[2026-10-18 21:20:04,142.142 INFO    ] 2026-10-18 21:20:04
[2026-10-18 21:20:04,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:20:04,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:20:04,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:20:04,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:20:04,564.564 INFO    ] time= 18/10/2026 21:20:04
[2026-10-18 21:20:04,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:20:04,575.575 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:20:04,650.650 INFO    ] No existing commands found in stream
[2026-10-18 21:20:09,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:20:09,669.669 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-18 21:20:10,197.197 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:20:10,200.200 INFO    ] Checking for system updates...
[2026-10-18 21:20:10,236.236 INFO    ] 200
[2026-10-18 21:20:10,238.238 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:20:10,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:20:10,293.293 INFO    ] No update needed
[2026-10-18 21:20:10,295.295 INFO    ] Checking for camera pi updates...
[2026-10-18 21:20:10,332.332 INFO    ] 200
[2026-10-18 21:20:10,335.335 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:20:10,378.378 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:20:20,393.393 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:20:20,429.429 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:20:20,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:20:20,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:20:20,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:20:20,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:20:22,491.491 INFO    ] ================================================
[2026-10-18 21:20:22,507.507 INFO    ] Launching Daemon at Sun Oct 18 21:20:22 IST 2026
[2026-10-18 21:20:22,518.518 INFO    ] ================================================
[2026-10-18 21:20:23,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:20:23
[2026-10-18 21:20:23,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:20:24,094.094 INFO    ] Initializing speech engine...
[2026-10-18 21:20:24,100.100 INFO    ] 2026-10-18 21:20:24
[2026-10-18 21:20:24,361.361 INFO    ] 2026-10-18 21:20:24
[2026-10-18 21:20:24,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:20:24,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:20:24,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:20:24,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:20:24,909.909 INFO    ] time= 18/10/2026 21:20:24
[2026-10-18 21:20:24,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:20:24,937.937 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:20:25,062.062 INFO    ] No existing commands found in stream
[2026-10-18 21:20:30,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:20:30,090.090 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-18 21:20:32,378.378 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:20:32,382.382 INFO    ] Checking for system updates...
[2026-10-18 21:20:32,425.425 INFO    ] 200
[2026-10-18 21:20:32,428.428 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:20:32,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:20:32,491.491 INFO    ] No update needed
[2026-10-18 21:20:32,495.495 INFO    ] Checking for camera pi updates...
[2026-10-18 21:20:32,530.530 INFO    ] 200
[2026-10-18 21:20:32,533.533 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:20:32,578.578 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:20:42,595.595 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:20:42,635.635 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:20:42,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:20:42,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:20:42,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:20:42,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:20:44,702.702 INFO    ] ================================================
[2026-10-18 21:20:44,717.717 INFO    ] Launching Daemon at Sun Oct 18 21:20:44 IST 2026
[2026-10-18 21:20:44,728.728 INFO    ] ================================================
[2026-10-18 21:20:45,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:20:45
[2026-10-18 21:20:45,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:20:46,148.148 INFO    ] Initializing speech engine...
[2026-10-18 21:20:46,159.159 INFO    ] 2026-10-18 21:20:46
[2026-10-18 21:20:46,418.418 INFO    ] 2026-10-18 21:20:46
[2026-10-18 21:20:46,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:20:46,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:20:46,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:20:46,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:20:46,896.896 INFO    ] time= 18/10/2026 21:20:46
[2026-10-18 21:20:46,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:20:46,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:20:47,142.142 INFO    ] No existing commands found in stream
[2026-10-18 21:20:52,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:20:52,170.170 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-18 21:20:55,579.579 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:20:55,582.582 INFO    ] Checking for system updates...
[2026-10-18 21:20:55,617.617 INFO    ] 200
[2026-10-18 21:20:55,619.619 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:20:55,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:20:55,673.673 INFO    ] No update needed
[2026-10-18 21:20:55,676.676 INFO    ] Checking for camera pi updates...
[2026-10-18 21:20:55,709.709 INFO    ] 200
[2026-10-18 21:20:55,711.711 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:20:55,751.751 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:21:05,765.765 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:21:05,800.800 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:21:05,810.810 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:21:05,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:21:05,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:21:05,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:21:07,863.863 INFO    ] ================================================
[2026-10-18 21:21:07,878.878 INFO    ] Launching Daemon at Sun Oct 18 21:21:07 IST 2026
[2026-10-18 21:21:07,889.889 INFO    ] ================================================
[2026-10-18 21:21:08,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:21:08
[2026-10-18 21:21:09,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:21:09,353.353 INFO    ] Initializing speech engine...
[2026-10-18 21:21:09,362.362 INFO    ] 2026-10-18 21:21:09
[2026-10-18 21:21:09,621.621 INFO    ] 2026-10-18 21:21:09
[2026-10-18 21:21:09,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:21:09,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:21:09,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:21:10,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:21:10,164.164 INFO    ] time= 18/10/2026 21:21:10
[2026-10-18 21:21:10,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:21:10,201.201 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:21:10,335.335 INFO    ] No existing commands found in stream
[2026-10-18 21:21:15,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:21:15,369.369 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-18 21:21:17,630.630 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:21:17,632.632 INFO    ] Checking for system updates...
[2026-10-18 21:21:17,668.668 INFO    ] 200
[2026-10-18 21:21:17,671.671 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:21:17,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:21:17,727.727 INFO    ] No update needed
[2026-10-18 21:21:17,729.729 INFO    ] Checking for camera pi updates...
[2026-10-18 21:21:17,767.767 INFO    ] 200
[2026-10-18 21:21:17,769.769 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:21:17,810.810 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:21:27,825.825 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:21:27,861.861 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:21:27,871.871 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:21:27,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:21:27,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:21:27,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:21:29,923.923 INFO    ] ================================================
[2026-10-18 21:21:29,939.939 INFO    ] Launching Daemon at Sun Oct 18 21:21:29 IST 2026
[2026-10-18 21:21:29,949.949 INFO    ] ================================================
[2026-10-18 21:21:30,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:21:30
[2026-10-18 21:21:31,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:21:31,407.407 INFO    ] Initializing speech engine...
[2026-10-18 21:21:31,416.416 INFO    ] 2026-10-18 21:21:31
[2026-10-18 21:21:31,680.680 INFO    ] 2026-10-18 21:21:31
[2026-10-18 21:21:31,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:21:31,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:21:31,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:21:32,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:21:32,259.259 INFO    ] time= 18/10/2026 21:21:32
[2026-10-18 21:21:32,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:21:32,288.288 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:21:32,424.424 INFO    ] No existing commands found in stream
[2026-10-18 21:21:37,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:21:37,462.462 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-18 21:21:39,616.616 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:21:39,618.618 INFO    ] Checking for system updates...
[2026-10-18 21:21:39,654.654 INFO    ] 200
[2026-10-18 21:21:39,657.657 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:21:39,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:21:39,711.711 INFO    ] No update needed
[2026-10-18 21:21:39,714.714 INFO    ] Checking for camera pi updates...
[2026-10-18 21:21:39,748.748 INFO    ] 200
[2026-10-18 21:21:39,751.751 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:21:39,792.792 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:21:49,807.807 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:21:49,843.843 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:21:49,852.852 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:21:49,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:21:49,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:21:49,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:21:51,905.905 INFO    ] ================================================
[2026-10-18 21:21:51,921.921 INFO    ] Launching Daemon at Sun Oct 18 21:21:51 IST 2026
[2026-10-18 21:21:51,932.932 INFO    ] ================================================
[2026-10-18 21:21:52,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:21:52
[2026-10-18 21:21:53,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:21:53,580.580 INFO    ] Initializing speech engine...
[2026-10-18 21:21:53,592.592 INFO    ] 2026-10-18 21:21:53
[2026-10-18 21:21:53,904.904 INFO    ] 2026-10-18 21:21:53
[2026-10-18 21:21:53,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:21:54,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:21:54,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:21:54,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:21:54,458.458 INFO    ] time= 18/10/2026 21:21:54
[2026-10-18 21:21:54,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:21:54,524.524 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:21:54,666.666 INFO    ] No existing commands found in stream
[2026-10-18 21:21:59,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:21:59,681.681 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-18 21:22:03,262.262 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:22:03,264.264 INFO    ] Checking for system updates...
[2026-10-18 21:22:03,307.307 INFO    ] 200
[2026-10-18 21:22:03,310.310 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:22:03,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:22:03,388.388 INFO    ] No update needed
[2026-10-18 21:22:03,391.391 INFO    ] Checking for camera pi updates...
[2026-10-18 21:22:03,437.437 INFO    ] 200
[2026-10-18 21:22:03,439.439 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:22:03,480.480 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:22:13,495.495 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:22:13,530.530 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:22:13,540.540 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:22:13,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:22:13,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:22:13,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:22:15,592.592 INFO    ] ================================================
[2026-10-18 21:22:15,613.613 INFO    ] Launching Daemon at Sun Oct 18 21:22:15 IST 2026
[2026-10-18 21:22:15,624.624 INFO    ] ================================================
[2026-10-18 21:22:16,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:22:16
[2026-10-18 21:22:16,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:22:17,047.047 INFO    ] Initializing speech engine...
[2026-10-18 21:22:17,057.057 INFO    ] 2026-10-18 21:22:17
[2026-10-18 21:22:17,304.304 INFO    ] 2026-10-18 21:22:17
[2026-10-18 21:22:17,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:22:17,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:22:17,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:22:17,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:22:17,859.859 INFO    ] time= 18/10/2026 21:22:17
[2026-10-18 21:22:17,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:22:17,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:22:18,016.016 INFO    ] No existing commands found in stream
[2026-10-18 21:22:23,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:22:23,041.041 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-18 21:22:26,513.513 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:22:26,516.516 INFO    ] Checking for system updates...
[2026-10-18 21:22:26,551.551 INFO    ] 200
[2026-10-18 21:22:26,553.553 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:22:26,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:22:26,608.608 INFO    ] No update needed
[2026-10-18 21:22:26,610.610 INFO    ] Checking for camera pi updates...
[2026-10-18 21:22:26,647.647 INFO    ] 200
[2026-10-18 21:22:26,649.649 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:22:26,690.690 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:22:36,705.705 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:22:36,740.740 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:22:36,749.749 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:22:36,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:22:36,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:22:36,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:22:38,801.801 INFO    ] ================================================
[2026-10-18 21:22:38,817.817 INFO    ] Launching Daemon at Sun Oct 18 21:22:38 IST 2026
[2026-10-18 21:22:38,827.827 INFO    ] ================================================
[2026-10-18 21:22:39,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:22:39
[2026-10-18 21:22:40,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:22:40,288.288 INFO    ] Initializing speech engine...
[2026-10-18 21:22:40,294.294 INFO    ] 2026-10-18 21:22:40
[2026-10-18 21:22:40,555.555 INFO    ] 2026-10-18 21:22:40
[2026-10-18 21:22:40,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:22:40,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:22:40,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:22:41,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:22:41,099.099 INFO    ] time= 18/10/2026 21:22:41
[2026-10-18 21:22:41,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:22:41,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:22:41,253.253 INFO    ] No existing commands found in stream
[2026-10-18 21:22:46,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:22:46,270.270 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-18 21:22:49,637.637 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:22:49,639.639 INFO    ] Checking for system updates...
[2026-10-18 21:22:49,675.675 INFO    ] 200
[2026-10-18 21:22:49,678.678 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:22:49,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:22:49,736.736 INFO    ] No update needed
[2026-10-18 21:22:49,739.739 INFO    ] Checking for camera pi updates...
[2026-10-18 21:22:49,772.772 INFO    ] 200
[2026-10-18 21:22:49,774.774 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:22:49,817.817 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:22:59,832.832 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:22:59,867.867 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:22:59,876.876 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:22:59,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:22:59,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:22:59,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:23:01,930.930 INFO    ] ================================================
[2026-10-18 21:23:01,952.952 INFO    ] Launching Daemon at Sun Oct 18 21:23:01 IST 2026
[2026-10-18 21:23:01,968.968 INFO    ] ================================================
[2026-10-18 21:23:02,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:23:02
[2026-10-18 21:23:03,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:23:03,519.519 INFO    ] Initializing speech engine...
[2026-10-18 21:23:03,525.525 INFO    ] 2026-10-18 21:23:03
[2026-10-18 21:23:03,823.823 INFO    ] 2026-10-18 21:23:03
[2026-10-18 21:23:03,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:23:04,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:23:04,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:23:04,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:23:04,321.321 INFO    ] time= 18/10/2026 21:23:04
[2026-10-18 21:23:04,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:23:04,417.417 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:23:04,549.549 INFO    ] No existing commands found in stream
[2026-10-18 21:23:09,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:23:09,574.574 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-18 21:23:12,419.419 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:23:12,422.422 INFO    ] Checking for system updates...
[2026-10-18 21:23:12,458.458 INFO    ] 200
[2026-10-18 21:23:12,460.460 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:23:12,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:23:12,516.516 INFO    ] No update needed
[2026-10-18 21:23:12,518.518 INFO    ] Checking for camera pi updates...
[2026-10-18 21:23:12,555.555 INFO    ] 200
[2026-10-18 21:23:12,557.557 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:23:12,599.599 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:23:22,611.611 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:23:22,646.646 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:23:22,656.656 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:23:22,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:23:22,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:23:22,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:23:24,709.709 INFO    ] ================================================
[2026-10-18 21:23:24,723.723 INFO    ] Launching Daemon at Sun Oct 18 21:23:24 IST 2026
[2026-10-18 21:23:24,734.734 INFO    ] ================================================
[2026-10-18 21:23:25,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:23:25
[2026-10-18 21:23:25,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:23:26,187.187 INFO    ] Initializing speech engine...
[2026-10-18 21:23:26,197.197 INFO    ] 2026-10-18 21:23:26
[2026-10-18 21:23:26,448.448 INFO    ] 2026-10-18 21:23:26
[2026-10-18 21:23:26,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:23:26,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:23:26,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:23:26,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:23:26,950.950 INFO    ] time= 18/10/2026 21:23:26
[2026-10-18 21:23:27,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:23:27,015.015 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:23:27,151.151 INFO    ] No existing commands found in stream
[2026-10-18 21:23:32,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:23:32,171.171 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-18 21:23:35,920.920 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:23:35,923.923 INFO    ] Checking for system updates...
[2026-10-18 21:23:35,958.958 INFO    ] 200
[2026-10-18 21:23:35,961.961 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:23:36,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:23:36,043.043 INFO    ] No update needed
[2026-10-18 21:23:36,046.046 INFO    ] Checking for camera pi updates...
[2026-10-18 21:23:36,083.083 INFO    ] 200
[2026-10-18 21:23:36,086.086 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:23:36,126.126 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:23:46,141.141 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:23:46,177.177 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:23:46,187.187 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:23:46,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:23:46,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:23:46,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:23:48,241.241 INFO    ] ================================================
[2026-10-18 21:23:48,256.256 INFO    ] Launching Daemon at Sun Oct 18 21:23:48 IST 2026
[2026-10-18 21:23:48,267.267 INFO    ] ================================================
[2026-10-18 21:23:48,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:23:48
[2026-10-18 21:23:49,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:23:49,687.687 INFO    ] Initializing speech engine...
[2026-10-18 21:23:49,696.696 INFO    ] 2026-10-18 21:23:49
[2026-10-18 21:23:49,987.987 INFO    ] 2026-10-18 21:23:49
[2026-10-18 21:23:50,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:23:50,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:23:50,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:23:50,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:23:50,401.401 INFO    ] time= 18/10/2026 21:23:50
[2026-10-18 21:23:50,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:23:50,456.456 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:23:50,588.588 INFO    ] No existing commands found in stream
[2026-10-18 21:23:55,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:23:55,616.616 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-18 21:23:59,689.689 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:23:59,691.691 INFO    ] Checking for system updates...
[2026-10-18 21:23:59,727.727 INFO    ] 200
[2026-10-18 21:23:59,729.729 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:23:59,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:23:59,783.783 INFO    ] No update needed
[2026-10-18 21:23:59,786.786 INFO    ] Checking for camera pi updates...
[2026-10-18 21:23:59,822.822 INFO    ] 200
[2026-10-18 21:23:59,825.825 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:23:59,864.864 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:24:09,878.878 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:24:09,912.912 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:24:09,922.922 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:24:09,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:24:09,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:24:09,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:24:11,974.974 INFO    ] ================================================
[2026-10-18 21:24:11,989.989 INFO    ] Launching Daemon at Sun Oct 18 21:24:11 IST 2026
[2026-10-18 21:24:12,000.000 INFO    ] ================================================
[2026-10-18 21:24:12,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:24:12
[2026-10-18 21:24:13,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:24:13,462.462 INFO    ] Initializing speech engine...
[2026-10-18 21:24:13,471.471 INFO    ] 2026-10-18 21:24:13
[2026-10-18 21:24:13,733.733 INFO    ] 2026-10-18 21:24:13
[2026-10-18 21:24:13,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:24:13,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:24:14,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:24:14,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:24:14,225.225 INFO    ] time= 18/10/2026 21:24:14
[2026-10-18 21:24:14,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:24:14,328.328 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:24:14,492.492 INFO    ] No existing commands found in stream
[2026-10-18 21:24:19,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:24:19,523.523 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-18 21:24:22,073.073 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:24:22,076.076 INFO    ] Checking for system updates...
[2026-10-18 21:24:22,119.119 INFO    ] 200
[2026-10-18 21:24:22,122.122 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:24:22,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:24:22,188.188 INFO    ] No update needed
[2026-10-18 21:24:22,191.191 INFO    ] Checking for camera pi updates...
[2026-10-18 21:24:22,231.231 INFO    ] 200
[2026-10-18 21:24:22,234.234 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:24:22,279.279 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:24:32,296.296 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:24:32,341.341 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:24:32,353.353 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:24:32,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:24:32,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:24:32,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:24:34,411.411 INFO    ] ================================================
[2026-10-18 21:24:34,427.427 INFO    ] Launching Daemon at Sun Oct 18 21:24:34 IST 2026
[2026-10-18 21:24:34,439.439 INFO    ] ================================================
[2026-10-18 21:24:35,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:24:35
[2026-10-18 21:24:35,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:24:35,884.884 INFO    ] Initializing speech engine...
[2026-10-18 21:24:35,894.894 INFO    ] 2026-10-18 21:24:35
[2026-10-18 21:24:36,147.147 INFO    ] 2026-10-18 21:24:36
[2026-10-18 21:24:36,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:24:36,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:24:36,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:24:36,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:24:36,698.698 INFO    ] time= 18/10/2026 21:24:36
[2026-10-18 21:24:36,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:24:36,724.724 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:24:36,871.871 INFO    ] No existing commands found in stream
[2026-10-18 21:24:41,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:24:41,899.899 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-18 21:24:42,900.900 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:24:42,903.903 INFO    ] Checking for system updates...
[2026-10-18 21:24:42,943.943 INFO    ] 200
[2026-10-18 21:24:42,946.946 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:24:42,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:24:43,000.000 INFO    ] No update needed
[2026-10-18 21:24:43,002.002 INFO    ] Checking for camera pi updates...
[2026-10-18 21:24:43,044.044 INFO    ] 200
[2026-10-18 21:24:43,047.047 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:24:43,087.087 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:24:53,102.102 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:24:53,137.137 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:24:53,147.147 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:24:53,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:24:53,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:24:53,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:24:55,200.200 INFO    ] ================================================
[2026-10-18 21:24:55,215.215 INFO    ] Launching Daemon at Sun Oct 18 21:24:55 IST 2026
[2026-10-18 21:24:55,227.227 INFO    ] ================================================
[2026-10-18 21:24:55,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:24:55
[2026-10-18 21:24:56,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:24:56,678.678 INFO    ] Initializing speech engine...
[2026-10-18 21:24:56,687.687 INFO    ] 2026-10-18 21:24:56
[2026-10-18 21:24:56,941.941 INFO    ] 2026-10-18 21:24:56
[2026-10-18 21:24:56,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:24:57,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:24:57,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:24:57,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:24:57,425.425 INFO    ] time= 18/10/2026 21:24:57
[2026-10-18 21:24:57,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:24:57,499.499 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:24:57,634.634 INFO    ] No existing commands found in stream
[2026-10-18 21:25:02,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:25:02,657.657 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-18 21:25:03,128.128 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:25:03,131.131 INFO    ] Checking for system updates...
[2026-10-18 21:25:03,173.173 INFO    ] 200
[2026-10-18 21:25:03,176.176 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:25:03,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:25:03,234.234 INFO    ] No update needed
[2026-10-18 21:25:03,238.238 INFO    ] Checking for camera pi updates...
[2026-10-18 21:25:03,284.284 INFO    ] 200
[2026-10-18 21:25:03,287.287 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:25:03,333.333 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:25:13,349.349 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:25:13,384.384 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:25:13,394.394 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:25:13,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:25:13,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:25:13,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:25:15,449.449 INFO    ] ================================================
[2026-10-18 21:25:15,464.464 INFO    ] Launching Daemon at Sun Oct 18 21:25:15 IST 2026
[2026-10-18 21:25:15,474.474 INFO    ] ================================================
[2026-10-18 21:25:16,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:25:16
[2026-10-18 21:25:16,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:25:16,898.898 INFO    ] Initializing speech engine...
[2026-10-18 21:25:16,906.906 INFO    ] 2026-10-18 21:25:16
[2026-10-18 21:25:17,154.154 INFO    ] 2026-10-18 21:25:17
[2026-10-18 21:25:17,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:25:17,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:25:17,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:25:17,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:25:17,649.649 INFO    ] time= 18/10/2026 21:25:17
[2026-10-18 21:25:17,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:25:17,718.718 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:25:17,862.862 INFO    ] No existing commands found in stream
[2026-10-18 21:25:22,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:25:22,878.878 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-18 21:25:25,396.396 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:25:25,398.398 INFO    ] Checking for system updates...
[2026-10-18 21:25:25,434.434 INFO    ] 200
[2026-10-18 21:25:25,437.437 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:25:25,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:25:25,491.491 INFO    ] No update needed
[2026-10-18 21:25:25,494.494 INFO    ] Checking for camera pi updates...
[2026-10-18 21:25:25,528.528 INFO    ] 200
[2026-10-18 21:25:25,531.531 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:25:25,570.570 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:25:35,586.586 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:25:35,621.621 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:25:35,631.631 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:25:35,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:25:35,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:25:35,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:25:37,685.685 INFO    ] ================================================
[2026-10-18 21:25:37,701.701 INFO    ] Launching Daemon at Sun Oct 18 21:25:37 IST 2026
[2026-10-18 21:25:37,712.712 INFO    ] ================================================
[2026-10-18 21:25:38,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:25:38
[2026-10-18 21:25:38,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:25:39,173.173 INFO    ] Initializing speech engine...
[2026-10-18 21:25:39,182.182 INFO    ] 2026-10-18 21:25:39
[2026-10-18 21:25:39,445.445 INFO    ] 2026-10-18 21:25:39
[2026-10-18 21:25:39,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:25:39,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:25:39,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:25:39,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:25:39,987.987 INFO    ] time= 18/10/2026 21:25:39
[2026-10-18 21:25:39,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:25:40,011.011 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:25:40,142.142 INFO    ] No existing commands found in stream
[2026-10-18 21:25:45,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:25:45,160.160 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-18 21:25:48,342.342 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:25:48,345.345 INFO    ] Checking for system updates...
[2026-10-18 21:25:48,387.387 INFO    ] 200
[2026-10-18 21:25:48,390.390 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:25:48,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:25:48,445.445 INFO    ] No update needed
[2026-10-18 21:25:48,448.448 INFO    ] Checking for camera pi updates...
[2026-10-18 21:25:48,487.487 INFO    ] 200
[2026-10-18 21:25:48,490.490 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:25:48,531.531 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:25:58,544.544 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:25:58,585.585 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:25:58,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:25:58,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:25:58,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:25:58,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:26:00,651.651 INFO    ] ================================================
[2026-10-18 21:26:00,667.667 INFO    ] Launching Daemon at Sun Oct 18 21:26:00 IST 2026
[2026-10-18 21:26:00,679.679 INFO    ] ================================================
[2026-10-18 21:26:01,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:26:01
[2026-10-18 21:26:01,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:26:02,331.331 INFO    ] Initializing speech engine...
[2026-10-18 21:26:02,340.340 INFO    ] 2026-10-18 21:26:02
[2026-10-18 21:26:02,627.627 INFO    ] 2026-10-18 21:26:02
[2026-10-18 21:26:02,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:26:02,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:26:02,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:26:03,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:26:03,136.136 INFO    ] time= 18/10/2026 21:26:03
[2026-10-18 21:26:03,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:26:03,230.230 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:26:03,398.398 INFO    ] No existing commands found in stream
[2026-10-18 21:26:08,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:26:08,429.429 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-18 21:26:11,517.517 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:26:11,522.522 INFO    ] Checking for system updates...
[2026-10-18 21:26:11,560.560 INFO    ] 200
[2026-10-18 21:26:11,562.562 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:26:11,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:26:11,618.618 INFO    ] No update needed
[2026-10-18 21:26:11,621.621 INFO    ] Checking for camera pi updates...
[2026-10-18 21:26:11,655.655 INFO    ] 200
[2026-10-18 21:26:11,657.657 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:26:11,703.703 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:26:21,718.718 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:26:21,753.753 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:26:21,763.763 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:26:21,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:26:21,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:26:21,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:26:23,816.816 INFO    ] ================================================
[2026-10-18 21:26:23,832.832 INFO    ] Launching Daemon at Sun Oct 18 21:26:23 IST 2026
[2026-10-18 21:26:23,843.843 INFO    ] ================================================
[2026-10-18 21:26:24,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:26:24
[2026-10-18 21:26:25,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:26:25,301.301 INFO    ] Initializing speech engine...
[2026-10-18 21:26:25,307.307 INFO    ] 2026-10-18 21:26:25
[2026-10-18 21:26:25,554.554 INFO    ] 2026-10-18 21:26:25
[2026-10-18 21:26:25,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:26:25,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:26:25,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:26:26,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:26:26,111.111 INFO    ] time= 18/10/2026 21:26:26
[2026-10-18 21:26:26,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:26:26,137.137 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:26:26,260.260 INFO    ] No existing commands found in stream
[2026-10-18 21:26:31,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:26:31,280.280 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-18 21:26:32,218.218 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:26:32,221.221 INFO    ] Checking for system updates...
[2026-10-18 21:26:32,267.267 INFO    ] 200
[2026-10-18 21:26:32,270.270 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:26:32,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:26:32,349.349 INFO    ] No update needed
[2026-10-18 21:26:32,353.353 INFO    ] Checking for camera pi updates...
[2026-10-18 21:26:32,396.396 INFO    ] 200
[2026-10-18 21:26:32,400.400 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:26:32,445.445 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:26:42,462.462 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:26:42,506.506 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:26:42,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:26:42,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:26:42,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:26:42,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:26:44,572.572 INFO    ] ================================================
[2026-10-18 21:26:44,587.587 INFO    ] Launching Daemon at Sun Oct 18 21:26:44 IST 2026
[2026-10-18 21:26:44,598.598 INFO    ] ================================================
[2026-10-18 21:26:45,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:26:45
[2026-10-18 21:26:45,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:26:46,014.014 INFO    ] Initializing speech engine...
[2026-10-18 21:26:46,023.023 INFO    ] 2026-10-18 21:26:46
[2026-10-18 21:26:46,269.269 INFO    ] 2026-10-18 21:26:46
[2026-10-18 21:26:46,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:26:46,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:26:46,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:26:46,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:26:46,823.823 INFO    ] time= 18/10/2026 21:26:46
[2026-10-18 21:26:46,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:26:46,847.847 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:26:46,972.972 INFO    ] No existing commands found in stream
[2026-10-18 21:26:51,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:26:51,989.989 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-18 21:26:52,897.897 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:26:52,899.899 INFO    ] Checking for system updates...
[2026-10-18 21:26:52,937.937 INFO    ] 200
[2026-10-18 21:26:52,940.940 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:26:52,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:26:52,996.996 INFO    ] No update needed
[2026-10-18 21:26:52,999.999 INFO    ] Checking for camera pi updates...
[2026-10-18 21:26:53,033.033 INFO    ] 200
[2026-10-18 21:26:53,036.036 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:26:53,078.078 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:27:03,093.093 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:27:03,148.148 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:27:03,160.160 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:27:03,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:27:03,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:27:03,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:27:05,216.216 INFO    ] ================================================
[2026-10-18 21:27:05,231.231 INFO    ] Launching Daemon at Sun Oct 18 21:27:05 IST 2026
[2026-10-18 21:27:05,242.242 INFO    ] ================================================
[2026-10-18 21:27:05,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:27:05
[2026-10-18 21:27:06,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:27:06,811.811 INFO    ] Initializing speech engine...
[2026-10-18 21:27:06,823.823 INFO    ] 2026-10-18 21:27:06
[2026-10-18 21:27:07,073.073 INFO    ] 2026-10-18 21:27:07
[2026-10-18 21:27:07,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:27:07,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:27:07,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:27:07,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:27:07,574.574 INFO    ] time= 18/10/2026 21:27:07
[2026-10-18 21:27:07,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:27:07,637.637 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:27:07,783.783 INFO    ] No existing commands found in stream
[2026-10-18 21:27:12,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:27:12,809.809 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-18 21:27:15,959.959 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:27:15,961.961 INFO    ] Checking for system updates...
[2026-10-18 21:27:15,997.997 INFO    ] 200
[2026-10-18 21:27:16,000.000 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:27:16,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:27:16,059.059 INFO    ] No update needed
[2026-10-18 21:27:16,062.062 INFO    ] Checking for camera pi updates...
[2026-10-18 21:27:16,098.098 INFO    ] 200
[2026-10-18 21:27:16,100.100 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:27:16,140.140 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:27:26,155.155 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:27:26,190.190 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:27:26,200.200 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:27:26,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:27:26,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:27:26,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:27:28,251.251 INFO    ] ================================================
[2026-10-18 21:27:28,266.266 INFO    ] Launching Daemon at Sun Oct 18 21:27:28 IST 2026
[2026-10-18 21:27:28,277.277 INFO    ] ================================================
[2026-10-18 21:27:28,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:27:28
[2026-10-18 21:27:29,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:27:29,740.740 INFO    ] Initializing speech engine...
[2026-10-18 21:27:29,745.745 INFO    ] 2026-10-18 21:27:29
[2026-10-18 21:27:30,008.008 INFO    ] 2026-10-18 21:27:30
[2026-10-18 21:27:30,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:27:30,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:27:30,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:27:30,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:27:30,553.553 INFO    ] time= 18/10/2026 21:27:30
[2026-10-18 21:27:30,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:27:30,578.578 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:27:30,738.738 INFO    ] No existing commands found in stream
[2026-10-18 21:27:35,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:27:35,771.771 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-18 21:27:36,371.371 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:27:36,374.374 INFO    ] Checking for system updates...
[2026-10-18 21:27:36,411.411 INFO    ] 200
[2026-10-18 21:27:36,413.413 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:27:36,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:27:36,468.468 INFO    ] No update needed
[2026-10-18 21:27:36,470.470 INFO    ] Checking for camera pi updates...
[2026-10-18 21:27:36,503.503 INFO    ] 200
[2026-10-18 21:27:36,506.506 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:27:36,546.546 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:27:46,560.560 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:27:46,596.596 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:27:46,605.605 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:27:46,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:27:46,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:27:46,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:27:48,657.657 INFO    ] ================================================
[2026-10-18 21:27:48,673.673 INFO    ] Launching Daemon at Sun Oct 18 21:27:48 IST 2026
[2026-10-18 21:27:48,686.686 INFO    ] ================================================
[2026-10-18 21:27:49,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:27:49
[2026-10-18 21:27:49,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:27:50,119.119 INFO    ] Initializing speech engine...
[2026-10-18 21:27:50,129.129 INFO    ] 2026-10-18 21:27:50
[2026-10-18 21:27:50,382.382 INFO    ] 2026-10-18 21:27:50
[2026-10-18 21:27:50,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:27:50,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:27:50,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:27:50,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:27:50,896.896 INFO    ] time= 18/10/2026 21:27:50
[2026-10-18 21:27:50,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:27:50,965.965 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:27:51,123.123 INFO    ] No existing commands found in stream
[2026-10-18 21:27:56,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:27:56,145.145 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-18 21:28:00,642.642 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:28:00,645.645 INFO    ] Checking for system updates...
[2026-10-18 21:28:00,682.682 INFO    ] 200
[2026-10-18 21:28:00,685.685 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:28:00,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:28:00,742.742 INFO    ] No update needed
[2026-10-18 21:28:00,745.745 INFO    ] Checking for camera pi updates...
[2026-10-18 21:28:00,780.780 INFO    ] 200
[2026-10-18 21:28:00,782.782 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:28:00,823.823 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:28:10,837.837 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:28:10,871.871 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:28:10,881.881 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:28:10,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:28:10,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:28:10,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:28:12,933.933 INFO    ] ================================================
[2026-10-18 21:28:12,949.949 INFO    ] Launching Daemon at Sun Oct 18 21:28:12 IST 2026
[2026-10-18 21:28:12,959.959 INFO    ] ================================================
[2026-10-18 21:28:13,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:28:13
[2026-10-18 21:28:14,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:28:14,394.394 INFO    ] Initializing speech engine...
[2026-10-18 21:28:14,403.403 INFO    ] 2026-10-18 21:28:14
[2026-10-18 21:28:14,648.648 INFO    ] 2026-10-18 21:28:14
[2026-10-18 21:28:14,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:28:14,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:28:14,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:28:15,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:28:15,150.150 INFO    ] time= 18/10/2026 21:28:15
[2026-10-18 21:28:15,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:28:15,213.213 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:28:15,380.380 INFO    ] No existing commands found in stream
[2026-10-18 21:28:20,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:28:20,418.418 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-18 21:28:23,206.206 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:28:23,209.209 INFO    ] Checking for system updates...
[2026-10-18 21:28:23,244.244 INFO    ] 200
[2026-10-18 21:28:23,247.247 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:28:23,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:28:23,301.301 INFO    ] No update needed
[2026-10-18 21:28:23,303.303 INFO    ] Checking for camera pi updates...
[2026-10-18 21:28:23,336.336 INFO    ] 200
[2026-10-18 21:28:23,339.339 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:28:23,384.384 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:28:33,396.396 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:28:33,430.430 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:28:33,440.440 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:28:33,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:28:33,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:28:33,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:28:35,493.493 INFO    ] ================================================
[2026-10-18 21:28:35,508.508 INFO    ] Launching Daemon at Sun Oct 18 21:28:35 IST 2026
[2026-10-18 21:28:35,519.519 INFO    ] ================================================
[2026-10-18 21:28:36,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:28:36
[2026-10-18 21:28:36,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:28:36,928.928 INFO    ] Initializing speech engine...
[2026-10-18 21:28:36,943.943 INFO    ] 2026-10-18 21:28:36
[2026-10-18 21:28:37,223.223 INFO    ] 2026-10-18 21:28:37
[2026-10-18 21:28:37,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:28:37,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:28:37,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:28:37,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:28:37,722.722 INFO    ] time= 18/10/2026 21:28:37
[2026-10-18 21:28:37,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:28:37,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:28:37,918.918 INFO    ] No existing commands found in stream
[2026-10-18 21:28:42,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:28:42,933.933 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-18 21:28:47,327.327 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:28:47,330.330 INFO    ] Checking for system updates...
[2026-10-18 21:28:47,371.371 INFO    ] 200
[2026-10-18 21:28:47,373.373 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:28:47,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:28:47,431.431 INFO    ] No update needed
[2026-10-18 21:28:47,434.434 INFO    ] Checking for camera pi updates...
[2026-10-18 21:28:47,469.469 INFO    ] 200
[2026-10-18 21:28:47,472.472 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:28:47,555.555 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:28:57,571.571 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:28:57,611.611 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:28:57,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:28:57,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:28:57,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:28:57,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:28:59,678.678 INFO    ] ================================================
[2026-10-18 21:28:59,693.693 INFO    ] Launching Daemon at Sun Oct 18 21:28:59 IST 2026
[2026-10-18 21:28:59,704.704 INFO    ] ================================================
[2026-10-18 21:29:00,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:29:00
[2026-10-18 21:29:00,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:29:01,132.132 INFO    ] Initializing speech engine...
[2026-10-18 21:29:01,139.139 INFO    ] 2026-10-18 21:29:01
[2026-10-18 21:29:01,385.385 INFO    ] 2026-10-18 21:29:01
[2026-10-18 21:29:01,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:29:01,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:29:01,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:29:01,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:29:01,845.845 INFO    ] time= 18/10/2026 21:29:01
[2026-10-18 21:29:01,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:29:01,852.852 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:29:01,924.924 INFO    ] No existing commands found in stream
[2026-10-18 21:29:06,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:29:06,937.937 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-18 21:29:09,648.648 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:29:09,651.651 INFO    ] Checking for system updates...
[2026-10-18 21:29:09,694.694 INFO    ] 200
[2026-10-18 21:29:09,697.697 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:29:09,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:29:09,752.752 INFO    ] No update needed
[2026-10-18 21:29:09,754.754 INFO    ] Checking for camera pi updates...
[2026-10-18 21:29:09,788.788 INFO    ] 200
[2026-10-18 21:29:09,791.791 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:29:09,831.831 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:29:19,847.847 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:29:19,882.882 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:29:19,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:29:19,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:29:19,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:29:19,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:29:21,945.945 INFO    ] ================================================
[2026-10-18 21:29:21,960.960 INFO    ] Launching Daemon at Sun Oct 18 21:29:21 IST 2026
[2026-10-18 21:29:21,971.971 INFO    ] ================================================
[2026-10-18 21:29:22,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:29:22
[2026-10-18 21:29:23,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:29:23,500.500 INFO    ] Initializing speech engine...
[2026-10-18 21:29:23,511.511 INFO    ] 2026-10-18 21:29:23
[2026-10-18 21:29:23,789.789 INFO    ] 2026-10-18 21:29:23
[2026-10-18 21:29:23,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:29:24,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:29:24,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:29:24,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:29:24,330.330 INFO    ] time= 18/10/2026 21:29:24
[2026-10-18 21:29:24,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:29:24,378.378 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:29:24,495.495 INFO    ] No existing commands found in stream
[2026-10-18 21:29:29,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:29:29,529.529 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-18 21:29:31,297.297 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:29:31,300.300 INFO    ] Checking for system updates...
[2026-10-18 21:29:31,336.336 INFO    ] 200
[2026-10-18 21:29:31,339.339 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:29:31,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:29:31,393.393 INFO    ] No update needed
[2026-10-18 21:29:31,396.396 INFO    ] Checking for camera pi updates...
[2026-10-18 21:29:31,429.429 INFO    ] 200
[2026-10-18 21:29:31,432.432 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:29:31,472.472 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:29:41,487.487 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:29:41,521.521 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:29:41,531.531 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:29:41,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:29:41,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:29:41,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:29:43,583.583 INFO    ] ================================================
[2026-10-18 21:29:43,598.598 INFO    ] Launching Daemon at Sun Oct 18 21:29:43 IST 2026
[2026-10-18 21:29:43,609.609 INFO    ] ================================================
[2026-10-18 21:29:44,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:29:44
[2026-10-18 21:29:44,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:29:45,217.217 INFO    ] Initializing speech engine...
[2026-10-18 21:29:45,225.225 INFO    ] 2026-10-18 21:29:45
[2026-10-18 21:29:45,540.540 INFO    ] 2026-10-18 21:29:45
[2026-10-18 21:29:45,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:29:45,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:29:45,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:29:46,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:29:46,044.044 INFO    ] time= 18/10/2026 21:29:46
[2026-10-18 21:29:46,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:29:46,074.074 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:29:46,198.198 INFO    ] No existing commands found in stream
[2026-10-18 21:29:51,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:29:51,229.229 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-18 21:29:51,798.798 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:29:51,800.800 INFO    ] Checking for system updates...
[2026-10-18 21:29:51,840.840 INFO    ] 200
[2026-10-18 21:29:51,842.842 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:29:51,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:29:51,903.903 INFO    ] No update needed
[2026-10-18 21:29:51,905.905 INFO    ] Checking for camera pi updates...
[2026-10-18 21:29:51,938.938 INFO    ] 200
[2026-10-18 21:29:51,941.941 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:29:51,980.980 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:30:01,997.997 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:30:02,164.164 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:30:02,204.204 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:30:02,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:30:02,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:30:02,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:30:04,350.350 INFO    ] ================================================
[2026-10-18 21:30:04,366.366 INFO    ] Launching Daemon at Sun Oct 18 21:30:04 IST 2026
[2026-10-18 21:30:04,377.377 INFO    ] ================================================
[2026-10-18 21:30:05,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:30:05
[2026-10-18 21:30:05,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:30:05,866.866 INFO    ] Initializing speech engine...
[2026-10-18 21:30:05,881.881 INFO    ] 2026-10-18 21:30:05
[2026-10-18 21:30:06,150.150 INFO    ] 2026-10-18 21:30:06
[2026-10-18 21:30:06,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:30:06,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:30:06,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:30:06,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:30:06,656.656 INFO    ] time= 18/10/2026 21:30:06
[2026-10-18 21:30:06,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:30:06,728.728 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:30:06,879.879 INFO    ] No existing commands found in stream
[2026-10-18 21:30:11,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:30:11,896.896 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-18 21:30:15,031.031 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:30:15,034.034 INFO    ] Checking for system updates...
[2026-10-18 21:30:15,073.073 INFO    ] 200
[2026-10-18 21:30:15,076.076 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:30:15,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:30:15,130.130 INFO    ] No update needed
[2026-10-18 21:30:15,133.133 INFO    ] Checking for camera pi updates...
[2026-10-18 21:30:15,166.166 INFO    ] 200
[2026-10-18 21:30:15,169.169 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:30:15,209.209 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:30:25,223.223 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:30:25,259.259 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:30:25,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:30:25,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:30:25,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:30:25,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:30:27,322.322 INFO    ] ================================================
[2026-10-18 21:30:27,337.337 INFO    ] Launching Daemon at Sun Oct 18 21:30:27 IST 2026
[2026-10-18 21:30:27,349.349 INFO    ] ================================================
[2026-10-18 21:30:28,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:30:28
[2026-10-18 21:30:28,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:30:28,907.907 INFO    ] Initializing speech engine...
[2026-10-18 21:30:28,920.920 INFO    ] 2026-10-18 21:30:28
[2026-10-18 21:30:29,237.237 INFO    ] 2026-10-18 21:30:29
[2026-10-18 21:30:29,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:30:29,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:30:29,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:30:29,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:30:29,757.757 INFO    ] time= 18/10/2026 21:30:29
[2026-10-18 21:30:29,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:30:29,810.810 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:30:29,933.933 INFO    ] No existing commands found in stream
[2026-10-18 21:30:34,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:30:34,967.967 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-18 21:30:39,454.454 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:30:39,457.457 INFO    ] Checking for system updates...
[2026-10-18 21:30:39,493.493 INFO    ] 200
[2026-10-18 21:30:39,496.496 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:30:39,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:30:39,562.562 INFO    ] No update needed
[2026-10-18 21:30:39,564.564 INFO    ] Checking for camera pi updates...
[2026-10-18 21:30:39,601.601 INFO    ] 200
[2026-10-18 21:30:39,604.604 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:30:39,649.649 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:30:49,663.663 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:30:49,698.698 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:30:49,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:30:49,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:30:49,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:30:49,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:30:51,760.760 INFO    ] ================================================
[2026-10-18 21:30:51,775.775 INFO    ] Launching Daemon at Sun Oct 18 21:30:51 IST 2026
[2026-10-18 21:30:51,787.787 INFO    ] ================================================
[2026-10-18 21:30:52,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:30:52
[2026-10-18 21:30:52,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:30:53,270.270 INFO    ] Initializing speech engine...
[2026-10-18 21:30:53,278.278 INFO    ] 2026-10-18 21:30:53
[2026-10-18 21:30:53,549.549 INFO    ] 2026-10-18 21:30:53
[2026-10-18 21:30:53,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:30:53,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:30:53,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:30:54,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:30:54,080.080 INFO    ] time= 18/10/2026 21:30:54
[2026-10-18 21:30:54,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:30:54,106.106 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:30:54,236.236 INFO    ] No existing commands found in stream
[2026-10-18 21:30:59,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:30:59,258.258 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-18 21:31:00,563.563 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:31:00,567.567 INFO    ] Checking for system updates...
[2026-10-18 21:31:00,608.608 INFO    ] 200
[2026-10-18 21:31:00,611.611 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:31:00,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:31:00,673.673 INFO    ] No update needed
[2026-10-18 21:31:00,676.676 INFO    ] Checking for camera pi updates...
[2026-10-18 21:31:00,718.718 INFO    ] 200
[2026-10-18 21:31:00,721.721 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:31:00,767.767 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:31:10,787.787 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:31:10,822.822 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:31:10,832.832 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:31:10,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:31:10,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:31:10,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:31:12,886.886 INFO    ] ================================================
[2026-10-18 21:31:12,901.901 INFO    ] Launching Daemon at Sun Oct 18 21:31:12 IST 2026
[2026-10-18 21:31:12,912.912 INFO    ] ================================================
[2026-10-18 21:31:13,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:31:13
[2026-10-18 21:31:14,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:31:14,370.370 INFO    ] Initializing speech engine...
[2026-10-18 21:31:14,377.377 INFO    ] 2026-10-18 21:31:14
[2026-10-18 21:31:14,626.626 INFO    ] 2026-10-18 21:31:14
[2026-10-18 21:31:14,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:31:14,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:31:14,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:31:15,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:31:15,129.129 INFO    ] time= 18/10/2026 21:31:15
[2026-10-18 21:31:15,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:31:15,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:31:15,338.338 INFO    ] No existing commands found in stream
[2026-10-18 21:31:20,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:31:20,368.368 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-18 21:31:20,948.948 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:31:20,951.951 INFO    ] Checking for system updates...
[2026-10-18 21:31:20,987.987 INFO    ] 200
[2026-10-18 21:31:20,989.989 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:31:21,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:31:21,043.043 INFO    ] No update needed
[2026-10-18 21:31:21,045.045 INFO    ] Checking for camera pi updates...
[2026-10-18 21:31:21,079.079 INFO    ] 200
[2026-10-18 21:31:21,082.082 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:31:21,129.129 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:31:31,144.144 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:31:31,179.179 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:31:31,189.189 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:31:31,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:31:31,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:31:31,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:31:33,241.241 INFO    ] ================================================
[2026-10-18 21:31:33,257.257 INFO    ] Launching Daemon at Sun Oct 18 21:31:33 IST 2026
[2026-10-18 21:31:33,269.269 INFO    ] ================================================
[2026-10-18 21:31:33,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:31:33
[2026-10-18 21:31:34,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:31:34,740.740 INFO    ] Initializing speech engine...
[2026-10-18 21:31:34,749.749 INFO    ] 2026-10-18 21:31:34
[2026-10-18 21:31:34,998.998 INFO    ] 2026-10-18 21:31:34
[2026-10-18 21:31:35,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:31:35,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:31:35,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:31:35,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:31:35,558.558 INFO    ] time= 18/10/2026 21:31:35
[2026-10-18 21:31:35,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:31:35,582.582 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:31:35,712.712 INFO    ] No existing commands found in stream
[2026-10-18 21:31:40,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:31:40,727.727 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-18 21:31:42,141.141 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:31:42,144.144 INFO    ] Checking for system updates...
[2026-10-18 21:31:42,179.179 INFO    ] 200
[2026-10-18 21:31:42,182.182 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:31:42,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:31:42,245.245 INFO    ] No update needed
[2026-10-18 21:31:42,248.248 INFO    ] Checking for camera pi updates...
[2026-10-18 21:31:42,286.286 INFO    ] 200
[2026-10-18 21:31:42,288.288 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:31:42,334.334 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:31:52,348.348 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:31:52,384.384 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:31:52,394.394 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:31:52,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:31:52,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:31:52,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:31:54,448.448 INFO    ] ================================================
[2026-10-18 21:31:54,464.464 INFO    ] Launching Daemon at Sun Oct 18 21:31:54 IST 2026
[2026-10-18 21:31:54,475.475 INFO    ] ================================================
[2026-10-18 21:31:55,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:31:55
[2026-10-18 21:31:55,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:31:55,894.894 INFO    ] Initializing speech engine...
[2026-10-18 21:31:55,907.907 INFO    ] 2026-10-18 21:31:55
[2026-10-18 21:31:56,153.153 INFO    ] 2026-10-18 21:31:56
[2026-10-18 21:31:56,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:31:56,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:31:56,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:31:56,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:31:56,650.650 INFO    ] time= 18/10/2026 21:31:56
[2026-10-18 21:31:56,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:31:56,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:31:56,867.867 INFO    ] No existing commands found in stream
[2026-10-18 21:32:01,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:32:01,891.891 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-18 21:32:02,812.812 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:32:02,815.815 INFO    ] Checking for system updates...
[2026-10-18 21:32:02,863.863 INFO    ] 200
[2026-10-18 21:32:02,866.866 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:32:02,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:32:02,926.926 INFO    ] No update needed
[2026-10-18 21:32:02,929.929 INFO    ] Checking for camera pi updates...
[2026-10-18 21:32:02,968.968 INFO    ] 200
[2026-10-18 21:32:02,971.971 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:32:03,011.011 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:32:13,026.026 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:32:13,060.060 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:32:13,070.070 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:32:13,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:32:13,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:32:13,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:32:15,122.122 INFO    ] ================================================
[2026-10-18 21:32:15,137.137 INFO    ] Launching Daemon at Sun Oct 18 21:32:15 IST 2026
[2026-10-18 21:32:15,148.148 INFO    ] ================================================
[2026-10-18 21:32:15,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:32:15
[2026-10-18 21:32:16,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:32:16,557.557 INFO    ] Initializing speech engine...
[2026-10-18 21:32:16,566.566 INFO    ] 2026-10-18 21:32:16
[2026-10-18 21:32:16,845.845 INFO    ] 2026-10-18 21:32:16
[2026-10-18 21:32:16,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:32:17,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:32:17,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:32:17,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:32:17,333.333 INFO    ] time= 18/10/2026 21:32:17
[2026-10-18 21:32:17,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:32:17,425.425 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:32:17,559.559 INFO    ] No existing commands found in stream
[2026-10-18 21:32:22,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:32:22,590.590 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-18 21:32:26,665.665 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:32:26,668.668 INFO    ] Checking for system updates...
[2026-10-18 21:32:26,706.706 INFO    ] 200
[2026-10-18 21:32:26,709.709 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:32:26,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:32:26,768.768 INFO    ] No update needed
[2026-10-18 21:32:26,771.771 INFO    ] Checking for camera pi updates...
[2026-10-18 21:32:26,803.803 INFO    ] 200
[2026-10-18 21:32:26,806.806 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:32:26,853.853 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:32:36,869.869 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:32:36,903.903 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:32:36,913.913 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:32:36,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:32:36,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:32:36,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:32:38,966.966 INFO    ] ================================================
[2026-10-18 21:32:38,982.982 INFO    ] Launching Daemon at Sun Oct 18 21:32:38 IST 2026
[2026-10-18 21:32:38,993.993 INFO    ] ================================================
[2026-10-18 21:32:39,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:32:39
[2026-10-18 21:32:40,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:32:40,597.597 INFO    ] Initializing speech engine...
[2026-10-18 21:32:40,609.609 INFO    ] 2026-10-18 21:32:40
[2026-10-18 21:32:40,920.920 INFO    ] 2026-10-18 21:32:40
[2026-10-18 21:32:41,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:32:41,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:32:41,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:32:41,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:32:41,443.443 INFO    ] time= 18/10/2026 21:32:41
[2026-10-18 21:32:41,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:32:41,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:32:41,616.616 INFO    ] No existing commands found in stream
[2026-10-18 21:32:46,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:32:46,656.656 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-18 21:32:50,239.239 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:32:50,242.242 INFO    ] Checking for system updates...
[2026-10-18 21:32:50,284.284 INFO    ] 200
[2026-10-18 21:32:50,287.287 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:32:50,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:32:50,350.350 INFO    ] No update needed
[2026-10-18 21:32:50,353.353 INFO    ] Checking for camera pi updates...
[2026-10-18 21:32:50,388.388 INFO    ] 200
[2026-10-18 21:32:50,390.390 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:32:50,432.432 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:33:00,448.448 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73daf150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:33:00,489.489 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:33:00,500.500 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:33:00,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:33:00,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:33:00,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:33:02,573.573 INFO    ] ================================================
[2026-10-18 21:33:02,598.598 INFO    ] Launching Daemon at Sun Oct 18 21:33:02 IST 2026
[2026-10-18 21:33:02,615.615 INFO    ] ================================================
[2026-10-18 21:33:03,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:33:03
[2026-10-18 21:33:03,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:33:04,147.147 INFO    ] Initializing speech engine...
[2026-10-18 21:33:04,156.156 INFO    ] 2026-10-18 21:33:04
[2026-10-18 21:33:04,419.419 INFO    ] 2026-10-18 21:33:04
[2026-10-18 21:33:04,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:33:04,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:33:04,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:33:04,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:33:04,951.951 INFO    ] time= 18/10/2026 21:33:04
[2026-10-18 21:33:04,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:33:04,989.989 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:33:05,131.131 INFO    ] No existing commands found in stream
[2026-10-18 21:33:10,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:33:10,171.171 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-18 21:33:12,816.816 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:33:12,819.819 INFO    ] Checking for system updates...
[2026-10-18 21:33:12,855.855 INFO    ] 200
[2026-10-18 21:33:12,858.858 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:33:12,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:33:12,913.913 INFO    ] No update needed
[2026-10-18 21:33:12,916.916 INFO    ] Checking for camera pi updates...
[2026-10-18 21:33:12,953.953 INFO    ] 200
[2026-10-18 21:33:12,955.955 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:33:12,996.996 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:33:23,009.009 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:33:23,045.045 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:33:23,055.055 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:33:23,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:33:23,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:33:23,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:33:25,109.109 INFO    ] ================================================
[2026-10-18 21:33:25,124.124 INFO    ] Launching Daemon at Sun Oct 18 21:33:25 IST 2026
[2026-10-18 21:33:25,135.135 INFO    ] ================================================
[2026-10-18 21:33:25,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:33:25
[2026-10-18 21:33:26,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:33:26,734.734 INFO    ] Initializing speech engine...
[2026-10-18 21:33:26,741.741 INFO    ] 2026-10-18 21:33:26
[2026-10-18 21:33:27,050.050 INFO    ] 2026-10-18 21:33:27
[2026-10-18 21:33:27,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:33:27,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:33:27,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:33:27,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:33:27,575.575 INFO    ] time= 18/10/2026 21:33:27
[2026-10-18 21:33:27,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:33:27,612.612 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:33:27,754.754 INFO    ] No existing commands found in stream
[2026-10-18 21:33:32,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:33:32,789.789 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-18 21:33:34,725.725 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:33:34,728.728 INFO    ] Checking for system updates...
[2026-10-18 21:33:34,765.765 INFO    ] 200
[2026-10-18 21:33:34,768.768 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:33:34,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:33:34,831.831 INFO    ] No update needed
[2026-10-18 21:33:34,834.834 INFO    ] Checking for camera pi updates...
[2026-10-18 21:33:34,869.869 INFO    ] 200
[2026-10-18 21:33:34,872.872 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:33:34,913.913 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:33:44,930.930 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:33:44,970.970 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:33:44,982.982 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:33:44,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:33:44,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:33:44,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:33:47,037.037 INFO    ] ================================================
[2026-10-18 21:33:47,052.052 INFO    ] Launching Daemon at Sun Oct 18 21:33:47 IST 2026
[2026-10-18 21:33:47,063.063 INFO    ] ================================================
[2026-10-18 21:33:47,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:33:47
[2026-10-18 21:33:48,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:33:48,528.528 INFO    ] Initializing speech engine...
[2026-10-18 21:33:48,537.537 INFO    ] 2026-10-18 21:33:48
[2026-10-18 21:33:48,798.798 INFO    ] 2026-10-18 21:33:48
[2026-10-18 21:33:48,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:33:49,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:33:49,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:33:49,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:33:49,287.287 INFO    ] time= 18/10/2026 21:33:49
[2026-10-18 21:33:49,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:33:49,401.401 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:33:49,493.493 INFO    ] No existing commands found in stream
[2026-10-18 21:33:54,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:33:54,508.508 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-18 21:33:57,673.673 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:33:57,675.675 INFO    ] Checking for system updates...
[2026-10-18 21:33:57,712.712 INFO    ] 200
[2026-10-18 21:33:57,714.714 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:33:57,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:33:57,769.769 INFO    ] No update needed
[2026-10-18 21:33:57,771.771 INFO    ] Checking for camera pi updates...
[2026-10-18 21:33:57,809.809 INFO    ] 200
[2026-10-18 21:33:57,812.812 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:33:57,853.853 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:34:07,867.867 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:34:07,903.903 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:34:07,913.913 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:34:07,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:34:07,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:34:07,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:34:09,965.965 INFO    ] ================================================
[2026-10-18 21:34:09,980.980 INFO    ] Launching Daemon at Sun Oct 18 21:34:09 IST 2026
[2026-10-18 21:34:09,994.994 INFO    ] ================================================
[2026-10-18 21:34:10,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:34:10
[2026-10-18 21:34:11,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:34:11,404.404 INFO    ] Initializing speech engine...
[2026-10-18 21:34:11,425.425 INFO    ] 2026-10-18 21:34:11
[2026-10-18 21:34:11,687.687 INFO    ] 2026-10-18 21:34:11
[2026-10-18 21:34:11,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:34:11,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:34:11,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:34:12,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:34:12,147.147 INFO    ] time= 18/10/2026 21:34:12
[2026-10-18 21:34:12,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:34:12,264.264 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:34:12,401.401 INFO    ] No existing commands found in stream
[2026-10-18 21:34:17,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:34:17,446.446 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-18 21:34:18,869.869 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:34:18,872.872 INFO    ] Checking for system updates...
[2026-10-18 21:34:18,907.907 INFO    ] 200
[2026-10-18 21:34:18,909.909 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:34:18,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:34:18,963.963 INFO    ] No update needed
[2026-10-18 21:34:18,965.965 INFO    ] Checking for camera pi updates...
[2026-10-18 21:34:19,002.002 INFO    ] 200
[2026-10-18 21:34:19,005.005 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:34:19,059.059 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:34:29,075.075 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d74150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:34:29,112.112 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:34:29,122.122 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:34:29,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:34:29,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:34:29,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:34:31,174.174 INFO    ] ================================================
[2026-10-18 21:34:31,190.190 INFO    ] Launching Daemon at Sun Oct 18 21:34:31 IST 2026
[2026-10-18 21:34:31,201.201 INFO    ] ================================================
[2026-10-18 21:34:31,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:34:31
[2026-10-18 21:34:32,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:34:32,734.734 INFO    ] Initializing speech engine...
[2026-10-18 21:34:32,750.750 INFO    ] 2026-10-18 21:34:32
[2026-10-18 21:34:33,004.004 INFO    ] 2026-10-18 21:34:32
[2026-10-18 21:34:33,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:34:33,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:34:33,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:34:33,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:34:33,558.558 INFO    ] time= 18/10/2026 21:34:33
[2026-10-18 21:34:33,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:34:33,585.585 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:34:33,722.722 INFO    ] No existing commands found in stream
[2026-10-18 21:34:38,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:34:38,756.756 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-18 21:34:42,558.558 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:34:42,561.561 INFO    ] Checking for system updates...
[2026-10-18 21:34:42,597.597 INFO    ] 200
[2026-10-18 21:34:42,600.600 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:34:42,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:34:42,658.658 INFO    ] No update needed
[2026-10-18 21:34:42,661.661 INFO    ] Checking for camera pi updates...
[2026-10-18 21:34:42,696.696 INFO    ] 200
[2026-10-18 21:34:42,699.699 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:34:42,740.740 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:34:52,756.756 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:34:52,797.797 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:34:52,809.809 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:34:52,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:34:52,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:34:52,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:34:54,866.866 INFO    ] ================================================
[2026-10-18 21:34:54,881.881 INFO    ] Launching Daemon at Sun Oct 18 21:34:54 IST 2026
[2026-10-18 21:34:54,892.892 INFO    ] ================================================
[2026-10-18 21:34:55,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:34:55
[2026-10-18 21:34:56,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:34:56,317.317 INFO    ] Initializing speech engine...
[2026-10-18 21:34:56,326.326 INFO    ] 2026-10-18 21:34:56
[2026-10-18 21:34:56,587.587 INFO    ] 2026-10-18 21:34:56
[2026-10-18 21:34:56,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:34:56,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:34:56,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:34:57,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:34:57,071.071 INFO    ] time= 18/10/2026 21:34:57
[2026-10-18 21:34:57,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:34:57,140.140 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:34:57,286.286 INFO    ] No existing commands found in stream
[2026-10-18 21:35:02,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:35:02,311.311 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-18 21:35:06,085.085 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:35:06,088.088 INFO    ] Checking for system updates...
[2026-10-18 21:35:06,124.124 INFO    ] 200
[2026-10-18 21:35:06,126.126 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:35:06,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:35:06,182.182 INFO    ] No update needed
[2026-10-18 21:35:06,184.184 INFO    ] Checking for camera pi updates...
[2026-10-18 21:35:06,218.218 INFO    ] 200
[2026-10-18 21:35:06,220.220 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:35:06,260.260 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:35:16,275.275 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:35:16,310.310 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:35:16,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:35:16,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:35:16,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:35:16,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:35:18,372.372 INFO    ] ================================================
[2026-10-18 21:35:18,387.387 INFO    ] Launching Daemon at Sun Oct 18 21:35:18 IST 2026
[2026-10-18 21:35:18,398.398 INFO    ] ================================================
[2026-10-18 21:35:18,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:35:18
[2026-10-18 21:35:19,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:35:19,864.864 INFO    ] Initializing speech engine...
[2026-10-18 21:35:19,881.881 INFO    ] 2026-10-18 21:35:19
[2026-10-18 21:35:20,171.171 INFO    ] 2026-10-18 21:35:20
[2026-10-18 21:35:20,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:35:20,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:35:20,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:35:20,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:35:20,606.606 INFO    ] time= 18/10/2026 21:35:20
[2026-10-18 21:35:20,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:35:20,656.656 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:35:20,797.797 INFO    ] No existing commands found in stream
[2026-10-18 21:35:25,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:35:25,820.820 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-18 21:35:29,325.325 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:35:29,328.328 INFO    ] Checking for system updates...
[2026-10-18 21:35:29,375.375 INFO    ] 200
[2026-10-18 21:35:29,378.378 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:35:29,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:35:29,436.436 INFO    ] No update needed
[2026-10-18 21:35:29,439.439 INFO    ] Checking for camera pi updates...
[2026-10-18 21:35:29,477.477 INFO    ] 200
[2026-10-18 21:35:29,480.480 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:35:29,520.520 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:35:39,533.533 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:35:39,569.569 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:35:39,578.578 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:35:39,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:35:39,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:35:39,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:35:41,632.632 INFO    ] ================================================
[2026-10-18 21:35:41,647.647 INFO    ] Launching Daemon at Sun Oct 18 21:35:41 IST 2026
[2026-10-18 21:35:41,658.658 INFO    ] ================================================
[2026-10-18 21:35:42,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:35:42
[2026-10-18 21:35:42,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:35:43,077.077 INFO    ] Initializing speech engine...
[2026-10-18 21:35:43,083.083 INFO    ] 2026-10-18 21:35:43
[2026-10-18 21:35:43,383.383 INFO    ] 2026-10-18 21:35:43
[2026-10-18 21:35:43,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:35:43,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:35:43,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:35:43,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:35:43,812.812 INFO    ] time= 18/10/2026 21:35:43
[2026-10-18 21:35:43,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:35:43,848.848 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:35:43,989.989 INFO    ] No existing commands found in stream
[2026-10-18 21:35:49,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:35:49,012.012 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-18 21:35:51,505.505 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:35:51,508.508 INFO    ] Checking for system updates...
[2026-10-18 21:35:51,543.543 INFO    ] 200
[2026-10-18 21:35:51,546.546 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:35:51,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:35:51,600.600 INFO    ] No update needed
[2026-10-18 21:35:51,602.602 INFO    ] Checking for camera pi updates...
[2026-10-18 21:35:51,640.640 INFO    ] 200
[2026-10-18 21:35:51,643.643 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:35:51,683.683 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:36:01,698.698 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:36:01,737.737 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:36:01,747.747 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:36:01,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:36:01,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:36:01,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:36:03,806.806 INFO    ] ================================================
[2026-10-18 21:36:03,821.821 INFO    ] Launching Daemon at Sun Oct 18 21:36:03 IST 2026
[2026-10-18 21:36:03,832.832 INFO    ] ================================================
[2026-10-18 21:36:04,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:36:04
[2026-10-18 21:36:05,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:36:05,521.521 INFO    ] Initializing speech engine...
[2026-10-18 21:36:05,527.527 INFO    ] 2026-10-18 21:36:05
[2026-10-18 21:36:05,816.816 INFO    ] 2026-10-18 21:36:05
[2026-10-18 21:36:05,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:36:06,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:36:06,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:36:06,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:36:06,368.368 INFO    ] time= 18/10/2026 21:36:06
[2026-10-18 21:36:06,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:36:06,417.417 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:36:06,529.529 INFO    ] No existing commands found in stream
[2026-10-18 21:36:11,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:36:11,549.549 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-18 21:36:13,319.319 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:36:13,322.322 INFO    ] Checking for system updates...
[2026-10-18 21:36:13,359.359 INFO    ] 200
[2026-10-18 21:36:13,362.362 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:36:13,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:36:13,427.427 INFO    ] No update needed
[2026-10-18 21:36:13,430.430 INFO    ] Checking for camera pi updates...
[2026-10-18 21:36:13,464.464 INFO    ] 200
[2026-10-18 21:36:13,467.467 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:36:13,509.509 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:36:23,525.525 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:36:23,568.568 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:36:23,581.581 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:36:23,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:36:23,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:36:23,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:36:25,636.636 INFO    ] ================================================
[2026-10-18 21:36:25,652.652 INFO    ] Launching Daemon at Sun Oct 18 21:36:25 IST 2026
[2026-10-18 21:36:25,662.662 INFO    ] ================================================
[2026-10-18 21:36:26,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:36:26
[2026-10-18 21:36:26,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:36:27,087.087 INFO    ] Initializing speech engine...
[2026-10-18 21:36:27,096.096 INFO    ] 2026-10-18 21:36:27
[2026-10-18 21:36:27,346.346 INFO    ] 2026-10-18 21:36:27
[2026-10-18 21:36:27,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:36:27,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:36:27,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:36:27,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:36:27,914.914 INFO    ] time= 18/10/2026 21:36:27
[2026-10-18 21:36:27,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:36:27,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:36:28,078.078 INFO    ] No existing commands found in stream
[2026-10-18 21:36:33,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:36:33,107.107 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-18 21:36:35,053.053 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:36:35,056.056 INFO    ] Checking for system updates...
[2026-10-18 21:36:35,092.092 INFO    ] 200
[2026-10-18 21:36:35,094.094 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:36:35,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:36:35,152.152 INFO    ] No update needed
[2026-10-18 21:36:35,154.154 INFO    ] Checking for camera pi updates...
[2026-10-18 21:36:35,187.187 INFO    ] 200
[2026-10-18 21:36:35,190.190 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:36:35,229.229 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:36:45,245.245 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:36:45,279.279 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:36:45,289.289 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:36:45,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:36:45,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:36:45,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:36:47,343.343 INFO    ] ================================================
[2026-10-18 21:36:47,359.359 INFO    ] Launching Daemon at Sun Oct 18 21:36:47 IST 2026
[2026-10-18 21:36:47,371.371 INFO    ] ================================================
[2026-10-18 21:36:47,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:36:47
[2026-10-18 21:36:48,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:36:48,861.861 INFO    ] Initializing speech engine...
[2026-10-18 21:36:48,871.871 INFO    ] 2026-10-18 21:36:48
[2026-10-18 21:36:49,129.129 INFO    ] 2026-10-18 21:36:49
[2026-10-18 21:36:49,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:36:49,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:36:49,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:36:49,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:36:49,635.635 INFO    ] time= 18/10/2026 21:36:49
[2026-10-18 21:36:49,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:36:49,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:36:49,884.884 INFO    ] No existing commands found in stream
[2026-10-18 21:36:54,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:36:54,917.917 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-18 21:36:59,271.271 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:36:59,274.274 INFO    ] Checking for system updates...
[2026-10-18 21:36:59,315.315 INFO    ] 200
[2026-10-18 21:36:59,317.317 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:36:59,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:36:59,372.372 INFO    ] No update needed
[2026-10-18 21:36:59,374.374 INFO    ] Checking for camera pi updates...
[2026-10-18 21:36:59,408.408 INFO    ] 200
[2026-10-18 21:36:59,411.411 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:36:59,450.450 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:37:09,466.466 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:37:09,501.501 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:37:09,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:37:09,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:37:09,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:37:09,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:37:11,563.563 INFO    ] ================================================
[2026-10-18 21:37:11,579.579 INFO    ] Launching Daemon at Sun Oct 18 21:37:11 IST 2026
[2026-10-18 21:37:11,590.590 INFO    ] ================================================
[2026-10-18 21:37:12,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:37:12
[2026-10-18 21:37:12,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:37:13,012.012 INFO    ] Initializing speech engine...
[2026-10-18 21:37:13,021.021 INFO    ] 2026-10-18 21:37:13
[2026-10-18 21:37:13,267.267 INFO    ] 2026-10-18 21:37:13
[2026-10-18 21:37:13,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:37:13,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:37:13,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:37:13,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:37:13,820.820 INFO    ] time= 18/10/2026 21:37:13
[2026-10-18 21:37:13,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:37:13,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:37:13,977.977 INFO    ] No existing commands found in stream
[2026-10-18 21:37:19,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:37:19,008.008 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-18 21:37:22,326.326 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:37:22,328.328 INFO    ] Checking for system updates...
[2026-10-18 21:37:22,364.364 INFO    ] 200
[2026-10-18 21:37:22,366.366 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:37:22,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:37:22,421.421 INFO    ] No update needed
[2026-10-18 21:37:22,423.423 INFO    ] Checking for camera pi updates...
[2026-10-18 21:37:22,462.462 INFO    ] 200
[2026-10-18 21:37:22,464.464 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:37:22,506.506 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:37:32,520.520 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:37:32,561.561 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:37:32,571.571 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:37:32,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:37:32,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:37:32,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:37:34,623.623 INFO    ] ================================================
[2026-10-18 21:37:34,639.639 INFO    ] Launching Daemon at Sun Oct 18 21:37:34 IST 2026
[2026-10-18 21:37:34,650.650 INFO    ] ================================================
[2026-10-18 21:37:35,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:37:35
[2026-10-18 21:37:35,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:37:36,058.058 INFO    ] Initializing speech engine...
[2026-10-18 21:37:36,081.081 INFO    ] 2026-10-18 21:37:36
[2026-10-18 21:37:36,337.337 INFO    ] 2026-10-18 21:37:36
[2026-10-18 21:37:36,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:37:36,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:37:36,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:37:36,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:37:36,909.909 INFO    ] time= 18/10/2026 21:37:36
[2026-10-18 21:37:36,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:37:36,932.932 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:37:37,067.067 INFO    ] No existing commands found in stream
[2026-10-18 21:37:42,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:37:42,083.083 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-18 21:37:45,652.652 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:37:45,655.655 INFO    ] Checking for system updates...
[2026-10-18 21:37:45,699.699 INFO    ] 200
[2026-10-18 21:37:45,702.702 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:37:45,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:37:45,775.775 INFO    ] No update needed
[2026-10-18 21:37:45,778.778 INFO    ] Checking for camera pi updates...
[2026-10-18 21:37:45,816.816 INFO    ] 200
[2026-10-18 21:37:45,818.818 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:37:45,872.872 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:37:55,888.888 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:37:55,924.924 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:37:55,933.933 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:37:55,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:37:55,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:37:55,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:37:57,987.987 INFO    ] ================================================
[2026-10-18 21:37:58,003.003 INFO    ] Launching Daemon at Sun Oct 18 21:37:57 IST 2026
[2026-10-18 21:37:58,014.014 INFO    ] ================================================
[2026-10-18 21:37:58,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:37:58
[2026-10-18 21:37:59,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:37:59,660.660 INFO    ] Initializing speech engine...
[2026-10-18 21:37:59,670.670 INFO    ] 2026-10-18 21:37:59
[2026-10-18 21:37:59,919.919 INFO    ] 2026-10-18 21:37:59
[2026-10-18 21:37:59,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:38:00,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:38:00,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:38:00,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:38:00,475.475 INFO    ] time= 18/10/2026 21:38:00
[2026-10-18 21:38:00,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:38:00,500.500 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:38:00,628.628 INFO    ] No existing commands found in stream
[2026-10-18 21:38:05,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:38:05,645.645 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-18 21:38:09,421.421 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:38:09,424.424 INFO    ] Checking for system updates...
[2026-10-18 21:38:09,460.460 INFO    ] 200
[2026-10-18 21:38:09,463.463 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:38:09,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:38:09,518.518 INFO    ] No update needed
[2026-10-18 21:38:09,520.520 INFO    ] Checking for camera pi updates...
[2026-10-18 21:38:09,553.553 INFO    ] 200
[2026-10-18 21:38:09,556.556 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:38:09,596.596 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:38:19,611.611 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:38:19,647.647 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:38:19,657.657 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:38:19,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:38:19,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:38:19,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:38:21,712.712 INFO    ] ================================================
[2026-10-18 21:38:21,727.727 INFO    ] Launching Daemon at Sun Oct 18 21:38:21 IST 2026
[2026-10-18 21:38:21,739.739 INFO    ] ================================================
[2026-10-18 21:38:22,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:38:22
[2026-10-18 21:38:22,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:38:23,240.240 INFO    ] Initializing speech engine...
[2026-10-18 21:38:23,252.252 INFO    ] 2026-10-18 21:38:23
[2026-10-18 21:38:23,546.546 INFO    ] 2026-10-18 21:38:23
[2026-10-18 21:38:23,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:38:23,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:38:23,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:38:24,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:38:24,107.107 INFO    ] time= 18/10/2026 21:38:24
[2026-10-18 21:38:24,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:38:24,146.146 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:38:24,275.275 INFO    ] No existing commands found in stream
[2026-10-18 21:38:29,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:38:29,314.314 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-18 21:38:33,147.147 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:38:33,150.150 INFO    ] Checking for system updates...
[2026-10-18 21:38:33,187.187 INFO    ] 200
[2026-10-18 21:38:33,190.190 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:38:33,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:38:33,255.255 INFO    ] No update needed
[2026-10-18 21:38:33,258.258 INFO    ] Checking for camera pi updates...
[2026-10-18 21:38:33,297.297 INFO    ] 200
[2026-10-18 21:38:33,300.300 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:38:33,347.347 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:38:43,364.364 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cef150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:38:43,406.406 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:38:43,417.417 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:38:43,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:38:43,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:38:43,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:38:45,479.479 INFO    ] ================================================
[2026-10-18 21:38:45,494.494 INFO    ] Launching Daemon at Sun Oct 18 21:38:45 IST 2026
[2026-10-18 21:38:45,505.505 INFO    ] ================================================
[2026-10-18 21:38:46,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:38:46
[2026-10-18 21:38:46,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:38:46,970.970 INFO    ] Initializing speech engine...
[2026-10-18 21:38:46,985.985 INFO    ] 2026-10-18 21:38:46
[2026-10-18 21:38:47,252.252 INFO    ] 2026-10-18 21:38:47
[2026-10-18 21:38:47,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:38:47,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:38:47,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:38:47,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:38:47,764.764 INFO    ] time= 18/10/2026 21:38:47
[2026-10-18 21:38:47,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:38:47,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:38:47,980.980 INFO    ] No existing commands found in stream
[2026-10-18 21:38:52,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:38:52,998.998 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-18 21:38:54,388.388 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:38:54,391.391 INFO    ] Checking for system updates...
[2026-10-18 21:38:54,431.431 INFO    ] 200
[2026-10-18 21:38:54,433.433 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:38:54,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:38:54,496.496 INFO    ] No update needed
[2026-10-18 21:38:54,499.499 INFO    ] Checking for camera pi updates...
[2026-10-18 21:38:54,532.532 INFO    ] 200
[2026-10-18 21:38:54,534.534 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:38:54,574.574 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:39:04,589.589 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:39:04,623.623 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:39:04,633.633 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:39:04,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:39:04,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:39:04,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:39:06,685.685 INFO    ] ================================================
[2026-10-18 21:39:06,701.701 INFO    ] Launching Daemon at Sun Oct 18 21:39:06 IST 2026
[2026-10-18 21:39:06,712.712 INFO    ] ================================================
[2026-10-18 21:39:07,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:39:07
[2026-10-18 21:39:07,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:39:08,183.183 INFO    ] Initializing speech engine...
[2026-10-18 21:39:08,190.190 INFO    ] 2026-10-18 21:39:08
[2026-10-18 21:39:08,438.438 INFO    ] 2026-10-18 21:39:08
[2026-10-18 21:39:08,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:39:08,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:39:08,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:39:08,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:39:08,995.995 INFO    ] time= 18/10/2026 21:39:08
[2026-10-18 21:39:09,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:39:09,020.020 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:39:09,152.152 INFO    ] No existing commands found in stream
[2026-10-18 21:39:14,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:39:14,174.174 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-18 21:39:17,693.693 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:39:17,696.696 INFO    ] Checking for system updates...
[2026-10-18 21:39:17,731.731 INFO    ] 200
[2026-10-18 21:39:17,734.734 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:39:17,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:39:17,789.789 INFO    ] No update needed
[2026-10-18 21:39:17,791.791 INFO    ] Checking for camera pi updates...
[2026-10-18 21:39:17,825.825 INFO    ] 200
[2026-10-18 21:39:17,827.827 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:39:17,868.868 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:39:27,883.883 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:39:27,919.919 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:39:27,929.929 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:39:27,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:39:27,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:39:27,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:39:29,983.983 INFO    ] ================================================
[2026-10-18 21:39:30,999.999 INFO    ] Launching Daemon at Sun Oct 18 21:39:29 IST 2026
[2026-10-18 21:39:30,010.010 INFO    ] ================================================
[2026-10-18 21:39:30,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:39:30
[2026-10-18 21:39:31,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:39:31,605.605 INFO    ] Initializing speech engine...
[2026-10-18 21:39:31,614.614 INFO    ] 2026-10-18 21:39:31
[2026-10-18 21:39:31,883.883 INFO    ] 2026-10-18 21:39:31
[2026-10-18 21:39:31,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:39:32,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:39:32,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:39:32,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:39:32,467.467 INFO    ] time= 18/10/2026 21:39:32
[2026-10-18 21:39:32,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:39:32,509.509 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:39:32,623.623 INFO    ] No existing commands found in stream
[2026-10-18 21:39:37,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:39:37,645.645 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-18 21:39:39,143.143 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:39:39,147.147 INFO    ] Checking for system updates...
[2026-10-18 21:39:39,183.183 INFO    ] 200
[2026-10-18 21:39:39,185.185 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:39:39,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:39:39,240.240 INFO    ] No update needed
[2026-10-18 21:39:39,243.243 INFO    ] Checking for camera pi updates...
[2026-10-18 21:39:39,277.277 INFO    ] 200
[2026-10-18 21:39:39,279.279 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:39:39,319.319 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:39:49,334.334 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:39:49,369.369 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:39:49,378.378 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:39:49,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:39:49,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:39:49,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:39:51,432.432 INFO    ] ================================================
[2026-10-18 21:39:51,447.447 INFO    ] Launching Daemon at Sun Oct 18 21:39:51 IST 2026
[2026-10-18 21:39:51,458.458 INFO    ] ================================================
[2026-10-18 21:39:52,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:39:52
[2026-10-18 21:39:52,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:39:52,913.913 INFO    ] Initializing speech engine...
[2026-10-18 21:39:52,922.922 INFO    ] 2026-10-18 21:39:52
[2026-10-18 21:39:53,172.172 INFO    ] 2026-10-18 21:39:53
[2026-10-18 21:39:53,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:39:53,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:39:53,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:39:53,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:39:53,724.724 INFO    ] time= 18/10/2026 21:39:53
[2026-10-18 21:39:53,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:39:53,749.749 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:39:53,884.884 INFO    ] No existing commands found in stream
[2026-10-18 21:39:58,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:39:58,913.913 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-18 21:40:00,069.069 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:40:00,071.071 INFO    ] Checking for system updates...
[2026-10-18 21:40:00,111.111 INFO    ] 200
[2026-10-18 21:40:00,113.113 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:40:00,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:40:00,174.174 INFO    ] No update needed
[2026-10-18 21:40:00,176.176 INFO    ] Checking for camera pi updates...
[2026-10-18 21:40:00,209.209 INFO    ] 200
[2026-10-18 21:40:00,212.212 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:40:00,253.253 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:40:10,269.269 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:40:10,304.304 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:40:10,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:40:10,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:40:10,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:40:10,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:40:12,367.367 INFO    ] ================================================
[2026-10-18 21:40:12,382.382 INFO    ] Launching Daemon at Sun Oct 18 21:40:12 IST 2026
[2026-10-18 21:40:12,392.392 INFO    ] ================================================
[2026-10-18 21:40:12,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:40:12
[2026-10-18 21:40:13,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:40:13,814.814 INFO    ] Initializing speech engine...
[2026-10-18 21:40:13,823.823 INFO    ] 2026-10-18 21:40:13
[2026-10-18 21:40:14,072.072 INFO    ] 2026-10-18 21:40:14
[2026-10-18 21:40:14,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:40:14,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:40:14,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:40:14,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:40:14,636.636 INFO    ] time= 18/10/2026 21:40:14
[2026-10-18 21:40:14,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:40:14,657.657 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:40:14,797.797 INFO    ] No existing commands found in stream
[2026-10-18 21:40:19,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:40:19,818.818 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-18 21:40:22,121.121 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:40:22,124.124 INFO    ] Checking for system updates...
[2026-10-18 21:40:22,160.160 INFO    ] 200
[2026-10-18 21:40:22,163.163 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:40:22,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:40:22,218.218 INFO    ] No update needed
[2026-10-18 21:40:22,221.221 INFO    ] Checking for camera pi updates...
[2026-10-18 21:40:22,256.256 INFO    ] 200
[2026-10-18 21:40:22,259.259 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:40:22,305.305 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:40:32,321.321 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:40:32,363.363 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:40:32,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:40:32,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:40:32,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:40:32,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:40:34,435.435 INFO    ] ================================================
[2026-10-18 21:40:34,450.450 INFO    ] Launching Daemon at Sun Oct 18 21:40:34 IST 2026
[2026-10-18 21:40:34,461.461 INFO    ] ================================================
[2026-10-18 21:40:35,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:40:35
[2026-10-18 21:40:35,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:40:36,023.023 INFO    ] Initializing speech engine...
[2026-10-18 21:40:36,030.030 INFO    ] 2026-10-18 21:40:36
[2026-10-18 21:40:36,306.306 INFO    ] 2026-10-18 21:40:36
[2026-10-18 21:40:36,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:40:36,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:40:36,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:40:36,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:40:36,808.808 INFO    ] time= 18/10/2026 21:40:36
[2026-10-18 21:40:36,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:40:36,880.880 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:40:37,031.031 INFO    ] No existing commands found in stream
[2026-10-18 21:40:42,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:40:42,054.054 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-18 21:40:44,497.497 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:40:44,500.500 INFO    ] Checking for system updates...
[2026-10-18 21:40:44,537.537 INFO    ] 200
[2026-10-18 21:40:44,540.540 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:40:44,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:40:44,598.598 INFO    ] No update needed
[2026-10-18 21:40:44,601.601 INFO    ] Checking for camera pi updates...
[2026-10-18 21:40:44,635.635 INFO    ] 200
[2026-10-18 21:40:44,638.638 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:40:44,684.684 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:40:54,699.699 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:40:54,739.739 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:40:54,750.750 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:40:54,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:40:54,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:40:54,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:40:56,807.807 INFO    ] ================================================
[2026-10-18 21:40:56,822.822 INFO    ] Launching Daemon at Sun Oct 18 21:40:56 IST 2026
[2026-10-18 21:40:56,833.833 INFO    ] ================================================
[2026-10-18 21:40:57,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:40:57
[2026-10-18 21:40:58,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:40:58,297.297 INFO    ] Initializing speech engine...
[2026-10-18 21:40:58,322.322 INFO    ] 2026-10-18 21:40:58
[2026-10-18 21:40:58,601.601 INFO    ] 2026-10-18 21:40:58
[2026-10-18 21:40:58,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:40:58,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:40:58,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:40:59,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:40:59,067.067 INFO    ] time= 18/10/2026 21:40:59
[2026-10-18 21:40:59,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:40:59,122.122 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:40:59,256.256 INFO    ] No existing commands found in stream
[2026-10-18 21:41:04,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:41:04,270.270 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-18 21:41:04,798.798 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:41:04,801.801 INFO    ] Checking for system updates...
[2026-10-18 21:41:04,836.836 INFO    ] 200
[2026-10-18 21:41:04,839.839 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:41:04,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:41:04,901.901 INFO    ] No update needed
[2026-10-18 21:41:04,904.904 INFO    ] Checking for camera pi updates...
[2026-10-18 21:41:04,939.939 INFO    ] 200
[2026-10-18 21:41:04,942.942 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:41:04,984.984 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:41:15,000.000 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:41:15,042.042 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:41:15,054.054 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:41:15,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:41:15,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:41:15,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:41:17,110.110 INFO    ] ================================================
[2026-10-18 21:41:17,125.125 INFO    ] Launching Daemon at Sun Oct 18 21:41:17 IST 2026
[2026-10-18 21:41:17,135.135 INFO    ] ================================================
[2026-10-18 21:41:17,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:41:17
[2026-10-18 21:41:18,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:41:18,598.598 INFO    ] Initializing speech engine...
[2026-10-18 21:41:18,607.607 INFO    ] 2026-10-18 21:41:18
[2026-10-18 21:41:18,870.870 INFO    ] 2026-10-18 21:41:18
[2026-10-18 21:41:18,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:41:19,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:41:19,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:41:19,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:41:19,412.412 INFO    ] time= 18/10/2026 21:41:19
[2026-10-18 21:41:19,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:41:19,438.438 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:41:19,568.568 INFO    ] No existing commands found in stream
[2026-10-18 21:41:24,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:41:24,582.582 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-18 21:41:27,652.652 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:41:27,655.655 INFO    ] Checking for system updates...
[2026-10-18 21:41:27,691.691 INFO    ] 200
[2026-10-18 21:41:27,693.693 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:41:27,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:41:27,748.748 INFO    ] No update needed
[2026-10-18 21:41:27,751.751 INFO    ] Checking for camera pi updates...
[2026-10-18 21:41:27,784.784 INFO    ] 200
[2026-10-18 21:41:27,786.786 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:41:27,826.826 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:41:37,839.839 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:41:37,874.874 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:41:37,884.884 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:41:37,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:41:37,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:41:37,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:41:39,939.939 INFO    ] ================================================
[2026-10-18 21:41:39,954.954 INFO    ] Launching Daemon at Sun Oct 18 21:41:39 IST 2026
[2026-10-18 21:41:39,965.965 INFO    ] ================================================
[2026-10-18 21:41:40,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:41:40
[2026-10-18 21:41:41,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:41:41,631.631 INFO    ] Initializing speech engine...
[2026-10-18 21:41:41,639.639 INFO    ] 2026-10-18 21:41:41
[2026-10-18 21:41:41,920.920 INFO    ] 2026-10-18 21:41:41
[2026-10-18 21:41:41,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:41:42,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:41:42,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:41:42,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:41:42,487.487 INFO    ] time= 18/10/2026 21:41:42
[2026-10-18 21:41:42,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:41:42,536.536 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:41:42,664.664 INFO    ] No existing commands found in stream
[2026-10-18 21:41:47,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:41:47,700.700 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-18 21:41:48,291.291 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:41:48,294.294 INFO    ] Checking for system updates...
[2026-10-18 21:41:48,331.331 INFO    ] 200
[2026-10-18 21:41:48,334.334 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:41:48,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:41:48,397.397 INFO    ] No update needed
[2026-10-18 21:41:48,400.400 INFO    ] Checking for camera pi updates...
[2026-10-18 21:41:48,434.434 INFO    ] 200
[2026-10-18 21:41:48,437.437 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:41:48,479.479 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:41:58,495.495 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:41:58,535.535 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:41:58,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:41:58,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:41:58,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:41:58,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:42:00,602.602 INFO    ] ================================================
[2026-10-18 21:42:00,628.628 INFO    ] Launching Daemon at Sun Oct 18 21:42:00 IST 2026
[2026-10-18 21:42:00,639.639 INFO    ] ================================================
[2026-10-18 21:42:01,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:42:01
[2026-10-18 21:42:02,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:42:02,311.311 INFO    ] Initializing speech engine...
[2026-10-18 21:42:02,325.325 INFO    ] 2026-10-18 21:42:02
[2026-10-18 21:42:02,602.602 INFO    ] 2026-10-18 21:42:02
[2026-10-18 21:42:02,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:42:02,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:42:02,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:42:03,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:42:03,070.070 INFO    ] time= 18/10/2026 21:42:03
[2026-10-18 21:42:03,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:42:03,085.085 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:42:03,185.185 INFO    ] No existing commands found in stream
[2026-10-18 21:42:08,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:42:08,220.220 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-18 21:42:12,372.372 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:42:12,375.375 INFO    ] Checking for system updates...
[2026-10-18 21:42:12,414.414 INFO    ] 200
[2026-10-18 21:42:12,417.417 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:42:12,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:42:12,471.471 INFO    ] No update needed
[2026-10-18 21:42:12,474.474 INFO    ] Checking for camera pi updates...
[2026-10-18 21:42:12,507.507 INFO    ] 200
[2026-10-18 21:42:12,509.509 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:42:12,554.554 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:42:22,569.569 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:42:22,604.604 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:42:22,613.613 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:42:22,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:42:22,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:42:22,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:42:24,666.666 INFO    ] ================================================
[2026-10-18 21:42:24,681.681 INFO    ] Launching Daemon at Sun Oct 18 21:42:24 IST 2026
[2026-10-18 21:42:24,692.692 INFO    ] ================================================
[2026-10-18 21:42:25,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:42:25
[2026-10-18 21:42:26,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:42:26,306.306 INFO    ] Initializing speech engine...
[2026-10-18 21:42:26,326.326 INFO    ] 2026-10-18 21:42:26
[2026-10-18 21:42:26,593.593 INFO    ] 2026-10-18 21:42:26
[2026-10-18 21:42:26,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:42:26,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:42:26,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:42:27,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:42:27,094.094 INFO    ] time= 18/10/2026 21:42:27
[2026-10-18 21:42:27,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:42:27,175.175 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:42:27,317.317 INFO    ] No existing commands found in stream
[2026-10-18 21:42:32,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:42:32,342.342 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-18 21:42:35,972.972 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:42:35,975.975 INFO    ] Checking for system updates...
[2026-10-18 21:42:36,012.012 INFO    ] 200
[2026-10-18 21:42:36,015.015 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:42:36,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:42:36,071.071 INFO    ] No update needed
[2026-10-18 21:42:36,074.074 INFO    ] Checking for camera pi updates...
[2026-10-18 21:42:36,108.108 INFO    ] 200
[2026-10-18 21:42:36,111.111 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:42:36,153.153 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:42:46,171.171 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:42:46,213.213 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:42:46,223.223 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:42:46,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:42:46,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:42:46,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:42:48,277.277 INFO    ] ================================================
[2026-10-18 21:42:48,292.292 INFO    ] Launching Daemon at Sun Oct 18 21:42:48 IST 2026
[2026-10-18 21:42:48,303.303 INFO    ] ================================================
[2026-10-18 21:42:48,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:42:48
[2026-10-18 21:42:49,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:42:49,735.735 INFO    ] Initializing speech engine...
[2026-10-18 21:42:49,746.746 INFO    ] 2026-10-18 21:42:49
[2026-10-18 21:42:49,993.993 INFO    ] 2026-10-18 21:42:49
[2026-10-18 21:42:50,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:42:50,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:42:50,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:42:50,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:42:50,411.411 INFO    ] time= 18/10/2026 21:42:50
[2026-10-18 21:42:50,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:42:50,448.448 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:42:50,583.583 INFO    ] No existing commands found in stream
[2026-10-18 21:42:55,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:42:55,616.616 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-18 21:42:58,531.531 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:42:58,534.534 INFO    ] Checking for system updates...
[2026-10-18 21:42:58,570.570 INFO    ] 200
[2026-10-18 21:42:58,573.573 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:42:58,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:42:58,629.629 INFO    ] No update needed
[2026-10-18 21:42:58,632.632 INFO    ] Checking for camera pi updates...
[2026-10-18 21:42:58,666.666 INFO    ] 200
[2026-10-18 21:42:58,669.669 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:42:58,711.711 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:43:08,727.727 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:43:08,767.767 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:43:08,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:43:08,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:43:08,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:43:08,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:43:10,834.834 INFO    ] ================================================
[2026-10-18 21:43:10,850.850 INFO    ] Launching Daemon at Sun Oct 18 21:43:10 IST 2026
[2026-10-18 21:43:10,861.861 INFO    ] ================================================
[2026-10-18 21:43:11,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:43:11
[2026-10-18 21:43:12,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:43:12,288.288 INFO    ] Initializing speech engine...
[2026-10-18 21:43:12,306.306 INFO    ] 2026-10-18 21:43:12
[2026-10-18 21:43:12,581.581 INFO    ] 2026-10-18 21:43:12
[2026-10-18 21:43:12,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:43:12,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:43:12,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:43:12,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:43:13,003.003 INFO    ] time= 18/10/2026 21:43:12
[2026-10-18 21:43:13,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:43:13,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:43:13,100.100 INFO    ] No existing commands found in stream
[2026-10-18 21:43:18,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:43:18,138.138 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-18 21:43:21,983.983 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:43:21,986.986 INFO    ] Checking for system updates...
[2026-10-18 21:43:22,021.021 INFO    ] 200
[2026-10-18 21:43:22,023.023 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:43:22,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:43:22,084.084 INFO    ] No update needed
[2026-10-18 21:43:22,086.086 INFO    ] Checking for camera pi updates...
[2026-10-18 21:43:22,119.119 INFO    ] 200
[2026-10-18 21:43:22,122.122 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:43:22,162.162 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:43:32,178.178 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:43:32,214.214 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:43:32,225.225 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:43:32,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:43:32,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:43:32,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:43:34,280.280 INFO    ] ================================================
[2026-10-18 21:43:34,296.296 INFO    ] Launching Daemon at Sun Oct 18 21:43:34 IST 2026
[2026-10-18 21:43:34,307.307 INFO    ] ================================================
[2026-10-18 21:43:34,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:43:34
[2026-10-18 21:43:35,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:43:35,802.802 INFO    ] Initializing speech engine...
[2026-10-18 21:43:35,812.812 INFO    ] 2026-10-18 21:43:35
[2026-10-18 21:43:36,056.056 INFO    ] 2026-10-18 21:43:36
[2026-10-18 21:43:36,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:43:36,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:43:36,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:43:36,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:43:36,547.547 INFO    ] time= 18/10/2026 21:43:36
[2026-10-18 21:43:36,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:43:36,622.622 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:43:36,746.746 INFO    ] No existing commands found in stream
[2026-10-18 21:43:41,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:43:41,774.774 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-18 21:43:46,177.177 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:43:46,180.180 INFO    ] Checking for system updates...
[2026-10-18 21:43:46,218.218 INFO    ] 200
[2026-10-18 21:43:46,221.221 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:43:46,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:43:46,278.278 INFO    ] No update needed
[2026-10-18 21:43:46,281.281 INFO    ] Checking for camera pi updates...
[2026-10-18 21:43:46,315.315 INFO    ] 200
[2026-10-18 21:43:46,318.318 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:43:46,359.359 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:43:56,376.376 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:43:56,416.416 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:43:56,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:43:56,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:43:56,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:43:56,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:43:58,483.483 INFO    ] ================================================
[2026-10-18 21:43:58,499.499 INFO    ] Launching Daemon at Sun Oct 18 21:43:58 IST 2026
[2026-10-18 21:43:58,510.510 INFO    ] ================================================
[2026-10-18 21:43:59,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:43:59
[2026-10-18 21:43:59,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:43:59,928.928 INFO    ] Initializing speech engine...
[2026-10-18 21:43:59,948.948 INFO    ] 2026-10-18 21:43:59
[2026-10-18 21:44:00,208.208 INFO    ] 2026-10-18 21:44:00
[2026-10-18 21:44:00,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:44:00,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:44:00,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:44:00,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:44:00,731.731 INFO    ] time= 18/10/2026 21:44:00
[2026-10-18 21:44:00,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:44:00,777.777 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:44:00,896.896 INFO    ] No existing commands found in stream
[2026-10-18 21:44:05,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:44:05,924.924 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-18 21:44:07,942.942 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:44:07,944.944 INFO    ] Checking for system updates...
[2026-10-18 21:44:07,980.980 INFO    ] 200
[2026-10-18 21:44:07,982.982 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:44:08,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:44:08,040.040 INFO    ] No update needed
[2026-10-18 21:44:08,043.043 INFO    ] Checking for camera pi updates...
[2026-10-18 21:44:08,076.076 INFO    ] 200
[2026-10-18 21:44:08,078.078 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:44:08,119.119 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:44:18,134.134 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:44:18,169.169 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:44:18,179.179 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:44:18,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:44:18,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:44:18,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:44:20,232.232 INFO    ] ================================================
[2026-10-18 21:44:20,248.248 INFO    ] Launching Daemon at Sun Oct 18 21:44:20 IST 2026
[2026-10-18 21:44:20,259.259 INFO    ] ================================================
[2026-10-18 21:44:20,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:44:20
[2026-10-18 21:44:21,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:44:21,864.864 INFO    ] Initializing speech engine...
[2026-10-18 21:44:21,873.873 INFO    ] 2026-10-18 21:44:21
[2026-10-18 21:44:22,148.148 INFO    ] 2026-10-18 21:44:22
[2026-10-18 21:44:22,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:44:22,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:44:22,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:44:22,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:44:22,712.712 INFO    ] time= 18/10/2026 21:44:22
[2026-10-18 21:44:22,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:44:22,748.748 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:44:22,879.879 INFO    ] No existing commands found in stream
[2026-10-18 21:44:27,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:44:27,913.913 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-18 21:44:30,163.163 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:44:30,166.166 INFO    ] Checking for system updates...
[2026-10-18 21:44:30,208.208 INFO    ] 200
[2026-10-18 21:44:30,211.211 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:44:30,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:44:30,267.267 INFO    ] No update needed
[2026-10-18 21:44:30,270.270 INFO    ] Checking for camera pi updates...
[2026-10-18 21:44:30,304.304 INFO    ] 200
[2026-10-18 21:44:30,307.307 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:44:30,353.353 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:44:40,370.370 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:44:40,409.409 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:44:40,420.420 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:44:40,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:44:40,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:44:40,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:44:42,476.476 INFO    ] ================================================
[2026-10-18 21:44:42,491.491 INFO    ] Launching Daemon at Sun Oct 18 21:44:42 IST 2026
[2026-10-18 21:44:42,503.503 INFO    ] ================================================
[2026-10-18 21:44:43,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:44:43
[2026-10-18 21:44:43,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:44:43,905.905 INFO    ] Initializing speech engine...
[2026-10-18 21:44:43,919.919 INFO    ] 2026-10-18 21:44:43
[2026-10-18 21:44:44,186.186 INFO    ] 2026-10-18 21:44:44
[2026-10-18 21:44:44,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:44:44,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:44:44,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:44:44,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:44:44,730.730 INFO    ] time= 18/10/2026 21:44:44
[2026-10-18 21:44:44,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:44:44,764.764 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:44:44,913.913 INFO    ] No existing commands found in stream
[2026-10-18 21:44:49,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:44:49,931.931 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-18 21:44:53,041.041 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:44:53,043.043 INFO    ] Checking for system updates...
[2026-10-18 21:44:53,079.079 INFO    ] 200
[2026-10-18 21:44:53,081.081 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:44:53,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:44:53,136.136 INFO    ] No update needed
[2026-10-18 21:44:53,139.139 INFO    ] Checking for camera pi updates...
[2026-10-18 21:44:53,172.172 INFO    ] 200
[2026-10-18 21:44:53,174.174 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:44:53,215.215 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:45:03,228.228 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:45:03,267.267 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:45:03,278.278 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:45:03,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:45:03,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:45:03,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:45:05,334.334 INFO    ] ================================================
[2026-10-18 21:45:05,350.350 INFO    ] Launching Daemon at Sun Oct 18 21:45:05 IST 2026
[2026-10-18 21:45:05,361.361 INFO    ] ================================================
[2026-10-18 21:45:05,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:45:05
[2026-10-18 21:45:06,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:45:06,835.835 INFO    ] Initializing speech engine...
[2026-10-18 21:45:06,851.851 INFO    ] 2026-10-18 21:45:06
[2026-10-18 21:45:07,117.117 INFO    ] 2026-10-18 21:45:07
[2026-10-18 21:45:07,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:45:07,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:45:07,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:45:07,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:45:07,656.656 INFO    ] time= 18/10/2026 21:45:07
[2026-10-18 21:45:07,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:45:07,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:45:07,806.806 INFO    ] No existing commands found in stream
[2026-10-18 21:45:12,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:45:12,822.822 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-18 21:45:14,024.024 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:45:14,027.027 INFO    ] Checking for system updates...
[2026-10-18 21:45:14,066.066 INFO    ] 200
[2026-10-18 21:45:14,068.068 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:45:14,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:45:14,123.123 INFO    ] No update needed
[2026-10-18 21:45:14,125.125 INFO    ] Checking for camera pi updates...
[2026-10-18 21:45:14,162.162 INFO    ] 200
[2026-10-18 21:45:14,164.164 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:45:14,205.205 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:45:24,222.222 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d2f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:45:24,262.262 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:45:24,273.273 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:45:24,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:45:24,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:45:24,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:45:26,328.328 INFO    ] ================================================
[2026-10-18 21:45:26,344.344 INFO    ] Launching Daemon at Sun Oct 18 21:45:26 IST 2026
[2026-10-18 21:45:26,355.355 INFO    ] ================================================
[2026-10-18 21:45:27,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:45:26
[2026-10-18 21:45:27,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:45:27,894.894 INFO    ] Initializing speech engine...
[2026-10-18 21:45:27,901.901 INFO    ] 2026-10-18 21:45:27
[2026-10-18 21:45:28,154.154 INFO    ] 2026-10-18 21:45:28
[2026-10-18 21:45:28,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:45:28,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:45:28,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:45:28,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:45:28,682.682 INFO    ] time= 18/10/2026 21:45:28
[2026-10-18 21:45:28,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:45:28,716.716 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:45:28,840.840 INFO    ] No existing commands found in stream
[2026-10-18 21:45:33,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:45:33,873.873 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-18 21:45:35,018.018 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:45:35,020.020 INFO    ] Checking for system updates...
[2026-10-18 21:45:35,056.056 INFO    ] 200
[2026-10-18 21:45:35,059.059 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:45:35,111.111 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:45:35,113.113 INFO    ] No update needed
[2026-10-18 21:45:35,116.116 INFO    ] Checking for camera pi updates...
[2026-10-18 21:45:35,149.149 INFO    ] 200
[2026-10-18 21:45:35,151.151 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:45:35,196.196 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:45:45,210.210 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:45:45,246.246 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:45:45,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:45:45,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:45:45,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:45:45,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:45:47,311.311 INFO    ] ================================================
[2026-10-18 21:45:47,326.326 INFO    ] Launching Daemon at Sun Oct 18 21:45:47 IST 2026
[2026-10-18 21:45:47,338.338 INFO    ] ================================================
[2026-10-18 21:45:47,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:45:47
[2026-10-18 21:45:48,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:45:48,747.747 INFO    ] Initializing speech engine...
[2026-10-18 21:45:48,760.760 INFO    ] 2026-10-18 21:45:48
[2026-10-18 21:45:49,029.029 INFO    ] 2026-10-18 21:45:49
[2026-10-18 21:45:49,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:45:49,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:45:49,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:45:49,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:45:49,608.608 INFO    ] time= 18/10/2026 21:45:49
[2026-10-18 21:45:49,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:45:49,637.637 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:45:49,770.770 INFO    ] No existing commands found in stream
[2026-10-18 21:45:54,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:45:54,789.789 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-18 21:45:57,946.946 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:45:57,949.949 INFO    ] Checking for system updates...
[2026-10-18 21:45:57,987.987 INFO    ] 200
[2026-10-18 21:45:57,990.990 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:45:58,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:45:58,052.052 INFO    ] No update needed
[2026-10-18 21:45:58,054.054 INFO    ] Checking for camera pi updates...
[2026-10-18 21:45:58,092.092 INFO    ] 200
[2026-10-18 21:45:58,095.095 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:45:58,141.141 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:46:08,157.157 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:46:08,196.196 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:46:08,207.207 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:46:08,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:46:08,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:46:08,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:46:10,264.264 INFO    ] ================================================
[2026-10-18 21:46:10,279.279 INFO    ] Launching Daemon at Sun Oct 18 21:46:10 IST 2026
[2026-10-18 21:46:10,291.291 INFO    ] ================================================
[2026-10-18 21:46:10,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:46:10
[2026-10-18 21:46:11,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:46:11,718.718 INFO    ] Initializing speech engine...
[2026-10-18 21:46:11,739.739 INFO    ] 2026-10-18 21:46:11
[2026-10-18 21:46:11,990.990 INFO    ] 2026-10-18 21:46:11
[2026-10-18 21:46:12,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:46:12,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:46:12,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:46:12,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:46:12,463.463 INFO    ] time= 18/10/2026 21:46:12
[2026-10-18 21:46:12,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:46:12,556.556 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:46:12,682.682 INFO    ] No existing commands found in stream
[2026-10-18 21:46:17,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:46:17,712.712 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-18 21:46:18,496.496 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:46:18,499.499 INFO    ] Checking for system updates...
[2026-10-18 21:46:18,538.538 INFO    ] 200
[2026-10-18 21:46:18,540.540 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 21:46:18,543.543 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-18 21:46:18,546.546 INFO    ] Checking for camera pi updates...
[2026-10-18 21:46:18,586.586 INFO    ] 200
[2026-10-18 21:46:18,589.589 INFO    ] {"state": "STATE_HEALTH_CHECK", "status": true, "msg": "Status of machine"}
[2026-10-18 21:46:18,591.591 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-18 21:46:18,594.594 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:46:18,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:46:18,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:46:18,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:46:20,650.650 INFO    ] ================================================
[2026-10-18 21:46:20,666.666 INFO    ] Launching Daemon at Sun Oct 18 21:46:20 IST 2026
[2026-10-18 21:46:20,678.678 INFO    ] ================================================
[2026-10-18 21:46:21,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:46:21
[2026-10-18 21:46:21,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:46:22,106.106 INFO    ] Initializing speech engine...
[2026-10-18 21:46:22,115.115 INFO    ] 2026-10-18 21:46:22
[2026-10-18 21:46:22,367.367 INFO    ] 2026-10-18 21:46:22
[2026-10-18 21:46:22,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:46:22,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:46:22,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:46:22,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:46:22,886.886 INFO    ] time= 18/10/2026 21:46:22
[2026-10-18 21:46:22,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:46:22,948.948 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:46:23,092.092 INFO    ] No existing commands found in stream
[2026-10-18 21:46:28,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:46:28,113.113 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-18 21:46:30,394.394 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:46:30,397.397 INFO    ] Checking for system updates...
[2026-10-18 21:46:30,437.437 INFO    ] 200
[2026-10-18 21:46:30,439.439 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:46:30,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:46:30,501.501 INFO    ] No update needed
[2026-10-18 21:46:30,503.503 INFO    ] Checking for camera pi updates...
[2026-10-18 21:46:30,537.537 INFO    ] 200
[2026-10-18 21:46:30,540.540 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:46:30,580.580 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:46:40,595.595 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:46:40,630.630 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:46:40,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:46:40,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:46:40,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:46:40,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:46:42,694.694 INFO    ] ================================================
[2026-10-18 21:46:42,710.710 INFO    ] Launching Daemon at Sun Oct 18 21:46:42 IST 2026
[2026-10-18 21:46:42,721.721 INFO    ] ================================================
[2026-10-18 21:46:43,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:46:43
[2026-10-18 21:46:43,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:46:44,148.148 INFO    ] Initializing speech engine...
[2026-10-18 21:46:44,161.161 INFO    ] 2026-10-18 21:46:44
[2026-10-18 21:46:44,417.417 INFO    ] 2026-10-18 21:46:44
[2026-10-18 21:46:44,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:46:44,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:46:44,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:46:44,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:46:44,984.984 INFO    ] time= 18/10/2026 21:46:44
[2026-10-18 21:46:45,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:46:45,024.024 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:46:45,166.166 INFO    ] No existing commands found in stream
[2026-10-18 21:46:50,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:46:50,201.201 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-18 21:46:51,248.248 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:46:51,251.251 INFO    ] Checking for system updates...
[2026-10-18 21:46:51,289.289 INFO    ] 200
[2026-10-18 21:46:51,292.292 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:46:51,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:46:51,348.348 INFO    ] No update needed
[2026-10-18 21:46:51,351.351 INFO    ] Checking for camera pi updates...
[2026-10-18 21:46:51,385.385 INFO    ] 200
[2026-10-18 21:46:51,388.388 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:46:51,434.434 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:47:01,449.449 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db4150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:47:01,492.492 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:47:01,503.503 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:47:01,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:47:01,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:47:01,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:47:03,560.560 INFO    ] ================================================
[2026-10-18 21:47:03,577.577 INFO    ] Launching Daemon at Sun Oct 18 21:47:03 IST 2026
[2026-10-18 21:47:03,589.589 INFO    ] ================================================
[2026-10-18 21:47:04,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:47:04
[2026-10-18 21:47:04,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:47:05,010.010 INFO    ] Initializing speech engine...
[2026-10-18 21:47:05,019.019 INFO    ] 2026-10-18 21:47:05
[2026-10-18 21:47:05,279.279 INFO    ] 2026-10-18 21:47:05
[2026-10-18 21:47:05,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:47:05,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:47:05,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:47:05,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:47:05,731.731 INFO    ] time= 18/10/2026 21:47:05
[2026-10-18 21:47:05,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:47:05,808.808 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:47:05,936.936 INFO    ] No existing commands found in stream
[2026-10-18 21:47:10,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:47:10,952.952 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-18 21:47:11,503.503 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:47:11,506.506 INFO    ] Checking for system updates...
[2026-10-18 21:47:11,544.544 INFO    ] 200
[2026-10-18 21:47:11,547.547 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:47:11,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:47:11,602.602 INFO    ] No update needed
[2026-10-18 21:47:11,605.605 INFO    ] Checking for camera pi updates...
[2026-10-18 21:47:11,642.642 INFO    ] 200
[2026-10-18 21:47:11,645.645 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:47:11,685.685 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:47:21,699.699 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:47:21,734.734 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:47:21,744.744 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:47:21,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:47:21,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:47:21,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:47:23,797.797 INFO    ] ================================================
[2026-10-18 21:47:23,814.814 INFO    ] Launching Daemon at Sun Oct 18 21:47:23 IST 2026
[2026-10-18 21:47:23,824.824 INFO    ] ================================================
[2026-10-18 21:47:24,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:47:24
[2026-10-18 21:47:24,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:47:25,265.265 INFO    ] Initializing speech engine...
[2026-10-18 21:47:25,278.278 INFO    ] 2026-10-18 21:47:25
[2026-10-18 21:47:25,529.529 INFO    ] 2026-10-18 21:47:25
[2026-10-18 21:47:25,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:47:25,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:47:25,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:47:25,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:47:26,008.008 INFO    ] time= 18/10/2026 21:47:25
[2026-10-18 21:47:26,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:47:26,102.102 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:47:26,243.243 INFO    ] No existing commands found in stream
[2026-10-18 21:47:31,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:47:31,268.268 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-18 21:47:32,301.301 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:47:32,304.304 INFO    ] Checking for system updates...
[2026-10-18 21:47:32,359.359 INFO    ] 200
[2026-10-18 21:47:32,361.361 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:47:32,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:47:32,438.438 INFO    ] No update needed
[2026-10-18 21:47:32,441.441 INFO    ] Checking for camera pi updates...
[2026-10-18 21:47:32,477.477 INFO    ] 200
[2026-10-18 21:47:32,480.480 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:47:32,520.520 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:47:42,536.536 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:47:42,573.573 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:47:42,583.583 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:47:42,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:47:42,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:47:42,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:47:44,645.645 INFO    ] ================================================
[2026-10-18 21:47:44,662.662 INFO    ] Launching Daemon at Sun Oct 18 21:47:44 IST 2026
[2026-10-18 21:47:44,674.674 INFO    ] ================================================
[2026-10-18 21:47:45,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:47:45
[2026-10-18 21:47:45,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:47:46,193.193 INFO    ] Initializing speech engine...
[2026-10-18 21:47:46,203.203 INFO    ] 2026-10-18 21:47:46
[2026-10-18 21:47:46,459.459 INFO    ] 2026-10-18 21:47:46
[2026-10-18 21:47:46,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:47:46,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:47:46,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:47:46,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:47:47,027.027 INFO    ] time= 18/10/2026 21:47:46
[2026-10-18 21:47:47,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:47:47,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:47:47,209.209 INFO    ] No existing commands found in stream
[2026-10-18 21:47:52,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:47:52,227.227 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-18 21:47:53,820.820 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:47:53,823.823 INFO    ] Checking for system updates...
[2026-10-18 21:47:53,863.863 INFO    ] 200
[2026-10-18 21:47:53,865.865 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:47:53,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:47:53,927.927 INFO    ] No update needed
[2026-10-18 21:47:53,930.930 INFO    ] Checking for camera pi updates...
[2026-10-18 21:47:53,963.963 INFO    ] 200
[2026-10-18 21:47:53,966.966 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:47:54,012.012 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:48:04,027.027 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:48:04,063.063 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:48:04,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:48:04,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:48:04,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:48:04,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:48:06,128.128 INFO    ] ================================================
[2026-10-18 21:48:06,144.144 INFO    ] Launching Daemon at Sun Oct 18 21:48:06 IST 2026
[2026-10-18 21:48:06,155.155 INFO    ] ================================================
[2026-10-18 21:48:06,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:48:06
[2026-10-18 21:48:07,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:48:07,629.629 INFO    ] Initializing speech engine...
[2026-10-18 21:48:07,635.635 INFO    ] 2026-10-18 21:48:07
[2026-10-18 21:48:07,899.899 INFO    ] 2026-10-18 21:48:07
[2026-10-18 21:48:07,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:48:08,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:48:08,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:48:08,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:48:08,446.446 INFO    ] time= 18/10/2026 21:48:08
[2026-10-18 21:48:08,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:48:08,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:48:08,648.648 INFO    ] No existing commands found in stream
[2026-10-18 21:48:13,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:48:13,681.681 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-18 21:48:17,278.278 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:48:17,280.280 INFO    ] Checking for system updates...
[2026-10-18 21:48:17,316.316 INFO    ] 200
[2026-10-18 21:48:17,319.319 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:48:17,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:48:17,380.380 INFO    ] No update needed
[2026-10-18 21:48:17,382.382 INFO    ] Checking for camera pi updates...
[2026-10-18 21:48:17,420.420 INFO    ] 200
[2026-10-18 21:48:17,422.422 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:48:17,469.469 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:48:27,480.480 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d70150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:48:27,514.514 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:48:27,524.524 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:48:27,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:48:27,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:48:27,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:48:29,577.577 INFO    ] ================================================
[2026-10-18 21:48:29,593.593 INFO    ] Launching Daemon at Sun Oct 18 21:48:29 IST 2026
[2026-10-18 21:48:29,604.604 INFO    ] ================================================
[2026-10-18 21:48:30,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:48:30
[2026-10-18 21:48:30,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:48:31,019.019 INFO    ] Initializing speech engine...
[2026-10-18 21:48:31,032.032 INFO    ] 2026-10-18 21:48:31
[2026-10-18 21:48:31,312.312 INFO    ] 2026-10-18 21:48:31
[2026-10-18 21:48:31,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:48:31,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:48:31,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:48:31,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:48:31,785.785 INFO    ] time= 18/10/2026 21:48:31
[2026-10-18 21:48:31,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:48:31,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:48:31,970.970 INFO    ] No existing commands found in stream
[2026-10-18 21:48:36,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:48:36,997.997 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-18 21:48:38,474.474 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:48:38,476.476 INFO    ] Checking for system updates...
[2026-10-18 21:48:38,520.520 INFO    ] 200
[2026-10-18 21:48:38,523.523 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:48:38,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:48:38,584.584 INFO    ] No update needed
[2026-10-18 21:48:38,587.587 INFO    ] Checking for camera pi updates...
[2026-10-18 21:48:38,623.623 INFO    ] 200
[2026-10-18 21:48:38,626.626 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:48:38,667.667 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:48:48,682.682 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:48:48,717.717 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:48:48,727.727 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:48:48,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:48:48,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:48:48,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:48:50,780.780 INFO    ] ================================================
[2026-10-18 21:48:50,796.796 INFO    ] Launching Daemon at Sun Oct 18 21:48:50 IST 2026
[2026-10-18 21:48:50,808.808 INFO    ] ================================================
[2026-10-18 21:48:51,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:48:51
[2026-10-18 21:48:52,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:48:52,294.294 INFO    ] Initializing speech engine...
[2026-10-18 21:48:52,301.301 INFO    ] 2026-10-18 21:48:52
[2026-10-18 21:48:52,563.563 INFO    ] 2026-10-18 21:48:52
[2026-10-18 21:48:52,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:48:52,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:48:52,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:48:53,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:48:53,108.108 INFO    ] time= 18/10/2026 21:48:53
[2026-10-18 21:48:53,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:48:53,133.133 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:48:53,265.265 INFO    ] No existing commands found in stream
[2026-10-18 21:48:58,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:48:58,283.283 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-18 21:49:00,815.815 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:49:00,818.818 INFO    ] Checking for system updates...
[2026-10-18 21:49:00,856.856 INFO    ] 200
[2026-10-18 21:49:00,859.859 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:49:00,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:49:00,914.914 INFO    ] No update needed
[2026-10-18 21:49:00,917.917 INFO    ] Checking for camera pi updates...
[2026-10-18 21:49:00,955.955 INFO    ] 200
[2026-10-18 21:49:00,958.958 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:49:01,004.004 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:49:11,019.019 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:49:11,055.055 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:49:11,065.065 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:49:11,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:49:11,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:49:11,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:49:13,120.120 INFO    ] ================================================
[2026-10-18 21:49:13,136.136 INFO    ] Launching Daemon at Sun Oct 18 21:49:13 IST 2026
[2026-10-18 21:49:13,148.148 INFO    ] ================================================
[2026-10-18 21:49:13,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:49:13
[2026-10-18 21:49:14,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:49:14,589.589 INFO    ] Initializing speech engine...
[2026-10-18 21:49:14,596.596 INFO    ] 2026-10-18 21:49:14
[2026-10-18 21:49:14,896.896 INFO    ] 2026-10-18 21:49:14
[2026-10-18 21:49:14,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:49:15,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:49:15,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:49:15,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:49:15,365.365 INFO    ] time= 18/10/2026 21:49:15
[2026-10-18 21:49:15,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:49:15,473.473 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:49:15,630.630 INFO    ] No existing commands found in stream
[2026-10-18 21:49:20,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:49:20,663.663 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-18 21:49:24,394.394 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:49:24,397.397 INFO    ] Checking for system updates...
[2026-10-18 21:49:24,437.437 INFO    ] 200
[2026-10-18 21:49:24,439.439 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:49:24,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:49:24,501.501 INFO    ] No update needed
[2026-10-18 21:49:24,504.504 INFO    ] Checking for camera pi updates...
[2026-10-18 21:49:24,541.541 INFO    ] 200
[2026-10-18 21:49:24,544.544 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:49:24,590.590 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:49:34,604.604 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:49:34,639.639 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:49:34,649.649 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:49:34,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:49:34,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:49:34,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:49:36,701.701 INFO    ] ================================================
[2026-10-18 21:49:36,717.717 INFO    ] Launching Daemon at Sun Oct 18 21:49:36 IST 2026
[2026-10-18 21:49:36,729.729 INFO    ] ================================================
[2026-10-18 21:49:37,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:49:37
[2026-10-18 21:49:37,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:49:38,193.193 INFO    ] Initializing speech engine...
[2026-10-18 21:49:38,202.202 INFO    ] 2026-10-18 21:49:38
[2026-10-18 21:49:38,452.452 INFO    ] 2026-10-18 21:49:38
[2026-10-18 21:49:38,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:49:38,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:49:38,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:49:38,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:49:38,950.950 INFO    ] time= 18/10/2026 21:49:38
[2026-10-18 21:49:39,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:49:39,020.020 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:49:39,168.168 INFO    ] No existing commands found in stream
[2026-10-18 21:49:44,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:49:44,193.193 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-18 21:49:47,601.601 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:49:47,604.604 INFO    ] Checking for system updates...
[2026-10-18 21:49:47,647.647 INFO    ] 200
[2026-10-18 21:49:47,650.650 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:49:47,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:49:47,714.714 INFO    ] No update needed
[2026-10-18 21:49:47,717.717 INFO    ] Checking for camera pi updates...
[2026-10-18 21:49:47,756.756 INFO    ] 200
[2026-10-18 21:49:47,759.759 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:49:47,801.801 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:49:57,818.818 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:49:57,860.860 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:49:57,871.871 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:49:57,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:49:57,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:49:57,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:49:59,929.929 INFO    ] ================================================
[2026-10-18 21:49:59,946.946 INFO    ] Launching Daemon at Sun Oct 18 21:49:59 IST 2026
[2026-10-18 21:49:59,957.957 INFO    ] ================================================
[2026-10-18 21:50:00,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:50:00
[2026-10-18 21:50:01,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:50:02,136.136 INFO    ] Initializing speech engine...
[2026-10-18 21:50:02,140.140 INFO    ] 2026-10-18 21:50:02
[2026-10-18 21:50:02,468.468 INFO    ] 2026-10-18 21:50:02
[2026-10-18 21:50:02,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:50:02,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:50:02,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:50:02,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:50:02,892.892 INFO    ] time= 18/10/2026 21:50:02
[2026-10-18 21:50:02,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:50:02,898.898 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:50:02,975.975 INFO    ] No existing commands found in stream
[2026-10-18 21:50:08,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:50:08,006.006 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-18 21:50:12,484.484 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:50:12,487.487 INFO    ] Checking for system updates...
[2026-10-18 21:50:12,527.527 INFO    ] 200
[2026-10-18 21:50:12,530.530 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:50:12,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:50:12,586.586 INFO    ] No update needed
[2026-10-18 21:50:12,589.589 INFO    ] Checking for camera pi updates...
[2026-10-18 21:50:12,627.627 INFO    ] 200
[2026-10-18 21:50:12,630.630 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:50:12,676.676 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:50:22,692.692 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:50:22,726.726 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:50:22,736.736 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:50:22,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:50:22,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:50:22,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:50:24,789.789 INFO    ] ================================================
[2026-10-18 21:50:24,805.805 INFO    ] Launching Daemon at Sun Oct 18 21:50:24 IST 2026
[2026-10-18 21:50:24,817.817 INFO    ] ================================================
[2026-10-18 21:50:25,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:50:25
[2026-10-18 21:50:25,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:50:26,251.251 INFO    ] Initializing speech engine...
[2026-10-18 21:50:26,261.261 INFO    ] 2026-10-18 21:50:26
[2026-10-18 21:50:26,516.516 INFO    ] 2026-10-18 21:50:26
[2026-10-18 21:50:26,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:50:26,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:50:26,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:50:26,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:50:27,003.003 INFO    ] time= 18/10/2026 21:50:26
[2026-10-18 21:50:27,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:50:27,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:50:27,206.206 INFO    ] No existing commands found in stream
[2026-10-18 21:50:32,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:50:32,225.225 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-18 21:50:33,854.854 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:50:33,857.857 INFO    ] Checking for system updates...
[2026-10-18 21:50:33,897.897 INFO    ] 200
[2026-10-18 21:50:33,900.900 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:50:33,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:50:33,964.964 INFO    ] No update needed
[2026-10-18 21:50:33,966.966 INFO    ] Checking for camera pi updates...
[2026-10-18 21:50:34,005.005 INFO    ] 200
[2026-10-18 21:50:34,008.008 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:50:34,048.048 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:50:44,063.063 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:50:44,101.101 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:50:44,110.110 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:50:44,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:50:44,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:50:44,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:50:46,169.169 INFO    ] ================================================
[2026-10-18 21:50:46,185.185 INFO    ] Launching Daemon at Sun Oct 18 21:50:46 IST 2026
[2026-10-18 21:50:46,197.197 INFO    ] ================================================
[2026-10-18 21:50:46,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:50:46
[2026-10-18 21:50:47,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:50:47,666.666 INFO    ] Initializing speech engine...
[2026-10-18 21:50:47,675.675 INFO    ] 2026-10-18 21:50:47
[2026-10-18 21:50:47,921.921 INFO    ] 2026-10-18 21:50:47
[2026-10-18 21:50:47,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:50:48,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:50:48,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:50:48,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:50:48,395.395 INFO    ] time= 18/10/2026 21:50:48
[2026-10-18 21:50:48,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:50:48,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:50:48,619.619 INFO    ] No existing commands found in stream
[2026-10-18 21:50:53,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:50:53,642.642 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-18 21:50:55,699.699 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:50:55,702.702 INFO    ] Checking for system updates...
[2026-10-18 21:50:55,739.739 INFO    ] 200
[2026-10-18 21:50:55,742.742 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:50:55,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:50:55,799.799 INFO    ] No update needed
[2026-10-18 21:50:55,802.802 INFO    ] Checking for camera pi updates...
[2026-10-18 21:50:55,838.838 INFO    ] 200
[2026-10-18 21:50:55,841.841 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:50:55,888.888 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:51:05,905.905 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:51:05,946.946 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:51:05,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:51:05,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:51:05,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:51:05,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:51:08,013.013 INFO    ] ================================================
[2026-10-18 21:51:08,028.028 INFO    ] Launching Daemon at Sun Oct 18 21:51:08 IST 2026
[2026-10-18 21:51:08,038.038 INFO    ] ================================================
[2026-10-18 21:51:08,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:51:08
[2026-10-18 21:51:09,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:51:09,559.559 INFO    ] Initializing speech engine...
[2026-10-18 21:51:09,568.568 INFO    ] 2026-10-18 21:51:09
[2026-10-18 21:51:09,850.850 INFO    ] 2026-10-18 21:51:09
[2026-10-18 21:51:09,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:51:10,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:51:10,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:51:10,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:51:10,358.358 INFO    ] time= 18/10/2026 21:51:10
[2026-10-18 21:51:10,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:51:10,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:51:10,600.600 INFO    ] No existing commands found in stream
[2026-10-18 21:51:15,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:51:15,615.615 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-18 21:51:18,999.999 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:51:19,001.001 INFO    ] Checking for system updates...
[2026-10-18 21:51:19,042.042 INFO    ] 200
[2026-10-18 21:51:19,044.044 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:51:19,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:51:19,100.100 INFO    ] No update needed
[2026-10-18 21:51:19,103.103 INFO    ] Checking for camera pi updates...
[2026-10-18 21:51:19,140.140 INFO    ] 200
[2026-10-18 21:51:19,143.143 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:51:19,189.189 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:51:29,204.204 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d31150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:51:29,239.239 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:51:29,249.249 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:51:29,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:51:29,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:51:29,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:51:31,301.301 INFO    ] ================================================
[2026-10-18 21:51:31,316.316 INFO    ] Launching Daemon at Sun Oct 18 21:51:31 IST 2026
[2026-10-18 21:51:31,327.327 INFO    ] ================================================
[2026-10-18 21:51:31,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:51:31
[2026-10-18 21:51:32,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:51:32,817.817 INFO    ] Initializing speech engine...
[2026-10-18 21:51:32,840.840 INFO    ] 2026-10-18 21:51:32
[2026-10-18 21:51:33,104.104 INFO    ] 2026-10-18 21:51:33
[2026-10-18 21:51:33,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:51:33,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:51:33,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:51:33,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:51:33,673.673 INFO    ] time= 18/10/2026 21:51:33
[2026-10-18 21:51:33,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:51:33,699.699 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:51:33,850.850 INFO    ] No existing commands found in stream
[2026-10-18 21:51:38,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:51:38,887.887 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-18 21:51:39,488.488 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:51:39,491.491 INFO    ] Checking for system updates...
[2026-10-18 21:51:39,532.532 INFO    ] 200
[2026-10-18 21:51:39,534.534 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:51:39,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:51:39,600.600 INFO    ] No update needed
[2026-10-18 21:51:39,603.603 INFO    ] Checking for camera pi updates...
[2026-10-18 21:51:39,641.641 INFO    ] 200
[2026-10-18 21:51:39,643.643 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:51:39,685.685 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:51:49,700.700 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:51:49,735.735 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:51:49,744.744 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:51:49,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:51:49,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:51:49,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:51:51,799.799 INFO    ] ================================================
[2026-10-18 21:51:51,816.816 INFO    ] Launching Daemon at Sun Oct 18 21:51:51 IST 2026
[2026-10-18 21:51:51,828.828 INFO    ] ================================================
[2026-10-18 21:51:52,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:51:52
[2026-10-18 21:51:53,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:51:53,403.403 INFO    ] Initializing speech engine...
[2026-10-18 21:51:53,414.414 INFO    ] 2026-10-18 21:51:53
[2026-10-18 21:51:53,672.672 INFO    ] 2026-10-18 21:51:53
[2026-10-18 21:51:53,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:51:54,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:51:54,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:51:54,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:51:54,223.223 INFO    ] time= 18/10/2026 21:51:54
[2026-10-18 21:51:54,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:51:54,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:51:54,408.408 INFO    ] No existing commands found in stream
[2026-10-18 21:51:59,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:51:59,438.438 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-18 21:52:00,674.674 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:52:00,677.677 INFO    ] Checking for system updates...
[2026-10-18 21:52:00,714.714 INFO    ] 200
[2026-10-18 21:52:00,716.716 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:52:00,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:52:00,771.771 INFO    ] No update needed
[2026-10-18 21:52:00,774.774 INFO    ] Checking for camera pi updates...
[2026-10-18 21:52:00,807.807 INFO    ] 200
[2026-10-18 21:52:00,810.810 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:52:00,850.850 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:52:10,865.865 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:52:10,901.901 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:52:10,911.911 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:52:10,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:52:10,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:52:10,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:52:12,963.963 INFO    ] ================================================
[2026-10-18 21:52:12,980.980 INFO    ] Launching Daemon at Sun Oct 18 21:52:12 IST 2026
[2026-10-18 21:52:12,991.991 INFO    ] ================================================
[2026-10-18 21:52:13,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:52:13
[2026-10-18 21:52:14,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:52:14,646.646 INFO    ] Initializing speech engine...
[2026-10-18 21:52:14,660.660 INFO    ] 2026-10-18 21:52:14
[2026-10-18 21:52:14,974.974 INFO    ] 2026-10-18 21:52:14
[2026-10-18 21:52:15,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:52:15,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:52:15,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:52:15,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:52:15,528.528 INFO    ] time= 18/10/2026 21:52:15
[2026-10-18 21:52:15,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:52:15,554.554 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:52:15,705.705 INFO    ] No existing commands found in stream
[2026-10-18 21:52:20,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:52:20,746.746 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-18 21:52:21,422.422 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:52:21,425.425 INFO    ] Checking for system updates...
[2026-10-18 21:52:21,463.463 INFO    ] 200
[2026-10-18 21:52:21,466.466 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:52:21,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:52:21,524.524 INFO    ] No update needed
[2026-10-18 21:52:21,527.527 INFO    ] Checking for camera pi updates...
[2026-10-18 21:52:21,567.567 INFO    ] 200
[2026-10-18 21:52:21,570.570 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:52:21,612.612 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:52:31,629.629 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:52:31,684.684 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:52:31,697.697 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:52:31,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:52:31,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:52:31,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:52:33,759.759 INFO    ] ================================================
[2026-10-18 21:52:33,775.775 INFO    ] Launching Daemon at Sun Oct 18 21:52:33 IST 2026
[2026-10-18 21:52:33,788.788 INFO    ] ================================================
[2026-10-18 21:52:34,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:52:34
[2026-10-18 21:52:34,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:52:35,250.250 INFO    ] Initializing speech engine...
[2026-10-18 21:52:35,265.265 INFO    ] 2026-10-18 21:52:35
[2026-10-18 21:52:35,524.524 INFO    ] 2026-10-18 21:52:35
[2026-10-18 21:52:35,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:52:35,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:52:35,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:52:35,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:52:35,987.987 INFO    ] time= 18/10/2026 21:52:35
[2026-10-18 21:52:36,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:52:36,113.113 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:52:36,234.234 INFO    ] No existing commands found in stream
[2026-10-18 21:52:41,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:52:41,267.267 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-18 21:52:42,391.391 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:52:42,393.393 INFO    ] Checking for system updates...
[2026-10-18 21:52:42,429.429 INFO    ] 200
[2026-10-18 21:52:42,431.431 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:52:42,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:52:42,487.487 INFO    ] No update needed
[2026-10-18 21:52:42,490.490 INFO    ] Checking for camera pi updates...
[2026-10-18 21:52:42,529.529 INFO    ] 200
[2026-10-18 21:52:42,532.532 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:52:42,579.579 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:52:52,595.595 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:52:52,636.636 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:52:52,647.647 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:52:52,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:52:52,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:52:52,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:52:54,703.703 INFO    ] ================================================
[2026-10-18 21:52:54,718.718 INFO    ] Launching Daemon at Sun Oct 18 21:52:54 IST 2026
[2026-10-18 21:52:54,729.729 INFO    ] ================================================
[2026-10-18 21:52:55,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:52:55
[2026-10-18 21:52:56,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:52:56,394.394 INFO    ] Initializing speech engine...
[2026-10-18 21:52:56,402.402 INFO    ] 2026-10-18 21:52:56
[2026-10-18 21:52:56,675.675 INFO    ] 2026-10-18 21:52:56
[2026-10-18 21:52:56,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:52:56,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:52:56,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:52:57,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:52:57,233.233 INFO    ] time= 18/10/2026 21:52:57
[2026-10-18 21:52:57,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:52:57,262.262 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:52:57,400.400 INFO    ] No existing commands found in stream
[2026-10-18 21:53:02,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:53:02,428.428 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-18 21:53:05,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:53:05,310.310 INFO    ] Checking for system updates...
[2026-10-18 21:53:05,346.346 INFO    ] 200
[2026-10-18 21:53:05,348.348 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:53:05,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:53:05,403.403 INFO    ] No update needed
[2026-10-18 21:53:05,406.406 INFO    ] Checking for camera pi updates...
[2026-10-18 21:53:05,443.443 INFO    ] 200
[2026-10-18 21:53:05,446.446 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:53:05,487.487 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:53:15,500.500 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:53:15,535.535 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:53:15,544.544 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:53:15,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:53:15,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:53:15,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:53:17,599.599 INFO    ] ================================================
[2026-10-18 21:53:17,615.615 INFO    ] Launching Daemon at Sun Oct 18 21:53:17 IST 2026
[2026-10-18 21:53:17,627.627 INFO    ] ================================================
[2026-10-18 21:53:18,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:53:18
[2026-10-18 21:53:18,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:53:19,309.309 INFO    ] Initializing speech engine...
[2026-10-18 21:53:19,321.321 INFO    ] 2026-10-18 21:53:19
[2026-10-18 21:53:19,634.634 INFO    ] 2026-10-18 21:53:19
[2026-10-18 21:53:19,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:53:19,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:53:19,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:53:20,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:53:20,155.155 INFO    ] time= 18/10/2026 21:53:20
[2026-10-18 21:53:20,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:53:20,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:53:20,318.318 INFO    ] No existing commands found in stream
[2026-10-18 21:53:25,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:53:25,352.352 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-18 21:53:28,267.267 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:53:28,270.270 INFO    ] Checking for system updates...
[2026-10-18 21:53:28,306.306 INFO    ] 200
[2026-10-18 21:53:28,309.309 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:53:28,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:53:28,366.366 INFO    ] No update needed
[2026-10-18 21:53:28,369.369 INFO    ] Checking for camera pi updates...
[2026-10-18 21:53:28,408.408 INFO    ] 200
[2026-10-18 21:53:28,411.411 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:53:28,454.454 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:53:38,469.469 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:53:38,510.510 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:53:38,522.522 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:53:38,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:53:38,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:53:38,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:53:40,579.579 INFO    ] ================================================
[2026-10-18 21:53:40,596.596 INFO    ] Launching Daemon at Sun Oct 18 21:53:40 IST 2026
[2026-10-18 21:53:40,607.607 INFO    ] ================================================
[2026-10-18 21:53:41,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:53:41
[2026-10-18 21:53:41,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:53:42,028.028 INFO    ] Initializing speech engine...
[2026-10-18 21:53:42,036.036 INFO    ] 2026-10-18 21:53:42
[2026-10-18 21:53:42,334.334 INFO    ] 2026-10-18 21:53:42
[2026-10-18 21:53:42,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:53:42,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:53:42,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:53:42,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:53:42,760.760 INFO    ] time= 18/10/2026 21:53:42
[2026-10-18 21:53:42,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:53:42,820.820 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:53:42,954.954 INFO    ] No existing commands found in stream
[2026-10-18 21:53:47,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:53:47,977.977 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-18 21:53:48,833.833 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:53:48,836.836 INFO    ] Checking for system updates...
[2026-10-18 21:53:48,872.872 INFO    ] 200
[2026-10-18 21:53:48,874.874 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:53:48,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:53:48,928.928 INFO    ] No update needed
[2026-10-18 21:53:48,931.931 INFO    ] Checking for camera pi updates...
[2026-10-18 21:53:48,965.965 INFO    ] 200
[2026-10-18 21:53:48,968.968 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:53:49,013.013 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:53:59,029.029 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:53:59,063.063 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:53:59,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:53:59,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:53:59,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:53:59,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:54:01,126.126 INFO    ] ================================================
[2026-10-18 21:54:01,141.141 INFO    ] Launching Daemon at Sun Oct 18 21:54:01 IST 2026
[2026-10-18 21:54:01,151.151 INFO    ] ================================================
[2026-10-18 21:54:01,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:54:01
[2026-10-18 21:54:02,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:54:02,820.820 INFO    ] Initializing speech engine...
[2026-10-18 21:54:02,828.828 INFO    ] 2026-10-18 21:54:02
[2026-10-18 21:54:03,125.125 INFO    ] 2026-10-18 21:54:03
[2026-10-18 21:54:03,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:54:03,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:54:03,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:54:03,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:54:03,564.564 INFO    ] time= 18/10/2026 21:54:03
[2026-10-18 21:54:03,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:54:03,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:54:03,769.769 INFO    ] No existing commands found in stream
[2026-10-18 21:54:08,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:54:08,800.800 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-18 21:54:12,513.513 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:54:12,516.516 INFO    ] Checking for system updates...
[2026-10-18 21:54:12,554.554 INFO    ] 200
[2026-10-18 21:54:12,557.557 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:54:12,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:54:12,615.615 INFO    ] No update needed
[2026-10-18 21:54:12,618.618 INFO    ] Checking for camera pi updates...
[2026-10-18 21:54:12,652.652 INFO    ] 200
[2026-10-18 21:54:12,655.655 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:54:12,698.698 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:54:22,714.714 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:54:22,756.756 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:54:22,768.768 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:54:22,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:54:22,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:54:22,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:54:24,824.824 INFO    ] ================================================
[2026-10-18 21:54:24,840.840 INFO    ] Launching Daemon at Sun Oct 18 21:54:24 IST 2026
[2026-10-18 21:54:24,851.851 INFO    ] ================================================
[2026-10-18 21:54:25,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:54:25
[2026-10-18 21:54:26,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:54:26,514.514 INFO    ] Initializing speech engine...
[2026-10-18 21:54:26,527.527 INFO    ] 2026-10-18 21:54:26
[2026-10-18 21:54:26,813.813 INFO    ] 2026-10-18 21:54:26
[2026-10-18 21:54:26,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:54:27,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:54:27,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:54:27,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:54:27,353.353 INFO    ] time= 18/10/2026 21:54:27
[2026-10-18 21:54:27,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:54:27,403.403 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:54:27,558.558 INFO    ] No existing commands found in stream
[2026-10-18 21:54:32,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:54:32,603.603 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-18 21:54:34,561.561 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:54:34,564.564 INFO    ] Checking for system updates...
[2026-10-18 21:54:34,602.602 INFO    ] 200
[2026-10-18 21:54:34,605.605 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:54:34,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:54:34,662.662 INFO    ] No update needed
[2026-10-18 21:54:34,665.665 INFO    ] Checking for camera pi updates...
[2026-10-18 21:54:34,699.699 INFO    ] 200
[2026-10-18 21:54:34,702.702 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:54:34,744.744 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:54:44,760.760 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73def150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:54:44,802.802 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:54:44,813.813 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:54:44,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:54:44,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:54:44,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:54:46,869.869 INFO    ] ================================================
[2026-10-18 21:54:46,885.885 INFO    ] Launching Daemon at Sun Oct 18 21:54:46 IST 2026
[2026-10-18 21:54:46,896.896 INFO    ] ================================================
[2026-10-18 21:54:47,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:54:47
[2026-10-18 21:54:48,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:54:48,367.367 INFO    ] Initializing speech engine...
[2026-10-18 21:54:48,374.374 INFO    ] 2026-10-18 21:54:48
[2026-10-18 21:54:48,621.621 INFO    ] 2026-10-18 21:54:48
[2026-10-18 21:54:48,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:54:48,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:54:48,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:54:49,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:54:49,123.123 INFO    ] time= 18/10/2026 21:54:49
[2026-10-18 21:54:49,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:54:49,200.200 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:54:49,329.329 INFO    ] No existing commands found in stream
[2026-10-18 21:54:54,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:54:54,360.360 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-18 21:54:57,375.375 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:54:57,378.378 INFO    ] Checking for system updates...
[2026-10-18 21:54:57,413.413 INFO    ] 200
[2026-10-18 21:54:57,416.416 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:54:57,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:54:57,472.472 INFO    ] No update needed
[2026-10-18 21:54:57,474.474 INFO    ] Checking for camera pi updates...
[2026-10-18 21:54:57,508.508 INFO    ] 200
[2026-10-18 21:54:57,511.511 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:54:57,557.557 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:55:07,573.573 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d71150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:55:07,609.609 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:55:07,619.619 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:55:07,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:55:07,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:55:07,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:55:09,677.677 INFO    ] ================================================
[2026-10-18 21:55:09,693.693 INFO    ] Launching Daemon at Sun Oct 18 21:55:09 IST 2026
[2026-10-18 21:55:09,704.704 INFO    ] ================================================
[2026-10-18 21:55:10,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:55:10
[2026-10-18 21:55:10,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:55:11,256.256 INFO    ] Initializing speech engine...
[2026-10-18 21:55:11,266.266 INFO    ] 2026-10-18 21:55:11
[2026-10-18 21:55:11,515.515 INFO    ] 2026-10-18 21:55:11
[2026-10-18 21:55:11,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:55:11,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:55:11,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:55:11,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:55:11,990.990 INFO    ] time= 18/10/2026 21:55:11
[2026-10-18 21:55:12,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:55:12,099.099 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:55:12,192.192 INFO    ] No existing commands found in stream
[2026-10-18 21:55:17,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:55:17,205.205 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-18 21:55:20,955.955 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:55:20,958.958 INFO    ] Checking for system updates...
[2026-10-18 21:55:20,993.993 INFO    ] 200
[2026-10-18 21:55:20,995.995 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:55:21,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:55:21,051.051 INFO    ] No update needed
[2026-10-18 21:55:21,053.053 INFO    ] Checking for camera pi updates...
[2026-10-18 21:55:21,087.087 INFO    ] 200
[2026-10-18 21:55:21,089.089 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:55:21,129.129 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:55:31,144.144 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:55:31,179.179 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:55:31,189.189 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:55:31,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:55:31,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:55:31,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:55:33,242.242 INFO    ] ================================================
[2026-10-18 21:55:33,259.259 INFO    ] Launching Daemon at Sun Oct 18 21:55:33 IST 2026
[2026-10-18 21:55:33,270.270 INFO    ] ================================================
[2026-10-18 21:55:33,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:55:33
[2026-10-18 21:55:34,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:55:34,953.953 INFO    ] Initializing speech engine...
[2026-10-18 21:55:34,963.963 INFO    ] 2026-10-18 21:55:34
[2026-10-18 21:55:35,251.251 INFO    ] 2026-10-18 21:55:35
[2026-10-18 21:55:35,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:55:35,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:55:35,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:55:35,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:55:35,982.982 INFO    ] time= 18/10/2026 21:55:35
[2026-10-18 21:55:36,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:55:36,083.083 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:55:36,229.229 INFO    ] No existing commands found in stream
[2026-10-18 21:55:41,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:55:41,243.243 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-18 21:55:44,367.367 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:55:44,369.369 INFO    ] Checking for system updates...
[2026-10-18 21:55:44,406.406 INFO    ] 200
[2026-10-18 21:55:44,408.408 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:55:44,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:55:44,468.468 INFO    ] No update needed
[2026-10-18 21:55:44,470.470 INFO    ] Checking for camera pi updates...
[2026-10-18 21:55:44,504.504 INFO    ] 200
[2026-10-18 21:55:44,506.506 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:55:44,552.552 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:55:54,565.565 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:55:54,602.602 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:55:54,612.612 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:55:54,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:55:54,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:55:54,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:55:56,666.666 INFO    ] ================================================
[2026-10-18 21:55:56,682.682 INFO    ] Launching Daemon at Sun Oct 18 21:55:56 IST 2026
[2026-10-18 21:55:56,693.693 INFO    ] ================================================
[2026-10-18 21:55:57,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:55:57
[2026-10-18 21:55:58,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:55:58,364.364 INFO    ] Initializing speech engine...
[2026-10-18 21:55:58,376.376 INFO    ] 2026-10-18 21:55:58
[2026-10-18 21:55:58,687.687 INFO    ] 2026-10-18 21:55:58
[2026-10-18 21:55:58,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:55:58,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:55:58,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:55:59,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:55:59,207.207 INFO    ] time= 18/10/2026 21:55:59
[2026-10-18 21:55:59,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:55:59,247.247 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:55:59,365.365 INFO    ] No existing commands found in stream
[2026-10-18 21:56:04,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:56:04,394.394 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-18 21:56:08,461.461 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:56:08,464.464 INFO    ] Checking for system updates...
[2026-10-18 21:56:08,503.503 INFO    ] 200
[2026-10-18 21:56:08,506.506 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:56:08,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:56:08,561.561 INFO    ] No update needed
[2026-10-18 21:56:08,564.564 INFO    ] Checking for camera pi updates...
[2026-10-18 21:56:08,597.597 INFO    ] 200
[2026-10-18 21:56:08,599.599 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:56:08,640.640 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:56:18,654.654 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6f150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:56:18,689.689 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:56:18,699.699 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:56:18,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:56:18,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:56:18,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:56:20,751.751 INFO    ] ================================================
[2026-10-18 21:56:20,767.767 INFO    ] Launching Daemon at Sun Oct 18 21:56:20 IST 2026
[2026-10-18 21:56:20,779.779 INFO    ] ================================================
[2026-10-18 21:56:21,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:56:21
[2026-10-18 21:56:21,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:56:22,195.195 INFO    ] Initializing speech engine...
[2026-10-18 21:56:22,220.220 INFO    ] 2026-10-18 21:56:22
[2026-10-18 21:56:22,489.489 INFO    ] 2026-10-18 21:56:22
[2026-10-18 21:56:22,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:56:22,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:56:22,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:56:22,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:56:22,980.980 INFO    ] time= 18/10/2026 21:56:22
[2026-10-18 21:56:23,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:56:23,099.099 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:56:23,267.267 INFO    ] No existing commands found in stream
[2026-10-18 21:56:28,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:56:28,295.295 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-18 21:56:32,658.658 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:56:32,661.661 INFO    ] Checking for system updates...
[2026-10-18 21:56:32,703.703 INFO    ] 200
[2026-10-18 21:56:32,706.706 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:56:32,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:56:32,992.992 INFO    ] No update needed
[2026-10-18 21:56:32,995.995 INFO    ] Checking for camera pi updates...
[2026-10-18 21:56:33,034.034 INFO    ] 200
[2026-10-18 21:56:33,038.038 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:56:33,098.098 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:56:43,114.114 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:56:43,148.148 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:56:43,158.158 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:56:43,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:56:43,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:56:43,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:56:45,211.211 INFO    ] ================================================
[2026-10-18 21:56:45,228.228 INFO    ] Launching Daemon at Sun Oct 18 21:56:45 IST 2026
[2026-10-18 21:56:45,239.239 INFO    ] ================================================
[2026-10-18 21:56:45,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:56:45
[2026-10-18 21:56:46,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:56:46,837.837 INFO    ] Initializing speech engine...
[2026-10-18 21:56:46,846.846 INFO    ] 2026-10-18 21:56:46
[2026-10-18 21:56:47,129.129 INFO    ] 2026-10-18 21:56:47
[2026-10-18 21:56:47,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:56:47,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:56:47,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:56:47,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:56:47,665.665 INFO    ] time= 18/10/2026 21:56:47
[2026-10-18 21:56:47,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:56:47,711.711 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:56:47,820.820 INFO    ] No existing commands found in stream
[2026-10-18 21:56:52,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:56:52,858.858 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-18 21:56:56,849.849 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 21:56:56,852.852 INFO    ] Checking for system updates...
[2026-10-18 21:56:56,889.889 INFO    ] 200
[2026-10-18 21:56:56,891.891 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:56:56,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:56:56,955.955 INFO    ] No update needed
[2026-10-18 21:56:56,958.958 INFO    ] Checking for camera pi updates...
[2026-10-18 21:56:56,992.992 INFO    ] 200
[2026-10-18 21:56:56,995.995 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:56:57,035.035 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:57:07,052.052 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d30150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:57:07,091.091 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:57:07,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:57:07,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:57:07,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:57:07,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:57:09,157.157 INFO    ] ================================================
[2026-10-18 21:57:09,173.173 INFO    ] Launching Daemon at Sun Oct 18 21:57:09 IST 2026
[2026-10-18 21:57:09,184.184 INFO    ] ================================================
[2026-10-18 21:57:09,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:57:09
[2026-10-18 21:57:10,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:57:10,691.691 INFO    ] Initializing speech engine...
[2026-10-18 21:57:10,706.706 INFO    ] 2026-10-18 21:57:10
[2026-10-18 21:57:10,971.971 INFO    ] 2026-10-18 21:57:10
[2026-10-18 21:57:11,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:57:11,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:57:11,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:57:11,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:57:11,540.540 INFO    ] time= 18/10/2026 21:57:11
[2026-10-18 21:57:11,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:57:11,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:57:11,701.701 INFO    ] No existing commands found in stream
[2026-10-18 21:57:16,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:57:16,724.724 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-18 21:57:17,601.601 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:57:17,604.604 INFO    ] Checking for system updates...
[2026-10-18 21:57:17,644.644 INFO    ] 200
[2026-10-18 21:57:17,647.647 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:57:17,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:57:17,703.703 INFO    ] No update needed
[2026-10-18 21:57:17,706.706 INFO    ] Checking for camera pi updates...
[2026-10-18 21:57:17,740.740 INFO    ] 200
[2026-10-18 21:57:17,743.743 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:57:17,783.783 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:57:27,799.799 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d73150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:57:27,838.838 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:57:27,849.849 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:57:27,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:57:27,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:57:27,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:57:29,903.903 INFO    ] ================================================
[2026-10-18 21:57:29,919.919 INFO    ] Launching Daemon at Sun Oct 18 21:57:29 IST 2026
[2026-10-18 21:57:29,931.931 INFO    ] ================================================
[2026-10-18 21:57:30,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:57:30
[2026-10-18 21:57:31,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:57:31,356.356 INFO    ] Initializing speech engine...
[2026-10-18 21:57:31,381.381 INFO    ] 2026-10-18 21:57:31
[2026-10-18 21:57:31,648.648 INFO    ] 2026-10-18 21:57:31
[2026-10-18 21:57:31,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:57:31,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:57:31,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:57:32,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:57:32,171.171 INFO    ] time= 18/10/2026 21:57:32
[2026-10-18 21:57:32,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:57:32,266.266 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:57:32,380.380 INFO    ] No existing commands found in stream
[2026-10-18 21:57:37,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:57:37,416.416 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-18 21:57:39,835.835 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 21:57:39,837.837 INFO    ] Checking for system updates...
[2026-10-18 21:57:39,873.873 INFO    ] 200
[2026-10-18 21:57:39,875.875 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:57:39,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:57:39,931.931 INFO    ] No update needed
[2026-10-18 21:57:39,933.933 INFO    ] Checking for camera pi updates...
[2026-10-18 21:57:39,967.967 INFO    ] 200
[2026-10-18 21:57:39,969.969 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:57:40,009.009 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:57:50,025.025 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:57:50,060.060 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:57:50,069.069 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:57:50,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:57:50,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:57:50,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:57:52,122.122 INFO    ] ================================================
[2026-10-18 21:57:52,138.138 INFO    ] Launching Daemon at Sun Oct 18 21:57:52 IST 2026
[2026-10-18 21:57:52,150.150 INFO    ] ================================================
[2026-10-18 21:57:52,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:57:52
[2026-10-18 21:57:53,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:57:53,558.558 INFO    ] Initializing speech engine...
[2026-10-18 21:57:53,566.566 INFO    ] 2026-10-18 21:57:53
[2026-10-18 21:57:53,857.857 INFO    ] 2026-10-18 21:57:53
[2026-10-18 21:57:53,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:57:54,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:57:54,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:57:54,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:57:54,263.263 INFO    ] time= 18/10/2026 21:57:54
[2026-10-18 21:57:54,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:57:54,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:57:54,380.380 INFO    ] No existing commands found in stream
[2026-10-18 21:57:59,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:57:59,419.419 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-18 21:58:02,349.349 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:58:02,352.352 INFO    ] Checking for system updates...
[2026-10-18 21:58:02,391.391 INFO    ] 200
[2026-10-18 21:58:02,394.394 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:58:02,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:58:02,458.458 INFO    ] No update needed
[2026-10-18 21:58:02,461.461 INFO    ] Checking for camera pi updates...
[2026-10-18 21:58:02,508.508 INFO    ] 200
[2026-10-18 21:58:02,512.512 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:58:02,568.568 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:58:12,583.583 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:58:12,618.618 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:58:12,627.627 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:58:12,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:58:12,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:58:12,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:58:14,679.679 INFO    ] ================================================
[2026-10-18 21:58:14,695.695 INFO    ] Launching Daemon at Sun Oct 18 21:58:14 IST 2026
[2026-10-18 21:58:14,708.708 INFO    ] ================================================
[2026-10-18 21:58:15,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:58:15
[2026-10-18 21:58:15,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:58:16,140.140 INFO    ] Initializing speech engine...
[2026-10-18 21:58:16,158.158 INFO    ] 2026-10-18 21:58:16
[2026-10-18 21:58:16,424.424 INFO    ] 2026-10-18 21:58:16
[2026-10-18 21:58:16,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:58:16,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:58:16,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:58:16,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:58:16,948.948 INFO    ] time= 18/10/2026 21:58:16
[2026-10-18 21:58:16,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:58:17,042.042 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:58:17,186.186 INFO    ] No existing commands found in stream
[2026-10-18 21:58:22,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:58:22,214.214 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-18 21:58:26,026.026 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:58:26,029.029 INFO    ] Checking for system updates...
[2026-10-18 21:58:26,064.064 INFO    ] 200
[2026-10-18 21:58:26,067.067 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:58:26,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:58:26,120.120 INFO    ] No update needed
[2026-10-18 21:58:26,123.123 INFO    ] Checking for camera pi updates...
[2026-10-18 21:58:26,156.156 INFO    ] 200
[2026-10-18 21:58:26,158.158 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:58:26,199.199 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:58:36,213.213 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:58:36,248.248 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:58:36,258.258 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:58:36,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:58:36,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:58:36,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:58:38,311.311 INFO    ] ================================================
[2026-10-18 21:58:38,326.326 INFO    ] Launching Daemon at Sun Oct 18 21:58:38 IST 2026
[2026-10-18 21:58:38,337.337 INFO    ] ================================================
[2026-10-18 21:58:38,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:58:38
[2026-10-18 21:58:39,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:58:39,770.770 INFO    ] Initializing speech engine...
[2026-10-18 21:58:39,779.779 INFO    ] 2026-10-18 21:58:39
[2026-10-18 21:58:40,036.036 INFO    ] 2026-10-18 21:58:40
[2026-10-18 21:58:40,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:58:40,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:58:40,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:58:40,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:58:40,525.525 INFO    ] time= 18/10/2026 21:58:40
[2026-10-18 21:58:40,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:58:40,589.589 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:58:40,735.735 INFO    ] No existing commands found in stream
[2026-10-18 21:58:45,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:58:45,757.757 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-18 21:58:48,467.467 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 21:58:48,470.470 INFO    ] Checking for system updates...
[2026-10-18 21:58:48,506.506 INFO    ] 200
[2026-10-18 21:58:48,508.508 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:58:48,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:58:48,563.563 INFO    ] No update needed
[2026-10-18 21:58:48,565.565 INFO    ] Checking for camera pi updates...
[2026-10-18 21:58:48,599.599 INFO    ] 200
[2026-10-18 21:58:48,601.601 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:58:48,642.642 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:58:58,658.658 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:58:58,692.692 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:58:58,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:58:58,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:58:58,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:58:58,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:59:00,755.755 INFO    ] ================================================
[2026-10-18 21:59:00,770.770 INFO    ] Launching Daemon at Sun Oct 18 21:59:00 IST 2026
[2026-10-18 21:59:00,782.782 INFO    ] ================================================
[2026-10-18 21:59:01,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:59:01
[2026-10-18 21:59:02,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:59:02,545.545 INFO    ] Initializing speech engine...
[2026-10-18 21:59:02,558.558 INFO    ] 2026-10-18 21:59:02
[2026-10-18 21:59:02,847.847 INFO    ] 2026-10-18 21:59:02
[2026-10-18 21:59:02,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:59:03,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:59:03,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:59:03,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:59:03,372.372 INFO    ] time= 18/10/2026 21:59:03
[2026-10-18 21:59:03,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:59:03,457.457 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:59:03,599.599 INFO    ] No existing commands found in stream
[2026-10-18 21:59:08,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:59:08,630.630 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-18 21:59:12,472.472 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 21:59:12,475.475 INFO    ] Checking for system updates...
[2026-10-18 21:59:12,513.513 INFO    ] 200
[2026-10-18 21:59:12,516.516 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:59:12,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:59:12,570.570 INFO    ] No update needed
[2026-10-18 21:59:12,573.573 INFO    ] Checking for camera pi updates...
[2026-10-18 21:59:12,606.606 INFO    ] 200
[2026-10-18 21:59:12,608.608 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:59:12,650.650 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:59:22,666.666 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:59:22,701.701 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:59:22,711.711 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:59:22,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:59:22,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:59:22,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:59:24,765.765 INFO    ] ================================================
[2026-10-18 21:59:24,780.780 INFO    ] Launching Daemon at Sun Oct 18 21:59:24 IST 2026
[2026-10-18 21:59:24,790.790 INFO    ] ================================================
[2026-10-18 21:59:25,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:59:25
[2026-10-18 21:59:25,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:59:26,266.266 INFO    ] Initializing speech engine...
[2026-10-18 21:59:26,287.287 INFO    ] 2026-10-18 21:59:26
[2026-10-18 21:59:26,556.556 INFO    ] 2026-10-18 21:59:26
[2026-10-18 21:59:26,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:59:26,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:59:26,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:59:26,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:59:26,977.977 INFO    ] time= 18/10/2026 21:59:26
[2026-10-18 21:59:27,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:59:27,051.051 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:59:27,174.174 INFO    ] No existing commands found in stream
[2026-10-18 21:59:32,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:59:32,208.208 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-18 21:59:36,374.374 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 21:59:36,377.377 INFO    ] Checking for system updates...
[2026-10-18 21:59:36,413.413 INFO    ] 200
[2026-10-18 21:59:36,415.415 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:59:36,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 21:59:36,470.470 INFO    ] No update needed
[2026-10-18 21:59:36,472.472 INFO    ] Checking for camera pi updates...
[2026-10-18 21:59:36,508.508 INFO    ] 200
[2026-10-18 21:59:36,511.511 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:59:36,553.553 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:59:46,568.568 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 21:59:46,603.603 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 21:59:46,612.612 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:59:46,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:59:46,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:59:46,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:59:48,665.665 INFO    ] ================================================
[2026-10-18 21:59:48,680.680 INFO    ] Launching Daemon at Sun Oct 18 21:59:48 IST 2026
[2026-10-18 21:59:48,690.690 INFO    ] ================================================
[2026-10-18 21:59:49,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:59:49
[2026-10-18 21:59:49,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:59:50,117.117 INFO    ] Initializing speech engine...
[2026-10-18 21:59:50,132.132 INFO    ] 2026-10-18 21:59:50
[2026-10-18 21:59:50,414.414 INFO    ] 2026-10-18 21:59:50
[2026-10-18 21:59:50,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:59:50,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:59:50,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:59:50,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:59:50,838.838 INFO    ] time= 18/10/2026 21:59:50
[2026-10-18 21:59:50,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:59:50,898.898 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:59:51,040.040 INFO    ] No existing commands found in stream
[2026-10-18 21:59:56,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:59:56,069.069 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-18 21:59:58,272.272 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:59:58,275.275 INFO    ] Checking for system updates...
[2026-10-18 21:59:58,310.310 INFO    ] 200
[2026-10-18 21:59:58,313.313 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:59:58,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:59:58,367.367 INFO    ] No update needed
[2026-10-18 21:59:58,370.370 INFO    ] Checking for camera pi updates...
[2026-10-18 21:59:58,406.406 INFO    ] 200
[2026-10-18 21:59:58,409.409 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:59:58,449.449 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:00:08,465.465 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 22:00:08,500.500 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 22:00:08,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:00:08,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:00:08,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:00:08,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:00:10,562.562 INFO    ] ================================================
[2026-10-18 22:00:10,578.578 INFO    ] Launching Daemon at Sun Oct 18 22:00:10 IST 2026
[2026-10-18 22:00:10,596.596 INFO    ] ================================================
[2026-10-18 22:00:11,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:00:11
[2026-10-18 22:00:11,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:00:12,078.078 INFO    ] Initializing speech engine...
[2026-10-18 22:00:12,085.085 INFO    ] 2026-10-18 22:00:12
[2026-10-18 22:00:12,344.344 INFO    ] 2026-10-18 22:00:12
[2026-10-18 22:00:12,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:00:12,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:00:12,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:00:12,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:00:12,886.886 INFO    ] time= 18/10/2026 22:00:12
[2026-10-18 22:00:12,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:00:12,910.910 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:00:13,043.043 INFO    ] No existing commands found in stream
[2026-10-18 22:00:18,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:00:18,065.065 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-18 22:00:21,834.834 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:00:21,837.837 INFO    ] Checking for system updates...
[2026-10-18 22:00:21,874.874 INFO    ] 200
[2026-10-18 22:00:21,876.876 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:00:21,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:00:21,930.930 INFO    ] No update needed
[2026-10-18 22:00:21,933.933 INFO    ] Checking for camera pi updates...
[2026-10-18 22:00:21,966.966 INFO    ] 200
[2026-10-18 22:00:21,969.969 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:00:22,010.010 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:00:32,025.025 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 22:00:32,060.060 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 22:00:32,070.070 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:00:32,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:00:32,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:00:32,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:00:34,123.123 INFO    ] ================================================
[2026-10-18 22:00:34,139.139 INFO    ] Launching Daemon at Sun Oct 18 22:00:34 IST 2026
[2026-10-18 22:00:34,151.151 INFO    ] ================================================
[2026-10-18 22:00:34,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:00:34
[2026-10-18 22:00:35,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:00:35,558.558 INFO    ] Initializing speech engine...
[2026-10-18 22:00:35,565.565 INFO    ] 2026-10-18 22:00:35
[2026-10-18 22:00:35,864.864 INFO    ] 2026-10-18 22:00:35
[2026-10-18 22:00:35,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:00:36,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:00:36,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:00:36,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:00:36,287.287 INFO    ] time= 18/10/2026 22:00:36
[2026-10-18 22:00:36,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:00:36,298.298 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:00:36,463.463 INFO    ] No existing commands found in stream
[2026-10-18 22:00:41,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:00:41,491.491 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-18 22:00:45,241.241 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:00:45,244.244 INFO    ] Checking for system updates...
[2026-10-18 22:00:45,280.280 INFO    ] 200
[2026-10-18 22:00:45,282.282 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:00:45,335.335 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:00:45,338.338 INFO    ] No update needed
[2026-10-18 22:00:45,340.340 INFO    ] Checking for camera pi updates...
[2026-10-18 22:00:45,373.373 INFO    ] 200
[2026-10-18 22:00:45,375.375 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:00:45,416.416 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:00:55,431.431 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 22:00:55,465.465 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 22:00:55,475.475 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:00:55,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:00:55,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:00:55,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:00:57,529.529 INFO    ] ================================================
[2026-10-18 22:00:57,544.544 INFO    ] Launching Daemon at Sun Oct 18 22:00:57 IST 2026
[2026-10-18 22:00:57,556.556 INFO    ] ================================================
[2026-10-18 22:00:58,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:00:58
[2026-10-18 22:00:58,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:00:59,199.199 INFO    ] Initializing speech engine...
[2026-10-18 22:00:59,207.207 INFO    ] 2026-10-18 22:00:59
[2026-10-18 22:00:59,506.506 INFO    ] 2026-10-18 22:00:59
[2026-10-18 22:00:59,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:00:59,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:00:59,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:01:00,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:01:00,053.053 INFO    ] time= 18/10/2026 22:01:00
[2026-10-18 22:01:00,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:01:00,102.102 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:01:00,261.261 INFO    ] No existing commands found in stream
[2026-10-18 22:01:05,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:01:05,295.295 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-18 22:01:06,832.832 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:01:06,835.835 INFO    ] Checking for system updates...
[2026-10-18 22:01:06,871.871 INFO    ] 200
[2026-10-18 22:01:06,874.874 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:01:06,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:01:06,935.935 INFO    ] No update needed
[2026-10-18 22:01:06,939.939 INFO    ] Checking for camera pi updates...
[2026-10-18 22:01:06,973.973 INFO    ] 200
[2026-10-18 22:01:06,976.976 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:01:07,017.017 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:01:17,033.033 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 22:01:17,073.073 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 22:01:17,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:01:17,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:01:17,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:01:17,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:01:19,145.145 INFO    ] ================================================
[2026-10-18 22:01:19,161.161 INFO    ] Launching Daemon at Sun Oct 18 22:01:19 IST 2026
[2026-10-18 22:01:19,174.174 INFO    ] ================================================
[2026-10-18 22:01:19,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:01:19
[2026-10-18 22:01:20,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:01:20,794.794 INFO    ] Initializing speech engine...
[2026-10-18 22:01:20,799.799 INFO    ] 2026-10-18 22:01:20
[2026-10-18 22:01:21,069.069 INFO    ] 2026-10-18 22:01:21
[2026-10-18 22:01:21,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:01:21,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:01:21,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:01:21,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:01:21,592.592 INFO    ] time= 18/10/2026 22:01:21
[2026-10-18 22:01:21,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:01:21,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:01:21,817.817 INFO    ] No existing commands found in stream
[2026-10-18 22:01:26,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:01:26,843.843 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-18 22:01:30,646.646 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:01:30,649.649 INFO    ] Checking for system updates...
[2026-10-18 22:01:30,687.687 INFO    ] 200
[2026-10-18 22:01:30,690.690 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:01:30,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:01:30,747.747 INFO    ] No update needed
[2026-10-18 22:01:30,750.750 INFO    ] Checking for camera pi updates...
[2026-10-18 22:01:30,785.785 INFO    ] 200
[2026-10-18 22:01:30,788.788 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:01:30,830.830 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:01:40,847.847 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 22:01:40,886.886 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 22:01:40,897.897 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:01:40,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:01:40,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:01:40,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:01:42,951.951 INFO    ] ================================================
[2026-10-18 22:01:42,967.967 INFO    ] Launching Daemon at Sun Oct 18 22:01:42 IST 2026
[2026-10-18 22:01:42,979.979 INFO    ] ================================================
[2026-10-18 22:01:43,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:01:43
[2026-10-18 22:01:44,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:01:44,406.406 INFO    ] Initializing speech engine...
[2026-10-18 22:01:44,421.421 INFO    ] 2026-10-18 22:01:44
[2026-10-18 22:01:44,704.704 INFO    ] 2026-10-18 22:01:44
[2026-10-18 22:01:44,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:01:45,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:01:45,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:01:45,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:01:45,331.331 INFO    ] time= 18/10/2026 22:01:45
[2026-10-18 22:01:45,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:01:45,355.355 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:01:45,476.476 INFO    ] No existing commands found in stream
[2026-10-18 22:01:50,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:01:50,510.510 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-18 22:01:54,585.585 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:01:54,588.588 INFO    ] Checking for system updates...
[2026-10-18 22:01:54,627.627 INFO    ] 200
[2026-10-18 22:01:54,630.630 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:01:54,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:01:54,690.690 INFO    ] No update needed
[2026-10-18 22:01:54,693.693 INFO    ] Checking for camera pi updates...
[2026-10-18 22:01:54,729.729 INFO    ] 200
[2026-10-18 22:01:54,731.731 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:01:54,775.775 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:02:04,790.790 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 22:02:04,825.825 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 22:02:04,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:02:04,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:02:04,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:02:04,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:02:06,887.887 INFO    ] ================================================
[2026-10-18 22:02:06,903.903 INFO    ] Launching Daemon at Sun Oct 18 22:02:06 IST 2026
[2026-10-18 22:02:06,914.914 INFO    ] ================================================
[2026-10-18 22:02:07,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:02:07
[2026-10-18 22:02:08,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:02:08,374.374 INFO    ] Initializing speech engine...
[2026-10-18 22:02:08,379.379 INFO    ] 2026-10-18 22:02:08
[2026-10-18 22:02:08,641.641 INFO    ] 2026-10-18 22:02:08
[2026-10-18 22:02:08,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:02:08,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:02:08,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:02:09,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:02:09,136.136 INFO    ] time= 18/10/2026 22:02:09
[2026-10-18 22:02:09,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:02:09,194.194 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:02:09,340.340 INFO    ] No existing commands found in stream
[2026-10-18 22:02:14,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:02:14,359.359 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-18 22:02:16,784.784 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:02:16,787.787 INFO    ] Checking for system updates...
[2026-10-18 22:02:16,823.823 INFO    ] 200
[2026-10-18 22:02:16,825.825 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:02:16,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:02:16,882.882 INFO    ] No update needed
[2026-10-18 22:02:16,885.885 INFO    ] Checking for camera pi updates...
[2026-10-18 22:02:16,920.920 INFO    ] 200
[2026-10-18 22:02:16,923.923 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:02:16,963.963 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:02:26,978.978 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 22:02:27,014.014 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 22:02:27,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:02:27,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:02:27,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:02:27,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:02:29,077.077 INFO    ] ================================================
[2026-10-18 22:02:29,092.092 INFO    ] Launching Daemon at Sun Oct 18 22:02:29 IST 2026
[2026-10-18 22:02:29,102.102 INFO    ] ================================================
[2026-10-18 22:02:29,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:02:29
[2026-10-18 22:02:30,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:02:30,526.526 INFO    ] Initializing speech engine...
[2026-10-18 22:02:30,535.535 INFO    ] 2026-10-18 22:02:30
[2026-10-18 22:02:30,795.795 INFO    ] 2026-10-18 22:02:30
[2026-10-18 22:02:30,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:02:31,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:02:31,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:02:31,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:02:31,306.306 INFO    ] time= 18/10/2026 22:02:31
[2026-10-18 22:02:31,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:02:31,386.386 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:02:31,547.547 INFO    ] No existing commands found in stream
[2026-10-18 22:02:36,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:02:36,572.572 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-18 22:02:40,169.169 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:02:40,171.171 INFO    ] Checking for system updates...
[2026-10-18 22:02:40,207.207 INFO    ] 200
[2026-10-18 22:02:40,210.210 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:02:40,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:02:40,265.265 INFO    ] No update needed
[2026-10-18 22:02:40,268.268 INFO    ] Checking for camera pi updates...
[2026-10-18 22:02:40,301.301 INFO    ] 200
[2026-10-18 22:02:40,304.304 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:02:40,344.344 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:02:50,360.360 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d72150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 22:02:50,395.395 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 22:02:50,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:02:50,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:02:50,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:02:50,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:02:52,459.459 INFO    ] ================================================
[2026-10-18 22:02:52,474.474 INFO    ] Launching Daemon at Sun Oct 18 22:02:52 IST 2026
[2026-10-18 22:02:52,486.486 INFO    ] ================================================
[2026-10-18 22:02:53,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:02:53
[2026-10-18 22:02:53,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:02:53,915.915 INFO    ] Initializing speech engine...
[2026-10-18 22:02:53,924.924 INFO    ] 2026-10-18 22:02:53
[2026-10-18 22:02:54,175.175 INFO    ] 2026-10-18 22:02:54
[2026-10-18 22:02:54,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:02:54,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:02:54,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:02:54,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:02:54,681.681 INFO    ] time= 18/10/2026 22:02:54
[2026-10-18 22:02:54,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:02:54,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:02:54,881.881 INFO    ] No existing commands found in stream
[2026-10-18 22:02:59,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:02:59,912.912 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-18 22:03:04,030.030 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:03:04,032.032 INFO    ] Checking for system updates...
[2026-10-18 22:03:04,068.068 INFO    ] 200
[2026-10-18 22:03:04,071.071 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:03:04,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:03:04,126.126 INFO    ] No update needed
[2026-10-18 22:03:04,129.129 INFO    ] Checking for camera pi updates...
[2026-10-18 22:03:04,162.162 INFO    ] 200
[2026-10-18 22:03:04,164.164 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:03:04,204.204 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:03:14,220.220 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf1150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 22:03:14,256.256 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 22:03:14,266.266 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:03:14,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:03:14,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:03:14,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:03:16,319.319 INFO    ] ================================================
[2026-10-18 22:03:16,336.336 INFO    ] Launching Daemon at Sun Oct 18 22:03:16 IST 2026
[2026-10-18 22:03:16,347.347 INFO    ] ================================================
[2026-10-18 22:03:16,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:03:16
[2026-10-18 22:03:17,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:03:17,869.869 INFO    ] Initializing speech engine...
[2026-10-18 22:03:17,875.875 INFO    ] 2026-10-18 22:03:17
[2026-10-18 22:03:18,136.136 INFO    ] 2026-10-18 22:03:18
[2026-10-18 22:03:18,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:03:18,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:03:18,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:03:18,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:03:18,597.597 INFO    ] time= 18/10/2026 22:03:18
[2026-10-18 22:03:18,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:03:18,701.701 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:03:18,809.809 INFO    ] No existing commands found in stream
[2026-10-18 22:03:23,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:03:23,825.825 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-18 22:03:25,201.201 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:03:25,204.204 INFO    ] Checking for system updates...
[2026-10-18 22:03:25,240.240 INFO    ] 200
[2026-10-18 22:03:25,242.242 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:03:25,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:03:25,297.297 INFO    ] No update needed
[2026-10-18 22:03:25,300.300 INFO    ] Checking for camera pi updates...
[2026-10-18 22:03:25,333.333 INFO    ] 200
[2026-10-18 22:03:25,336.336 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:03:25,376.376 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:03:35,388.388 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d33150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 22:03:35,424.424 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 22:03:35,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:03:35,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:03:35,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:03:35,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:03:37,490.490 INFO    ] ================================================
[2026-10-18 22:03:37,505.505 INFO    ] Launching Daemon at Sun Oct 18 22:03:37 IST 2026
[2026-10-18 22:03:37,516.516 INFO    ] ================================================
[2026-10-18 22:03:38,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:03:38
[2026-10-18 22:03:38,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:03:38,972.972 INFO    ] Initializing speech engine...
[2026-10-18 22:03:38,998.998 INFO    ] 2026-10-18 22:03:38
[2026-10-18 22:03:39,273.273 INFO    ] 2026-10-18 22:03:39
[2026-10-18 22:03:39,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:03:39,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:03:39,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:03:39,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:03:39,775.775 INFO    ] time= 18/10/2026 22:03:39
[2026-10-18 22:03:39,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:03:39,889.889 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:03:40,053.053 INFO    ] No existing commands found in stream
[2026-10-18 22:03:45,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:03:45,079.079 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-18 22:03:45,928.928 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:03:45,931.931 INFO    ] Checking for system updates...
[2026-10-18 22:03:45,968.968 INFO    ] 200
[2026-10-18 22:03:45,970.970 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:03:46,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:03:46,031.031 INFO    ] No update needed
[2026-10-18 22:03:46,034.034 INFO    ] Checking for camera pi updates...
[2026-10-18 22:03:46,071.071 INFO    ] 200
[2026-10-18 22:03:46,074.074 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:03:46,115.115 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:03:56,128.128 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 22:03:56,164.164 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 22:03:56,174.174 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:03:56,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:03:56,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:03:56,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:03:58,227.227 INFO    ] ================================================
[2026-10-18 22:03:58,243.243 INFO    ] Launching Daemon at Sun Oct 18 22:03:58 IST 2026
[2026-10-18 22:03:58,254.254 INFO    ] ================================================
[2026-10-18 22:03:58,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:03:58
[2026-10-18 22:03:59,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:03:59,727.727 INFO    ] Initializing speech engine...
[2026-10-18 22:03:59,736.736 INFO    ] 2026-10-18 22:03:59
[2026-10-18 22:03:59,994.994 INFO    ] 2026-10-18 22:03:59
[2026-10-18 22:04:00,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:04:00,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:04:00,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:04:00,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:04:00,543.543 INFO    ] time= 18/10/2026 22:04:00
[2026-10-18 22:04:00,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:04:00,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:04:00,699.699 INFO    ] No existing commands found in stream
[2026-10-18 22:04:05,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:04:05,726.726 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-18 22:04:06,558.558 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:04:06,561.561 INFO    ] Checking for system updates...
[2026-10-18 22:04:06,597.597 INFO    ] 200
[2026-10-18 22:04:06,599.599 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:04:06,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:04:06,653.653 INFO    ] No update needed
[2026-10-18 22:04:06,656.656 INFO    ] Checking for camera pi updates...
[2026-10-18 22:04:06,689.689 INFO    ] 200
[2026-10-18 22:04:06,692.692 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:04:06,732.732 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:04:16,747.747 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73df2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 22:04:16,783.783 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 22:04:16,793.793 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:04:16,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:04:16,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:04:16,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:04:18,846.846 INFO    ] ================================================
[2026-10-18 22:04:18,861.861 INFO    ] Launching Daemon at Sun Oct 18 22:04:18 IST 2026
[2026-10-18 22:04:18,872.872 INFO    ] ================================================
[2026-10-18 22:04:19,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:04:19
[2026-10-18 22:04:20,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:04:20,300.300 INFO    ] Initializing speech engine...
[2026-10-18 22:04:20,303.303 INFO    ] 2026-10-18 22:04:20
[2026-10-18 22:04:20,598.598 INFO    ] 2026-10-18 22:04:20
[2026-10-18 22:04:20,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:04:20,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:04:20,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:04:21,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:04:21,160.160 INFO    ] time= 18/10/2026 22:04:21
[2026-10-18 22:04:21,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:04:21,185.185 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:04:21,350.350 INFO    ] No existing commands found in stream
[2026-10-18 22:04:26,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:04:26,385.385 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-18 22:04:30,038.038 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:04:30,041.041 INFO    ] Checking for system updates...
[2026-10-18 22:04:30,079.079 INFO    ] 200
[2026-10-18 22:04:30,082.082 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:04:30,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:04:30,138.138 INFO    ] No update needed
[2026-10-18 22:04:30,141.141 INFO    ] Checking for camera pi updates...
[2026-10-18 22:04:30,179.179 INFO    ] 200
[2026-10-18 22:04:30,181.181 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:04:30,222.222 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:04:40,237.237 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 22:04:40,273.273 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 22:04:40,283.283 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:04:40,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:04:40,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:04:40,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:04:42,336.336 INFO    ] ================================================
[2026-10-18 22:04:42,351.351 INFO    ] Launching Daemon at Sun Oct 18 22:04:42 IST 2026
[2026-10-18 22:04:42,362.362 INFO    ] ================================================
[2026-10-18 22:04:42,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:04:42
[2026-10-18 22:04:43,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:04:43,838.838 INFO    ] Initializing speech engine...
[2026-10-18 22:04:43,847.847 INFO    ] 2026-10-18 22:04:43
[2026-10-18 22:04:44,108.108 INFO    ] 2026-10-18 22:04:44
[2026-10-18 22:04:44,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:04:44,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:04:44,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:04:44,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:04:44,601.601 INFO    ] time= 18/10/2026 22:04:44
[2026-10-18 22:04:44,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:04:44,666.666 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:04:44,813.813 INFO    ] No existing commands found in stream
[2026-10-18 22:04:49,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:04:49,839.839 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-18 22:04:50,421.421 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:04:50,424.424 INFO    ] Checking for system updates...
[2026-10-18 22:04:50,461.461 INFO    ] 200
[2026-10-18 22:04:50,464.464 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:04:50,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:04:50,527.527 INFO    ] No update needed
[2026-10-18 22:04:50,529.529 INFO    ] Checking for camera pi updates...
[2026-10-18 22:04:50,564.564 INFO    ] 200
[2026-10-18 22:04:50,566.566 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:04:50,612.612 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:05:00,627.627 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 22:05:00,663.663 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 22:05:00,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:05:00,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:05:00,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:05:00,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:05:02,735.735 INFO    ] ================================================
[2026-10-18 22:05:02,756.756 INFO    ] Launching Daemon at Sun Oct 18 22:05:02 IST 2026
[2026-10-18 22:05:02,771.771 INFO    ] ================================================
[2026-10-18 22:05:03,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:05:03
[2026-10-18 22:05:04,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:05:04,380.380 INFO    ] Initializing speech engine...
[2026-10-18 22:05:04,386.386 INFO    ] 2026-10-18 22:05:04
[2026-10-18 22:05:04,678.678 INFO    ] 2026-10-18 22:05:04
[2026-10-18 22:05:04,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:05:04,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:05:04,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:05:05,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:05:05,141.141 INFO    ] time= 18/10/2026 22:05:05
[2026-10-18 22:05:05,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:05:05,267.267 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:05:05,398.398 INFO    ] No existing commands found in stream
[2026-10-18 22:05:10,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:05:10,429.429 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-18 22:05:12,289.289 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:05:12,292.292 INFO    ] Checking for system updates...
[2026-10-18 22:05:12,327.327 INFO    ] 200
[2026-10-18 22:05:12,330.330 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:05:12,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:05:12,384.384 INFO    ] No update needed
[2026-10-18 22:05:12,386.386 INFO    ] Checking for camera pi updates...
[2026-10-18 22:05:12,423.423 INFO    ] 200
[2026-10-18 22:05:12,426.426 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:05:12,466.466 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:05:22,482.482 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d32150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 22:05:22,517.517 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 22:05:22,528.528 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:05:22,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:05:22,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:05:22,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:05:24,581.581 INFO    ] ================================================
[2026-10-18 22:05:24,597.597 INFO    ] Launching Daemon at Sun Oct 18 22:05:24 IST 2026
[2026-10-18 22:05:24,608.608 INFO    ] ================================================
[2026-10-18 22:05:25,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:05:25
[2026-10-18 22:05:25,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:05:26,212.212 INFO    ] Initializing speech engine...
[2026-10-18 22:05:26,223.223 INFO    ] 2026-10-18 22:05:26
[2026-10-18 22:05:26,498.498 INFO    ] 2026-10-18 22:05:26
[2026-10-18 22:05:26,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:05:26,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:05:26,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:05:27,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:05:27,033.033 INFO    ] time= 18/10/2026 22:05:27
[2026-10-18 22:05:27,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:05:27,059.059 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:05:27,183.183 INFO    ] No existing commands found in stream
[2026-10-18 22:05:32,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:05:32,201.201 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-18 22:05:35,599.599 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:05:35,601.601 INFO    ] Checking for system updates...
[2026-10-18 22:05:35,647.647 INFO    ] 200
[2026-10-18 22:05:35,650.650 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:05:35,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:05:35,713.713 INFO    ] No update needed
[2026-10-18 22:05:35,715.715 INFO    ] Checking for camera pi updates...
[2026-10-18 22:05:35,749.749 INFO    ] 200
[2026-10-18 22:05:35,752.752 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:05:35,793.793 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:05:45,804.804 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf0150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 22:05:45,839.839 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 22:05:45,849.849 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:05:45,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:05:45,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:05:45,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:05:47,901.901 INFO    ] ================================================
[2026-10-18 22:05:47,917.917 INFO    ] Launching Daemon at Sun Oct 18 22:05:47 IST 2026
[2026-10-18 22:05:47,928.928 INFO    ] ================================================
[2026-10-18 22:05:48,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:05:48
[2026-10-18 22:05:49,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:05:49,366.366 INFO    ] Initializing speech engine...
[2026-10-18 22:05:49,372.372 INFO    ] 2026-10-18 22:05:49
[2026-10-18 22:05:49,664.664 INFO    ] 2026-10-18 22:05:49
[2026-10-18 22:05:49,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:05:49,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:05:49,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:05:50,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:05:50,151.151 INFO    ] time= 18/10/2026 22:05:50
[2026-10-18 22:05:50,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:05:50,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:05:50,352.352 INFO    ] No existing commands found in stream
[2026-10-18 22:05:55,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:05:55,367.367 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-18 22:05:59,032.032 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:05:59,034.034 INFO    ] Checking for system updates...
[2026-10-18 22:05:59,070.070 INFO    ] 200
[2026-10-18 22:05:59,073.073 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:05:59,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:05:59,127.127 INFO    ] No update needed
[2026-10-18 22:05:59,130.130 INFO    ] Checking for camera pi updates...
[2026-10-18 22:05:59,167.167 INFO    ] 200
[2026-10-18 22:05:59,169.169 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:05:59,210.210 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:06:09,224.224 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 22:06:09,260.260 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 22:06:09,270.270 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:06:09,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:06:09,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:06:09,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:06:11,324.324 INFO    ] ================================================
[2026-10-18 22:06:11,340.340 INFO    ] Launching Daemon at Sun Oct 18 22:06:11 IST 2026
[2026-10-18 22:06:11,350.350 INFO    ] ================================================
[2026-10-18 22:06:11,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:06:11
[2026-10-18 22:06:12,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:06:12,781.781 INFO    ] Initializing speech engine...
[2026-10-18 22:06:12,790.790 INFO    ] 2026-10-18 22:06:12
[2026-10-18 22:06:13,053.053 INFO    ] 2026-10-18 22:06:13
[2026-10-18 22:06:13,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:06:13,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:06:13,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:06:13,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:06:13,603.603 INFO    ] time= 18/10/2026 22:06:13
[2026-10-18 22:06:13,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:06:13,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:06:13,756.756 INFO    ] No existing commands found in stream
[2026-10-18 22:06:18,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:06:18,780.780 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-18 22:06:22,001.001 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:06:22,004.004 INFO    ] Checking for system updates...
[2026-10-18 22:06:22,040.040 INFO    ] 200
[2026-10-18 22:06:22,043.043 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:06:22,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:06:22,097.097 INFO    ] No update needed
[2026-10-18 22:06:22,100.100 INFO    ] Checking for camera pi updates...
[2026-10-18 22:06:22,137.137 INFO    ] 200
[2026-10-18 22:06:22,140.140 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:06:22,180.180 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:06:32,195.195 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d6e150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 22:06:32,233.233 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 22:06:32,244.244 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:06:32,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:06:32,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:06:32,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:06:34,302.302 INFO    ] ================================================
[2026-10-18 22:06:34,318.318 INFO    ] Launching Daemon at Sun Oct 18 22:06:34 IST 2026
[2026-10-18 22:06:34,329.329 INFO    ] ================================================
[2026-10-18 22:06:34,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:06:34
[2026-10-18 22:06:35,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:06:35,754.754 INFO    ] Initializing speech engine...
[2026-10-18 22:06:35,764.764 INFO    ] 2026-10-18 22:06:35
[2026-10-18 22:06:36,023.023 INFO    ] 2026-10-18 22:06:36
[2026-10-18 22:06:36,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:06:36,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:06:36,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:06:36,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:06:36,566.566 INFO    ] time= 18/10/2026 22:06:36
[2026-10-18 22:06:36,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:06:36,589.589 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:06:36,722.722 INFO    ] No existing commands found in stream
[2026-10-18 22:06:41,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:06:41,753.753 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-18 22:06:45,468.468 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:06:45,471.471 INFO    ] Checking for system updates...
[2026-10-18 22:06:45,507.507 INFO    ] 200
[2026-10-18 22:06:45,509.509 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:06:45,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:06:45,571.571 INFO    ] No update needed
[2026-10-18 22:06:45,573.573 INFO    ] Checking for camera pi updates...
[2026-10-18 22:06:45,606.606 INFO    ] 200
[2026-10-18 22:06:45,609.609 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:06:45,650.650 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:06:55,665.665 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db2150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 22:06:55,701.701 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 22:06:55,710.710 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:06:55,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:06:55,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:06:55,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:06:57,765.765 INFO    ] ================================================
[2026-10-18 22:06:57,781.781 INFO    ] Launching Daemon at Sun Oct 18 22:06:57 IST 2026
[2026-10-18 22:06:57,792.792 INFO    ] ================================================
[2026-10-18 22:06:58,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:06:58
[2026-10-18 22:06:58,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:06:59,254.254 INFO    ] Initializing speech engine...
[2026-10-18 22:06:59,261.261 INFO    ] 2026-10-18 22:06:59
[2026-10-18 22:06:59,521.521 INFO    ] 2026-10-18 22:06:59
[2026-10-18 22:06:59,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:06:59,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:06:59,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:07:00,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:07:00,032.032 INFO    ] time= 18/10/2026 22:07:00
[2026-10-18 22:07:00,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:07:00,126.126 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:07:00,301.301 INFO    ] No existing commands found in stream
[2026-10-18 22:07:05,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:07:05,334.334 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-18 22:07:08,409.409 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:07:08,411.411 INFO    ] Checking for system updates...
[2026-10-18 22:07:08,451.451 INFO    ] 200
[2026-10-18 22:07:08,454.454 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:07:08,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:07:08,509.509 INFO    ] No update needed
[2026-10-18 22:07:08,511.511 INFO    ] Checking for camera pi updates...
[2026-10-18 22:07:08,548.548 INFO    ] 200
[2026-10-18 22:07:08,551.551 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:07:08,595.595 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:07:18,610.610 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam04202203.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73cf3150>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-18 22:07:18,645.645 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-18 22:07:18,654.654 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:07:18,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:07:18,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:07:18,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:07:20,707.707 INFO    ] ================================================
[2026-10-18 22:07:20,722.722 INFO    ] Launching Daemon at Sun Oct 18 22:07:20 IST 2026
[2026-10-18 22:07:20,732.732 INFO    ] ================================================
[2026-10-18 22:07:21,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:07:21
[2026-10-18 22:07:21,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:07:22,184.184 INFO    ] Initializing speech engine...
[2026-10-18 22:07:22,209.209 INFO    ] 2026-10-18 22:07:22
[2026-10-18 22:07:22,486.486 INFO    ] 2026-10-18 22:07:22
[2026-10-18 22:07:22,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:07:22,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:07:22,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:07:22,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:07:22,910.910 INFO    ] time= 18/10/2026 22:07:22
[2026-10-18 22:07:22,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:07:22,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:07:23,104.104 INFO    ] No existing commands found in stream
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             [2026-10-18 21:37:02,161.161 INFO    ] ================================================
[2026-10-18 21:37:02,186.186 INFO    ] Launching Daemon at Sun Oct 18 21:37:02 IST 2026
[2026-10-18 21:37:02,200.200 INFO    ] ================================================
[2026-10-18 21:37:02,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:37:02
[2026-10-18 21:37:03,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:37:04,056.056 INFO    ] Initializing speech engine...
[2026-10-18 21:37:04,064.064 INFO    ] 2026-10-18 21:37:04
[2026-10-18 21:37:04,682.682 INFO    ] 2026-10-18 21:37:04
[2026-10-18 21:37:04,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:37:07,861.861 INFO    ] VendingMachinePublisher.__init__: Redis error: Error -3 connecting to live.vendingbuddy.in:23294. Temporary failure in name resolution.
[2026-10-18 21:37:07,900.900 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-18 21:37:07,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:37:07,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:37:07,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:37:09,951.951 INFO    ] ================================================
[2026-10-18 21:37:09,967.967 INFO    ] Launching Daemon at Sun Oct 18 21:37:09 IST 2026
[2026-10-18 21:37:09,978.978 INFO    ] ================================================
[2026-10-18 21:37:10,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:37:10
[2026-10-18 21:37:11,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:37:11,457.457 INFO    ] Initializing speech engine...
[2026-10-18 21:37:11,471.471 INFO    ] 2026-10-18 21:37:11
[2026-10-18 21:37:11,766.766 INFO    ] 2026-10-18 21:37:11
[2026-10-18 21:37:11,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:37:17,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:37:17,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:37:17,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:37:17,383.383 INFO    ] time= 18/10/2026 21:37:17
[2026-10-18 21:37:17,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:37:17,388.388 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:37:17,462.462 INFO    ] No existing commands found in stream
[2026-10-18 21:37:22,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:37:22,474.474 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-18 21:37:26,656.656 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 21:37:26,659.659 INFO    ] Checking for system updates...
[2026-10-18 21:37:26,701.701 INFO    ] 200
[2026-10-18 21:37:26,704.704 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:37:26,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:37:26,770.770 INFO    ] No update needed
[2026-10-18 21:37:26,773.773 INFO    ] Checking for camera pi updates...
[2026-10-18 21:37:26,807.807 INFO    ] 200
[2026-10-18 21:37:26,810.810 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 21:37:26,857.857 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 21:37:26,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 21:37:26,949.949 INFO    ] No camera update needed
[2026-10-18 21:37:26,952.952 INFO    ] Script finished. Safe exiting...
[2026-10-18 21:37:26,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 21:37:26,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 21:37:26,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 21:37:29,005.005 INFO    ] ================================================
[2026-10-18 21:37:29,020.020 INFO    ] Launching Daemon at Sun Oct 18 21:37:29 IST 2026
[2026-10-18 21:37:29,031.031 INFO    ] ================================================
[2026-10-18 21:37:29,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 21:37:29
[2026-10-18 21:37:30,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 21:37:30,452.452 INFO    ] Initializing speech engine...
[2026-10-18 21:37:30,458.458 INFO    ] 2026-10-18 21:37:30
[2026-10-18 21:37:30,766.766 INFO    ] 2026-10-18 21:37:30
[2026-10-18 21:37:30,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 21:37:31,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 21:37:31,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 21:37:31,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 21:37:31,204.204 INFO    ] time= 18/10/2026 21:37:31
[2026-10-18 21:37:31,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 21:37:31,220.220 INFO    ] Checking for existing commands in stream...
[2026-10-18 21:37:31,300.300 INFO    ] No existing commands found in stream
[2026-10-18 21:37:36,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 21:37:36,339.339 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-18 22:14:55,180.180 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:14:55,184.184 INFO    ] Checking for system updates...
[2026-10-18 22:15:00,136.136 INFO    ] 200
[2026-10-18 22:15:00,139.139 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:15:00,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:15:00,274.274 INFO    ] No update needed
[2026-10-18 22:15:00,277.277 INFO    ] Checking for camera pi updates...
[2026-10-18 22:15:00,317.317 INFO    ] 200
[2026-10-18 22:15:00,320.320 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:15:00,362.362 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:15:00,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:15:00,513.513 INFO    ] No camera update needed
[2026-10-18 22:15:00,515.515 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:15:00,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:15:00,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:15:00,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:15:02,569.569 INFO    ] ================================================
[2026-10-18 22:15:02,585.585 INFO    ] Launching Daemon at Sun Oct 18 22:15:02 IST 2026
[2026-10-18 22:15:02,595.595 INFO    ] ================================================
[2026-10-18 22:15:03,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:15:03
[2026-10-18 22:15:03,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:15:04,010.010 INFO    ] Initializing speech engine...
[2026-10-18 22:15:04,017.017 INFO    ] 2026-10-18 22:15:04
[2026-10-18 22:15:04,317.317 INFO    ] 2026-10-18 22:15:04
[2026-10-18 22:15:04,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:15:04,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:15:04,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:15:04,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:15:04,747.747 INFO    ] time= 18/10/2026 22:15:04
[2026-10-18 22:15:04,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:15:04,758.758 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:15:04,883.883 INFO    ] No existing commands found in stream
[2026-10-18 22:15:09,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:15:09,906.906 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-18 22:15:11,932.932 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:15:11,935.935 INFO    ] Checking for system updates...
[2026-10-18 22:15:11,973.973 INFO    ] 200
[2026-10-18 22:15:11,976.976 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:15:12,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:15:12,042.042 INFO    ] No update needed
[2026-10-18 22:15:12,045.045 INFO    ] Checking for camera pi updates...
[2026-10-18 22:15:12,081.081 INFO    ] 200
[2026-10-18 22:15:12,084.084 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:15:12,127.127 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:15:12,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:15:12,171.171 INFO    ] No camera update needed
[2026-10-18 22:15:12,174.174 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:15:12,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:15:12,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:15:12,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:15:14,231.231 INFO    ] ================================================
[2026-10-18 22:15:14,248.248 INFO    ] Launching Daemon at Sun Oct 18 22:15:14 IST 2026
[2026-10-18 22:15:14,259.259 INFO    ] ================================================
[2026-10-18 22:15:14,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:15:14
[2026-10-18 22:15:15,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:15:15,850.850 INFO    ] Initializing speech engine...
[2026-10-18 22:15:15,864.864 INFO    ] 2026-10-18 22:15:15
[2026-10-18 22:15:16,154.154 INFO    ] 2026-10-18 22:15:16
[2026-10-18 22:15:16,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:15:16,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:15:16,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:15:16,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:15:16,688.688 INFO    ] time= 18/10/2026 22:15:16
[2026-10-18 22:15:16,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:15:16,712.712 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:15:16,843.843 INFO    ] No existing commands found in stream
[2026-10-18 22:15:21,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:15:21,865.865 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-18 22:15:24,027.027 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:15:24,030.030 INFO    ] Checking for system updates...
[2026-10-18 22:15:24,067.067 INFO    ] 200
[2026-10-18 22:15:24,070.070 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:15:24,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:15:24,126.126 INFO    ] No update needed
[2026-10-18 22:15:24,128.128 INFO    ] Checking for camera pi updates...
[2026-10-18 22:15:24,162.162 INFO    ] 200
[2026-10-18 22:15:24,165.165 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:15:24,204.204 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:15:24,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:15:24,246.246 INFO    ] No camera update needed
[2026-10-18 22:15:24,248.248 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:15:24,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:15:24,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:15:24,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:15:26,302.302 INFO    ] ================================================
[2026-10-18 22:15:26,317.317 INFO    ] Launching Daemon at Sun Oct 18 22:15:26 IST 2026
[2026-10-18 22:15:26,328.328 INFO    ] ================================================
[2026-10-18 22:15:26,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:15:26
[2026-10-18 22:15:27,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:15:28,002.002 INFO    ] Initializing speech engine...
[2026-10-18 22:15:28,014.014 INFO    ] 2026-10-18 22:15:28
[2026-10-18 22:15:28,280.280 INFO    ] 2026-10-18 22:15:28
[2026-10-18 22:15:28,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:15:28,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:15:28,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:15:28,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:15:28,818.818 INFO    ] time= 18/10/2026 22:15:28
[2026-10-18 22:15:28,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:15:28,839.839 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:15:28,976.976 INFO    ] No existing commands found in stream
[2026-10-18 22:15:33,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:15:33,995.995 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-18 22:15:36,819.819 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:15:36,821.821 INFO    ] Checking for system updates...
[2026-10-18 22:15:36,857.857 INFO    ] 200
[2026-10-18 22:15:36,860.860 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:15:36,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:15:36,914.914 INFO    ] No update needed
[2026-10-18 22:15:36,917.917 INFO    ] Checking for camera pi updates...
[2026-10-18 22:15:36,950.950 INFO    ] 200
[2026-10-18 22:15:36,952.952 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:15:36,992.992 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:15:37,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:15:37,040.040 INFO    ] No camera update needed
[2026-10-18 22:15:37,043.043 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:15:37,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:15:37,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:15:37,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:15:39,095.095 INFO    ] ================================================
[2026-10-18 22:15:39,110.110 INFO    ] Launching Daemon at Sun Oct 18 22:15:39 IST 2026
[2026-10-18 22:15:39,121.121 INFO    ] ================================================
[2026-10-18 22:15:39,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:15:39
[2026-10-18 22:15:40,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:15:40,546.546 INFO    ] Initializing speech engine...
[2026-10-18 22:15:40,555.555 INFO    ] 2026-10-18 22:15:40
[2026-10-18 22:15:40,801.801 INFO    ] 2026-10-18 22:15:40
[2026-10-18 22:15:40,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:15:41,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:15:41,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:15:41,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:15:41,305.305 INFO    ] time= 18/10/2026 22:15:41
[2026-10-18 22:15:41,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:15:41,388.388 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:15:41,519.519 INFO    ] No existing commands found in stream
[2026-10-18 22:15:46,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:15:46,543.543 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-18 22:15:50,245.245 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:15:50,248.248 INFO    ] Checking for system updates...
[2026-10-18 22:15:50,283.283 INFO    ] 200
[2026-10-18 22:15:50,285.285 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:15:50,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:15:50,342.342 INFO    ] No update needed
[2026-10-18 22:15:50,344.344 INFO    ] Checking for camera pi updates...
[2026-10-18 22:15:50,377.377 INFO    ] 200
[2026-10-18 22:15:50,380.380 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:15:50,419.419 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:15:50,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:15:50,460.460 INFO    ] No camera update needed
[2026-10-18 22:15:50,463.463 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:15:50,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:15:50,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:15:50,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:15:52,516.516 INFO    ] ================================================
[2026-10-18 22:15:52,532.532 INFO    ] Launching Daemon at Sun Oct 18 22:15:52 IST 2026
[2026-10-18 22:15:52,543.543 INFO    ] ================================================
[2026-10-18 22:15:53,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:15:53
[2026-10-18 22:15:53,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:15:54,045.045 INFO    ] Initializing speech engine...
[2026-10-18 22:15:54,054.054 INFO    ] 2026-10-18 22:15:54
[2026-10-18 22:15:54,347.347 INFO    ] 2026-10-18 22:15:54
[2026-10-18 22:15:54,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:15:54,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:15:54,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:15:54,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:15:54,879.879 INFO    ] time= 18/10/2026 22:15:54
[2026-10-18 22:15:54,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:15:54,994.994 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:15:55,124.124 INFO    ] No existing commands found in stream
[2026-10-18 22:16:00,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:16:00,145.145 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-18 22:16:03,096.096 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:16:03,099.099 INFO    ] Checking for system updates...
[2026-10-18 22:16:03,153.153 INFO    ] 200
[2026-10-18 22:16:03,156.156 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:16:03,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:16:03,231.231 INFO    ] No update needed
[2026-10-18 22:16:03,234.234 INFO    ] Checking for camera pi updates...
[2026-10-18 22:16:03,274.274 INFO    ] 200
[2026-10-18 22:16:03,277.277 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:16:03,323.323 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:16:03,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:16:03,368.368 INFO    ] No camera update needed
[2026-10-18 22:16:03,371.371 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:16:03,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:16:03,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:16:03,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:16:05,429.429 INFO    ] ================================================
[2026-10-18 22:16:05,444.444 INFO    ] Launching Daemon at Sun Oct 18 22:16:05 IST 2026
[2026-10-18 22:16:05,455.455 INFO    ] ================================================
[2026-10-18 22:16:06,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:16:06
[2026-10-18 22:16:06,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:16:06,903.903 INFO    ] Initializing speech engine...
[2026-10-18 22:16:06,909.909 INFO    ] 2026-10-18 22:16:06
[2026-10-18 22:16:07,159.159 INFO    ] 2026-10-18 22:16:07
[2026-10-18 22:16:07,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:16:07,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:16:07,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:16:07,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:16:07,727.727 INFO    ] time= 18/10/2026 22:16:07
[2026-10-18 22:16:07,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:16:07,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:16:07,932.932 INFO    ] No existing commands found in stream
[2026-10-18 22:16:12,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:16:12,961.961 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-18 22:16:17,057.057 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:16:17,060.060 INFO    ] Checking for system updates...
[2026-10-18 22:16:17,102.102 INFO    ] 200
[2026-10-18 22:16:17,104.104 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:16:17,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:16:17,160.160 INFO    ] No update needed
[2026-10-18 22:16:17,162.162 INFO    ] Checking for camera pi updates...
[2026-10-18 22:16:17,196.196 INFO    ] 200
[2026-10-18 22:16:17,198.198 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:16:17,238.238 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:16:17,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:16:17,280.280 INFO    ] No camera update needed
[2026-10-18 22:16:17,282.282 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:16:17,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:16:17,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:16:17,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:16:19,342.342 INFO    ] ================================================
[2026-10-18 22:16:19,356.356 INFO    ] Launching Daemon at Sun Oct 18 22:16:19 IST 2026
[2026-10-18 22:16:19,367.367 INFO    ] ================================================
[2026-10-18 22:16:19,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:16:19
[2026-10-18 22:16:20,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:16:20,995.995 INFO    ] Initializing speech engine...
[2026-10-18 22:16:21,007.007 INFO    ] 2026-10-18 22:16:21
[2026-10-18 22:16:21,299.299 INFO    ] 2026-10-18 22:16:21
[2026-10-18 22:16:21,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:16:21,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:16:21,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:16:21,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:16:21,848.848 INFO    ] time= 18/10/2026 22:16:21
[2026-10-18 22:16:21,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:16:21,897.897 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:16:22,007.007 INFO    ] No existing commands found in stream
[2026-10-18 22:16:27,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:16:27,036.036 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-18 22:16:29,578.578 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:16:29,581.581 INFO    ] Checking for system updates...
[2026-10-18 22:16:29,618.618 INFO    ] 200
[2026-10-18 22:16:29,620.620 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:16:29,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:16:29,679.679 INFO    ] No update needed
[2026-10-18 22:16:29,681.681 INFO    ] Checking for camera pi updates...
[2026-10-18 22:16:29,715.715 INFO    ] 200
[2026-10-18 22:16:29,717.717 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:16:29,762.762 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:16:29,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:16:29,806.806 INFO    ] No camera update needed
[2026-10-18 22:16:29,808.808 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:16:29,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:16:29,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:16:29,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:16:31,860.860 INFO    ] ================================================
[2026-10-18 22:16:31,875.875 INFO    ] Launching Daemon at Sun Oct 18 22:16:31 IST 2026
[2026-10-18 22:16:31,886.886 INFO    ] ================================================
[2026-10-18 22:16:32,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:16:32
[2026-10-18 22:16:33,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:16:33,655.655 INFO    ] Initializing speech engine...
[2026-10-18 22:16:33,666.666 INFO    ] 2026-10-18 22:16:33
[2026-10-18 22:16:33,958.958 INFO    ] 2026-10-18 22:16:33
[2026-10-18 22:16:34,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:16:34,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:16:34,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:16:34,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:16:34,497.497 INFO    ] time= 18/10/2026 22:16:34
[2026-10-18 22:16:34,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:16:34,545.545 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:16:34,669.669 INFO    ] No existing commands found in stream
[2026-10-18 22:16:39,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:16:39,708.708 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-18 22:16:41,402.402 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:16:41,405.405 INFO    ] Checking for system updates...
[2026-10-18 22:16:41,443.443 INFO    ] 200
[2026-10-18 22:16:41,446.446 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:16:41,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:16:41,508.508 INFO    ] No update needed
[2026-10-18 22:16:41,511.511 INFO    ] Checking for camera pi updates...
[2026-10-18 22:16:41,548.548 INFO    ] 200
[2026-10-18 22:16:41,551.551 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:16:41,597.597 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:16:41,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:16:41,637.637 INFO    ] No camera update needed
[2026-10-18 22:16:41,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:16:41,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:16:41,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:16:41,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:16:43,696.696 INFO    ] ================================================
[2026-10-18 22:16:43,712.712 INFO    ] Launching Daemon at Sun Oct 18 22:16:43 IST 2026
[2026-10-18 22:16:43,722.722 INFO    ] ================================================
[2026-10-18 22:16:44,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:16:44
[2026-10-18 22:16:44,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:16:45,139.139 INFO    ] Initializing speech engine...
[2026-10-18 22:16:45,149.149 INFO    ] 2026-10-18 22:16:45
[2026-10-18 22:16:45,441.441 INFO    ] 2026-10-18 22:16:45
[2026-10-18 22:16:45,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:16:45,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:16:45,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:16:45,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:16:45,855.855 INFO    ] time= 18/10/2026 22:16:45
[2026-10-18 22:16:45,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:16:45,865.865 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:16:45,998.998 INFO    ] No existing commands found in stream
[2026-10-18 22:16:51,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:16:51,031.031 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-18 22:16:51,578.578 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:16:51,581.581 INFO    ] Checking for system updates...
[2026-10-18 22:16:51,616.616 INFO    ] 200
[2026-10-18 22:16:51,618.618 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:16:51,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:16:51,678.678 INFO    ] No update needed
[2026-10-18 22:16:51,681.681 INFO    ] Checking for camera pi updates...
[2026-10-18 22:16:51,717.717 INFO    ] 200
[2026-10-18 22:16:51,719.719 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:16:51,759.759 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:16:51,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:16:51,798.798 INFO    ] No camera update needed
[2026-10-18 22:16:51,800.800 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:16:51,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:16:51,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:16:51,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:16:53,852.852 INFO    ] ================================================
[2026-10-18 22:16:53,867.867 INFO    ] Launching Daemon at Sun Oct 18 22:16:53 IST 2026
[2026-10-18 22:16:53,878.878 INFO    ] ================================================
[2026-10-18 22:16:54,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:16:54
[2026-10-18 22:16:55,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:16:55,478.478 INFO    ] Initializing speech engine...
[2026-10-18 22:16:55,486.486 INFO    ] 2026-10-18 22:16:55
[2026-10-18 22:16:55,772.772 INFO    ] 2026-10-18 22:16:55
[2026-10-18 22:16:55,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:16:56,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:16:56,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:16:56,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:16:56,269.269 INFO    ] time= 18/10/2026 22:16:56
[2026-10-18 22:16:56,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:16:56,330.330 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:16:56,478.478 INFO    ] No existing commands found in stream
[2026-10-18 22:17:01,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:17:01,506.506 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-18 22:17:04,907.907 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:17:04,910.910 INFO    ] Checking for system updates...
[2026-10-18 22:17:04,948.948 INFO    ] 200
[2026-10-18 22:17:04,951.951 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:17:05,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:17:05,017.017 INFO    ] No update needed
[2026-10-18 22:17:05,020.020 INFO    ] Checking for camera pi updates...
[2026-10-18 22:17:05,058.058 INFO    ] 200
[2026-10-18 22:17:05,060.060 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:17:05,106.106 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:17:05,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:17:05,249.249 INFO    ] No camera update needed
[2026-10-18 22:17:05,252.252 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:17:05,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:17:05,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:17:05,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:17:07,307.307 INFO    ] ================================================
[2026-10-18 22:17:07,322.322 INFO    ] Launching Daemon at Sun Oct 18 22:17:07 IST 2026
[2026-10-18 22:17:07,334.334 INFO    ] ================================================
[2026-10-18 22:17:07,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:17:07
[2026-10-18 22:17:08,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:17:08,782.782 INFO    ] Initializing speech engine...
[2026-10-18 22:17:08,791.791 INFO    ] 2026-10-18 22:17:08
[2026-10-18 22:17:09,045.045 INFO    ] 2026-10-18 22:17:09
[2026-10-18 22:17:09,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:17:09,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:17:09,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:17:09,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:17:09,514.514 INFO    ] time= 18/10/2026 22:17:09
[2026-10-18 22:17:09,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:17:09,580.580 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:17:09,715.715 INFO    ] No existing commands found in stream
[2026-10-18 22:17:14,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:17:14,730.730 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-18 22:17:15,775.775 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:17:15,777.777 INFO    ] Checking for system updates...
[2026-10-18 22:17:15,813.813 INFO    ] 200
[2026-10-18 22:17:15,815.815 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:17:15,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:17:15,874.874 INFO    ] No update needed
[2026-10-18 22:17:15,876.876 INFO    ] Checking for camera pi updates...
[2026-10-18 22:17:15,919.919 INFO    ] 200
[2026-10-18 22:17:15,922.922 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:17:15,980.980 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:17:16,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:17:16,019.019 INFO    ] No camera update needed
[2026-10-18 22:17:16,021.021 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:17:16,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:17:16,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:17:16,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:17:18,074.074 INFO    ] ================================================
[2026-10-18 22:17:18,090.090 INFO    ] Launching Daemon at Sun Oct 18 22:17:18 IST 2026
[2026-10-18 22:17:18,101.101 INFO    ] ================================================
[2026-10-18 22:17:18,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:17:18
[2026-10-18 22:17:19,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:17:19,537.537 INFO    ] Initializing speech engine...
[2026-10-18 22:17:19,545.545 INFO    ] 2026-10-18 22:17:19
[2026-10-18 22:17:19,816.816 INFO    ] 2026-10-18 22:17:19
[2026-10-18 22:17:19,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:17:20,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:17:20,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:17:20,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:17:20,302.302 INFO    ] time= 18/10/2026 22:17:20
[2026-10-18 22:17:20,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:17:20,379.379 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:17:20,497.497 INFO    ] No existing commands found in stream
[2026-10-18 22:17:25,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:17:25,531.531 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-18 22:17:27,687.687 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:17:27,690.690 INFO    ] Checking for system updates...
[2026-10-18 22:17:27,725.725 INFO    ] 200
[2026-10-18 22:17:27,727.727 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:17:27,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:17:27,781.781 INFO    ] No update needed
[2026-10-18 22:17:27,784.784 INFO    ] Checking for camera pi updates...
[2026-10-18 22:17:27,817.817 INFO    ] 200
[2026-10-18 22:17:27,819.819 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:17:27,861.861 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:17:27,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:17:27,901.901 INFO    ] No camera update needed
[2026-10-18 22:17:27,903.903 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:17:27,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:17:27,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:17:27,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:17:29,955.955 INFO    ] ================================================
[2026-10-18 22:17:29,971.971 INFO    ] Launching Daemon at Sun Oct 18 22:17:29 IST 2026
[2026-10-18 22:17:29,992.992 INFO    ] ================================================
[2026-10-18 22:17:30,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:17:30
[2026-10-18 22:17:31,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:17:31,445.445 INFO    ] Initializing speech engine...
[2026-10-18 22:17:31,468.468 INFO    ] 2026-10-18 22:17:31
[2026-10-18 22:17:31,725.725 INFO    ] 2026-10-18 22:17:31
[2026-10-18 22:17:31,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:17:31,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:17:32,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:17:32,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:17:32,242.242 INFO    ] time= 18/10/2026 22:17:32
[2026-10-18 22:17:32,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:17:32,318.318 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:17:32,454.454 INFO    ] No existing commands found in stream
[2026-10-18 22:17:37,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:17:37,484.484 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-18 22:17:38,553.553 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:17:38,557.557 INFO    ] Checking for system updates...
[2026-10-18 22:17:38,615.615 INFO    ] 200
[2026-10-18 22:17:38,618.618 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:17:38,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:17:38,683.683 INFO    ] No update needed
[2026-10-18 22:17:38,685.685 INFO    ] Checking for camera pi updates...
[2026-10-18 22:17:38,722.722 INFO    ] 200
[2026-10-18 22:17:38,724.724 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:17:38,771.771 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:17:38,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:17:38,811.811 INFO    ] No camera update needed
[2026-10-18 22:17:38,814.814 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:17:38,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:17:38,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:17:38,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:17:40,873.873 INFO    ] ================================================
[2026-10-18 22:17:40,888.888 INFO    ] Launching Daemon at Sun Oct 18 22:17:40 IST 2026
[2026-10-18 22:17:40,899.899 INFO    ] ================================================
[2026-10-18 22:17:41,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:17:41
[2026-10-18 22:17:42,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:17:42,559.559 INFO    ] Initializing speech engine...
[2026-10-18 22:17:42,567.567 INFO    ] 2026-10-18 22:17:42
[2026-10-18 22:17:42,849.849 INFO    ] 2026-10-18 22:17:42
[2026-10-18 22:17:42,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:17:43,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:17:43,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:17:43,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:17:43,382.382 INFO    ] time= 18/10/2026 22:17:43
[2026-10-18 22:17:43,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:17:43,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:17:43,531.531 INFO    ] No existing commands found in stream
[2026-10-18 22:17:48,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:17:48,553.553 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-18 22:17:52,195.195 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:17:52,198.198 INFO    ] Checking for system updates...
[2026-10-18 22:17:52,233.233 INFO    ] 200
[2026-10-18 22:17:52,236.236 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:17:52,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:17:52,297.297 INFO    ] No update needed
[2026-10-18 22:17:52,299.299 INFO    ] Checking for camera pi updates...
[2026-10-18 22:17:52,339.339 INFO    ] 200
[2026-10-18 22:17:52,342.342 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:17:52,383.383 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:17:52,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:17:52,422.422 INFO    ] No camera update needed
[2026-10-18 22:17:52,425.425 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:17:52,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:17:52,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:17:52,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:17:54,478.478 INFO    ] ================================================
[2026-10-18 22:17:54,494.494 INFO    ] Launching Daemon at Sun Oct 18 22:17:54 IST 2026
[2026-10-18 22:17:54,505.505 INFO    ] ================================================
[2026-10-18 22:17:55,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:17:55
[2026-10-18 22:17:55,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:17:55,938.938 INFO    ] Initializing speech engine...
[2026-10-18 22:17:55,948.948 INFO    ] 2026-10-18 22:17:55
[2026-10-18 22:17:56,195.195 INFO    ] 2026-10-18 22:17:56
[2026-10-18 22:17:56,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:17:56,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:17:56,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:17:56,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:17:56,632.632 INFO    ] time= 18/10/2026 22:17:56
[2026-10-18 22:17:56,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:17:56,707.707 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:17:56,849.849 INFO    ] No existing commands found in stream
[2026-10-18 22:18:01,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:18:01,889.889 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-18 22:18:05,165.165 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:18:05,167.167 INFO    ] Checking for system updates...
[2026-10-18 22:18:05,206.206 INFO    ] 200
[2026-10-18 22:18:05,208.208 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:18:05,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:18:05,264.264 INFO    ] No update needed
[2026-10-18 22:18:05,266.266 INFO    ] Checking for camera pi updates...
[2026-10-18 22:18:05,306.306 INFO    ] 200
[2026-10-18 22:18:05,309.309 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:18:05,355.355 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:18:05,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:18:05,395.395 INFO    ] No camera update needed
[2026-10-18 22:18:05,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:18:05,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:18:05,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:18:05,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:18:07,452.452 INFO    ] ================================================
[2026-10-18 22:18:07,467.467 INFO    ] Launching Daemon at Sun Oct 18 22:18:07 IST 2026
[2026-10-18 22:18:07,478.478 INFO    ] ================================================
[2026-10-18 22:18:08,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:18:08
[2026-10-18 22:18:08,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:18:08,896.896 INFO    ] Initializing speech engine...
[2026-10-18 22:18:08,910.910 INFO    ] 2026-10-18 22:18:08
[2026-10-18 22:18:09,180.180 INFO    ] 2026-10-18 22:18:09
[2026-10-18 22:18:09,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:18:09,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:18:09,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:18:09,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:18:09,737.737 INFO    ] time= 18/10/2026 22:18:09
[2026-10-18 22:18:09,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:18:09,764.764 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:18:09,915.915 INFO    ] No existing commands found in stream
[2026-10-18 22:18:14,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:18:14,943.943 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-18 22:18:18,898.898 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:18:18,900.900 INFO    ] Checking for system updates...
[2026-10-18 22:18:18,935.935 INFO    ] 200
[2026-10-18 22:18:18,938.938 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:18:18,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:18:18,993.993 INFO    ] No update needed
[2026-10-18 22:18:18,995.995 INFO    ] Checking for camera pi updates...
[2026-10-18 22:18:19,028.028 INFO    ] 200
[2026-10-18 22:18:19,030.030 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:18:19,075.075 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:18:19,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:18:19,113.113 INFO    ] No camera update needed
[2026-10-18 22:18:19,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:18:19,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:18:19,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:18:19,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:18:21,167.167 INFO    ] ================================================
[2026-10-18 22:18:21,182.182 INFO    ] Launching Daemon at Sun Oct 18 22:18:21 IST 2026
[2026-10-18 22:18:21,193.193 INFO    ] ================================================
[2026-10-18 22:18:21,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:18:21
[2026-10-18 22:18:22,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:18:22,666.666 INFO    ] Initializing speech engine...
[2026-10-18 22:18:22,686.686 INFO    ] 2026-10-18 22:18:22
[2026-10-18 22:18:22,936.936 INFO    ] 2026-10-18 22:18:22
[2026-10-18 22:18:22,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:18:23,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:18:23,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:18:23,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:18:23,493.493 INFO    ] time= 18/10/2026 22:18:23
[2026-10-18 22:18:23,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:18:23,517.517 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:18:23,652.652 INFO    ] No existing commands found in stream
[2026-10-18 22:18:28,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:18:28,675.675 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-18 22:18:32,884.884 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:18:32,886.886 INFO    ] Checking for system updates...
[2026-10-18 22:18:32,929.929 INFO    ] 200
[2026-10-18 22:18:32,932.932 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:18:32,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:18:32,991.991 INFO    ] No update needed
[2026-10-18 22:18:32,994.994 INFO    ] Checking for camera pi updates...
[2026-10-18 22:18:33,032.032 INFO    ] 200
[2026-10-18 22:18:33,035.035 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:18:33,083.083 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:18:33,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:18:33,123.123 INFO    ] No camera update needed
[2026-10-18 22:18:33,126.126 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:18:33,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:18:33,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:18:33,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:18:35,180.180 INFO    ] ================================================
[2026-10-18 22:18:35,195.195 INFO    ] Launching Daemon at Sun Oct 18 22:18:35 IST 2026
[2026-10-18 22:18:35,206.206 INFO    ] ================================================
[2026-10-18 22:18:35,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:18:35
[2026-10-18 22:18:36,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:18:36,856.856 INFO    ] Initializing speech engine...
[2026-10-18 22:18:36,869.869 INFO    ] 2026-10-18 22:18:36
[2026-10-18 22:18:37,152.152 INFO    ] 2026-10-18 22:18:37
[2026-10-18 22:18:37,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:18:37,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:18:37,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:18:37,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:18:37,695.695 INFO    ] time= 18/10/2026 22:18:37
[2026-10-18 22:18:37,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:18:37,738.738 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:18:37,912.912 INFO    ] No existing commands found in stream
[2026-10-18 22:18:42,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:18:42,946.946 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-18 22:18:43,769.769 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:18:43,772.772 INFO    ] Checking for system updates...
[2026-10-18 22:18:43,809.809 INFO    ] 200
[2026-10-18 22:18:43,812.812 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:18:43,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:18:43,875.875 INFO    ] No update needed
[2026-10-18 22:18:43,878.878 INFO    ] Checking for camera pi updates...
[2026-10-18 22:18:43,913.913 INFO    ] 200
[2026-10-18 22:18:43,916.916 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:18:43,958.958 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:18:43,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:18:43,998.998 INFO    ] No camera update needed
[2026-10-18 22:18:44,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:18:44,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:18:44,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:18:44,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:18:46,057.057 INFO    ] ================================================
[2026-10-18 22:18:46,073.073 INFO    ] Launching Daemon at Sun Oct 18 22:18:46 IST 2026
[2026-10-18 22:18:46,084.084 INFO    ] ================================================
[2026-10-18 22:18:46,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:18:46
[2026-10-18 22:18:47,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:18:47,520.520 INFO    ] Initializing speech engine...
[2026-10-18 22:18:47,540.540 INFO    ] 2026-10-18 22:18:47
[2026-10-18 22:18:47,814.814 INFO    ] 2026-10-18 22:18:47
[2026-10-18 22:18:47,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:18:48,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:18:48,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:18:48,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:18:48,238.238 INFO    ] time= 18/10/2026 22:18:48
[2026-10-18 22:18:48,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:18:48,250.250 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:18:48,383.383 INFO    ] No existing commands found in stream
[2026-10-18 22:18:53,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:18:53,411.411 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-18 22:18:54,408.408 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:18:54,411.411 INFO    ] Checking for system updates...
[2026-10-18 22:18:54,447.447 INFO    ] 200
[2026-10-18 22:18:54,449.449 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:18:54,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:18:54,505.505 INFO    ] No update needed
[2026-10-18 22:18:54,507.507 INFO    ] Checking for camera pi updates...
[2026-10-18 22:18:54,541.541 INFO    ] 200
[2026-10-18 22:18:54,544.544 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:18:54,583.583 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:18:54,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:18:54,623.623 INFO    ] No camera update needed
[2026-10-18 22:18:54,625.625 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:18:54,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:18:54,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:18:54,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:18:56,677.677 INFO    ] ================================================
[2026-10-18 22:18:56,692.692 INFO    ] Launching Daemon at Sun Oct 18 22:18:56 IST 2026
[2026-10-18 22:18:56,703.703 INFO    ] ================================================
[2026-10-18 22:18:57,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:18:57
[2026-10-18 22:18:57,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:18:58,151.151 INFO    ] Initializing speech engine...
[2026-10-18 22:18:58,160.160 INFO    ] 2026-10-18 22:18:58
[2026-10-18 22:18:58,408.408 INFO    ] 2026-10-18 22:18:58
[2026-10-18 22:18:58,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:18:58,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:18:58,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:18:58,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:18:58,968.968 INFO    ] time= 18/10/2026 22:18:58
[2026-10-18 22:18:58,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:18:58,990.990 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:18:59,113.113 INFO    ] No existing commands found in stream
[2026-10-18 22:19:04,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:19:04,137.137 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-18 22:19:07,117.117 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:19:07,119.119 INFO    ] Checking for system updates...
[2026-10-18 22:19:07,156.156 INFO    ] 200
[2026-10-18 22:19:07,158.158 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:19:07,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:19:07,213.213 INFO    ] No update needed
[2026-10-18 22:19:07,216.216 INFO    ] Checking for camera pi updates...
[2026-10-18 22:19:07,253.253 INFO    ] 200
[2026-10-18 22:19:07,256.256 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:19:07,297.297 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:19:07,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:19:07,438.438 INFO    ] No camera update needed
[2026-10-18 22:19:07,441.441 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:19:07,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:19:07,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:19:07,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:19:09,496.496 INFO    ] ================================================
[2026-10-18 22:19:09,516.516 INFO    ] Launching Daemon at Sun Oct 18 22:19:09 IST 2026
[2026-10-18 22:19:09,527.527 INFO    ] ================================================
[2026-10-18 22:19:10,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:19:10
[2026-10-18 22:19:10,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:19:10,961.961 INFO    ] Initializing speech engine...
[2026-10-18 22:19:10,974.974 INFO    ] 2026-10-18 22:19:10
[2026-10-18 22:19:11,259.259 INFO    ] 2026-10-18 22:19:11
[2026-10-18 22:19:11,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:19:11,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:19:11,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:19:11,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:19:11,671.671 INFO    ] time= 18/10/2026 22:19:11
[2026-10-18 22:19:11,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:19:11,745.745 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:19:11,877.877 INFO    ] No existing commands found in stream
[2026-10-18 22:19:16,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:19:16,894.894 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-18 22:19:18,973.973 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:19:18,976.976 INFO    ] Checking for system updates...
[2026-10-18 22:19:19,017.017 INFO    ] 200
[2026-10-18 22:19:19,020.020 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:19:19,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:19:19,083.083 INFO    ] No update needed
[2026-10-18 22:19:19,087.087 INFO    ] Checking for camera pi updates...
[2026-10-18 22:19:19,126.126 INFO    ] 200
[2026-10-18 22:19:19,129.129 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:19:19,173.173 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:19:19,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:19:19,218.218 INFO    ] No camera update needed
[2026-10-18 22:19:19,222.222 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:19:19,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:19:19,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:19:19,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:19:21,285.285 INFO    ] ================================================
[2026-10-18 22:19:21,301.301 INFO    ] Launching Daemon at Sun Oct 18 22:19:21 IST 2026
[2026-10-18 22:19:21,313.313 INFO    ] ================================================
[2026-10-18 22:19:21,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:19:21
[2026-10-18 22:19:22,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:19:22,745.745 INFO    ] Initializing speech engine...
[2026-10-18 22:19:22,752.752 INFO    ] 2026-10-18 22:19:22
[2026-10-18 22:19:23,072.072 INFO    ] 2026-10-18 22:19:23
[2026-10-18 22:19:23,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:19:23,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:19:23,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:19:23,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:19:23,465.465 INFO    ] time= 18/10/2026 22:19:23
[2026-10-18 22:19:23,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:19:23,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:19:23,635.635 INFO    ] No existing commands found in stream
[2026-10-18 22:19:28,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:19:28,667.667 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-18 22:19:29,615.615 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:19:29,618.618 INFO    ] Checking for system updates...
[2026-10-18 22:19:29,653.653 INFO    ] 200
[2026-10-18 22:19:29,656.656 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:19:29,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:19:29,709.709 INFO    ] No update needed
[2026-10-18 22:19:29,711.711 INFO    ] Checking for camera pi updates...
[2026-10-18 22:19:29,744.744 INFO    ] 200
[2026-10-18 22:19:29,746.746 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:19:29,792.792 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:19:29,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:19:29,832.832 INFO    ] No camera update needed
[2026-10-18 22:19:29,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:19:29,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:19:29,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:19:29,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:19:31,888.888 INFO    ] ================================================
[2026-10-18 22:19:31,905.905 INFO    ] Launching Daemon at Sun Oct 18 22:19:31 IST 2026
[2026-10-18 22:19:31,917.917 INFO    ] ================================================
[2026-10-18 22:19:32,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:19:32
[2026-10-18 22:19:33,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:19:33,418.418 INFO    ] Initializing speech engine...
[2026-10-18 22:19:33,425.425 INFO    ] 2026-10-18 22:19:33
[2026-10-18 22:19:33,699.699 INFO    ] 2026-10-18 22:19:33
[2026-10-18 22:19:33,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:19:33,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:19:34,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:19:34,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:19:34,191.191 INFO    ] time= 18/10/2026 22:19:34
[2026-10-18 22:19:34,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:19:34,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:19:34,420.420 INFO    ] No existing commands found in stream
[2026-10-18 22:19:39,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:19:39,441.441 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-18 22:19:40,223.223 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:19:40,226.226 INFO    ] Checking for system updates...
[2026-10-18 22:19:40,265.265 INFO    ] 200
[2026-10-18 22:19:40,268.268 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:19:40,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:19:40,325.325 INFO    ] No update needed
[2026-10-18 22:19:40,327.327 INFO    ] Checking for camera pi updates...
[2026-10-18 22:19:40,360.360 INFO    ] 200
[2026-10-18 22:19:40,363.363 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:19:40,408.408 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:19:40,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:19:40,447.447 INFO    ] No camera update needed
[2026-10-18 22:19:40,449.449 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:19:40,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:19:40,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:19:40,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:19:42,502.502 INFO    ] ================================================
[2026-10-18 22:19:42,518.518 INFO    ] Launching Daemon at Sun Oct 18 22:19:42 IST 2026
[2026-10-18 22:19:42,529.529 INFO    ] ================================================
[2026-10-18 22:19:43,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:19:43
[2026-10-18 22:19:43,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:19:44,032.032 INFO    ] Initializing speech engine...
[2026-10-18 22:19:44,046.046 INFO    ] 2026-10-18 22:19:44
[2026-10-18 22:19:44,315.315 INFO    ] 2026-10-18 22:19:44
[2026-10-18 22:19:44,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:19:44,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:19:44,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:19:44,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:19:44,891.891 INFO    ] time= 18/10/2026 22:19:44
[2026-10-18 22:19:44,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:19:44,916.916 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:19:45,008.008 INFO    ] No existing commands found in stream
[2026-10-18 22:19:50,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:19:50,021.021 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-18 22:19:54,320.320 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:19:54,323.323 INFO    ] Checking for system updates...
[2026-10-18 22:19:54,360.360 INFO    ] 200
[2026-10-18 22:19:54,363.363 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:19:54,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:19:54,419.419 INFO    ] No update needed
[2026-10-18 22:19:54,422.422 INFO    ] Checking for camera pi updates...
[2026-10-18 22:19:54,457.457 INFO    ] 200
[2026-10-18 22:19:54,459.459 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:19:54,501.501 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:19:54,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:19:54,541.541 INFO    ] No camera update needed
[2026-10-18 22:19:54,544.544 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:19:54,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:19:54,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:19:54,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:19:56,601.601 INFO    ] ================================================
[2026-10-18 22:19:56,616.616 INFO    ] Launching Daemon at Sun Oct 18 22:19:56 IST 2026
[2026-10-18 22:19:56,627.627 INFO    ] ================================================
[2026-10-18 22:19:57,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:19:57
[2026-10-18 22:19:57,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:19:58,074.074 INFO    ] Initializing speech engine...
[2026-10-18 22:19:58,100.100 INFO    ] 2026-10-18 22:19:58
[2026-10-18 22:19:58,378.378 INFO    ] 2026-10-18 22:19:58
[2026-10-18 22:19:58,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:19:58,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:19:58,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:19:58,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:19:58,895.895 INFO    ] time= 18/10/2026 22:19:58
[2026-10-18 22:19:58,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:19:58,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:19:59,095.095 INFO    ] No existing commands found in stream
[2026-10-18 22:20:04,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:20:04,107.107 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-18 22:20:08,717.717 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:20:08,720.720 INFO    ] Checking for system updates...
[2026-10-18 22:20:08,760.760 INFO    ] 200
[2026-10-18 22:20:08,763.763 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:20:08,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:20:08,817.817 INFO    ] No update needed
[2026-10-18 22:20:08,819.819 INFO    ] Checking for camera pi updates...
[2026-10-18 22:20:08,853.853 INFO    ] 200
[2026-10-18 22:20:08,855.855 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:20:08,901.901 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:20:08,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:20:08,940.940 INFO    ] No camera update needed
[2026-10-18 22:20:08,943.943 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:20:08,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:20:08,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:20:08,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:20:11,996.996 INFO    ] ================================================
[2026-10-18 22:20:11,011.011 INFO    ] Launching Daemon at Sun Oct 18 22:20:11 IST 2026
[2026-10-18 22:20:11,022.022 INFO    ] ================================================
[2026-10-18 22:20:11,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:20:11
[2026-10-18 22:20:12,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:20:12,450.450 INFO    ] Initializing speech engine...
[2026-10-18 22:20:12,456.456 INFO    ] 2026-10-18 22:20:12
[2026-10-18 22:20:12,759.759 INFO    ] 2026-10-18 22:20:12
[2026-10-18 22:20:12,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:20:12,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:20:13,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:20:13,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:20:13,189.189 INFO    ] time= 18/10/2026 22:20:13
[2026-10-18 22:20:13,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:20:13,233.233 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:20:13,386.386 INFO    ] No existing commands found in stream
[2026-10-18 22:20:18,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:20:18,425.425 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-18 22:20:22,826.826 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:20:22,829.829 INFO    ] Checking for system updates...
[2026-10-18 22:20:22,864.864 INFO    ] 200
[2026-10-18 22:20:22,867.867 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:20:22,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:20:22,920.920 INFO    ] No update needed
[2026-10-18 22:20:22,923.923 INFO    ] Checking for camera pi updates...
[2026-10-18 22:20:22,957.957 INFO    ] 200
[2026-10-18 22:20:22,959.959 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:20:22,999.999 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:20:23,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:20:23,038.038 INFO    ] No camera update needed
[2026-10-18 22:20:23,041.041 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:20:23,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:20:23,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:20:23,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:20:25,095.095 INFO    ] ================================================
[2026-10-18 22:20:25,110.110 INFO    ] Launching Daemon at Sun Oct 18 22:20:25 IST 2026
[2026-10-18 22:20:25,126.126 INFO    ] ================================================
[2026-10-18 22:20:25,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:20:25
[2026-10-18 22:20:26,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:20:26,788.788 INFO    ] Initializing speech engine...
[2026-10-18 22:20:26,800.800 INFO    ] 2026-10-18 22:20:26
[2026-10-18 22:20:27,113.113 INFO    ] 2026-10-18 22:20:27
[2026-10-18 22:20:27,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:20:27,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:20:27,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:20:27,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:20:27,635.635 INFO    ] time= 18/10/2026 22:20:27
[2026-10-18 22:20:27,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:20:27,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:20:27,825.825 INFO    ] No existing commands found in stream
[2026-10-18 22:20:32,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:20:32,862.862 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-18 22:20:36,362.362 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:20:36,365.365 INFO    ] Checking for system updates...
[2026-10-18 22:20:36,402.402 INFO    ] 200
[2026-10-18 22:20:36,405.405 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:20:36,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:20:36,460.460 INFO    ] No update needed
[2026-10-18 22:20:36,462.462 INFO    ] Checking for camera pi updates...
[2026-10-18 22:20:36,496.496 INFO    ] 200
[2026-10-18 22:20:36,498.498 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:20:36,538.538 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:20:36,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:20:36,577.577 INFO    ] No camera update needed
[2026-10-18 22:20:36,580.580 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:20:36,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:20:36,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:20:36,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:20:38,633.633 INFO    ] ================================================
[2026-10-18 22:20:38,648.648 INFO    ] Launching Daemon at Sun Oct 18 22:20:38 IST 2026
[2026-10-18 22:20:38,659.659 INFO    ] ================================================
[2026-10-18 22:20:39,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:20:39
[2026-10-18 22:20:39,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:20:40,122.122 INFO    ] Initializing speech engine...
[2026-10-18 22:20:40,132.132 INFO    ] 2026-10-18 22:20:40
[2026-10-18 22:20:40,400.400 INFO    ] 2026-10-18 22:20:40
[2026-10-18 22:20:40,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:20:40,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:20:40,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:20:40,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:20:40,917.917 INFO    ] time= 18/10/2026 22:20:40
[2026-10-18 22:20:40,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:20:40,974.974 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:20:41,139.139 INFO    ] No existing commands found in stream
[2026-10-18 22:20:46,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:20:46,173.173 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-18 22:20:46,700.700 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:20:46,703.703 INFO    ] Checking for system updates...
[2026-10-18 22:20:46,738.738 INFO    ] 200
[2026-10-18 22:20:46,740.740 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:20:46,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:20:46,807.807 INFO    ] No update needed
[2026-10-18 22:20:46,810.810 INFO    ] Checking for camera pi updates...
[2026-10-18 22:20:46,843.843 INFO    ] 200
[2026-10-18 22:20:46,845.845 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:20:46,885.885 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:20:46,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:20:46,924.924 INFO    ] No camera update needed
[2026-10-18 22:20:46,926.926 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:20:46,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:20:46,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:20:46,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:20:48,981.981 INFO    ] ================================================
[2026-10-18 22:20:49,997.997 INFO    ] Launching Daemon at Sun Oct 18 22:20:48 IST 2026
[2026-10-18 22:20:49,008.008 INFO    ] ================================================
[2026-10-18 22:20:49,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:20:49
[2026-10-18 22:20:50,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:20:50,578.578 INFO    ] Initializing speech engine...
[2026-10-18 22:20:50,591.591 INFO    ] 2026-10-18 22:20:50
[2026-10-18 22:20:50,857.857 INFO    ] 2026-10-18 22:20:50
[2026-10-18 22:20:50,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:20:51,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:20:51,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:20:51,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:20:51,330.330 INFO    ] time= 18/10/2026 22:20:51
[2026-10-18 22:20:51,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:20:51,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:20:51,583.583 INFO    ] No existing commands found in stream
[2026-10-18 22:20:56,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:20:56,612.612 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-18 22:21:00,738.738 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:21:00,741.741 INFO    ] Checking for system updates...
[2026-10-18 22:21:00,779.779 INFO    ] 200
[2026-10-18 22:21:00,782.782 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:21:00,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:21:00,843.843 INFO    ] No update needed
[2026-10-18 22:21:00,845.845 INFO    ] Checking for camera pi updates...
[2026-10-18 22:21:00,886.886 INFO    ] 200
[2026-10-18 22:21:00,888.888 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:21:00,927.927 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:21:00,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:21:00,966.966 INFO    ] No camera update needed
[2026-10-18 22:21:00,969.969 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:21:00,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:21:00,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:21:00,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:21:03,025.025 INFO    ] ================================================
[2026-10-18 22:21:03,041.041 INFO    ] Launching Daemon at Sun Oct 18 22:21:03 IST 2026
[2026-10-18 22:21:03,052.052 INFO    ] ================================================
[2026-10-18 22:21:03,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:21:03
[2026-10-18 22:21:04,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:21:04,588.588 INFO    ] Initializing speech engine...
[2026-10-18 22:21:04,596.596 INFO    ] 2026-10-18 22:21:04
[2026-10-18 22:21:04,869.869 INFO    ] 2026-10-18 22:21:04
[2026-10-18 22:21:04,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:21:05,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:21:05,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:21:05,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:21:05,418.418 INFO    ] time= 18/10/2026 22:21:05
[2026-10-18 22:21:05,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:21:05,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:21:05,644.644 INFO    ] No existing commands found in stream
[2026-10-18 22:21:10,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:21:10,678.678 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-18 22:21:13,912.912 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:21:13,915.915 INFO    ] Checking for system updates...
[2026-10-18 22:21:13,953.953 INFO    ] 200
[2026-10-18 22:21:13,956.956 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:21:14,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:21:14,022.022 INFO    ] No update needed
[2026-10-18 22:21:14,027.027 INFO    ] Checking for camera pi updates...
[2026-10-18 22:21:14,067.067 INFO    ] 200
[2026-10-18 22:21:14,070.070 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:21:14,115.115 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:21:14,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:21:14,257.257 INFO    ] No camera update needed
[2026-10-18 22:21:14,260.260 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:21:14,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:21:14,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:21:14,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:21:16,317.317 INFO    ] ================================================
[2026-10-18 22:21:16,332.332 INFO    ] Launching Daemon at Sun Oct 18 22:21:16 IST 2026
[2026-10-18 22:21:16,343.343 INFO    ] ================================================
[2026-10-18 22:21:16,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:21:16
[2026-10-18 22:21:17,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:21:17,818.818 INFO    ] Initializing speech engine...
[2026-10-18 22:21:17,827.827 INFO    ] 2026-10-18 22:21:17
[2026-10-18 22:21:18,092.092 INFO    ] 2026-10-18 22:21:18
[2026-10-18 22:21:18,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:21:18,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:21:18,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:21:18,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:21:18,624.624 INFO    ] time= 18/10/2026 22:21:18
[2026-10-18 22:21:18,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:21:18,657.657 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:21:18,794.794 INFO    ] No existing commands found in stream
[2026-10-18 22:21:23,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:21:23,817.817 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-18 22:21:24,585.585 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:21:24,588.588 INFO    ] Checking for system updates...
[2026-10-18 22:21:24,623.623 INFO    ] 200
[2026-10-18 22:21:24,626.626 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:21:24,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:21:24,680.680 INFO    ] No update needed
[2026-10-18 22:21:24,682.682 INFO    ] Checking for camera pi updates...
[2026-10-18 22:21:24,716.716 INFO    ] 200
[2026-10-18 22:21:24,719.719 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:21:24,758.758 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:21:24,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:21:24,796.796 INFO    ] No camera update needed
[2026-10-18 22:21:24,799.799 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:21:24,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:21:24,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:21:24,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:21:26,855.855 INFO    ] ================================================
[2026-10-18 22:21:26,871.871 INFO    ] Launching Daemon at Sun Oct 18 22:21:26 IST 2026
[2026-10-18 22:21:26,882.882 INFO    ] ================================================
[2026-10-18 22:21:27,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:21:27
[2026-10-18 22:21:28,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:21:28,528.528 INFO    ] Initializing speech engine...
[2026-10-18 22:21:28,539.539 INFO    ] 2026-10-18 22:21:28
[2026-10-18 22:21:28,821.821 INFO    ] 2026-10-18 22:21:28
[2026-10-18 22:21:28,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:21:29,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:21:29,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:21:29,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:21:29,359.359 INFO    ] time= 18/10/2026 22:21:29
[2026-10-18 22:21:29,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:21:29,390.390 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:21:29,548.548 INFO    ] No existing commands found in stream
[2026-10-18 22:21:34,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:21:34,582.582 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-18 22:21:38,007.007 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:21:38,010.010 INFO    ] Checking for system updates...
[2026-10-18 22:21:38,050.050 INFO    ] 200
[2026-10-18 22:21:38,053.053 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:21:38,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:21:38,118.118 INFO    ] No update needed
[2026-10-18 22:21:38,121.121 INFO    ] Checking for camera pi updates...
[2026-10-18 22:21:38,156.156 INFO    ] 200
[2026-10-18 22:21:38,159.159 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:21:38,203.203 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:21:38,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:21:38,245.245 INFO    ] No camera update needed
[2026-10-18 22:21:38,248.248 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:21:38,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:21:38,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:21:38,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:21:40,306.306 INFO    ] ================================================
[2026-10-18 22:21:40,322.322 INFO    ] Launching Daemon at Sun Oct 18 22:21:40 IST 2026
[2026-10-18 22:21:40,334.334 INFO    ] ================================================
[2026-10-18 22:21:40,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:21:40
[2026-10-18 22:21:41,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:21:41,968.968 INFO    ] Initializing speech engine...
[2026-10-18 22:21:41,980.980 INFO    ] 2026-10-18 22:21:41
[2026-10-18 22:21:42,290.290 INFO    ] 2026-10-18 22:21:42
[2026-10-18 22:21:42,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:21:42,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:21:42,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:21:42,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:21:42,797.797 INFO    ] time= 18/10/2026 22:21:42
[2026-10-18 22:21:42,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:21:42,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:21:42,963.963 INFO    ] No existing commands found in stream
[2026-10-18 22:21:47,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:21:47,997.997 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-18 22:21:51,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:21:51,370.370 INFO    ] Checking for system updates...
[2026-10-18 22:21:51,407.407 INFO    ] 200
[2026-10-18 22:21:51,410.410 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:21:51,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:21:51,466.466 INFO    ] No update needed
[2026-10-18 22:21:51,469.469 INFO    ] Checking for camera pi updates...
[2026-10-18 22:21:51,503.503 INFO    ] 200
[2026-10-18 22:21:51,506.506 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:21:51,548.548 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:21:51,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:21:51,588.588 INFO    ] No camera update needed
[2026-10-18 22:21:51,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:21:51,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:21:51,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:21:51,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:21:53,647.647 INFO    ] ================================================
[2026-10-18 22:21:53,663.663 INFO    ] Launching Daemon at Sun Oct 18 22:21:53 IST 2026
[2026-10-18 22:21:53,674.674 INFO    ] ================================================
[2026-10-18 22:21:54,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:21:54
[2026-10-18 22:21:54,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:21:55,093.093 INFO    ] Initializing speech engine...
[2026-10-18 22:21:55,106.106 INFO    ] 2026-10-18 22:21:55
[2026-10-18 22:21:55,392.392 INFO    ] 2026-10-18 22:21:55
[2026-10-18 22:21:55,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:21:55,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:21:55,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:21:55,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:21:55,818.818 INFO    ] time= 18/10/2026 22:21:55
[2026-10-18 22:21:55,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:21:55,829.829 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:21:55,942.942 INFO    ] No existing commands found in stream
[2026-10-18 22:22:00,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:22:00,970.970 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-18 22:22:04,955.955 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:22:04,958.958 INFO    ] Checking for system updates...
[2026-10-18 22:22:04,993.993 INFO    ] 200
[2026-10-18 22:22:04,996.996 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:22:05,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:22:05,050.050 INFO    ] No update needed
[2026-10-18 22:22:05,053.053 INFO    ] Checking for camera pi updates...
[2026-10-18 22:22:05,086.086 INFO    ] 200
[2026-10-18 22:22:05,088.088 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:22:05,132.132 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:22:05,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:22:05,170.170 INFO    ] No camera update needed
[2026-10-18 22:22:05,172.172 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:22:05,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:22:05,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:22:05,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:22:07,225.225 INFO    ] ================================================
[2026-10-18 22:22:07,240.240 INFO    ] Launching Daemon at Sun Oct 18 22:22:07 IST 2026
[2026-10-18 22:22:07,251.251 INFO    ] ================================================
[2026-10-18 22:22:07,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:22:07
[2026-10-18 22:22:08,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:22:08,727.727 INFO    ] Initializing speech engine...
[2026-10-18 22:22:08,735.735 INFO    ] 2026-10-18 22:22:08
[2026-10-18 22:22:08,995.995 INFO    ] 2026-10-18 22:22:08
[2026-10-18 22:22:09,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:22:09,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:22:09,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:22:09,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:22:09,535.535 INFO    ] time= 18/10/2026 22:22:09
[2026-10-18 22:22:09,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:22:09,562.562 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:22:09,689.689 INFO    ] No existing commands found in stream
[2026-10-18 22:22:14,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:22:14,707.707 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-18 22:22:16,149.149 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:22:16,152.152 INFO    ] Checking for system updates...
[2026-10-18 22:22:16,188.188 INFO    ] 200
[2026-10-18 22:22:16,191.191 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:22:16,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:22:16,249.249 INFO    ] No update needed
[2026-10-18 22:22:16,251.251 INFO    ] Checking for camera pi updates...
[2026-10-18 22:22:16,285.285 INFO    ] 200
[2026-10-18 22:22:16,287.287 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:22:16,335.335 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:22:16,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:22:16,375.375 INFO    ] No camera update needed
[2026-10-18 22:22:16,377.377 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:22:16,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:22:16,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:22:16,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:22:18,432.432 INFO    ] ================================================
[2026-10-18 22:22:18,447.447 INFO    ] Launching Daemon at Sun Oct 18 22:22:18 IST 2026
[2026-10-18 22:22:18,458.458 INFO    ] ================================================
[2026-10-18 22:22:19,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:22:19
[2026-10-18 22:22:19,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:22:19,879.879 INFO    ] Initializing speech engine...
[2026-10-18 22:22:19,885.885 INFO    ] 2026-10-18 22:22:19
[2026-10-18 22:22:20,185.185 INFO    ] 2026-10-18 22:22:20
[2026-10-18 22:22:20,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:22:20,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:22:20,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:22:20,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:22:20,604.604 INFO    ] time= 18/10/2026 22:22:20
[2026-10-18 22:22:20,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:22:20,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:22:20,824.824 INFO    ] No existing commands found in stream
[2026-10-18 22:22:25,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:22:25,837.837 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-18 22:22:26,739.739 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:22:26,741.741 INFO    ] Checking for system updates...
[2026-10-18 22:22:26,777.777 INFO    ] 200
[2026-10-18 22:22:26,780.780 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:22:26,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:22:26,834.834 INFO    ] No update needed
[2026-10-18 22:22:26,836.836 INFO    ] Checking for camera pi updates...
[2026-10-18 22:22:26,869.869 INFO    ] 200
[2026-10-18 22:22:26,872.872 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:22:26,916.916 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:22:26,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:22:26,955.955 INFO    ] No camera update needed
[2026-10-18 22:22:26,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:22:26,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:22:26,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:22:26,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:22:29,011.011 INFO    ] ================================================
[2026-10-18 22:22:29,027.027 INFO    ] Launching Daemon at Sun Oct 18 22:22:29 IST 2026
[2026-10-18 22:22:29,039.039 INFO    ] ================================================
[2026-10-18 22:22:29,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:22:29
[2026-10-18 22:22:30,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:22:30,444.444 INFO    ] Initializing speech engine...
[2026-10-18 22:22:30,453.453 INFO    ] 2026-10-18 22:22:30
[2026-10-18 22:22:30,746.746 INFO    ] 2026-10-18 22:22:30
[2026-10-18 22:22:30,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:22:31,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:22:31,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:22:31,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:22:31,234.234 INFO    ] time= 18/10/2026 22:22:31
[2026-10-18 22:22:31,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:22:31,332.332 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:22:31,460.460 INFO    ] No existing commands found in stream
[2026-10-18 22:22:36,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:22:36,475.475 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-18 22:22:39,357.357 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:22:39,360.360 INFO    ] Checking for system updates...
[2026-10-18 22:22:39,395.395 INFO    ] 200
[2026-10-18 22:22:39,398.398 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:22:39,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:22:39,454.454 INFO    ] No update needed
[2026-10-18 22:22:39,456.456 INFO    ] Checking for camera pi updates...
[2026-10-18 22:22:39,493.493 INFO    ] 200
[2026-10-18 22:22:39,495.495 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:22:39,534.534 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:22:39,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:22:39,573.573 INFO    ] No camera update needed
[2026-10-18 22:22:39,575.575 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:22:39,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:22:39,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:22:39,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:22:41,628.628 INFO    ] ================================================
[2026-10-18 22:22:41,643.643 INFO    ] Launching Daemon at Sun Oct 18 22:22:41 IST 2026
[2026-10-18 22:22:41,654.654 INFO    ] ================================================
[2026-10-18 22:22:42,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:22:42
[2026-10-18 22:22:42,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:22:43,254.254 INFO    ] Initializing speech engine...
[2026-10-18 22:22:43,261.261 INFO    ] 2026-10-18 22:22:43
[2026-10-18 22:22:43,548.548 INFO    ] 2026-10-18 22:22:43
[2026-10-18 22:22:43,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:22:43,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:22:43,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:22:44,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:22:44,087.087 INFO    ] time= 18/10/2026 22:22:44
[2026-10-18 22:22:44,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:22:44,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:22:44,257.257 INFO    ] No existing commands found in stream
[2026-10-18 22:22:49,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:22:49,291.291 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-18 22:22:51,939.939 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:22:51,942.942 INFO    ] Checking for system updates...
[2026-10-18 22:22:51,978.978 INFO    ] 200
[2026-10-18 22:22:51,981.981 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:22:52,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:22:52,038.038 INFO    ] No update needed
[2026-10-18 22:22:52,041.041 INFO    ] Checking for camera pi updates...
[2026-10-18 22:22:52,078.078 INFO    ] 200
[2026-10-18 22:22:52,081.081 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:22:52,126.126 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:22:52,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:22:52,165.165 INFO    ] No camera update needed
[2026-10-18 22:22:52,167.167 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:22:52,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:22:52,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:22:52,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:22:54,222.222 INFO    ] ================================================
[2026-10-18 22:22:54,237.237 INFO    ] Launching Daemon at Sun Oct 18 22:22:54 IST 2026
[2026-10-18 22:22:54,249.249 INFO    ] ================================================
[2026-10-18 22:22:54,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:22:54
[2026-10-18 22:22:55,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:22:55,717.717 INFO    ] Initializing speech engine...
[2026-10-18 22:22:55,727.727 INFO    ] 2026-10-18 22:22:55
[2026-10-18 22:22:55,991.991 INFO    ] 2026-10-18 22:22:55
[2026-10-18 22:22:56,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:22:56,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:22:56,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:22:56,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:22:56,537.537 INFO    ] time= 18/10/2026 22:22:56
[2026-10-18 22:22:56,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:22:56,564.564 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:22:56,695.695 INFO    ] No existing commands found in stream
[2026-10-18 22:23:01,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:23:01,717.717 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-18 22:23:02,369.369 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:23:02,372.372 INFO    ] Checking for system updates...
[2026-10-18 22:23:02,416.416 INFO    ] 200
[2026-10-18 22:23:02,419.419 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:23:02,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:23:02,489.489 INFO    ] No update needed
[2026-10-18 22:23:02,493.493 INFO    ] Checking for camera pi updates...
[2026-10-18 22:23:02,547.547 INFO    ] 200
[2026-10-18 22:23:02,551.551 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:23:02,604.604 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:23:02,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:23:02,649.649 INFO    ] No camera update needed
[2026-10-18 22:23:02,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:23:02,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:23:02,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:23:02,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:23:04,712.712 INFO    ] ================================================
[2026-10-18 22:23:04,728.728 INFO    ] Launching Daemon at Sun Oct 18 22:23:04 IST 2026
[2026-10-18 22:23:04,739.739 INFO    ] ================================================
[2026-10-18 22:23:05,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:23:05
[2026-10-18 22:23:05,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:23:06,148.148 INFO    ] Initializing speech engine...
[2026-10-18 22:23:06,164.164 INFO    ] 2026-10-18 22:23:06
[2026-10-18 22:23:06,444.444 INFO    ] 2026-10-18 22:23:06
[2026-10-18 22:23:06,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:23:06,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:23:06,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:23:06,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:23:06,963.963 INFO    ] time= 18/10/2026 22:23:06
[2026-10-18 22:23:07,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:23:07,067.067 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:23:07,221.221 INFO    ] No existing commands found in stream
[2026-10-18 22:23:12,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:23:12,245.245 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-18 22:23:14,139.139 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:23:14,141.141 INFO    ] Checking for system updates...
[2026-10-18 22:23:14,177.177 INFO    ] 200
[2026-10-18 22:23:14,180.180 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:23:14,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:23:14,239.239 INFO    ] No update needed
[2026-10-18 22:23:14,241.241 INFO    ] Checking for camera pi updates...
[2026-10-18 22:23:14,275.275 INFO    ] 200
[2026-10-18 22:23:14,277.277 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:23:14,317.317 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:23:14,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:23:14,357.357 INFO    ] No camera update needed
[2026-10-18 22:23:14,359.359 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:23:14,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:23:14,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:23:14,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:23:16,412.412 INFO    ] ================================================
[2026-10-18 22:23:16,428.428 INFO    ] Launching Daemon at Sun Oct 18 22:23:16 IST 2026
[2026-10-18 22:23:16,439.439 INFO    ] ================================================
[2026-10-18 22:23:17,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:23:17
[2026-10-18 22:23:17,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:23:17,893.893 INFO    ] Initializing speech engine...
[2026-10-18 22:23:17,902.902 INFO    ] 2026-10-18 22:23:17
[2026-10-18 22:23:18,150.150 INFO    ] 2026-10-18 22:23:18
[2026-10-18 22:23:18,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:23:18,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:23:18,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:23:18,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:23:18,708.708 INFO    ] time= 18/10/2026 22:23:18
[2026-10-18 22:23:18,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:23:18,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:23:18,892.892 INFO    ] No existing commands found in stream
[2026-10-18 22:23:23,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:23:23,925.925 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-18 22:23:24,612.612 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:23:24,616.616 INFO    ] Checking for system updates...
[2026-10-18 22:23:24,656.656 INFO    ] 200
[2026-10-18 22:23:24,658.658 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:23:24,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:23:24,716.716 INFO    ] No update needed
[2026-10-18 22:23:24,718.718 INFO    ] Checking for camera pi updates...
[2026-10-18 22:23:24,763.763 INFO    ] 200
[2026-10-18 22:23:24,766.766 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:23:24,813.813 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:23:24,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:23:24,955.955 INFO    ] No camera update needed
[2026-10-18 22:23:24,958.958 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:23:24,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:23:24,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:23:24,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:23:27,029.029 INFO    ] ================================================
[2026-10-18 22:23:27,045.045 INFO    ] Launching Daemon at Sun Oct 18 22:23:27 IST 2026
[2026-10-18 22:23:27,059.059 INFO    ] ================================================
[2026-10-18 22:23:27,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:23:27
[2026-10-18 22:23:28,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:23:28,535.535 INFO    ] Initializing speech engine...
[2026-10-18 22:23:28,544.544 INFO    ] 2026-10-18 22:23:28
[2026-10-18 22:23:28,857.857 INFO    ] 2026-10-18 22:23:28
[2026-10-18 22:23:28,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:23:29,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:23:29,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:23:29,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:23:29,322.322 INFO    ] time= 18/10/2026 22:23:29
[2026-10-18 22:23:29,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:23:29,334.334 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:23:29,491.491 INFO    ] No existing commands found in stream
[2026-10-18 22:23:34,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:23:34,525.525 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-18 22:23:39,005.005 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:23:39,008.008 INFO    ] Checking for system updates...
[2026-10-18 22:23:39,048.048 INFO    ] 200
[2026-10-18 22:23:39,051.051 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:23:39,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:23:39,107.107 INFO    ] No update needed
[2026-10-18 22:23:39,110.110 INFO    ] Checking for camera pi updates...
[2026-10-18 22:23:39,144.144 INFO    ] 200
[2026-10-18 22:23:39,147.147 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:23:39,189.189 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:23:39,226.226 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:23:39,229.229 INFO    ] No camera update needed
[2026-10-18 22:23:39,232.232 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:23:39,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:23:39,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:23:39,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:23:41,288.288 INFO    ] ================================================
[2026-10-18 22:23:41,304.304 INFO    ] Launching Daemon at Sun Oct 18 22:23:41 IST 2026
[2026-10-18 22:23:41,315.315 INFO    ] ================================================
[2026-10-18 22:23:41,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:23:41
[2026-10-18 22:23:42,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:23:42,969.969 INFO    ] Initializing speech engine...
[2026-10-18 22:23:42,977.977 INFO    ] 2026-10-18 22:23:42
[2026-10-18 22:23:43,237.237 INFO    ] 2026-10-18 22:23:43
[2026-10-18 22:23:43,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:23:43,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:23:43,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:23:43,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:23:43,668.668 INFO    ] time= 18/10/2026 22:23:43
[2026-10-18 22:23:43,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:23:43,678.678 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:23:43,777.777 INFO    ] No existing commands found in stream
[2026-10-18 22:23:48,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:23:48,805.805 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-18 22:23:52,110.110 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:23:52,113.113 INFO    ] Checking for system updates...
[2026-10-18 22:23:52,149.149 INFO    ] 200
[2026-10-18 22:23:52,152.152 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:23:52,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:23:52,206.206 INFO    ] No update needed
[2026-10-18 22:23:52,208.208 INFO    ] Checking for camera pi updates...
[2026-10-18 22:23:52,242.242 INFO    ] 200
[2026-10-18 22:23:52,245.245 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:23:52,285.285 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:23:52,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:23:52,324.324 INFO    ] No camera update needed
[2026-10-18 22:23:52,326.326 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:23:52,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:23:52,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:23:52,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:23:54,379.379 INFO    ] ================================================
[2026-10-18 22:23:54,395.395 INFO    ] Launching Daemon at Sun Oct 18 22:23:54 IST 2026
[2026-10-18 22:23:54,406.406 INFO    ] ================================================
[2026-10-18 22:23:54,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:23:54
[2026-10-18 22:23:55,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:23:55,816.816 INFO    ] Initializing speech engine...
[2026-10-18 22:23:55,822.822 INFO    ] 2026-10-18 22:23:55
[2026-10-18 22:23:56,127.127 INFO    ] 2026-10-18 22:23:56
[2026-10-18 22:23:56,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:23:56,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:23:56,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:23:56,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:23:56,559.559 INFO    ] time= 18/10/2026 22:23:56
[2026-10-18 22:23:56,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:23:56,599.599 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:23:56,731.731 INFO    ] No existing commands found in stream
[2026-10-18 22:24:01,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:24:01,765.765 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-18 22:24:03,042.042 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:24:03,045.045 INFO    ] Checking for system updates...
[2026-10-18 22:24:03,088.088 INFO    ] 200
[2026-10-18 22:24:03,092.092 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:24:03,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:24:03,153.153 INFO    ] No update needed
[2026-10-18 22:24:03,155.155 INFO    ] Checking for camera pi updates...
[2026-10-18 22:24:03,193.193 INFO    ] 200
[2026-10-18 22:24:03,195.195 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:24:03,234.234 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:24:03,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:24:03,272.272 INFO    ] No camera update needed
[2026-10-18 22:24:03,275.275 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:24:03,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:24:03,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:24:03,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:24:05,326.326 INFO    ] ================================================
[2026-10-18 22:24:05,343.343 INFO    ] Launching Daemon at Sun Oct 18 22:24:05 IST 2026
[2026-10-18 22:24:05,353.353 INFO    ] ================================================
[2026-10-18 22:24:05,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:24:05
[2026-10-18 22:24:06,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:24:06,793.793 INFO    ] Initializing speech engine...
[2026-10-18 22:24:06,802.802 INFO    ] 2026-10-18 22:24:06
[2026-10-18 22:24:07,049.049 INFO    ] 2026-10-18 22:24:07
[2026-10-18 22:24:07,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:24:07,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:24:07,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:24:07,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:24:07,605.605 INFO    ] time= 18/10/2026 22:24:07
[2026-10-18 22:24:07,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:24:07,629.629 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:24:07,762.762 INFO    ] No existing commands found in stream
[2026-10-18 22:24:12,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:24:12,799.799 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-18 22:24:15,391.391 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:24:15,394.394 INFO    ] Checking for system updates...
[2026-10-18 22:24:15,430.430 INFO    ] 200
[2026-10-18 22:24:15,432.432 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:24:15,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:24:15,485.485 INFO    ] No update needed
[2026-10-18 22:24:15,487.487 INFO    ] Checking for camera pi updates...
[2026-10-18 22:24:15,520.520 INFO    ] 200
[2026-10-18 22:24:15,523.523 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:24:15,562.562 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:24:15,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:24:15,600.600 INFO    ] No camera update needed
[2026-10-18 22:24:15,602.602 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:24:15,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:24:15,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:24:15,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:24:17,654.654 INFO    ] ================================================
[2026-10-18 22:24:17,670.670 INFO    ] Launching Daemon at Sun Oct 18 22:24:17 IST 2026
[2026-10-18 22:24:17,681.681 INFO    ] ================================================
[2026-10-18 22:24:18,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:24:18
[2026-10-18 22:24:18,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:24:19,101.101 INFO    ] Initializing speech engine...
[2026-10-18 22:24:19,107.107 INFO    ] 2026-10-18 22:24:19
[2026-10-18 22:24:19,407.407 INFO    ] 2026-10-18 22:24:19
[2026-10-18 22:24:19,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:24:19,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:24:19,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:24:19,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:24:19,844.844 INFO    ] time= 18/10/2026 22:24:19
[2026-10-18 22:24:19,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:24:19,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:24:20,006.006 INFO    ] No existing commands found in stream
[2026-10-18 22:24:25,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:24:25,028.028 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-18 22:24:26,430.430 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:24:26,433.433 INFO    ] Checking for system updates...
[2026-10-18 22:24:26,469.469 INFO    ] 200
[2026-10-18 22:24:26,471.471 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:24:26,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:24:26,532.532 INFO    ] No update needed
[2026-10-18 22:24:26,535.535 INFO    ] Checking for camera pi updates...
[2026-10-18 22:24:26,567.567 INFO    ] 200
[2026-10-18 22:24:26,570.570 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:24:26,613.613 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:24:26,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:24:26,651.651 INFO    ] No camera update needed
[2026-10-18 22:24:26,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:24:26,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:24:26,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:24:26,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:24:28,706.706 INFO    ] ================================================
[2026-10-18 22:24:28,722.722 INFO    ] Launching Daemon at Sun Oct 18 22:24:28 IST 2026
[2026-10-18 22:24:28,733.733 INFO    ] ================================================
[2026-10-18 22:24:29,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:24:29
[2026-10-18 22:24:29,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:24:30,126.126 INFO    ] Initializing speech engine...
[2026-10-18 22:24:30,149.149 INFO    ] 2026-10-18 22:24:30
[2026-10-18 22:24:30,400.400 INFO    ] 2026-10-18 22:24:30
[2026-10-18 22:24:30,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:24:30,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:24:30,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:24:30,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:24:30,877.877 INFO    ] time= 18/10/2026 22:24:30
[2026-10-18 22:24:30,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:24:30,965.965 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:24:31,146.146 INFO    ] No existing commands found in stream
[2026-10-18 22:24:36,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:24:36,167.167 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-18 22:24:39,649.649 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:24:39,652.652 INFO    ] Checking for system updates...
[2026-10-18 22:24:39,687.687 INFO    ] 200
[2026-10-18 22:24:39,689.689 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:24:39,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:24:39,743.743 INFO    ] No update needed
[2026-10-18 22:24:39,745.745 INFO    ] Checking for camera pi updates...
[2026-10-18 22:24:39,779.779 INFO    ] 200
[2026-10-18 22:24:39,781.781 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:24:39,826.826 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:24:39,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:24:39,864.864 INFO    ] No camera update needed
[2026-10-18 22:24:39,867.867 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:24:39,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:24:39,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:24:39,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:24:41,920.920 INFO    ] ================================================
[2026-10-18 22:24:41,936.936 INFO    ] Launching Daemon at Sun Oct 18 22:24:41 IST 2026
[2026-10-18 22:24:41,947.947 INFO    ] ================================================
[2026-10-18 22:24:42,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:24:42
[2026-10-18 22:24:43,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:24:43,391.391 INFO    ] Initializing speech engine...
[2026-10-18 22:24:43,406.406 INFO    ] 2026-10-18 22:24:43
[2026-10-18 22:24:43,682.682 INFO    ] 2026-10-18 22:24:43
[2026-10-18 22:24:43,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:24:43,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:24:43,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:24:44,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:24:44,262.262 INFO    ] time= 18/10/2026 22:24:44
[2026-10-18 22:24:44,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:24:44,293.293 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:24:44,426.426 INFO    ] No existing commands found in stream
[2026-10-18 22:24:49,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:24:49,445.445 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-18 22:24:50,695.695 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:24:50,698.698 INFO    ] Checking for system updates...
[2026-10-18 22:24:50,734.734 INFO    ] 200
[2026-10-18 22:24:50,737.737 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:24:50,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:24:50,794.794 INFO    ] No update needed
[2026-10-18 22:24:50,797.797 INFO    ] Checking for camera pi updates...
[2026-10-18 22:24:50,831.831 INFO    ] 200
[2026-10-18 22:24:50,834.834 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:24:50,875.875 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:24:50,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:24:50,916.916 INFO    ] No camera update needed
[2026-10-18 22:24:50,918.918 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:24:50,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:24:50,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:24:50,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:24:52,974.974 INFO    ] ================================================
[2026-10-18 22:24:52,989.989 INFO    ] Launching Daemon at Sun Oct 18 22:24:52 IST 2026
[2026-10-18 22:24:53,000.000 INFO    ] ================================================
[2026-10-18 22:24:53,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:24:53
[2026-10-18 22:24:54,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:24:54,426.426 INFO    ] Initializing speech engine...
[2026-10-18 22:24:54,433.433 INFO    ] 2026-10-18 22:24:54
[2026-10-18 22:24:54,744.744 INFO    ] 2026-10-18 22:24:54
[2026-10-18 22:24:54,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:24:54,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:24:55,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:24:55,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:24:55,181.181 INFO    ] time= 18/10/2026 22:24:55
[2026-10-18 22:24:55,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:24:55,193.193 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:24:55,343.343 INFO    ] No existing commands found in stream
[2026-10-18 22:25:00,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:25:00,371.371 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-18 22:25:02,422.422 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:25:02,425.425 INFO    ] Checking for system updates...
[2026-10-18 22:25:02,466.466 INFO    ] 200
[2026-10-18 22:25:02,469.469 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:25:02,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:25:02,532.532 INFO    ] No update needed
[2026-10-18 22:25:02,535.535 INFO    ] Checking for camera pi updates...
[2026-10-18 22:25:02,583.583 INFO    ] 200
[2026-10-18 22:25:02,586.586 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:25:02,640.640 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:25:02,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:25:02,673.673 INFO    ] No camera update needed
[2026-10-18 22:25:02,676.676 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:25:02,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:25:02,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:25:02,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:25:04,739.739 INFO    ] ================================================
[2026-10-18 22:25:04,754.754 INFO    ] Launching Daemon at Sun Oct 18 22:25:04 IST 2026
[2026-10-18 22:25:04,766.766 INFO    ] ================================================
[2026-10-18 22:25:05,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:25:05
[2026-10-18 22:25:05,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:25:06,165.165 INFO    ] Initializing speech engine...
[2026-10-18 22:25:06,180.180 INFO    ] 2026-10-18 22:25:06
[2026-10-18 22:25:06,463.463 INFO    ] 2026-10-18 22:25:06
[2026-10-18 22:25:06,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:25:06,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:25:06,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:25:06,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:25:06,901.901 INFO    ] time= 18/10/2026 22:25:06
[2026-10-18 22:25:06,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:25:06,913.913 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:25:06,995.995 INFO    ] No existing commands found in stream
[2026-10-18 22:25:12,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:25:12,026.026 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-18 22:25:13,568.568 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:25:13,570.570 INFO    ] Checking for system updates...
[2026-10-18 22:25:13,605.605 INFO    ] 200
[2026-10-18 22:25:13,607.607 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:25:13,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:25:13,661.661 INFO    ] No update needed
[2026-10-18 22:25:13,664.664 INFO    ] Checking for camera pi updates...
[2026-10-18 22:25:13,696.696 INFO    ] 200
[2026-10-18 22:25:13,698.698 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:25:13,737.737 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:25:13,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:25:13,775.775 INFO    ] No camera update needed
[2026-10-18 22:25:13,777.777 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:25:13,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:25:13,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:25:13,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:25:15,831.831 INFO    ] ================================================
[2026-10-18 22:25:15,847.847 INFO    ] Launching Daemon at Sun Oct 18 22:25:15 IST 2026
[2026-10-18 22:25:15,858.858 INFO    ] ================================================
[2026-10-18 22:25:16,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:25:16
[2026-10-18 22:25:17,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:25:17,523.523 INFO    ] Initializing speech engine...
[2026-10-18 22:25:17,534.534 INFO    ] 2026-10-18 22:25:17
[2026-10-18 22:25:17,848.848 INFO    ] 2026-10-18 22:25:17
[2026-10-18 22:25:17,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:25:18,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:25:18,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:25:18,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:25:18,369.369 INFO    ] time= 18/10/2026 22:25:18
[2026-10-18 22:25:18,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:25:18,410.410 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:25:18,513.513 INFO    ] No existing commands found in stream
[2026-10-18 22:25:23,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:25:23,556.556 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-18 22:25:26,439.439 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:25:26,442.442 INFO    ] Checking for system updates...
[2026-10-18 22:25:26,480.480 INFO    ] 200
[2026-10-18 22:25:26,483.483 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:25:26,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:25:26,539.539 INFO    ] No update needed
[2026-10-18 22:25:26,542.542 INFO    ] Checking for camera pi updates...
[2026-10-18 22:25:26,577.577 INFO    ] 200
[2026-10-18 22:25:26,579.579 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:25:26,620.620 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:25:26,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:25:26,662.662 INFO    ] No camera update needed
[2026-10-18 22:25:26,664.664 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:25:26,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:25:26,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:25:26,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:25:28,721.721 INFO    ] ================================================
[2026-10-18 22:25:28,737.737 INFO    ] Launching Daemon at Sun Oct 18 22:25:28 IST 2026
[2026-10-18 22:25:28,747.747 INFO    ] ================================================
[2026-10-18 22:25:29,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:25:29
[2026-10-18 22:25:29,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:25:30,169.169 INFO    ] Initializing speech engine...
[2026-10-18 22:25:30,177.177 INFO    ] 2026-10-18 22:25:30
[2026-10-18 22:25:30,420.420 INFO    ] 2026-10-18 22:25:30
[2026-10-18 22:25:30,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:25:30,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:25:30,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:25:30,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:25:30,988.988 INFO    ] time= 18/10/2026 22:25:30
[2026-10-18 22:25:30,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:25:31,011.011 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:25:31,143.143 INFO    ] No existing commands found in stream
[2026-10-18 22:25:36,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:25:36,160.160 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-18 22:25:37,932.932 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:25:37,935.935 INFO    ] Checking for system updates...
[2026-10-18 22:25:37,970.970 INFO    ] 200
[2026-10-18 22:25:37,972.972 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:25:38,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:25:38,025.025 INFO    ] No update needed
[2026-10-18 22:25:38,028.028 INFO    ] Checking for camera pi updates...
[2026-10-18 22:25:38,060.060 INFO    ] 200
[2026-10-18 22:25:38,063.063 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:25:38,103.103 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:25:38,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:25:38,147.147 INFO    ] No camera update needed
[2026-10-18 22:25:38,150.150 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:25:38,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:25:38,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:25:38,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:25:40,204.204 INFO    ] ================================================
[2026-10-18 22:25:40,219.219 INFO    ] Launching Daemon at Sun Oct 18 22:25:40 IST 2026
[2026-10-18 22:25:40,230.230 INFO    ] ================================================
[2026-10-18 22:25:40,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:25:40
[2026-10-18 22:25:41,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:25:41,920.920 INFO    ] Initializing speech engine...
[2026-10-18 22:25:41,929.929 INFO    ] 2026-10-18 22:25:41
[2026-10-18 22:25:42,238.238 INFO    ] 2026-10-18 22:25:42
[2026-10-18 22:25:42,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:25:42,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:25:42,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:25:42,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:25:42,761.761 INFO    ] time= 18/10/2026 22:25:42
[2026-10-18 22:25:42,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:25:42,803.803 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:25:42,957.957 INFO    ] No existing commands found in stream
[2026-10-18 22:25:47,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:25:47,987.987 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-18 22:25:51,340.340 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:25:51,343.343 INFO    ] Checking for system updates...
[2026-10-18 22:25:51,379.379 INFO    ] 200
[2026-10-18 22:25:51,382.382 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:25:51,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:25:51,437.437 INFO    ] No update needed
[2026-10-18 22:25:51,440.440 INFO    ] Checking for camera pi updates...
[2026-10-18 22:25:51,475.475 INFO    ] 200
[2026-10-18 22:25:51,478.478 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:25:51,526.526 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:25:51,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:25:51,574.574 INFO    ] No camera update needed
[2026-10-18 22:25:51,577.577 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:25:51,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:25:51,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:25:51,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:25:53,634.634 INFO    ] ================================================
[2026-10-18 22:25:53,650.650 INFO    ] Launching Daemon at Sun Oct 18 22:25:53 IST 2026
[2026-10-18 22:25:53,661.661 INFO    ] ================================================
[2026-10-18 22:25:54,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:25:54
[2026-10-18 22:25:54,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:25:55,121.121 INFO    ] Initializing speech engine...
[2026-10-18 22:25:55,129.129 INFO    ] 2026-10-18 22:25:55
[2026-10-18 22:25:55,434.434 INFO    ] 2026-10-18 22:25:55
[2026-10-18 22:25:55,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:25:55,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:25:55,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:25:55,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:25:55,969.969 INFO    ] time= 18/10/2026 22:25:55
[2026-10-18 22:25:56,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:25:56,073.073 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:25:56,245.245 INFO    ] No existing commands found in stream
[2026-10-18 22:26:01,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:26:01,279.279 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-18 22:26:02,916.916 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:26:02,920.920 INFO    ] Checking for system updates...
[2026-10-18 22:26:02,963.963 INFO    ] 200
[2026-10-18 22:26:02,966.966 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:26:03,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:26:03,021.021 INFO    ] No update needed
[2026-10-18 22:26:03,024.024 INFO    ] Checking for camera pi updates...
[2026-10-18 22:26:03,065.065 INFO    ] 200
[2026-10-18 22:26:03,069.069 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:26:03,122.122 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:26:03,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:26:03,170.170 INFO    ] No camera update needed
[2026-10-18 22:26:03,173.173 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:26:03,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:26:03,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:26:03,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:26:05,235.235 INFO    ] ================================================
[2026-10-18 22:26:05,250.250 INFO    ] Launching Daemon at Sun Oct 18 22:26:05 IST 2026
[2026-10-18 22:26:05,261.261 INFO    ] ================================================
[2026-10-18 22:26:05,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:26:05
[2026-10-18 22:26:06,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:26:06,667.667 INFO    ] Initializing speech engine...
[2026-10-18 22:26:06,690.690 INFO    ] 2026-10-18 22:26:06
[2026-10-18 22:26:06,945.945 INFO    ] 2026-10-18 22:26:06
[2026-10-18 22:26:06,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:26:07,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:26:07,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:26:07,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:26:07,508.508 INFO    ] time= 18/10/2026 22:26:07
[2026-10-18 22:26:07,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:26:07,530.530 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:26:07,717.717 INFO    ] No existing commands found in stream
[2026-10-18 22:26:12,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:26:12,746.746 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-18 22:26:17,113.113 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:26:17,116.116 INFO    ] Checking for system updates...
[2026-10-18 22:26:17,151.151 INFO    ] 200
[2026-10-18 22:26:17,154.154 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:26:17,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:26:17,210.210 INFO    ] No update needed
[2026-10-18 22:26:17,212.212 INFO    ] Checking for camera pi updates...
[2026-10-18 22:26:17,246.246 INFO    ] 200
[2026-10-18 22:26:17,249.249 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:26:17,290.290 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:26:17,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:26:17,334.334 INFO    ] No camera update needed
[2026-10-18 22:26:17,336.336 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:26:17,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:26:17,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:26:17,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:26:19,392.392 INFO    ] ================================================
[2026-10-18 22:26:19,408.408 INFO    ] Launching Daemon at Sun Oct 18 22:26:19 IST 2026
[2026-10-18 22:26:19,419.419 INFO    ] ================================================
[2026-10-18 22:26:20,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:26:20
[2026-10-18 22:26:20,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:26:21,000.000 INFO    ] Initializing speech engine...
[2026-10-18 22:26:21,013.013 INFO    ] 2026-10-18 22:26:21
[2026-10-18 22:26:21,295.295 INFO    ] 2026-10-18 22:26:21
[2026-10-18 22:26:21,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:26:21,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:26:21,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:26:21,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:26:21,837.837 INFO    ] time= 18/10/2026 22:26:21
[2026-10-18 22:26:21,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:26:21,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:26:21,997.997 INFO    ] No existing commands found in stream
[2026-10-18 22:26:27,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:26:27,020.020 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-18 22:26:28,949.949 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:26:28,951.951 INFO    ] Checking for system updates...
[2026-10-18 22:26:28,986.986 INFO    ] 200
[2026-10-18 22:26:28,988.988 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:26:29,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:26:29,043.043 INFO    ] No update needed
[2026-10-18 22:26:29,046.046 INFO    ] Checking for camera pi updates...
[2026-10-18 22:26:29,079.079 INFO    ] 200
[2026-10-18 22:26:29,081.081 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:26:29,121.121 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:26:29,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:26:29,163.163 INFO    ] No camera update needed
[2026-10-18 22:26:29,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:26:29,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:26:29,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:26:29,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:26:31,218.218 INFO    ] ================================================
[2026-10-18 22:26:31,233.233 INFO    ] Launching Daemon at Sun Oct 18 22:26:31 IST 2026
[2026-10-18 22:26:31,244.244 INFO    ] ================================================
[2026-10-18 22:26:31,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:26:31
[2026-10-18 22:26:32,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:26:32,959.959 INFO    ] Initializing speech engine...
[2026-10-18 22:26:32,965.965 INFO    ] 2026-10-18 22:26:32
[2026-10-18 22:26:33,244.244 INFO    ] 2026-10-18 22:26:33
[2026-10-18 22:26:33,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:26:33,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:26:33,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:26:33,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:26:33,806.806 INFO    ] time= 18/10/2026 22:26:33
[2026-10-18 22:26:33,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:26:33,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:26:33,964.964 INFO    ] No existing commands found in stream
[2026-10-18 22:26:38,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:26:38,980.980 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-18 22:26:41,156.156 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:26:41,159.159 INFO    ] Checking for system updates...
[2026-10-18 22:26:41,195.195 INFO    ] 200
[2026-10-18 22:26:41,198.198 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:26:41,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:26:41,255.255 INFO    ] No update needed
[2026-10-18 22:26:41,258.258 INFO    ] Checking for camera pi updates...
[2026-10-18 22:26:41,292.292 INFO    ] 200
[2026-10-18 22:26:41,295.295 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:26:41,339.339 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:26:41,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:26:41,383.383 INFO    ] No camera update needed
[2026-10-18 22:26:41,386.386 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:26:41,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:26:41,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:26:41,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:26:43,440.440 INFO    ] ================================================
[2026-10-18 22:26:43,455.455 INFO    ] Launching Daemon at Sun Oct 18 22:26:43 IST 2026
[2026-10-18 22:26:43,465.465 INFO    ] ================================================
[2026-10-18 22:26:44,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:26:44
[2026-10-18 22:26:44,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:26:44,882.882 INFO    ] Initializing speech engine...
[2026-10-18 22:26:44,891.891 INFO    ] 2026-10-18 22:26:44
[2026-10-18 22:26:45,140.140 INFO    ] 2026-10-18 22:26:45
[2026-10-18 22:26:45,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:26:45,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:26:45,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:26:45,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:26:45,648.648 INFO    ] time= 18/10/2026 22:26:45
[2026-10-18 22:26:45,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:26:45,746.746 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:26:45,883.883 INFO    ] No existing commands found in stream
[2026-10-18 22:26:50,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:26:50,911.911 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-18 22:26:57,374.374 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:26:57,376.376 INFO    ] Checking for system updates...
[2026-10-18 22:26:57,419.419 INFO    ] 200
[2026-10-18 22:26:57,421.421 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:26:57,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:26:57,478.478 INFO    ] No update needed
[2026-10-18 22:26:57,480.480 INFO    ] Checking for camera pi updates...
[2026-10-18 22:26:57,515.515 INFO    ] 200
[2026-10-18 22:26:57,517.517 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:26:57,557.557 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:26:57,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:26:57,601.601 INFO    ] No camera update needed
[2026-10-18 22:26:57,603.603 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:26:57,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:26:57,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:26:57,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:26:59,657.657 INFO    ] ================================================
[2026-10-18 22:26:59,674.674 INFO    ] Launching Daemon at Sun Oct 18 22:26:59 IST 2026
[2026-10-18 22:26:59,684.684 INFO    ] ================================================
[2026-10-18 22:27:00,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:27:00
[2026-10-18 22:27:00,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:27:01,117.117 INFO    ] Initializing speech engine...
[2026-10-18 22:27:01,124.124 INFO    ] 2026-10-18 22:27:01
[2026-10-18 22:27:01,404.404 INFO    ] 2026-10-18 22:27:01
[2026-10-18 22:27:01,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:27:01,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:27:01,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:27:01,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:27:01,871.871 INFO    ] time= 18/10/2026 22:27:01
[2026-10-18 22:27:01,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:27:01,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:27:01,970.970 INFO    ] No existing commands found in stream
[2026-10-18 22:27:06,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:27:06,985.985 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-18 22:27:09,028.028 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:27:09,031.031 INFO    ] Checking for system updates...
[2026-10-18 22:27:09,067.067 INFO    ] 200
[2026-10-18 22:27:09,069.069 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:27:09,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:27:09,123.123 INFO    ] No update needed
[2026-10-18 22:27:09,132.132 INFO    ] Checking for camera pi updates...
[2026-10-18 22:27:09,167.167 INFO    ] 200
[2026-10-18 22:27:09,170.170 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:27:09,212.212 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:27:09,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:27:09,257.257 INFO    ] No camera update needed
[2026-10-18 22:27:09,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:27:09,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:27:09,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:27:09,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:27:11,312.312 INFO    ] ================================================
[2026-10-18 22:27:11,328.328 INFO    ] Launching Daemon at Sun Oct 18 22:27:11 IST 2026
[2026-10-18 22:27:11,339.339 INFO    ] ================================================
[2026-10-18 22:27:11,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:27:11
[2026-10-18 22:27:12,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:27:12,797.797 INFO    ] Initializing speech engine...
[2026-10-18 22:27:12,806.806 INFO    ] 2026-10-18 22:27:12
[2026-10-18 22:27:13,067.067 INFO    ] 2026-10-18 22:27:13
[2026-10-18 22:27:13,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:27:13,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:27:13,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:27:13,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:27:13,603.603 INFO    ] time= 18/10/2026 22:27:13
[2026-10-18 22:27:13,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:27:13,632.632 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:27:13,761.761 INFO    ] No existing commands found in stream
[2026-10-18 22:27:18,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:27:18,777.777 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-18 22:27:20,001.001 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:27:20,004.004 INFO    ] Checking for system updates...
[2026-10-18 22:27:20,039.039 INFO    ] 200
[2026-10-18 22:27:20,041.041 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:27:20,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:27:20,096.096 INFO    ] No update needed
[2026-10-18 22:27:20,099.099 INFO    ] Checking for camera pi updates...
[2026-10-18 22:27:20,139.139 INFO    ] 200
[2026-10-18 22:27:20,141.141 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:27:20,186.186 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:27:20,226.226 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:27:20,228.228 INFO    ] No camera update needed
[2026-10-18 22:27:20,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:27:20,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:27:20,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:27:20,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:27:22,283.283 INFO    ] ================================================
[2026-10-18 22:27:22,299.299 INFO    ] Launching Daemon at Sun Oct 18 22:27:22 IST 2026
[2026-10-18 22:27:22,310.310 INFO    ] ================================================
[2026-10-18 22:27:22,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:27:22
[2026-10-18 22:27:23,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:27:23,706.706 INFO    ] Initializing speech engine...
[2026-10-18 22:27:23,715.715 INFO    ] 2026-10-18 22:27:23
[2026-10-18 22:27:24,004.004 INFO    ] 2026-10-18 22:27:23
[2026-10-18 22:27:24,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:27:24,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:27:24,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:27:24,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:27:24,516.516 INFO    ] time= 18/10/2026 22:27:24
[2026-10-18 22:27:24,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:27:24,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:27:24,776.776 INFO    ] No existing commands found in stream
[2026-10-18 22:27:29,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:27:29,810.810 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-18 22:27:34,037.037 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:27:34,040.040 INFO    ] Checking for system updates...
[2026-10-18 22:27:34,075.075 INFO    ] 200
[2026-10-18 22:27:34,077.077 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:27:34,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:27:34,130.130 INFO    ] No update needed
[2026-10-18 22:27:34,132.132 INFO    ] Checking for camera pi updates...
[2026-10-18 22:27:34,170.170 INFO    ] 200
[2026-10-18 22:27:34,173.173 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:27:34,217.217 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:27:34,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:27:34,258.258 INFO    ] No camera update needed
[2026-10-18 22:27:34,261.261 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:27:34,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:27:34,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:27:34,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:27:36,314.314 INFO    ] ================================================
[2026-10-18 22:27:36,329.329 INFO    ] Launching Daemon at Sun Oct 18 22:27:36 IST 2026
[2026-10-18 22:27:36,340.340 INFO    ] ================================================
[2026-10-18 22:27:36,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:27:36
[2026-10-18 22:27:37,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:27:37,765.765 INFO    ] Initializing speech engine...
[2026-10-18 22:27:37,778.778 INFO    ] 2026-10-18 22:27:37
[2026-10-18 22:27:38,058.058 INFO    ] 2026-10-18 22:27:38
[2026-10-18 22:27:38,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:27:38,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:27:38,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:27:38,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:27:38,478.478 INFO    ] time= 18/10/2026 22:27:38
[2026-10-18 22:27:38,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:27:38,550.550 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:27:38,676.676 INFO    ] No existing commands found in stream
[2026-10-18 22:27:43,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:27:43,704.704 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-18 22:27:47,414.414 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:27:47,417.417 INFO    ] Checking for system updates...
[2026-10-18 22:27:47,453.453 INFO    ] 200
[2026-10-18 22:27:47,455.455 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:27:47,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:27:47,508.508 INFO    ] No update needed
[2026-10-18 22:27:47,510.510 INFO    ] Checking for camera pi updates...
[2026-10-18 22:27:47,543.543 INFO    ] 200
[2026-10-18 22:27:47,546.546 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:27:47,584.584 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:27:47,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:27:47,725.725 INFO    ] No camera update needed
[2026-10-18 22:27:47,728.728 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:27:47,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:27:47,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:27:47,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:27:49,780.780 INFO    ] ================================================
[2026-10-18 22:27:49,796.796 INFO    ] Launching Daemon at Sun Oct 18 22:27:49 IST 2026
[2026-10-18 22:27:49,807.807 INFO    ] ================================================
[2026-10-18 22:27:50,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:27:50
[2026-10-18 22:27:50,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:27:51,270.270 INFO    ] Initializing speech engine...
[2026-10-18 22:27:51,279.279 INFO    ] 2026-10-18 22:27:51
[2026-10-18 22:27:51,537.537 INFO    ] 2026-10-18 22:27:51
[2026-10-18 22:27:51,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:27:51,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:27:51,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:27:52,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:27:52,084.084 INFO    ] time= 18/10/2026 22:27:52
[2026-10-18 22:27:52,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:27:52,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:27:52,237.237 INFO    ] No existing commands found in stream
[2026-10-18 22:27:57,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:27:57,255.255 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-18 22:28:00,869.869 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:28:00,872.872 INFO    ] Checking for system updates...
[2026-10-18 22:28:00,908.908 INFO    ] 200
[2026-10-18 22:28:00,911.911 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:28:00,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:28:00,966.966 INFO    ] No update needed
[2026-10-18 22:28:00,969.969 INFO    ] Checking for camera pi updates...
[2026-10-18 22:28:01,005.005 INFO    ] 200
[2026-10-18 22:28:01,009.009 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:28:01,052.052 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:28:01,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:28:01,097.097 INFO    ] No camera update needed
[2026-10-18 22:28:01,100.100 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:28:01,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:28:01,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:28:01,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:28:03,156.156 INFO    ] ================================================
[2026-10-18 22:28:03,171.171 INFO    ] Launching Daemon at Sun Oct 18 22:28:03 IST 2026
[2026-10-18 22:28:03,183.183 INFO    ] ================================================
[2026-10-18 22:28:03,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:28:03
[2026-10-18 22:28:04,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:28:04,604.604 INFO    ] Initializing speech engine...
[2026-10-18 22:28:04,619.619 INFO    ] 2026-10-18 22:28:04
[2026-10-18 22:28:04,880.880 INFO    ] 2026-10-18 22:28:04
[2026-10-18 22:28:04,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:28:05,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:28:05,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:28:05,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:28:05,431.431 INFO    ] time= 18/10/2026 22:28:05
[2026-10-18 22:28:05,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:28:05,455.455 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:28:05,586.586 INFO    ] No existing commands found in stream
[2026-10-18 22:28:10,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:28:10,611.611 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-18 22:28:14,294.294 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:28:14,296.296 INFO    ] Checking for system updates...
[2026-10-18 22:28:14,331.331 INFO    ] 200
[2026-10-18 22:28:14,334.334 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:28:14,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:28:14,387.387 INFO    ] No update needed
[2026-10-18 22:28:14,389.389 INFO    ] Checking for camera pi updates...
[2026-10-18 22:28:14,422.422 INFO    ] 200
[2026-10-18 22:28:14,425.425 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:28:14,465.465 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:28:14,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:28:14,508.508 INFO    ] No camera update needed
[2026-10-18 22:28:14,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:28:14,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:28:14,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:28:14,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:28:16,563.563 INFO    ] ================================================
[2026-10-18 22:28:16,581.581 INFO    ] Launching Daemon at Sun Oct 18 22:28:16 IST 2026
[2026-10-18 22:28:16,593.593 INFO    ] ================================================
[2026-10-18 22:28:17,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:28:17
[2026-10-18 22:28:17,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:28:18,028.028 INFO    ] Initializing speech engine...
[2026-10-18 22:28:18,039.039 INFO    ] 2026-10-18 22:28:18
[2026-10-18 22:28:18,305.305 INFO    ] 2026-10-18 22:28:18
[2026-10-18 22:28:18,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:28:18,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:28:18,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:28:18,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:28:18,731.731 INFO    ] time= 18/10/2026 22:28:18
[2026-10-18 22:28:18,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:28:18,769.769 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:28:18,924.924 INFO    ] No existing commands found in stream
[2026-10-18 22:28:23,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:28:23,952.952 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-18 22:28:25,832.832 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:28:25,835.835 INFO    ] Checking for system updates...
[2026-10-18 22:28:25,874.874 INFO    ] 200
[2026-10-18 22:28:25,876.876 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:28:25,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:28:25,929.929 INFO    ] No update needed
[2026-10-18 22:28:25,932.932 INFO    ] Checking for camera pi updates...
[2026-10-18 22:28:25,969.969 INFO    ] 200
[2026-10-18 22:28:25,971.971 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:28:26,010.010 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:28:26,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:28:26,053.053 INFO    ] No camera update needed
[2026-10-18 22:28:26,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:28:26,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:28:26,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:28:26,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:28:28,106.106 INFO    ] ================================================
[2026-10-18 22:28:28,122.122 INFO    ] Launching Daemon at Sun Oct 18 22:28:28 IST 2026
[2026-10-18 22:28:28,134.134 INFO    ] ================================================
[2026-10-18 22:28:28,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:28:28
[2026-10-18 22:28:29,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:28:29,548.548 INFO    ] Initializing speech engine...
[2026-10-18 22:28:29,561.561 INFO    ] 2026-10-18 22:28:29
[2026-10-18 22:28:29,824.824 INFO    ] 2026-10-18 22:28:29
[2026-10-18 22:28:29,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:28:30,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:28:30,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:28:30,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:28:30,306.306 INFO    ] time= 18/10/2026 22:28:30
[2026-10-18 22:28:30,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:28:30,401.401 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:28:30,532.532 INFO    ] No existing commands found in stream
[2026-10-18 22:28:35,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:28:35,560.560 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-18 22:28:38,419.419 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:28:38,422.422 INFO    ] Checking for system updates...
[2026-10-18 22:28:38,457.457 INFO    ] 200
[2026-10-18 22:28:38,459.459 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:28:38,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:28:38,512.512 INFO    ] No update needed
[2026-10-18 22:28:38,515.515 INFO    ] Checking for camera pi updates...
[2026-10-18 22:28:38,548.548 INFO    ] 200
[2026-10-18 22:28:38,550.550 INFO    ] {"state": "STATE_IDLE", "status": true, "msg": "Status of machine"}
[2026-10-18 22:28:38,589.589 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:28:38,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:28:38,631.631 INFO    ] No camera update needed
[2026-10-18 22:28:38,634.634 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:28:38,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:28:38,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:28:38,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:28:40,688.688 INFO    ] ================================================
[2026-10-18 22:28:40,704.704 INFO    ] Launching Daemon at Sun Oct 18 22:28:40 IST 2026
[2026-10-18 22:28:40,719.719 INFO    ] ================================================
[2026-10-18 22:28:41,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:28:41
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       [2026-10-18 22:19:02,104.104 INFO    ] ================================================
[2026-10-18 22:19:02,126.126 INFO    ] Launching Daemon at Sun Oct 18 22:19:02 IST 2026
[2026-10-18 22:19:02,139.139 INFO    ] ================================================
[2026-10-18 22:19:02,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:19:02
[2026-10-18 22:19:03,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:19:03,972.972 INFO    ] Initializing speech engine...
[2026-10-18 22:19:03,981.981 INFO    ] 2026-10-18 22:19:03
[2026-10-18 22:19:04,655.655 INFO    ] 2026-10-18 22:19:04
[2026-10-18 22:19:04,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:19:07,867.867 INFO    ] VendingMachinePublisher.__init__: Redis error: Error -3 connecting to live.vendingbuddy.in:23294. Temporary failure in name resolution.
[2026-10-18 22:19:07,910.910 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-18 22:19:07,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:19:07,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:19:07,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:19:09,965.965 INFO    ] ================================================
[2026-10-18 22:19:09,981.981 INFO    ] Launching Daemon at Sun Oct 18 22:19:09 IST 2026
[2026-10-18 22:19:09,992.992 INFO    ] ================================================
[2026-10-18 22:19:10,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:19:10
[2026-10-18 22:19:11,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:19:11,435.435 INFO    ] Initializing speech engine...
[2026-10-18 22:19:11,445.445 INFO    ] 2026-10-18 22:19:11
[2026-10-18 22:19:11,724.724 INFO    ] 2026-10-18 22:19:11
[2026-10-18 22:19:11,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:19:21,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:19:21,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:19:21,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:19:21,243.243 INFO    ] time= 18/10/2026 22:19:21
[2026-10-18 22:19:21,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:19:21,248.248 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:19:21,318.318 INFO    ] No existing commands found in stream
[2026-10-18 22:19:26,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:19:26,330.330 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-18 22:19:29,332.332 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:19:29,335.335 INFO    ] Checking for system updates...
[2026-10-18 22:19:29,374.374 INFO    ] 200
[2026-10-18 22:19:29,376.376 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:19:29,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:19:29,442.442 INFO    ] No update needed
[2026-10-18 22:19:29,444.444 INFO    ] Checking for camera pi updates...
[2026-10-18 22:19:29,479.479 INFO    ] 200
[2026-10-18 22:19:29,482.482 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:19:29,525.525 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:19:29,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:19:29,608.608 INFO    ] No camera update needed
[2026-10-18 22:19:29,610.610 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:19:29,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:19:29,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:19:29,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:19:31,664.664 INFO    ] ================================================
[2026-10-18 22:19:31,681.681 INFO    ] Launching Daemon at Sun Oct 18 22:19:31 IST 2026
[2026-10-18 22:19:31,691.691 INFO    ] ================================================
[2026-10-18 22:19:32,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:19:32
[2026-10-18 22:19:32,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:19:33,238.238 INFO    ] Initializing speech engine...
[2026-10-18 22:19:33,255.255 INFO    ] 2026-10-18 22:19:33
[2026-10-18 22:19:33,551.551 INFO    ] 2026-10-18 22:19:33
[2026-10-18 22:19:33,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:19:33,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:19:33,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:19:33,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:19:33,981.981 INFO    ] time= 18/10/2026 22:19:33
[2026-10-18 22:19:34,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:19:34,030.030 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:19:34,120.120 INFO    ] No existing commands found in stream
[2026-10-18 22:19:39,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:19:39,138.138 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-18 22:33:05,543.543 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:33:05,547.547 INFO    ] Checking for system updates...
[2026-10-18 22:33:05,589.589 INFO    ] 200
[2026-10-18 22:33:05,593.593 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:33:05,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:33:05,653.653 INFO    ] No update needed
[2026-10-18 22:33:05,656.656 INFO    ] Checking for camera pi updates...
[2026-10-18 22:33:05,702.702 INFO    ] 200
[2026-10-18 22:33:05,705.705 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:33:05,765.765 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:33:05,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:33:05,914.914 INFO    ] No camera update needed
[2026-10-18 22:33:05,918.918 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:33:05,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:33:05,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:33:05,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:33:07,987.987 INFO    ] ================================================
[2026-10-18 22:33:08,002.002 INFO    ] Launching Daemon at Sun Oct 18 22:33:07 IST 2026
[2026-10-18 22:33:08,013.013 INFO    ] ================================================
[2026-10-18 22:33:08,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:33:08
[2026-10-18 22:33:09,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:33:09,473.473 INFO    ] Initializing speech engine...
[2026-10-18 22:33:09,481.481 INFO    ] 2026-10-18 22:33:09
[2026-10-18 22:33:09,783.783 INFO    ] 2026-10-18 22:33:09
[2026-10-18 22:33:09,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:33:10,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:33:10,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:33:10,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:33:10,289.289 INFO    ] time= 18/10/2026 22:33:10
[2026-10-18 22:33:10,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:33:10,371.371 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:33:10,539.539 INFO    ] No existing commands found in stream
[2026-10-18 22:33:15,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:33:15,574.574 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-18 22:33:16,535.535 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:33:16,537.537 INFO    ] Checking for system updates...
[2026-10-18 22:33:16,575.575 INFO    ] 200
[2026-10-18 22:33:16,577.577 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:33:16,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:33:16,633.633 INFO    ] No update needed
[2026-10-18 22:33:16,635.635 INFO    ] Checking for camera pi updates...
[2026-10-18 22:33:16,669.669 INFO    ] 200
[2026-10-18 22:33:16,671.671 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:33:16,710.710 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:33:16,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:33:16,751.751 INFO    ] No camera update needed
[2026-10-18 22:33:16,754.754 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:33:16,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:33:16,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:33:16,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:33:18,805.805 INFO    ] ================================================
[2026-10-18 22:33:18,822.822 INFO    ] Launching Daemon at Sun Oct 18 22:33:18 IST 2026
[2026-10-18 22:33:18,833.833 INFO    ] ================================================
[2026-10-18 22:33:19,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:33:19
[2026-10-18 22:33:20,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:33:20,307.307 INFO    ] Initializing speech engine...
[2026-10-18 22:33:20,314.314 INFO    ] 2026-10-18 22:33:20
[2026-10-18 22:33:20,567.567 INFO    ] 2026-10-18 22:33:20
[2026-10-18 22:33:20,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:33:20,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:33:20,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:33:21,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:33:21,132.132 INFO    ] time= 18/10/2026 22:33:21
[2026-10-18 22:33:21,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:33:21,156.156 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:33:21,284.284 INFO    ] No existing commands found in stream
[2026-10-18 22:33:26,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:33:26,300.300 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-18 22:33:29,700.700 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:33:29,703.703 INFO    ] Checking for system updates...
[2026-10-18 22:33:29,738.738 INFO    ] 200
[2026-10-18 22:33:29,741.741 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:33:29,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:33:29,796.796 INFO    ] No update needed
[2026-10-18 22:33:29,799.799 INFO    ] Checking for camera pi updates...
[2026-10-18 22:33:29,832.832 INFO    ] 200
[2026-10-18 22:33:29,835.835 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:33:29,875.875 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:33:29,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:33:29,915.915 INFO    ] No camera update needed
[2026-10-18 22:33:29,918.918 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:33:29,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:33:29,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:33:29,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:33:31,971.971 INFO    ] ================================================
[2026-10-18 22:33:31,985.985 INFO    ] Launching Daemon at Sun Oct 18 22:33:31 IST 2026
[2026-10-18 22:33:32,996.996 INFO    ] ================================================
[2026-10-18 22:33:32,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:33:32
[2026-10-18 22:33:33,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:33:33,467.467 INFO    ] Initializing speech engine...
[2026-10-18 22:33:33,477.477 INFO    ] 2026-10-18 22:33:33
[2026-10-18 22:33:33,731.731 INFO    ] 2026-10-18 22:33:33
[2026-10-18 22:33:33,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:33:34,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:33:34,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:33:34,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:33:34,285.285 INFO    ] time= 18/10/2026 22:33:34
[2026-10-18 22:33:34,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:33:34,310.310 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:33:34,440.440 INFO    ] No existing commands found in stream
[2026-10-18 22:33:39,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:33:39,456.456 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-18 22:33:40,794.794 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:33:40,797.797 INFO    ] Checking for system updates...
[2026-10-18 22:33:40,834.834 INFO    ] 200
[2026-10-18 22:33:40,837.837 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:33:40,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:33:40,894.894 INFO    ] No update needed
[2026-10-18 22:33:40,896.896 INFO    ] Checking for camera pi updates...
[2026-10-18 22:33:40,929.929 INFO    ] 200
[2026-10-18 22:33:40,931.931 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:33:40,977.977 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:33:41,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:33:41,019.019 INFO    ] No camera update needed
[2026-10-18 22:33:41,021.021 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:33:41,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:33:41,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:33:41,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:33:43,072.072 INFO    ] ================================================
[2026-10-18 22:33:43,087.087 INFO    ] Launching Daemon at Sun Oct 18 22:33:43 IST 2026
[2026-10-18 22:33:43,098.098 INFO    ] ================================================
[2026-10-18 22:33:43,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:33:43
[2026-10-18 22:33:44,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:33:44,511.511 INFO    ] Initializing speech engine...
[2026-10-18 22:33:44,534.534 INFO    ] 2026-10-18 22:33:44
[2026-10-18 22:33:44,794.794 INFO    ] 2026-10-18 22:33:44
[2026-10-18 22:33:44,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:33:45,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:33:45,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:33:45,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:33:45,295.295 INFO    ] time= 18/10/2026 22:33:45
[2026-10-18 22:33:45,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:33:45,371.371 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:33:45,492.492 INFO    ] No existing commands found in stream
[2026-10-18 22:33:50,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:33:50,517.517 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-18 22:33:52,872.872 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:33:52,875.875 INFO    ] Checking for system updates...
[2026-10-18 22:33:52,910.910 INFO    ] 200
[2026-10-18 22:33:52,913.913 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:33:52,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:33:52,976.976 INFO    ] No update needed
[2026-10-18 22:33:52,978.978 INFO    ] Checking for camera pi updates...
[2026-10-18 22:33:53,012.012 INFO    ] 200
[2026-10-18 22:33:53,015.015 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:33:53,055.055 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:33:53,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:33:53,096.096 INFO    ] No camera update needed
[2026-10-18 22:33:53,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:33:53,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:33:53,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:33:53,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:33:55,152.152 INFO    ] ================================================
[2026-10-18 22:33:55,168.168 INFO    ] Launching Daemon at Sun Oct 18 22:33:55 IST 2026
[2026-10-18 22:33:55,180.180 INFO    ] ================================================
[2026-10-18 22:33:55,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:33:55
[2026-10-18 22:33:56,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:33:56,666.666 INFO    ] Initializing speech engine...
[2026-10-18 22:33:56,675.675 INFO    ] 2026-10-18 22:33:56
[2026-10-18 22:33:56,924.924 INFO    ] 2026-10-18 22:33:56
[2026-10-18 22:33:56,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:33:57,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:33:57,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:33:57,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:33:57,434.434 INFO    ] time= 18/10/2026 22:33:57
[2026-10-18 22:33:57,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:33:57,501.501 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:33:57,633.633 INFO    ] No existing commands found in stream
[2026-10-18 22:34:02,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:34:02,660.660 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-18 22:34:06,822.822 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:34:06,825.825 INFO    ] Checking for system updates...
[2026-10-18 22:34:06,860.860 INFO    ] 200
[2026-10-18 22:34:06,862.862 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:34:06,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:34:06,916.916 INFO    ] No update needed
[2026-10-18 22:34:06,918.918 INFO    ] Checking for camera pi updates...
[2026-10-18 22:34:06,951.951 INFO    ] 200
[2026-10-18 22:34:06,954.954 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:34:06,993.993 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:34:07,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:34:07,034.034 INFO    ] No camera update needed
[2026-10-18 22:34:07,037.037 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:34:07,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:34:07,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:34:07,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:34:09,091.091 INFO    ] ================================================
[2026-10-18 22:34:09,106.106 INFO    ] Launching Daemon at Sun Oct 18 22:34:09 IST 2026
[2026-10-18 22:34:09,117.117 INFO    ] ================================================
[2026-10-18 22:34:09,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:34:09
[2026-10-18 22:34:10,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:34:10,576.576 INFO    ] Initializing speech engine...
[2026-10-18 22:34:10,599.599 INFO    ] 2026-10-18 22:34:10
[2026-10-18 22:34:10,876.876 INFO    ] 2026-10-18 22:34:10
[2026-10-18 22:34:10,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:34:11,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:34:11,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:34:11,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:34:11,294.294 INFO    ] time= 18/10/2026 22:34:11
[2026-10-18 22:34:11,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:34:11,332.332 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:34:11,472.472 INFO    ] No existing commands found in stream
[2026-10-18 22:34:16,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:34:16,501.501 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-18 22:34:19,120.120 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:34:19,122.122 INFO    ] Checking for system updates...
[2026-10-18 22:34:19,158.158 INFO    ] 200
[2026-10-18 22:34:19,160.160 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:34:19,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:34:19,219.219 INFO    ] No update needed
[2026-10-18 22:34:19,222.222 INFO    ] Checking for camera pi updates...
[2026-10-18 22:34:19,256.256 INFO    ] 200
[2026-10-18 22:34:19,259.259 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:34:19,299.299 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:34:19,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:34:19,340.340 INFO    ] No camera update needed
[2026-10-18 22:34:19,343.343 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:34:19,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:34:19,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:34:19,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:34:21,395.395 INFO    ] ================================================
[2026-10-18 22:34:21,410.410 INFO    ] Launching Daemon at Sun Oct 18 22:34:21 IST 2026
[2026-10-18 22:34:21,421.421 INFO    ] ================================================
[2026-10-18 22:34:22,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:34:22
[2026-10-18 22:34:22,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:34:22,884.884 INFO    ] Initializing speech engine...
[2026-10-18 22:34:22,890.890 INFO    ] 2026-10-18 22:34:22
[2026-10-18 22:34:23,198.198 INFO    ] 2026-10-18 22:34:23
[2026-10-18 22:34:23,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:34:23,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:34:23,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:34:23,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:34:23,736.736 INFO    ] time= 18/10/2026 22:34:23
[2026-10-18 22:34:23,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:34:23,833.833 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:34:23,955.955 INFO    ] No existing commands found in stream
[2026-10-18 22:34:28,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:34:28,973.973 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-18 22:34:31,371.371 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:34:31,374.374 INFO    ] Checking for system updates...
[2026-10-18 22:34:31,409.409 INFO    ] 200
[2026-10-18 22:34:31,411.411 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:34:31,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:34:31,471.471 INFO    ] No update needed
[2026-10-18 22:34:31,473.473 INFO    ] Checking for camera pi updates...
[2026-10-18 22:34:31,512.512 INFO    ] 200
[2026-10-18 22:34:31,514.514 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:34:31,556.556 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:34:31,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:34:31,588.588 INFO    ] No camera update needed
[2026-10-18 22:34:31,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:34:31,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:34:31,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:34:31,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:34:33,643.643 INFO    ] ================================================
[2026-10-18 22:34:33,658.658 INFO    ] Launching Daemon at Sun Oct 18 22:34:33 IST 2026
[2026-10-18 22:34:33,669.669 INFO    ] ================================================
[2026-10-18 22:34:34,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:34:34
[2026-10-18 22:34:34,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:34:35,101.101 INFO    ] Initializing speech engine...
[2026-10-18 22:34:35,109.109 INFO    ] 2026-10-18 22:34:35
[2026-10-18 22:34:35,359.359 INFO    ] 2026-10-18 22:34:35
[2026-10-18 22:34:35,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:34:35,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:34:35,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:34:35,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:34:35,854.854 INFO    ] time= 18/10/2026 22:34:35
[2026-10-18 22:34:35,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:34:35,922.922 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:34:36,069.069 INFO    ] No existing commands found in stream
[2026-10-18 22:34:41,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:34:41,084.084 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-18 22:34:42,453.453 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:34:42,456.456 INFO    ] Checking for system updates...
[2026-10-18 22:34:42,492.492 INFO    ] 200
[2026-10-18 22:34:42,495.495 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:34:42,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:34:42,557.557 INFO    ] No update needed
[2026-10-18 22:34:42,560.560 INFO    ] Checking for camera pi updates...
[2026-10-18 22:34:42,601.601 INFO    ] 200
[2026-10-18 22:34:42,603.603 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:34:42,642.642 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:34:42,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:34:42,681.681 INFO    ] No camera update needed
[2026-10-18 22:34:42,683.683 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:34:42,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:34:42,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:34:42,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:34:44,736.736 INFO    ] ================================================
[2026-10-18 22:34:44,751.751 INFO    ] Launching Daemon at Sun Oct 18 22:34:44 IST 2026
[2026-10-18 22:34:44,762.762 INFO    ] ================================================
[2026-10-18 22:34:45,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:34:45
[2026-10-18 22:34:45,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:34:46,182.182 INFO    ] Initializing speech engine...
[2026-10-18 22:34:46,189.189 INFO    ] 2026-10-18 22:34:46
[2026-10-18 22:34:46,442.442 INFO    ] 2026-10-18 22:34:46
[2026-10-18 22:34:46,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:34:46,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:34:46,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:34:46,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:34:46,929.929 INFO    ] time= 18/10/2026 22:34:46
[2026-10-18 22:34:46,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:34:47,002.002 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:34:47,150.150 INFO    ] No existing commands found in stream
[2026-10-18 22:34:52,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:34:52,180.180 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-18 22:34:53,357.357 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:34:53,360.360 INFO    ] Checking for system updates...
[2026-10-18 22:34:53,395.395 INFO    ] 200
[2026-10-18 22:34:53,397.397 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:34:53,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:34:53,451.451 INFO    ] No update needed
[2026-10-18 22:34:53,454.454 INFO    ] Checking for camera pi updates...
[2026-10-18 22:34:53,487.487 INFO    ] 200
[2026-10-18 22:34:53,489.489 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:34:53,529.529 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:34:53,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:34:53,567.567 INFO    ] No camera update needed
[2026-10-18 22:34:53,570.570 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:34:53,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:34:53,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:34:53,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:34:55,620.620 INFO    ] ================================================
[2026-10-18 22:34:55,635.635 INFO    ] Launching Daemon at Sun Oct 18 22:34:55 IST 2026
[2026-10-18 22:34:55,646.646 INFO    ] ================================================
[2026-10-18 22:34:56,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:34:56
[2026-10-18 22:34:56,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:34:57,098.098 INFO    ] Initializing speech engine...
[2026-10-18 22:34:57,107.107 INFO    ] 2026-10-18 22:34:57
[2026-10-18 22:34:57,364.364 INFO    ] 2026-10-18 22:34:57
[2026-10-18 22:34:57,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:34:57,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:34:57,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:34:57,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:34:57,906.906 INFO    ] time= 18/10/2026 22:34:57
[2026-10-18 22:34:57,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:34:57,930.930 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:34:58,063.063 INFO    ] No existing commands found in stream
[2026-10-18 22:35:03,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:35:03,085.085 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-18 22:35:06,447.447 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:35:06,450.450 INFO    ] Checking for system updates...
[2026-10-18 22:35:06,485.485 INFO    ] 200
[2026-10-18 22:35:06,487.487 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:35:06,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:35:06,542.542 INFO    ] No update needed
[2026-10-18 22:35:06,545.545 INFO    ] Checking for camera pi updates...
[2026-10-18 22:35:06,578.578 INFO    ] 200
[2026-10-18 22:35:06,580.580 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:35:06,620.620 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:35:06,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:35:06,659.659 INFO    ] No camera update needed
[2026-10-18 22:35:06,661.661 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:35:06,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:35:06,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:35:06,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:35:08,712.712 INFO    ] ================================================
[2026-10-18 22:35:08,727.727 INFO    ] Launching Daemon at Sun Oct 18 22:35:08 IST 2026
[2026-10-18 22:35:08,738.738 INFO    ] ================================================
[2026-10-18 22:35:09,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:35:09
[2026-10-18 22:35:10,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:35:10,310.310 INFO    ] Initializing speech engine...
[2026-10-18 22:35:10,332.332 INFO    ] 2026-10-18 22:35:10
[2026-10-18 22:35:10,589.589 INFO    ] 2026-10-18 22:35:10
[2026-10-18 22:35:10,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:35:10,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:35:10,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:35:11,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:35:11,142.142 INFO    ] time= 18/10/2026 22:35:11
[2026-10-18 22:35:11,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:35:11,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:35:11,304.304 INFO    ] No existing commands found in stream
[2026-10-18 22:35:16,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:35:16,334.334 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-18 22:35:19,621.621 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:35:19,623.623 INFO    ] Checking for system updates...
[2026-10-18 22:35:19,662.662 INFO    ] 200
[2026-10-18 22:35:19,665.665 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:35:19,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:35:19,719.719 INFO    ] No update needed
[2026-10-18 22:35:19,725.725 INFO    ] Checking for camera pi updates...
[2026-10-18 22:35:19,758.758 INFO    ] 200
[2026-10-18 22:35:19,761.761 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:35:19,801.801 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:35:19,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:35:19,943.943 INFO    ] No camera update needed
[2026-10-18 22:35:19,945.945 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:35:19,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:35:19,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:35:19,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:35:22,998.998 INFO    ] ================================================
[2026-10-18 22:35:22,014.014 INFO    ] Launching Daemon at Sun Oct 18 22:35:22 IST 2026
[2026-10-18 22:35:22,029.029 INFO    ] ================================================
[2026-10-18 22:35:22,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:35:22
[2026-10-18 22:35:23,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:35:23,574.574 INFO    ] Initializing speech engine...
[2026-10-18 22:35:23,580.580 INFO    ] 2026-10-18 22:35:23
[2026-10-18 22:35:23,826.826 INFO    ] 2026-10-18 22:35:23
[2026-10-18 22:35:23,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:35:24,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:35:24,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:35:24,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:35:24,331.331 INFO    ] time= 18/10/2026 22:35:24
[2026-10-18 22:35:24,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:35:24,399.399 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:35:24,490.490 INFO    ] No existing commands found in stream
[2026-10-18 22:35:29,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:35:29,503.503 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-18 22:35:32,078.078 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:35:32,081.081 INFO    ] Checking for system updates...
[2026-10-18 22:35:32,120.120 INFO    ] 200
[2026-10-18 22:35:32,123.123 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:35:32,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:35:32,190.190 INFO    ] No update needed
[2026-10-18 22:35:32,193.193 INFO    ] Checking for camera pi updates...
[2026-10-18 22:35:32,230.230 INFO    ] 200
[2026-10-18 22:35:32,233.233 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:35:32,283.283 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:35:32,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:35:32,313.313 INFO    ] No camera update needed
[2026-10-18 22:35:32,316.316 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:35:32,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:35:32,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:35:32,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:35:34,373.373 INFO    ] ================================================
[2026-10-18 22:35:34,388.388 INFO    ] Launching Daemon at Sun Oct 18 22:35:34 IST 2026
[2026-10-18 22:35:34,398.398 INFO    ] ================================================
[2026-10-18 22:35:35,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:35:35
[2026-10-18 22:35:35,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:35:35,959.959 INFO    ] Initializing speech engine...
[2026-10-18 22:35:35,967.967 INFO    ] 2026-10-18 22:35:35
[2026-10-18 22:35:36,218.218 INFO    ] 2026-10-18 22:35:36
[2026-10-18 22:35:36,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:35:36,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:35:36,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:35:36,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:35:36,739.739 INFO    ] time= 18/10/2026 22:35:36
[2026-10-18 22:35:36,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:35:36,828.828 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:35:36,967.967 INFO    ] No existing commands found in stream
[2026-10-18 22:35:41,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:35:41,993.993 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-18 22:35:45,139.139 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:35:45,142.142 INFO    ] Checking for system updates...
[2026-10-18 22:35:45,176.176 INFO    ] 200
[2026-10-18 22:35:45,179.179 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:35:45,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:35:45,233.233 INFO    ] No update needed
[2026-10-18 22:35:45,235.235 INFO    ] Checking for camera pi updates...
[2026-10-18 22:35:45,270.270 INFO    ] 200
[2026-10-18 22:35:45,272.272 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:35:45,321.321 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:35:45,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:35:45,360.360 INFO    ] No camera update needed
[2026-10-18 22:35:45,362.362 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:35:45,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:35:45,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:35:45,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:35:47,415.415 INFO    ] ================================================
[2026-10-18 22:35:47,430.430 INFO    ] Launching Daemon at Sun Oct 18 22:35:47 IST 2026
[2026-10-18 22:35:47,441.441 INFO    ] ================================================
[2026-10-18 22:35:48,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:35:48
[2026-10-18 22:35:48,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:35:48,915.915 INFO    ] Initializing speech engine...
[2026-10-18 22:35:48,924.924 INFO    ] 2026-10-18 22:35:48
[2026-10-18 22:35:49,188.188 INFO    ] 2026-10-18 22:35:49
[2026-10-18 22:35:49,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:35:49,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:35:49,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:35:49,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:35:49,685.685 INFO    ] time= 18/10/2026 22:35:49
[2026-10-18 22:35:49,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:35:49,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:35:49,897.897 INFO    ] No existing commands found in stream
[2026-10-18 22:35:54,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:35:54,919.919 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-18 22:35:59,344.344 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:35:59,347.347 INFO    ] Checking for system updates...
[2026-10-18 22:35:59,386.386 INFO    ] 200
[2026-10-18 22:35:59,389.389 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:35:59,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:35:59,449.449 INFO    ] No update needed
[2026-10-18 22:35:59,452.452 INFO    ] Checking for camera pi updates...
[2026-10-18 22:35:59,485.485 INFO    ] 200
[2026-10-18 22:35:59,488.488 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:35:59,528.528 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:35:59,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:35:59,568.568 INFO    ] No camera update needed
[2026-10-18 22:35:59,570.570 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:35:59,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:35:59,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:35:59,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:36:01,625.625 INFO    ] ================================================
[2026-10-18 22:36:01,646.646 INFO    ] Launching Daemon at Sun Oct 18 22:36:01 IST 2026
[2026-10-18 22:36:01,663.663 INFO    ] ================================================
[2026-10-18 22:36:02,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:36:02
[2026-10-18 22:36:03,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:36:03,532.532 INFO    ] Initializing speech engine...
[2026-10-18 22:36:03,542.542 INFO    ] 2026-10-18 22:36:03
[2026-10-18 22:36:03,856.856 INFO    ] 2026-10-18 22:36:03
[2026-10-18 22:36:03,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:36:04,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:36:04,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:36:04,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:36:04,395.395 INFO    ] time= 18/10/2026 22:36:04
[2026-10-18 22:36:04,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:36:04,443.443 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:36:04,585.585 INFO    ] No existing commands found in stream
[2026-10-18 22:36:09,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:36:09,624.624 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-18 22:36:10,226.226 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:36:10,230.230 INFO    ] Checking for system updates...
[2026-10-18 22:36:10,271.271 INFO    ] 200
[2026-10-18 22:36:10,275.275 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:36:10,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:36:10,332.332 INFO    ] No update needed
[2026-10-18 22:36:10,335.335 INFO    ] Checking for camera pi updates...
[2026-10-18 22:36:10,369.369 INFO    ] 200
[2026-10-18 22:36:10,372.372 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:36:10,413.413 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:36:10,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:36:10,453.453 INFO    ] No camera update needed
[2026-10-18 22:36:10,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:36:10,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:36:10,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:36:10,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:36:12,511.511 INFO    ] ================================================
[2026-10-18 22:36:12,526.526 INFO    ] Launching Daemon at Sun Oct 18 22:36:12 IST 2026
[2026-10-18 22:36:12,537.537 INFO    ] ================================================
[2026-10-18 22:36:13,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:36:13
[2026-10-18 22:36:13,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:36:14,070.070 INFO    ] Initializing speech engine...
[2026-10-18 22:36:14,089.089 INFO    ] 2026-10-18 22:36:14
[2026-10-18 22:36:14,336.336 INFO    ] 2026-10-18 22:36:14
[2026-10-18 22:36:14,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:36:14,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:36:14,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:36:14,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:36:14,814.814 INFO    ] time= 18/10/2026 22:36:14
[2026-10-18 22:36:14,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:36:14,907.907 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:36:15,042.042 INFO    ] No existing commands found in stream
[2026-10-18 22:36:20,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:36:20,066.066 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-18 22:36:20,629.629 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:36:20,631.631 INFO    ] Checking for system updates...
[2026-10-18 22:36:20,667.667 INFO    ] 200
[2026-10-18 22:36:20,669.669 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:36:20,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:36:20,724.724 INFO    ] No update needed
[2026-10-18 22:36:20,726.726 INFO    ] Checking for camera pi updates...
[2026-10-18 22:36:20,764.764 INFO    ] 200
[2026-10-18 22:36:20,766.766 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:36:20,806.806 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:36:20,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:36:20,845.845 INFO    ] No camera update needed
[2026-10-18 22:36:20,847.847 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:36:20,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:36:20,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:36:20,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:36:22,901.901 INFO    ] ================================================
[2026-10-18 22:36:22,916.916 INFO    ] Launching Daemon at Sun Oct 18 22:36:22 IST 2026
[2026-10-18 22:36:22,927.927 INFO    ] ================================================
[2026-10-18 22:36:23,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:36:23
[2026-10-18 22:36:24,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:36:24,587.587 INFO    ] Initializing speech engine...
[2026-10-18 22:36:24,596.596 INFO    ] 2026-10-18 22:36:24
[2026-10-18 22:36:24,916.916 INFO    ] 2026-10-18 22:36:24
[2026-10-18 22:36:25,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:36:25,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:36:25,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:36:25,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:36:25,440.440 INFO    ] time= 18/10/2026 22:36:25
[2026-10-18 22:36:25,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:36:25,477.477 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:36:25,624.624 INFO    ] No existing commands found in stream
[2026-10-18 22:36:30,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:36:30,663.663 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-18 22:36:32,315.315 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:36:32,319.319 INFO    ] Checking for system updates...
[2026-10-18 22:36:32,359.359 INFO    ] 200
[2026-10-18 22:36:32,361.361 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:36:32,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:36:32,421.421 INFO    ] No update needed
[2026-10-18 22:36:32,424.424 INFO    ] Checking for camera pi updates...
[2026-10-18 22:36:32,465.465 INFO    ] 200
[2026-10-18 22:36:32,468.468 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:36:32,516.516 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:36:32,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:36:32,545.545 INFO    ] No camera update needed
[2026-10-18 22:36:32,548.548 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:36:32,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:36:32,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:36:32,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:36:34,601.601 INFO    ] ================================================
[2026-10-18 22:36:34,617.617 INFO    ] Launching Daemon at Sun Oct 18 22:36:34 IST 2026
[2026-10-18 22:36:34,628.628 INFO    ] ================================================
[2026-10-18 22:36:35,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:36:35
[2026-10-18 22:36:35,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:36:36,057.057 INFO    ] Initializing speech engine...
[2026-10-18 22:36:36,067.067 INFO    ] 2026-10-18 22:36:36
[2026-10-18 22:36:36,331.331 INFO    ] 2026-10-18 22:36:36
[2026-10-18 22:36:36,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:36:36,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:36:36,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:36:36,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:36:36,881.881 INFO    ] time= 18/10/2026 22:36:36
[2026-10-18 22:36:36,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:36:36,922.922 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:36:37,055.055 INFO    ] No existing commands found in stream
[2026-10-18 22:36:42,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:36:42,088.088 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-18 22:36:43,707.707 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:36:43,709.709 INFO    ] Checking for system updates...
[2026-10-18 22:36:43,745.745 INFO    ] 200
[2026-10-18 22:36:43,747.747 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:36:43,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:36:43,801.801 INFO    ] No update needed
[2026-10-18 22:36:43,804.804 INFO    ] Checking for camera pi updates...
[2026-10-18 22:36:43,841.841 INFO    ] 200
[2026-10-18 22:36:43,844.844 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:36:43,883.883 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:36:43,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:36:43,922.922 INFO    ] No camera update needed
[2026-10-18 22:36:43,924.924 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:36:43,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:36:43,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:36:43,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:36:45,979.979 INFO    ] ================================================
[2026-10-18 22:36:45,994.994 INFO    ] Launching Daemon at Sun Oct 18 22:36:45 IST 2026
[2026-10-18 22:36:46,004.004 INFO    ] ================================================
[2026-10-18 22:36:46,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:36:46
[2026-10-18 22:36:47,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:36:47,429.429 INFO    ] Initializing speech engine...
[2026-10-18 22:36:47,437.437 INFO    ] 2026-10-18 22:36:47
[2026-10-18 22:36:47,686.686 INFO    ] 2026-10-18 22:36:47
[2026-10-18 22:36:47,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:36:47,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:36:47,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:36:48,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:36:48,247.247 INFO    ] time= 18/10/2026 22:36:48
[2026-10-18 22:36:48,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:36:48,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:36:48,401.401 INFO    ] No existing commands found in stream
[2026-10-18 22:36:53,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:36:53,417.417 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-18 22:36:56,383.383 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:36:56,386.386 INFO    ] Checking for system updates...
[2026-10-18 22:36:56,420.420 INFO    ] 200
[2026-10-18 22:36:56,423.423 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:36:56,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:36:56,476.476 INFO    ] No update needed
[2026-10-18 22:36:56,478.478 INFO    ] Checking for camera pi updates...
[2026-10-18 22:36:56,511.511 INFO    ] 200
[2026-10-18 22:36:56,514.514 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:36:56,562.562 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:36:56,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:36:56,601.601 INFO    ] No camera update needed
[2026-10-18 22:36:56,603.603 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:36:56,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:36:56,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:36:56,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:36:58,656.656 INFO    ] ================================================
[2026-10-18 22:36:58,671.671 INFO    ] Launching Daemon at Sun Oct 18 22:36:58 IST 2026
[2026-10-18 22:36:58,683.683 INFO    ] ================================================
[2026-10-18 22:36:59,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:36:59
[2026-10-18 22:36:59,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:37:00,176.176 INFO    ] Initializing speech engine...
[2026-10-18 22:37:00,182.182 INFO    ] 2026-10-18 22:37:00
[2026-10-18 22:37:00,434.434 INFO    ] 2026-10-18 22:37:00
[2026-10-18 22:37:00,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:37:00,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:37:00,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:37:00,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:37:00,990.990 INFO    ] time= 18/10/2026 22:37:00
[2026-10-18 22:37:01,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:37:01,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:37:01,145.145 INFO    ] No existing commands found in stream
[2026-10-18 22:37:06,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:37:06,165.165 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-18 22:37:09,581.581 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:37:09,583.583 INFO    ] Checking for system updates...
[2026-10-18 22:37:09,618.618 INFO    ] 200
[2026-10-18 22:37:09,621.621 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:37:09,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:37:09,676.676 INFO    ] No update needed
[2026-10-18 22:37:09,679.679 INFO    ] Checking for camera pi updates...
[2026-10-18 22:37:09,714.714 INFO    ] 200
[2026-10-18 22:37:09,717.717 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:37:09,756.756 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:37:09,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:37:09,801.801 INFO    ] No camera update needed
[2026-10-18 22:37:09,804.804 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:37:09,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:37:09,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:37:09,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:37:11,857.857 INFO    ] ================================================
[2026-10-18 22:37:11,872.872 INFO    ] Launching Daemon at Sun Oct 18 22:37:11 IST 2026
[2026-10-18 22:37:11,883.883 INFO    ] ================================================
[2026-10-18 22:37:12,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:37:12
[2026-10-18 22:37:13,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:37:13,475.475 INFO    ] Initializing speech engine...
[2026-10-18 22:37:13,487.487 INFO    ] 2026-10-18 22:37:13
[2026-10-18 22:37:13,760.760 INFO    ] 2026-10-18 22:37:13
[2026-10-18 22:37:13,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:37:14,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:37:14,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:37:14,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:37:14,165.165 INFO    ] time= 18/10/2026 22:37:14
[2026-10-18 22:37:14,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:37:14,210.210 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:37:14,331.331 INFO    ] No existing commands found in stream
[2026-10-18 22:37:19,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:37:19,354.354 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-18 22:37:21,163.163 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:37:21,165.165 INFO    ] Checking for system updates...
[2026-10-18 22:37:21,201.201 INFO    ] 200
[2026-10-18 22:37:21,204.204 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:37:21,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:37:21,258.258 INFO    ] No update needed
[2026-10-18 22:37:21,261.261 INFO    ] Checking for camera pi updates...
[2026-10-18 22:37:21,294.294 INFO    ] 200
[2026-10-18 22:37:21,296.296 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:37:21,336.336 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:37:21,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:37:21,375.375 INFO    ] No camera update needed
[2026-10-18 22:37:21,378.378 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:37:21,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:37:21,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:37:21,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:37:23,428.428 INFO    ] ================================================
[2026-10-18 22:37:23,443.443 INFO    ] Launching Daemon at Sun Oct 18 22:37:23 IST 2026
[2026-10-18 22:37:23,454.454 INFO    ] ================================================
[2026-10-18 22:37:24,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:37:24
[2026-10-18 22:37:24,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:37:24,911.911 INFO    ] Initializing speech engine...
[2026-10-18 22:37:24,921.921 INFO    ] 2026-10-18 22:37:24
[2026-10-18 22:37:25,172.172 INFO    ] 2026-10-18 22:37:25
[2026-10-18 22:37:25,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:37:25,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:37:25,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:37:25,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:37:25,677.677 INFO    ] time= 18/10/2026 22:37:25
[2026-10-18 22:37:25,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:37:25,761.761 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:37:25,889.889 INFO    ] No existing commands found in stream
[2026-10-18 22:37:30,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:37:30,912.912 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-18 22:37:34,539.539 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:37:34,541.541 INFO    ] Checking for system updates...
[2026-10-18 22:37:34,576.576 INFO    ] 200
[2026-10-18 22:37:34,579.579 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:37:34,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:37:34,633.633 INFO    ] No update needed
[2026-10-18 22:37:34,635.635 INFO    ] Checking for camera pi updates...
[2026-10-18 22:37:34,672.672 INFO    ] 200
[2026-10-18 22:37:34,674.674 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:37:34,715.715 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:37:34,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:37:34,755.755 INFO    ] No camera update needed
[2026-10-18 22:37:34,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:37:34,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:37:34,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:37:34,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:37:36,810.810 INFO    ] ================================================
[2026-10-18 22:37:36,824.824 INFO    ] Launching Daemon at Sun Oct 18 22:37:36 IST 2026
[2026-10-18 22:37:36,835.835 INFO    ] ================================================
[2026-10-18 22:37:37,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:37:37
[2026-10-18 22:37:38,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:37:38,301.301 INFO    ] Initializing speech engine...
[2026-10-18 22:37:38,314.314 INFO    ] 2026-10-18 22:37:38
[2026-10-18 22:37:38,581.581 INFO    ] 2026-10-18 22:37:38
[2026-10-18 22:37:38,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:37:38,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:37:38,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:37:39,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:37:39,069.069 INFO    ] time= 18/10/2026 22:37:39
[2026-10-18 22:37:39,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:37:39,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:37:39,304.304 INFO    ] No existing commands found in stream
[2026-10-18 22:37:44,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:37:44,331.331 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-18 22:37:46,353.353 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:37:46,356.356 INFO    ] Checking for system updates...
[2026-10-18 22:37:46,392.392 INFO    ] 200
[2026-10-18 22:37:46,395.395 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:37:46,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:37:46,458.458 INFO    ] No update needed
[2026-10-18 22:37:46,460.460 INFO    ] Checking for camera pi updates...
[2026-10-18 22:37:46,494.494 INFO    ] 200
[2026-10-18 22:37:46,496.496 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:37:46,541.541 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:37:46,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:37:46,579.579 INFO    ] No camera update needed
[2026-10-18 22:37:46,582.582 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:37:46,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:37:46,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:37:46,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:37:48,634.634 INFO    ] ================================================
[2026-10-18 22:37:48,649.649 INFO    ] Launching Daemon at Sun Oct 18 22:37:48 IST 2026
[2026-10-18 22:37:48,659.659 INFO    ] ================================================
[2026-10-18 22:37:49,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:37:49
[2026-10-18 22:37:49,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:37:50,204.204 INFO    ] Initializing speech engine...
[2026-10-18 22:37:50,215.215 INFO    ] 2026-10-18 22:37:50
[2026-10-18 22:37:50,520.520 INFO    ] 2026-10-18 22:37:50
[2026-10-18 22:37:50,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:37:50,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:37:50,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:37:50,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:37:51,032.032 INFO    ] time= 18/10/2026 22:37:51
[2026-10-18 22:37:51,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:37:51,056.056 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:37:51,184.184 INFO    ] No existing commands found in stream
[2026-10-18 22:37:56,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:37:56,203.203 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-18 22:37:58,201.201 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:37:58,203.203 INFO    ] Checking for system updates...
[2026-10-18 22:37:58,240.240 INFO    ] 200
[2026-10-18 22:37:58,242.242 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:37:58,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:37:58,297.297 INFO    ] No update needed
[2026-10-18 22:37:58,300.300 INFO    ] Checking for camera pi updates...
[2026-10-18 22:37:58,336.336 INFO    ] 200
[2026-10-18 22:37:58,338.338 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:37:58,379.379 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:37:58,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:37:58,418.418 INFO    ] No camera update needed
[2026-10-18 22:37:58,421.421 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:37:58,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:37:58,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:37:58,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:38:00,476.476 INFO    ] ================================================
[2026-10-18 22:38:00,491.491 INFO    ] Launching Daemon at Sun Oct 18 22:38:00 IST 2026
[2026-10-18 22:38:00,502.502 INFO    ] ================================================
[2026-10-18 22:38:01,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:38:01
[2026-10-18 22:38:01,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:38:02,177.177 INFO    ] Initializing speech engine...
[2026-10-18 22:38:02,187.187 INFO    ] 2026-10-18 22:38:02
[2026-10-18 22:38:02,540.540 INFO    ] 2026-10-18 22:38:02
[2026-10-18 22:38:02,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:38:02,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:38:02,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:38:03,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:38:03,068.068 INFO    ] time= 18/10/2026 22:38:03
[2026-10-18 22:38:03,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:38:03,182.182 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:38:03,253.253 INFO    ] No existing commands found in stream
[2026-10-18 22:38:08,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:38:08,269.269 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-18 22:38:10,179.179 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:38:10,182.182 INFO    ] Checking for system updates...
[2026-10-18 22:38:10,220.220 INFO    ] 200
[2026-10-18 22:38:10,223.223 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:38:10,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:38:10,282.282 INFO    ] No update needed
[2026-10-18 22:38:10,284.284 INFO    ] Checking for camera pi updates...
[2026-10-18 22:38:10,317.317 INFO    ] 200
[2026-10-18 22:38:10,320.320 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:38:10,363.363 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:38:10,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:38:10,403.403 INFO    ] No camera update needed
[2026-10-18 22:38:10,406.406 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:38:10,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:38:10,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:38:10,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:38:12,459.459 INFO    ] ================================================
[2026-10-18 22:38:12,474.474 INFO    ] Launching Daemon at Sun Oct 18 22:38:12 IST 2026
[2026-10-18 22:38:12,485.485 INFO    ] ================================================
[2026-10-18 22:38:13,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:38:13
[2026-10-18 22:38:13,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:38:14,128.128 INFO    ] Initializing speech engine...
[2026-10-18 22:38:14,142.142 INFO    ] 2026-10-18 22:38:14
[2026-10-18 22:38:14,412.412 INFO    ] 2026-10-18 22:38:14
[2026-10-18 22:38:14,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:38:14,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:38:14,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:38:14,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:38:14,978.978 INFO    ] time= 18/10/2026 22:38:14
[2026-10-18 22:38:14,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:38:15,004.004 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:38:15,151.151 INFO    ] No existing commands found in stream
[2026-10-18 22:38:20,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:38:20,185.185 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-18 22:38:24,023.023 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:38:24,026.026 INFO    ] Checking for system updates...
[2026-10-18 22:38:24,064.064 INFO    ] 200
[2026-10-18 22:38:24,066.066 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:38:24,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:38:24,125.125 INFO    ] No update needed
[2026-10-18 22:38:24,127.127 INFO    ] Checking for camera pi updates...
[2026-10-18 22:38:24,163.163 INFO    ] 200
[2026-10-18 22:38:24,165.165 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:38:24,208.208 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:38:24,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:38:24,247.247 INFO    ] No camera update needed
[2026-10-18 22:38:24,250.250 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:38:24,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:38:24,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:38:24,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:38:26,301.301 INFO    ] ================================================
[2026-10-18 22:38:26,316.316 INFO    ] Launching Daemon at Sun Oct 18 22:38:26 IST 2026
[2026-10-18 22:38:26,327.327 INFO    ] ================================================
[2026-10-18 22:38:26,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:38:26
[2026-10-18 22:38:27,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:38:27,794.794 INFO    ] Initializing speech engine...
[2026-10-18 22:38:27,803.803 INFO    ] 2026-10-18 22:38:27
[2026-10-18 22:38:28,055.055 INFO    ] 2026-10-18 22:38:28
[2026-10-18 22:38:28,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:38:28,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:38:28,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:38:28,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:38:28,473.473 INFO    ] time= 18/10/2026 22:38:28
[2026-10-18 22:38:28,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:38:28,529.529 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:38:28,678.678 INFO    ] No existing commands found in stream
[2026-10-18 22:38:33,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:38:33,704.704 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-18 22:38:35,613.613 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:38:35,616.616 INFO    ] Checking for system updates...
[2026-10-18 22:38:35,655.655 INFO    ] 200
[2026-10-18 22:38:35,657.657 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:38:35,716.716 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:38:35,718.718 INFO    ] No update needed
[2026-10-18 22:38:35,721.721 INFO    ] Checking for camera pi updates...
[2026-10-18 22:38:35,754.754 INFO    ] 200
[2026-10-18 22:38:35,756.756 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:38:35,796.796 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:38:35,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:38:35,825.825 INFO    ] No camera update needed
[2026-10-18 22:38:35,827.827 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:38:35,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:38:35,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:38:35,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:38:37,883.883 INFO    ] ================================================
[2026-10-18 22:38:37,898.898 INFO    ] Launching Daemon at Sun Oct 18 22:38:37 IST 2026
[2026-10-18 22:38:37,908.908 INFO    ] ================================================
[2026-10-18 22:38:38,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:38:38
[2026-10-18 22:38:39,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:38:39,368.368 INFO    ] Initializing speech engine...
[2026-10-18 22:38:39,384.384 INFO    ] 2026-10-18 22:38:39
[2026-10-18 22:38:39,666.666 INFO    ] 2026-10-18 22:38:39
[2026-10-18 22:38:39,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:38:39,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:38:39,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:38:40,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:38:40,081.081 INFO    ] time= 18/10/2026 22:38:40
[2026-10-18 22:38:40,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:38:40,132.132 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:38:40,282.282 INFO    ] No existing commands found in stream
[2026-10-18 22:38:45,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:38:45,298.298 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-18 22:38:46,532.532 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:38:46,535.535 INFO    ] Checking for system updates...
[2026-10-18 22:38:46,571.571 INFO    ] 200
[2026-10-18 22:38:46,573.573 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:38:46,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:38:46,633.633 INFO    ] No update needed
[2026-10-18 22:38:46,635.635 INFO    ] Checking for camera pi updates...
[2026-10-18 22:38:46,671.671 INFO    ] 200
[2026-10-18 22:38:46,674.674 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:38:46,715.715 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:38:46,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:38:46,754.754 INFO    ] No camera update needed
[2026-10-18 22:38:46,756.756 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:38:46,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:38:46,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:38:46,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:38:48,808.808 INFO    ] ================================================
[2026-10-18 22:38:48,823.823 INFO    ] Launching Daemon at Sun Oct 18 22:38:48 IST 2026
[2026-10-18 22:38:48,834.834 INFO    ] ================================================
[2026-10-18 22:38:49,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:38:49
[2026-10-18 22:38:50,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:38:50,277.277 INFO    ] Initializing speech engine...
[2026-10-18 22:38:50,280.280 INFO    ] 2026-10-18 22:38:50
[2026-10-18 22:38:50,580.580 INFO    ] 2026-10-18 22:38:50
[2026-10-18 22:38:50,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:38:50,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:38:50,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:38:50,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:38:50,999.999 INFO    ] time= 18/10/2026 22:38:50
[2026-10-18 22:38:51,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:38:51,059.059 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:38:51,182.182 INFO    ] No existing commands found in stream
[2026-10-18 22:38:56,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:38:56,221.221 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-18 22:38:59,384.384 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:38:59,387.387 INFO    ] Checking for system updates...
[2026-10-18 22:38:59,422.422 INFO    ] 200
[2026-10-18 22:38:59,424.424 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:38:59,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:38:59,484.484 INFO    ] No update needed
[2026-10-18 22:38:59,486.486 INFO    ] Checking for camera pi updates...
[2026-10-18 22:38:59,523.523 INFO    ] 200
[2026-10-18 22:38:59,525.525 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:38:59,569.569 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:38:59,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:38:59,596.596 INFO    ] No camera update needed
[2026-10-18 22:38:59,599.599 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:38:59,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:38:59,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:38:59,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:39:01,665.665 INFO    ] ================================================
[2026-10-18 22:39:01,690.690 INFO    ] Launching Daemon at Sun Oct 18 22:39:01 IST 2026
[2026-10-18 22:39:01,736.736 INFO    ] ================================================
[2026-10-18 22:39:02,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:39:02
[2026-10-18 22:39:03,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:39:03,442.442 INFO    ] Initializing speech engine...
[2026-10-18 22:39:03,458.458 INFO    ] 2026-10-18 22:39:03
[2026-10-18 22:39:03,729.729 INFO    ] 2026-10-18 22:39:03
[2026-10-18 22:39:03,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:39:03,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:39:03,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:39:04,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:39:04,109.109 INFO    ] time= 18/10/2026 22:39:04
[2026-10-18 22:39:04,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:39:04,183.183 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:39:04,328.328 INFO    ] No existing commands found in stream
[2026-10-18 22:39:09,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:39:09,342.342 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-18 22:39:13,294.294 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:39:13,296.296 INFO    ] Checking for system updates...
[2026-10-18 22:39:13,332.332 INFO    ] 200
[2026-10-18 22:39:13,335.335 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:39:13,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:39:13,395.395 INFO    ] No update needed
[2026-10-18 22:39:13,397.397 INFO    ] Checking for camera pi updates...
[2026-10-18 22:39:13,432.432 INFO    ] 200
[2026-10-18 22:39:13,435.435 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:39:13,476.476 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:39:13,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:39:13,517.517 INFO    ] No camera update needed
[2026-10-18 22:39:13,520.520 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:39:13,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:39:13,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:39:13,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:39:15,575.575 INFO    ] ================================================
[2026-10-18 22:39:15,590.590 INFO    ] Launching Daemon at Sun Oct 18 22:39:15 IST 2026
[2026-10-18 22:39:15,600.600 INFO    ] ================================================
[2026-10-18 22:39:16,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:39:16
[2026-10-18 22:39:16,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:39:17,023.023 INFO    ] Initializing speech engine...
[2026-10-18 22:39:17,045.045 INFO    ] 2026-10-18 22:39:17
[2026-10-18 22:39:17,304.304 INFO    ] 2026-10-18 22:39:17
[2026-10-18 22:39:17,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:39:17,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:39:17,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:39:17,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:39:17,806.806 INFO    ] time= 18/10/2026 22:39:17
[2026-10-18 22:39:17,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:39:17,882.882 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:39:18,032.032 INFO    ] No existing commands found in stream
[2026-10-18 22:39:23,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:39:23,047.047 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-18 22:39:24,170.170 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:39:24,173.173 INFO    ] Checking for system updates...
[2026-10-18 22:39:24,211.211 INFO    ] 200
[2026-10-18 22:39:24,214.214 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:39:24,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:39:24,274.274 INFO    ] No update needed
[2026-10-18 22:39:24,276.276 INFO    ] Checking for camera pi updates...
[2026-10-18 22:39:24,310.310 INFO    ] 200
[2026-10-18 22:39:24,312.312 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:39:24,352.352 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:39:24,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:39:24,391.391 INFO    ] No camera update needed
[2026-10-18 22:39:24,394.394 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:39:24,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:39:24,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:39:24,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:39:26,448.448 INFO    ] ================================================
[2026-10-18 22:39:26,467.467 INFO    ] Launching Daemon at Sun Oct 18 22:39:26 IST 2026
[2026-10-18 22:39:26,480.480 INFO    ] ================================================
[2026-10-18 22:39:27,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:39:27
[2026-10-18 22:39:27,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:39:28,089.089 INFO    ] Initializing speech engine...
[2026-10-18 22:39:28,097.097 INFO    ] 2026-10-18 22:39:28
[2026-10-18 22:39:28,382.382 INFO    ] 2026-10-18 22:39:28
[2026-10-18 22:39:28,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:39:28,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:39:28,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:39:28,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:39:28,939.939 INFO    ] time= 18/10/2026 22:39:28
[2026-10-18 22:39:28,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:39:28,975.975 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:39:29,112.112 INFO    ] No existing commands found in stream
[2026-10-18 22:39:34,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:39:34,153.153 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-18 22:39:37,599.599 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:39:37,602.602 INFO    ] Checking for system updates...
[2026-10-18 22:39:37,642.642 INFO    ] 200
[2026-10-18 22:39:37,644.644 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:39:37,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:39:37,705.705 INFO    ] No update needed
[2026-10-18 22:39:37,707.707 INFO    ] Checking for camera pi updates...
[2026-10-18 22:39:37,743.743 INFO    ] 200
[2026-10-18 22:39:37,746.746 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:39:37,790.790 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:39:37,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:39:37,930.930 INFO    ] No camera update needed
[2026-10-18 22:39:37,933.933 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:39:37,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:39:37,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:39:37,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:39:39,984.984 INFO    ] ================================================
[2026-10-18 22:39:40,999.999 INFO    ] Launching Daemon at Sun Oct 18 22:39:39 IST 2026
[2026-10-18 22:39:40,010.010 INFO    ] ================================================
[2026-10-18 22:39:40,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:39:40
[2026-10-18 22:39:41,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:39:41,448.448 INFO    ] Initializing speech engine...
[2026-10-18 22:39:41,464.464 INFO    ] 2026-10-18 22:39:41
[2026-10-18 22:39:41,746.746 INFO    ] 2026-10-18 22:39:41
[2026-10-18 22:39:41,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:39:41,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:39:41,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:39:42,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:39:42,168.168 INFO    ] time= 18/10/2026 22:39:42
[2026-10-18 22:39:42,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:39:42,221.221 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:39:42,361.361 INFO    ] No existing commands found in stream
[2026-10-18 22:39:47,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:39:47,394.394 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-18 22:39:48,225.225 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:39:48,228.228 INFO    ] Checking for system updates...
[2026-10-18 22:39:48,268.268 INFO    ] 200
[2026-10-18 22:39:48,271.271 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:39:48,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:39:48,327.327 INFO    ] No update needed
[2026-10-18 22:39:48,330.330 INFO    ] Checking for camera pi updates...
[2026-10-18 22:39:48,364.364 INFO    ] 200
[2026-10-18 22:39:48,366.366 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:39:48,407.407 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:39:48,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:39:48,450.450 INFO    ] No camera update needed
[2026-10-18 22:39:48,452.452 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:39:48,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:39:48,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:39:48,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:39:50,505.505 INFO    ] ================================================
[2026-10-18 22:39:50,520.520 INFO    ] Launching Daemon at Sun Oct 18 22:39:50 IST 2026
[2026-10-18 22:39:50,532.532 INFO    ] ================================================
[2026-10-18 22:39:51,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:39:51
[2026-10-18 22:39:51,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:39:51,980.980 INFO    ] Initializing speech engine...
[2026-10-18 22:39:51,987.987 INFO    ] 2026-10-18 22:39:51
[2026-10-18 22:39:52,282.282 INFO    ] 2026-10-18 22:39:52
[2026-10-18 22:39:52,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:39:52,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:39:52,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:39:52,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:39:52,705.705 INFO    ] time= 18/10/2026 22:39:52
[2026-10-18 22:39:52,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:39:52,745.745 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:39:52,895.895 INFO    ] No existing commands found in stream
[2026-10-18 22:39:57,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:39:57,924.924 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-18 22:40:00,373.373 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:40:00,375.375 INFO    ] Checking for system updates...
[2026-10-18 22:40:00,413.413 INFO    ] 200
[2026-10-18 22:40:00,416.416 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:40:00,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:40:00,487.487 INFO    ] No update needed
[2026-10-18 22:40:00,490.490 INFO    ] Checking for camera pi updates...
[2026-10-18 22:40:00,527.527 INFO    ] 200
[2026-10-18 22:40:00,530.530 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:40:00,585.585 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:40:00,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:40:00,629.629 INFO    ] No camera update needed
[2026-10-18 22:40:00,632.632 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:40:00,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:40:00,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:40:00,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:40:02,695.695 INFO    ] ================================================
[2026-10-18 22:40:02,716.716 INFO    ] Launching Daemon at Sun Oct 18 22:40:02 IST 2026
[2026-10-18 22:40:02,735.735 INFO    ] ================================================
[2026-10-18 22:40:03,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:40:03
[2026-10-18 22:40:04,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:40:04,451.451 INFO    ] Initializing speech engine...
[2026-10-18 22:40:04,459.459 INFO    ] 2026-10-18 22:40:04
[2026-10-18 22:40:04,720.720 INFO    ] 2026-10-18 22:40:04
[2026-10-18 22:40:04,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:40:05,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:40:05,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:40:05,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:40:05,261.261 INFO    ] time= 18/10/2026 22:40:05
[2026-10-18 22:40:05,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:40:05,289.289 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:40:05,427.427 INFO    ] No existing commands found in stream
[2026-10-18 22:40:10,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:40:10,461.461 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-18 22:40:14,173.173 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:40:14,175.175 INFO    ] Checking for system updates...
[2026-10-18 22:40:14,214.214 INFO    ] 200
[2026-10-18 22:40:14,216.216 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:40:14,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:40:14,276.276 INFO    ] No update needed
[2026-10-18 22:40:14,278.278 INFO    ] Checking for camera pi updates...
[2026-10-18 22:40:14,315.315 INFO    ] 200
[2026-10-18 22:40:14,317.317 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:40:14,358.358 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:40:14,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:40:14,401.401 INFO    ] No camera update needed
[2026-10-18 22:40:14,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:40:14,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:40:14,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:40:14,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:40:16,457.457 INFO    ] ================================================
[2026-10-18 22:40:16,472.472 INFO    ] Launching Daemon at Sun Oct 18 22:40:16 IST 2026
[2026-10-18 22:40:16,483.483 INFO    ] ================================================
[2026-10-18 22:40:17,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:40:17
[2026-10-18 22:40:17,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:40:17,954.954 INFO    ] Initializing speech engine...
[2026-10-18 22:40:17,964.964 INFO    ] 2026-10-18 22:40:17
[2026-10-18 22:40:18,225.225 INFO    ] 2026-10-18 22:40:18
[2026-10-18 22:40:18,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:40:18,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:40:18,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:40:18,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:40:18,762.762 INFO    ] time= 18/10/2026 22:40:18
[2026-10-18 22:40:18,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:40:18,792.792 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:40:18,928.928 INFO    ] No existing commands found in stream
[2026-10-18 22:40:23,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:40:23,950.950 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-18 22:40:26,778.778 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:40:26,780.780 INFO    ] Checking for system updates...
[2026-10-18 22:40:26,815.815 INFO    ] 200
[2026-10-18 22:40:26,818.818 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:40:26,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:40:26,873.873 INFO    ] No update needed
[2026-10-18 22:40:26,876.876 INFO    ] Checking for camera pi updates...
[2026-10-18 22:40:26,909.909 INFO    ] 200
[2026-10-18 22:40:26,912.912 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:40:26,956.956 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:40:27,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:40:27,002.002 INFO    ] No camera update needed
[2026-10-18 22:40:27,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:40:27,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:40:27,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:40:27,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:40:29,061.061 INFO    ] ================================================
[2026-10-18 22:40:29,076.076 INFO    ] Launching Daemon at Sun Oct 18 22:40:29 IST 2026
[2026-10-18 22:40:29,087.087 INFO    ] ================================================
[2026-10-18 22:40:29,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:40:29
[2026-10-18 22:40:30,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:40:30,510.510 INFO    ] Initializing speech engine...
[2026-10-18 22:40:30,523.523 INFO    ] 2026-10-18 22:40:30
[2026-10-18 22:40:30,772.772 INFO    ] 2026-10-18 22:40:30
[2026-10-18 22:40:30,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:40:30,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:40:31,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:40:31,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:40:31,157.157 INFO    ] time= 18/10/2026 22:40:31
[2026-10-18 22:40:31,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:40:31,187.187 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:40:31,316.316 INFO    ] No existing commands found in stream
[2026-10-18 22:40:36,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:40:36,350.350 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-18 22:40:39,679.679 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:40:39,681.681 INFO    ] Checking for system updates...
[2026-10-18 22:40:39,717.717 INFO    ] 200
[2026-10-18 22:40:39,720.720 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:40:39,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:40:39,775.775 INFO    ] No update needed
[2026-10-18 22:40:39,778.778 INFO    ] Checking for camera pi updates...
[2026-10-18 22:40:39,811.811 INFO    ] 200
[2026-10-18 22:40:39,813.813 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:40:39,857.857 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:40:39,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:40:39,900.900 INFO    ] No camera update needed
[2026-10-18 22:40:39,903.903 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:40:39,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:40:39,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:40:39,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:40:41,954.954 INFO    ] ================================================
[2026-10-18 22:40:41,969.969 INFO    ] Launching Daemon at Sun Oct 18 22:40:41 IST 2026
[2026-10-18 22:40:41,980.980 INFO    ] ================================================
[2026-10-18 22:40:42,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:40:42
[2026-10-18 22:40:43,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:40:43,417.417 INFO    ] Initializing speech engine...
[2026-10-18 22:40:43,426.426 INFO    ] 2026-10-18 22:40:43
[2026-10-18 22:40:43,673.673 INFO    ] 2026-10-18 22:40:43
[2026-10-18 22:40:43,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:40:43,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:40:43,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:40:44,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:40:44,228.228 INFO    ] time= 18/10/2026 22:40:44
[2026-10-18 22:40:44,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:40:44,252.252 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:40:44,406.406 INFO    ] No existing commands found in stream
[2026-10-18 22:40:49,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:40:49,449.449 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-18 22:40:53,076.076 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:40:53,080.080 INFO    ] Checking for system updates...
[2026-10-18 22:40:53,120.120 INFO    ] 200
[2026-10-18 22:40:53,122.122 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:40:53,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:40:53,183.183 INFO    ] No update needed
[2026-10-18 22:40:53,185.185 INFO    ] Checking for camera pi updates...
[2026-10-18 22:40:53,219.219 INFO    ] 200
[2026-10-18 22:40:53,221.221 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:40:53,265.265 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:40:53,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:40:53,308.308 INFO    ] No camera update needed
[2026-10-18 22:40:53,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:40:53,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:40:53,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:40:53,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:40:55,363.363 INFO    ] ================================================
[2026-10-18 22:40:55,378.378 INFO    ] Launching Daemon at Sun Oct 18 22:40:55 IST 2026
[2026-10-18 22:40:55,388.388 INFO    ] ================================================
[2026-10-18 22:40:55,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:40:55
[2026-10-18 22:40:56,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:40:56,820.820 INFO    ] Initializing speech engine...
[2026-10-18 22:40:56,843.843 INFO    ] 2026-10-18 22:40:56
[2026-10-18 22:40:57,093.093 INFO    ] 2026-10-18 22:40:57
[2026-10-18 22:40:57,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:40:57,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:40:57,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:40:57,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:40:57,648.648 INFO    ] time= 18/10/2026 22:40:57
[2026-10-18 22:40:57,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:40:57,673.673 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:40:57,805.805 INFO    ] No existing commands found in stream
[2026-10-18 22:41:02,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:41:02,831.831 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-18 22:41:04,567.567 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:41:04,570.570 INFO    ] Checking for system updates...
[2026-10-18 22:41:04,609.609 INFO    ] 200
[2026-10-18 22:41:04,611.611 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:41:04,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:41:04,665.665 INFO    ] No update needed
[2026-10-18 22:41:04,667.667 INFO    ] Checking for camera pi updates...
[2026-10-18 22:41:04,705.705 INFO    ] 200
[2026-10-18 22:41:04,708.708 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:41:04,748.748 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:41:04,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:41:04,793.793 INFO    ] No camera update needed
[2026-10-18 22:41:04,795.795 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:41:04,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:41:04,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:41:04,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:41:06,848.848 INFO    ] ================================================
[2026-10-18 22:41:06,863.863 INFO    ] Launching Daemon at Sun Oct 18 22:41:06 IST 2026
[2026-10-18 22:41:06,875.875 INFO    ] ================================================
[2026-10-18 22:41:07,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:41:07
[2026-10-18 22:41:08,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:41:08,286.286 INFO    ] Initializing speech engine...
[2026-10-18 22:41:08,299.299 INFO    ] 2026-10-18 22:41:08
[2026-10-18 22:41:08,548.548 INFO    ] 2026-10-18 22:41:08
[2026-10-18 22:41:08,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:41:08,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:41:08,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:41:09,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:41:09,110.110 INFO    ] time= 18/10/2026 22:41:09
[2026-10-18 22:41:09,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:41:09,135.135 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:41:09,270.270 INFO    ] No existing commands found in stream
[2026-10-18 22:41:14,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:41:14,292.292 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-18 22:41:15,428.428 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:41:15,431.431 INFO    ] Checking for system updates...
[2026-10-18 22:41:15,471.471 INFO    ] 200
[2026-10-18 22:41:15,473.473 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:41:15,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:41:15,534.534 INFO    ] No update needed
[2026-10-18 22:41:15,536.536 INFO    ] Checking for camera pi updates...
[2026-10-18 22:41:15,569.569 INFO    ] 200
[2026-10-18 22:41:15,571.571 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:41:15,616.616 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:41:15,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:41:15,659.659 INFO    ] No camera update needed
[2026-10-18 22:41:15,662.662 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:41:15,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:41:15,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:41:15,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:41:17,715.715 INFO    ] ================================================
[2026-10-18 22:41:17,731.731 INFO    ] Launching Daemon at Sun Oct 18 22:41:17 IST 2026
[2026-10-18 22:41:17,742.742 INFO    ] ================================================
[2026-10-18 22:41:18,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:41:18
[2026-10-18 22:41:18,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:41:19,159.159 INFO    ] Initializing speech engine...
[2026-10-18 22:41:19,171.171 INFO    ] 2026-10-18 22:41:19
[2026-10-18 22:41:19,421.421 INFO    ] 2026-10-18 22:41:19
[2026-10-18 22:41:19,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:41:19,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:41:19,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:41:19,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:41:19,900.900 INFO    ] time= 18/10/2026 22:41:19
[2026-10-18 22:41:19,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:41:19,994.994 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:41:20,140.140 INFO    ] No existing commands found in stream
[2026-10-18 22:41:25,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:41:25,160.160 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-18 22:41:28,466.466 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:41:28,469.469 INFO    ] Checking for system updates...
[2026-10-18 22:41:28,508.508 INFO    ] 200
[2026-10-18 22:41:28,511.511 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:41:28,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:41:28,572.572 INFO    ] No update needed
[2026-10-18 22:41:28,574.574 INFO    ] Checking for camera pi updates...
[2026-10-18 22:41:28,607.607 INFO    ] 200
[2026-10-18 22:41:28,610.610 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:41:28,649.649 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:41:28,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:41:28,699.699 INFO    ] No camera update needed
[2026-10-18 22:41:28,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:41:28,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:41:28,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:41:28,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:41:30,757.757 INFO    ] ================================================
[2026-10-18 22:41:30,772.772 INFO    ] Launching Daemon at Sun Oct 18 22:41:30 IST 2026
[2026-10-18 22:41:30,782.782 INFO    ] ================================================
[2026-10-18 22:41:31,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:41:31
[2026-10-18 22:41:31,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:41:32,262.262 INFO    ] Initializing speech engine...
[2026-10-18 22:41:32,278.278 INFO    ] 2026-10-18 22:41:32
[2026-10-18 22:41:32,577.577 INFO    ] 2026-10-18 22:41:32
[2026-10-18 22:41:32,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:41:32,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:41:32,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:41:33,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:41:33,040.040 INFO    ] time= 18/10/2026 22:41:33
[2026-10-18 22:41:33,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:41:33,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:41:33,204.204 INFO    ] No existing commands found in stream
[2026-10-18 22:41:38,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:41:38,243.243 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-18 22:41:38,758.758 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:41:38,761.761 INFO    ] Checking for system updates...
[2026-10-18 22:41:38,797.797 INFO    ] 200
[2026-10-18 22:41:38,800.800 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:41:38,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:41:38,863.863 INFO    ] No update needed
[2026-10-18 22:41:38,865.865 INFO    ] Checking for camera pi updates...
[2026-10-18 22:41:38,904.904 INFO    ] 200
[2026-10-18 22:41:38,906.906 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:41:38,952.952 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:41:38,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:41:38,997.997 INFO    ] No camera update needed
[2026-10-18 22:41:39,000.000 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:41:39,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:41:39,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:41:39,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:41:41,055.055 INFO    ] ================================================
[2026-10-18 22:41:41,070.070 INFO    ] Launching Daemon at Sun Oct 18 22:41:41 IST 2026
[2026-10-18 22:41:41,081.081 INFO    ] ================================================
[2026-10-18 22:41:41,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:41:41
[2026-10-18 22:41:42,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:41:42,494.494 INFO    ] Initializing speech engine...
[2026-10-18 22:41:42,503.503 INFO    ] 2026-10-18 22:41:42
[2026-10-18 22:41:42,801.801 INFO    ] 2026-10-18 22:41:42
[2026-10-18 22:41:42,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:41:43,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:41:43,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:41:43,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:41:43,230.230 INFO    ] time= 18/10/2026 22:41:43
[2026-10-18 22:41:43,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:41:43,259.259 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:41:43,420.420 INFO    ] No existing commands found in stream
[2026-10-18 22:41:48,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:41:48,447.447 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-18 22:41:49,012.012 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:41:49,014.014 INFO    ] Checking for system updates...
[2026-10-18 22:41:49,050.050 INFO    ] 200
[2026-10-18 22:41:49,052.052 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:41:49,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:41:49,114.114 INFO    ] No update needed
[2026-10-18 22:41:49,116.116 INFO    ] Checking for camera pi updates...
[2026-10-18 22:41:49,154.154 INFO    ] 200
[2026-10-18 22:41:49,156.156 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:41:49,195.195 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:41:49,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:41:49,336.336 INFO    ] No camera update needed
[2026-10-18 22:41:49,339.339 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:41:49,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:41:49,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:41:49,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:41:51,391.391 INFO    ] ================================================
[2026-10-18 22:41:51,406.406 INFO    ] Launching Daemon at Sun Oct 18 22:41:51 IST 2026
[2026-10-18 22:41:51,417.417 INFO    ] ================================================
[2026-10-18 22:41:51,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:41:51
[2026-10-18 22:41:52,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:41:52,848.848 INFO    ] Initializing speech engine...
[2026-10-18 22:41:52,854.854 INFO    ] 2026-10-18 22:41:52
[2026-10-18 22:41:53,100.100 INFO    ] 2026-10-18 22:41:53
[2026-10-18 22:41:53,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:41:53,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:41:53,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:41:53,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:41:53,586.586 INFO    ] time= 18/10/2026 22:41:53
[2026-10-18 22:41:53,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:41:53,662.662 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:41:53,811.811 INFO    ] No existing commands found in stream
[2026-10-18 22:41:58,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:41:58,833.833 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-18 22:41:59,886.886 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:41:59,890.890 INFO    ] Checking for system updates...
[2026-10-18 22:41:59,933.933 INFO    ] 200
[2026-10-18 22:41:59,935.935 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:41:59,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:41:59,997.997 INFO    ] No update needed
[2026-10-18 22:41:59,999.999 INFO    ] Checking for camera pi updates...
[2026-10-18 22:42:00,037.037 INFO    ] 200
[2026-10-18 22:42:00,039.039 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:42:00,085.085 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:42:00,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:42:00,129.129 INFO    ] No camera update needed
[2026-10-18 22:42:00,132.132 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:42:00,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:42:00,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:42:00,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:42:02,187.187 INFO    ] ================================================
[2026-10-18 22:42:02,210.210 INFO    ] Launching Daemon at Sun Oct 18 22:42:02 IST 2026
[2026-10-18 22:42:02,261.261 INFO    ] ================================================
[2026-10-18 22:42:02,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:42:02
[2026-10-18 22:42:03,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:42:03,864.864 INFO    ] Initializing speech engine...
[2026-10-18 22:42:03,877.877 INFO    ] 2026-10-18 22:42:03
[2026-10-18 22:42:04,175.175 INFO    ] 2026-10-18 22:42:04
[2026-10-18 22:42:04,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:42:04,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:42:04,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:42:04,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:42:04,660.660 INFO    ] time= 18/10/2026 22:42:04
[2026-10-18 22:42:04,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:42:04,745.745 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:42:04,887.887 INFO    ] No existing commands found in stream
[2026-10-18 22:42:09,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:42:09,906.906 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-18 22:42:12,240.240 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:42:12,243.243 INFO    ] Checking for system updates...
[2026-10-18 22:42:12,278.278 INFO    ] 200
[2026-10-18 22:42:12,280.280 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:42:12,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:42:12,333.333 INFO    ] No update needed
[2026-10-18 22:42:12,336.336 INFO    ] Checking for camera pi updates...
[2026-10-18 22:42:12,368.368 INFO    ] 200
[2026-10-18 22:42:12,371.371 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:42:12,415.415 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:42:12,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:42:12,459.459 INFO    ] No camera update needed
[2026-10-18 22:42:12,461.461 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:42:12,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:42:12,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:42:12,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:42:14,514.514 INFO    ] ================================================
[2026-10-18 22:42:14,528.528 INFO    ] Launching Daemon at Sun Oct 18 22:42:14 IST 2026
[2026-10-18 22:42:14,539.539 INFO    ] ================================================
[2026-10-18 22:42:15,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:42:15
[2026-10-18 22:42:15,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:42:16,007.007 INFO    ] Initializing speech engine...
[2026-10-18 22:42:16,016.016 INFO    ] 2026-10-18 22:42:16
[2026-10-18 22:42:16,273.273 INFO    ] 2026-10-18 22:42:16
[2026-10-18 22:42:16,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:42:16,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:42:16,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:42:16,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:42:16,779.779 INFO    ] time= 18/10/2026 22:42:16
[2026-10-18 22:42:16,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:42:16,849.849 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:42:16,993.993 INFO    ] No existing commands found in stream
[2026-10-18 22:42:22,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:42:22,014.014 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-18 22:42:24,708.708 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:42:24,711.711 INFO    ] Checking for system updates...
[2026-10-18 22:42:24,751.751 INFO    ] 200
[2026-10-18 22:42:24,754.754 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:42:24,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:42:24,817.817 INFO    ] No update needed
[2026-10-18 22:42:24,820.820 INFO    ] Checking for camera pi updates...
[2026-10-18 22:42:24,854.854 INFO    ] 200
[2026-10-18 22:42:24,856.856 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:42:24,901.901 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:42:24,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:42:24,952.952 INFO    ] No camera update needed
[2026-10-18 22:42:24,955.955 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:42:24,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:42:24,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:42:24,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:42:27,009.009 INFO    ] ================================================
[2026-10-18 22:42:27,024.024 INFO    ] Launching Daemon at Sun Oct 18 22:42:27 IST 2026
[2026-10-18 22:42:27,035.035 INFO    ] ================================================
[2026-10-18 22:42:27,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:42:27
[2026-10-18 22:42:28,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:42:28,434.434 INFO    ] Initializing speech engine...
[2026-10-18 22:42:28,443.443 INFO    ] 2026-10-18 22:42:28
[2026-10-18 22:42:28,734.734 INFO    ] 2026-10-18 22:42:28
[2026-10-18 22:42:28,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:42:28,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:42:28,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:42:29,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:42:29,143.143 INFO    ] time= 18/10/2026 22:42:29
[2026-10-18 22:42:29,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:42:29,197.197 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:42:29,316.316 INFO    ] No existing commands found in stream
[2026-10-18 22:42:34,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:42:34,339.339 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-18 22:42:35,149.149 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:42:35,152.152 INFO    ] Checking for system updates...
[2026-10-18 22:42:35,188.188 INFO    ] 200
[2026-10-18 22:42:35,191.191 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:42:35,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:42:35,250.250 INFO    ] No update needed
[2026-10-18 22:42:35,252.252 INFO    ] Checking for camera pi updates...
[2026-10-18 22:42:35,288.288 INFO    ] 200
[2026-10-18 22:42:35,291.291 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:42:35,330.330 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:42:35,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:42:35,373.373 INFO    ] No camera update needed
[2026-10-18 22:42:35,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:42:35,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:42:35,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:42:35,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:42:37,427.427 INFO    ] ================================================
[2026-10-18 22:42:37,442.442 INFO    ] Launching Daemon at Sun Oct 18 22:42:37 IST 2026
[2026-10-18 22:42:37,453.453 INFO    ] ================================================
[2026-10-18 22:42:38,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:42:38
[2026-10-18 22:42:38,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:42:38,873.873 INFO    ] Initializing speech engine...
[2026-10-18 22:42:38,882.882 INFO    ] 2026-10-18 22:42:38
[2026-10-18 22:42:39,126.126 INFO    ] 2026-10-18 22:42:39
[2026-10-18 22:42:39,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:42:39,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:42:39,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:42:39,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:42:39,680.680 INFO    ] time= 18/10/2026 22:42:39
[2026-10-18 22:42:39,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:42:39,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:42:39,837.837 INFO    ] No existing commands found in stream
[2026-10-18 22:42:44,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:42:44,861.861 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-18 22:42:49,075.075 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:42:49,077.077 INFO    ] Checking for system updates...
[2026-10-18 22:42:49,113.113 INFO    ] 200
[2026-10-18 22:42:49,116.116 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:42:49,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:42:49,169.169 INFO    ] No update needed
[2026-10-18 22:42:49,171.171 INFO    ] Checking for camera pi updates...
[2026-10-18 22:42:49,204.204 INFO    ] 200
[2026-10-18 22:42:49,206.206 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:42:49,246.246 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:42:49,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:42:49,290.290 INFO    ] No camera update needed
[2026-10-18 22:42:49,292.292 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:42:49,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:42:49,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:42:49,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:42:51,347.347 INFO    ] ================================================
[2026-10-18 22:42:51,362.362 INFO    ] Launching Daemon at Sun Oct 18 22:42:51 IST 2026
[2026-10-18 22:42:51,373.373 INFO    ] ================================================
[2026-10-18 22:42:51,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:42:51
[2026-10-18 22:42:52,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:42:52,791.791 INFO    ] Initializing speech engine...
[2026-10-18 22:42:52,815.815 INFO    ] 2026-10-18 22:42:52
[2026-10-18 22:42:53,083.083 INFO    ] 2026-10-18 22:42:53
[2026-10-18 22:42:53,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:42:53,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:42:53,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:42:53,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:42:53,632.632 INFO    ] time= 18/10/2026 22:42:53
[2026-10-18 22:42:53,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:42:53,667.667 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:42:53,798.798 INFO    ] No existing commands found in stream
[2026-10-18 22:42:58,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:42:58,819.819 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-18 22:43:01,183.183 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:43:01,187.187 INFO    ] Checking for system updates...
[2026-10-18 22:43:01,259.259 INFO    ] 200
[2026-10-18 22:43:01,263.263 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:43:01,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:43:01,349.349 INFO    ] No update needed
[2026-10-18 22:43:01,352.352 INFO    ] Checking for camera pi updates...
[2026-10-18 22:43:01,406.406 INFO    ] 200
[2026-10-18 22:43:01,416.416 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:43:01,481.481 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:43:01,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:43:01,526.526 INFO    ] No camera update needed
[2026-10-18 22:43:01,530.530 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:43:01,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:43:01,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:43:01,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:43:03,600.600 INFO    ] ================================================
[2026-10-18 22:43:03,616.616 INFO    ] Launching Daemon at Sun Oct 18 22:43:03 IST 2026
[2026-10-18 22:43:03,627.627 INFO    ] ================================================
[2026-10-18 22:43:04,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:43:04
[2026-10-18 22:43:04,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:43:05,072.072 INFO    ] Initializing speech engine...
[2026-10-18 22:43:05,082.082 INFO    ] 2026-10-18 22:43:05
[2026-10-18 22:43:05,343.343 INFO    ] 2026-10-18 22:43:05
[2026-10-18 22:43:05,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:43:05,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:43:05,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:43:05,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:43:05,886.886 INFO    ] time= 18/10/2026 22:43:05
[2026-10-18 22:43:05,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:43:05,914.914 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:43:06,043.043 INFO    ] No existing commands found in stream
[2026-10-18 22:43:11,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:43:11,070.070 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-18 22:43:15,366.366 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:43:15,369.369 INFO    ] Checking for system updates...
[2026-10-18 22:43:15,406.406 INFO    ] 200
[2026-10-18 22:43:15,409.409 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:43:15,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:43:15,467.467 INFO    ] No update needed
[2026-10-18 22:43:15,470.470 INFO    ] Checking for camera pi updates...
[2026-10-18 22:43:15,503.503 INFO    ] 200
[2026-10-18 22:43:15,505.505 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:43:15,544.544 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:43:15,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:43:15,588.588 INFO    ] No camera update needed
[2026-10-18 22:43:15,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:43:15,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:43:15,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:43:15,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:43:17,644.644 INFO    ] ================================================
[2026-10-18 22:43:17,659.659 INFO    ] Launching Daemon at Sun Oct 18 22:43:17 IST 2026
[2026-10-18 22:43:17,670.670 INFO    ] ================================================
[2026-10-18 22:43:18,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:43:18
[2026-10-18 22:43:18,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:43:19,246.246 INFO    ] Initializing speech engine...
[2026-10-18 22:43:19,254.254 INFO    ] 2026-10-18 22:43:19
[2026-10-18 22:43:19,535.535 INFO    ] 2026-10-18 22:43:19
[2026-10-18 22:43:19,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:43:19,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:43:19,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:43:20,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:43:20,071.071 INFO    ] time= 18/10/2026 22:43:20
[2026-10-18 22:43:20,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:43:20,112.112 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:43:20,249.249 INFO    ] No existing commands found in stream
[2026-10-18 22:43:25,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:43:25,288.288 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-18 22:43:28,855.855 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:43:28,858.858 INFO    ] Checking for system updates...
[2026-10-18 22:43:28,897.897 INFO    ] 200
[2026-10-18 22:43:28,900.900 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:43:28,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:43:28,961.961 INFO    ] No update needed
[2026-10-18 22:43:28,964.964 INFO    ] Checking for camera pi updates...
[2026-10-18 22:43:28,997.997 INFO    ] 200
[2026-10-18 22:43:29,000.000 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:43:29,043.043 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:43:29,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:43:29,087.087 INFO    ] No camera update needed
[2026-10-18 22:43:29,090.090 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:43:29,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:43:29,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:43:29,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:43:31,145.145 INFO    ] ================================================
[2026-10-18 22:43:31,163.163 INFO    ] Launching Daemon at Sun Oct 18 22:43:31 IST 2026
[2026-10-18 22:43:31,174.174 INFO    ] ================================================
[2026-10-18 22:43:31,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:43:31
[2026-10-18 22:43:32,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:43:32,816.816 INFO    ] Initializing speech engine...
[2026-10-18 22:43:32,824.824 INFO    ] 2026-10-18 22:43:32
[2026-10-18 22:43:33,087.087 INFO    ] 2026-10-18 22:43:33
[2026-10-18 22:43:33,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:43:33,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:43:33,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:43:33,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:43:33,611.611 INFO    ] time= 18/10/2026 22:43:33
[2026-10-18 22:43:33,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:43:33,685.685 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:43:33,829.829 INFO    ] No existing commands found in stream
[2026-10-18 22:43:38,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:43:38,856.856 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-18 22:43:39,850.850 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:43:39,853.853 INFO    ] Checking for system updates...
[2026-10-18 22:43:39,889.889 INFO    ] 200
[2026-10-18 22:43:39,892.892 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:43:39,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:43:39,948.948 INFO    ] No update needed
[2026-10-18 22:43:39,951.951 INFO    ] Checking for camera pi updates...
[2026-10-18 22:43:39,985.985 INFO    ] 200
[2026-10-18 22:43:39,987.987 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:43:40,032.032 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:43:40,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:43:40,076.076 INFO    ] No camera update needed
[2026-10-18 22:43:40,079.079 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:43:40,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:43:40,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:43:40,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:43:42,135.135 INFO    ] ================================================
[2026-10-18 22:43:42,150.150 INFO    ] Launching Daemon at Sun Oct 18 22:43:42 IST 2026
[2026-10-18 22:43:42,160.160 INFO    ] ================================================
[2026-10-18 22:43:42,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:43:42
[2026-10-18 22:43:43,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:43:43,772.772 INFO    ] Initializing speech engine...
[2026-10-18 22:43:43,781.781 INFO    ] 2026-10-18 22:43:43
[2026-10-18 22:43:44,050.050 INFO    ] 2026-10-18 22:43:44
[2026-10-18 22:43:44,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:43:44,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:43:44,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:43:44,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:43:44,563.563 INFO    ] time= 18/10/2026 22:43:44
[2026-10-18 22:43:44,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:43:44,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:43:44,776.776 INFO    ] No existing commands found in stream
[2026-10-18 22:43:49,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:43:49,795.795 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-18 22:43:53,697.697 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:43:53,700.700 INFO    ] Checking for system updates...
[2026-10-18 22:43:53,736.736 INFO    ] 200
[2026-10-18 22:43:53,739.739 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:43:53,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:43:53,800.800 INFO    ] No update needed
[2026-10-18 22:43:53,803.803 INFO    ] Checking for camera pi updates...
[2026-10-18 22:43:53,840.840 INFO    ] 200
[2026-10-18 22:43:53,843.843 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:43:53,883.883 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:43:54,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:43:54,024.024 INFO    ] No camera update needed
[2026-10-18 22:43:54,027.027 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:43:54,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:43:54,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:43:54,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:43:56,081.081 INFO    ] ================================================
[2026-10-18 22:43:56,097.097 INFO    ] Launching Daemon at Sun Oct 18 22:43:56 IST 2026
[2026-10-18 22:43:56,107.107 INFO    ] ================================================
[2026-10-18 22:43:56,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:43:56
[2026-10-18 22:43:57,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:43:57,764.764 INFO    ] Initializing speech engine...
[2026-10-18 22:43:57,778.778 INFO    ] 2026-10-18 22:43:57
[2026-10-18 22:43:58,058.058 INFO    ] 2026-10-18 22:43:58
[2026-10-18 22:43:58,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:43:58,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:43:58,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:43:58,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:43:58,594.594 INFO    ] time= 18/10/2026 22:43:58
[2026-10-18 22:43:58,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:43:58,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:43:58,751.751 INFO    ] No existing commands found in stream
[2026-10-18 22:44:03,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:44:03,770.770 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-18 22:44:05,544.544 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:44:05,547.547 INFO    ] Checking for system updates...
[2026-10-18 22:44:05,582.582 INFO    ] 200
[2026-10-18 22:44:05,585.585 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:44:05,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:44:05,638.638 INFO    ] No update needed
[2026-10-18 22:44:05,640.640 INFO    ] Checking for camera pi updates...
[2026-10-18 22:44:05,672.672 INFO    ] 200
[2026-10-18 22:44:05,675.675 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:44:05,714.714 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:44:05,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:44:05,757.757 INFO    ] No camera update needed
[2026-10-18 22:44:05,759.759 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:44:05,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:44:05,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:44:05,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:44:07,812.812 INFO    ] ================================================
[2026-10-18 22:44:07,827.827 INFO    ] Launching Daemon at Sun Oct 18 22:44:07 IST 2026
[2026-10-18 22:44:07,838.838 INFO    ] ================================================
[2026-10-18 22:44:08,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:44:08
[2026-10-18 22:44:09,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:44:09,290.290 INFO    ] Initializing speech engine...
[2026-10-18 22:44:09,298.298 INFO    ] 2026-10-18 22:44:09
[2026-10-18 22:44:09,550.550 INFO    ] 2026-10-18 22:44:09
[2026-10-18 22:44:09,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:44:09,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:44:09,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:44:10,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:44:10,119.119 INFO    ] time= 18/10/2026 22:44:10
[2026-10-18 22:44:10,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:44:10,144.144 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:44:10,267.267 INFO    ] No existing commands found in stream
[2026-10-18 22:44:15,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:44:15,292.292 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-18 22:44:17,226.226 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:44:17,228.228 INFO    ] Checking for system updates...
[2026-10-18 22:44:17,263.263 INFO    ] 200
[2026-10-18 22:44:17,266.266 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:44:17,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:44:17,319.319 INFO    ] No update needed
[2026-10-18 22:44:17,321.321 INFO    ] Checking for camera pi updates...
[2026-10-18 22:44:17,360.360 INFO    ] 200
[2026-10-18 22:44:17,362.362 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:44:17,401.401 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:44:17,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:44:17,444.444 INFO    ] No camera update needed
[2026-10-18 22:44:17,446.446 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:44:17,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:44:17,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:44:17,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:44:19,498.498 INFO    ] ================================================
[2026-10-18 22:44:19,513.513 INFO    ] Launching Daemon at Sun Oct 18 22:44:19 IST 2026
[2026-10-18 22:44:19,524.524 INFO    ] ================================================
[2026-10-18 22:44:20,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:44:20
[2026-10-18 22:44:20,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:44:21,057.057 INFO    ] Initializing speech engine...
[2026-10-18 22:44:21,070.070 INFO    ] 2026-10-18 22:44:21
[2026-10-18 22:44:21,350.350 INFO    ] 2026-10-18 22:44:21
[2026-10-18 22:44:21,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:44:21,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:44:21,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:44:21,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:44:21,772.772 INFO    ] time= 18/10/2026 22:44:21
[2026-10-18 22:44:21,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:44:21,808.808 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:44:21,960.960 INFO    ] No existing commands found in stream
[2026-10-18 22:44:26,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:44:26,982.982 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-18 22:44:29,228.228 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:44:29,231.231 INFO    ] Checking for system updates...
[2026-10-18 22:44:29,270.270 INFO    ] 200
[2026-10-18 22:44:29,272.272 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:44:29,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:44:29,331.331 INFO    ] No update needed
[2026-10-18 22:44:29,334.334 INFO    ] Checking for camera pi updates...
[2026-10-18 22:44:29,367.367 INFO    ] 200
[2026-10-18 22:44:29,370.370 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:44:29,410.410 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:44:29,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:44:29,453.453 INFO    ] No camera update needed
[2026-10-18 22:44:29,455.455 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:44:29,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:44:29,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:44:29,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:44:31,509.509 INFO    ] ================================================
[2026-10-18 22:44:31,525.525 INFO    ] Launching Daemon at Sun Oct 18 22:44:31 IST 2026
[2026-10-18 22:44:31,536.536 INFO    ] ================================================
[2026-10-18 22:44:32,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:44:32
[2026-10-18 22:44:32,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:44:33,033.033 INFO    ] Initializing speech engine...
[2026-10-18 22:44:33,055.055 INFO    ] 2026-10-18 22:44:33
[2026-10-18 22:44:33,311.311 INFO    ] 2026-10-18 22:44:33
[2026-10-18 22:44:33,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:44:33,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:44:33,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:44:33,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:44:33,786.786 INFO    ] time= 18/10/2026 22:44:33
[2026-10-18 22:44:33,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:44:33,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:44:34,015.015 INFO    ] No existing commands found in stream
[2026-10-18 22:44:39,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:44:39,046.046 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-18 22:44:42,192.192 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:44:42,194.194 INFO    ] Checking for system updates...
[2026-10-18 22:44:42,230.230 INFO    ] 200
[2026-10-18 22:44:42,232.232 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:44:42,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:44:42,286.286 INFO    ] No update needed
[2026-10-18 22:44:42,289.289 INFO    ] Checking for camera pi updates...
[2026-10-18 22:44:42,323.323 INFO    ] 200
[2026-10-18 22:44:42,325.325 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:44:42,364.364 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:44:42,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:44:42,406.406 INFO    ] No camera update needed
[2026-10-18 22:44:42,409.409 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:44:42,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:44:42,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:44:42,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:44:44,462.462 INFO    ] ================================================
[2026-10-18 22:44:44,477.477 INFO    ] Launching Daemon at Sun Oct 18 22:44:44 IST 2026
[2026-10-18 22:44:44,488.488 INFO    ] ================================================
[2026-10-18 22:44:45,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:44:45
[2026-10-18 22:44:45,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:44:45,918.918 INFO    ] Initializing speech engine...
[2026-10-18 22:44:45,931.931 INFO    ] 2026-10-18 22:44:45
[2026-10-18 22:44:46,202.202 INFO    ] 2026-10-18 22:44:46
[2026-10-18 22:44:46,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:44:46,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:44:46,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:44:46,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:44:46,768.768 INFO    ] time= 18/10/2026 22:44:46
[2026-10-18 22:44:46,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:44:46,790.790 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:44:46,938.938 INFO    ] No existing commands found in stream
[2026-10-18 22:44:51,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:44:51,973.973 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-18 22:44:53,254.254 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:44:53,257.257 INFO    ] Checking for system updates...
[2026-10-18 22:44:53,291.291 INFO    ] 200
[2026-10-18 22:44:53,294.294 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:44:53,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:44:53,348.348 INFO    ] No update needed
[2026-10-18 22:44:53,350.350 INFO    ] Checking for camera pi updates...
[2026-10-18 22:44:53,383.383 INFO    ] 200
[2026-10-18 22:44:53,385.385 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:44:53,427.427 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:44:53,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:44:53,470.470 INFO    ] No camera update needed
[2026-10-18 22:44:53,472.472 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:44:53,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:44:53,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:44:53,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:44:55,526.526 INFO    ] ================================================
[2026-10-18 22:44:55,541.541 INFO    ] Launching Daemon at Sun Oct 18 22:44:55 IST 2026
[2026-10-18 22:44:55,551.551 INFO    ] ================================================
[2026-10-18 22:44:56,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:44:56
[2026-10-18 22:44:56,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:44:57,056.056 INFO    ] Initializing speech engine...
[2026-10-18 22:44:57,066.066 INFO    ] 2026-10-18 22:44:57
[2026-10-18 22:44:57,354.354 INFO    ] 2026-10-18 22:44:57
[2026-10-18 22:44:57,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:44:57,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:44:57,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:44:57,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:44:57,893.893 INFO    ] time= 18/10/2026 22:44:57
[2026-10-18 22:44:57,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:44:57,921.921 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:44:58,063.063 INFO    ] No existing commands found in stream
[2026-10-18 22:45:03,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:45:03,101.101 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-18 22:45:05,079.079 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:45:05,082.082 INFO    ] Checking for system updates...
[2026-10-18 22:45:05,118.118 INFO    ] 200
[2026-10-18 22:45:05,121.121 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:45:05,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:45:05,176.176 INFO    ] No update needed
[2026-10-18 22:45:05,179.179 INFO    ] Checking for camera pi updates...
[2026-10-18 22:45:05,212.212 INFO    ] 200
[2026-10-18 22:45:05,215.215 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:45:05,255.255 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:45:05,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:45:05,304.304 INFO    ] No camera update needed
[2026-10-18 22:45:05,307.307 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:45:05,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:45:05,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:45:05,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:45:07,360.360 INFO    ] ================================================
[2026-10-18 22:45:07,375.375 INFO    ] Launching Daemon at Sun Oct 18 22:45:07 IST 2026
[2026-10-18 22:45:07,386.386 INFO    ] ================================================
[2026-10-18 22:45:07,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:45:07
[2026-10-18 22:45:08,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:45:08,807.807 INFO    ] Initializing speech engine...
[2026-10-18 22:45:08,812.812 INFO    ] 2026-10-18 22:45:08
[2026-10-18 22:45:09,075.075 INFO    ] 2026-10-18 22:45:09
[2026-10-18 22:45:09,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:45:09,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:45:09,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:45:09,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:45:09,517.517 INFO    ] time= 18/10/2026 22:45:09
[2026-10-18 22:45:09,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:45:09,571.571 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:45:09,705.705 INFO    ] No existing commands found in stream
[2026-10-18 22:45:14,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:45:14,739.739 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-18 22:45:18,576.576 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:45:18,579.579 INFO    ] Checking for system updates...
[2026-10-18 22:45:18,614.614 INFO    ] 200
[2026-10-18 22:45:18,617.617 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:45:18,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:45:18,670.670 INFO    ] No update needed
[2026-10-18 22:45:18,672.672 INFO    ] Checking for camera pi updates...
[2026-10-18 22:45:18,705.705 INFO    ] 200
[2026-10-18 22:45:18,708.708 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:45:18,747.747 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:45:18,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:45:18,781.781 INFO    ] No camera update needed
[2026-10-18 22:45:18,783.783 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:45:18,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:45:18,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:45:18,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:45:20,834.834 INFO    ] ================================================
[2026-10-18 22:45:20,849.849 INFO    ] Launching Daemon at Sun Oct 18 22:45:20 IST 2026
[2026-10-18 22:45:20,860.860 INFO    ] ================================================
[2026-10-18 22:45:21,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:45:21
[2026-10-18 22:45:22,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:45:22,368.368 INFO    ] Initializing speech engine...
[2026-10-18 22:45:22,381.381 INFO    ] 2026-10-18 22:45:22
[2026-10-18 22:45:22,642.642 INFO    ] 2026-10-18 22:45:22
[2026-10-18 22:45:22,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:45:22,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:45:22,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:45:23,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:45:23,139.139 INFO    ] time= 18/10/2026 22:45:23
[2026-10-18 22:45:23,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:45:23,201.201 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:45:23,348.348 INFO    ] No existing commands found in stream
[2026-10-18 22:45:28,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:45:28,374.374 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-18 22:45:28,985.985 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:45:28,988.988 INFO    ] Checking for system updates...
[2026-10-18 22:45:29,022.022 INFO    ] 200
[2026-10-18 22:45:29,025.025 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:45:29,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:45:29,079.079 INFO    ] No update needed
[2026-10-18 22:45:29,081.081 INFO    ] Checking for camera pi updates...
[2026-10-18 22:45:29,116.116 INFO    ] 200
[2026-10-18 22:45:29,118.118 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:45:29,158.158 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:45:29,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:45:29,200.200 INFO    ] No camera update needed
[2026-10-18 22:45:29,203.203 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:45:29,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:45:29,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:45:29,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:45:31,253.253 INFO    ] ================================================
[2026-10-18 22:45:31,268.268 INFO    ] Launching Daemon at Sun Oct 18 22:45:31 IST 2026
[2026-10-18 22:45:31,279.279 INFO    ] ================================================
[2026-10-18 22:45:31,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:45:31
[2026-10-18 22:45:32,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:45:32,804.804 INFO    ] Initializing speech engine...
[2026-10-18 22:45:32,813.813 INFO    ] 2026-10-18 22:45:32
[2026-10-18 22:45:33,085.085 INFO    ] 2026-10-18 22:45:33
[2026-10-18 22:45:33,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:45:33,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:45:33,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:45:33,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:45:33,600.600 INFO    ] time= 18/10/2026 22:45:33
[2026-10-18 22:45:33,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:45:33,679.679 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:45:33,834.834 INFO    ] No existing commands found in stream
[2026-10-18 22:45:38,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:45:38,854.854 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-18 22:45:41,394.394 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:45:41,397.397 INFO    ] Checking for system updates...
[2026-10-18 22:45:41,431.431 INFO    ] 200
[2026-10-18 22:45:41,434.434 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:45:41,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:45:41,491.491 INFO    ] No update needed
[2026-10-18 22:45:41,493.493 INFO    ] Checking for camera pi updates...
[2026-10-18 22:45:41,526.526 INFO    ] 200
[2026-10-18 22:45:41,529.529 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:45:41,569.569 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:45:41,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:45:41,613.613 INFO    ] No camera update needed
[2026-10-18 22:45:41,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:45:41,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:45:41,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:45:41,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:45:43,666.666 INFO    ] ================================================
[2026-10-18 22:45:43,681.681 INFO    ] Launching Daemon at Sun Oct 18 22:45:43 IST 2026
[2026-10-18 22:45:43,692.692 INFO    ] ================================================
[2026-10-18 22:45:44,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:45:44
[2026-10-18 22:45:44,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:45:45,127.127 INFO    ] Initializing speech engine...
[2026-10-18 22:45:45,136.136 INFO    ] 2026-10-18 22:45:45
[2026-10-18 22:45:45,387.387 INFO    ] 2026-10-18 22:45:45
[2026-10-18 22:45:45,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:45:45,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:45:45,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:45:45,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:45:45,921.921 INFO    ] time= 18/10/2026 22:45:45
[2026-10-18 22:45:45,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:45:45,974.974 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:45:46,111.111 INFO    ] No existing commands found in stream
[2026-10-18 22:45:51,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:45:51,126.126 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-18 22:45:55,134.134 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:45:55,136.136 INFO    ] Checking for system updates...
[2026-10-18 22:45:55,171.171 INFO    ] 200
[2026-10-18 22:45:55,174.174 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:45:55,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:45:55,227.227 INFO    ] No update needed
[2026-10-18 22:45:55,229.229 INFO    ] Checking for camera pi updates...
[2026-10-18 22:45:55,264.264 INFO    ] 200
[2026-10-18 22:45:55,267.267 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:45:55,311.311 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:45:55,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:45:55,362.362 INFO    ] No camera update needed
[2026-10-18 22:45:55,364.364 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:45:55,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:45:55,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:45:55,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:45:57,415.415 INFO    ] ================================================
[2026-10-18 22:45:57,431.431 INFO    ] Launching Daemon at Sun Oct 18 22:45:57 IST 2026
[2026-10-18 22:45:57,442.442 INFO    ] ================================================
[2026-10-18 22:45:58,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:45:58
[2026-10-18 22:45:58,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:45:58,835.835 INFO    ] Initializing speech engine...
[2026-10-18 22:45:58,848.848 INFO    ] 2026-10-18 22:45:58
[2026-10-18 22:45:59,112.112 INFO    ] 2026-10-18 22:45:59
[2026-10-18 22:45:59,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:45:59,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:45:59,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:45:59,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:45:59,645.645 INFO    ] time= 18/10/2026 22:45:59
[2026-10-18 22:45:59,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:45:59,687.687 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:45:59,845.845 INFO    ] No existing commands found in stream
[2026-10-18 22:46:04,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:46:04,873.873 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-18 22:46:07,042.042 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:46:07,044.044 INFO    ] Checking for system updates...
[2026-10-18 22:46:07,082.082 INFO    ] 200
[2026-10-18 22:46:07,085.085 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:46:07,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:46:07,152.152 INFO    ] No update needed
[2026-10-18 22:46:07,155.155 INFO    ] Checking for camera pi updates...
[2026-10-18 22:46:07,189.189 INFO    ] 200
[2026-10-18 22:46:07,192.192 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:46:07,241.241 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:46:07,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:46:07,337.337 INFO    ] No camera update needed
[2026-10-18 22:46:07,340.340 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:46:07,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:46:07,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:46:07,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:46:09,395.395 INFO    ] ================================================
[2026-10-18 22:46:09,410.410 INFO    ] Launching Daemon at Sun Oct 18 22:46:09 IST 2026
[2026-10-18 22:46:09,421.421 INFO    ] ================================================
[2026-10-18 22:46:10,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:46:10
[2026-10-18 22:46:10,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:46:10,892.892 INFO    ] Initializing speech engine...
[2026-10-18 22:46:10,919.919 INFO    ] 2026-10-18 22:46:10
[2026-10-18 22:46:11,170.170 INFO    ] 2026-10-18 22:46:11
[2026-10-18 22:46:11,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:46:11,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:46:11,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:46:11,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:46:11,638.638 INFO    ] time= 18/10/2026 22:46:11
[2026-10-18 22:46:11,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:46:11,743.743 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:46:11,879.879 INFO    ] No existing commands found in stream
[2026-10-18 22:46:16,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:46:16,905.905 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-18 22:46:21,097.097 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:46:21,100.100 INFO    ] Checking for system updates...
[2026-10-18 22:46:21,135.135 INFO    ] 200
[2026-10-18 22:46:21,138.138 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:46:21,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:46:21,191.191 INFO    ] No update needed
[2026-10-18 22:46:21,194.194 INFO    ] Checking for camera pi updates...
[2026-10-18 22:46:21,231.231 INFO    ] 200
[2026-10-18 22:46:21,233.233 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:46:21,284.284 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:46:21,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:46:21,327.327 INFO    ] No camera update needed
[2026-10-18 22:46:21,330.330 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:46:21,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:46:21,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:46:21,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:46:23,382.382 INFO    ] ================================================
[2026-10-18 22:46:23,397.397 INFO    ] Launching Daemon at Sun Oct 18 22:46:23 IST 2026
[2026-10-18 22:46:23,407.407 INFO    ] ================================================
[2026-10-18 22:46:23,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:46:23
[2026-10-18 22:46:24,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:46:24,824.824 INFO    ] Initializing speech engine...
[2026-10-18 22:46:24,833.833 INFO    ] 2026-10-18 22:46:24
[2026-10-18 22:46:25,077.077 INFO    ] 2026-10-18 22:46:25
[2026-10-18 22:46:25,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:46:25,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:46:25,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:46:25,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:46:25,630.630 INFO    ] time= 18/10/2026 22:46:25
[2026-10-18 22:46:25,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:46:25,654.654 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:46:25,786.786 INFO    ] No existing commands found in stream
[2026-10-18 22:46:30,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:46:30,807.807 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-18 22:46:34,355.355 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:46:34,357.357 INFO    ] Checking for system updates...
[2026-10-18 22:46:34,393.393 INFO    ] 200
[2026-10-18 22:46:34,396.396 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:46:34,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:46:34,456.456 INFO    ] No update needed
[2026-10-18 22:46:34,460.460 INFO    ] Checking for camera pi updates...
[2026-10-18 22:46:34,504.504 INFO    ] 200
[2026-10-18 22:46:34,506.506 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:46:34,550.550 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:46:34,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:46:34,599.599 INFO    ] No camera update needed
[2026-10-18 22:46:34,601.601 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:46:34,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:46:34,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:46:34,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:46:36,655.655 INFO    ] ================================================
[2026-10-18 22:46:36,670.670 INFO    ] Launching Daemon at Sun Oct 18 22:46:36 IST 2026
[2026-10-18 22:46:36,680.680 INFO    ] ================================================
[2026-10-18 22:46:37,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:46:37
[2026-10-18 22:46:37,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:46:38,122.122 INFO    ] Initializing speech engine...
[2026-10-18 22:46:38,129.129 INFO    ] 2026-10-18 22:46:38
[2026-10-18 22:46:38,381.381 INFO    ] 2026-10-18 22:46:38
[2026-10-18 22:46:38,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:46:38,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:46:38,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:46:38,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:46:38,924.924 INFO    ] time= 18/10/2026 22:46:38
[2026-10-18 22:46:38,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:46:38,947.947 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:46:39,077.077 INFO    ] No existing commands found in stream
[2026-10-18 22:46:44,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:46:44,094.094 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-18 22:46:48,120.120 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:46:48,122.122 INFO    ] Checking for system updates...
[2026-10-18 22:46:48,157.157 INFO    ] 200
[2026-10-18 22:46:48,160.160 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:46:48,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:46:48,216.216 INFO    ] No update needed
[2026-10-18 22:46:48,219.219 INFO    ] Checking for camera pi updates...
[2026-10-18 22:46:48,256.256 INFO    ] 200
[2026-10-18 22:46:48,259.259 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:46:48,299.299 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:46:48,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:46:48,343.343 INFO    ] No camera update needed
[2026-10-18 22:46:48,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:46:48,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:46:48,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:46:48,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:46:50,399.399 INFO    ] ================================================
[2026-10-18 22:46:50,415.415 INFO    ] Launching Daemon at Sun Oct 18 22:46:50 IST 2026
[2026-10-18 22:46:50,426.426 INFO    ] ================================================
[2026-10-18 22:46:50,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:46:50
[2026-10-18 22:46:51,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:46:51,838.838 INFO    ] Initializing speech engine...
[2026-10-18 22:46:51,856.856 INFO    ] 2026-10-18 22:46:51
[2026-10-18 22:46:52,102.102 INFO    ] 2026-10-18 22:46:52
[2026-10-18 22:46:52,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:46:52,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:46:52,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:46:52,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:46:52,596.596 INFO    ] time= 18/10/2026 22:46:52
[2026-10-18 22:46:52,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:46:52,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:46:52,789.789 INFO    ] No existing commands found in stream
[2026-10-18 22:46:57,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:46:57,819.819 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-18 22:46:58,374.374 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:46:58,377.377 INFO    ] Checking for system updates...
[2026-10-18 22:46:58,412.412 INFO    ] 200
[2026-10-18 22:46:58,415.415 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:46:58,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:46:58,474.474 INFO    ] No update needed
[2026-10-18 22:46:58,476.476 INFO    ] Checking for camera pi updates...
[2026-10-18 22:46:58,509.509 INFO    ] 200
[2026-10-18 22:46:58,511.511 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:46:58,551.551 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:46:58,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:46:58,596.596 INFO    ] No camera update needed
[2026-10-18 22:46:58,599.599 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:46:58,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:46:58,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:46:58,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:47:00,651.651 INFO    ] ================================================
[2026-10-18 22:47:00,666.666 INFO    ] Launching Daemon at Sun Oct 18 22:47:00 IST 2026
[2026-10-18 22:47:00,677.677 INFO    ] ================================================
[2026-10-18 22:47:01,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:47:01
[2026-10-18 22:47:02,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:47:02,461.461 INFO    ] Initializing speech engine...
[2026-10-18 22:47:02,473.473 INFO    ] 2026-10-18 22:47:02
[2026-10-18 22:47:02,777.777 INFO    ] 2026-10-18 22:47:02
[2026-10-18 22:47:02,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:47:03,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:47:03,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:47:03,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:47:03,408.408 INFO    ] time= 18/10/2026 22:47:03
[2026-10-18 22:47:03,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:47:03,433.433 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:47:03,579.579 INFO    ] No existing commands found in stream
[2026-10-18 22:47:08,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:47:08,601.601 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-18 22:47:11,612.612 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:47:11,614.614 INFO    ] Checking for system updates...
[2026-10-18 22:47:11,649.649 INFO    ] 200
[2026-10-18 22:47:11,652.652 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:47:11,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:47:11,709.709 INFO    ] No update needed
[2026-10-18 22:47:11,711.711 INFO    ] Checking for camera pi updates...
[2026-10-18 22:47:11,744.744 INFO    ] 200
[2026-10-18 22:47:11,747.747 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:47:11,787.787 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:47:11,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:47:11,830.830 INFO    ] No camera update needed
[2026-10-18 22:47:11,832.832 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:47:11,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:47:11,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:47:11,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:47:13,884.884 INFO    ] ================================================
[2026-10-18 22:47:13,899.899 INFO    ] Launching Daemon at Sun Oct 18 22:47:13 IST 2026
[2026-10-18 22:47:13,910.910 INFO    ] ================================================
[2026-10-18 22:47:14,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:47:14
[2026-10-18 22:47:15,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:47:15,387.387 INFO    ] Initializing speech engine...
[2026-10-18 22:47:15,395.395 INFO    ] 2026-10-18 22:47:15
[2026-10-18 22:47:15,654.654 INFO    ] 2026-10-18 22:47:15
[2026-10-18 22:47:15,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:47:15,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:47:15,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:47:16,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:47:16,196.196 INFO    ] time= 18/10/2026 22:47:16
[2026-10-18 22:47:16,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:47:16,220.220 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:47:16,349.349 INFO    ] No existing commands found in stream
[2026-10-18 22:47:21,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:47:21,364.364 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-18 22:47:24,444.444 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:47:24,447.447 INFO    ] Checking for system updates...
[2026-10-18 22:47:24,482.482 INFO    ] 200
[2026-10-18 22:47:24,485.485 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:47:24,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:47:24,538.538 INFO    ] No update needed
[2026-10-18 22:47:24,541.541 INFO    ] Checking for camera pi updates...
[2026-10-18 22:47:24,577.577 INFO    ] 200
[2026-10-18 22:47:24,579.579 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:47:24,621.621 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:47:24,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:47:24,666.666 INFO    ] No camera update needed
[2026-10-18 22:47:24,669.669 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:47:24,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:47:24,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:47:24,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:47:26,722.722 INFO    ] ================================================
[2026-10-18 22:47:26,737.737 INFO    ] Launching Daemon at Sun Oct 18 22:47:26 IST 2026
[2026-10-18 22:47:26,748.748 INFO    ] ================================================
[2026-10-18 22:47:27,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:47:27
[2026-10-18 22:47:28,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:47:28,312.312 INFO    ] Initializing speech engine...
[2026-10-18 22:47:28,319.319 INFO    ] 2026-10-18 22:47:28
[2026-10-18 22:47:28,565.565 INFO    ] 2026-10-18 22:47:28
[2026-10-18 22:47:28,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:47:28,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:47:28,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:47:29,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:47:29,130.130 INFO    ] time= 18/10/2026 22:47:29
[2026-10-18 22:47:29,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:47:29,155.155 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:47:29,282.282 INFO    ] No existing commands found in stream
[2026-10-18 22:47:34,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:47:34,301.301 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-18 22:47:38,672.672 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:47:38,674.674 INFO    ] Checking for system updates...
[2026-10-18 22:47:38,709.709 INFO    ] 200
[2026-10-18 22:47:38,712.712 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:47:38,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:47:38,765.765 INFO    ] No update needed
[2026-10-18 22:47:38,767.767 INFO    ] Checking for camera pi updates...
[2026-10-18 22:47:38,803.803 INFO    ] 200
[2026-10-18 22:47:38,805.805 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:47:38,848.848 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:47:38,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:47:38,892.892 INFO    ] No camera update needed
[2026-10-18 22:47:38,894.894 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:47:38,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:47:38,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:47:38,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:47:40,945.945 INFO    ] ================================================
[2026-10-18 22:47:40,961.961 INFO    ] Launching Daemon at Sun Oct 18 22:47:40 IST 2026
[2026-10-18 22:47:40,971.971 INFO    ] ================================================
[2026-10-18 22:47:41,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:47:41
[2026-10-18 22:47:42,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:47:42,520.520 INFO    ] Initializing speech engine...
[2026-10-18 22:47:42,529.529 INFO    ] 2026-10-18 22:47:42
[2026-10-18 22:47:42,783.783 INFO    ] 2026-10-18 22:47:42
[2026-10-18 22:47:42,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:47:43,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:47:43,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:47:43,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:47:43,274.274 INFO    ] time= 18/10/2026 22:47:43
[2026-10-18 22:47:43,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:47:43,370.370 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:47:43,519.519 INFO    ] No existing commands found in stream
[2026-10-18 22:47:48,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:47:48,537.537 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-18 22:47:51,341.341 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:47:51,344.344 INFO    ] Checking for system updates...
[2026-10-18 22:47:51,381.381 INFO    ] 200
[2026-10-18 22:47:51,384.384 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:47:51,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:47:51,443.443 INFO    ] No update needed
[2026-10-18 22:47:51,446.446 INFO    ] Checking for camera pi updates...
[2026-10-18 22:47:51,479.479 INFO    ] 200
[2026-10-18 22:47:51,482.482 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:47:51,525.525 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:47:51,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:47:51,569.569 INFO    ] No camera update needed
[2026-10-18 22:47:51,572.572 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:47:51,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:47:51,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:47:51,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:47:53,622.622 INFO    ] ================================================
[2026-10-18 22:47:53,638.638 INFO    ] Launching Daemon at Sun Oct 18 22:47:53 IST 2026
[2026-10-18 22:47:53,648.648 INFO    ] ================================================
[2026-10-18 22:47:54,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:47:54
[2026-10-18 22:47:54,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:47:55,150.150 INFO    ] Initializing speech engine...
[2026-10-18 22:47:55,158.158 INFO    ] 2026-10-18 22:47:55
[2026-10-18 22:47:55,416.416 INFO    ] 2026-10-18 22:47:55
[2026-10-18 22:47:55,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:47:55,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:47:55,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:47:55,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:47:55,978.978 INFO    ] time= 18/10/2026 22:47:55
[2026-10-18 22:47:55,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:47:56,005.005 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:47:56,154.154 INFO    ] No existing commands found in stream
[2026-10-18 22:48:01,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:48:01,174.174 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-18 22:48:03,814.814 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:48:03,817.817 INFO    ] Checking for system updates...
[2026-10-18 22:48:03,853.853 INFO    ] 200
[2026-10-18 22:48:03,856.856 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:48:03,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:48:03,910.910 INFO    ] No update needed
[2026-10-18 22:48:03,912.912 INFO    ] Checking for camera pi updates...
[2026-10-18 22:48:03,946.946 INFO    ] 200
[2026-10-18 22:48:03,948.948 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:48:03,988.988 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:48:04,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:48:04,133.133 INFO    ] No camera update needed
[2026-10-18 22:48:04,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:48:04,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:48:04,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:48:04,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:48:06,188.188 INFO    ] ================================================
[2026-10-18 22:48:06,204.204 INFO    ] Launching Daemon at Sun Oct 18 22:48:06 IST 2026
[2026-10-18 22:48:06,215.215 INFO    ] ================================================
[2026-10-18 22:48:06,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:48:06
[2026-10-18 22:48:07,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:48:07,619.619 INFO    ] Initializing speech engine...
[2026-10-18 22:48:07,627.627 INFO    ] 2026-10-18 22:48:07
[2026-10-18 22:48:07,902.902 INFO    ] 2026-10-18 22:48:07
[2026-10-18 22:48:07,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:48:08,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:48:08,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:48:08,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:48:08,430.430 INFO    ] time= 18/10/2026 22:48:08
[2026-10-18 22:48:08,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:48:08,488.488 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:48:08,644.644 INFO    ] No existing commands found in stream
[2026-10-18 22:48:13,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:48:13,679.679 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-18 22:48:15,578.578 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:48:15,581.581 INFO    ] Checking for system updates...
[2026-10-18 22:48:15,617.617 INFO    ] 200
[2026-10-18 22:48:15,620.620 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:48:15,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:48:15,681.681 INFO    ] No update needed
[2026-10-18 22:48:15,684.684 INFO    ] Checking for camera pi updates...
[2026-10-18 22:48:15,720.720 INFO    ] 200
[2026-10-18 22:48:15,723.723 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:48:15,763.763 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:48:15,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:48:15,811.811 INFO    ] No camera update needed
[2026-10-18 22:48:15,813.813 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:48:15,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:48:15,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:48:15,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:48:17,871.871 INFO    ] ================================================
[2026-10-18 22:48:17,890.890 INFO    ] Launching Daemon at Sun Oct 18 22:48:17 IST 2026
[2026-10-18 22:48:17,901.901 INFO    ] ================================================
[2026-10-18 22:48:18,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:48:18
[2026-10-18 22:48:19,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:48:19,340.340 INFO    ] Initializing speech engine...
[2026-10-18 22:48:19,349.349 INFO    ] 2026-10-18 22:48:19
[2026-10-18 22:48:19,596.596 INFO    ] 2026-10-18 22:48:19
[2026-10-18 22:48:19,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:48:19,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:48:19,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:48:20,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:48:20,149.149 INFO    ] time= 18/10/2026 22:48:20
[2026-10-18 22:48:20,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:48:20,176.176 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:48:20,306.306 INFO    ] No existing commands found in stream
[2026-10-18 22:48:25,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:48:25,332.332 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-18 22:48:27,544.544 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:48:27,547.547 INFO    ] Checking for system updates...
[2026-10-18 22:48:27,582.582 INFO    ] 200
[2026-10-18 22:48:27,585.585 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:48:27,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:48:27,639.639 INFO    ] No update needed
[2026-10-18 22:48:27,642.642 INFO    ] Checking for camera pi updates...
[2026-10-18 22:48:27,675.675 INFO    ] 200
[2026-10-18 22:48:27,677.677 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:48:27,722.722 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:48:27,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:48:27,764.764 INFO    ] No camera update needed
[2026-10-18 22:48:27,766.766 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:48:27,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:48:27,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:48:27,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:48:29,817.817 INFO    ] ================================================
[2026-10-18 22:48:29,833.833 INFO    ] Launching Daemon at Sun Oct 18 22:48:29 IST 2026
[2026-10-18 22:48:29,844.844 INFO    ] ================================================
[2026-10-18 22:48:30,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:48:30
[2026-10-18 22:48:31,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:48:31,285.285 INFO    ] Initializing speech engine...
[2026-10-18 22:48:31,303.303 INFO    ] 2026-10-18 22:48:31
[2026-10-18 22:48:31,554.554 INFO    ] 2026-10-18 22:48:31
[2026-10-18 22:48:31,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:48:31,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:48:31,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:48:32,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:48:32,068.068 INFO    ] time= 18/10/2026 22:48:32
[2026-10-18 22:48:32,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:48:32,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:48:32,316.316 INFO    ] No existing commands found in stream
[2026-10-18 22:48:37,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:48:37,341.341 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-18 22:48:38,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:48:38,159.159 INFO    ] Checking for system updates...
[2026-10-18 22:48:38,197.197 INFO    ] 200
[2026-10-18 22:48:38,199.199 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:48:38,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:48:38,260.260 INFO    ] No update needed
[2026-10-18 22:48:38,263.263 INFO    ] Checking for camera pi updates...
[2026-10-18 22:48:38,296.296 INFO    ] 200
[2026-10-18 22:48:38,299.299 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:48:38,340.340 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:48:38,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:48:38,384.384 INFO    ] No camera update needed
[2026-10-18 22:48:38,387.387 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:48:38,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:48:38,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:48:38,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:48:40,446.446 INFO    ] ================================================
[2026-10-18 22:48:40,461.461 INFO    ] Launching Daemon at Sun Oct 18 22:48:40 IST 2026
[2026-10-18 22:48:40,472.472 INFO    ] ================================================
[2026-10-18 22:48:41,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:48:41
[2026-10-18 22:48:41,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:48:41,911.911 INFO    ] Initializing speech engine...
[2026-10-18 22:48:41,917.917 INFO    ] 2026-10-18 22:48:41
[2026-10-18 22:48:42,188.188 INFO    ] 2026-10-18 22:48:42
[2026-10-18 22:48:42,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:48:42,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:48:42,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:48:42,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:48:42,742.742 INFO    ] time= 18/10/2026 22:48:42
[2026-10-18 22:48:42,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:48:42,765.765 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:48:42,902.902 INFO    ] No existing commands found in stream
[2026-10-18 22:48:47,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:48:47,931.931 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-18 22:48:49,297.297 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:48:49,300.300 INFO    ] Checking for system updates...
[2026-10-18 22:48:49,340.340 INFO    ] 200
[2026-10-18 22:48:49,342.342 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:48:49,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:48:49,403.403 INFO    ] No update needed
[2026-10-18 22:48:49,405.405 INFO    ] Checking for camera pi updates...
[2026-10-18 22:48:49,437.437 INFO    ] 200
[2026-10-18 22:48:49,440.440 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:48:49,485.485 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:48:49,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:48:49,531.531 INFO    ] No camera update needed
[2026-10-18 22:48:49,533.533 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:48:49,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:48:49,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:48:49,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:48:51,584.584 INFO    ] ================================================
[2026-10-18 22:48:51,599.599 INFO    ] Launching Daemon at Sun Oct 18 22:48:51 IST 2026
[2026-10-18 22:48:51,610.610 INFO    ] ================================================
[2026-10-18 22:48:52,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:48:52
[2026-10-18 22:48:52,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:48:53,093.093 INFO    ] Initializing speech engine...
[2026-10-18 22:48:53,103.103 INFO    ] 2026-10-18 22:48:53
[2026-10-18 22:48:53,364.364 INFO    ] 2026-10-18 22:48:53
[2026-10-18 22:48:53,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:48:53,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:48:53,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:48:53,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:48:53,915.915 INFO    ] time= 18/10/2026 22:48:53
[2026-10-18 22:48:53,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:48:53,939.939 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:48:54,068.068 INFO    ] No existing commands found in stream
[2026-10-18 22:48:59,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:48:59,086.086 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-18 22:49:00,732.732 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:49:00,735.735 INFO    ] Checking for system updates...
[2026-10-18 22:49:00,771.771 INFO    ] 200
[2026-10-18 22:49:00,774.774 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:49:00,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:49:00,828.828 INFO    ] No update needed
[2026-10-18 22:49:00,831.831 INFO    ] Checking for camera pi updates...
[2026-10-18 22:49:00,865.865 INFO    ] 200
[2026-10-18 22:49:00,868.868 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:49:00,907.907 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:49:00,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:49:00,950.950 INFO    ] No camera update needed
[2026-10-18 22:49:00,952.952 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:49:00,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:49:00,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:49:00,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:49:03,021.021 INFO    ] ================================================
[2026-10-18 22:49:03,048.048 INFO    ] Launching Daemon at Sun Oct 18 22:49:03 IST 2026
[2026-10-18 22:49:03,070.070 INFO    ] ================================================
[2026-10-18 22:49:03,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:49:03
[2026-10-18 22:49:04,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:49:04,652.652 INFO    ] Initializing speech engine...
[2026-10-18 22:49:04,665.665 INFO    ] 2026-10-18 22:49:04
[2026-10-18 22:49:04,952.952 INFO    ] 2026-10-18 22:49:04
[2026-10-18 22:49:04,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:49:05,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:49:05,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:49:05,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:49:05,366.366 INFO    ] time= 18/10/2026 22:49:05
[2026-10-18 22:49:05,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:49:05,377.377 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:49:05,524.524 INFO    ] No existing commands found in stream
[2026-10-18 22:49:10,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:49:10,557.557 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-18 22:49:11,265.265 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:49:11,267.267 INFO    ] Checking for system updates...
[2026-10-18 22:49:11,302.302 INFO    ] 200
[2026-10-18 22:49:11,305.305 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:49:11,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:49:11,358.358 INFO    ] No update needed
[2026-10-18 22:49:11,360.360 INFO    ] Checking for camera pi updates...
[2026-10-18 22:49:11,397.397 INFO    ] 200
[2026-10-18 22:49:11,399.399 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:49:11,440.440 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:49:11,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:49:11,485.485 INFO    ] No camera update needed
[2026-10-18 22:49:11,487.487 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:49:11,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:49:11,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:49:11,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:49:13,540.540 INFO    ] ================================================
[2026-10-18 22:49:13,556.556 INFO    ] Launching Daemon at Sun Oct 18 22:49:13 IST 2026
[2026-10-18 22:49:13,566.566 INFO    ] ================================================
[2026-10-18 22:49:14,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:49:14
[2026-10-18 22:49:14,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:49:14,972.972 INFO    ] Initializing speech engine...
[2026-10-18 22:49:14,980.980 INFO    ] 2026-10-18 22:49:14
[2026-10-18 22:49:15,270.270 INFO    ] 2026-10-18 22:49:15
[2026-10-18 22:49:15,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:49:15,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:49:15,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:49:15,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:49:15,761.761 INFO    ] time= 18/10/2026 22:49:15
[2026-10-18 22:49:15,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:49:15,864.864 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:49:16,016.016 INFO    ] No existing commands found in stream
[2026-10-18 22:49:21,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:49:21,045.045 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-18 22:49:25,246.246 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:49:25,249.249 INFO    ] Checking for system updates...
[2026-10-18 22:49:25,287.287 INFO    ] 200
[2026-10-18 22:49:25,290.290 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:49:25,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:49:25,351.351 INFO    ] No update needed
[2026-10-18 22:49:25,354.354 INFO    ] Checking for camera pi updates...
[2026-10-18 22:49:25,386.386 INFO    ] 200
[2026-10-18 22:49:25,389.389 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:49:25,428.428 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:49:25,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:49:25,471.471 INFO    ] No camera update needed
[2026-10-18 22:49:25,474.474 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:49:25,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:49:25,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:49:25,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:49:27,525.525 INFO    ] ================================================
[2026-10-18 22:49:27,541.541 INFO    ] Launching Daemon at Sun Oct 18 22:49:27 IST 2026
[2026-10-18 22:49:27,551.551 INFO    ] ================================================
[2026-10-18 22:49:28,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:49:28
[2026-10-18 22:49:28,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:49:29,031.031 INFO    ] Initializing speech engine...
[2026-10-18 22:49:29,042.042 INFO    ] 2026-10-18 22:49:29
[2026-10-18 22:49:29,291.291 INFO    ] 2026-10-18 22:49:29
[2026-10-18 22:49:29,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:49:29,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:49:29,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:49:29,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:49:29,847.847 INFO    ] time= 18/10/2026 22:49:29
[2026-10-18 22:49:29,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:49:29,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:49:30,002.002 INFO    ] No existing commands found in stream
[2026-10-18 22:49:35,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:49:35,028.028 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-18 22:49:36,221.221 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:49:36,223.223 INFO    ] Checking for system updates...
[2026-10-18 22:49:36,258.258 INFO    ] 200
[2026-10-18 22:49:36,261.261 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:49:36,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:49:36,332.332 INFO    ] No update needed
[2026-10-18 22:49:36,334.334 INFO    ] Checking for camera pi updates...
[2026-10-18 22:49:36,371.371 INFO    ] 200
[2026-10-18 22:49:36,374.374 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:49:36,413.413 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:49:36,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:49:36,457.457 INFO    ] No camera update needed
[2026-10-18 22:49:36,460.460 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:49:36,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:49:36,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:49:36,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:49:38,517.517 INFO    ] ================================================
[2026-10-18 22:49:38,533.533 INFO    ] Launching Daemon at Sun Oct 18 22:49:38 IST 2026
[2026-10-18 22:49:38,545.545 INFO    ] ================================================
[2026-10-18 22:49:39,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:49:39
[2026-10-18 22:49:39,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:49:40,173.173 INFO    ] Initializing speech engine...
[2026-10-18 22:49:40,188.188 INFO    ] 2026-10-18 22:49:40
[2026-10-18 22:49:40,525.525 INFO    ] 2026-10-18 22:49:40
[2026-10-18 22:49:40,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:49:40,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:49:40,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:49:41,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:49:41,068.068 INFO    ] time= 18/10/2026 22:49:41
[2026-10-18 22:49:41,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:49:41,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:49:41,226.226 INFO    ] No existing commands found in stream
[2026-10-18 22:49:46,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:49:46,249.249 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-18 22:49:48,805.805 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:49:48,807.807 INFO    ] Checking for system updates...
[2026-10-18 22:49:48,842.842 INFO    ] 200
[2026-10-18 22:49:48,844.844 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:49:48,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:49:48,903.903 INFO    ] No update needed
[2026-10-18 22:49:48,905.905 INFO    ] Checking for camera pi updates...
[2026-10-18 22:49:48,938.938 INFO    ] 200
[2026-10-18 22:49:48,941.941 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:49:48,984.984 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:49:49,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:49:49,028.028 INFO    ] No camera update needed
[2026-10-18 22:49:49,030.030 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:49:49,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:49:49,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:49:49,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:49:51,082.082 INFO    ] ================================================
[2026-10-18 22:49:51,097.097 INFO    ] Launching Daemon at Sun Oct 18 22:49:51 IST 2026
[2026-10-18 22:49:51,108.108 INFO    ] ================================================
[2026-10-18 22:49:51,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:49:51
[2026-10-18 22:49:52,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:49:52,540.540 INFO    ] Initializing speech engine...
[2026-10-18 22:49:52,549.549 INFO    ] 2026-10-18 22:49:52
[2026-10-18 22:49:52,796.796 INFO    ] 2026-10-18 22:49:52
[2026-10-18 22:49:52,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:49:53,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:49:53,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:49:53,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:49:53,352.352 INFO    ] time= 18/10/2026 22:49:53
[2026-10-18 22:49:53,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:49:53,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:49:53,520.520 INFO    ] No existing commands found in stream
[2026-10-18 22:49:58,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:49:58,555.555 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-18 22:49:59,357.357 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:49:59,360.360 INFO    ] Checking for system updates...
[2026-10-18 22:49:59,398.398 INFO    ] 200
[2026-10-18 22:49:59,401.401 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:49:59,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:49:59,461.461 INFO    ] No update needed
[2026-10-18 22:49:59,463.463 INFO    ] Checking for camera pi updates...
[2026-10-18 22:49:59,499.499 INFO    ] 200
[2026-10-18 22:49:59,502.502 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:49:59,545.545 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:49:59,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:49:59,587.587 INFO    ] No camera update needed
[2026-10-18 22:49:59,590.590 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:49:59,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:49:59,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:49:59,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:50:01,641.641 INFO    ] ================================================
[2026-10-18 22:50:01,656.656 INFO    ] Launching Daemon at Sun Oct 18 22:50:01 IST 2026
[2026-10-18 22:50:01,674.674 INFO    ] ================================================
[2026-10-18 22:50:02,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:50:02
[2026-10-18 22:50:03,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:50:03,825.825 INFO    ] Initializing speech engine...
[2026-10-18 22:50:03,832.832 INFO    ] 2026-10-18 22:50:03
[2026-10-18 22:50:04,136.136 INFO    ] 2026-10-18 22:50:04
[2026-10-18 22:50:04,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:50:04,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:50:04,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:50:04,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:50:04,646.646 INFO    ] time= 18/10/2026 22:50:04
[2026-10-18 22:50:04,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:50:04,725.725 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:50:04,858.858 INFO    ] No existing commands found in stream
[2026-10-18 22:50:09,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:50:09,883.883 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-18 22:50:13,028.028 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:50:13,031.031 INFO    ] Checking for system updates...
[2026-10-18 22:50:13,066.066 INFO    ] 200
[2026-10-18 22:50:13,069.069 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:50:13,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:50:13,122.122 INFO    ] No update needed
[2026-10-18 22:50:13,125.125 INFO    ] Checking for camera pi updates...
[2026-10-18 22:50:13,158.158 INFO    ] 200
[2026-10-18 22:50:13,160.160 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:50:13,204.204 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:50:13,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:50:13,344.344 INFO    ] No camera update needed
[2026-10-18 22:50:13,347.347 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:50:13,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:50:13,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:50:13,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:50:15,403.403 INFO    ] ================================================
[2026-10-18 22:50:15,418.418 INFO    ] Launching Daemon at Sun Oct 18 22:50:15 IST 2026
[2026-10-18 22:50:15,428.428 INFO    ] ================================================
[2026-10-18 22:50:16,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:50:16
[2026-10-18 22:50:16,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:50:16,898.898 INFO    ] Initializing speech engine...
[2026-10-18 22:50:16,908.908 INFO    ] 2026-10-18 22:50:16
[2026-10-18 22:50:17,157.157 INFO    ] 2026-10-18 22:50:17
[2026-10-18 22:50:17,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:50:17,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:50:17,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:50:17,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:50:17,658.658 INFO    ] time= 18/10/2026 22:50:17
[2026-10-18 22:50:17,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:50:17,732.732 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:50:17,868.868 INFO    ] No existing commands found in stream
[2026-10-18 22:50:22,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:50:22,896.896 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-18 22:50:24,244.244 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:50:24,246.246 INFO    ] Checking for system updates...
[2026-10-18 22:50:24,284.284 INFO    ] 200
[2026-10-18 22:50:24,287.287 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:50:24,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:50:24,342.342 INFO    ] No update needed
[2026-10-18 22:50:24,345.345 INFO    ] Checking for camera pi updates...
[2026-10-18 22:50:24,382.382 INFO    ] 200
[2026-10-18 22:50:24,385.385 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:50:24,431.431 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:50:24,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:50:24,479.479 INFO    ] No camera update needed
[2026-10-18 22:50:24,482.482 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:50:24,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:50:24,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:50:24,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:50:26,542.542 INFO    ] ================================================
[2026-10-18 22:50:26,561.561 INFO    ] Launching Daemon at Sun Oct 18 22:50:26 IST 2026
[2026-10-18 22:50:26,579.579 INFO    ] ================================================
[2026-10-18 22:50:27,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:50:27
[2026-10-18 22:50:27,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:50:28,223.223 INFO    ] Initializing speech engine...
[2026-10-18 22:50:28,245.245 INFO    ] 2026-10-18 22:50:28
[2026-10-18 22:50:28,511.511 INFO    ] 2026-10-18 22:50:28
[2026-10-18 22:50:28,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:50:28,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:50:28,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:50:28,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:50:28,967.967 INFO    ] time= 18/10/2026 22:50:28
[2026-10-18 22:50:28,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:50:29,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:50:29,164.164 INFO    ] No existing commands found in stream
[2026-10-18 22:50:34,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:50:34,179.179 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-18 22:50:37,975.975 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:50:37,978.978 INFO    ] Checking for system updates...
[2026-10-18 22:50:38,013.013 INFO    ] 200
[2026-10-18 22:50:38,015.015 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:50:38,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:50:38,075.075 INFO    ] No update needed
[2026-10-18 22:50:38,077.077 INFO    ] Checking for camera pi updates...
[2026-10-18 22:50:38,109.109 INFO    ] 200
[2026-10-18 22:50:38,112.112 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:50:38,157.157 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:50:38,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:50:38,200.200 INFO    ] No camera update needed
[2026-10-18 22:50:38,203.203 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:50:38,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:50:38,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:50:38,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:50:40,254.254 INFO    ] ================================================
[2026-10-18 22:50:40,269.269 INFO    ] Launching Daemon at Sun Oct 18 22:50:40 IST 2026
[2026-10-18 22:50:40,280.280 INFO    ] ================================================
[2026-10-18 22:50:40,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:50:40
[2026-10-18 22:50:41,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:50:41,789.789 INFO    ] Initializing speech engine...
[2026-10-18 22:50:41,799.799 INFO    ] 2026-10-18 22:50:41
[2026-10-18 22:50:42,067.067 INFO    ] 2026-10-18 22:50:42
[2026-10-18 22:50:42,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:50:42,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:50:42,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:50:42,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:50:42,559.559 INFO    ] time= 18/10/2026 22:50:42
[2026-10-18 22:50:42,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:50:42,673.673 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:50:42,785.785 INFO    ] No existing commands found in stream
[2026-10-18 22:50:47,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:50:47,826.826 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-18 22:50:51,875.875 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:50:51,878.878 INFO    ] Checking for system updates...
[2026-10-18 22:50:51,916.916 INFO    ] 200
[2026-10-18 22:50:51,918.918 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:50:51,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:50:51,974.974 INFO    ] No update needed
[2026-10-18 22:50:51,976.976 INFO    ] Checking for camera pi updates...
[2026-10-18 22:50:52,013.013 INFO    ] 200
[2026-10-18 22:50:52,015.015 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:50:52,055.055 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:50:52,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:50:52,086.086 INFO    ] No camera update needed
[2026-10-18 22:50:52,089.089 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:50:52,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:50:52,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:50:52,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:50:54,140.140 INFO    ] ================================================
[2026-10-18 22:50:54,156.156 INFO    ] Launching Daemon at Sun Oct 18 22:50:54 IST 2026
[2026-10-18 22:50:54,167.167 INFO    ] ================================================
[2026-10-18 22:50:54,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:50:54
[2026-10-18 22:50:55,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:50:55,742.742 INFO    ] Initializing speech engine...
[2026-10-18 22:50:55,751.751 INFO    ] 2026-10-18 22:50:55
[2026-10-18 22:50:55,999.999 INFO    ] 2026-10-18 22:50:55
[2026-10-18 22:50:56,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:50:56,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:50:56,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:50:56,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:50:56,479.479 INFO    ] time= 18/10/2026 22:50:56
[2026-10-18 22:50:56,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:50:56,573.573 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:50:56,710.710 INFO    ] No existing commands found in stream
[2026-10-18 22:51:01,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:51:01,735.735 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-18 22:51:02,808.808 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:51:02,810.810 INFO    ] Checking for system updates...
[2026-10-18 22:51:02,851.851 INFO    ] 200
[2026-10-18 22:51:02,855.855 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:51:02,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:51:02,924.924 INFO    ] No update needed
[2026-10-18 22:51:02,927.927 INFO    ] Checking for camera pi updates...
[2026-10-18 22:51:02,976.976 INFO    ] 200
[2026-10-18 22:51:02,978.978 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:51:03,027.027 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:51:03,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:51:03,072.072 INFO    ] No camera update needed
[2026-10-18 22:51:03,074.074 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:51:03,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:51:03,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:51:03,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:51:05,129.129 INFO    ] ================================================
[2026-10-18 22:51:05,145.145 INFO    ] Launching Daemon at Sun Oct 18 22:51:05 IST 2026
[2026-10-18 22:51:05,157.157 INFO    ] ================================================
[2026-10-18 22:51:05,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:51:05
[2026-10-18 22:51:06,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:51:06,583.583 INFO    ] Initializing speech engine...
[2026-10-18 22:51:06,591.591 INFO    ] 2026-10-18 22:51:06
[2026-10-18 22:51:06,882.882 INFO    ] 2026-10-18 22:51:06
[2026-10-18 22:51:06,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:51:07,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:51:07,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:51:07,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:51:07,378.378 INFO    ] time= 18/10/2026 22:51:07
[2026-10-18 22:51:07,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:51:07,486.486 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:51:07,569.569 INFO    ] No existing commands found in stream
[2026-10-18 22:51:12,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:51:12,583.583 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-18 22:51:17,002.002 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:51:17,004.004 INFO    ] Checking for system updates...
[2026-10-18 22:51:17,042.042 INFO    ] 200
[2026-10-18 22:51:17,044.044 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:51:17,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:51:17,098.098 INFO    ] No update needed
[2026-10-18 22:51:17,100.100 INFO    ] Checking for camera pi updates...
[2026-10-18 22:51:17,136.136 INFO    ] 200
[2026-10-18 22:51:17,138.138 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:51:17,179.179 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:51:17,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:51:17,222.222 INFO    ] No camera update needed
[2026-10-18 22:51:17,225.225 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:51:17,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:51:17,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:51:17,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:51:19,277.277 INFO    ] ================================================
[2026-10-18 22:51:19,292.292 INFO    ] Launching Daemon at Sun Oct 18 22:51:19 IST 2026
[2026-10-18 22:51:19,303.303 INFO    ] ================================================
[2026-10-18 22:51:19,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:51:19
[2026-10-18 22:51:20,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:51:20,852.852 INFO    ] Initializing speech engine...
[2026-10-18 22:51:20,874.874 INFO    ] 2026-10-18 22:51:20
[2026-10-18 22:51:21,156.156 INFO    ] 2026-10-18 22:51:21
[2026-10-18 22:51:21,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:51:21,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:51:21,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:51:21,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:51:21,685.685 INFO    ] time= 18/10/2026 22:51:21
[2026-10-18 22:51:21,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:51:21,725.725 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:51:21,852.852 INFO    ] No existing commands found in stream
[2026-10-18 22:51:26,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:51:26,880.880 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-18 22:51:29,678.678 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:51:29,681.681 INFO    ] Checking for system updates...
[2026-10-18 22:51:29,716.716 INFO    ] 200
[2026-10-18 22:51:29,718.718 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:51:29,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:51:29,773.773 INFO    ] No update needed
[2026-10-18 22:51:29,776.776 INFO    ] Checking for camera pi updates...
[2026-10-18 22:51:29,808.808 INFO    ] 200
[2026-10-18 22:51:29,811.811 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:51:29,850.850 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:51:29,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:51:29,894.894 INFO    ] No camera update needed
[2026-10-18 22:51:29,896.896 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:51:29,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:51:29,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:51:29,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:51:31,949.949 INFO    ] ================================================
[2026-10-18 22:51:31,966.966 INFO    ] Launching Daemon at Sun Oct 18 22:51:31 IST 2026
[2026-10-18 22:51:31,979.979 INFO    ] ================================================
[2026-10-18 22:51:32,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:51:32
[2026-10-18 22:51:33,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:51:33,489.489 INFO    ] Initializing speech engine...
[2026-10-18 22:51:33,495.495 INFO    ] 2026-10-18 22:51:33
[2026-10-18 22:51:33,769.769 INFO    ] 2026-10-18 22:51:33
[2026-10-18 22:51:33,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:51:34,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:51:34,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:51:34,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:51:34,257.257 INFO    ] time= 18/10/2026 22:51:34
[2026-10-18 22:51:34,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:51:34,345.345 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:51:34,498.498 INFO    ] No existing commands found in stream
[2026-10-18 22:51:39,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:51:39,520.520 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-18 22:51:41,101.101 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:51:41,103.103 INFO    ] Checking for system updates...
[2026-10-18 22:51:41,142.142 INFO    ] 200
[2026-10-18 22:51:41,144.144 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:51:41,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:51:41,197.197 INFO    ] No update needed
[2026-10-18 22:51:41,200.200 INFO    ] Checking for camera pi updates...
[2026-10-18 22:51:41,237.237 INFO    ] 200
[2026-10-18 22:51:41,239.239 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:51:41,282.282 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:51:41,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:51:41,327.327 INFO    ] No camera update needed
[2026-10-18 22:51:41,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:51:41,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:51:41,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:51:41,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:51:43,380.380 INFO    ] ================================================
[2026-10-18 22:51:43,396.396 INFO    ] Launching Daemon at Sun Oct 18 22:51:43 IST 2026
[2026-10-18 22:51:43,406.406 INFO    ] ================================================
[2026-10-18 22:51:43,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:51:43
[2026-10-18 22:51:44,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:51:44,860.860 INFO    ] Initializing speech engine...
[2026-10-18 22:51:44,869.869 INFO    ] 2026-10-18 22:51:44
[2026-10-18 22:51:45,120.120 INFO    ] 2026-10-18 22:51:45
[2026-10-18 22:51:45,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:51:45,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:51:45,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:51:45,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:51:45,677.677 INFO    ] time= 18/10/2026 22:51:45
[2026-10-18 22:51:45,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:51:45,686.686 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:51:45,831.831 INFO    ] No existing commands found in stream
[2026-10-18 22:51:50,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:51:50,849.849 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-18 22:51:54,413.413 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:51:54,416.416 INFO    ] Checking for system updates...
[2026-10-18 22:51:54,457.457 INFO    ] 200
[2026-10-18 22:51:54,460.460 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:51:54,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:51:54,517.517 INFO    ] No update needed
[2026-10-18 22:51:54,520.520 INFO    ] Checking for camera pi updates...
[2026-10-18 22:51:54,555.555 INFO    ] 200
[2026-10-18 22:51:54,557.557 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:51:54,604.604 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:51:54,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:51:54,647.647 INFO    ] No camera update needed
[2026-10-18 22:51:54,650.650 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:51:54,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:51:54,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:51:54,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:51:56,701.701 INFO    ] ================================================
[2026-10-18 22:51:56,717.717 INFO    ] Launching Daemon at Sun Oct 18 22:51:56 IST 2026
[2026-10-18 22:51:56,728.728 INFO    ] ================================================
[2026-10-18 22:51:57,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:51:57
[2026-10-18 22:51:57,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:51:58,209.209 INFO    ] Initializing speech engine...
[2026-10-18 22:51:58,218.218 INFO    ] 2026-10-18 22:51:58
[2026-10-18 22:51:58,471.471 INFO    ] 2026-10-18 22:51:58
[2026-10-18 22:51:58,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:51:58,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:51:58,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:51:58,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:51:59,019.019 INFO    ] time= 18/10/2026 22:51:58
[2026-10-18 22:51:59,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:51:59,040.040 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:51:59,174.174 INFO    ] No existing commands found in stream
[2026-10-18 22:52:04,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:52:04,200.200 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-18 22:52:07,995.995 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:52:07,998.998 INFO    ] Checking for system updates...
[2026-10-18 22:52:08,033.033 INFO    ] 200
[2026-10-18 22:52:08,035.035 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:52:08,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:52:08,088.088 INFO    ] No update needed
[2026-10-18 22:52:08,091.091 INFO    ] Checking for camera pi updates...
[2026-10-18 22:52:08,124.124 INFO    ] 200
[2026-10-18 22:52:08,126.126 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:52:08,167.167 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:52:08,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:52:08,210.210 INFO    ] No camera update needed
[2026-10-18 22:52:08,212.212 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:52:08,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:52:08,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:52:08,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:52:10,263.263 INFO    ] ================================================
[2026-10-18 22:52:10,279.279 INFO    ] Launching Daemon at Sun Oct 18 22:52:10 IST 2026
[2026-10-18 22:52:10,290.290 INFO    ] ================================================
[2026-10-18 22:52:10,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:52:10
[2026-10-18 22:52:11,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:52:11,715.715 INFO    ] Initializing speech engine...
[2026-10-18 22:52:11,721.721 INFO    ] 2026-10-18 22:52:11
[2026-10-18 22:52:11,979.979 INFO    ] 2026-10-18 22:52:11
[2026-10-18 22:52:12,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:52:12,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:52:12,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:52:12,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:52:12,519.519 INFO    ] time= 18/10/2026 22:52:12
[2026-10-18 22:52:12,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:52:12,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:52:12,671.671 INFO    ] No existing commands found in stream
[2026-10-18 22:52:17,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:52:17,688.688 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-18 22:52:20,296.296 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:52:20,299.299 INFO    ] Checking for system updates...
[2026-10-18 22:52:20,334.334 INFO    ] 200
[2026-10-18 22:52:20,336.336 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:52:20,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:52:20,396.396 INFO    ] No update needed
[2026-10-18 22:52:20,398.398 INFO    ] Checking for camera pi updates...
[2026-10-18 22:52:20,430.430 INFO    ] 200
[2026-10-18 22:52:20,433.433 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:52:20,476.476 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:52:20,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:52:20,617.617 INFO    ] No camera update needed
[2026-10-18 22:52:20,620.620 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:52:20,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:52:20,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:52:20,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:52:22,674.674 INFO    ] ================================================
[2026-10-18 22:52:22,689.689 INFO    ] Launching Daemon at Sun Oct 18 22:52:22 IST 2026
[2026-10-18 22:52:22,699.699 INFO    ] ================================================
[2026-10-18 22:52:23,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:52:23
[2026-10-18 22:52:23,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:52:24,216.216 INFO    ] Initializing speech engine...
[2026-10-18 22:52:24,224.224 INFO    ] 2026-10-18 22:52:24
[2026-10-18 22:52:24,491.491 INFO    ] 2026-10-18 22:52:24
[2026-10-18 22:52:24,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:52:24,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:52:24,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:52:24,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:52:25,017.017 INFO    ] time= 18/10/2026 22:52:24
[2026-10-18 22:52:25,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:52:25,043.043 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:52:25,170.170 INFO    ] No existing commands found in stream
[2026-10-18 22:52:30,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:52:30,188.188 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-18 22:52:32,230.230 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:52:32,233.233 INFO    ] Checking for system updates...
[2026-10-18 22:52:32,270.270 INFO    ] 200
[2026-10-18 22:52:32,273.273 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:52:32,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:52:32,333.333 INFO    ] No update needed
[2026-10-18 22:52:32,335.335 INFO    ] Checking for camera pi updates...
[2026-10-18 22:52:32,384.384 INFO    ] 200
[2026-10-18 22:52:32,386.386 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:52:32,429.429 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:52:32,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:52:32,461.461 INFO    ] No camera update needed
[2026-10-18 22:52:32,463.463 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:52:32,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:52:32,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:52:32,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:52:34,518.518 INFO    ] ================================================
[2026-10-18 22:52:34,533.533 INFO    ] Launching Daemon at Sun Oct 18 22:52:34 IST 2026
[2026-10-18 22:52:34,544.544 INFO    ] ================================================
[2026-10-18 22:52:35,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:52:35
[2026-10-18 22:52:35,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:52:35,955.955 INFO    ] Initializing speech engine...
[2026-10-18 22:52:35,967.967 INFO    ] 2026-10-18 22:52:35
[2026-10-18 22:52:36,220.220 INFO    ] 2026-10-18 22:52:36
[2026-10-18 22:52:36,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:52:36,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:52:36,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:52:36,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:52:36,712.712 INFO    ] time= 18/10/2026 22:52:36
[2026-10-18 22:52:36,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:52:36,796.796 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:52:36,928.928 INFO    ] No existing commands found in stream
[2026-10-18 22:52:41,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:52:41,961.961 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-18 22:52:45,025.025 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:52:45,027.027 INFO    ] Checking for system updates...
[2026-10-18 22:52:45,063.063 INFO    ] 200
[2026-10-18 22:52:45,065.065 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:52:45,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:52:45,125.125 INFO    ] No update needed
[2026-10-18 22:52:45,127.127 INFO    ] Checking for camera pi updates...
[2026-10-18 22:52:45,163.163 INFO    ] 200
[2026-10-18 22:52:45,166.166 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:52:45,209.209 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:52:45,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:52:45,254.254 INFO    ] No camera update needed
[2026-10-18 22:52:45,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:52:45,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:52:45,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:52:45,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:52:47,309.309 INFO    ] ================================================
[2026-10-18 22:52:47,324.324 INFO    ] Launching Daemon at Sun Oct 18 22:52:47 IST 2026
[2026-10-18 22:52:47,334.334 INFO    ] ================================================
[2026-10-18 22:52:47,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:52:47
[2026-10-18 22:52:48,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:52:48,739.739 INFO    ] Initializing speech engine...
[2026-10-18 22:52:48,752.752 INFO    ] 2026-10-18 22:52:48
[2026-10-18 22:52:49,037.037 INFO    ] 2026-10-18 22:52:49
[2026-10-18 22:52:49,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:52:49,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:52:49,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:52:49,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:52:49,460.460 INFO    ] time= 18/10/2026 22:52:49
[2026-10-18 22:52:49,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:52:49,472.472 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:52:49,621.621 INFO    ] No existing commands found in stream
[2026-10-18 22:52:54,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:52:54,649.649 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-18 22:52:58,313.313 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:52:58,315.315 INFO    ] Checking for system updates...
[2026-10-18 22:52:58,353.353 INFO    ] 200
[2026-10-18 22:52:58,356.356 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:52:58,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:52:58,415.415 INFO    ] No update needed
[2026-10-18 22:52:58,417.417 INFO    ] Checking for camera pi updates...
[2026-10-18 22:52:58,453.453 INFO    ] 200
[2026-10-18 22:52:58,455.455 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:52:58,494.494 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:52:58,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:52:58,543.543 INFO    ] No camera update needed
[2026-10-18 22:52:58,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:52:58,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:52:58,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:52:58,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:53:00,597.597 INFO    ] ================================================
[2026-10-18 22:53:00,612.612 INFO    ] Launching Daemon at Sun Oct 18 22:53:00 IST 2026
[2026-10-18 22:53:00,623.623 INFO    ] ================================================
[2026-10-18 22:53:01,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:53:01
[2026-10-18 22:53:01,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:53:02,196.196 INFO    ] Initializing speech engine...
[2026-10-18 22:53:02,203.203 INFO    ] 2026-10-18 22:53:02
[2026-10-18 22:53:02,527.527 INFO    ] 2026-10-18 22:53:02
[2026-10-18 22:53:02,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:53:02,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:53:02,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:53:03,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:53:03,019.019 INFO    ] time= 18/10/2026 22:53:03
[2026-10-18 22:53:03,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:53:03,067.067 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:53:03,163.163 INFO    ] No existing commands found in stream
[2026-10-18 22:53:08,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:53:08,193.193 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-18 22:53:09,929.929 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:53:09,932.932 INFO    ] Checking for system updates...
[2026-10-18 22:53:09,968.968 INFO    ] 200
[2026-10-18 22:53:09,971.971 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:53:10,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:53:10,036.036 INFO    ] No update needed
[2026-10-18 22:53:10,039.039 INFO    ] Checking for camera pi updates...
[2026-10-18 22:53:10,073.073 INFO    ] 200
[2026-10-18 22:53:10,075.075 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:53:10,120.120 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:53:10,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:53:10,163.163 INFO    ] No camera update needed
[2026-10-18 22:53:10,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:53:10,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:53:10,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:53:10,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:53:12,220.220 INFO    ] ================================================
[2026-10-18 22:53:12,235.235 INFO    ] Launching Daemon at Sun Oct 18 22:53:12 IST 2026
[2026-10-18 22:53:12,245.245 INFO    ] ================================================
[2026-10-18 22:53:12,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:53:12
[2026-10-18 22:53:13,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:53:13,715.715 INFO    ] Initializing speech engine...
[2026-10-18 22:53:13,725.725 INFO    ] 2026-10-18 22:53:13
[2026-10-18 22:53:13,976.976 INFO    ] 2026-10-18 22:53:13
[2026-10-18 22:53:14,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:53:14,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:53:14,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:53:14,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:53:14,532.532 INFO    ] time= 18/10/2026 22:53:14
[2026-10-18 22:53:14,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:53:14,553.553 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:53:14,692.692 INFO    ] No existing commands found in stream
[2026-10-18 22:53:19,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:53:19,710.710 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-18 22:53:23,561.561 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:53:23,563.563 INFO    ] Checking for system updates...
[2026-10-18 22:53:23,603.603 INFO    ] 200
[2026-10-18 22:53:23,606.606 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:53:23,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:53:23,667.667 INFO    ] No update needed
[2026-10-18 22:53:23,670.670 INFO    ] Checking for camera pi updates...
[2026-10-18 22:53:23,707.707 INFO    ] 200
[2026-10-18 22:53:23,710.710 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:53:23,750.750 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:53:23,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:53:23,796.796 INFO    ] No camera update needed
[2026-10-18 22:53:23,798.798 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:53:23,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:53:23,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:53:23,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:53:25,851.851 INFO    ] ================================================
[2026-10-18 22:53:25,866.866 INFO    ] Launching Daemon at Sun Oct 18 22:53:25 IST 2026
[2026-10-18 22:53:25,877.877 INFO    ] ================================================
[2026-10-18 22:53:26,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:53:26
[2026-10-18 22:53:27,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:53:27,337.337 INFO    ] Initializing speech engine...
[2026-10-18 22:53:27,355.355 INFO    ] 2026-10-18 22:53:27
[2026-10-18 22:53:27,607.607 INFO    ] 2026-10-18 22:53:27
[2026-10-18 22:53:27,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:53:27,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:53:27,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:53:28,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:53:28,097.097 INFO    ] time= 18/10/2026 22:53:28
[2026-10-18 22:53:28,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:53:28,193.193 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:53:28,331.331 INFO    ] No existing commands found in stream
[2026-10-18 22:53:33,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:53:33,354.354 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-18 22:53:34,413.413 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:53:34,416.416 INFO    ] Checking for system updates...
[2026-10-18 22:53:34,452.452 INFO    ] 200
[2026-10-18 22:53:34,454.454 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:53:34,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:53:34,518.518 INFO    ] No update needed
[2026-10-18 22:53:34,521.521 INFO    ] Checking for camera pi updates...
[2026-10-18 22:53:34,556.556 INFO    ] 200
[2026-10-18 22:53:34,559.559 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:53:34,605.605 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:53:34,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:53:34,655.655 INFO    ] No camera update needed
[2026-10-18 22:53:34,658.658 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:53:34,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:53:34,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:53:34,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:53:36,714.714 INFO    ] ================================================
[2026-10-18 22:53:36,729.729 INFO    ] Launching Daemon at Sun Oct 18 22:53:36 IST 2026
[2026-10-18 22:53:36,745.745 INFO    ] ================================================
[2026-10-18 22:53:37,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:53:37
[2026-10-18 22:53:37,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:53:38,154.154 INFO    ] Initializing speech engine...
[2026-10-18 22:53:38,157.157 INFO    ] 2026-10-18 22:53:38
[2026-10-18 22:53:38,447.447 INFO    ] 2026-10-18 22:53:38
[2026-10-18 22:53:38,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:53:38,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:53:38,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:53:38,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:53:38,979.979 INFO    ] time= 18/10/2026 22:53:38
[2026-10-18 22:53:39,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:53:39,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:53:39,209.209 INFO    ] No existing commands found in stream
[2026-10-18 22:53:44,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:53:44,228.228 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-18 22:53:47,272.272 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:53:47,275.275 INFO    ] Checking for system updates...
[2026-10-18 22:53:47,312.312 INFO    ] 200
[2026-10-18 22:53:47,315.315 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:53:47,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:53:47,371.371 INFO    ] No update needed
[2026-10-18 22:53:47,373.373 INFO    ] Checking for camera pi updates...
[2026-10-18 22:53:47,411.411 INFO    ] 200
[2026-10-18 22:53:47,414.414 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:53:47,456.456 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:53:47,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:53:47,498.498 INFO    ] No camera update needed
[2026-10-18 22:53:47,500.500 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:53:47,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:53:47,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:53:47,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:53:49,555.555 INFO    ] ================================================
[2026-10-18 22:53:49,571.571 INFO    ] Launching Daemon at Sun Oct 18 22:53:49 IST 2026
[2026-10-18 22:53:49,582.582 INFO    ] ================================================
[2026-10-18 22:53:50,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:53:50
[2026-10-18 22:53:50,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:53:51,275.275 INFO    ] Initializing speech engine...
[2026-10-18 22:53:51,287.287 INFO    ] 2026-10-18 22:53:51
[2026-10-18 22:53:51,598.598 INFO    ] 2026-10-18 22:53:51
[2026-10-18 22:53:51,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:53:51,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:53:51,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:53:52,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:53:52,037.037 INFO    ] time= 18/10/2026 22:53:52
[2026-10-18 22:53:52,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:53:52,125.125 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:53:52,257.257 INFO    ] No existing commands found in stream
[2026-10-18 22:53:57,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:53:57,285.285 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-18 22:53:58,665.665 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:53:58,668.668 INFO    ] Checking for system updates...
[2026-10-18 22:53:58,704.704 INFO    ] 200
[2026-10-18 22:53:58,707.707 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:53:58,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:53:58,769.769 INFO    ] No update needed
[2026-10-18 22:53:58,772.772 INFO    ] Checking for camera pi updates...
[2026-10-18 22:53:58,810.810 INFO    ] 200
[2026-10-18 22:53:58,813.813 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:53:58,859.859 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:53:58,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:53:58,903.903 INFO    ] No camera update needed
[2026-10-18 22:53:58,906.906 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:53:58,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:53:58,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:53:58,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:54:00,960.960 INFO    ] ================================================
[2026-10-18 22:54:00,976.976 INFO    ] Launching Daemon at Sun Oct 18 22:54:00 IST 2026
[2026-10-18 22:54:00,986.986 INFO    ] ================================================
[2026-10-18 22:54:01,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:54:01
[2026-10-18 22:54:02,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:54:02,724.724 INFO    ] Initializing speech engine...
[2026-10-18 22:54:02,733.733 INFO    ] 2026-10-18 22:54:02
[2026-10-18 22:54:03,053.053 INFO    ] 2026-10-18 22:54:03
[2026-10-18 22:54:03,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:54:03,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:54:03,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:54:03,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:54:03,567.567 INFO    ] time= 18/10/2026 22:54:03
[2026-10-18 22:54:03,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:54:03,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:54:03,663.663 INFO    ] No existing commands found in stream
[2026-10-18 22:54:08,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:54:08,687.687 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-18 22:54:12,941.941 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:54:12,943.943 INFO    ] Checking for system updates...
[2026-10-18 22:54:12,978.978 INFO    ] 200
[2026-10-18 22:54:12,981.981 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:54:13,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:54:13,035.035 INFO    ] No update needed
[2026-10-18 22:54:13,038.038 INFO    ] Checking for camera pi updates...
[2026-10-18 22:54:13,070.070 INFO    ] 200
[2026-10-18 22:54:13,073.073 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:54:13,113.113 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:54:13,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:54:13,144.144 INFO    ] No camera update needed
[2026-10-18 22:54:13,147.147 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:54:13,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:54:13,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:54:13,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:54:15,202.202 INFO    ] ================================================
[2026-10-18 22:54:15,218.218 INFO    ] Launching Daemon at Sun Oct 18 22:54:15 IST 2026
[2026-10-18 22:54:15,239.239 INFO    ] ================================================
[2026-10-18 22:54:15,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:54:15
[2026-10-18 22:54:16,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:54:16,647.647 INFO    ] Initializing speech engine...
[2026-10-18 22:54:16,655.655 INFO    ] 2026-10-18 22:54:16
[2026-10-18 22:54:16,929.929 INFO    ] 2026-10-18 22:54:16
[2026-10-18 22:54:16,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:54:17,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:54:17,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:54:17,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:54:17,453.453 INFO    ] time= 18/10/2026 22:54:17
[2026-10-18 22:54:17,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:54:17,515.515 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:54:17,655.655 INFO    ] No existing commands found in stream
[2026-10-18 22:54:22,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:54:22,670.670 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-18 22:54:25,602.602 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:54:25,605.605 INFO    ] Checking for system updates...
[2026-10-18 22:54:25,641.641 INFO    ] 200
[2026-10-18 22:54:25,643.643 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:54:25,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:54:25,704.704 INFO    ] No update needed
[2026-10-18 22:54:25,706.706 INFO    ] Checking for camera pi updates...
[2026-10-18 22:54:25,741.741 INFO    ] 200
[2026-10-18 22:54:25,743.743 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:54:25,787.787 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:54:25,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:54:25,928.928 INFO    ] No camera update needed
[2026-10-18 22:54:25,930.930 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:54:25,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:54:25,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:54:25,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:54:27,982.982 INFO    ] ================================================
[2026-10-18 22:54:28,997.997 INFO    ] Launching Daemon at Sun Oct 18 22:54:27 IST 2026
[2026-10-18 22:54:28,008.008 INFO    ] ================================================
[2026-10-18 22:54:28,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:54:28
[2026-10-18 22:54:29,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:54:29,442.442 INFO    ] Initializing speech engine...
[2026-10-18 22:54:29,452.452 INFO    ] 2026-10-18 22:54:29
[2026-10-18 22:54:29,708.708 INFO    ] 2026-10-18 22:54:29
[2026-10-18 22:54:29,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:54:29,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:54:30,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:54:30,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:54:30,196.196 INFO    ] time= 18/10/2026 22:54:30
[2026-10-18 22:54:30,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:54:30,285.285 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:54:30,428.428 INFO    ] No existing commands found in stream
[2026-10-18 22:54:35,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:54:35,463.463 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-18 22:54:38,485.485 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:54:38,488.488 INFO    ] Checking for system updates...
[2026-10-18 22:54:38,538.538 INFO    ] 200
[2026-10-18 22:54:38,541.541 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:54:38,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:54:38,630.630 INFO    ] No update needed
[2026-10-18 22:54:38,633.633 INFO    ] Checking for camera pi updates...
[2026-10-18 22:54:38,669.669 INFO    ] 200
[2026-10-18 22:54:38,671.671 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:54:38,717.717 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:54:38,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:54:38,760.760 INFO    ] No camera update needed
[2026-10-18 22:54:38,763.763 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:54:38,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:54:38,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:54:38,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:54:40,814.814 INFO    ] ================================================
[2026-10-18 22:54:40,829.829 INFO    ] Launching Daemon at Sun Oct 18 22:54:40 IST 2026
[2026-10-18 22:54:40,840.840 INFO    ] ================================================
[2026-10-18 22:54:41,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:54:41
[2026-10-18 22:54:41,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:54:42,254.254 INFO    ] Initializing speech engine...
[2026-10-18 22:54:42,262.262 INFO    ] 2026-10-18 22:54:42
[2026-10-18 22:54:42,507.507 INFO    ] 2026-10-18 22:54:42
[2026-10-18 22:54:42,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:54:42,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:54:42,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:54:43,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:54:43,066.066 INFO    ] time= 18/10/2026 22:54:43
[2026-10-18 22:54:43,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:54:43,090.090 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:54:43,224.224 INFO    ] No existing commands found in stream
[2026-10-18 22:54:48,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:54:48,252.252 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-18 22:54:48,776.776 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:54:48,780.780 INFO    ] Checking for system updates...
[2026-10-18 22:54:48,819.819 INFO    ] 200
[2026-10-18 22:54:48,822.822 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:54:48,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:54:48,878.878 INFO    ] No update needed
[2026-10-18 22:54:48,881.881 INFO    ] Checking for camera pi updates...
[2026-10-18 22:54:48,915.915 INFO    ] 200
[2026-10-18 22:54:48,917.917 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:54:48,964.964 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:54:48,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:54:48,996.996 INFO    ] No camera update needed
[2026-10-18 22:54:48,999.999 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:54:49,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:54:49,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:54:49,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:54:51,053.053 INFO    ] ================================================
[2026-10-18 22:54:51,068.068 INFO    ] Launching Daemon at Sun Oct 18 22:54:51 IST 2026
[2026-10-18 22:54:51,079.079 INFO    ] ================================================
[2026-10-18 22:54:51,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:54:51
[2026-10-18 22:54:52,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:54:52,487.487 INFO    ] Initializing speech engine...
[2026-10-18 22:54:52,508.508 INFO    ] 2026-10-18 22:54:52
[2026-10-18 22:54:52,765.765 INFO    ] 2026-10-18 22:54:52
[2026-10-18 22:54:52,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:54:52,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:54:53,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:54:53,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:54:53,264.264 INFO    ] time= 18/10/2026 22:54:53
[2026-10-18 22:54:53,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:54:53,334.334 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:54:53,480.480 INFO    ] No existing commands found in stream
[2026-10-18 22:54:58,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:54:58,504.504 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-18 22:55:02,967.967 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:55:02,970.970 INFO    ] Checking for system updates...
[2026-10-18 22:55:03,021.021 INFO    ] 200
[2026-10-18 22:55:03,025.025 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:55:03,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:55:03,099.099 INFO    ] No update needed
[2026-10-18 22:55:03,102.102 INFO    ] Checking for camera pi updates...
[2026-10-18 22:55:03,141.141 INFO    ] 200
[2026-10-18 22:55:03,145.145 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:55:03,198.198 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:55:03,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:55:03,246.246 INFO    ] No camera update needed
[2026-10-18 22:55:03,248.248 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:55:03,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:55:03,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:55:03,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:55:05,309.309 INFO    ] ================================================
[2026-10-18 22:55:05,324.324 INFO    ] Launching Daemon at Sun Oct 18 22:55:05 IST 2026
[2026-10-18 22:55:05,335.335 INFO    ] ================================================
[2026-10-18 22:55:05,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:55:05
[2026-10-18 22:55:06,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:55:06,759.759 INFO    ] Initializing speech engine...
[2026-10-18 22:55:06,765.765 INFO    ] 2026-10-18 22:55:06
[2026-10-18 22:55:07,010.010 INFO    ] 2026-10-18 22:55:07
[2026-10-18 22:55:07,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:55:07,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:55:07,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:55:07,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:55:07,566.566 INFO    ] time= 18/10/2026 22:55:07
[2026-10-18 22:55:07,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:55:07,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:55:07,718.718 INFO    ] No existing commands found in stream
[2026-10-18 22:55:12,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:55:12,734.734 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-18 22:55:13,549.549 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:55:13,552.552 INFO    ] Checking for system updates...
[2026-10-18 22:55:13,592.592 INFO    ] 200
[2026-10-18 22:55:13,595.595 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:55:13,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:55:13,657.657 INFO    ] No update needed
[2026-10-18 22:55:13,660.660 INFO    ] Checking for camera pi updates...
[2026-10-18 22:55:13,692.692 INFO    ] 200
[2026-10-18 22:55:13,695.695 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:55:13,735.735 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:55:13,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:55:13,782.782 INFO    ] No camera update needed
[2026-10-18 22:55:13,785.785 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:55:13,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:55:13,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:55:13,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:55:15,836.836 INFO    ] ================================================
[2026-10-18 22:55:15,852.852 INFO    ] Launching Daemon at Sun Oct 18 22:55:15 IST 2026
[2026-10-18 22:55:15,863.863 INFO    ] ================================================
[2026-10-18 22:55:16,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:55:16
[2026-10-18 22:55:17,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:55:17,400.400 INFO    ] Initializing speech engine...
[2026-10-18 22:55:17,410.410 INFO    ] 2026-10-18 22:55:17
[2026-10-18 22:55:17,659.659 INFO    ] 2026-10-18 22:55:17
[2026-10-18 22:55:17,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:55:17,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:55:17,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:55:18,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:55:18,147.147 INFO    ] time= 18/10/2026 22:55:18
[2026-10-18 22:55:18,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:55:18,238.238 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:55:18,361.361 INFO    ] No existing commands found in stream
[2026-10-18 22:55:23,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:55:23,394.394 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-18 22:55:24,818.818 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:55:24,821.821 INFO    ] Checking for system updates...
[2026-10-18 22:55:24,856.856 INFO    ] 200
[2026-10-18 22:55:24,859.859 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:55:24,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:55:24,919.919 INFO    ] No update needed
[2026-10-18 22:55:24,922.922 INFO    ] Checking for camera pi updates...
[2026-10-18 22:55:24,958.958 INFO    ] 200
[2026-10-18 22:55:24,960.960 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:55:25,016.016 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:55:25,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:55:25,060.060 INFO    ] No camera update needed
[2026-10-18 22:55:25,062.062 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:55:25,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:55:25,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:55:25,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:55:27,116.116 INFO    ] ================================================
[2026-10-18 22:55:27,132.132 INFO    ] Launching Daemon at Sun Oct 18 22:55:27 IST 2026
[2026-10-18 22:55:27,142.142 INFO    ] ================================================
[2026-10-18 22:55:27,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:55:27
[2026-10-18 22:55:28,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:55:28,604.604 INFO    ] Initializing speech engine...
[2026-10-18 22:55:28,617.617 INFO    ] 2026-10-18 22:55:28
[2026-10-18 22:55:28,883.883 INFO    ] 2026-10-18 22:55:28
[2026-10-18 22:55:28,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:55:29,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:55:29,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:55:29,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:55:29,427.427 INFO    ] time= 18/10/2026 22:55:29
[2026-10-18 22:55:29,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:55:29,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:55:29,573.573 INFO    ] No existing commands found in stream
[2026-10-18 22:55:34,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:55:34,600.600 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-18 22:55:38,430.430 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:55:38,432.432 INFO    ] Checking for system updates...
[2026-10-18 22:55:38,468.468 INFO    ] 200
[2026-10-18 22:55:38,471.471 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:55:38,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:55:38,524.524 INFO    ] No update needed
[2026-10-18 22:55:38,526.526 INFO    ] Checking for camera pi updates...
[2026-10-18 22:55:38,559.559 INFO    ] 200
[2026-10-18 22:55:38,562.562 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:55:38,601.601 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:55:38,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:55:38,649.649 INFO    ] No camera update needed
[2026-10-18 22:55:38,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:55:38,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:55:38,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:55:38,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:55:40,703.703 INFO    ] ================================================
[2026-10-18 22:55:40,719.719 INFO    ] Launching Daemon at Sun Oct 18 22:55:40 IST 2026
[2026-10-18 22:55:40,730.730 INFO    ] ================================================
[2026-10-18 22:55:41,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:55:41
[2026-10-18 22:55:41,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:55:42,257.257 INFO    ] Initializing speech engine...
[2026-10-18 22:55:42,266.266 INFO    ] 2026-10-18 22:55:42
[2026-10-18 22:55:42,512.512 INFO    ] 2026-10-18 22:55:42
[2026-10-18 22:55:42,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:55:42,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:55:42,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:55:43,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:55:43,058.058 INFO    ] time= 18/10/2026 22:55:43
[2026-10-18 22:55:43,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:55:43,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:55:43,237.237 INFO    ] No existing commands found in stream
[2026-10-18 22:55:48,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:55:48,271.271 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-18 22:55:50,159.159 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:55:50,162.162 INFO    ] Checking for system updates...
[2026-10-18 22:55:50,204.204 INFO    ] 200
[2026-10-18 22:55:50,206.206 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:55:50,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:55:50,272.272 INFO    ] No update needed
[2026-10-18 22:55:50,275.275 INFO    ] Checking for camera pi updates...
[2026-10-18 22:55:50,314.314 INFO    ] 200
[2026-10-18 22:55:50,317.317 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:55:50,358.358 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:55:50,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:55:50,406.406 INFO    ] No camera update needed
[2026-10-18 22:55:50,409.409 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:55:50,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:55:50,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:55:50,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:55:52,464.464 INFO    ] ================================================
[2026-10-18 22:55:52,480.480 INFO    ] Launching Daemon at Sun Oct 18 22:55:52 IST 2026
[2026-10-18 22:55:52,492.492 INFO    ] ================================================
[2026-10-18 22:55:53,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:55:53
[2026-10-18 22:55:53,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:55:53,886.886 INFO    ] Initializing speech engine...
[2026-10-18 22:55:53,900.900 INFO    ] 2026-10-18 22:55:53
[2026-10-18 22:55:54,162.162 INFO    ] 2026-10-18 22:55:54
[2026-10-18 22:55:54,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:55:54,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:55:54,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:55:54,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:55:54,643.643 INFO    ] time= 18/10/2026 22:55:54
[2026-10-18 22:55:54,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:55:54,719.719 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:55:54,851.851 INFO    ] No existing commands found in stream
[2026-10-18 22:55:59,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:55:59,879.879 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-18 22:56:03,952.952 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:56:03,955.955 INFO    ] Checking for system updates...
[2026-10-18 22:56:03,990.990 INFO    ] 200
[2026-10-18 22:56:03,992.992 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:56:04,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:56:04,045.045 INFO    ] No update needed
[2026-10-18 22:56:04,047.047 INFO    ] Checking for camera pi updates...
[2026-10-18 22:56:04,080.080 INFO    ] 200
[2026-10-18 22:56:04,082.082 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:56:04,121.121 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:56:04,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:56:04,163.163 INFO    ] No camera update needed
[2026-10-18 22:56:04,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:56:04,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:56:04,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:56:04,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:56:06,220.220 INFO    ] ================================================
[2026-10-18 22:56:06,235.235 INFO    ] Launching Daemon at Sun Oct 18 22:56:06 IST 2026
[2026-10-18 22:56:06,247.247 INFO    ] ================================================
[2026-10-18 22:56:06,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:56:06
[2026-10-18 22:56:07,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:56:07,693.693 INFO    ] Initializing speech engine...
[2026-10-18 22:56:07,702.702 INFO    ] 2026-10-18 22:56:07
[2026-10-18 22:56:07,950.950 INFO    ] 2026-10-18 22:56:07
[2026-10-18 22:56:07,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:56:08,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:56:08,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:56:08,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:56:08,452.452 INFO    ] time= 18/10/2026 22:56:08
[2026-10-18 22:56:08,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:56:08,516.516 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:56:08,687.687 INFO    ] No existing commands found in stream
[2026-10-18 22:56:13,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:56:13,720.720 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-18 22:56:17,166.166 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 22:56:17,169.169 INFO    ] Checking for system updates...
[2026-10-18 22:56:17,204.204 INFO    ] 200
[2026-10-18 22:56:17,207.207 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:56:17,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:56:17,261.261 INFO    ] No update needed
[2026-10-18 22:56:17,263.263 INFO    ] Checking for camera pi updates...
[2026-10-18 22:56:17,301.301 INFO    ] 200
[2026-10-18 22:56:17,304.304 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:56:17,343.343 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:56:17,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:56:17,387.387 INFO    ] No camera update needed
[2026-10-18 22:56:17,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:56:17,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:56:17,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:56:17,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:56:19,443.443 INFO    ] ================================================
[2026-10-18 22:56:19,459.459 INFO    ] Launching Daemon at Sun Oct 18 22:56:19 IST 2026
[2026-10-18 22:56:19,470.470 INFO    ] ================================================
[2026-10-18 22:56:20,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:56:20
[2026-10-18 22:56:20,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:56:20,964.964 INFO    ] Initializing speech engine...
[2026-10-18 22:56:20,972.972 INFO    ] 2026-10-18 22:56:20
[2026-10-18 22:56:21,223.223 INFO    ] 2026-10-18 22:56:21
[2026-10-18 22:56:21,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:56:21,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:56:21,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:56:21,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:56:21,697.697 INFO    ] time= 18/10/2026 22:56:21
[2026-10-18 22:56:21,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:56:21,784.784 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:56:21,933.933 INFO    ] No existing commands found in stream
[2026-10-18 22:56:26,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:56:26,952.952 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-18 22:56:28,901.901 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:56:28,903.903 INFO    ] Checking for system updates...
[2026-10-18 22:56:28,939.939 INFO    ] 200
[2026-10-18 22:56:28,941.941 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:56:28,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:56:28,995.995 INFO    ] No update needed
[2026-10-18 22:56:28,997.997 INFO    ] Checking for camera pi updates...
[2026-10-18 22:56:29,030.030 INFO    ] 200
[2026-10-18 22:56:29,033.033 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:56:29,076.076 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:56:29,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:56:29,216.216 INFO    ] No camera update needed
[2026-10-18 22:56:29,219.219 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:56:29,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:56:29,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:56:29,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:56:31,271.271 INFO    ] ================================================
[2026-10-18 22:56:31,287.287 INFO    ] Launching Daemon at Sun Oct 18 22:56:31 IST 2026
[2026-10-18 22:56:31,298.298 INFO    ] ================================================
[2026-10-18 22:56:31,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:56:31
[2026-10-18 22:56:32,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:56:32,828.828 INFO    ] Initializing speech engine...
[2026-10-18 22:56:32,840.840 INFO    ] 2026-10-18 22:56:32
[2026-10-18 22:56:33,121.121 INFO    ] 2026-10-18 22:56:33
[2026-10-18 22:56:33,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:56:33,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:56:33,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:56:33,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:56:33,652.652 INFO    ] time= 18/10/2026 22:56:33
[2026-10-18 22:56:33,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:56:33,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:56:33,836.836 INFO    ] No existing commands found in stream
[2026-10-18 22:56:38,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:56:38,852.852 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-18 22:56:40,559.559 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:56:40,562.562 INFO    ] Checking for system updates...
[2026-10-18 22:56:40,597.597 INFO    ] 200
[2026-10-18 22:56:40,599.599 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:56:40,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:56:40,654.654 INFO    ] No update needed
[2026-10-18 22:56:40,656.656 INFO    ] Checking for camera pi updates...
[2026-10-18 22:56:40,690.690 INFO    ] 200
[2026-10-18 22:56:40,692.692 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:56:40,731.731 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:56:40,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:56:40,775.775 INFO    ] No camera update needed
[2026-10-18 22:56:40,777.777 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:56:40,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:56:40,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:56:40,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:56:42,837.837 INFO    ] ================================================
[2026-10-18 22:56:42,852.852 INFO    ] Launching Daemon at Sun Oct 18 22:56:42 IST 2026
[2026-10-18 22:56:42,864.864 INFO    ] ================================================
[2026-10-18 22:56:43,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:56:43
[2026-10-18 22:56:44,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:56:44,327.327 INFO    ] Initializing speech engine...
[2026-10-18 22:56:44,333.333 INFO    ] 2026-10-18 22:56:44
[2026-10-18 22:56:44,611.611 INFO    ] 2026-10-18 22:56:44
[2026-10-18 22:56:44,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:56:44,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:56:44,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:56:45,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:56:45,090.090 INFO    ] time= 18/10/2026 22:56:45
[2026-10-18 22:56:45,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:56:45,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:56:45,294.294 INFO    ] No existing commands found in stream
[2026-10-18 22:56:50,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:56:50,310.310 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-18 22:56:52,152.152 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:56:52,155.155 INFO    ] Checking for system updates...
[2026-10-18 22:56:52,190.190 INFO    ] 200
[2026-10-18 22:56:52,192.192 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:56:52,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:56:52,246.246 INFO    ] No update needed
[2026-10-18 22:56:52,248.248 INFO    ] Checking for camera pi updates...
[2026-10-18 22:56:52,282.282 INFO    ] 200
[2026-10-18 22:56:52,284.284 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:56:52,329.329 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:56:52,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:56:52,373.373 INFO    ] No camera update needed
[2026-10-18 22:56:52,376.376 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:56:52,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:56:52,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:56:52,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:56:54,429.429 INFO    ] ================================================
[2026-10-18 22:56:54,443.443 INFO    ] Launching Daemon at Sun Oct 18 22:56:54 IST 2026
[2026-10-18 22:56:54,454.454 INFO    ] ================================================
[2026-10-18 22:56:55,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:56:55
[2026-10-18 22:56:55,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:56:56,024.024 INFO    ] Initializing speech engine...
[2026-10-18 22:56:56,032.032 INFO    ] 2026-10-18 22:56:56
[2026-10-18 22:56:56,285.285 INFO    ] 2026-10-18 22:56:56
[2026-10-18 22:56:56,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:56:56,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:56:56,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:56:56,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:56:56,782.782 INFO    ] time= 18/10/2026 22:56:56
[2026-10-18 22:56:56,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:56:56,851.851 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:56:56,997.997 INFO    ] No existing commands found in stream
[2026-10-18 22:57:02,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:57:02,020.020 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-18 22:57:03,767.767 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:57:03,770.770 INFO    ] Checking for system updates...
[2026-10-18 22:57:03,817.817 INFO    ] 200
[2026-10-18 22:57:03,820.820 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:57:03,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:57:03,877.877 INFO    ] No update needed
[2026-10-18 22:57:03,880.880 INFO    ] Checking for camera pi updates...
[2026-10-18 22:57:03,913.913 INFO    ] 200
[2026-10-18 22:57:03,916.916 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:57:03,961.961 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:57:04,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:57:04,003.003 INFO    ] No camera update needed
[2026-10-18 22:57:04,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:57:04,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:57:04,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:57:04,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:57:06,060.060 INFO    ] ================================================
[2026-10-18 22:57:06,075.075 INFO    ] Launching Daemon at Sun Oct 18 22:57:06 IST 2026
[2026-10-18 22:57:06,087.087 INFO    ] ================================================
[2026-10-18 22:57:06,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:57:06
[2026-10-18 22:57:07,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:57:07,556.556 INFO    ] Initializing speech engine...
[2026-10-18 22:57:07,566.566 INFO    ] 2026-10-18 22:57:07
[2026-10-18 22:57:07,827.827 INFO    ] 2026-10-18 22:57:07
[2026-10-18 22:57:07,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:57:08,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:57:08,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:57:08,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:57:08,356.356 INFO    ] time= 18/10/2026 22:57:08
[2026-10-18 22:57:08,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:57:08,390.390 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:57:08,525.525 INFO    ] No existing commands found in stream
[2026-10-18 22:57:13,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:57:13,543.543 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-18 22:57:17,893.893 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:57:17,896.896 INFO    ] Checking for system updates...
[2026-10-18 22:57:17,932.932 INFO    ] 200
[2026-10-18 22:57:17,934.934 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:57:17,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:57:17,989.989 INFO    ] No update needed
[2026-10-18 22:57:17,991.991 INFO    ] Checking for camera pi updates...
[2026-10-18 22:57:18,024.024 INFO    ] 200
[2026-10-18 22:57:18,027.027 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:57:18,066.066 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:57:18,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:57:18,109.109 INFO    ] No camera update needed
[2026-10-18 22:57:18,111.111 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:57:18,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:57:18,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:57:18,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:57:20,166.166 INFO    ] ================================================
[2026-10-18 22:57:20,181.181 INFO    ] Launching Daemon at Sun Oct 18 22:57:20 IST 2026
[2026-10-18 22:57:20,191.191 INFO    ] ================================================
[2026-10-18 22:57:20,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:57:20
[2026-10-18 22:57:21,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:57:21,633.633 INFO    ] Initializing speech engine...
[2026-10-18 22:57:21,640.640 INFO    ] 2026-10-18 22:57:21
[2026-10-18 22:57:21,952.952 INFO    ] 2026-10-18 22:57:21
[2026-10-18 22:57:21,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:57:22,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:57:22,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:57:22,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:57:22,386.386 INFO    ] time= 18/10/2026 22:57:22
[2026-10-18 22:57:22,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:57:22,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:57:22,481.481 INFO    ] No existing commands found in stream
[2026-10-18 22:57:27,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:57:27,509.509 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-18 22:57:29,485.485 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:57:29,488.488 INFO    ] Checking for system updates...
[2026-10-18 22:57:29,523.523 INFO    ] 200
[2026-10-18 22:57:29,525.525 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:57:29,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:57:29,582.582 INFO    ] No update needed
[2026-10-18 22:57:29,584.584 INFO    ] Checking for camera pi updates...
[2026-10-18 22:57:29,621.621 INFO    ] 200
[2026-10-18 22:57:29,624.624 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:57:29,663.663 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:57:29,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:57:29,706.706 INFO    ] No camera update needed
[2026-10-18 22:57:29,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:57:29,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:57:29,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:57:29,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:57:31,760.760 INFO    ] ================================================
[2026-10-18 22:57:31,776.776 INFO    ] Launching Daemon at Sun Oct 18 22:57:31 IST 2026
[2026-10-18 22:57:31,787.787 INFO    ] ================================================
[2026-10-18 22:57:32,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:57:32
[2026-10-18 22:57:33,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:57:33,584.584 INFO    ] Initializing speech engine...
[2026-10-18 22:57:33,598.598 INFO    ] 2026-10-18 22:57:33
[2026-10-18 22:57:33,890.890 INFO    ] 2026-10-18 22:57:33
[2026-10-18 22:57:33,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:57:34,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:57:34,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:57:34,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:57:34,445.445 INFO    ] time= 18/10/2026 22:57:34
[2026-10-18 22:57:34,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:57:34,475.475 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:57:34,601.601 INFO    ] No existing commands found in stream
[2026-10-18 22:57:39,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:57:39,633.633 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-18 22:57:42,854.854 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:57:42,857.857 INFO    ] Checking for system updates...
[2026-10-18 22:57:42,894.894 INFO    ] 200
[2026-10-18 22:57:42,897.897 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:57:42,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:57:42,954.954 INFO    ] No update needed
[2026-10-18 22:57:42,957.957 INFO    ] Checking for camera pi updates...
[2026-10-18 22:57:42,992.992 INFO    ] 200
[2026-10-18 22:57:42,995.995 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:57:43,036.036 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:57:43,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:57:43,081.081 INFO    ] No camera update needed
[2026-10-18 22:57:43,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:57:43,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:57:43,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:57:43,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:57:45,139.139 INFO    ] ================================================
[2026-10-18 22:57:45,154.154 INFO    ] Launching Daemon at Sun Oct 18 22:57:45 IST 2026
[2026-10-18 22:57:45,165.165 INFO    ] ================================================
[2026-10-18 22:57:45,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:57:45
[2026-10-18 22:57:46,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:57:46,598.598 INFO    ] Initializing speech engine...
[2026-10-18 22:57:46,609.609 INFO    ] 2026-10-18 22:57:46
[2026-10-18 22:57:46,856.856 INFO    ] 2026-10-18 22:57:46
[2026-10-18 22:57:46,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:57:47,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:57:47,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:57:47,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:57:47,231.231 INFO    ] time= 18/10/2026 22:57:47
[2026-10-18 22:57:47,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:57:47,261.261 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:57:47,386.386 INFO    ] No existing commands found in stream
[2026-10-18 22:57:52,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:57:52,404.404 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-18 22:57:55,162.162 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:57:55,165.165 INFO    ] Checking for system updates...
[2026-10-18 22:57:55,200.200 INFO    ] 200
[2026-10-18 22:57:55,203.203 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:57:55,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:57:55,256.256 INFO    ] No update needed
[2026-10-18 22:57:55,259.259 INFO    ] Checking for camera pi updates...
[2026-10-18 22:57:55,291.291 INFO    ] 200
[2026-10-18 22:57:55,294.294 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:57:55,333.333 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:57:55,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:57:55,376.376 INFO    ] No camera update needed
[2026-10-18 22:57:55,379.379 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:57:55,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:57:55,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:57:55,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:57:57,430.430 INFO    ] ================================================
[2026-10-18 22:57:57,446.446 INFO    ] Launching Daemon at Sun Oct 18 22:57:57 IST 2026
[2026-10-18 22:57:57,456.456 INFO    ] ================================================
[2026-10-18 22:57:58,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:57:58
[2026-10-18 22:57:58,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:57:59,216.216 INFO    ] Initializing speech engine...
[2026-10-18 22:57:59,224.224 INFO    ] 2026-10-18 22:57:59
[2026-10-18 22:57:59,537.537 INFO    ] 2026-10-18 22:57:59
[2026-10-18 22:57:59,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:57:59,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:57:59,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:58:00,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:58:00,060.060 INFO    ] time= 18/10/2026 22:58:00
[2026-10-18 22:58:00,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:58:00,088.088 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:58:00,263.263 INFO    ] No existing commands found in stream
[2026-10-18 22:58:05,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:58:05,297.297 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-18 22:58:09,580.580 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:58:09,583.583 INFO    ] Checking for system updates...
[2026-10-18 22:58:09,619.619 INFO    ] 200
[2026-10-18 22:58:09,622.622 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:58:09,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:58:09,686.686 INFO    ] No update needed
[2026-10-18 22:58:09,688.688 INFO    ] Checking for camera pi updates...
[2026-10-18 22:58:09,734.734 INFO    ] 200
[2026-10-18 22:58:09,737.737 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:58:09,783.783 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:58:09,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:58:09,816.816 INFO    ] No camera update needed
[2026-10-18 22:58:09,819.819 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:58:09,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:58:09,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:58:09,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:58:11,871.871 INFO    ] ================================================
[2026-10-18 22:58:11,887.887 INFO    ] Launching Daemon at Sun Oct 18 22:58:11 IST 2026
[2026-10-18 22:58:11,898.898 INFO    ] ================================================
[2026-10-18 22:58:12,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:58:12
[2026-10-18 22:58:13,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:58:13,353.353 INFO    ] Initializing speech engine...
[2026-10-18 22:58:13,362.362 INFO    ] 2026-10-18 22:58:13
[2026-10-18 22:58:13,622.622 INFO    ] 2026-10-18 22:58:13
[2026-10-18 22:58:13,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:58:13,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:58:13,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:58:14,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:58:14,106.106 INFO    ] time= 18/10/2026 22:58:14
[2026-10-18 22:58:14,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:58:14,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:58:14,315.315 INFO    ] No existing commands found in stream
[2026-10-18 22:58:19,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:58:19,334.334 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-18 22:58:22,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:58:22,362.362 INFO    ] Checking for system updates...
[2026-10-18 22:58:22,398.398 INFO    ] 200
[2026-10-18 22:58:22,401.401 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:58:22,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:58:22,463.463 INFO    ] No update needed
[2026-10-18 22:58:22,465.465 INFO    ] Checking for camera pi updates...
[2026-10-18 22:58:22,499.499 INFO    ] 200
[2026-10-18 22:58:22,502.502 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:58:22,541.541 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:58:22,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:58:22,583.583 INFO    ] No camera update needed
[2026-10-18 22:58:22,586.586 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:58:22,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:58:22,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:58:22,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:58:24,640.640 INFO    ] ================================================
[2026-10-18 22:58:24,656.656 INFO    ] Launching Daemon at Sun Oct 18 22:58:24 IST 2026
[2026-10-18 22:58:24,666.666 INFO    ] ================================================
[2026-10-18 22:58:25,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:58:25
[2026-10-18 22:58:25,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:58:26,084.084 INFO    ] Initializing speech engine...
[2026-10-18 22:58:26,093.093 INFO    ] 2026-10-18 22:58:26
[2026-10-18 22:58:26,343.343 INFO    ] 2026-10-18 22:58:26
[2026-10-18 22:58:26,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:58:26,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:58:26,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:58:26,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:58:26,901.901 INFO    ] time= 18/10/2026 22:58:26
[2026-10-18 22:58:26,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:58:26,928.928 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:58:27,041.041 INFO    ] No existing commands found in stream
[2026-10-18 22:58:32,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:58:32,064.064 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-18 22:58:35,495.495 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:58:35,498.498 INFO    ] Checking for system updates...
[2026-10-18 22:58:35,533.533 INFO    ] 200
[2026-10-18 22:58:35,535.535 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:58:35,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:58:35,589.589 INFO    ] No update needed
[2026-10-18 22:58:35,592.592 INFO    ] Checking for camera pi updates...
[2026-10-18 22:58:35,624.624 INFO    ] 200
[2026-10-18 22:58:35,628.628 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:58:35,683.683 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:58:35,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:58:35,726.726 INFO    ] No camera update needed
[2026-10-18 22:58:35,729.729 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:58:35,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:58:35,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:58:35,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:58:37,781.781 INFO    ] ================================================
[2026-10-18 22:58:37,796.796 INFO    ] Launching Daemon at Sun Oct 18 22:58:37 IST 2026
[2026-10-18 22:58:37,807.807 INFO    ] ================================================
[2026-10-18 22:58:38,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:58:38
[2026-10-18 22:58:38,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:58:39,234.234 INFO    ] Initializing speech engine...
[2026-10-18 22:58:39,240.240 INFO    ] 2026-10-18 22:58:39
[2026-10-18 22:58:39,546.546 INFO    ] 2026-10-18 22:58:39
[2026-10-18 22:58:39,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:58:39,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:58:39,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:58:39,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:58:39,939.939 INFO    ] time= 18/10/2026 22:58:39
[2026-10-18 22:58:39,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:58:39,983.983 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:58:40,067.067 INFO    ] No existing commands found in stream
[2026-10-18 22:58:45,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:58:45,083.083 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-18 22:58:46,018.018 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:58:46,021.021 INFO    ] Checking for system updates...
[2026-10-18 22:58:46,056.056 INFO    ] 200
[2026-10-18 22:58:46,059.059 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:58:46,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:58:46,112.112 INFO    ] No update needed
[2026-10-18 22:58:46,114.114 INFO    ] Checking for camera pi updates...
[2026-10-18 22:58:46,148.148 INFO    ] 200
[2026-10-18 22:58:46,151.151 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:58:46,192.192 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:58:46,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:58:46,235.235 INFO    ] No camera update needed
[2026-10-18 22:58:46,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:58:46,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:58:46,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:58:46,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:58:48,295.295 INFO    ] ================================================
[2026-10-18 22:58:48,310.310 INFO    ] Launching Daemon at Sun Oct 18 22:58:48 IST 2026
[2026-10-18 22:58:48,322.322 INFO    ] ================================================
[2026-10-18 22:58:48,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:58:48
[2026-10-18 22:58:49,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:58:49,712.712 INFO    ] Initializing speech engine...
[2026-10-18 22:58:49,721.721 INFO    ] 2026-10-18 22:58:49
[2026-10-18 22:58:49,993.993 INFO    ] 2026-10-18 22:58:49
[2026-10-18 22:58:50,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:58:50,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:58:50,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:58:50,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:58:50,463.463 INFO    ] time= 18/10/2026 22:58:50
[2026-10-18 22:58:50,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:58:50,551.551 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:58:50,657.657 INFO    ] No existing commands found in stream
[2026-10-18 22:58:55,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:58:55,680.680 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-18 22:58:56,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 22:58:56,347.347 INFO    ] Checking for system updates...
[2026-10-18 22:58:56,383.383 INFO    ] 200
[2026-10-18 22:58:56,385.385 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:58:56,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:58:56,445.445 INFO    ] No update needed
[2026-10-18 22:58:56,447.447 INFO    ] Checking for camera pi updates...
[2026-10-18 22:58:56,486.486 INFO    ] 200
[2026-10-18 22:58:56,489.489 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:58:56,530.530 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:58:56,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:58:56,573.573 INFO    ] No camera update needed
[2026-10-18 22:58:56,575.575 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:58:56,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:58:56,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:58:56,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:58:58,627.627 INFO    ] ================================================
[2026-10-18 22:58:58,643.643 INFO    ] Launching Daemon at Sun Oct 18 22:58:58 IST 2026
[2026-10-18 22:58:58,654.654 INFO    ] ================================================
[2026-10-18 22:58:59,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:58:59
[2026-10-18 22:59:00,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:59:00,349.349 INFO    ] Initializing speech engine...
[2026-10-18 22:59:00,357.357 INFO    ] 2026-10-18 22:59:00
[2026-10-18 22:59:00,664.664 INFO    ] 2026-10-18 22:59:00
[2026-10-18 22:59:00,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:59:00,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:59:00,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:59:01,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:59:01,191.191 INFO    ] time= 18/10/2026 22:59:01
[2026-10-18 22:59:01,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:59:01,227.227 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:59:01,336.336 INFO    ] No existing commands found in stream
[2026-10-18 22:59:06,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:59:06,369.369 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-18 22:59:10,705.705 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:59:10,709.709 INFO    ] Checking for system updates...
[2026-10-18 22:59:10,746.746 INFO    ] 200
[2026-10-18 22:59:10,750.750 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:59:10,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:59:10,816.816 INFO    ] No update needed
[2026-10-18 22:59:10,819.819 INFO    ] Checking for camera pi updates...
[2026-10-18 22:59:10,854.854 INFO    ] 200
[2026-10-18 22:59:10,857.857 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:59:10,904.904 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:59:10,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:59:10,949.949 INFO    ] No camera update needed
[2026-10-18 22:59:10,952.952 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:59:10,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:59:10,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:59:10,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:59:13,009.009 INFO    ] ================================================
[2026-10-18 22:59:13,024.024 INFO    ] Launching Daemon at Sun Oct 18 22:59:13 IST 2026
[2026-10-18 22:59:13,036.036 INFO    ] ================================================
[2026-10-18 22:59:13,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:59:13
[2026-10-18 22:59:14,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:59:14,472.472 INFO    ] Initializing speech engine...
[2026-10-18 22:59:14,478.478 INFO    ] 2026-10-18 22:59:14
[2026-10-18 22:59:14,727.727 INFO    ] 2026-10-18 22:59:14
[2026-10-18 22:59:14,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:59:14,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:59:14,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:59:15,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:59:15,162.162 INFO    ] time= 18/10/2026 22:59:15
[2026-10-18 22:59:15,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:59:15,175.175 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:59:15,260.260 INFO    ] No existing commands found in stream
[2026-10-18 22:59:20,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:59:20,288.288 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-18 22:59:22,377.377 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 22:59:22,379.379 INFO    ] Checking for system updates...
[2026-10-18 22:59:22,416.416 INFO    ] 200
[2026-10-18 22:59:22,419.419 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:59:22,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:59:22,476.476 INFO    ] No update needed
[2026-10-18 22:59:22,479.479 INFO    ] Checking for camera pi updates...
[2026-10-18 22:59:22,514.514 INFO    ] 200
[2026-10-18 22:59:22,517.517 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:59:22,559.559 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:59:22,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:59:22,604.604 INFO    ] No camera update needed
[2026-10-18 22:59:22,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:59:22,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:59:22,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:59:22,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:59:24,665.665 INFO    ] ================================================
[2026-10-18 22:59:24,680.680 INFO    ] Launching Daemon at Sun Oct 18 22:59:24 IST 2026
[2026-10-18 22:59:24,692.692 INFO    ] ================================================
[2026-10-18 22:59:25,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:59:25
[2026-10-18 22:59:25,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:59:26,108.108 INFO    ] Initializing speech engine...
[2026-10-18 22:59:26,115.115 INFO    ] 2026-10-18 22:59:26
[2026-10-18 22:59:26,417.417 INFO    ] 2026-10-18 22:59:26
[2026-10-18 22:59:26,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:59:26,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:59:26,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:59:26,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:59:26,811.811 INFO    ] time= 18/10/2026 22:59:26
[2026-10-18 22:59:26,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:59:26,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:59:26,940.940 INFO    ] No existing commands found in stream
[2026-10-18 22:59:31,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:59:31,955.955 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-18 22:59:32,818.818 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 22:59:32,821.821 INFO    ] Checking for system updates...
[2026-10-18 22:59:32,858.858 INFO    ] 200
[2026-10-18 22:59:32,861.861 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:59:32,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:59:32,931.931 INFO    ] No update needed
[2026-10-18 22:59:32,933.933 INFO    ] Checking for camera pi updates...
[2026-10-18 22:59:32,970.970 INFO    ] 200
[2026-10-18 22:59:32,973.973 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:59:33,031.031 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:59:33,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 22:59:33,078.078 INFO    ] No camera update needed
[2026-10-18 22:59:33,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:59:33,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:59:33,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:59:33,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:59:35,136.136 INFO    ] ================================================
[2026-10-18 22:59:35,152.152 INFO    ] Launching Daemon at Sun Oct 18 22:59:35 IST 2026
[2026-10-18 22:59:35,163.163 INFO    ] ================================================
[2026-10-18 22:59:35,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:59:35
[2026-10-18 22:59:36,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:59:36,869.869 INFO    ] Initializing speech engine...
[2026-10-18 22:59:36,881.881 INFO    ] 2026-10-18 22:59:36
[2026-10-18 22:59:37,194.194 INFO    ] 2026-10-18 22:59:37
[2026-10-18 22:59:37,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:59:37,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:59:37,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:59:37,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:59:37,723.723 INFO    ] time= 18/10/2026 22:59:37
[2026-10-18 22:59:37,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:59:37,761.761 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:59:37,879.879 INFO    ] No existing commands found in stream
[2026-10-18 22:59:42,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:59:42,919.919 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-18 22:59:45,717.717 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 22:59:45,720.720 INFO    ] Checking for system updates...
[2026-10-18 22:59:45,757.757 INFO    ] 200
[2026-10-18 22:59:45,760.760 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:59:45,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:59:45,816.816 INFO    ] No update needed
[2026-10-18 22:59:45,819.819 INFO    ] Checking for camera pi updates...
[2026-10-18 22:59:45,855.855 INFO    ] 200
[2026-10-18 22:59:45,859.859 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:59:45,900.900 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:59:45,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:59:45,934.934 INFO    ] No camera update needed
[2026-10-18 22:59:45,937.937 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:59:45,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:59:45,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:59:45,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 22:59:48,999.999 INFO    ] ================================================
[2026-10-18 22:59:48,015.015 INFO    ] Launching Daemon at Sun Oct 18 22:59:48 IST 2026
[2026-10-18 22:59:48,026.026 INFO    ] ================================================
[2026-10-18 22:59:48,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 22:59:48
[2026-10-18 22:59:49,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 22:59:49,434.434 INFO    ] Initializing speech engine...
[2026-10-18 22:59:49,441.441 INFO    ] 2026-10-18 22:59:49
[2026-10-18 22:59:49,742.742 INFO    ] 2026-10-18 22:59:49
[2026-10-18 22:59:49,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 22:59:49,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 22:59:49,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 22:59:50,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 22:59:50,173.173 INFO    ] time= 18/10/2026 22:59:50
[2026-10-18 22:59:50,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 22:59:50,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-18 22:59:50,265.265 INFO    ] No existing commands found in stream
[2026-10-18 22:59:55,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 22:59:55,298.298 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-18 22:59:59,539.539 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 22:59:59,542.542 INFO    ] Checking for system updates...
[2026-10-18 22:59:59,577.577 INFO    ] 200
[2026-10-18 22:59:59,580.580 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:59:59,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:59:59,633.633 INFO    ] No update needed
[2026-10-18 22:59:59,636.636 INFO    ] Checking for camera pi updates...
[2026-10-18 22:59:59,669.669 INFO    ] 200
[2026-10-18 22:59:59,672.672 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 22:59:59,712.712 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 22:59:59,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 22:59:59,756.756 INFO    ] No camera update needed
[2026-10-18 22:59:59,759.759 INFO    ] Script finished. Safe exiting...
[2026-10-18 22:59:59,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 22:59:59,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 22:59:59,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:00:01,811.811 INFO    ] ================================================
[2026-10-18 23:00:01,827.827 INFO    ] Launching Daemon at Sun Oct 18 23:00:01 IST 2026
[2026-10-18 23:00:01,838.838 INFO    ] ================================================
[2026-10-18 23:00:03,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:00:03
[2026-10-18 23:00:05,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:00:06,733.733 INFO    ] Initializing speech engine...
[2026-10-18 23:00:06,737.737 INFO    ] 2026-10-18 23:00:06
[2026-10-18 23:00:07,164.164 INFO    ] 2026-10-18 23:00:07
[2026-10-18 23:00:07,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:00:07,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:00:07,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:00:07,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:00:07,763.763 INFO    ] time= 18/10/2026 23:00:07
[2026-10-18 23:00:07,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:00:07,876.876 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:00:07,998.998 INFO    ] No existing commands found in stream
[2026-10-18 23:00:13,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:00:13,033.033 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-18 23:00:15,225.225 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:00:15,229.229 INFO    ] Checking for system updates...
[2026-10-18 23:00:15,265.265 INFO    ] 200
[2026-10-18 23:00:15,269.269 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:00:15,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:00:15,326.326 INFO    ] No update needed
[2026-10-18 23:00:15,329.329 INFO    ] Checking for camera pi updates...
[2026-10-18 23:00:15,362.362 INFO    ] 200
[2026-10-18 23:00:15,365.365 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:00:15,404.404 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:00:15,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:00:15,447.447 INFO    ] No camera update needed
[2026-10-18 23:00:15,449.449 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:00:15,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:00:15,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:00:15,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:00:17,501.501 INFO    ] ================================================
[2026-10-18 23:00:17,517.517 INFO    ] Launching Daemon at Sun Oct 18 23:00:17 IST 2026
[2026-10-18 23:00:17,527.527 INFO    ] ================================================
[2026-10-18 23:00:18,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:00:18
[2026-10-18 23:00:18,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:00:19,223.223 INFO    ] Initializing speech engine...
[2026-10-18 23:00:19,236.236 INFO    ] 2026-10-18 23:00:19
[2026-10-18 23:00:19,522.522 INFO    ] 2026-10-18 23:00:19
[2026-10-18 23:00:19,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:00:19,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:00:19,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:00:20,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:00:20,088.088 INFO    ] time= 18/10/2026 23:00:20
[2026-10-18 23:00:20,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:00:20,125.125 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:00:20,246.246 INFO    ] No existing commands found in stream
[2026-10-18 23:00:25,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:00:25,274.274 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-18 23:00:28,227.227 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:00:28,231.231 INFO    ] Checking for system updates...
[2026-10-18 23:00:28,267.267 INFO    ] 200
[2026-10-18 23:00:28,270.270 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:00:28,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:00:28,330.330 INFO    ] No update needed
[2026-10-18 23:00:28,333.333 INFO    ] Checking for camera pi updates...
[2026-10-18 23:00:28,366.366 INFO    ] 200
[2026-10-18 23:00:28,369.369 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:00:28,408.408 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:00:28,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:00:28,451.451 INFO    ] No camera update needed
[2026-10-18 23:00:28,454.454 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:00:28,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:00:28,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:00:28,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:00:30,506.506 INFO    ] ================================================
[2026-10-18 23:00:30,521.521 INFO    ] Launching Daemon at Sun Oct 18 23:00:30 IST 2026
[2026-10-18 23:00:30,532.532 INFO    ] ================================================
[2026-10-18 23:00:31,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:00:31
[2026-10-18 23:00:31,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:00:32,001.001 INFO    ] Initializing speech engine...
[2026-10-18 23:00:32,010.010 INFO    ] 2026-10-18 23:00:32
[2026-10-18 23:00:32,275.275 INFO    ] 2026-10-18 23:00:32
[2026-10-18 23:00:32,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:00:32,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:00:32,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:00:32,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:00:32,863.863 INFO    ] time= 18/10/2026 23:00:32
[2026-10-18 23:00:32,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:00:32,905.905 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:00:33,044.044 INFO    ] No existing commands found in stream
[2026-10-18 23:00:38,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:00:38,074.074 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-18 23:00:41,131.131 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:00:41,134.134 INFO    ] Checking for system updates...
[2026-10-18 23:00:41,169.169 INFO    ] 200
[2026-10-18 23:00:41,172.172 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:00:41,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:00:41,241.241 INFO    ] No update needed
[2026-10-18 23:00:41,244.244 INFO    ] Checking for camera pi updates...
[2026-10-18 23:00:41,282.282 INFO    ] 200
[2026-10-18 23:00:41,284.284 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:00:41,324.324 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:00:41,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:00:41,464.464 INFO    ] No camera update needed
[2026-10-18 23:00:41,466.466 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:00:41,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:00:41,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:00:41,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:00:43,520.520 INFO    ] ================================================
[2026-10-18 23:00:43,535.535 INFO    ] Launching Daemon at Sun Oct 18 23:00:43 IST 2026
[2026-10-18 23:00:43,546.546 INFO    ] ================================================
[2026-10-18 23:00:44,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:00:44
[2026-10-18 23:00:44,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:00:45,014.014 INFO    ] Initializing speech engine...
[2026-10-18 23:00:45,025.025 INFO    ] 2026-10-18 23:00:45
[2026-10-18 23:00:45,284.284 INFO    ] 2026-10-18 23:00:45
[2026-10-18 23:00:45,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:00:45,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:00:45,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:00:45,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:00:45,823.823 INFO    ] time= 18/10/2026 23:00:45
[2026-10-18 23:00:45,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:00:45,847.847 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:00:45,997.997 INFO    ] No existing commands found in stream
[2026-10-18 23:00:51,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:00:51,031.031 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-18 23:00:52,139.139 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:00:52,142.142 INFO    ] Checking for system updates...
[2026-10-18 23:00:52,177.177 INFO    ] 200
[2026-10-18 23:00:52,180.180 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:00:52,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:00:52,239.239 INFO    ] No update needed
[2026-10-18 23:00:52,242.242 INFO    ] Checking for camera pi updates...
[2026-10-18 23:00:52,274.274 INFO    ] 200
[2026-10-18 23:00:52,277.277 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:00:52,316.316 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:00:52,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:00:52,359.359 INFO    ] No camera update needed
[2026-10-18 23:00:52,362.362 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:00:52,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:00:52,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:00:52,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:00:54,414.414 INFO    ] ================================================
[2026-10-18 23:00:54,429.429 INFO    ] Launching Daemon at Sun Oct 18 23:00:54 IST 2026
[2026-10-18 23:00:54,440.440 INFO    ] ================================================
[2026-10-18 23:00:55,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:00:55
[2026-10-18 23:00:55,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:00:55,868.868 INFO    ] Initializing speech engine...
[2026-10-18 23:00:55,878.878 INFO    ] 2026-10-18 23:00:55
[2026-10-18 23:00:56,140.140 INFO    ] 2026-10-18 23:00:56
[2026-10-18 23:00:56,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:00:56,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:00:56,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:00:56,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:00:56,690.690 INFO    ] time= 18/10/2026 23:00:56
[2026-10-18 23:00:56,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:00:56,717.717 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:00:56,848.848 INFO    ] No existing commands found in stream
[2026-10-18 23:01:01,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:01:01,873.873 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-18 23:01:04,142.142 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:01:04,144.144 INFO    ] Checking for system updates...
[2026-10-18 23:01:04,179.179 INFO    ] 200
[2026-10-18 23:01:04,182.182 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:01:04,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:01:04,235.235 INFO    ] No update needed
[2026-10-18 23:01:04,237.237 INFO    ] Checking for camera pi updates...
[2026-10-18 23:01:04,273.273 INFO    ] 200
[2026-10-18 23:01:04,276.276 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:01:04,315.315 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:01:04,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:01:04,358.358 INFO    ] No camera update needed
[2026-10-18 23:01:04,361.361 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:01:04,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:01:04,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:01:04,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:01:06,412.412 INFO    ] ================================================
[2026-10-18 23:01:06,427.427 INFO    ] Launching Daemon at Sun Oct 18 23:01:06 IST 2026
[2026-10-18 23:01:06,438.438 INFO    ] ================================================
[2026-10-18 23:01:07,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:01:06
[2026-10-18 23:01:07,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:01:07,838.838 INFO    ] Initializing speech engine...
[2026-10-18 23:01:07,852.852 INFO    ] 2026-10-18 23:01:07
[2026-10-18 23:01:08,129.129 INFO    ] 2026-10-18 23:01:08
[2026-10-18 23:01:08,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:01:08,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:01:08,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:01:08,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:01:08,541.541 INFO    ] time= 18/10/2026 23:01:08
[2026-10-18 23:01:08,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:01:08,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:01:08,704.704 INFO    ] No existing commands found in stream
[2026-10-18 23:01:13,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:01:13,732.732 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-18 23:01:18,254.254 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:01:18,256.256 INFO    ] Checking for system updates...
[2026-10-18 23:01:18,291.291 INFO    ] 200
[2026-10-18 23:01:18,294.294 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:01:18,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:01:18,353.353 INFO    ] No update needed
[2026-10-18 23:01:18,356.356 INFO    ] Checking for camera pi updates...
[2026-10-18 23:01:18,389.389 INFO    ] 200
[2026-10-18 23:01:18,391.391 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:01:18,430.430 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:01:18,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:01:18,475.475 INFO    ] No camera update needed
[2026-10-18 23:01:18,477.477 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:01:18,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:01:18,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:01:18,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:01:20,529.529 INFO    ] ================================================
[2026-10-18 23:01:20,544.544 INFO    ] Launching Daemon at Sun Oct 18 23:01:20 IST 2026
[2026-10-18 23:01:20,554.554 INFO    ] ================================================
[2026-10-18 23:01:21,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:01:21
[2026-10-18 23:01:21,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:01:21,969.969 INFO    ] Initializing speech engine...
[2026-10-18 23:01:21,988.988 INFO    ] 2026-10-18 23:01:21
[2026-10-18 23:01:22,236.236 INFO    ] 2026-10-18 23:01:22
[2026-10-18 23:01:22,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:01:22,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:01:22,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:01:22,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:01:22,728.728 INFO    ] time= 18/10/2026 23:01:22
[2026-10-18 23:01:22,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:01:22,802.802 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:01:22,930.930 INFO    ] No existing commands found in stream
[2026-10-18 23:01:27,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:01:27,957.957 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-18 23:01:31,492.492 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:01:31,496.496 INFO    ] Checking for system updates...
[2026-10-18 23:01:31,549.549 INFO    ] 200
[2026-10-18 23:01:31,553.553 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:01:31,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:01:31,613.613 INFO    ] No update needed
[2026-10-18 23:01:31,616.616 INFO    ] Checking for camera pi updates...
[2026-10-18 23:01:31,661.661 INFO    ] 200
[2026-10-18 23:01:31,664.664 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:01:31,708.708 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:01:31,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:01:31,760.760 INFO    ] No camera update needed
[2026-10-18 23:01:31,764.764 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:01:31,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:01:31,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:01:31,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:01:33,823.823 INFO    ] ================================================
[2026-10-18 23:01:33,838.838 INFO    ] Launching Daemon at Sun Oct 18 23:01:33 IST 2026
[2026-10-18 23:01:33,849.849 INFO    ] ================================================
[2026-10-18 23:01:34,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:01:34
[2026-10-18 23:01:35,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:01:35,247.247 INFO    ] Initializing speech engine...
[2026-10-18 23:01:35,262.262 INFO    ] 2026-10-18 23:01:35
[2026-10-18 23:01:35,525.525 INFO    ] 2026-10-18 23:01:35
[2026-10-18 23:01:35,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:01:35,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:01:35,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:01:36,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:01:36,073.073 INFO    ] time= 18/10/2026 23:01:36
[2026-10-18 23:01:36,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:01:36,098.098 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:01:36,228.228 INFO    ] No existing commands found in stream
[2026-10-18 23:01:41,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:01:41,245.245 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-18 23:01:41,812.812 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:01:41,815.815 INFO    ] Checking for system updates...
[2026-10-18 23:01:41,850.850 INFO    ] 200
[2026-10-18 23:01:41,852.852 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:01:41,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:01:41,909.909 INFO    ] No update needed
[2026-10-18 23:01:41,911.911 INFO    ] Checking for camera pi updates...
[2026-10-18 23:01:41,944.944 INFO    ] 200
[2026-10-18 23:01:41,947.947 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:01:41,991.991 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:01:42,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:01:42,033.033 INFO    ] No camera update needed
[2026-10-18 23:01:42,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:01:42,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:01:42,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:01:42,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:01:44,086.086 INFO    ] ================================================
[2026-10-18 23:01:44,101.101 INFO    ] Launching Daemon at Sun Oct 18 23:01:44 IST 2026
[2026-10-18 23:01:44,112.112 INFO    ] ================================================
[2026-10-18 23:01:44,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:01:44
[2026-10-18 23:01:45,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:01:45,734.734 INFO    ] Initializing speech engine...
[2026-10-18 23:01:45,743.743 INFO    ] 2026-10-18 23:01:45
[2026-10-18 23:01:46,013.013 INFO    ] 2026-10-18 23:01:46
[2026-10-18 23:01:46,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:01:46,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:01:46,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:01:46,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:01:46,513.513 INFO    ] time= 18/10/2026 23:01:46
[2026-10-18 23:01:46,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:01:46,585.585 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:01:46,741.741 INFO    ] No existing commands found in stream
[2026-10-18 23:01:51,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:01:51,771.771 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-18 23:01:54,516.516 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:01:54,520.520 INFO    ] Checking for system updates...
[2026-10-18 23:01:54,560.560 INFO    ] 200
[2026-10-18 23:01:54,563.563 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:01:54,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:01:54,618.618 INFO    ] No update needed
[2026-10-18 23:01:54,621.621 INFO    ] Checking for camera pi updates...
[2026-10-18 23:01:54,655.655 INFO    ] 200
[2026-10-18 23:01:54,658.658 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:01:54,700.700 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:01:54,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:01:54,744.744 INFO    ] No camera update needed
[2026-10-18 23:01:54,747.747 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:01:54,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:01:54,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:01:54,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:01:56,802.802 INFO    ] ================================================
[2026-10-18 23:01:56,817.817 INFO    ] Launching Daemon at Sun Oct 18 23:01:56 IST 2026
[2026-10-18 23:01:56,827.827 INFO    ] ================================================
[2026-10-18 23:01:57,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:01:57
[2026-10-18 23:01:58,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:01:58,266.266 INFO    ] Initializing speech engine...
[2026-10-18 23:01:58,282.282 INFO    ] 2026-10-18 23:01:58
[2026-10-18 23:01:58,579.579 INFO    ] 2026-10-18 23:01:58
[2026-10-18 23:01:58,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:01:58,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:01:58,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:01:59,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:01:59,082.082 INFO    ] time= 18/10/2026 23:01:59
[2026-10-18 23:01:59,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:01:59,147.147 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:01:59,295.295 INFO    ] No existing commands found in stream
[2026-10-18 23:02:04,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:02:04,317.317 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-18 23:02:05,685.685 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:02:05,687.687 INFO    ] Checking for system updates...
[2026-10-18 23:02:05,723.723 INFO    ] 200
[2026-10-18 23:02:05,725.725 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:02:05,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:02:05,780.780 INFO    ] No update needed
[2026-10-18 23:02:05,782.782 INFO    ] Checking for camera pi updates...
[2026-10-18 23:02:05,815.815 INFO    ] 200
[2026-10-18 23:02:05,818.818 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:02:05,866.866 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:02:05,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:02:05,910.910 INFO    ] No camera update needed
[2026-10-18 23:02:05,913.913 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:02:05,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:02:05,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:02:05,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:02:07,964.964 INFO    ] ================================================
[2026-10-18 23:02:07,979.979 INFO    ] Launching Daemon at Sun Oct 18 23:02:07 IST 2026
[2026-10-18 23:02:07,990.990 INFO    ] ================================================
[2026-10-18 23:02:08,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:02:08
[2026-10-18 23:02:09,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:02:09,442.442 INFO    ] Initializing speech engine...
[2026-10-18 23:02:09,451.451 INFO    ] 2026-10-18 23:02:09
[2026-10-18 23:02:09,722.722 INFO    ] 2026-10-18 23:02:09
[2026-10-18 23:02:09,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:02:10,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:02:10,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:02:10,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:02:10,249.249 INFO    ] time= 18/10/2026 23:02:10
[2026-10-18 23:02:10,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:02:10,279.279 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:02:10,413.413 INFO    ] No existing commands found in stream
[2026-10-18 23:02:15,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:02:15,445.445 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-18 23:02:19,403.403 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:02:19,405.405 INFO    ] Checking for system updates...
[2026-10-18 23:02:19,441.441 INFO    ] 200
[2026-10-18 23:02:19,443.443 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:02:19,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:02:19,498.498 INFO    ] No update needed
[2026-10-18 23:02:19,501.501 INFO    ] Checking for camera pi updates...
[2026-10-18 23:02:19,535.535 INFO    ] 200
[2026-10-18 23:02:19,537.537 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:02:19,582.582 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:02:19,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:02:19,633.633 INFO    ] No camera update needed
[2026-10-18 23:02:19,635.635 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:02:19,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:02:19,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:02:19,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:02:21,690.690 INFO    ] ================================================
[2026-10-18 23:02:21,705.705 INFO    ] Launching Daemon at Sun Oct 18 23:02:21 IST 2026
[2026-10-18 23:02:21,716.716 INFO    ] ================================================
[2026-10-18 23:02:22,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:02:22
[2026-10-18 23:02:23,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:02:23,363.363 INFO    ] Initializing speech engine...
[2026-10-18 23:02:23,375.375 INFO    ] 2026-10-18 23:02:23
[2026-10-18 23:02:23,662.662 INFO    ] 2026-10-18 23:02:23
[2026-10-18 23:02:23,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:02:23,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:02:23,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:02:24,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:02:24,194.194 INFO    ] time= 18/10/2026 23:02:24
[2026-10-18 23:02:24,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:02:24,244.244 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:02:24,373.373 INFO    ] No existing commands found in stream
[2026-10-18 23:02:29,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:02:29,412.412 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-18 23:02:30,803.803 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:02:30,806.806 INFO    ] Checking for system updates...
[2026-10-18 23:02:30,842.842 INFO    ] 200
[2026-10-18 23:02:30,844.844 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:02:30,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:02:30,903.903 INFO    ] No update needed
[2026-10-18 23:02:30,906.906 INFO    ] Checking for camera pi updates...
[2026-10-18 23:02:30,943.943 INFO    ] 200
[2026-10-18 23:02:30,945.945 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:02:30,985.985 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:02:31,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:02:31,028.028 INFO    ] No camera update needed
[2026-10-18 23:02:31,030.030 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:02:31,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:02:31,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:02:31,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:02:33,089.089 INFO    ] ================================================
[2026-10-18 23:02:33,104.104 INFO    ] Launching Daemon at Sun Oct 18 23:02:33 IST 2026
[2026-10-18 23:02:33,115.115 INFO    ] ================================================
[2026-10-18 23:02:33,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:02:33
[2026-10-18 23:02:34,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:02:34,718.718 INFO    ] Initializing speech engine...
[2026-10-18 23:02:34,741.741 INFO    ] 2026-10-18 23:02:34
[2026-10-18 23:02:35,023.023 INFO    ] 2026-10-18 23:02:35
[2026-10-18 23:02:35,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:02:35,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:02:35,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:02:35,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:02:35,448.448 INFO    ] time= 18/10/2026 23:02:35
[2026-10-18 23:02:35,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:02:35,461.461 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:02:35,542.542 INFO    ] No existing commands found in stream
[2026-10-18 23:02:40,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:02:40,575.575 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-18 23:02:41,803.803 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:02:41,805.805 INFO    ] Checking for system updates...
[2026-10-18 23:02:41,845.845 INFO    ] 200
[2026-10-18 23:02:41,847.847 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:02:41,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:02:41,901.901 INFO    ] No update needed
[2026-10-18 23:02:41,903.903 INFO    ] Checking for camera pi updates...
[2026-10-18 23:02:41,936.936 INFO    ] 200
[2026-10-18 23:02:41,939.939 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:02:41,979.979 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:02:42,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:02:42,022.022 INFO    ] No camera update needed
[2026-10-18 23:02:42,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:02:42,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:02:42,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:02:42,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:02:44,076.076 INFO    ] ================================================
[2026-10-18 23:02:44,092.092 INFO    ] Launching Daemon at Sun Oct 18 23:02:44 IST 2026
[2026-10-18 23:02:44,103.103 INFO    ] ================================================
[2026-10-18 23:02:44,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:02:44
[2026-10-18 23:02:45,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:02:45,613.613 INFO    ] Initializing speech engine...
[2026-10-18 23:02:45,628.628 INFO    ] 2026-10-18 23:02:45
[2026-10-18 23:02:45,916.916 INFO    ] 2026-10-18 23:02:45
[2026-10-18 23:02:45,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:02:46,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:02:46,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:02:46,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:02:46,342.342 INFO    ] time= 18/10/2026 23:02:46
[2026-10-18 23:02:46,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:02:46,353.353 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:02:46,482.482 INFO    ] No existing commands found in stream
[2026-10-18 23:02:51,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:02:51,511.511 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-18 23:02:55,492.492 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:02:55,495.495 INFO    ] Checking for system updates...
[2026-10-18 23:02:55,534.534 INFO    ] 200
[2026-10-18 23:02:55,537.537 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:02:55,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:02:55,597.597 INFO    ] No update needed
[2026-10-18 23:02:55,600.600 INFO    ] Checking for camera pi updates...
[2026-10-18 23:02:55,637.637 INFO    ] 200
[2026-10-18 23:02:55,639.639 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:02:55,684.684 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:02:55,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:02:55,825.825 INFO    ] No camera update needed
[2026-10-18 23:02:55,827.827 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:02:55,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:02:55,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:02:55,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:02:57,880.880 INFO    ] ================================================
[2026-10-18 23:02:57,895.895 INFO    ] Launching Daemon at Sun Oct 18 23:02:57 IST 2026
[2026-10-18 23:02:57,906.906 INFO    ] ================================================
[2026-10-18 23:02:58,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:02:58
[2026-10-18 23:02:59,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:02:59,328.328 INFO    ] Initializing speech engine...
[2026-10-18 23:02:59,337.337 INFO    ] 2026-10-18 23:02:59
[2026-10-18 23:02:59,585.585 INFO    ] 2026-10-18 23:02:59
[2026-10-18 23:02:59,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:02:59,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:02:59,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:03:00,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:03:00,090.090 INFO    ] time= 18/10/2026 23:03:00
[2026-10-18 23:03:00,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:03:00,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:03:00,312.312 INFO    ] No existing commands found in stream
[2026-10-18 23:03:05,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:03:05,338.338 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-18 23:03:10,118.118 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:03:10,121.121 INFO    ] Checking for system updates...
[2026-10-18 23:03:10,157.157 INFO    ] 200
[2026-10-18 23:03:10,159.159 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:03:10,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:03:10,212.212 INFO    ] No update needed
[2026-10-18 23:03:10,215.215 INFO    ] Checking for camera pi updates...
[2026-10-18 23:03:10,250.250 INFO    ] 200
[2026-10-18 23:03:10,252.252 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:03:10,291.291 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:03:10,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:03:10,335.335 INFO    ] No camera update needed
[2026-10-18 23:03:10,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:03:10,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:03:10,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:03:10,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:03:12,390.390 INFO    ] ================================================
[2026-10-18 23:03:12,406.406 INFO    ] Launching Daemon at Sun Oct 18 23:03:12 IST 2026
[2026-10-18 23:03:12,417.417 INFO    ] ================================================
[2026-10-18 23:03:12,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:03:12
[2026-10-18 23:03:13,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:03:13,876.876 INFO    ] Initializing speech engine...
[2026-10-18 23:03:13,885.885 INFO    ] 2026-10-18 23:03:13
[2026-10-18 23:03:14,151.151 INFO    ] 2026-10-18 23:03:14
[2026-10-18 23:03:14,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:03:14,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:03:14,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:03:14,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:03:14,631.631 INFO    ] time= 18/10/2026 23:03:14
[2026-10-18 23:03:14,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:03:14,711.711 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:03:14,866.866 INFO    ] No existing commands found in stream
[2026-10-18 23:03:19,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:03:19,901.901 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-18 23:03:21,810.810 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:03:21,813.813 INFO    ] Checking for system updates...
[2026-10-18 23:03:21,850.850 INFO    ] 200
[2026-10-18 23:03:21,852.852 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:03:21,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:03:21,907.907 INFO    ] No update needed
[2026-10-18 23:03:21,910.910 INFO    ] Checking for camera pi updates...
[2026-10-18 23:03:21,952.952 INFO    ] 200
[2026-10-18 23:03:21,954.954 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:03:21,994.994 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:03:22,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:03:22,037.037 INFO    ] No camera update needed
[2026-10-18 23:03:22,040.040 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:03:22,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:03:22,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:03:22,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:03:24,091.091 INFO    ] ================================================
[2026-10-18 23:03:24,106.106 INFO    ] Launching Daemon at Sun Oct 18 23:03:24 IST 2026
[2026-10-18 23:03:24,118.118 INFO    ] ================================================
[2026-10-18 23:03:24,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:03:24
[2026-10-18 23:03:25,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:03:25,572.572 INFO    ] Initializing speech engine...
[2026-10-18 23:03:25,582.582 INFO    ] 2026-10-18 23:03:25
[2026-10-18 23:03:25,842.842 INFO    ] 2026-10-18 23:03:25
[2026-10-18 23:03:25,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:03:26,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:03:26,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:03:26,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:03:26,341.341 INFO    ] time= 18/10/2026 23:03:26
[2026-10-18 23:03:26,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:03:26,459.459 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:03:26,604.604 INFO    ] No existing commands found in stream
[2026-10-18 23:03:31,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:03:31,633.633 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-18 23:03:34,300.300 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:03:34,302.302 INFO    ] Checking for system updates...
[2026-10-18 23:03:34,340.340 INFO    ] 200
[2026-10-18 23:03:34,343.343 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:03:34,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:03:34,400.400 INFO    ] No update needed
[2026-10-18 23:03:34,403.403 INFO    ] Checking for camera pi updates...
[2026-10-18 23:03:34,438.438 INFO    ] 200
[2026-10-18 23:03:34,440.440 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:03:34,480.480 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:03:34,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:03:34,524.524 INFO    ] No camera update needed
[2026-10-18 23:03:34,526.526 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:03:34,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:03:34,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:03:34,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:03:36,578.578 INFO    ] ================================================
[2026-10-18 23:03:36,594.594 INFO    ] Launching Daemon at Sun Oct 18 23:03:36 IST 2026
[2026-10-18 23:03:36,607.607 INFO    ] ================================================
[2026-10-18 23:03:37,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:03:37
[2026-10-18 23:03:37,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:03:38,166.166 INFO    ] Initializing speech engine...
[2026-10-18 23:03:38,175.175 INFO    ] 2026-10-18 23:03:38
[2026-10-18 23:03:38,490.490 INFO    ] 2026-10-18 23:03:38
[2026-10-18 23:03:38,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:03:38,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:03:38,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:03:38,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:03:39,006.006 INFO    ] time= 18/10/2026 23:03:39
[2026-10-18 23:03:39,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:03:39,054.054 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:03:39,169.169 INFO    ] No existing commands found in stream
[2026-10-18 23:03:44,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:03:44,202.202 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-18 23:03:45,736.736 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:03:45,739.739 INFO    ] Checking for system updates...
[2026-10-18 23:03:45,777.777 INFO    ] 200
[2026-10-18 23:03:45,779.779 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:03:45,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:03:45,833.833 INFO    ] No update needed
[2026-10-18 23:03:45,836.836 INFO    ] Checking for camera pi updates...
[2026-10-18 23:03:45,868.868 INFO    ] 200
[2026-10-18 23:03:45,871.871 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:03:45,913.913 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:03:45,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:03:45,956.956 INFO    ] No camera update needed
[2026-10-18 23:03:45,959.959 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:03:45,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:03:45,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:03:45,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:03:48,010.010 INFO    ] ================================================
[2026-10-18 23:03:48,025.025 INFO    ] Launching Daemon at Sun Oct 18 23:03:48 IST 2026
[2026-10-18 23:03:48,036.036 INFO    ] ================================================
[2026-10-18 23:03:48,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:03:48
[2026-10-18 23:03:49,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:03:49,468.468 INFO    ] Initializing speech engine...
[2026-10-18 23:03:49,477.477 INFO    ] 2026-10-18 23:03:49
[2026-10-18 23:03:49,725.725 INFO    ] 2026-10-18 23:03:49
[2026-10-18 23:03:49,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:03:50,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:03:50,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:03:50,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:03:50,272.272 INFO    ] time= 18/10/2026 23:03:50
[2026-10-18 23:03:50,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:03:50,300.300 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:03:50,431.431 INFO    ] No existing commands found in stream
[2026-10-18 23:03:55,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:03:55,454.454 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-18 23:03:57,358.358 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:03:57,361.361 INFO    ] Checking for system updates...
[2026-10-18 23:03:57,400.400 INFO    ] 200
[2026-10-18 23:03:57,402.402 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:03:57,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:03:57,467.467 INFO    ] No update needed
[2026-10-18 23:03:57,470.470 INFO    ] Checking for camera pi updates...
[2026-10-18 23:03:57,511.511 INFO    ] 200
[2026-10-18 23:03:57,514.514 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:03:57,556.556 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:03:57,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:03:57,598.598 INFO    ] No camera update needed
[2026-10-18 23:03:57,600.600 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:03:57,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:03:57,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:03:57,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:03:59,651.651 INFO    ] ================================================
[2026-10-18 23:03:59,667.667 INFO    ] Launching Daemon at Sun Oct 18 23:03:59 IST 2026
[2026-10-18 23:03:59,678.678 INFO    ] ================================================
[2026-10-18 23:04:00,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:04:00
[2026-10-18 23:04:00,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:04:01,122.122 INFO    ] Initializing speech engine...
[2026-10-18 23:04:01,134.134 INFO    ] 2026-10-18 23:04:01
[2026-10-18 23:04:01,415.415 INFO    ] 2026-10-18 23:04:01
[2026-10-18 23:04:01,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:04:01,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:04:01,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:04:01,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:04:01,884.884 INFO    ] time= 18/10/2026 23:04:01
[2026-10-18 23:04:01,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:04:01,893.893 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:04:01,976.976 INFO    ] No existing commands found in stream
[2026-10-18 23:04:06,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:04:06,988.988 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-18 23:04:11,465.465 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:04:11,468.468 INFO    ] Checking for system updates...
[2026-10-18 23:04:11,509.509 INFO    ] 200
[2026-10-18 23:04:11,511.511 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:04:11,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:04:11,571.571 INFO    ] No update needed
[2026-10-18 23:04:11,574.574 INFO    ] Checking for camera pi updates...
[2026-10-18 23:04:11,610.610 INFO    ] 200
[2026-10-18 23:04:11,612.612 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:04:11,652.652 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:04:11,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:04:11,694.694 INFO    ] No camera update needed
[2026-10-18 23:04:11,697.697 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:04:11,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:04:11,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:04:11,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:04:13,749.749 INFO    ] ================================================
[2026-10-18 23:04:13,765.765 INFO    ] Launching Daemon at Sun Oct 18 23:04:13 IST 2026
[2026-10-18 23:04:13,776.776 INFO    ] ================================================
[2026-10-18 23:04:14,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:04:14
[2026-10-18 23:04:14,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:04:15,208.208 INFO    ] Initializing speech engine...
[2026-10-18 23:04:15,225.225 INFO    ] 2026-10-18 23:04:15
[2026-10-18 23:04:15,493.493 INFO    ] 2026-10-18 23:04:15
[2026-10-18 23:04:15,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:04:15,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:04:15,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:04:15,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:04:15,978.978 INFO    ] time= 18/10/2026 23:04:15
[2026-10-18 23:04:15,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:04:16,049.049 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:04:16,151.151 INFO    ] No existing commands found in stream
[2026-10-18 23:04:21,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:04:21,164.164 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-18 23:04:21,796.796 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:04:21,799.799 INFO    ] Checking for system updates...
[2026-10-18 23:04:21,835.835 INFO    ] 200
[2026-10-18 23:04:21,837.837 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:04:21,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:04:21,893.893 INFO    ] No update needed
[2026-10-18 23:04:21,895.895 INFO    ] Checking for camera pi updates...
[2026-10-18 23:04:21,929.929 INFO    ] 200
[2026-10-18 23:04:21,932.932 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:04:21,972.972 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:04:22,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:04:22,018.018 INFO    ] No camera update needed
[2026-10-18 23:04:22,021.021 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:04:22,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:04:22,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:04:22,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:04:24,076.076 INFO    ] ================================================
[2026-10-18 23:04:24,091.091 INFO    ] Launching Daemon at Sun Oct 18 23:04:24 IST 2026
[2026-10-18 23:04:24,102.102 INFO    ] ================================================
[2026-10-18 23:04:24,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:04:24
[2026-10-18 23:04:25,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:04:25,686.686 INFO    ] Initializing speech engine...
[2026-10-18 23:04:25,693.693 INFO    ] 2026-10-18 23:04:25
[2026-10-18 23:04:25,963.963 INFO    ] 2026-10-18 23:04:25
[2026-10-18 23:04:25,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:04:26,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:04:26,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:04:26,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:04:26,478.478 INFO    ] time= 18/10/2026 23:04:26
[2026-10-18 23:04:26,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:04:26,533.533 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:04:26,676.676 INFO    ] No existing commands found in stream
[2026-10-18 23:04:31,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:04:31,693.693 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-18 23:04:36,147.147 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:04:36,150.150 INFO    ] Checking for system updates...
[2026-10-18 23:04:36,186.186 INFO    ] 200
[2026-10-18 23:04:36,189.189 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:04:36,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:04:36,245.245 INFO    ] No update needed
[2026-10-18 23:04:36,247.247 INFO    ] Checking for camera pi updates...
[2026-10-18 23:04:36,284.284 INFO    ] 200
[2026-10-18 23:04:36,286.286 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:04:36,326.326 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:04:36,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:04:36,370.370 INFO    ] No camera update needed
[2026-10-18 23:04:36,372.372 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:04:36,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:04:36,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:04:36,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:04:38,427.427 INFO    ] ================================================
[2026-10-18 23:04:38,443.443 INFO    ] Launching Daemon at Sun Oct 18 23:04:38 IST 2026
[2026-10-18 23:04:38,454.454 INFO    ] ================================================
[2026-10-18 23:04:39,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:04:39
[2026-10-18 23:04:39,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:04:39,856.856 INFO    ] Initializing speech engine...
[2026-10-18 23:04:39,870.870 INFO    ] 2026-10-18 23:04:39
[2026-10-18 23:04:40,147.147 INFO    ] 2026-10-18 23:04:40
[2026-10-18 23:04:40,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:04:40,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:04:40,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:04:40,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:04:40,652.652 INFO    ] time= 18/10/2026 23:04:40
[2026-10-18 23:04:40,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:04:40,776.776 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:04:40,849.849 INFO    ] No existing commands found in stream
[2026-10-18 23:04:45,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:04:45,863.863 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-18 23:04:47,381.381 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:04:47,384.384 INFO    ] Checking for system updates...
[2026-10-18 23:04:47,420.420 INFO    ] 200
[2026-10-18 23:04:47,423.423 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:04:47,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:04:47,476.476 INFO    ] No update needed
[2026-10-18 23:04:47,478.478 INFO    ] Checking for camera pi updates...
[2026-10-18 23:04:47,513.513 INFO    ] 200
[2026-10-18 23:04:47,515.515 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:04:47,557.557 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:04:47,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:04:47,607.607 INFO    ] No camera update needed
[2026-10-18 23:04:47,609.609 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:04:47,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:04:47,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:04:47,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:04:49,660.660 INFO    ] ================================================
[2026-10-18 23:04:49,676.676 INFO    ] Launching Daemon at Sun Oct 18 23:04:49 IST 2026
[2026-10-18 23:04:49,687.687 INFO    ] ================================================
[2026-10-18 23:04:50,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:04:50
[2026-10-18 23:04:50,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:04:51,103.103 INFO    ] Initializing speech engine...
[2026-10-18 23:04:51,116.116 INFO    ] 2026-10-18 23:04:51
[2026-10-18 23:04:51,392.392 INFO    ] 2026-10-18 23:04:51
[2026-10-18 23:04:51,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:04:51,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:04:51,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:04:51,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:04:51,924.924 INFO    ] time= 18/10/2026 23:04:51
[2026-10-18 23:04:51,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:04:52,006.006 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:04:52,159.159 INFO    ] No existing commands found in stream
[2026-10-18 23:04:57,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:04:57,174.174 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-18 23:04:58,459.459 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:04:58,466.466 INFO    ] Checking for system updates...
[2026-10-18 23:04:58,501.501 INFO    ] 200
[2026-10-18 23:04:58,503.503 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:04:58,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:04:58,556.556 INFO    ] No update needed
[2026-10-18 23:04:58,558.558 INFO    ] Checking for camera pi updates...
[2026-10-18 23:04:58,591.591 INFO    ] 200
[2026-10-18 23:04:58,594.594 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:04:58,634.634 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:04:58,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:04:58,774.774 INFO    ] No camera update needed
[2026-10-18 23:04:58,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:04:58,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:04:58,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:04:58,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:05:00,835.835 INFO    ] ================================================
[2026-10-18 23:05:00,851.851 INFO    ] Launching Daemon at Sun Oct 18 23:05:00 IST 2026
[2026-10-18 23:05:00,862.862 INFO    ] ================================================
[2026-10-18 23:05:01,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:05:01
[2026-10-18 23:05:02,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:05:02,684.684 INFO    ] Initializing speech engine...
[2026-10-18 23:05:02,692.692 INFO    ] 2026-10-18 23:05:02
[2026-10-18 23:05:03,000.000 INFO    ] 2026-10-18 23:05:02
[2026-10-18 23:05:03,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:05:03,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:05:03,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:05:03,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:05:03,438.438 INFO    ] time= 18/10/2026 23:05:03
[2026-10-18 23:05:03,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:05:03,488.488 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:05:03,652.652 INFO    ] No existing commands found in stream
[2026-10-18 23:05:08,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:05:08,676.676 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-18 23:05:12,355.355 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:05:12,358.358 INFO    ] Checking for system updates...
[2026-10-18 23:05:12,392.392 INFO    ] 200
[2026-10-18 23:05:12,395.395 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:05:12,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:05:12,465.465 INFO    ] No update needed
[2026-10-18 23:05:12,467.467 INFO    ] Checking for camera pi updates...
[2026-10-18 23:05:12,502.502 INFO    ] 200
[2026-10-18 23:05:12,504.504 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:05:12,543.543 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:05:12,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:05:12,595.595 INFO    ] No camera update needed
[2026-10-18 23:05:12,597.597 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:05:12,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:05:12,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:05:12,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:05:14,649.649 INFO    ] ================================================
[2026-10-18 23:05:14,664.664 INFO    ] Launching Daemon at Sun Oct 18 23:05:14 IST 2026
[2026-10-18 23:05:14,676.676 INFO    ] ================================================
[2026-10-18 23:05:15,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:05:15
[2026-10-18 23:05:15,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:05:16,108.108 INFO    ] Initializing speech engine...
[2026-10-18 23:05:16,124.124 INFO    ] 2026-10-18 23:05:16
[2026-10-18 23:05:16,404.404 INFO    ] 2026-10-18 23:05:16
[2026-10-18 23:05:16,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:05:16,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:05:16,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:05:16,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:05:16,958.958 INFO    ] time= 18/10/2026 23:05:16
[2026-10-18 23:05:16,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:05:17,005.005 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:05:17,135.135 INFO    ] No existing commands found in stream
[2026-10-18 23:05:22,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:05:22,163.163 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-18 23:05:26,066.066 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:05:26,068.068 INFO    ] Checking for system updates...
[2026-10-18 23:05:26,103.103 INFO    ] 200
[2026-10-18 23:05:26,105.105 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:05:26,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:05:26,163.163 INFO    ] No update needed
[2026-10-18 23:05:26,165.165 INFO    ] Checking for camera pi updates...
[2026-10-18 23:05:26,199.199 INFO    ] 200
[2026-10-18 23:05:26,201.201 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:05:26,240.240 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:05:26,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:05:26,283.283 INFO    ] No camera update needed
[2026-10-18 23:05:26,285.285 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:05:26,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:05:26,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:05:26,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:05:28,337.337 INFO    ] ================================================
[2026-10-18 23:05:28,352.352 INFO    ] Launching Daemon at Sun Oct 18 23:05:28 IST 2026
[2026-10-18 23:05:28,366.366 INFO    ] ================================================
[2026-10-18 23:05:29,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:05:29
[2026-10-18 23:05:29,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:05:29,973.973 INFO    ] Initializing speech engine...
[2026-10-18 23:05:29,981.981 INFO    ] 2026-10-18 23:05:29
[2026-10-18 23:05:30,277.277 INFO    ] 2026-10-18 23:05:30
[2026-10-18 23:05:30,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:05:30,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:05:30,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:05:30,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:05:30,810.810 INFO    ] time= 18/10/2026 23:05:30
[2026-10-18 23:05:30,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:05:30,837.837 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:05:30,974.974 INFO    ] No existing commands found in stream
[2026-10-18 23:05:35,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:05:35,996.996 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-18 23:05:37,356.356 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:05:37,359.359 INFO    ] Checking for system updates...
[2026-10-18 23:05:37,394.394 INFO    ] 200
[2026-10-18 23:05:37,397.397 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:05:37,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:05:37,452.452 INFO    ] No update needed
[2026-10-18 23:05:37,454.454 INFO    ] Checking for camera pi updates...
[2026-10-18 23:05:37,488.488 INFO    ] 200
[2026-10-18 23:05:37,491.491 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:05:37,543.543 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:05:37,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:05:37,587.587 INFO    ] No camera update needed
[2026-10-18 23:05:37,589.589 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:05:37,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:05:37,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:05:37,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:05:39,642.642 INFO    ] ================================================
[2026-10-18 23:05:39,657.657 INFO    ] Launching Daemon at Sun Oct 18 23:05:39 IST 2026
[2026-10-18 23:05:39,667.667 INFO    ] ================================================
[2026-10-18 23:05:40,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:05:40
[2026-10-18 23:05:40,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:05:41,197.197 INFO    ] Initializing speech engine...
[2026-10-18 23:05:41,206.206 INFO    ] 2026-10-18 23:05:41
[2026-10-18 23:05:41,451.451 INFO    ] 2026-10-18 23:05:41
[2026-10-18 23:05:41,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:05:41,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:05:41,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:05:41,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:05:41,954.954 INFO    ] time= 18/10/2026 23:05:41
[2026-10-18 23:05:42,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:05:42,017.017 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:05:42,163.163 INFO    ] No existing commands found in stream
[2026-10-18 23:05:47,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:05:47,178.178 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-18 23:05:50,899.899 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:05:50,902.902 INFO    ] Checking for system updates...
[2026-10-18 23:05:50,936.936 INFO    ] 200
[2026-10-18 23:05:50,939.939 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:05:50,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:05:50,992.992 INFO    ] No update needed
[2026-10-18 23:05:50,995.995 INFO    ] Checking for camera pi updates...
[2026-10-18 23:05:51,030.030 INFO    ] 200
[2026-10-18 23:05:51,032.032 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:05:51,074.074 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:05:51,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:05:51,117.117 INFO    ] No camera update needed
[2026-10-18 23:05:51,119.119 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:05:51,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:05:51,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:05:51,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:05:53,170.170 INFO    ] ================================================
[2026-10-18 23:05:53,185.185 INFO    ] Launching Daemon at Sun Oct 18 23:05:53 IST 2026
[2026-10-18 23:05:53,196.196 INFO    ] ================================================
[2026-10-18 23:05:53,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:05:53
[2026-10-18 23:05:54,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:05:54,627.627 INFO    ] Initializing speech engine...
[2026-10-18 23:05:54,633.633 INFO    ] 2026-10-18 23:05:54
[2026-10-18 23:05:54,921.921 INFO    ] 2026-10-18 23:05:54
[2026-10-18 23:05:54,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:05:55,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:05:55,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:05:55,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:05:55,404.404 INFO    ] time= 18/10/2026 23:05:55
[2026-10-18 23:05:55,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:05:55,528.528 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:05:55,683.683 INFO    ] No existing commands found in stream
[2026-10-18 23:06:00,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:06:00,716.716 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-18 23:06:01,972.972 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:06:01,976.976 INFO    ] Checking for system updates...
[2026-10-18 23:06:02,037.037 INFO    ] 200
[2026-10-18 23:06:02,041.041 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:06:02,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:06:02,123.123 INFO    ] No update needed
[2026-10-18 23:06:02,126.126 INFO    ] Checking for camera pi updates...
[2026-10-18 23:06:02,169.169 INFO    ] 200
[2026-10-18 23:06:02,173.173 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:06:02,271.271 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:06:02,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:06:02,307.307 INFO    ] No camera update needed
[2026-10-18 23:06:02,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:06:02,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:06:02,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:06:02,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:06:04,382.382 INFO    ] ================================================
[2026-10-18 23:06:04,397.397 INFO    ] Launching Daemon at Sun Oct 18 23:06:04 IST 2026
[2026-10-18 23:06:04,407.407 INFO    ] ================================================
[2026-10-18 23:06:04,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:06:04
[2026-10-18 23:06:05,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:06:05,828.828 INFO    ] Initializing speech engine...
[2026-10-18 23:06:05,837.837 INFO    ] 2026-10-18 23:06:05
[2026-10-18 23:06:06,087.087 INFO    ] 2026-10-18 23:06:06
[2026-10-18 23:06:06,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:06:06,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:06:06,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:06:06,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:06:06,646.646 INFO    ] time= 18/10/2026 23:06:06
[2026-10-18 23:06:06,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:06:06,667.667 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:06:06,801.801 INFO    ] No existing commands found in stream
[2026-10-18 23:06:11,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:06:11,818.818 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-18 23:06:13,510.510 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:06:13,512.512 INFO    ] Checking for system updates...
[2026-10-18 23:06:13,548.548 INFO    ] 200
[2026-10-18 23:06:13,551.551 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:06:13,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:06:13,608.608 INFO    ] No update needed
[2026-10-18 23:06:13,610.610 INFO    ] Checking for camera pi updates...
[2026-10-18 23:06:13,643.643 INFO    ] 200
[2026-10-18 23:06:13,646.646 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:06:13,688.688 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:06:13,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:06:13,731.731 INFO    ] No camera update needed
[2026-10-18 23:06:13,733.733 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:06:13,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:06:13,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:06:13,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:06:15,786.786 INFO    ] ================================================
[2026-10-18 23:06:15,802.802 INFO    ] Launching Daemon at Sun Oct 18 23:06:15 IST 2026
[2026-10-18 23:06:15,813.813 INFO    ] ================================================
[2026-10-18 23:06:16,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:06:16
[2026-10-18 23:06:16,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:06:17,256.256 INFO    ] Initializing speech engine...
[2026-10-18 23:06:17,266.266 INFO    ] 2026-10-18 23:06:17
[2026-10-18 23:06:17,512.512 INFO    ] 2026-10-18 23:06:17
[2026-10-18 23:06:17,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:06:17,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:06:17,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:06:17,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:06:18,012.012 INFO    ] time= 18/10/2026 23:06:17
[2026-10-18 23:06:18,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:06:18,091.091 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:06:18,242.242 INFO    ] No existing commands found in stream
[2026-10-18 23:06:23,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:06:23,260.260 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-18 23:06:26,839.839 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:06:26,841.841 INFO    ] Checking for system updates...
[2026-10-18 23:06:26,877.877 INFO    ] 200
[2026-10-18 23:06:26,880.880 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:06:26,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:06:26,939.939 INFO    ] No update needed
[2026-10-18 23:06:26,942.942 INFO    ] Checking for camera pi updates...
[2026-10-18 23:06:26,978.978 INFO    ] 200
[2026-10-18 23:06:26,980.980 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:06:27,024.024 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:06:27,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:06:27,067.067 INFO    ] No camera update needed
[2026-10-18 23:06:27,070.070 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:06:27,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:06:27,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:06:27,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:06:29,124.124 INFO    ] ================================================
[2026-10-18 23:06:29,139.139 INFO    ] Launching Daemon at Sun Oct 18 23:06:29 IST 2026
[2026-10-18 23:06:29,149.149 INFO    ] ================================================
[2026-10-18 23:06:29,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:06:29
[2026-10-18 23:06:30,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:06:30,604.604 INFO    ] Initializing speech engine...
[2026-10-18 23:06:30,627.627 INFO    ] 2026-10-18 23:06:30
[2026-10-18 23:06:30,897.897 INFO    ] 2026-10-18 23:06:30
[2026-10-18 23:06:30,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:06:31,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:06:31,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:06:31,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:06:31,292.292 INFO    ] time= 18/10/2026 23:06:31
[2026-10-18 23:06:31,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:06:31,361.361 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:06:31,492.492 INFO    ] No existing commands found in stream
[2026-10-18 23:06:36,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:06:36,506.506 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-18 23:06:39,825.825 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:06:39,828.828 INFO    ] Checking for system updates...
[2026-10-18 23:06:39,865.865 INFO    ] 200
[2026-10-18 23:06:39,868.868 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:06:39,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:06:39,925.925 INFO    ] No update needed
[2026-10-18 23:06:39,928.928 INFO    ] Checking for camera pi updates...
[2026-10-18 23:06:39,961.961 INFO    ] 200
[2026-10-18 23:06:39,964.964 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:06:40,005.005 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:06:40,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:06:40,045.045 INFO    ] No camera update needed
[2026-10-18 23:06:40,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:06:40,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:06:40,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:06:40,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:06:42,101.101 INFO    ] ================================================
[2026-10-18 23:06:42,116.116 INFO    ] Launching Daemon at Sun Oct 18 23:06:42 IST 2026
[2026-10-18 23:06:42,127.127 INFO    ] ================================================
[2026-10-18 23:06:42,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:06:42
[2026-10-18 23:06:43,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:06:43,675.675 INFO    ] Initializing speech engine...
[2026-10-18 23:06:43,683.683 INFO    ] 2026-10-18 23:06:43
[2026-10-18 23:06:43,961.961 INFO    ] 2026-10-18 23:06:43
[2026-10-18 23:06:44,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:06:44,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:06:44,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:06:44,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:06:44,497.497 INFO    ] time= 18/10/2026 23:06:44
[2026-10-18 23:06:44,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:06:44,545.545 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:06:44,670.670 INFO    ] No existing commands found in stream
[2026-10-18 23:06:49,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:06:49,710.710 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-18 23:06:53,019.019 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:06:53,022.022 INFO    ] Checking for system updates...
[2026-10-18 23:06:53,064.064 INFO    ] 200
[2026-10-18 23:06:53,071.071 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:06:53,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:06:53,137.137 INFO    ] No update needed
[2026-10-18 23:06:53,141.141 INFO    ] Checking for camera pi updates...
[2026-10-18 23:06:53,178.178 INFO    ] 200
[2026-10-18 23:06:53,181.181 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:06:53,223.223 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:06:53,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:06:53,266.266 INFO    ] No camera update needed
[2026-10-18 23:06:53,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:06:53,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:06:53,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:06:53,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:06:55,324.324 INFO    ] ================================================
[2026-10-18 23:06:55,339.339 INFO    ] Launching Daemon at Sun Oct 18 23:06:55 IST 2026
[2026-10-18 23:06:55,350.350 INFO    ] ================================================
[2026-10-18 23:06:55,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:06:55
[2026-10-18 23:06:56,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:06:56,907.907 INFO    ] Initializing speech engine...
[2026-10-18 23:06:56,915.915 INFO    ] 2026-10-18 23:06:56
[2026-10-18 23:06:57,186.186 INFO    ] 2026-10-18 23:06:57
[2026-10-18 23:06:57,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:06:57,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:06:57,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:06:57,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:06:57,665.665 INFO    ] time= 18/10/2026 23:06:57
[2026-10-18 23:06:57,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:06:57,744.744 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:06:57,908.908 INFO    ] No existing commands found in stream
[2026-10-18 23:07:02,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:07:02,944.944 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-18 23:07:05,243.243 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:07:05,246.246 INFO    ] Checking for system updates...
[2026-10-18 23:07:05,282.282 INFO    ] 200
[2026-10-18 23:07:05,285.285 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:07:05,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:07:05,344.344 INFO    ] No update needed
[2026-10-18 23:07:05,346.346 INFO    ] Checking for camera pi updates...
[2026-10-18 23:07:05,379.379 INFO    ] 200
[2026-10-18 23:07:05,382.382 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:07:05,425.425 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:07:05,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:07:05,471.471 INFO    ] No camera update needed
[2026-10-18 23:07:05,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:07:05,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:07:05,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:07:05,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:07:07,529.529 INFO    ] ================================================
[2026-10-18 23:07:07,544.544 INFO    ] Launching Daemon at Sun Oct 18 23:07:07 IST 2026
[2026-10-18 23:07:07,554.554 INFO    ] ================================================
[2026-10-18 23:07:08,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:07:08
[2026-10-18 23:07:08,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:07:08,977.977 INFO    ] Initializing speech engine...
[2026-10-18 23:07:08,986.986 INFO    ] 2026-10-18 23:07:08
[2026-10-18 23:07:09,233.233 INFO    ] 2026-10-18 23:07:09
[2026-10-18 23:07:09,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:07:09,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:07:09,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:07:09,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:07:09,751.751 INFO    ] time= 18/10/2026 23:07:09
[2026-10-18 23:07:09,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:07:09,829.829 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:07:09,951.951 INFO    ] No existing commands found in stream
[2026-10-18 23:07:14,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:07:14,972.972 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-18 23:07:17,992.992 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:07:17,995.995 INFO    ] Checking for system updates...
[2026-10-18 23:07:18,031.031 INFO    ] 200
[2026-10-18 23:07:18,033.033 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:07:18,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:07:18,087.087 INFO    ] No update needed
[2026-10-18 23:07:18,090.090 INFO    ] Checking for camera pi updates...
[2026-10-18 23:07:18,123.123 INFO    ] 200
[2026-10-18 23:07:18,125.125 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:07:18,167.167 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:07:18,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:07:18,211.211 INFO    ] No camera update needed
[2026-10-18 23:07:18,213.213 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:07:18,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:07:18,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:07:18,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:07:20,265.265 INFO    ] ================================================
[2026-10-18 23:07:20,280.280 INFO    ] Launching Daemon at Sun Oct 18 23:07:20 IST 2026
[2026-10-18 23:07:20,290.290 INFO    ] ================================================
[2026-10-18 23:07:20,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:07:20
[2026-10-18 23:07:21,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:07:21,738.738 INFO    ] Initializing speech engine...
[2026-10-18 23:07:21,754.754 INFO    ] 2026-10-18 23:07:21
[2026-10-18 23:07:22,037.037 INFO    ] 2026-10-18 23:07:22
[2026-10-18 23:07:22,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:07:22,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:07:22,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:07:22,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:07:22,583.583 INFO    ] time= 18/10/2026 23:07:22
[2026-10-18 23:07:22,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:07:22,661.661 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:07:22,792.792 INFO    ] No existing commands found in stream
[2026-10-18 23:07:27,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:07:27,814.814 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-18 23:07:29,787.787 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:07:29,789.789 INFO    ] Checking for system updates...
[2026-10-18 23:07:29,825.825 INFO    ] 200
[2026-10-18 23:07:29,828.828 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:07:29,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:07:29,883.883 INFO    ] No update needed
[2026-10-18 23:07:29,886.886 INFO    ] Checking for camera pi updates...
[2026-10-18 23:07:29,919.919 INFO    ] 200
[2026-10-18 23:07:29,921.921 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:07:29,961.961 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:07:30,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:07:30,004.004 INFO    ] No camera update needed
[2026-10-18 23:07:30,007.007 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:07:30,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:07:30,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:07:30,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:07:32,059.059 INFO    ] ================================================
[2026-10-18 23:07:32,075.075 INFO    ] Launching Daemon at Sun Oct 18 23:07:32 IST 2026
[2026-10-18 23:07:32,086.086 INFO    ] ================================================
[2026-10-18 23:07:32,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:07:32
[2026-10-18 23:07:33,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:07:33,682.682 INFO    ] Initializing speech engine...
[2026-10-18 23:07:33,693.693 INFO    ] 2026-10-18 23:07:33
[2026-10-18 23:07:33,939.939 INFO    ] 2026-10-18 23:07:33
[2026-10-18 23:07:33,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:07:34,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:07:34,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:07:34,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:07:34,320.320 INFO    ] time= 18/10/2026 23:07:34
[2026-10-18 23:07:34,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:07:34,391.391 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:07:34,519.519 INFO    ] No existing commands found in stream
[2026-10-18 23:07:39,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:07:39,533.533 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-18 23:07:41,144.144 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:07:41,146.146 INFO    ] Checking for system updates...
[2026-10-18 23:07:41,184.184 INFO    ] 200
[2026-10-18 23:07:41,187.187 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:07:41,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:07:41,242.242 INFO    ] No update needed
[2026-10-18 23:07:41,244.244 INFO    ] Checking for camera pi updates...
[2026-10-18 23:07:41,280.280 INFO    ] 200
[2026-10-18 23:07:41,282.282 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:07:41,322.322 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:07:41,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:07:41,364.364 INFO    ] No camera update needed
[2026-10-18 23:07:41,366.366 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:07:41,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:07:41,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:07:41,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:07:43,420.420 INFO    ] ================================================
[2026-10-18 23:07:43,435.435 INFO    ] Launching Daemon at Sun Oct 18 23:07:43 IST 2026
[2026-10-18 23:07:43,445.445 INFO    ] ================================================
[2026-10-18 23:07:44,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:07:44
[2026-10-18 23:07:44,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:07:44,882.882 INFO    ] Initializing speech engine...
[2026-10-18 23:07:44,893.893 INFO    ] 2026-10-18 23:07:44
[2026-10-18 23:07:45,175.175 INFO    ] 2026-10-18 23:07:45
[2026-10-18 23:07:45,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:07:45,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:07:45,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:07:45,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:07:45,662.662 INFO    ] time= 18/10/2026 23:07:45
[2026-10-18 23:07:45,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:07:45,782.782 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:07:45,944.944 INFO    ] No existing commands found in stream
[2026-10-18 23:07:50,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:07:50,975.975 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-18 23:07:52,040.040 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:07:52,043.043 INFO    ] Checking for system updates...
[2026-10-18 23:07:52,079.079 INFO    ] 200
[2026-10-18 23:07:52,081.081 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:07:52,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:07:52,136.136 INFO    ] No update needed
[2026-10-18 23:07:52,138.138 INFO    ] Checking for camera pi updates...
[2026-10-18 23:07:52,173.173 INFO    ] 200
[2026-10-18 23:07:52,175.175 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:07:52,223.223 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:07:52,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:07:52,265.265 INFO    ] No camera update needed
[2026-10-18 23:07:52,268.268 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:07:52,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:07:52,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:07:52,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:07:54,320.320 INFO    ] ================================================
[2026-10-18 23:07:54,335.335 INFO    ] Launching Daemon at Sun Oct 18 23:07:54 IST 2026
[2026-10-18 23:07:54,346.346 INFO    ] ================================================
[2026-10-18 23:07:54,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:07:54
[2026-10-18 23:07:55,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:07:55,761.761 INFO    ] Initializing speech engine...
[2026-10-18 23:07:55,769.769 INFO    ] 2026-10-18 23:07:55
[2026-10-18 23:07:56,057.057 INFO    ] 2026-10-18 23:07:56
[2026-10-18 23:07:56,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:07:56,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:07:56,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:07:56,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:07:56,468.468 INFO    ] time= 18/10/2026 23:07:56
[2026-10-18 23:07:56,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:07:56,522.522 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:07:56,656.656 INFO    ] No existing commands found in stream
[2026-10-18 23:08:01,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:08:01,684.684 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-18 23:08:05,222.222 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:08:05,225.225 INFO    ] Checking for system updates...
[2026-10-18 23:08:05,261.261 INFO    ] 200
[2026-10-18 23:08:05,263.263 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:08:05,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:08:05,322.322 INFO    ] No update needed
[2026-10-18 23:08:05,324.324 INFO    ] Checking for camera pi updates...
[2026-10-18 23:08:05,361.361 INFO    ] 200
[2026-10-18 23:08:05,363.363 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:08:05,404.404 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:08:05,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:08:05,446.446 INFO    ] No camera update needed
[2026-10-18 23:08:05,449.449 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:08:05,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:08:05,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:08:05,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:08:07,504.504 INFO    ] ================================================
[2026-10-18 23:08:07,519.519 INFO    ] Launching Daemon at Sun Oct 18 23:08:07 IST 2026
[2026-10-18 23:08:07,529.529 INFO    ] ================================================
[2026-10-18 23:08:08,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:08:08
[2026-10-18 23:08:08,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:08:08,945.945 INFO    ] Initializing speech engine...
[2026-10-18 23:08:08,952.952 INFO    ] 2026-10-18 23:08:08
[2026-10-18 23:08:09,246.246 INFO    ] 2026-10-18 23:08:09
[2026-10-18 23:08:09,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:08:09,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:08:09,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:08:09,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:08:09,625.625 INFO    ] time= 18/10/2026 23:08:09
[2026-10-18 23:08:09,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:08:09,670.670 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:08:09,770.770 INFO    ] No existing commands found in stream
[2026-10-18 23:08:14,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:08:14,800.800 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-18 23:08:16,043.043 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:08:16,047.047 INFO    ] Checking for system updates...
[2026-10-18 23:08:16,083.083 INFO    ] 200
[2026-10-18 23:08:16,086.086 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:08:16,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:08:16,149.149 INFO    ] No update needed
[2026-10-18 23:08:16,152.152 INFO    ] Checking for camera pi updates...
[2026-10-18 23:08:16,187.187 INFO    ] 200
[2026-10-18 23:08:16,190.190 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:08:16,235.235 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:08:16,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:08:16,280.280 INFO    ] No camera update needed
[2026-10-18 23:08:16,283.283 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:08:16,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:08:16,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:08:16,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:08:18,339.339 INFO    ] ================================================
[2026-10-18 23:08:18,354.354 INFO    ] Launching Daemon at Sun Oct 18 23:08:18 IST 2026
[2026-10-18 23:08:18,365.365 INFO    ] ================================================
[2026-10-18 23:08:18,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:08:18
[2026-10-18 23:08:19,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:08:19,851.851 INFO    ] Initializing speech engine...
[2026-10-18 23:08:19,861.861 INFO    ] 2026-10-18 23:08:19
[2026-10-18 23:08:20,130.130 INFO    ] 2026-10-18 23:08:20
[2026-10-18 23:08:20,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:08:20,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:08:20,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:08:20,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:08:20,674.674 INFO    ] time= 18/10/2026 23:08:20
[2026-10-18 23:08:20,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:08:20,740.740 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:08:20,873.873 INFO    ] No existing commands found in stream
[2026-10-18 23:08:25,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:08:25,904.904 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-18 23:08:29,612.612 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:08:29,615.615 INFO    ] Checking for system updates...
[2026-10-18 23:08:29,651.651 INFO    ] 200
[2026-10-18 23:08:29,654.654 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:08:29,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:08:29,708.708 INFO    ] No update needed
[2026-10-18 23:08:29,711.711 INFO    ] Checking for camera pi updates...
[2026-10-18 23:08:29,745.745 INFO    ] 200
[2026-10-18 23:08:29,748.748 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:08:29,789.789 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:08:29,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:08:29,833.833 INFO    ] No camera update needed
[2026-10-18 23:08:29,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:08:29,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:08:29,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:08:29,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:08:31,892.892 INFO    ] ================================================
[2026-10-18 23:08:31,906.906 INFO    ] Launching Daemon at Sun Oct 18 23:08:31 IST 2026
[2026-10-18 23:08:31,917.917 INFO    ] ================================================
[2026-10-18 23:08:32,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:08:32
[2026-10-18 23:08:33,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:08:33,421.421 INFO    ] Initializing speech engine...
[2026-10-18 23:08:33,428.428 INFO    ] 2026-10-18 23:08:33
[2026-10-18 23:08:33,717.717 INFO    ] 2026-10-18 23:08:33
[2026-10-18 23:08:33,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:08:33,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:08:34,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:08:34,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:08:34,222.222 INFO    ] time= 18/10/2026 23:08:34
[2026-10-18 23:08:34,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:08:34,335.335 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:08:34,480.480 INFO    ] No existing commands found in stream
[2026-10-18 23:08:39,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:08:39,500.500 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-18 23:08:42,213.213 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:08:42,215.215 INFO    ] Checking for system updates...
[2026-10-18 23:08:42,251.251 INFO    ] 200
[2026-10-18 23:08:42,254.254 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:08:42,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:08:42,307.307 INFO    ] No update needed
[2026-10-18 23:08:42,309.309 INFO    ] Checking for camera pi updates...
[2026-10-18 23:08:42,342.342 INFO    ] 200
[2026-10-18 23:08:42,345.345 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:08:42,388.388 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:08:42,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:08:42,432.432 INFO    ] No camera update needed
[2026-10-18 23:08:42,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:08:42,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:08:42,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:08:42,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:08:44,486.486 INFO    ] ================================================
[2026-10-18 23:08:44,501.501 INFO    ] Launching Daemon at Sun Oct 18 23:08:44 IST 2026
[2026-10-18 23:08:44,511.511 INFO    ] ================================================
[2026-10-18 23:08:45,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:08:45
[2026-10-18 23:08:45,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:08:45,938.938 INFO    ] Initializing speech engine...
[2026-10-18 23:08:45,950.950 INFO    ] 2026-10-18 23:08:45
[2026-10-18 23:08:46,197.197 INFO    ] 2026-10-18 23:08:46
[2026-10-18 23:08:46,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:08:46,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:08:46,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:08:46,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:08:46,731.731 INFO    ] time= 18/10/2026 23:08:46
[2026-10-18 23:08:46,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:08:46,758.758 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:08:46,887.887 INFO    ] No existing commands found in stream
[2026-10-18 23:08:51,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:08:51,914.914 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-18 23:08:53,606.606 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:08:53,609.609 INFO    ] Checking for system updates...
[2026-10-18 23:08:53,643.643 INFO    ] 200
[2026-10-18 23:08:53,646.646 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:08:53,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:08:53,703.703 INFO    ] No update needed
[2026-10-18 23:08:53,705.705 INFO    ] Checking for camera pi updates...
[2026-10-18 23:08:53,739.739 INFO    ] 200
[2026-10-18 23:08:53,742.742 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:08:53,782.782 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:08:53,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:08:53,824.824 INFO    ] No camera update needed
[2026-10-18 23:08:53,826.826 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:08:53,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:08:53,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:08:53,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:08:55,878.878 INFO    ] ================================================
[2026-10-18 23:08:55,893.893 INFO    ] Launching Daemon at Sun Oct 18 23:08:55 IST 2026
[2026-10-18 23:08:55,904.904 INFO    ] ================================================
[2026-10-18 23:08:56,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:08:56
[2026-10-18 23:08:57,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:08:57,503.503 INFO    ] Initializing speech engine...
[2026-10-18 23:08:57,515.515 INFO    ] 2026-10-18 23:08:57
[2026-10-18 23:08:57,820.820 INFO    ] 2026-10-18 23:08:57
[2026-10-18 23:08:57,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:08:58,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:08:58,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:08:58,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:08:58,325.325 INFO    ] time= 18/10/2026 23:08:58
[2026-10-18 23:08:58,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:08:58,374.374 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:08:58,490.490 INFO    ] No existing commands found in stream
[2026-10-18 23:09:03,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:09:03,524.524 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-18 23:09:05,451.451 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:09:05,454.454 INFO    ] Checking for system updates...
[2026-10-18 23:09:05,490.490 INFO    ] 200
[2026-10-18 23:09:05,493.493 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:09:05,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:09:05,547.547 INFO    ] No update needed
[2026-10-18 23:09:05,550.550 INFO    ] Checking for camera pi updates...
[2026-10-18 23:09:05,585.585 INFO    ] 200
[2026-10-18 23:09:05,588.588 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:09:05,629.629 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:09:05,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:09:05,772.772 INFO    ] No camera update needed
[2026-10-18 23:09:05,775.775 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:09:05,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:09:05,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:09:05,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:09:07,829.829 INFO    ] ================================================
[2026-10-18 23:09:07,845.845 INFO    ] Launching Daemon at Sun Oct 18 23:09:07 IST 2026
[2026-10-18 23:09:07,856.856 INFO    ] ================================================
[2026-10-18 23:09:08,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:09:08
[2026-10-18 23:09:09,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:09:09,409.409 INFO    ] Initializing speech engine...
[2026-10-18 23:09:09,418.418 INFO    ] 2026-10-18 23:09:09
[2026-10-18 23:09:09,733.733 INFO    ] 2026-10-18 23:09:09
[2026-10-18 23:09:09,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:09:10,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:09:10,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:09:10,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:09:10,262.262 INFO    ] time= 18/10/2026 23:09:10
[2026-10-18 23:09:10,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:09:10,296.296 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:09:10,442.442 INFO    ] No existing commands found in stream
[2026-10-18 23:09:15,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:09:15,476.476 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-18 23:09:19,161.161 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:09:19,164.164 INFO    ] Checking for system updates...
[2026-10-18 23:09:19,204.204 INFO    ] 200
[2026-10-18 23:09:19,207.207 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:09:19,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:09:19,262.262 INFO    ] No update needed
[2026-10-18 23:09:19,265.265 INFO    ] Checking for camera pi updates...
[2026-10-18 23:09:19,302.302 INFO    ] 200
[2026-10-18 23:09:19,305.305 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:09:19,355.355 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:09:19,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:09:19,399.399 INFO    ] No camera update needed
[2026-10-18 23:09:19,401.401 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:09:19,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:09:19,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:09:19,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:09:21,452.452 INFO    ] ================================================
[2026-10-18 23:09:21,467.467 INFO    ] Launching Daemon at Sun Oct 18 23:09:21 IST 2026
[2026-10-18 23:09:21,479.479 INFO    ] ================================================
[2026-10-18 23:09:22,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:09:22
[2026-10-18 23:09:22,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:09:23,114.114 INFO    ] Initializing speech engine...
[2026-10-18 23:09:23,127.127 INFO    ] 2026-10-18 23:09:23
[2026-10-18 23:09:23,409.409 INFO    ] 2026-10-18 23:09:23
[2026-10-18 23:09:23,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:09:23,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:09:23,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:09:23,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:09:23,944.944 INFO    ] time= 18/10/2026 23:09:23
[2026-10-18 23:09:23,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:09:23,980.980 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:09:24,119.119 INFO    ] No existing commands found in stream
[2026-10-18 23:09:29,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:09:29,155.155 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-18 23:09:31,086.086 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:09:31,089.089 INFO    ] Checking for system updates...
[2026-10-18 23:09:31,126.126 INFO    ] 200
[2026-10-18 23:09:31,129.129 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:09:31,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:09:31,185.185 INFO    ] No update needed
[2026-10-18 23:09:31,187.187 INFO    ] Checking for camera pi updates...
[2026-10-18 23:09:31,229.229 INFO    ] 200
[2026-10-18 23:09:31,232.232 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:09:31,272.272 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:09:31,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:09:31,316.316 INFO    ] No camera update needed
[2026-10-18 23:09:31,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:09:31,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:09:31,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:09:31,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:09:33,376.376 INFO    ] ================================================
[2026-10-18 23:09:33,392.392 INFO    ] Launching Daemon at Sun Oct 18 23:09:33 IST 2026
[2026-10-18 23:09:33,403.403 INFO    ] ================================================
[2026-10-18 23:09:33,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:09:33
[2026-10-18 23:09:34,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:09:34,833.833 INFO    ] Initializing speech engine...
[2026-10-18 23:09:34,841.841 INFO    ] 2026-10-18 23:09:34
[2026-10-18 23:09:35,136.136 INFO    ] 2026-10-18 23:09:35
[2026-10-18 23:09:35,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:09:35,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:09:35,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:09:35,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:09:35,612.612 INFO    ] time= 18/10/2026 23:09:35
[2026-10-18 23:09:35,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:09:35,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:09:35,802.802 INFO    ] No existing commands found in stream
[2026-10-18 23:09:40,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:09:40,815.815 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-18 23:09:42,478.478 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:09:42,481.481 INFO    ] Checking for system updates...
[2026-10-18 23:09:42,516.516 INFO    ] 200
[2026-10-18 23:09:42,519.519 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:09:42,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:09:42,573.573 INFO    ] No update needed
[2026-10-18 23:09:42,575.575 INFO    ] Checking for camera pi updates...
[2026-10-18 23:09:42,612.612 INFO    ] 200
[2026-10-18 23:09:42,614.614 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:09:42,654.654 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:09:42,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:09:42,697.697 INFO    ] No camera update needed
[2026-10-18 23:09:42,699.699 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:09:42,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:09:42,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:09:42,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:09:44,755.755 INFO    ] ================================================
[2026-10-18 23:09:44,771.771 INFO    ] Launching Daemon at Sun Oct 18 23:09:44 IST 2026
[2026-10-18 23:09:44,782.782 INFO    ] ================================================
[2026-10-18 23:09:45,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:09:45
[2026-10-18 23:09:45,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:09:46,295.295 INFO    ] Initializing speech engine...
[2026-10-18 23:09:46,308.308 INFO    ] 2026-10-18 23:09:46
[2026-10-18 23:09:46,615.615 INFO    ] 2026-10-18 23:09:46
[2026-10-18 23:09:46,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:09:46,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:09:46,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:09:47,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:09:47,183.183 INFO    ] time= 18/10/2026 23:09:47
[2026-10-18 23:09:47,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:09:47,211.211 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:09:47,356.356 INFO    ] No existing commands found in stream
[2026-10-18 23:09:52,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:09:52,380.380 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-18 23:09:53,998.998 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:09:54,001.001 INFO    ] Checking for system updates...
[2026-10-18 23:09:54,036.036 INFO    ] 200
[2026-10-18 23:09:54,039.039 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:09:54,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:09:54,092.092 INFO    ] No update needed
[2026-10-18 23:09:54,095.095 INFO    ] Checking for camera pi updates...
[2026-10-18 23:09:54,132.132 INFO    ] 200
[2026-10-18 23:09:54,134.134 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:09:54,174.174 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:09:54,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:09:54,221.221 INFO    ] No camera update needed
[2026-10-18 23:09:54,223.223 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:09:54,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:09:54,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:09:54,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:09:56,275.275 INFO    ] ================================================
[2026-10-18 23:09:56,291.291 INFO    ] Launching Daemon at Sun Oct 18 23:09:56 IST 2026
[2026-10-18 23:09:56,303.303 INFO    ] ================================================
[2026-10-18 23:09:56,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:09:56
[2026-10-18 23:09:57,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:09:57,833.833 INFO    ] Initializing speech engine...
[2026-10-18 23:09:57,848.848 INFO    ] 2026-10-18 23:09:57
[2026-10-18 23:09:58,120.120 INFO    ] 2026-10-18 23:09:58
[2026-10-18 23:09:58,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:09:58,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:09:58,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:09:58,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:09:58,626.626 INFO    ] time= 18/10/2026 23:09:58
[2026-10-18 23:09:58,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:09:58,719.719 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:09:58,907.907 INFO    ] No existing commands found in stream
[2026-10-18 23:10:03,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:10:03,937.937 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-18 23:10:08,107.107 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:10:08,110.110 INFO    ] Checking for system updates...
[2026-10-18 23:10:08,145.145 INFO    ] 200
[2026-10-18 23:10:08,147.147 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:10:08,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:10:08,202.202 INFO    ] No update needed
[2026-10-18 23:10:08,204.204 INFO    ] Checking for camera pi updates...
[2026-10-18 23:10:08,237.237 INFO    ] 200
[2026-10-18 23:10:08,240.240 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:10:08,279.279 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:10:08,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:10:08,331.331 INFO    ] No camera update needed
[2026-10-18 23:10:08,333.333 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:10:08,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:10:08,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:10:08,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:10:10,386.386 INFO    ] ================================================
[2026-10-18 23:10:10,401.401 INFO    ] Launching Daemon at Sun Oct 18 23:10:10 IST 2026
[2026-10-18 23:10:10,412.412 INFO    ] ================================================
[2026-10-18 23:10:11,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:10:11
[2026-10-18 23:10:11,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:10:11,963.963 INFO    ] Initializing speech engine...
[2026-10-18 23:10:11,972.972 INFO    ] 2026-10-18 23:10:11
[2026-10-18 23:10:12,265.265 INFO    ] 2026-10-18 23:10:12
[2026-10-18 23:10:12,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:10:12,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:10:12,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:10:12,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:10:12,686.686 INFO    ] time= 18/10/2026 23:10:12
[2026-10-18 23:10:12,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:10:12,744.744 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:10:12,910.910 INFO    ] No existing commands found in stream
[2026-10-18 23:10:17,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:10:17,924.924 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-18 23:10:18,620.620 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:10:18,623.623 INFO    ] Checking for system updates...
[2026-10-18 23:10:18,658.658 INFO    ] 200
[2026-10-18 23:10:18,660.660 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:10:18,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:10:18,714.714 INFO    ] No update needed
[2026-10-18 23:10:18,717.717 INFO    ] Checking for camera pi updates...
[2026-10-18 23:10:18,750.750 INFO    ] 200
[2026-10-18 23:10:18,752.752 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:10:18,804.804 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:10:18,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:10:18,850.850 INFO    ] No camera update needed
[2026-10-18 23:10:18,853.853 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:10:18,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:10:18,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:10:18,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:10:20,909.909 INFO    ] ================================================
[2026-10-18 23:10:20,924.924 INFO    ] Launching Daemon at Sun Oct 18 23:10:20 IST 2026
[2026-10-18 23:10:20,935.935 INFO    ] ================================================
[2026-10-18 23:10:21,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:10:21
[2026-10-18 23:10:22,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:10:22,370.370 INFO    ] Initializing speech engine...
[2026-10-18 23:10:22,381.381 INFO    ] 2026-10-18 23:10:22
[2026-10-18 23:10:22,645.645 INFO    ] 2026-10-18 23:10:22
[2026-10-18 23:10:22,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:10:22,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:10:22,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:10:23,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:10:23,170.170 INFO    ] time= 18/10/2026 23:10:23
[2026-10-18 23:10:23,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:10:23,242.242 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:10:23,389.389 INFO    ] No existing commands found in stream
[2026-10-18 23:10:28,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:10:28,412.412 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-18 23:10:28,928.928 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:10:28,932.932 INFO    ] Checking for system updates...
[2026-10-18 23:10:28,968.968 INFO    ] 200
[2026-10-18 23:10:28,970.970 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:10:29,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:10:29,028.028 INFO    ] No update needed
[2026-10-18 23:10:29,031.031 INFO    ] Checking for camera pi updates...
[2026-10-18 23:10:29,064.064 INFO    ] 200
[2026-10-18 23:10:29,067.067 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:10:29,107.107 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:10:29,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:10:29,150.150 INFO    ] No camera update needed
[2026-10-18 23:10:29,152.152 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:10:29,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:10:29,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:10:29,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:10:31,205.205 INFO    ] ================================================
[2026-10-18 23:10:31,221.221 INFO    ] Launching Daemon at Sun Oct 18 23:10:31 IST 2026
[2026-10-18 23:10:31,233.233 INFO    ] ================================================
[2026-10-18 23:10:31,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:10:31
[2026-10-18 23:10:32,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:10:32,820.820 INFO    ] Initializing speech engine...
[2026-10-18 23:10:32,830.830 INFO    ] 2026-10-18 23:10:32
[2026-10-18 23:10:33,117.117 INFO    ] 2026-10-18 23:10:33
[2026-10-18 23:10:33,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:10:33,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:10:33,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:10:33,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:10:33,706.706 INFO    ] time= 18/10/2026 23:10:33
[2026-10-18 23:10:33,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:10:33,741.741 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:10:33,851.851 INFO    ] No existing commands found in stream
[2026-10-18 23:10:38,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:10:38,885.885 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-18 23:10:41,957.957 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:10:41,960.960 INFO    ] Checking for system updates...
[2026-10-18 23:10:42,002.002 INFO    ] 200
[2026-10-18 23:10:42,005.005 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:10:42,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:10:42,061.061 INFO    ] No update needed
[2026-10-18 23:10:42,063.063 INFO    ] Checking for camera pi updates...
[2026-10-18 23:10:42,097.097 INFO    ] 200
[2026-10-18 23:10:42,100.100 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:10:42,140.140 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:10:42,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:10:42,183.183 INFO    ] No camera update needed
[2026-10-18 23:10:42,186.186 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:10:42,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:10:42,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:10:42,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:10:44,238.238 INFO    ] ================================================
[2026-10-18 23:10:44,254.254 INFO    ] Launching Daemon at Sun Oct 18 23:10:44 IST 2026
[2026-10-18 23:10:44,265.265 INFO    ] ================================================
[2026-10-18 23:10:44,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:10:44
[2026-10-18 23:10:45,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:10:45,705.705 INFO    ] Initializing speech engine...
[2026-10-18 23:10:45,714.714 INFO    ] 2026-10-18 23:10:45
[2026-10-18 23:10:45,974.974 INFO    ] 2026-10-18 23:10:45
[2026-10-18 23:10:46,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:10:46,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:10:46,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:10:46,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:10:46,454.454 INFO    ] time= 18/10/2026 23:10:46
[2026-10-18 23:10:46,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:10:46,525.525 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:10:46,669.669 INFO    ] No existing commands found in stream
[2026-10-18 23:10:51,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:10:51,688.688 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-18 23:10:54,254.254 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:10:54,257.257 INFO    ] Checking for system updates...
[2026-10-18 23:10:54,298.298 INFO    ] 200
[2026-10-18 23:10:54,301.301 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:10:54,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:10:54,363.363 INFO    ] No update needed
[2026-10-18 23:10:54,366.366 INFO    ] Checking for camera pi updates...
[2026-10-18 23:10:54,399.399 INFO    ] 200
[2026-10-18 23:10:54,401.401 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:10:54,441.441 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:10:54,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:10:54,484.484 INFO    ] No camera update needed
[2026-10-18 23:10:54,487.487 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:10:54,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:10:54,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:10:54,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:10:56,543.543 INFO    ] ================================================
[2026-10-18 23:10:56,560.560 INFO    ] Launching Daemon at Sun Oct 18 23:10:56 IST 2026
[2026-10-18 23:10:56,571.571 INFO    ] ================================================
[2026-10-18 23:10:57,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:10:57
[2026-10-18 23:10:57,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:10:57,988.988 INFO    ] Initializing speech engine...
[2026-10-18 23:10:57,997.997 INFO    ] 2026-10-18 23:10:57
[2026-10-18 23:10:58,243.243 INFO    ] 2026-10-18 23:10:58
[2026-10-18 23:10:58,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:10:58,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:10:58,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:10:58,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:10:58,713.713 INFO    ] time= 18/10/2026 23:10:58
[2026-10-18 23:10:58,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:10:58,807.807 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:10:58,908.908 INFO    ] No existing commands found in stream
[2026-10-18 23:11:03,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:11:03,931.931 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-18 23:11:08,792.792 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:11:08,795.795 INFO    ] Checking for system updates...
[2026-10-18 23:11:08,830.830 INFO    ] 200
[2026-10-18 23:11:08,833.833 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:11:08,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:11:08,887.887 INFO    ] No update needed
[2026-10-18 23:11:08,889.889 INFO    ] Checking for camera pi updates...
[2026-10-18 23:11:08,924.924 INFO    ] 200
[2026-10-18 23:11:08,927.927 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:11:08,967.967 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:11:09,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:11:09,107.107 INFO    ] No camera update needed
[2026-10-18 23:11:09,109.109 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:11:09,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:11:09,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:11:09,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:11:11,164.164 INFO    ] ================================================
[2026-10-18 23:11:11,180.180 INFO    ] Launching Daemon at Sun Oct 18 23:11:11 IST 2026
[2026-10-18 23:11:11,190.190 INFO    ] ================================================
[2026-10-18 23:11:11,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:11:11
[2026-10-18 23:11:12,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:11:12,758.758 INFO    ] Initializing speech engine...
[2026-10-18 23:11:12,770.770 INFO    ] 2026-10-18 23:11:12
[2026-10-18 23:11:13,063.063 INFO    ] 2026-10-18 23:11:13
[2026-10-18 23:11:13,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:11:13,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:11:13,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:11:13,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:11:13,646.646 INFO    ] time= 18/10/2026 23:11:13
[2026-10-18 23:11:13,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:11:13,687.687 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:11:13,813.813 INFO    ] No existing commands found in stream
[2026-10-18 23:11:18,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:11:18,847.847 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-18 23:11:20,463.463 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:11:20,466.466 INFO    ] Checking for system updates...
[2026-10-18 23:11:20,502.502 INFO    ] 200
[2026-10-18 23:11:20,505.505 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:11:20,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:11:20,565.565 INFO    ] No update needed
[2026-10-18 23:11:20,568.568 INFO    ] Checking for camera pi updates...
[2026-10-18 23:11:20,602.602 INFO    ] 200
[2026-10-18 23:11:20,604.604 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:11:20,645.645 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:11:20,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:11:20,691.691 INFO    ] No camera update needed
[2026-10-18 23:11:20,693.693 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:11:20,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:11:20,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:11:20,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:11:22,749.749 INFO    ] ================================================
[2026-10-18 23:11:22,765.765 INFO    ] Launching Daemon at Sun Oct 18 23:11:22 IST 2026
[2026-10-18 23:11:22,776.776 INFO    ] ================================================
[2026-10-18 23:11:23,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:11:23
[2026-10-18 23:11:23,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:11:24,235.235 INFO    ] Initializing speech engine...
[2026-10-18 23:11:24,245.245 INFO    ] 2026-10-18 23:11:24
[2026-10-18 23:11:24,505.505 INFO    ] 2026-10-18 23:11:24
[2026-10-18 23:11:24,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:11:24,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:11:24,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:11:25,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:11:25,047.047 INFO    ] time= 18/10/2026 23:11:25
[2026-10-18 23:11:25,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:11:25,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:11:25,202.202 INFO    ] No existing commands found in stream
[2026-10-18 23:11:30,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:11:30,228.228 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-18 23:11:31,875.875 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:11:31,878.878 INFO    ] Checking for system updates...
[2026-10-18 23:11:31,920.920 INFO    ] 200
[2026-10-18 23:11:31,923.923 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:11:31,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:11:31,980.980 INFO    ] No update needed
[2026-10-18 23:11:31,983.983 INFO    ] Checking for camera pi updates...
[2026-10-18 23:11:32,020.020 INFO    ] 200
[2026-10-18 23:11:32,023.023 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:11:32,071.071 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:11:32,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:11:32,112.112 INFO    ] No camera update needed
[2026-10-18 23:11:32,114.114 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:11:32,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:11:32,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:11:32,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:11:34,169.169 INFO    ] ================================================
[2026-10-18 23:11:34,187.187 INFO    ] Launching Daemon at Sun Oct 18 23:11:34 IST 2026
[2026-10-18 23:11:34,198.198 INFO    ] ================================================
[2026-10-18 23:11:34,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:11:34
[2026-10-18 23:11:35,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:11:35,589.589 INFO    ] Initializing speech engine...
[2026-10-18 23:11:35,597.597 INFO    ] 2026-10-18 23:11:35
[2026-10-18 23:11:35,873.873 INFO    ] 2026-10-18 23:11:35
[2026-10-18 23:11:35,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:11:36,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:11:36,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:11:36,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:11:36,424.424 INFO    ] time= 18/10/2026 23:11:36
[2026-10-18 23:11:36,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:11:36,447.447 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:11:36,576.576 INFO    ] No existing commands found in stream
[2026-10-18 23:11:41,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:11:41,599.599 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-18 23:11:45,376.376 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:11:45,379.379 INFO    ] Checking for system updates...
[2026-10-18 23:11:45,414.414 INFO    ] 200
[2026-10-18 23:11:45,417.417 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:11:45,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:11:45,471.471 INFO    ] No update needed
[2026-10-18 23:11:45,473.473 INFO    ] Checking for camera pi updates...
[2026-10-18 23:11:45,507.507 INFO    ] 200
[2026-10-18 23:11:45,509.509 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:11:45,548.548 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:11:45,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:11:45,591.591 INFO    ] No camera update needed
[2026-10-18 23:11:45,593.593 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:11:45,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:11:45,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:11:45,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:11:47,645.645 INFO    ] ================================================
[2026-10-18 23:11:47,660.660 INFO    ] Launching Daemon at Sun Oct 18 23:11:47 IST 2026
[2026-10-18 23:11:47,671.671 INFO    ] ================================================
[2026-10-18 23:11:48,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:11:48
[2026-10-18 23:11:48,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:11:49,276.276 INFO    ] Initializing speech engine...
[2026-10-18 23:11:49,284.284 INFO    ] 2026-10-18 23:11:49
[2026-10-18 23:11:49,541.541 INFO    ] 2026-10-18 23:11:49
[2026-10-18 23:11:49,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:11:49,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:11:49,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:11:50,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:11:50,092.092 INFO    ] time= 18/10/2026 23:11:50
[2026-10-18 23:11:50,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:11:50,113.113 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:11:50,247.247 INFO    ] No existing commands found in stream
[2026-10-18 23:11:55,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:11:55,265.265 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-18 23:11:58,432.432 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:11:58,434.434 INFO    ] Checking for system updates...
[2026-10-18 23:11:58,469.469 INFO    ] 200
[2026-10-18 23:11:58,472.472 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:11:58,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:11:58,525.525 INFO    ] No update needed
[2026-10-18 23:11:58,528.528 INFO    ] Checking for camera pi updates...
[2026-10-18 23:11:58,560.560 INFO    ] 200
[2026-10-18 23:11:58,563.563 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:11:58,602.602 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:11:58,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:11:58,648.648 INFO    ] No camera update needed
[2026-10-18 23:11:58,650.650 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:11:58,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:11:58,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:11:58,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:12:00,703.703 INFO    ] ================================================
[2026-10-18 23:12:00,719.719 INFO    ] Launching Daemon at Sun Oct 18 23:12:00 IST 2026
[2026-10-18 23:12:00,730.730 INFO    ] ================================================
[2026-10-18 23:12:01,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:12:01
[2026-10-18 23:12:02,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:12:02,609.609 INFO    ] Initializing speech engine...
[2026-10-18 23:12:02,617.617 INFO    ] 2026-10-18 23:12:02
[2026-10-18 23:12:03,002.002 INFO    ] 2026-10-18 23:12:02
[2026-10-18 23:12:03,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:12:03,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:12:03,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:12:03,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:12:03,473.473 INFO    ] time= 18/10/2026 23:12:03
[2026-10-18 23:12:03,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:12:03,520.520 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:12:03,647.647 INFO    ] No existing commands found in stream
[2026-10-18 23:12:08,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:12:08,669.669 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-18 23:12:10,600.600 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:12:10,602.602 INFO    ] Checking for system updates...
[2026-10-18 23:12:10,637.637 INFO    ] 200
[2026-10-18 23:12:10,640.640 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:12:10,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:12:10,695.695 INFO    ] No update needed
[2026-10-18 23:12:10,697.697 INFO    ] Checking for camera pi updates...
[2026-10-18 23:12:10,734.734 INFO    ] 200
[2026-10-18 23:12:10,737.737 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:12:10,782.782 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:12:10,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:12:10,824.824 INFO    ] No camera update needed
[2026-10-18 23:12:10,827.827 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:12:10,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:12:10,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:12:10,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:12:12,880.880 INFO    ] ================================================
[2026-10-18 23:12:12,895.895 INFO    ] Launching Daemon at Sun Oct 18 23:12:12 IST 2026
[2026-10-18 23:12:12,906.906 INFO    ] ================================================
[2026-10-18 23:12:13,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:12:13
[2026-10-18 23:12:14,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:12:14,579.579 INFO    ] Initializing speech engine...
[2026-10-18 23:12:14,591.591 INFO    ] 2026-10-18 23:12:14
[2026-10-18 23:12:14,904.904 INFO    ] 2026-10-18 23:12:14
[2026-10-18 23:12:14,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:12:15,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:12:15,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:12:15,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:12:15,416.416 INFO    ] time= 18/10/2026 23:12:15
[2026-10-18 23:12:15,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:12:15,463.463 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:12:15,590.590 INFO    ] No existing commands found in stream
[2026-10-18 23:12:20,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:12:20,624.624 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-18 23:12:22,288.288 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:12:22,291.291 INFO    ] Checking for system updates...
[2026-10-18 23:12:22,328.328 INFO    ] 200
[2026-10-18 23:12:22,331.331 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:12:22,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:12:22,386.386 INFO    ] No update needed
[2026-10-18 23:12:22,388.388 INFO    ] Checking for camera pi updates...
[2026-10-18 23:12:22,423.423 INFO    ] 200
[2026-10-18 23:12:22,425.425 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:12:22,465.465 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:12:22,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:12:22,508.508 INFO    ] No camera update needed
[2026-10-18 23:12:22,511.511 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:12:22,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:12:22,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:12:22,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:12:24,563.563 INFO    ] ================================================
[2026-10-18 23:12:24,578.578 INFO    ] Launching Daemon at Sun Oct 18 23:12:24 IST 2026
[2026-10-18 23:12:24,590.590 INFO    ] ================================================
[2026-10-18 23:12:25,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:12:25
[2026-10-18 23:12:25,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:12:26,023.023 INFO    ] Initializing speech engine...
[2026-10-18 23:12:26,032.032 INFO    ] 2026-10-18 23:12:26
[2026-10-18 23:12:26,281.281 INFO    ] 2026-10-18 23:12:26
[2026-10-18 23:12:26,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:12:26,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:12:26,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:12:26,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:12:26,856.856 INFO    ] time= 18/10/2026 23:12:26
[2026-10-18 23:12:26,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:12:26,878.878 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:12:27,005.005 INFO    ] No existing commands found in stream
[2026-10-18 23:12:32,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:12:32,023.023 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-18 23:12:34,867.867 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:12:34,870.870 INFO    ] Checking for system updates...
[2026-10-18 23:12:34,905.905 INFO    ] 200
[2026-10-18 23:12:34,908.908 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:12:34,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:12:34,961.961 INFO    ] No update needed
[2026-10-18 23:12:34,963.963 INFO    ] Checking for camera pi updates...
[2026-10-18 23:12:34,996.996 INFO    ] 200
[2026-10-18 23:12:34,999.999 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:12:35,038.038 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:12:35,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:12:35,081.081 INFO    ] No camera update needed
[2026-10-18 23:12:35,083.083 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:12:35,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:12:35,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:12:35,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:12:37,134.134 INFO    ] ================================================
[2026-10-18 23:12:37,153.153 INFO    ] Launching Daemon at Sun Oct 18 23:12:37 IST 2026
[2026-10-18 23:12:37,164.164 INFO    ] ================================================
[2026-10-18 23:12:37,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:12:37
[2026-10-18 23:12:38,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:12:38,599.599 INFO    ] Initializing speech engine...
[2026-10-18 23:12:38,605.605 INFO    ] 2026-10-18 23:12:38
[2026-10-18 23:12:38,906.906 INFO    ] 2026-10-18 23:12:38
[2026-10-18 23:12:38,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:12:39,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:12:39,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:12:39,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:12:39,362.362 INFO    ] time= 18/10/2026 23:12:39
[2026-10-18 23:12:39,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:12:39,374.374 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:12:39,508.508 INFO    ] No existing commands found in stream
[2026-10-18 23:12:44,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:12:44,537.537 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-18 23:12:46,389.389 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:12:46,391.391 INFO    ] Checking for system updates...
[2026-10-18 23:12:46,427.427 INFO    ] 200
[2026-10-18 23:12:46,430.430 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:12:46,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:12:46,483.483 INFO    ] No update needed
[2026-10-18 23:12:46,486.486 INFO    ] Checking for camera pi updates...
[2026-10-18 23:12:46,518.518 INFO    ] 200
[2026-10-18 23:12:46,521.521 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:12:46,566.566 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:12:46,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:12:46,610.610 INFO    ] No camera update needed
[2026-10-18 23:12:46,612.612 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:12:46,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:12:46,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:12:46,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:12:48,664.664 INFO    ] ================================================
[2026-10-18 23:12:48,680.680 INFO    ] Launching Daemon at Sun Oct 18 23:12:48 IST 2026
[2026-10-18 23:12:48,691.691 INFO    ] ================================================
[2026-10-18 23:12:49,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:12:49
[2026-10-18 23:12:49,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:12:50,278.278 INFO    ] Initializing speech engine...
[2026-10-18 23:12:50,290.290 INFO    ] 2026-10-18 23:12:50
[2026-10-18 23:12:50,624.624 INFO    ] 2026-10-18 23:12:50
[2026-10-18 23:12:50,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:12:50,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:12:50,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:12:51,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:12:51,292.292 INFO    ] time= 18/10/2026 23:12:51
[2026-10-18 23:12:51,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:12:51,385.385 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:12:51,532.532 INFO    ] No existing commands found in stream
[2026-10-18 23:12:56,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:12:56,551.551 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-18 23:12:58,284.284 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:12:58,287.287 INFO    ] Checking for system updates...
[2026-10-18 23:12:58,323.323 INFO    ] 200
[2026-10-18 23:12:58,326.326 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:12:58,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:12:58,380.380 INFO    ] No update needed
[2026-10-18 23:12:58,382.382 INFO    ] Checking for camera pi updates...
[2026-10-18 23:12:58,415.415 INFO    ] 200
[2026-10-18 23:12:58,418.418 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:12:58,457.457 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:12:58,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:12:58,500.500 INFO    ] No camera update needed
[2026-10-18 23:12:58,502.502 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:12:58,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:12:58,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:12:58,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:13:00,554.554 INFO    ] ================================================
[2026-10-18 23:13:00,571.571 INFO    ] Launching Daemon at Sun Oct 18 23:13:00 IST 2026
[2026-10-18 23:13:00,582.582 INFO    ] ================================================
[2026-10-18 23:13:01,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:13:01
[2026-10-18 23:13:02,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:13:02,455.455 INFO    ] Initializing speech engine...
[2026-10-18 23:13:02,462.462 INFO    ] 2026-10-18 23:13:02
[2026-10-18 23:13:02,840.840 INFO    ] 2026-10-18 23:13:02
[2026-10-18 23:13:02,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:13:03,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:13:03,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:13:03,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:13:03,334.334 INFO    ] time= 18/10/2026 23:13:03
[2026-10-18 23:13:03,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:13:03,420.420 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:13:03,557.557 INFO    ] No existing commands found in stream
[2026-10-18 23:13:08,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:13:08,587.587 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-18 23:13:12,472.472 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:13:12,475.475 INFO    ] Checking for system updates...
[2026-10-18 23:13:12,511.511 INFO    ] 200
[2026-10-18 23:13:12,514.514 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:13:12,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:13:12,576.576 INFO    ] No update needed
[2026-10-18 23:13:12,578.578 INFO    ] Checking for camera pi updates...
[2026-10-18 23:13:12,615.615 INFO    ] 200
[2026-10-18 23:13:12,618.618 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:13:12,663.663 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:13:12,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:13:12,805.805 INFO    ] No camera update needed
[2026-10-18 23:13:12,807.807 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:13:12,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:13:12,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:13:12,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:13:14,861.861 INFO    ] ================================================
[2026-10-18 23:13:14,877.877 INFO    ] Launching Daemon at Sun Oct 18 23:13:14 IST 2026
[2026-10-18 23:13:14,887.887 INFO    ] ================================================
[2026-10-18 23:13:15,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:13:15
[2026-10-18 23:13:16,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:13:16,303.303 INFO    ] Initializing speech engine...
[2026-10-18 23:13:16,308.308 INFO    ] 2026-10-18 23:13:16
[2026-10-18 23:13:16,553.553 INFO    ] 2026-10-18 23:13:16
[2026-10-18 23:13:16,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:13:16,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:13:16,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:13:17,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:13:17,103.103 INFO    ] time= 18/10/2026 23:13:17
[2026-10-18 23:13:17,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:13:17,127.127 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:13:17,257.257 INFO    ] No existing commands found in stream
[2026-10-18 23:13:22,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:13:22,273.273 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-18 23:13:26,469.469 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:13:26,472.472 INFO    ] Checking for system updates...
[2026-10-18 23:13:26,506.506 INFO    ] 200
[2026-10-18 23:13:26,509.509 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:13:26,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:13:26,573.573 INFO    ] No update needed
[2026-10-18 23:13:26,575.575 INFO    ] Checking for camera pi updates...
[2026-10-18 23:13:26,613.613 INFO    ] 200
[2026-10-18 23:13:26,616.616 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:13:26,662.662 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:13:26,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:13:26,706.706 INFO    ] No camera update needed
[2026-10-18 23:13:26,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:13:26,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:13:26,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:13:26,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:13:28,758.758 INFO    ] ================================================
[2026-10-18 23:13:28,774.774 INFO    ] Launching Daemon at Sun Oct 18 23:13:28 IST 2026
[2026-10-18 23:13:28,785.785 INFO    ] ================================================
[2026-10-18 23:13:29,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:13:29
[2026-10-18 23:13:29,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:13:30,208.208 INFO    ] Initializing speech engine...
[2026-10-18 23:13:30,215.215 INFO    ] 2026-10-18 23:13:30
[2026-10-18 23:13:30,470.470 INFO    ] 2026-10-18 23:13:30
[2026-10-18 23:13:30,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:13:30,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:13:30,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:13:30,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:13:31,009.009 INFO    ] time= 18/10/2026 23:13:30
[2026-10-18 23:13:31,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:13:31,033.033 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:13:31,162.162 INFO    ] No existing commands found in stream
[2026-10-18 23:13:36,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:13:36,180.180 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-18 23:13:39,100.100 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:13:39,103.103 INFO    ] Checking for system updates...
[2026-10-18 23:13:39,142.142 INFO    ] 200
[2026-10-18 23:13:39,145.145 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:13:39,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:13:39,199.199 INFO    ] No update needed
[2026-10-18 23:13:39,201.201 INFO    ] Checking for camera pi updates...
[2026-10-18 23:13:39,234.234 INFO    ] 200
[2026-10-18 23:13:39,236.236 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:13:39,280.280 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:13:39,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:13:39,324.324 INFO    ] No camera update needed
[2026-10-18 23:13:39,326.326 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:13:39,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:13:39,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:13:39,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:13:41,377.377 INFO    ] ================================================
[2026-10-18 23:13:41,393.393 INFO    ] Launching Daemon at Sun Oct 18 23:13:41 IST 2026
[2026-10-18 23:13:41,403.403 INFO    ] ================================================
[2026-10-18 23:13:41,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:13:41
[2026-10-18 23:13:42,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:13:42,965.965 INFO    ] Initializing speech engine...
[2026-10-18 23:13:42,973.973 INFO    ] 2026-10-18 23:13:42
[2026-10-18 23:13:43,298.298 INFO    ] 2026-10-18 23:13:43
[2026-10-18 23:13:43,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:13:43,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:13:43,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:13:43,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:13:43,831.831 INFO    ] time= 18/10/2026 23:13:43
[2026-10-18 23:13:43,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:13:43,870.870 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:13:43,978.978 INFO    ] No existing commands found in stream
[2026-10-18 23:13:49,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:13:49,007.007 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-18 23:13:52,807.807 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:13:52,810.810 INFO    ] Checking for system updates...
[2026-10-18 23:13:52,852.852 INFO    ] 200
[2026-10-18 23:13:52,855.855 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:13:52,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:13:52,912.912 INFO    ] No update needed
[2026-10-18 23:13:52,916.916 INFO    ] Checking for camera pi updates...
[2026-10-18 23:13:52,956.956 INFO    ] 200
[2026-10-18 23:13:52,959.959 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:13:53,007.007 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:13:53,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:13:53,050.050 INFO    ] No camera update needed
[2026-10-18 23:13:53,052.052 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:13:53,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:13:53,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:13:53,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:13:55,103.103 INFO    ] ================================================
[2026-10-18 23:13:55,119.119 INFO    ] Launching Daemon at Sun Oct 18 23:13:55 IST 2026
[2026-10-18 23:13:55,131.131 INFO    ] ================================================
[2026-10-18 23:13:55,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:13:55
[2026-10-18 23:13:56,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:13:56,794.794 INFO    ] Initializing speech engine...
[2026-10-18 23:13:56,807.807 INFO    ] 2026-10-18 23:13:56
[2026-10-18 23:13:57,082.082 INFO    ] 2026-10-18 23:13:57
[2026-10-18 23:13:57,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:13:57,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:13:57,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:13:57,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:13:57,641.641 INFO    ] time= 18/10/2026 23:13:57
[2026-10-18 23:13:57,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:13:57,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:13:57,776.776 INFO    ] No existing commands found in stream
[2026-10-18 23:14:02,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:14:02,805.805 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-18 23:14:06,739.739 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:14:06,741.741 INFO    ] Checking for system updates...
[2026-10-18 23:14:06,780.780 INFO    ] 200
[2026-10-18 23:14:06,782.782 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:14:06,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:14:06,842.842 INFO    ] No update needed
[2026-10-18 23:14:06,844.844 INFO    ] Checking for camera pi updates...
[2026-10-18 23:14:06,880.880 INFO    ] 200
[2026-10-18 23:14:06,882.882 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:14:06,925.925 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:14:06,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:14:06,971.971 INFO    ] No camera update needed
[2026-10-18 23:14:06,973.973 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:14:06,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:14:06,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:14:06,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:14:09,024.024 INFO    ] ================================================
[2026-10-18 23:14:09,040.040 INFO    ] Launching Daemon at Sun Oct 18 23:14:09 IST 2026
[2026-10-18 23:14:09,051.051 INFO    ] ================================================
[2026-10-18 23:14:09,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:14:09
[2026-10-18 23:14:10,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:14:10,654.654 INFO    ] Initializing speech engine...
[2026-10-18 23:14:10,664.664 INFO    ] 2026-10-18 23:14:10
[2026-10-18 23:14:10,950.950 INFO    ] 2026-10-18 23:14:10
[2026-10-18 23:14:10,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:14:11,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:14:11,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:14:11,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:14:11,501.501 INFO    ] time= 18/10/2026 23:14:11
[2026-10-18 23:14:11,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:14:11,549.549 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:14:11,664.664 INFO    ] No existing commands found in stream
[2026-10-18 23:14:16,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:14:16,693.693 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-18 23:14:20,833.833 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:14:20,836.836 INFO    ] Checking for system updates...
[2026-10-18 23:14:20,876.876 INFO    ] 200
[2026-10-18 23:14:20,879.879 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:14:20,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:14:20,940.940 INFO    ] No update needed
[2026-10-18 23:14:20,943.943 INFO    ] Checking for camera pi updates...
[2026-10-18 23:14:20,977.977 INFO    ] 200
[2026-10-18 23:14:20,980.980 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:14:21,026.026 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:14:21,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:14:21,073.073 INFO    ] No camera update needed
[2026-10-18 23:14:21,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:14:21,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:14:21,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:14:21,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:14:23,126.126 INFO    ] ================================================
[2026-10-18 23:14:23,142.142 INFO    ] Launching Daemon at Sun Oct 18 23:14:23 IST 2026
[2026-10-18 23:14:23,153.153 INFO    ] ================================================
[2026-10-18 23:14:23,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:14:23
[2026-10-18 23:14:24,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:14:24,639.639 INFO    ] Initializing speech engine...
[2026-10-18 23:14:24,649.649 INFO    ] 2026-10-18 23:14:24
[2026-10-18 23:14:24,951.951 INFO    ] 2026-10-18 23:14:24
[2026-10-18 23:14:25,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:14:25,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:14:25,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:14:25,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:14:25,466.466 INFO    ] time= 18/10/2026 23:14:25
[2026-10-18 23:14:25,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:14:25,513.513 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:14:25,632.632 INFO    ] No existing commands found in stream
[2026-10-18 23:14:30,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:14:30,661.661 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-18 23:14:31,968.968 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:14:31,972.972 INFO    ] Checking for system updates...
[2026-10-18 23:14:32,012.012 INFO    ] 200
[2026-10-18 23:14:32,014.014 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:14:32,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:14:32,073.073 INFO    ] No update needed
[2026-10-18 23:14:32,076.076 INFO    ] Checking for camera pi updates...
[2026-10-18 23:14:32,116.116 INFO    ] 200
[2026-10-18 23:14:32,119.119 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:14:32,169.169 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:14:32,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:14:32,201.201 INFO    ] No camera update needed
[2026-10-18 23:14:32,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:14:32,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:14:32,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:14:32,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:14:34,259.259 INFO    ] ================================================
[2026-10-18 23:14:34,275.275 INFO    ] Launching Daemon at Sun Oct 18 23:14:34 IST 2026
[2026-10-18 23:14:34,286.286 INFO    ] ================================================
[2026-10-18 23:14:34,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:14:34
[2026-10-18 23:14:35,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:14:35,724.724 INFO    ] Initializing speech engine...
[2026-10-18 23:14:35,738.738 INFO    ] 2026-10-18 23:14:35
[2026-10-18 23:14:36,035.035 INFO    ] 2026-10-18 23:14:36
[2026-10-18 23:14:36,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:14:36,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:14:36,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:14:36,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:14:36,543.543 INFO    ] time= 18/10/2026 23:14:36
[2026-10-18 23:14:36,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:14:36,661.661 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:14:36,808.808 INFO    ] No existing commands found in stream
[2026-10-18 23:14:41,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:14:41,829.829 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-18 23:14:44,950.950 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:14:44,953.953 INFO    ] Checking for system updates...
[2026-10-18 23:14:44,988.988 INFO    ] 200
[2026-10-18 23:14:44,991.991 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:14:45,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:14:45,055.055 INFO    ] No update needed
[2026-10-18 23:14:45,057.057 INFO    ] Checking for camera pi updates...
[2026-10-18 23:14:45,094.094 INFO    ] 200
[2026-10-18 23:14:45,097.097 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:14:45,153.153 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:14:45,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:14:45,197.197 INFO    ] No camera update needed
[2026-10-18 23:14:45,200.200 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:14:45,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:14:45,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:14:45,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:14:47,252.252 INFO    ] ================================================
[2026-10-18 23:14:47,268.268 INFO    ] Launching Daemon at Sun Oct 18 23:14:47 IST 2026
[2026-10-18 23:14:47,279.279 INFO    ] ================================================
[2026-10-18 23:14:47,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:14:47
[2026-10-18 23:14:48,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:14:48,766.766 INFO    ] Initializing speech engine...
[2026-10-18 23:14:48,775.775 INFO    ] 2026-10-18 23:14:48
[2026-10-18 23:14:49,032.032 INFO    ] 2026-10-18 23:14:49
[2026-10-18 23:14:49,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:14:49,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:14:49,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:14:49,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:14:49,512.512 INFO    ] time= 18/10/2026 23:14:49
[2026-10-18 23:14:49,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:14:49,565.565 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:14:49,659.659 INFO    ] No existing commands found in stream
[2026-10-18 23:14:54,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:14:54,673.673 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-18 23:14:58,459.459 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:14:58,462.462 INFO    ] Checking for system updates...
[2026-10-18 23:14:58,497.497 INFO    ] 200
[2026-10-18 23:14:58,499.499 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:14:58,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:14:58,553.553 INFO    ] No update needed
[2026-10-18 23:14:58,556.556 INFO    ] Checking for camera pi updates...
[2026-10-18 23:14:58,593.593 INFO    ] 200
[2026-10-18 23:14:58,595.595 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:14:58,634.634 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:14:58,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:14:58,678.678 INFO    ] No camera update needed
[2026-10-18 23:14:58,680.680 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:14:58,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:14:58,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:14:58,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:15:00,733.733 INFO    ] ================================================
[2026-10-18 23:15:00,749.749 INFO    ] Launching Daemon at Sun Oct 18 23:15:00 IST 2026
[2026-10-18 23:15:00,760.760 INFO    ] ================================================
[2026-10-18 23:15:01,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:15:01
[2026-10-18 23:15:02,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:15:02,896.896 INFO    ] Initializing speech engine...
[2026-10-18 23:15:02,902.902 INFO    ] 2026-10-18 23:15:02
[2026-10-18 23:15:03,302.302 INFO    ] 2026-10-18 23:15:03
[2026-10-18 23:15:03,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:15:03,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:15:03,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:15:03,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:15:03,843.843 INFO    ] time= 18/10/2026 23:15:03
[2026-10-18 23:15:03,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:15:03,863.863 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:15:03,993.993 INFO    ] No existing commands found in stream
[2026-10-18 23:15:09,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:15:09,031.031 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-18 23:15:10,566.566 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:15:10,569.569 INFO    ] Checking for system updates...
[2026-10-18 23:15:10,605.605 INFO    ] 200
[2026-10-18 23:15:10,608.608 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:15:10,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:15:10,669.669 INFO    ] No update needed
[2026-10-18 23:15:10,672.672 INFO    ] Checking for camera pi updates...
[2026-10-18 23:15:10,716.716 INFO    ] 200
[2026-10-18 23:15:10,719.719 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:15:10,764.764 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:15:10,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:15:10,808.808 INFO    ] No camera update needed
[2026-10-18 23:15:10,811.811 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:15:10,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:15:10,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:15:10,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:15:12,865.865 INFO    ] ================================================
[2026-10-18 23:15:12,880.880 INFO    ] Launching Daemon at Sun Oct 18 23:15:12 IST 2026
[2026-10-18 23:15:12,891.891 INFO    ] ================================================
[2026-10-18 23:15:13,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:15:13
[2026-10-18 23:15:14,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:15:14,349.349 INFO    ] Initializing speech engine...
[2026-10-18 23:15:14,359.359 INFO    ] 2026-10-18 23:15:14
[2026-10-18 23:15:14,620.620 INFO    ] 2026-10-18 23:15:14
[2026-10-18 23:15:14,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:15:14,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:15:14,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:15:15,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:15:15,109.109 INFO    ] time= 18/10/2026 23:15:15
[2026-10-18 23:15:15,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:15:15,175.175 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:15:15,330.330 INFO    ] No existing commands found in stream
[2026-10-18 23:15:20,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:15:20,347.347 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-18 23:15:27,203.203 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:15:27,207.207 INFO    ] Checking for system updates...
[2026-10-18 23:15:27,253.253 INFO    ] 200
[2026-10-18 23:15:27,256.256 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:15:27,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:15:27,320.320 INFO    ] No update needed
[2026-10-18 23:15:27,324.324 INFO    ] Checking for camera pi updates...
[2026-10-18 23:15:27,357.357 INFO    ] 200
[2026-10-18 23:15:27,360.360 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:15:27,401.401 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:15:27,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:15:27,545.545 INFO    ] No camera update needed
[2026-10-18 23:15:27,548.548 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:15:27,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:15:27,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:15:27,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:15:29,599.599 INFO    ] ================================================
[2026-10-18 23:15:29,615.615 INFO    ] Launching Daemon at Sun Oct 18 23:15:29 IST 2026
[2026-10-18 23:15:29,626.626 INFO    ] ================================================
[2026-10-18 23:15:30,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:15:30
[2026-10-18 23:15:30,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:15:31,076.076 INFO    ] Initializing speech engine...
[2026-10-18 23:15:31,084.084 INFO    ] 2026-10-18 23:15:31
[2026-10-18 23:15:31,339.339 INFO    ] 2026-10-18 23:15:31
[2026-10-18 23:15:31,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:15:31,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:15:31,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:15:31,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:15:31,894.894 INFO    ] time= 18/10/2026 23:15:31
[2026-10-18 23:15:31,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:15:31,921.921 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:15:32,056.056 INFO    ] No existing commands found in stream
[2026-10-18 23:15:37,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:15:37,080.080 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-18 23:15:41,229.229 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:15:41,231.231 INFO    ] Checking for system updates...
[2026-10-18 23:15:41,266.266 INFO    ] 200
[2026-10-18 23:15:41,269.269 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:15:41,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:15:41,328.328 INFO    ] No update needed
[2026-10-18 23:15:41,330.330 INFO    ] Checking for camera pi updates...
[2026-10-18 23:15:41,364.364 INFO    ] 200
[2026-10-18 23:15:41,366.366 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:15:41,410.410 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:15:41,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:15:41,454.454 INFO    ] No camera update needed
[2026-10-18 23:15:41,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:15:41,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:15:41,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:15:41,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:15:43,509.509 INFO    ] ================================================
[2026-10-18 23:15:43,524.524 INFO    ] Launching Daemon at Sun Oct 18 23:15:43 IST 2026
[2026-10-18 23:15:43,534.534 INFO    ] ================================================
[2026-10-18 23:15:44,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:15:44
[2026-10-18 23:15:44,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:15:45,090.090 INFO    ] Initializing speech engine...
[2026-10-18 23:15:45,103.103 INFO    ] 2026-10-18 23:15:45
[2026-10-18 23:15:45,408.408 INFO    ] 2026-10-18 23:15:45
[2026-10-18 23:15:45,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:15:45,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:15:45,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:15:45,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:15:45,914.914 INFO    ] time= 18/10/2026 23:15:45
[2026-10-18 23:15:45,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:15:45,965.965 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:15:46,081.081 INFO    ] No existing commands found in stream
[2026-10-18 23:15:51,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:15:51,105.105 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-18 23:15:53,200.200 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:15:53,207.207 INFO    ] Checking for system updates...
[2026-10-18 23:15:53,244.244 INFO    ] 200
[2026-10-18 23:15:53,247.247 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:15:53,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:15:53,301.301 INFO    ] No update needed
[2026-10-18 23:15:53,304.304 INFO    ] Checking for camera pi updates...
[2026-10-18 23:15:53,338.338 INFO    ] 200
[2026-10-18 23:15:53,341.341 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:15:53,381.381 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:15:53,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:15:53,426.426 INFO    ] No camera update needed
[2026-10-18 23:15:53,429.429 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:15:53,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:15:53,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:15:53,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:15:55,480.480 INFO    ] ================================================
[2026-10-18 23:15:55,496.496 INFO    ] Launching Daemon at Sun Oct 18 23:15:55 IST 2026
[2026-10-18 23:15:55,507.507 INFO    ] ================================================
[2026-10-18 23:15:56,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:15:56
[2026-10-18 23:15:56,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:15:56,947.947 INFO    ] Initializing speech engine...
[2026-10-18 23:15:56,970.970 INFO    ] 2026-10-18 23:15:56
[2026-10-18 23:15:57,222.222 INFO    ] 2026-10-18 23:15:57
[2026-10-18 23:15:57,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:15:57,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:15:57,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:15:57,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:15:57,732.732 INFO    ] time= 18/10/2026 23:15:57
[2026-10-18 23:15:57,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:15:57,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:15:57,931.931 INFO    ] No existing commands found in stream
[2026-10-18 23:16:02,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:16:02,953.953 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-18 23:16:06,309.309 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:16:06,312.312 INFO    ] Checking for system updates...
[2026-10-18 23:16:06,347.347 INFO    ] 200
[2026-10-18 23:16:06,350.350 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:16:06,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:16:06,409.409 INFO    ] No update needed
[2026-10-18 23:16:06,411.411 INFO    ] Checking for camera pi updates...
[2026-10-18 23:16:06,448.448 INFO    ] 200
[2026-10-18 23:16:06,450.450 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:16:06,494.494 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:16:06,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:16:06,541.541 INFO    ] No camera update needed
[2026-10-18 23:16:06,544.544 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:16:06,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:16:06,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:16:06,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:16:08,596.596 INFO    ] ================================================
[2026-10-18 23:16:08,612.612 INFO    ] Launching Daemon at Sun Oct 18 23:16:08 IST 2026
[2026-10-18 23:16:08,623.623 INFO    ] ================================================
[2026-10-18 23:16:09,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:16:09
[2026-10-18 23:16:09,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:16:10,210.210 INFO    ] Initializing speech engine...
[2026-10-18 23:16:10,219.219 INFO    ] 2026-10-18 23:16:10
[2026-10-18 23:16:10,481.481 INFO    ] 2026-10-18 23:16:10
[2026-10-18 23:16:10,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:16:10,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:16:10,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:16:10,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:16:11,001.001 INFO    ] time= 18/10/2026 23:16:10
[2026-10-18 23:16:11,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:16:11,068.068 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:16:11,215.215 INFO    ] No existing commands found in stream
[2026-10-18 23:16:16,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:16:16,255.255 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-18 23:16:19,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:16:19,370.370 INFO    ] Checking for system updates...
[2026-10-18 23:16:19,409.409 INFO    ] 200
[2026-10-18 23:16:19,413.413 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:16:19,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:16:19,467.467 INFO    ] No update needed
[2026-10-18 23:16:19,470.470 INFO    ] Checking for camera pi updates...
[2026-10-18 23:16:19,512.512 INFO    ] 200
[2026-10-18 23:16:19,515.515 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:16:19,555.555 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:16:19,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:16:19,599.599 INFO    ] No camera update needed
[2026-10-18 23:16:19,602.602 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:16:19,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:16:19,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:16:19,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:16:21,658.658 INFO    ] ================================================
[2026-10-18 23:16:21,674.674 INFO    ] Launching Daemon at Sun Oct 18 23:16:21 IST 2026
[2026-10-18 23:16:21,686.686 INFO    ] ================================================
[2026-10-18 23:16:22,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:16:22
[2026-10-18 23:16:23,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:16:23,323.323 INFO    ] Initializing speech engine...
[2026-10-18 23:16:23,337.337 INFO    ] 2026-10-18 23:16:23
[2026-10-18 23:16:23,618.618 INFO    ] 2026-10-18 23:16:23
[2026-10-18 23:16:23,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:16:23,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:16:23,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:16:24,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:16:24,141.141 INFO    ] time= 18/10/2026 23:16:24
[2026-10-18 23:16:24,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:16:24,181.181 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:16:24,337.337 INFO    ] No existing commands found in stream
[2026-10-18 23:16:29,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:16:29,367.367 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-18 23:16:32,144.144 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:16:32,148.148 INFO    ] Checking for system updates...
[2026-10-18 23:16:32,188.188 INFO    ] 200
[2026-10-18 23:16:32,192.192 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:16:32,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:16:32,253.253 INFO    ] No update needed
[2026-10-18 23:16:32,257.257 INFO    ] Checking for camera pi updates...
[2026-10-18 23:16:32,295.295 INFO    ] 200
[2026-10-18 23:16:32,298.298 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:16:32,349.349 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:16:32,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:16:32,382.382 INFO    ] No camera update needed
[2026-10-18 23:16:32,385.385 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:16:32,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:16:32,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:16:32,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:16:34,440.440 INFO    ] ================================================
[2026-10-18 23:16:34,456.456 INFO    ] Launching Daemon at Sun Oct 18 23:16:34 IST 2026
[2026-10-18 23:16:34,467.467 INFO    ] ================================================
[2026-10-18 23:16:35,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:16:35
[2026-10-18 23:16:35,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:16:35,914.914 INFO    ] Initializing speech engine...
[2026-10-18 23:16:35,929.929 INFO    ] 2026-10-18 23:16:35
[2026-10-18 23:16:36,224.224 INFO    ] 2026-10-18 23:16:36
[2026-10-18 23:16:36,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:16:36,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:16:36,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:16:36,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:16:36,626.626 INFO    ] time= 18/10/2026 23:16:36
[2026-10-18 23:16:36,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:16:36,638.638 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:16:36,773.773 INFO    ] No existing commands found in stream
[2026-10-18 23:16:41,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:16:41,806.806 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-18 23:16:45,750.750 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:16:45,752.752 INFO    ] Checking for system updates...
[2026-10-18 23:16:45,787.787 INFO    ] 200
[2026-10-18 23:16:45,790.790 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:16:45,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:16:45,843.843 INFO    ] No update needed
[2026-10-18 23:16:45,846.846 INFO    ] Checking for camera pi updates...
[2026-10-18 23:16:45,882.882 INFO    ] 200
[2026-10-18 23:16:45,885.885 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:16:45,929.929 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:16:45,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:16:45,974.974 INFO    ] No camera update needed
[2026-10-18 23:16:45,976.976 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:16:45,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:16:45,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:16:45,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:16:48,029.029 INFO    ] ================================================
[2026-10-18 23:16:48,045.045 INFO    ] Launching Daemon at Sun Oct 18 23:16:48 IST 2026
[2026-10-18 23:16:48,057.057 INFO    ] ================================================
[2026-10-18 23:16:48,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:16:48
[2026-10-18 23:16:49,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:16:49,474.474 INFO    ] Initializing speech engine...
[2026-10-18 23:16:49,483.483 INFO    ] 2026-10-18 23:16:49
[2026-10-18 23:16:49,727.727 INFO    ] 2026-10-18 23:16:49
[2026-10-18 23:16:49,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:16:50,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:16:50,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:16:50,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:16:50,253.253 INFO    ] time= 18/10/2026 23:16:50
[2026-10-18 23:16:50,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:16:50,311.311 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:16:50,488.488 INFO    ] No existing commands found in stream
[2026-10-18 23:16:55,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:16:55,517.517 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-18 23:16:58,651.651 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:16:58,654.654 INFO    ] Checking for system updates...
[2026-10-18 23:16:58,688.688 INFO    ] 200
[2026-10-18 23:16:58,691.691 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:16:58,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:16:58,745.745 INFO    ] No update needed
[2026-10-18 23:16:58,748.748 INFO    ] Checking for camera pi updates...
[2026-10-18 23:16:58,780.780 INFO    ] 200
[2026-10-18 23:16:58,783.783 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:16:58,823.823 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:16:58,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:16:58,869.869 INFO    ] No camera update needed
[2026-10-18 23:16:58,871.871 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:16:58,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:16:58,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:16:58,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:17:00,924.924 INFO    ] ================================================
[2026-10-18 23:17:00,940.940 INFO    ] Launching Daemon at Sun Oct 18 23:17:00 IST 2026
[2026-10-18 23:17:00,950.950 INFO    ] ================================================
[2026-10-18 23:17:01,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:17:01
[2026-10-18 23:17:02,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:17:02,659.659 INFO    ] Initializing speech engine...
[2026-10-18 23:17:02,673.673 INFO    ] 2026-10-18 23:17:02
[2026-10-18 23:17:02,964.964 INFO    ] 2026-10-18 23:17:02
[2026-10-18 23:17:03,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:17:03,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:17:03,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:17:03,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:17:03,409.409 INFO    ] time= 18/10/2026 23:17:03
[2026-10-18 23:17:03,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:17:03,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:17:03,650.650 INFO    ] No existing commands found in stream
[2026-10-18 23:17:08,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:17:08,664.664 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-18 23:17:10,608.608 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:17:10,610.610 INFO    ] Checking for system updates...
[2026-10-18 23:17:10,648.648 INFO    ] 200
[2026-10-18 23:17:10,651.651 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:17:10,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:17:10,705.705 INFO    ] No update needed
[2026-10-18 23:17:10,707.707 INFO    ] Checking for camera pi updates...
[2026-10-18 23:17:10,754.754 INFO    ] 200
[2026-10-18 23:17:10,757.757 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:17:10,800.800 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:17:10,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:17:10,845.845 INFO    ] No camera update needed
[2026-10-18 23:17:10,847.847 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:17:10,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:17:10,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:17:10,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:17:12,899.899 INFO    ] ================================================
[2026-10-18 23:17:12,914.914 INFO    ] Launching Daemon at Sun Oct 18 23:17:12 IST 2026
[2026-10-18 23:17:12,925.925 INFO    ] ================================================
[2026-10-18 23:17:13,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:17:13
[2026-10-18 23:17:14,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:17:14,478.478 INFO    ] Initializing speech engine...
[2026-10-18 23:17:14,487.487 INFO    ] 2026-10-18 23:17:14
[2026-10-18 23:17:14,767.767 INFO    ] 2026-10-18 23:17:14
[2026-10-18 23:17:14,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:17:15,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:17:15,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:17:15,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:17:15,325.325 INFO    ] time= 18/10/2026 23:17:15
[2026-10-18 23:17:15,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:17:15,351.351 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:17:15,473.473 INFO    ] No existing commands found in stream
[2026-10-18 23:17:20,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:17:20,510.510 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-18 23:17:24,259.259 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:17:24,262.262 INFO    ] Checking for system updates...
[2026-10-18 23:17:24,300.300 INFO    ] 200
[2026-10-18 23:17:24,303.303 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:17:24,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:17:24,357.357 INFO    ] No update needed
[2026-10-18 23:17:24,360.360 INFO    ] Checking for camera pi updates...
[2026-10-18 23:17:24,393.393 INFO    ] 200
[2026-10-18 23:17:24,396.396 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:17:24,436.436 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:17:24,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:17:24,490.490 INFO    ] No camera update needed
[2026-10-18 23:17:24,492.492 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:17:24,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:17:24,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:17:24,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:17:26,543.543 INFO    ] ================================================
[2026-10-18 23:17:26,560.560 INFO    ] Launching Daemon at Sun Oct 18 23:17:26 IST 2026
[2026-10-18 23:17:26,571.571 INFO    ] ================================================
[2026-10-18 23:17:27,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:17:27
[2026-10-18 23:17:27,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:17:28,154.154 INFO    ] Initializing speech engine...
[2026-10-18 23:17:28,163.163 INFO    ] 2026-10-18 23:17:28
[2026-10-18 23:17:28,457.457 INFO    ] 2026-10-18 23:17:28
[2026-10-18 23:17:28,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:17:28,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:17:28,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:17:28,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:17:28,878.878 INFO    ] time= 18/10/2026 23:17:28
[2026-10-18 23:17:28,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:17:28,891.891 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:17:29,055.055 INFO    ] No existing commands found in stream
[2026-10-18 23:17:34,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:17:34,083.083 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-18 23:17:36,541.541 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:17:36,544.544 INFO    ] Checking for system updates...
[2026-10-18 23:17:36,580.580 INFO    ] 200
[2026-10-18 23:17:36,582.582 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:17:36,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:17:36,635.635 INFO    ] No update needed
[2026-10-18 23:17:36,637.637 INFO    ] Checking for camera pi updates...
[2026-10-18 23:17:36,675.675 INFO    ] 200
[2026-10-18 23:17:36,677.677 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:17:36,722.722 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:17:36,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:17:36,769.769 INFO    ] No camera update needed
[2026-10-18 23:17:36,772.772 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:17:36,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:17:36,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:17:36,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:17:38,822.822 INFO    ] ================================================
[2026-10-18 23:17:38,837.837 INFO    ] Launching Daemon at Sun Oct 18 23:17:38 IST 2026
[2026-10-18 23:17:38,848.848 INFO    ] ================================================
[2026-10-18 23:17:39,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:17:39
[2026-10-18 23:17:40,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:17:40,492.492 INFO    ] Initializing speech engine...
[2026-10-18 23:17:40,504.504 INFO    ] 2026-10-18 23:17:40
[2026-10-18 23:17:40,815.815 INFO    ] 2026-10-18 23:17:40
[2026-10-18 23:17:40,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:17:41,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:17:41,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:17:41,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:17:41,339.339 INFO    ] time= 18/10/2026 23:17:41
[2026-10-18 23:17:41,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:17:41,376.376 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:17:41,496.496 INFO    ] No existing commands found in stream
[2026-10-18 23:17:46,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:17:46,525.525 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-18 23:17:47,905.905 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:17:47,908.908 INFO    ] Checking for system updates...
[2026-10-18 23:17:47,944.944 INFO    ] 200
[2026-10-18 23:17:47,947.947 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:17:48,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:17:48,009.009 INFO    ] No update needed
[2026-10-18 23:17:48,012.012 INFO    ] Checking for camera pi updates...
[2026-10-18 23:17:48,047.047 INFO    ] 200
[2026-10-18 23:17:48,050.050 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:17:48,095.095 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:17:48,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:17:48,138.138 INFO    ] No camera update needed
[2026-10-18 23:17:48,141.141 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:17:48,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:17:48,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:17:48,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:17:50,196.196 INFO    ] ================================================
[2026-10-18 23:17:50,212.212 INFO    ] Launching Daemon at Sun Oct 18 23:17:50 IST 2026
[2026-10-18 23:17:50,223.223 INFO    ] ================================================
[2026-10-18 23:17:50,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:17:50
[2026-10-18 23:17:51,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:17:51,659.659 INFO    ] Initializing speech engine...
[2026-10-18 23:17:51,664.664 INFO    ] 2026-10-18 23:17:51
[2026-10-18 23:17:51,910.910 INFO    ] 2026-10-18 23:17:51
[2026-10-18 23:17:51,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:17:52,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:17:52,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:17:52,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:17:52,472.472 INFO    ] time= 18/10/2026 23:17:52
[2026-10-18 23:17:52,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:17:52,498.498 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:17:52,629.629 INFO    ] No existing commands found in stream
[2026-10-18 23:17:57,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:17:57,654.654 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-18 23:18:01,416.416 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:18:01,418.418 INFO    ] Checking for system updates...
[2026-10-18 23:18:01,454.454 INFO    ] 200
[2026-10-18 23:18:01,457.457 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:18:01,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:18:01,536.536 INFO    ] No update needed
[2026-10-18 23:18:01,541.541 INFO    ] Checking for camera pi updates...
[2026-10-18 23:18:01,603.603 INFO    ] 200
[2026-10-18 23:18:01,607.607 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:18:01,716.716 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:18:01,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:18:01,784.784 INFO    ] No camera update needed
[2026-10-18 23:18:01,787.787 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:18:01,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:18:01,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:18:01,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:18:03,851.851 INFO    ] ================================================
[2026-10-18 23:18:03,867.867 INFO    ] Launching Daemon at Sun Oct 18 23:18:03 IST 2026
[2026-10-18 23:18:03,878.878 INFO    ] ================================================
[2026-10-18 23:18:04,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:18:04
[2026-10-18 23:18:05,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:18:05,531.531 INFO    ] Initializing speech engine...
[2026-10-18 23:18:05,539.539 INFO    ] 2026-10-18 23:18:05
[2026-10-18 23:18:05,830.830 INFO    ] 2026-10-18 23:18:05
[2026-10-18 23:18:05,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:18:06,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:18:06,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:18:06,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:18:06,387.387 INFO    ] time= 18/10/2026 23:18:06
[2026-10-18 23:18:06,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:18:06,427.427 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:18:06,560.560 INFO    ] No existing commands found in stream
[2026-10-18 23:18:11,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:18:11,589.589 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-18 23:18:13,786.786 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:18:13,790.790 INFO    ] Checking for system updates...
[2026-10-18 23:18:13,830.830 INFO    ] 200
[2026-10-18 23:18:13,833.833 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:18:13,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:18:13,897.897 INFO    ] No update needed
[2026-10-18 23:18:13,899.899 INFO    ] Checking for camera pi updates...
[2026-10-18 23:18:13,935.935 INFO    ] 200
[2026-10-18 23:18:13,940.940 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:18:13,990.990 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:18:14,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:18:14,033.033 INFO    ] No camera update needed
[2026-10-18 23:18:14,036.036 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:18:14,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:18:14,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:18:14,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:18:16,088.088 INFO    ] ================================================
[2026-10-18 23:18:16,104.104 INFO    ] Launching Daemon at Sun Oct 18 23:18:16 IST 2026
[2026-10-18 23:18:16,116.116 INFO    ] ================================================
[2026-10-18 23:18:16,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:18:16
[2026-10-18 23:18:17,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:18:17,535.535 INFO    ] Initializing speech engine...
[2026-10-18 23:18:17,543.543 INFO    ] 2026-10-18 23:18:17
[2026-10-18 23:18:17,791.791 INFO    ] 2026-10-18 23:18:17
[2026-10-18 23:18:17,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:18:18,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:18:18,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:18:18,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:18:18,338.338 INFO    ] time= 18/10/2026 23:18:18
[2026-10-18 23:18:18,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:18:18,366.366 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:18:18,502.502 INFO    ] No existing commands found in stream
[2026-10-18 23:18:23,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:18:23,523.523 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-18 23:18:26,401.401 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:18:26,404.404 INFO    ] Checking for system updates...
[2026-10-18 23:18:26,446.446 INFO    ] 200
[2026-10-18 23:18:26,449.449 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:18:26,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:18:26,514.514 INFO    ] No update needed
[2026-10-18 23:18:26,516.516 INFO    ] Checking for camera pi updates...
[2026-10-18 23:18:26,556.556 INFO    ] 200
[2026-10-18 23:18:26,559.559 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:18:26,606.606 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:18:26,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:18:26,649.649 INFO    ] No camera update needed
[2026-10-18 23:18:26,652.652 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:18:26,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:18:26,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:18:26,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:18:28,710.710 INFO    ] ================================================
[2026-10-18 23:18:28,727.727 INFO    ] Launching Daemon at Sun Oct 18 23:18:28 IST 2026
[2026-10-18 23:18:28,739.739 INFO    ] ================================================
[2026-10-18 23:18:29,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:18:29
[2026-10-18 23:18:29,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:18:30,215.215 INFO    ] Initializing speech engine...
[2026-10-18 23:18:30,233.233 INFO    ] 2026-10-18 23:18:30
[2026-10-18 23:18:30,509.509 INFO    ] 2026-10-18 23:18:30
[2026-10-18 23:18:30,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:18:30,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:18:30,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:18:30,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:18:31,013.013 INFO    ] time= 18/10/2026 23:18:30
[2026-10-18 23:18:31,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:18:31,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:18:31,228.228 INFO    ] No existing commands found in stream
[2026-10-18 23:18:36,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:18:36,249.249 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-18 23:18:37,888.888 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:18:37,891.891 INFO    ] Checking for system updates...
[2026-10-18 23:18:37,929.929 INFO    ] 200
[2026-10-18 23:18:37,932.932 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:18:37,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:18:37,990.990 INFO    ] No update needed
[2026-10-18 23:18:37,993.993 INFO    ] Checking for camera pi updates...
[2026-10-18 23:18:38,035.035 INFO    ] 200
[2026-10-18 23:18:38,037.037 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:18:38,078.078 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:18:38,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:18:38,122.122 INFO    ] No camera update needed
[2026-10-18 23:18:38,125.125 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:18:38,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:18:38,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:18:38,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:18:40,178.178 INFO    ] ================================================
[2026-10-18 23:18:40,193.193 INFO    ] Launching Daemon at Sun Oct 18 23:18:40 IST 2026
[2026-10-18 23:18:40,205.205 INFO    ] ================================================
[2026-10-18 23:18:40,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:18:40
[2026-10-18 23:18:41,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:18:41,702.702 INFO    ] Initializing speech engine...
[2026-10-18 23:18:41,710.710 INFO    ] 2026-10-18 23:18:41
[2026-10-18 23:18:41,980.980 INFO    ] 2026-10-18 23:18:41
[2026-10-18 23:18:42,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:18:42,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:18:42,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:18:42,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:18:42,531.531 INFO    ] time= 18/10/2026 23:18:42
[2026-10-18 23:18:42,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:18:42,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:18:42,707.707 INFO    ] No existing commands found in stream
[2026-10-18 23:18:47,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:18:47,741.741 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-18 23:18:51,410.410 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:18:51,413.413 INFO    ] Checking for system updates...
[2026-10-18 23:18:51,453.453 INFO    ] 200
[2026-10-18 23:18:51,455.455 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:18:51,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:18:51,515.515 INFO    ] No update needed
[2026-10-18 23:18:51,517.517 INFO    ] Checking for camera pi updates...
[2026-10-18 23:18:51,550.550 INFO    ] 200
[2026-10-18 23:18:51,553.553 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:18:51,596.596 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:18:51,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:18:51,639.639 INFO    ] No camera update needed
[2026-10-18 23:18:51,641.641 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:18:51,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:18:51,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:18:51,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:18:53,693.693 INFO    ] ================================================
[2026-10-18 23:18:53,709.709 INFO    ] Launching Daemon at Sun Oct 18 23:18:53 IST 2026
[2026-10-18 23:18:53,721.721 INFO    ] ================================================
[2026-10-18 23:18:54,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:18:54
[2026-10-18 23:18:54,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:18:55,177.177 INFO    ] Initializing speech engine...
[2026-10-18 23:18:55,185.185 INFO    ] 2026-10-18 23:18:55
[2026-10-18 23:18:55,443.443 INFO    ] 2026-10-18 23:18:55
[2026-10-18 23:18:55,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:18:55,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:18:55,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:18:55,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:18:55,911.911 INFO    ] time= 18/10/2026 23:18:55
[2026-10-18 23:18:55,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:18:55,995.995 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:18:56,141.141 INFO    ] No existing commands found in stream
[2026-10-18 23:19:01,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:19:01,165.165 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-18 23:19:04,777.777 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:19:04,780.780 INFO    ] Checking for system updates...
[2026-10-18 23:19:04,819.819 INFO    ] 200
[2026-10-18 23:19:04,821.821 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:19:04,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:19:04,880.880 INFO    ] No update needed
[2026-10-18 23:19:04,882.882 INFO    ] Checking for camera pi updates...
[2026-10-18 23:19:04,918.918 INFO    ] 200
[2026-10-18 23:19:04,921.921 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:19:04,960.960 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:19:05,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:19:05,003.003 INFO    ] No camera update needed
[2026-10-18 23:19:05,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:19:05,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:19:05,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:19:05,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:19:07,057.057 INFO    ] ================================================
[2026-10-18 23:19:07,073.073 INFO    ] Launching Daemon at Sun Oct 18 23:19:07 IST 2026
[2026-10-18 23:19:07,085.085 INFO    ] ================================================
[2026-10-18 23:19:07,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:19:07
[2026-10-18 23:19:08,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:19:08,486.486 INFO    ] Initializing speech engine...
[2026-10-18 23:19:08,509.509 INFO    ] 2026-10-18 23:19:08
[2026-10-18 23:19:08,765.765 INFO    ] 2026-10-18 23:19:08
[2026-10-18 23:19:08,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:19:09,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:19:09,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:19:09,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:19:09,253.253 INFO    ] time= 18/10/2026 23:19:09
[2026-10-18 23:19:09,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:19:09,337.337 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:19:09,489.489 INFO    ] No existing commands found in stream
[2026-10-18 23:19:14,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:19:14,506.506 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-18 23:19:15,061.061 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:19:15,064.064 INFO    ] Checking for system updates...
[2026-10-18 23:19:15,099.099 INFO    ] 200
[2026-10-18 23:19:15,102.102 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:19:15,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:19:15,161.161 INFO    ] No update needed
[2026-10-18 23:19:15,164.164 INFO    ] Checking for camera pi updates...
[2026-10-18 23:19:15,204.204 INFO    ] 200
[2026-10-18 23:19:15,207.207 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:19:15,253.253 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:19:15,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:19:15,298.298 INFO    ] No camera update needed
[2026-10-18 23:19:15,301.301 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:19:15,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:19:15,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:19:15,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:19:17,353.353 INFO    ] ================================================
[2026-10-18 23:19:17,369.369 INFO    ] Launching Daemon at Sun Oct 18 23:19:17 IST 2026
[2026-10-18 23:19:17,380.380 INFO    ] ================================================
[2026-10-18 23:19:17,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:19:17
[2026-10-18 23:19:18,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:19:18,782.782 INFO    ] Initializing speech engine...
[2026-10-18 23:19:18,791.791 INFO    ] 2026-10-18 23:19:18
[2026-10-18 23:19:19,081.081 INFO    ] 2026-10-18 23:19:19
[2026-10-18 23:19:19,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:19:19,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:19:19,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:19:19,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:19:19,489.489 INFO    ] time= 18/10/2026 23:19:19
[2026-10-18 23:19:19,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:19:19,533.533 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:19:19,657.657 INFO    ] No existing commands found in stream
[2026-10-18 23:19:24,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:19:24,696.696 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-18 23:19:27,464.464 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:19:27,467.467 INFO    ] Checking for system updates...
[2026-10-18 23:19:27,503.503 INFO    ] 200
[2026-10-18 23:19:27,505.505 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:19:27,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:19:27,564.564 INFO    ] No update needed
[2026-10-18 23:19:27,567.567 INFO    ] Checking for camera pi updates...
[2026-10-18 23:19:27,603.603 INFO    ] 200
[2026-10-18 23:19:27,606.606 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:19:27,649.649 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:19:27,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:19:27,693.693 INFO    ] No camera update needed
[2026-10-18 23:19:27,695.695 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:19:27,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:19:27,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:19:27,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:19:29,750.750 INFO    ] ================================================
[2026-10-18 23:19:29,766.766 INFO    ] Launching Daemon at Sun Oct 18 23:19:29 IST 2026
[2026-10-18 23:19:29,777.777 INFO    ] ================================================
[2026-10-18 23:19:30,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:19:30
[2026-10-18 23:19:30,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:19:31,207.207 INFO    ] Initializing speech engine...
[2026-10-18 23:19:31,218.218 INFO    ] 2026-10-18 23:19:31
[2026-10-18 23:19:31,497.497 INFO    ] 2026-10-18 23:19:31
[2026-10-18 23:19:31,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:19:31,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:19:31,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:19:32,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:19:32,074.074 INFO    ] time= 18/10/2026 23:19:32
[2026-10-18 23:19:32,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:19:32,080.080 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:19:32,166.166 INFO    ] No existing commands found in stream
[2026-10-18 23:19:37,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:19:37,182.182 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-18 23:19:41,435.435 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:19:41,437.437 INFO    ] Checking for system updates...
[2026-10-18 23:19:41,475.475 INFO    ] 200
[2026-10-18 23:19:41,478.478 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:19:41,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:19:41,536.536 INFO    ] No update needed
[2026-10-18 23:19:41,538.538 INFO    ] Checking for camera pi updates...
[2026-10-18 23:19:41,571.571 INFO    ] 200
[2026-10-18 23:19:41,573.573 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:19:41,616.616 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:19:41,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:19:41,759.759 INFO    ] No camera update needed
[2026-10-18 23:19:41,761.761 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:19:41,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:19:41,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:19:41,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:19:43,812.812 INFO    ] ================================================
[2026-10-18 23:19:43,828.828 INFO    ] Launching Daemon at Sun Oct 18 23:19:43 IST 2026
[2026-10-18 23:19:43,839.839 INFO    ] ================================================
[2026-10-18 23:19:44,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:19:44
[2026-10-18 23:19:45,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:19:45,293.293 INFO    ] Initializing speech engine...
[2026-10-18 23:19:45,302.302 INFO    ] 2026-10-18 23:19:45
[2026-10-18 23:19:45,562.562 INFO    ] 2026-10-18 23:19:45
[2026-10-18 23:19:45,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:19:45,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:19:45,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:19:46,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:19:46,102.102 INFO    ] time= 18/10/2026 23:19:46
[2026-10-18 23:19:46,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:19:46,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:19:46,278.278 INFO    ] No existing commands found in stream
[2026-10-18 23:19:51,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:19:51,306.306 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-18 23:19:53,323.323 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:19:53,325.325 INFO    ] Checking for system updates...
[2026-10-18 23:19:53,363.363 INFO    ] 200
[2026-10-18 23:19:53,366.366 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:19:53,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:19:53,420.420 INFO    ] No update needed
[2026-10-18 23:19:53,423.423 INFO    ] Checking for camera pi updates...
[2026-10-18 23:19:53,459.459 INFO    ] 200
[2026-10-18 23:19:53,461.461 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:19:53,504.504 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:19:53,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:19:53,547.547 INFO    ] No camera update needed
[2026-10-18 23:19:53,549.549 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:19:53,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:19:53,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:19:53,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:19:55,602.602 INFO    ] ================================================
[2026-10-18 23:19:55,618.618 INFO    ] Launching Daemon at Sun Oct 18 23:19:55 IST 2026
[2026-10-18 23:19:55,628.628 INFO    ] ================================================
[2026-10-18 23:19:56,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:19:56
[2026-10-18 23:19:56,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:19:57,085.085 INFO    ] Initializing speech engine...
[2026-10-18 23:19:57,094.094 INFO    ] 2026-10-18 23:19:57
[2026-10-18 23:19:57,364.364 INFO    ] 2026-10-18 23:19:57
[2026-10-18 23:19:57,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:19:57,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:19:57,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:19:57,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:19:57,914.914 INFO    ] time= 18/10/2026 23:19:57
[2026-10-18 23:19:57,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:19:57,950.950 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:19:58,088.088 INFO    ] No existing commands found in stream
[2026-10-18 23:20:03,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:20:03,127.127 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-18 23:20:08,919.919 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:20:08,922.922 INFO    ] Checking for system updates...
[2026-10-18 23:20:08,963.963 INFO    ] 200
[2026-10-18 23:20:08,966.966 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:20:09,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:20:09,025.025 INFO    ] No update needed
[2026-10-18 23:20:09,027.027 INFO    ] Checking for camera pi updates...
[2026-10-18 23:20:09,064.064 INFO    ] 200
[2026-10-18 23:20:09,066.066 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:20:09,110.110 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:20:09,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:20:09,153.153 INFO    ] No camera update needed
[2026-10-18 23:20:09,156.156 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:20:09,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:20:09,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:20:09,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:20:11,207.207 INFO    ] ================================================
[2026-10-18 23:20:11,223.223 INFO    ] Launching Daemon at Sun Oct 18 23:20:11 IST 2026
[2026-10-18 23:20:11,233.233 INFO    ] ================================================
[2026-10-18 23:20:11,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:20:11
[2026-10-18 23:20:12,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:20:12,823.823 INFO    ] Initializing speech engine...
[2026-10-18 23:20:12,834.834 INFO    ] 2026-10-18 23:20:12
[2026-10-18 23:20:13,104.104 INFO    ] 2026-10-18 23:20:13
[2026-10-18 23:20:13,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:20:13,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:20:13,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:20:13,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:20:13,599.599 INFO    ] time= 18/10/2026 23:20:13
[2026-10-18 23:20:13,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:20:13,671.671 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:20:13,810.810 INFO    ] No existing commands found in stream
[2026-10-18 23:20:18,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:20:18,850.850 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-18 23:20:20,128.128 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:20:20,131.131 INFO    ] Checking for system updates...
[2026-10-18 23:20:20,165.165 INFO    ] 200
[2026-10-18 23:20:20,168.168 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:20:20,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:20:20,221.221 INFO    ] No update needed
[2026-10-18 23:20:20,223.223 INFO    ] Checking for camera pi updates...
[2026-10-18 23:20:20,263.263 INFO    ] 200
[2026-10-18 23:20:20,266.266 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:20:20,305.305 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:20:20,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:20:20,351.351 INFO    ] No camera update needed
[2026-10-18 23:20:20,353.353 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:20:20,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:20:20,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:20:20,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:20:22,406.406 INFO    ] ================================================
[2026-10-18 23:20:22,421.421 INFO    ] Launching Daemon at Sun Oct 18 23:20:22 IST 2026
[2026-10-18 23:20:22,432.432 INFO    ] ================================================
[2026-10-18 23:20:23,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:20:23
[2026-10-18 23:20:23,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:20:23,848.848 INFO    ] Initializing speech engine...
[2026-10-18 23:20:23,866.866 INFO    ] 2026-10-18 23:20:23
[2026-10-18 23:20:24,117.117 INFO    ] 2026-10-18 23:20:24
[2026-10-18 23:20:24,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:20:24,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:20:24,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:20:24,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:20:24,622.622 INFO    ] time= 18/10/2026 23:20:24
[2026-10-18 23:20:24,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:20:24,694.694 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:20:24,853.853 INFO    ] No existing commands found in stream
[2026-10-18 23:20:29,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:20:29,882.882 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-18 23:20:32,025.025 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:20:32,028.028 INFO    ] Checking for system updates...
[2026-10-18 23:20:32,069.069 INFO    ] 200
[2026-10-18 23:20:32,071.071 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:20:32,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:20:32,133.133 INFO    ] No update needed
[2026-10-18 23:20:32,136.136 INFO    ] Checking for camera pi updates...
[2026-10-18 23:20:32,177.177 INFO    ] 200
[2026-10-18 23:20:32,180.180 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:20:32,235.235 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:20:32,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:20:32,270.270 INFO    ] No camera update needed
[2026-10-18 23:20:32,273.273 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:20:32,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:20:32,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:20:32,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:20:34,339.339 INFO    ] ================================================
[2026-10-18 23:20:34,355.355 INFO    ] Launching Daemon at Sun Oct 18 23:20:34 IST 2026
[2026-10-18 23:20:34,366.366 INFO    ] ================================================
[2026-10-18 23:20:34,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:20:34
[2026-10-18 23:20:35,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:20:35,826.826 INFO    ] Initializing speech engine...
[2026-10-18 23:20:35,833.833 INFO    ] 2026-10-18 23:20:35
[2026-10-18 23:20:36,093.093 INFO    ] 2026-10-18 23:20:36
[2026-10-18 23:20:36,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:20:36,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:20:36,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:20:36,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:20:36,560.560 INFO    ] time= 18/10/2026 23:20:36
[2026-10-18 23:20:36,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:20:36,632.632 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:20:36,775.775 INFO    ] No existing commands found in stream
[2026-10-18 23:20:41,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:20:41,809.809 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-18 23:20:46,038.038 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:20:46,041.041 INFO    ] Checking for system updates...
[2026-10-18 23:20:46,079.079 INFO    ] 200
[2026-10-18 23:20:46,082.082 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:20:46,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:20:46,141.141 INFO    ] No update needed
[2026-10-18 23:20:46,143.143 INFO    ] Checking for camera pi updates...
[2026-10-18 23:20:46,179.179 INFO    ] 200
[2026-10-18 23:20:46,182.182 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:20:46,225.225 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:20:46,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:20:46,271.271 INFO    ] No camera update needed
[2026-10-18 23:20:46,273.273 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:20:46,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:20:46,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:20:46,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:20:48,326.326 INFO    ] ================================================
[2026-10-18 23:20:48,342.342 INFO    ] Launching Daemon at Sun Oct 18 23:20:48 IST 2026
[2026-10-18 23:20:48,352.352 INFO    ] ================================================
[2026-10-18 23:20:48,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:20:48
[2026-10-18 23:20:49,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:20:49,769.769 INFO    ] Initializing speech engine...
[2026-10-18 23:20:49,779.779 INFO    ] 2026-10-18 23:20:49
[2026-10-18 23:20:50,029.029 INFO    ] 2026-10-18 23:20:50
[2026-10-18 23:20:50,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:20:50,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:20:50,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:20:50,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:20:50,588.588 INFO    ] time= 18/10/2026 23:20:50
[2026-10-18 23:20:50,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:20:50,627.627 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:20:50,748.748 INFO    ] No existing commands found in stream
[2026-10-18 23:20:55,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:20:55,777.777 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-18 23:20:59,341.341 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:20:59,343.343 INFO    ] Checking for system updates...
[2026-10-18 23:20:59,378.378 INFO    ] 200
[2026-10-18 23:20:59,381.381 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:20:59,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:20:59,440.440 INFO    ] No update needed
[2026-10-18 23:20:59,442.442 INFO    ] Checking for camera pi updates...
[2026-10-18 23:20:59,474.474 INFO    ] 200
[2026-10-18 23:20:59,477.477 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:20:59,520.520 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:20:59,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:20:59,564.564 INFO    ] No camera update needed
[2026-10-18 23:20:59,566.566 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:20:59,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:20:59,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:20:59,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:21:01,620.620 INFO    ] ================================================
[2026-10-18 23:21:01,640.640 INFO    ] Launching Daemon at Sun Oct 18 23:21:01 IST 2026
[2026-10-18 23:21:01,657.657 INFO    ] ================================================
[2026-10-18 23:21:02,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:21:02
[2026-10-18 23:21:03,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:21:03,369.369 INFO    ] Initializing speech engine...
[2026-10-18 23:21:03,377.377 INFO    ] 2026-10-18 23:21:03
[2026-10-18 23:21:03,634.634 INFO    ] 2026-10-18 23:21:03
[2026-10-18 23:21:03,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:21:03,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:21:03,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:21:04,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:21:04,117.117 INFO    ] time= 18/10/2026 23:21:04
[2026-10-18 23:21:04,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:21:04,192.192 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:21:04,320.320 INFO    ] No existing commands found in stream
[2026-10-18 23:21:09,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:21:09,348.348 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-18 23:21:13,230.230 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:21:13,234.234 INFO    ] Checking for system updates...
[2026-10-18 23:21:13,273.273 INFO    ] 200
[2026-10-18 23:21:13,277.277 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:21:13,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:21:13,337.337 INFO    ] No update needed
[2026-10-18 23:21:13,340.340 INFO    ] Checking for camera pi updates...
[2026-10-18 23:21:13,399.399 INFO    ] 200
[2026-10-18 23:21:13,402.402 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:21:13,459.459 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:21:13,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:21:13,503.503 INFO    ] No camera update needed
[2026-10-18 23:21:13,505.505 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:21:13,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:21:13,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:21:13,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:21:15,562.562 INFO    ] ================================================
[2026-10-18 23:21:15,584.584 INFO    ] Launching Daemon at Sun Oct 18 23:21:15 IST 2026
[2026-10-18 23:21:15,595.595 INFO    ] ================================================
[2026-10-18 23:21:16,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:21:16
[2026-10-18 23:21:16,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:21:17,239.239 INFO    ] Initializing speech engine...
[2026-10-18 23:21:17,247.247 INFO    ] 2026-10-18 23:21:17
[2026-10-18 23:21:17,535.535 INFO    ] 2026-10-18 23:21:17
[2026-10-18 23:21:17,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:21:17,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:21:17,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:21:18,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:21:18,085.085 INFO    ] time= 18/10/2026 23:21:18
[2026-10-18 23:21:18,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:21:18,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:21:18,251.251 INFO    ] No existing commands found in stream
[2026-10-18 23:21:23,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:21:23,286.286 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-18 23:21:27,100.100 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:21:27,103.103 INFO    ] Checking for system updates...
[2026-10-18 23:21:27,140.140 INFO    ] 200
[2026-10-18 23:21:27,143.143 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:21:27,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:21:27,206.206 INFO    ] No update needed
[2026-10-18 23:21:27,209.209 INFO    ] Checking for camera pi updates...
[2026-10-18 23:21:27,247.247 INFO    ] 200
[2026-10-18 23:21:27,249.249 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:21:27,294.294 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:21:27,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:21:27,337.337 INFO    ] No camera update needed
[2026-10-18 23:21:27,340.340 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:21:27,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:21:27,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:21:27,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:21:29,392.392 INFO    ] ================================================
[2026-10-18 23:21:29,407.407 INFO    ] Launching Daemon at Sun Oct 18 23:21:29 IST 2026
[2026-10-18 23:21:29,418.418 INFO    ] ================================================
[2026-10-18 23:21:30,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:21:30
[2026-10-18 23:21:30,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:21:31,022.022 INFO    ] Initializing speech engine...
[2026-10-18 23:21:31,031.031 INFO    ] 2026-10-18 23:21:31
[2026-10-18 23:21:31,303.303 INFO    ] 2026-10-18 23:21:31
[2026-10-18 23:21:31,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:21:31,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:21:31,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:21:31,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:21:31,890.890 INFO    ] time= 18/10/2026 23:21:31
[2026-10-18 23:21:31,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:21:31,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:21:32,064.064 INFO    ] No existing commands found in stream
[2026-10-18 23:21:37,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:21:37,098.098 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-18 23:21:41,159.159 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:21:41,162.162 INFO    ] Checking for system updates...
[2026-10-18 23:21:41,196.196 INFO    ] 200
[2026-10-18 23:21:41,199.199 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:21:41,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:21:41,253.253 INFO    ] No update needed
[2026-10-18 23:21:41,255.255 INFO    ] Checking for camera pi updates...
[2026-10-18 23:21:41,292.292 INFO    ] 200
[2026-10-18 23:21:41,294.294 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:21:41,339.339 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:21:41,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:21:41,382.382 INFO    ] No camera update needed
[2026-10-18 23:21:41,384.384 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:21:41,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:21:41,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:21:41,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:21:43,436.436 INFO    ] ================================================
[2026-10-18 23:21:43,451.451 INFO    ] Launching Daemon at Sun Oct 18 23:21:43 IST 2026
[2026-10-18 23:21:43,462.462 INFO    ] ================================================
[2026-10-18 23:21:44,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:21:44
[2026-10-18 23:21:44,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:21:44,854.854 INFO    ] Initializing speech engine...
[2026-10-18 23:21:44,862.862 INFO    ] 2026-10-18 23:21:44
[2026-10-18 23:21:45,134.134 INFO    ] 2026-10-18 23:21:45
[2026-10-18 23:21:45,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:21:45,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:21:45,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:21:45,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:21:45,606.606 INFO    ] time= 18/10/2026 23:21:45
[2026-10-18 23:21:45,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:21:45,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:21:45,835.835 INFO    ] No existing commands found in stream
[2026-10-18 23:21:50,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:21:50,865.865 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-18 23:21:53,633.633 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:21:53,636.636 INFO    ] Checking for system updates...
[2026-10-18 23:21:53,672.672 INFO    ] 200
[2026-10-18 23:21:53,674.674 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:21:53,725.725 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:21:53,728.728 INFO    ] No update needed
[2026-10-18 23:21:53,730.730 INFO    ] Checking for camera pi updates...
[2026-10-18 23:21:53,763.763 INFO    ] 200
[2026-10-18 23:21:53,765.765 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:21:53,804.804 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:21:53,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:21:53,945.945 INFO    ] No camera update needed
[2026-10-18 23:21:53,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:21:53,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:21:53,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:21:53,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:21:56,998.998 INFO    ] ================================================
[2026-10-18 23:21:56,013.013 INFO    ] Launching Daemon at Sun Oct 18 23:21:56 IST 2026
[2026-10-18 23:21:56,023.023 INFO    ] ================================================
[2026-10-18 23:21:59,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:21:56
[2026-10-18 23:21:59,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:21:59,937.937 INFO    ] Initializing speech engine...
[2026-10-18 23:21:59,951.951 INFO    ] 2026-10-18 23:21:59
[2026-10-18 23:22:00,266.266 INFO    ] 2026-10-18 23:22:00
[2026-10-18 23:22:00,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:22:00,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:22:00,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:22:00,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:22:00,767.767 INFO    ] time= 18/10/2026 23:22:00
[2026-10-18 23:22:00,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:22:00,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:22:00,936.936 INFO    ] No existing commands found in stream
[2026-10-18 23:22:05,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:22:05,970.970 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-18 23:22:09,690.690 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:22:09,693.693 INFO    ] Checking for system updates...
[2026-10-18 23:22:09,734.734 INFO    ] 200
[2026-10-18 23:22:09,736.736 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:22:09,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:22:09,790.790 INFO    ] No update needed
[2026-10-18 23:22:09,792.792 INFO    ] Checking for camera pi updates...
[2026-10-18 23:22:09,824.824 INFO    ] 200
[2026-10-18 23:22:09,827.827 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:22:09,867.867 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:22:09,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:22:09,909.909 INFO    ] No camera update needed
[2026-10-18 23:22:09,911.911 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:22:09,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:22:09,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:22:09,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:22:11,962.962 INFO    ] ================================================
[2026-10-18 23:22:11,977.977 INFO    ] Launching Daemon at Sun Oct 18 23:22:11 IST 2026
[2026-10-18 23:22:11,988.988 INFO    ] ================================================
[2026-10-18 23:22:12,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:22:12
[2026-10-18 23:22:13,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:22:13,410.410 INFO    ] Initializing speech engine...
[2026-10-18 23:22:13,424.424 INFO    ] 2026-10-18 23:22:13
[2026-10-18 23:22:13,719.719 INFO    ] 2026-10-18 23:22:13
[2026-10-18 23:22:13,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:22:13,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:22:13,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:22:14,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:22:14,163.163 INFO    ] time= 18/10/2026 23:22:14
[2026-10-18 23:22:14,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:22:14,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:22:14,325.325 INFO    ] No existing commands found in stream
[2026-10-18 23:22:19,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:22:19,353.353 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-18 23:22:20,512.512 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:22:20,515.515 INFO    ] Checking for system updates...
[2026-10-18 23:22:20,556.556 INFO    ] 200
[2026-10-18 23:22:20,559.559 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:22:20,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:22:20,624.624 INFO    ] No update needed
[2026-10-18 23:22:20,626.626 INFO    ] Checking for camera pi updates...
[2026-10-18 23:22:20,666.666 INFO    ] 200
[2026-10-18 23:22:20,668.668 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:22:20,714.714 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:22:20,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:22:20,760.760 INFO    ] No camera update needed
[2026-10-18 23:22:20,763.763 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:22:20,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:22:20,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:22:20,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:22:22,819.819 INFO    ] ================================================
[2026-10-18 23:22:22,834.834 INFO    ] Launching Daemon at Sun Oct 18 23:22:22 IST 2026
[2026-10-18 23:22:22,844.844 INFO    ] ================================================
[2026-10-18 23:22:23,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:22:23
[2026-10-18 23:22:24,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:22:24,334.334 INFO    ] Initializing speech engine...
[2026-10-18 23:22:24,340.340 INFO    ] 2026-10-18 23:22:24
[2026-10-18 23:22:24,639.639 INFO    ] 2026-10-18 23:22:24
[2026-10-18 23:22:24,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:22:24,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:22:24,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:22:25,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:22:25,055.055 INFO    ] time= 18/10/2026 23:22:25
[2026-10-18 23:22:25,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:22:25,086.086 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:22:25,169.169 INFO    ] No existing commands found in stream
[2026-10-18 23:22:30,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:22:30,187.187 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-18 23:22:30,999.999 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:22:31,002.002 INFO    ] Checking for system updates...
[2026-10-18 23:22:31,037.037 INFO    ] 200
[2026-10-18 23:22:31,040.040 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:22:31,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:22:31,101.101 INFO    ] No update needed
[2026-10-18 23:22:31,103.103 INFO    ] Checking for camera pi updates...
[2026-10-18 23:22:31,137.137 INFO    ] 200
[2026-10-18 23:22:31,140.140 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:22:31,197.197 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:22:31,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:22:31,244.244 INFO    ] No camera update needed
[2026-10-18 23:22:31,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:22:31,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:22:31,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:22:31,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:22:33,310.310 INFO    ] ================================================
[2026-10-18 23:22:33,325.325 INFO    ] Launching Daemon at Sun Oct 18 23:22:33 IST 2026
[2026-10-18 23:22:33,335.335 INFO    ] ================================================
[2026-10-18 23:22:33,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:22:33
[2026-10-18 23:22:34,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:22:34,934.934 INFO    ] Initializing speech engine...
[2026-10-18 23:22:34,949.949 INFO    ] 2026-10-18 23:22:34
[2026-10-18 23:22:35,263.263 INFO    ] 2026-10-18 23:22:35
[2026-10-18 23:22:35,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:22:35,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:22:35,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:22:35,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:22:35,760.760 INFO    ] time= 18/10/2026 23:22:35
[2026-10-18 23:22:35,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:22:35,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:22:35,929.929 INFO    ] No existing commands found in stream
[2026-10-18 23:22:40,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:22:40,952.952 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-18 23:22:43,095.095 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:22:43,098.098 INFO    ] Checking for system updates...
[2026-10-18 23:22:43,138.138 INFO    ] 200
[2026-10-18 23:22:43,141.141 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:22:43,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:22:43,197.197 INFO    ] No update needed
[2026-10-18 23:22:43,200.200 INFO    ] Checking for camera pi updates...
[2026-10-18 23:22:43,234.234 INFO    ] 200
[2026-10-18 23:22:43,237.237 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:22:43,278.278 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:22:43,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:22:43,323.323 INFO    ] No camera update needed
[2026-10-18 23:22:43,326.326 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:22:43,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:22:43,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:22:43,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:22:45,381.381 INFO    ] ================================================
[2026-10-18 23:22:45,396.396 INFO    ] Launching Daemon at Sun Oct 18 23:22:45 IST 2026
[2026-10-18 23:22:45,407.407 INFO    ] ================================================
[2026-10-18 23:22:45,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:22:45
[2026-10-18 23:22:46,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:22:46,844.844 INFO    ] Initializing speech engine...
[2026-10-18 23:22:46,853.853 INFO    ] 2026-10-18 23:22:46
[2026-10-18 23:22:47,101.101 INFO    ] 2026-10-18 23:22:47
[2026-10-18 23:22:47,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:22:47,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:22:47,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:22:47,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:22:47,571.571 INFO    ] time= 18/10/2026 23:22:47
[2026-10-18 23:22:47,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:22:47,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:22:47,810.810 INFO    ] No existing commands found in stream
[2026-10-18 23:22:52,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:22:52,826.826 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-18 23:22:55,558.558 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:22:55,560.560 INFO    ] Checking for system updates...
[2026-10-18 23:22:55,596.596 INFO    ] 200
[2026-10-18 23:22:55,599.599 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:22:55,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:22:55,660.660 INFO    ] No update needed
[2026-10-18 23:22:55,662.662 INFO    ] Checking for camera pi updates...
[2026-10-18 23:22:55,695.695 INFO    ] 200
[2026-10-18 23:22:55,698.698 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:22:55,738.738 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:22:55,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:22:55,781.781 INFO    ] No camera update needed
[2026-10-18 23:22:55,783.783 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:22:55,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:22:55,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:22:55,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:22:57,838.838 INFO    ] ================================================
[2026-10-18 23:22:57,853.853 INFO    ] Launching Daemon at Sun Oct 18 23:22:57 IST 2026
[2026-10-18 23:22:57,864.864 INFO    ] ================================================
[2026-10-18 23:22:58,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:22:58
[2026-10-18 23:22:59,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:22:59,267.267 INFO    ] Initializing speech engine...
[2026-10-18 23:22:59,282.282 INFO    ] 2026-10-18 23:22:59
[2026-10-18 23:22:59,545.545 INFO    ] 2026-10-18 23:22:59
[2026-10-18 23:22:59,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:22:59,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:22:59,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:23:00,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:23:00,096.096 INFO    ] time= 18/10/2026 23:23:00
[2026-10-18 23:23:00,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:23:00,119.119 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:23:00,251.251 INFO    ] No existing commands found in stream
[2026-10-18 23:23:05,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:23:05,272.272 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-18 23:23:06,308.308 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:23:06,311.311 INFO    ] Checking for system updates...
[2026-10-18 23:23:06,352.352 INFO    ] 200
[2026-10-18 23:23:06,355.355 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:23:06,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:23:06,410.410 INFO    ] No update needed
[2026-10-18 23:23:06,413.413 INFO    ] Checking for camera pi updates...
[2026-10-18 23:23:06,448.448 INFO    ] 200
[2026-10-18 23:23:06,451.451 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:23:06,492.492 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:23:06,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:23:06,537.537 INFO    ] No camera update needed
[2026-10-18 23:23:06,540.540 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:23:06,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:23:06,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:23:06,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:23:08,596.596 INFO    ] ================================================
[2026-10-18 23:23:08,612.612 INFO    ] Launching Daemon at Sun Oct 18 23:23:08 IST 2026
[2026-10-18 23:23:08,624.624 INFO    ] ================================================
[2026-10-18 23:23:09,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:23:09
[2026-10-18 23:23:09,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:23:10,235.235 INFO    ] Initializing speech engine...
[2026-10-18 23:23:10,248.248 INFO    ] 2026-10-18 23:23:10
[2026-10-18 23:23:10,542.542 INFO    ] 2026-10-18 23:23:10
[2026-10-18 23:23:10,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:23:10,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:23:10,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:23:11,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:23:11,079.079 INFO    ] time= 18/10/2026 23:23:11
[2026-10-18 23:23:11,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:23:11,125.125 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:23:11,259.259 INFO    ] No existing commands found in stream
[2026-10-18 23:23:16,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:23:16,291.291 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-18 23:23:19,235.235 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:23:19,238.238 INFO    ] Checking for system updates...
[2026-10-18 23:23:19,274.274 INFO    ] 200
[2026-10-18 23:23:19,277.277 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:23:19,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:23:19,331.331 INFO    ] No update needed
[2026-10-18 23:23:19,334.334 INFO    ] Checking for camera pi updates...
[2026-10-18 23:23:19,371.371 INFO    ] 200
[2026-10-18 23:23:19,374.374 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:23:19,413.413 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:23:19,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:23:19,455.455 INFO    ] No camera update needed
[2026-10-18 23:23:19,458.458 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:23:19,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:23:19,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:23:19,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:23:21,512.512 INFO    ] ================================================
[2026-10-18 23:23:21,528.528 INFO    ] Launching Daemon at Sun Oct 18 23:23:21 IST 2026
[2026-10-18 23:23:21,539.539 INFO    ] ================================================
[2026-10-18 23:23:22,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:23:22
[2026-10-18 23:23:22,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:23:22,959.959 INFO    ] Initializing speech engine...
[2026-10-18 23:23:22,967.967 INFO    ] 2026-10-18 23:23:22
[2026-10-18 23:23:23,213.213 INFO    ] 2026-10-18 23:23:23
[2026-10-18 23:23:23,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:23:23,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:23:23,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:23:23,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:23:23,758.758 INFO    ] time= 18/10/2026 23:23:23
[2026-10-18 23:23:23,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:23:23,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:23:23,919.919 INFO    ] No existing commands found in stream
[2026-10-18 23:23:28,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:23:28,942.942 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-18 23:23:31,881.881 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:23:31,884.884 INFO    ] Checking for system updates...
[2026-10-18 23:23:31,922.922 INFO    ] 200
[2026-10-18 23:23:31,925.925 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:23:31,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:23:31,984.984 INFO    ] No update needed
[2026-10-18 23:23:31,987.987 INFO    ] Checking for camera pi updates...
[2026-10-18 23:23:32,024.024 INFO    ] 200
[2026-10-18 23:23:32,027.027 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:23:32,072.072 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:23:32,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:23:32,113.113 INFO    ] No camera update needed
[2026-10-18 23:23:32,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:23:32,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:23:32,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:23:32,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:23:34,171.171 INFO    ] ================================================
[2026-10-18 23:23:34,187.187 INFO    ] Launching Daemon at Sun Oct 18 23:23:34 IST 2026
[2026-10-18 23:23:34,198.198 INFO    ] ================================================
[2026-10-18 23:23:34,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:23:34
[2026-10-18 23:23:35,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:23:35,857.857 INFO    ] Initializing speech engine...
[2026-10-18 23:23:35,867.867 INFO    ] 2026-10-18 23:23:35
[2026-10-18 23:23:36,182.182 INFO    ] 2026-10-18 23:23:36
[2026-10-18 23:23:36,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:23:36,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:23:36,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:23:36,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:23:36,724.724 INFO    ] time= 18/10/2026 23:23:36
[2026-10-18 23:23:36,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:23:36,742.742 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:23:36,898.898 INFO    ] No existing commands found in stream
[2026-10-18 23:23:41,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:23:41,928.928 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-18 23:23:44,705.705 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:23:44,707.707 INFO    ] Checking for system updates...
[2026-10-18 23:23:44,744.744 INFO    ] 200
[2026-10-18 23:23:44,746.746 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:23:44,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:23:44,805.805 INFO    ] No update needed
[2026-10-18 23:23:44,807.807 INFO    ] Checking for camera pi updates...
[2026-10-18 23:23:44,840.840 INFO    ] 200
[2026-10-18 23:23:44,842.842 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:23:44,891.891 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:23:44,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:23:44,935.935 INFO    ] No camera update needed
[2026-10-18 23:23:44,937.937 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:23:44,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:23:44,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:23:44,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:23:46,989.989 INFO    ] ================================================
[2026-10-18 23:23:47,005.005 INFO    ] Launching Daemon at Sun Oct 18 23:23:46 IST 2026
[2026-10-18 23:23:47,016.016 INFO    ] ================================================
[2026-10-18 23:23:47,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:23:47
[2026-10-18 23:23:48,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:23:48,442.442 INFO    ] Initializing speech engine...
[2026-10-18 23:23:48,451.451 INFO    ] 2026-10-18 23:23:48
[2026-10-18 23:23:48,712.712 INFO    ] 2026-10-18 23:23:48
[2026-10-18 23:23:48,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:23:49,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:23:49,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:23:49,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:23:49,261.261 INFO    ] time= 18/10/2026 23:23:49
[2026-10-18 23:23:49,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:23:49,285.285 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:23:49,413.413 INFO    ] No existing commands found in stream
[2026-10-18 23:23:54,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:23:54,439.439 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-18 23:23:57,621.621 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:23:57,623.623 INFO    ] Checking for system updates...
[2026-10-18 23:23:57,659.659 INFO    ] 200
[2026-10-18 23:23:57,661.661 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:23:57,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:23:57,722.722 INFO    ] No update needed
[2026-10-18 23:23:57,724.724 INFO    ] Checking for camera pi updates...
[2026-10-18 23:23:57,761.761 INFO    ] 200
[2026-10-18 23:23:57,763.763 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:23:57,802.802 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:23:57,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:23:57,943.943 INFO    ] No camera update needed
[2026-10-18 23:23:57,946.946 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:23:57,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:23:57,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:23:57,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:24:00,002.002 INFO    ] ================================================
[2026-10-18 23:24:00,023.023 INFO    ] Launching Daemon at Sun Oct 18 23:24:00 IST 2026
[2026-10-18 23:24:00,033.033 INFO    ] ================================================
[2026-10-18 23:24:00,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:24:00
[2026-10-18 23:24:01,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:24:01,664.664 INFO    ] Initializing speech engine...
[2026-10-18 23:24:01,699.699 INFO    ] 2026-10-18 23:24:01
[2026-10-18 23:24:02,073.073 INFO    ] 2026-10-18 23:24:02
[2026-10-18 23:24:02,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:24:02,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:24:02,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:24:02,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:24:02,598.598 INFO    ] time= 18/10/2026 23:24:02
[2026-10-18 23:24:02,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:24:02,649.649 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:24:02,779.779 INFO    ] No existing commands found in stream
[2026-10-18 23:24:07,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:24:07,800.800 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-18 23:24:09,047.047 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:24:09,050.050 INFO    ] Checking for system updates...
[2026-10-18 23:24:09,084.084 INFO    ] 200
[2026-10-18 23:24:09,087.087 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:24:09,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:24:09,143.143 INFO    ] No update needed
[2026-10-18 23:24:09,145.145 INFO    ] Checking for camera pi updates...
[2026-10-18 23:24:09,178.178 INFO    ] 200
[2026-10-18 23:24:09,181.181 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:24:09,221.221 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:24:09,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:24:09,263.263 INFO    ] No camera update needed
[2026-10-18 23:24:09,266.266 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:24:09,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:24:09,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:24:09,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:24:11,317.317 INFO    ] ================================================
[2026-10-18 23:24:11,332.332 INFO    ] Launching Daemon at Sun Oct 18 23:24:11 IST 2026
[2026-10-18 23:24:11,343.343 INFO    ] ================================================
[2026-10-18 23:24:11,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:24:11
[2026-10-18 23:24:12,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:24:12,796.796 INFO    ] Initializing speech engine...
[2026-10-18 23:24:12,812.812 INFO    ] 2026-10-18 23:24:12
[2026-10-18 23:24:13,077.077 INFO    ] 2026-10-18 23:24:13
[2026-10-18 23:24:13,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:24:13,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:24:13,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:24:13,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:24:13,606.606 INFO    ] time= 18/10/2026 23:24:13
[2026-10-18 23:24:13,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:24:13,630.630 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:24:13,748.748 INFO    ] No existing commands found in stream
[2026-10-18 23:24:18,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:24:18,771.771 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-18 23:24:27,353.353 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:24:27,356.356 INFO    ] Checking for system updates...
[2026-10-18 23:24:27,393.393 INFO    ] 200
[2026-10-18 23:24:27,395.395 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:24:27,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:24:27,450.450 INFO    ] No update needed
[2026-10-18 23:24:27,453.453 INFO    ] Checking for camera pi updates...
[2026-10-18 23:24:27,490.490 INFO    ] 200
[2026-10-18 23:24:27,493.493 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:24:27,538.538 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:24:27,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:24:27,582.582 INFO    ] No camera update needed
[2026-10-18 23:24:27,584.584 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:24:27,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:24:27,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:24:27,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:24:29,638.638 INFO    ] ================================================
[2026-10-18 23:24:29,652.652 INFO    ] Launching Daemon at Sun Oct 18 23:24:29 IST 2026
[2026-10-18 23:24:29,663.663 INFO    ] ================================================
[2026-10-18 23:24:30,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:24:30
[2026-10-18 23:24:30,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:24:31,253.253 INFO    ] Initializing speech engine...
[2026-10-18 23:24:31,262.262 INFO    ] 2026-10-18 23:24:31
[2026-10-18 23:24:31,542.542 INFO    ] 2026-10-18 23:24:31
[2026-10-18 23:24:31,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:24:31,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:24:31,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:24:32,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:24:32,075.075 INFO    ] time= 18/10/2026 23:24:32
[2026-10-18 23:24:32,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:24:32,164.164 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:24:32,286.286 INFO    ] No existing commands found in stream
[2026-10-18 23:24:37,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:24:37,325.325 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-18 23:24:39,196.196 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:24:39,198.198 INFO    ] Checking for system updates...
[2026-10-18 23:24:39,236.236 INFO    ] 200
[2026-10-18 23:24:39,238.238 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:24:39,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:24:39,297.297 INFO    ] No update needed
[2026-10-18 23:24:39,299.299 INFO    ] Checking for camera pi updates...
[2026-10-18 23:24:39,331.331 INFO    ] 200
[2026-10-18 23:24:39,334.334 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:24:39,373.373 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:24:39,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:24:39,416.416 INFO    ] No camera update needed
[2026-10-18 23:24:39,419.419 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:24:39,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:24:39,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:24:39,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:24:41,471.471 INFO    ] ================================================
[2026-10-18 23:24:41,485.485 INFO    ] Launching Daemon at Sun Oct 18 23:24:41 IST 2026
[2026-10-18 23:24:41,495.495 INFO    ] ================================================
[2026-10-18 23:24:42,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:24:42
[2026-10-18 23:24:42,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:24:43,064.064 INFO    ] Initializing speech engine...
[2026-10-18 23:24:43,072.072 INFO    ] 2026-10-18 23:24:43
[2026-10-18 23:24:43,353.353 INFO    ] 2026-10-18 23:24:43
[2026-10-18 23:24:43,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:24:43,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:24:43,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:24:43,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:24:43,890.890 INFO    ] time= 18/10/2026 23:24:43
[2026-10-18 23:24:43,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:24:43,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:24:44,049.049 INFO    ] No existing commands found in stream
[2026-10-18 23:24:49,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:24:49,082.082 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-18 23:24:51,022.022 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:24:51,025.025 INFO    ] Checking for system updates...
[2026-10-18 23:24:51,060.060 INFO    ] 200
[2026-10-18 23:24:51,063.063 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:24:51,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:24:51,117.117 INFO    ] No update needed
[2026-10-18 23:24:51,120.120 INFO    ] Checking for camera pi updates...
[2026-10-18 23:24:51,152.152 INFO    ] 200
[2026-10-18 23:24:51,155.155 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:24:51,195.195 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:24:51,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:24:51,237.237 INFO    ] No camera update needed
[2026-10-18 23:24:51,239.239 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:24:51,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:24:51,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:24:51,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:24:53,294.294 INFO    ] ================================================
[2026-10-18 23:24:53,309.309 INFO    ] Launching Daemon at Sun Oct 18 23:24:53 IST 2026
[2026-10-18 23:24:53,320.320 INFO    ] ================================================
[2026-10-18 23:24:53,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:24:53
[2026-10-18 23:24:54,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:24:54,774.774 INFO    ] Initializing speech engine...
[2026-10-18 23:24:54,787.787 INFO    ] 2026-10-18 23:24:54
[2026-10-18 23:24:55,057.057 INFO    ] 2026-10-18 23:24:55
[2026-10-18 23:24:55,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:24:55,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:24:55,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:24:55,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:24:55,559.559 INFO    ] time= 18/10/2026 23:24:55
[2026-10-18 23:24:55,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:24:55,679.679 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:24:55,831.831 INFO    ] No existing commands found in stream
[2026-10-18 23:25:00,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:25:00,856.856 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-18 23:25:02,850.850 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:25:02,853.853 INFO    ] Checking for system updates...
[2026-10-18 23:25:02,901.901 INFO    ] 200
[2026-10-18 23:25:02,910.910 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:25:02,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:25:02,983.983 INFO    ] No update needed
[2026-10-18 23:25:02,986.986 INFO    ] Checking for camera pi updates...
[2026-10-18 23:25:03,032.032 INFO    ] 200
[2026-10-18 23:25:03,035.035 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:25:03,084.084 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:25:03,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:25:03,117.117 INFO    ] No camera update needed
[2026-10-18 23:25:03,120.120 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:25:03,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:25:03,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:25:03,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:25:05,178.178 INFO    ] ================================================
[2026-10-18 23:25:05,193.193 INFO    ] Launching Daemon at Sun Oct 18 23:25:05 IST 2026
[2026-10-18 23:25:05,203.203 INFO    ] ================================================
[2026-10-18 23:25:05,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:25:05
[2026-10-18 23:25:06,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:25:06,750.750 INFO    ] Initializing speech engine...
[2026-10-18 23:25:06,760.760 INFO    ] 2026-10-18 23:25:06
[2026-10-18 23:25:07,019.019 INFO    ] 2026-10-18 23:25:07
[2026-10-18 23:25:07,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:25:07,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:25:07,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:25:07,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:25:07,568.568 INFO    ] time= 18/10/2026 23:25:07
[2026-10-18 23:25:07,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:25:07,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:25:07,767.767 INFO    ] No existing commands found in stream
[2026-10-18 23:25:12,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:25:12,784.784 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-18 23:25:13,320.320 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:25:13,323.323 INFO    ] Checking for system updates...
[2026-10-18 23:25:13,359.359 INFO    ] 200
[2026-10-18 23:25:13,362.362 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:25:13,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:25:13,416.416 INFO    ] No update needed
[2026-10-18 23:25:13,419.419 INFO    ] Checking for camera pi updates...
[2026-10-18 23:25:13,452.452 INFO    ] 200
[2026-10-18 23:25:13,455.455 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:25:13,496.496 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:25:13,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:25:13,540.540 INFO    ] No camera update needed
[2026-10-18 23:25:13,542.542 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:25:13,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:25:13,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:25:13,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:25:15,595.595 INFO    ] ================================================
[2026-10-18 23:25:15,610.610 INFO    ] Launching Daemon at Sun Oct 18 23:25:15 IST 2026
[2026-10-18 23:25:15,621.621 INFO    ] ================================================
[2026-10-18 23:25:16,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:25:16
[2026-10-18 23:25:16,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:25:17,024.024 INFO    ] Initializing speech engine...
[2026-10-18 23:25:17,039.039 INFO    ] 2026-10-18 23:25:17
[2026-10-18 23:25:17,312.312 INFO    ] 2026-10-18 23:25:17
[2026-10-18 23:25:17,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:25:17,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:25:17,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:25:17,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:25:17,855.855 INFO    ] time= 18/10/2026 23:25:17
[2026-10-18 23:25:17,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:25:17,927.927 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:25:18,076.076 INFO    ] No existing commands found in stream
[2026-10-18 23:25:23,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:25:23,099.099 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-18 23:25:25,336.336 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:25:25,339.339 INFO    ] Checking for system updates...
[2026-10-18 23:25:25,381.381 INFO    ] 200
[2026-10-18 23:25:25,384.384 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:25:25,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:25:25,443.443 INFO    ] No update needed
[2026-10-18 23:25:25,446.446 INFO    ] Checking for camera pi updates...
[2026-10-18 23:25:25,481.481 INFO    ] 200
[2026-10-18 23:25:25,483.483 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:25:25,525.525 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:25:25,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:25:25,574.574 INFO    ] No camera update needed
[2026-10-18 23:25:25,577.577 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:25:25,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:25:25,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:25:25,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:25:27,629.629 INFO    ] ================================================
[2026-10-18 23:25:27,643.643 INFO    ] Launching Daemon at Sun Oct 18 23:25:27 IST 2026
[2026-10-18 23:25:27,654.654 INFO    ] ================================================
[2026-10-18 23:25:28,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:25:28
[2026-10-18 23:25:28,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:25:29,197.197 INFO    ] Initializing speech engine...
[2026-10-18 23:25:29,211.211 INFO    ] 2026-10-18 23:25:29
[2026-10-18 23:25:29,486.486 INFO    ] 2026-10-18 23:25:29
[2026-10-18 23:25:29,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:25:29,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:25:29,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:25:30,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:25:30,017.017 INFO    ] time= 18/10/2026 23:25:30
[2026-10-18 23:25:30,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:25:30,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:25:30,195.195 INFO    ] No existing commands found in stream
[2026-10-18 23:25:35,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:25:35,229.229 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-18 23:25:37,245.245 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:25:37,248.248 INFO    ] Checking for system updates...
[2026-10-18 23:25:37,287.287 INFO    ] 200
[2026-10-18 23:25:37,290.290 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:25:37,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:25:37,345.345 INFO    ] No update needed
[2026-10-18 23:25:37,348.348 INFO    ] Checking for camera pi updates...
[2026-10-18 23:25:37,382.382 INFO    ] 200
[2026-10-18 23:25:37,386.386 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:25:37,430.430 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:25:37,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:25:37,476.476 INFO    ] No camera update needed
[2026-10-18 23:25:37,479.479 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:25:37,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:25:37,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:25:37,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:25:39,532.532 INFO    ] ================================================
[2026-10-18 23:25:39,546.546 INFO    ] Launching Daemon at Sun Oct 18 23:25:39 IST 2026
[2026-10-18 23:25:39,557.557 INFO    ] ================================================
[2026-10-18 23:25:40,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:25:40
[2026-10-18 23:25:40,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:25:40,973.973 INFO    ] Initializing speech engine...
[2026-10-18 23:25:40,992.992 INFO    ] 2026-10-18 23:25:40
[2026-10-18 23:25:41,254.254 INFO    ] 2026-10-18 23:25:41
[2026-10-18 23:25:41,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:25:41,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:25:41,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:25:41,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:25:41,664.664 INFO    ] time= 18/10/2026 23:25:41
[2026-10-18 23:25:41,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:25:41,714.714 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:25:41,850.850 INFO    ] No existing commands found in stream
[2026-10-18 23:25:46,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:25:46,878.878 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-18 23:25:47,701.701 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:25:47,703.703 INFO    ] Checking for system updates...
[2026-10-18 23:25:47,739.739 INFO    ] 200
[2026-10-18 23:25:47,741.741 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:25:47,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:25:47,799.799 INFO    ] No update needed
[2026-10-18 23:25:47,801.801 INFO    ] Checking for camera pi updates...
[2026-10-18 23:25:47,834.834 INFO    ] 200
[2026-10-18 23:25:47,837.837 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:25:47,876.876 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:25:47,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:25:47,919.919 INFO    ] No camera update needed
[2026-10-18 23:25:47,921.921 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:25:47,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:25:47,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:25:47,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:25:49,972.972 INFO    ] ================================================
[2026-10-18 23:25:49,987.987 INFO    ] Launching Daemon at Sun Oct 18 23:25:49 IST 2026
[2026-10-18 23:25:50,998.998 INFO    ] ================================================
[2026-10-18 23:25:50,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:25:50
[2026-10-18 23:25:51,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:25:51,429.429 INFO    ] Initializing speech engine...
[2026-10-18 23:25:51,452.452 INFO    ] 2026-10-18 23:25:51
[2026-10-18 23:25:51,724.724 INFO    ] 2026-10-18 23:25:51
[2026-10-18 23:25:51,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:25:51,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:25:52,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:25:52,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:25:52,232.232 INFO    ] time= 18/10/2026 23:25:52
[2026-10-18 23:25:52,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:25:52,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:25:52,489.489 INFO    ] No existing commands found in stream
[2026-10-18 23:25:57,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:25:57,526.526 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-18 23:26:01,469.469 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:26:01,472.472 INFO    ] Checking for system updates...
[2026-10-18 23:26:01,507.507 INFO    ] 200
[2026-10-18 23:26:01,509.509 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:26:01,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:26:01,564.564 INFO    ] No update needed
[2026-10-18 23:26:01,566.566 INFO    ] Checking for camera pi updates...
[2026-10-18 23:26:01,599.599 INFO    ] 200
[2026-10-18 23:26:01,601.601 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:26:01,645.645 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:26:01,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:26:01,784.784 INFO    ] No camera update needed
[2026-10-18 23:26:01,787.787 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:26:01,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:26:01,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:26:01,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:26:03,853.853 INFO    ] ================================================
[2026-10-18 23:26:03,868.868 INFO    ] Launching Daemon at Sun Oct 18 23:26:03 IST 2026
[2026-10-18 23:26:03,879.879 INFO    ] ================================================
[2026-10-18 23:26:04,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:26:04
[2026-10-18 23:26:05,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:26:05,478.478 INFO    ] Initializing speech engine...
[2026-10-18 23:26:05,489.489 INFO    ] 2026-10-18 23:26:05
[2026-10-18 23:26:05,770.770 INFO    ] 2026-10-18 23:26:05
[2026-10-18 23:26:05,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:26:06,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:26:06,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:26:06,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:26:06,326.326 INFO    ] time= 18/10/2026 23:26:06
[2026-10-18 23:26:06,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:26:06,366.366 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:26:06,498.498 INFO    ] No existing commands found in stream
[2026-10-18 23:26:11,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:26:11,527.527 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-18 23:26:12,701.701 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:26:12,704.704 INFO    ] Checking for system updates...
[2026-10-18 23:26:12,740.740 INFO    ] 200
[2026-10-18 23:26:12,743.743 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:26:12,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:26:12,798.798 INFO    ] No update needed
[2026-10-18 23:26:12,801.801 INFO    ] Checking for camera pi updates...
[2026-10-18 23:26:12,835.835 INFO    ] 200
[2026-10-18 23:26:12,837.837 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:26:12,883.883 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:26:12,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:26:12,927.927 INFO    ] No camera update needed
[2026-10-18 23:26:12,930.930 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:26:12,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:26:12,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:26:12,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:26:14,984.984 INFO    ] ================================================
[2026-10-18 23:26:15,999.999 INFO    ] Launching Daemon at Sun Oct 18 23:26:14 IST 2026
[2026-10-18 23:26:15,011.011 INFO    ] ================================================
[2026-10-18 23:26:15,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:26:15
[2026-10-18 23:26:16,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:26:16,616.616 INFO    ] Initializing speech engine...
[2026-10-18 23:26:16,629.629 INFO    ] 2026-10-18 23:26:16
[2026-10-18 23:26:16,912.912 INFO    ] 2026-10-18 23:26:16
[2026-10-18 23:26:16,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:26:17,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:26:17,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:26:17,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:26:17,493.493 INFO    ] time= 18/10/2026 23:26:17
[2026-10-18 23:26:17,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:26:17,586.586 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:26:17,696.696 INFO    ] No existing commands found in stream
[2026-10-18 23:26:22,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:26:22,723.723 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-18 23:26:24,037.037 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:26:24,041.041 INFO    ] Checking for system updates...
[2026-10-18 23:26:24,076.076 INFO    ] 200
[2026-10-18 23:26:24,079.079 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:26:24,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:26:24,135.135 INFO    ] No update needed
[2026-10-18 23:26:24,138.138 INFO    ] Checking for camera pi updates...
[2026-10-18 23:26:24,172.172 INFO    ] 200
[2026-10-18 23:26:24,175.175 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:26:24,216.216 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:26:24,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:26:24,262.262 INFO    ] No camera update needed
[2026-10-18 23:26:24,265.265 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:26:24,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:26:24,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:26:24,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:26:26,318.318 INFO    ] ================================================
[2026-10-18 23:26:26,333.333 INFO    ] Launching Daemon at Sun Oct 18 23:26:26 IST 2026
[2026-10-18 23:26:26,345.345 INFO    ] ================================================
[2026-10-18 23:26:26,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:26:26
[2026-10-18 23:26:27,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:26:27,783.783 INFO    ] Initializing speech engine...
[2026-10-18 23:26:27,795.795 INFO    ] 2026-10-18 23:26:27
[2026-10-18 23:26:28,073.073 INFO    ] 2026-10-18 23:26:28
[2026-10-18 23:26:28,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:26:28,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:26:28,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:26:28,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:26:28,629.629 INFO    ] time= 18/10/2026 23:26:28
[2026-10-18 23:26:28,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:26:28,671.671 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:26:28,812.812 INFO    ] No existing commands found in stream
[2026-10-18 23:26:33,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:26:33,842.842 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-18 23:26:38,242.242 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:26:38,245.245 INFO    ] Checking for system updates...
[2026-10-18 23:26:38,282.282 INFO    ] 200
[2026-10-18 23:26:38,284.284 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:26:38,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:26:38,346.346 INFO    ] No update needed
[2026-10-18 23:26:38,349.349 INFO    ] Checking for camera pi updates...
[2026-10-18 23:26:38,385.385 INFO    ] 200
[2026-10-18 23:26:38,388.388 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:26:38,438.438 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:26:38,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:26:38,483.483 INFO    ] No camera update needed
[2026-10-18 23:26:38,485.485 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:26:38,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:26:38,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:26:38,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:26:40,540.540 INFO    ] ================================================
[2026-10-18 23:26:40,556.556 INFO    ] Launching Daemon at Sun Oct 18 23:26:40 IST 2026
[2026-10-18 23:26:40,567.567 INFO    ] ================================================
[2026-10-18 23:26:41,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:26:41
[2026-10-18 23:26:41,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:26:42,094.094 INFO    ] Initializing speech engine...
[2026-10-18 23:26:42,108.108 INFO    ] 2026-10-18 23:26:42
[2026-10-18 23:26:42,409.409 INFO    ] 2026-10-18 23:26:42
[2026-10-18 23:26:42,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:26:42,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:26:42,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:26:42,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:26:42,947.947 INFO    ] time= 18/10/2026 23:26:42
[2026-10-18 23:26:42,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:26:42,994.994 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:26:43,100.100 INFO    ] No existing commands found in stream
[2026-10-18 23:26:48,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:26:48,122.122 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-18 23:26:50,982.982 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:26:50,985.985 INFO    ] Checking for system updates...
[2026-10-18 23:26:51,020.020 INFO    ] 200
[2026-10-18 23:26:51,023.023 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:26:51,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:26:51,078.078 INFO    ] No update needed
[2026-10-18 23:26:51,081.081 INFO    ] Checking for camera pi updates...
[2026-10-18 23:26:51,118.118 INFO    ] 200
[2026-10-18 23:26:51,121.121 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:26:51,160.160 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:26:51,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:26:51,206.206 INFO    ] No camera update needed
[2026-10-18 23:26:51,208.208 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:26:51,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:26:51,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:26:51,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:26:53,260.260 INFO    ] ================================================
[2026-10-18 23:26:53,275.275 INFO    ] Launching Daemon at Sun Oct 18 23:26:53 IST 2026
[2026-10-18 23:26:53,286.286 INFO    ] ================================================
[2026-10-18 23:26:53,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:26:53
[2026-10-18 23:26:54,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:26:54,880.880 INFO    ] Initializing speech engine...
[2026-10-18 23:26:54,901.901 INFO    ] 2026-10-18 23:26:54
[2026-10-18 23:26:55,162.162 INFO    ] 2026-10-18 23:26:55
[2026-10-18 23:26:55,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:26:55,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:26:55,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:26:55,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:26:55,663.663 INFO    ] time= 18/10/2026 23:26:55
[2026-10-18 23:26:55,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:26:55,762.762 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:26:55,850.850 INFO    ] No existing commands found in stream
[2026-10-18 23:27:00,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:27:00,865.865 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-18 23:27:05,083.083 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:27:05,086.086 INFO    ] Checking for system updates...
[2026-10-18 23:27:05,121.121 INFO    ] 200
[2026-10-18 23:27:05,123.123 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:27:05,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:27:05,181.181 INFO    ] No update needed
[2026-10-18 23:27:05,184.184 INFO    ] Checking for camera pi updates...
[2026-10-18 23:27:05,218.218 INFO    ] 200
[2026-10-18 23:27:05,221.221 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:27:05,264.264 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:27:05,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:27:05,309.309 INFO    ] No camera update needed
[2026-10-18 23:27:05,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:27:05,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:27:05,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:27:05,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:27:07,364.364 INFO    ] ================================================
[2026-10-18 23:27:07,380.380 INFO    ] Launching Daemon at Sun Oct 18 23:27:07 IST 2026
[2026-10-18 23:27:07,391.391 INFO    ] ================================================
[2026-10-18 23:27:07,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:27:07
[2026-10-18 23:27:08,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:27:08,802.802 INFO    ] Initializing speech engine...
[2026-10-18 23:27:08,825.825 INFO    ] 2026-10-18 23:27:08
[2026-10-18 23:27:09,079.079 INFO    ] 2026-10-18 23:27:09
[2026-10-18 23:27:09,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:27:09,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:27:09,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:27:09,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:27:09,644.644 INFO    ] time= 18/10/2026 23:27:09
[2026-10-18 23:27:09,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:27:09,667.667 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:27:09,803.803 INFO    ] No existing commands found in stream
[2026-10-18 23:27:14,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:27:14,824.824 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-18 23:27:18,709.709 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:27:18,712.712 INFO    ] Checking for system updates...
[2026-10-18 23:27:18,747.747 INFO    ] 200
[2026-10-18 23:27:18,749.749 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:27:18,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:27:18,805.805 INFO    ] No update needed
[2026-10-18 23:27:18,807.807 INFO    ] Checking for camera pi updates...
[2026-10-18 23:27:18,842.842 INFO    ] 200
[2026-10-18 23:27:18,845.845 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:27:18,886.886 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:27:18,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:27:18,930.930 INFO    ] No camera update needed
[2026-10-18 23:27:18,932.932 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:27:18,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:27:18,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:27:18,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:27:20,987.987 INFO    ] ================================================
[2026-10-18 23:27:21,002.002 INFO    ] Launching Daemon at Sun Oct 18 23:27:20 IST 2026
[2026-10-18 23:27:21,013.013 INFO    ] ================================================
[2026-10-18 23:27:21,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:27:21
[2026-10-18 23:27:22,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:27:22,419.419 INFO    ] Initializing speech engine...
[2026-10-18 23:27:22,444.444 INFO    ] 2026-10-18 23:27:22
[2026-10-18 23:27:22,713.713 INFO    ] 2026-10-18 23:27:22
[2026-10-18 23:27:22,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:27:22,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:27:23,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:27:23,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:27:23,276.276 INFO    ] time= 18/10/2026 23:27:23
[2026-10-18 23:27:23,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:27:23,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:27:23,501.501 INFO    ] No existing commands found in stream
[2026-10-18 23:27:28,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:27:28,522.522 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-18 23:27:32,378.378 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:27:32,381.381 INFO    ] Checking for system updates...
[2026-10-18 23:27:32,418.418 INFO    ] 200
[2026-10-18 23:27:32,421.421 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:27:32,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:27:32,481.481 INFO    ] No update needed
[2026-10-18 23:27:32,483.483 INFO    ] Checking for camera pi updates...
[2026-10-18 23:27:32,518.518 INFO    ] 200
[2026-10-18 23:27:32,521.521 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:27:32,564.564 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:27:32,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:27:32,598.598 INFO    ] No camera update needed
[2026-10-18 23:27:32,601.601 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:27:32,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:27:32,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:27:32,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:27:34,654.654 INFO    ] ================================================
[2026-10-18 23:27:34,670.670 INFO    ] Launching Daemon at Sun Oct 18 23:27:34 IST 2026
[2026-10-18 23:27:34,680.680 INFO    ] ================================================
[2026-10-18 23:27:35,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:27:35
[2026-10-18 23:27:35,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:27:36,261.261 INFO    ] Initializing speech engine...
[2026-10-18 23:27:36,273.273 INFO    ] 2026-10-18 23:27:36
[2026-10-18 23:27:36,549.549 INFO    ] 2026-10-18 23:27:36
[2026-10-18 23:27:36,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:27:36,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:27:36,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:27:37,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:27:37,079.079 INFO    ] time= 18/10/2026 23:27:37
[2026-10-18 23:27:37,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:27:37,110.110 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:27:37,233.233 INFO    ] No existing commands found in stream
[2026-10-18 23:27:42,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:27:42,260.260 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-18 23:27:45,204.204 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:27:45,207.207 INFO    ] Checking for system updates...
[2026-10-18 23:27:45,242.242 INFO    ] 200
[2026-10-18 23:27:45,244.244 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:27:45,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:27:45,300.300 INFO    ] No update needed
[2026-10-18 23:27:45,302.302 INFO    ] Checking for camera pi updates...
[2026-10-18 23:27:45,335.335 INFO    ] 200
[2026-10-18 23:27:45,337.337 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:27:45,377.377 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:27:45,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:27:45,420.420 INFO    ] No camera update needed
[2026-10-18 23:27:45,422.422 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:27:45,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:27:45,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:27:45,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:27:47,475.475 INFO    ] ================================================
[2026-10-18 23:27:47,490.490 INFO    ] Launching Daemon at Sun Oct 18 23:27:47 IST 2026
[2026-10-18 23:27:47,501.501 INFO    ] ================================================
[2026-10-18 23:27:48,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:27:48
[2026-10-18 23:27:48,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:27:48,933.933 INFO    ] Initializing speech engine...
[2026-10-18 23:27:48,957.957 INFO    ] 2026-10-18 23:27:48
[2026-10-18 23:27:49,222.222 INFO    ] 2026-10-18 23:27:49
[2026-10-18 23:27:49,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:27:49,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:27:49,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:27:49,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:27:49,730.730 INFO    ] time= 18/10/2026 23:27:49
[2026-10-18 23:27:49,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:27:49,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:27:49,962.962 INFO    ] No existing commands found in stream
[2026-10-18 23:27:54,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:27:54,995.995 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-18 23:27:56,176.176 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:27:56,179.179 INFO    ] Checking for system updates...
[2026-10-18 23:27:56,216.216 INFO    ] 200
[2026-10-18 23:27:56,219.219 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:27:56,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:27:56,293.293 INFO    ] No update needed
[2026-10-18 23:27:56,295.295 INFO    ] Checking for camera pi updates...
[2026-10-18 23:27:56,332.332 INFO    ] 200
[2026-10-18 23:27:56,335.335 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:27:56,374.374 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:27:56,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:27:56,420.420 INFO    ] No camera update needed
[2026-10-18 23:27:56,422.422 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:27:56,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:27:56,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:27:56,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:27:58,473.473 INFO    ] ================================================
[2026-10-18 23:27:58,488.488 INFO    ] Launching Daemon at Sun Oct 18 23:27:58 IST 2026
[2026-10-18 23:27:58,499.499 INFO    ] ================================================
[2026-10-18 23:27:59,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:27:59
[2026-10-18 23:27:59,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:27:59,924.924 INFO    ] Initializing speech engine...
[2026-10-18 23:27:59,934.934 INFO    ] 2026-10-18 23:27:59
[2026-10-18 23:28:00,183.183 INFO    ] 2026-10-18 23:28:00
[2026-10-18 23:28:00,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:28:00,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:28:00,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:28:00,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:28:00,692.692 INFO    ] time= 18/10/2026 23:28:00
[2026-10-18 23:28:00,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:28:00,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:28:00,903.903 INFO    ] No existing commands found in stream
[2026-10-18 23:28:05,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:28:05,924.924 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-18 23:28:07,491.491 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:28:07,493.493 INFO    ] Checking for system updates...
[2026-10-18 23:28:07,529.529 INFO    ] 200
[2026-10-18 23:28:07,531.531 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:28:07,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:28:07,588.588 INFO    ] No update needed
[2026-10-18 23:28:07,590.590 INFO    ] Checking for camera pi updates...
[2026-10-18 23:28:07,623.623 INFO    ] 200
[2026-10-18 23:28:07,626.626 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:28:07,665.665 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:28:07,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:28:07,807.807 INFO    ] No camera update needed
[2026-10-18 23:28:07,809.809 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:28:07,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:28:07,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:28:07,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:28:09,860.860 INFO    ] ================================================
[2026-10-18 23:28:09,876.876 INFO    ] Launching Daemon at Sun Oct 18 23:28:09 IST 2026
[2026-10-18 23:28:09,886.886 INFO    ] ================================================
[2026-10-18 23:28:10,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:28:10
[2026-10-18 23:28:11,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:28:11,341.341 INFO    ] Initializing speech engine...
[2026-10-18 23:28:11,353.353 INFO    ] 2026-10-18 23:28:11
[2026-10-18 23:28:11,613.613 INFO    ] 2026-10-18 23:28:11
[2026-10-18 23:28:11,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:28:11,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:28:11,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:28:12,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:28:12,154.154 INFO    ] time= 18/10/2026 23:28:12
[2026-10-18 23:28:12,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:28:12,181.181 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:28:12,331.331 INFO    ] No existing commands found in stream
[2026-10-18 23:28:17,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:28:17,359.359 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-18 23:28:21,052.052 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:28:21,054.054 INFO    ] Checking for system updates...
[2026-10-18 23:28:21,091.091 INFO    ] 200
[2026-10-18 23:28:21,094.094 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:28:21,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:28:21,147.147 INFO    ] No update needed
[2026-10-18 23:28:21,150.150 INFO    ] Checking for camera pi updates...
[2026-10-18 23:28:21,185.185 INFO    ] 200
[2026-10-18 23:28:21,187.187 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:28:21,231.231 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:28:21,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:28:21,276.276 INFO    ] No camera update needed
[2026-10-18 23:28:21,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:28:21,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:28:21,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:28:21,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:28:23,332.332 INFO    ] ================================================
[2026-10-18 23:28:23,347.347 INFO    ] Launching Daemon at Sun Oct 18 23:28:23 IST 2026
[2026-10-18 23:28:23,359.359 INFO    ] ================================================
[2026-10-18 23:28:23,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:28:23
[2026-10-18 23:28:24,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:28:24,830.830 INFO    ] Initializing speech engine...
[2026-10-18 23:28:24,836.836 INFO    ] 2026-10-18 23:28:24
[2026-10-18 23:28:25,102.102 INFO    ] 2026-10-18 23:28:25
[2026-10-18 23:28:25,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:28:25,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:28:25,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:28:25,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:28:25,644.644 INFO    ] time= 18/10/2026 23:28:25
[2026-10-18 23:28:25,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:28:25,668.668 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:28:25,812.812 INFO    ] No existing commands found in stream
[2026-10-18 23:28:30,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:28:30,847.847 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-18 23:28:33,721.721 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:28:33,724.724 INFO    ] Checking for system updates...
[2026-10-18 23:28:33,759.759 INFO    ] 200
[2026-10-18 23:28:33,762.762 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:28:33,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:28:33,816.816 INFO    ] No update needed
[2026-10-18 23:28:33,819.819 INFO    ] Checking for camera pi updates...
[2026-10-18 23:28:33,851.851 INFO    ] 200
[2026-10-18 23:28:33,854.854 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:28:33,894.894 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:28:33,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:28:33,936.936 INFO    ] No camera update needed
[2026-10-18 23:28:33,939.939 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:28:33,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:28:33,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:28:33,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:28:35,990.990 INFO    ] ================================================
[2026-10-18 23:28:36,006.006 INFO    ] Launching Daemon at Sun Oct 18 23:28:36 IST 2026
[2026-10-18 23:28:36,016.016 INFO    ] ================================================
[2026-10-18 23:28:36,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:28:36
[2026-10-18 23:28:37,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:28:37,436.436 INFO    ] Initializing speech engine...
[2026-10-18 23:28:37,445.445 INFO    ] 2026-10-18 23:28:37
[2026-10-18 23:28:37,697.697 INFO    ] 2026-10-18 23:28:37
[2026-10-18 23:28:37,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:28:37,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:28:37,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:28:38,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:28:38,116.116 INFO    ] time= 18/10/2026 23:28:38
[2026-10-18 23:28:38,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:28:38,144.144 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:28:38,283.283 INFO    ] No existing commands found in stream
[2026-10-18 23:28:43,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:28:43,311.311 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-18 23:28:46,616.616 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:28:46,619.619 INFO    ] Checking for system updates...
[2026-10-18 23:28:46,655.655 INFO    ] 200
[2026-10-18 23:28:46,658.658 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:28:46,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:28:46,712.712 INFO    ] No update needed
[2026-10-18 23:28:46,715.715 INFO    ] Checking for camera pi updates...
[2026-10-18 23:28:46,747.747 INFO    ] 200
[2026-10-18 23:28:46,750.750 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:28:46,790.790 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:28:46,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:28:46,832.832 INFO    ] No camera update needed
[2026-10-18 23:28:46,834.834 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:28:46,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:28:46,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:28:46,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:28:48,886.886 INFO    ] ================================================
[2026-10-18 23:28:48,901.901 INFO    ] Launching Daemon at Sun Oct 18 23:28:48 IST 2026
[2026-10-18 23:28:48,912.912 INFO    ] ================================================
[2026-10-18 23:28:49,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:28:49
[2026-10-18 23:28:50,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:28:50,357.357 INFO    ] Initializing speech engine...
[2026-10-18 23:28:50,378.378 INFO    ] 2026-10-18 23:28:50
[2026-10-18 23:28:50,654.654 INFO    ] 2026-10-18 23:28:50
[2026-10-18 23:28:50,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:28:50,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:28:50,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:28:51,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:28:51,148.148 INFO    ] time= 18/10/2026 23:28:51
[2026-10-18 23:28:51,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:28:51,227.227 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:28:51,347.347 INFO    ] No existing commands found in stream
[2026-10-18 23:28:56,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:28:56,363.363 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-18 23:28:57,123.123 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:28:57,126.126 INFO    ] Checking for system updates...
[2026-10-18 23:28:57,161.161 INFO    ] 200
[2026-10-18 23:28:57,164.164 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:28:57,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:28:57,218.218 INFO    ] No update needed
[2026-10-18 23:28:57,221.221 INFO    ] Checking for camera pi updates...
[2026-10-18 23:28:57,254.254 INFO    ] 200
[2026-10-18 23:28:57,256.256 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:28:57,296.296 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:28:57,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:28:57,343.343 INFO    ] No camera update needed
[2026-10-18 23:28:57,345.345 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:28:57,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:28:57,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:28:57,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:28:59,396.396 INFO    ] ================================================
[2026-10-18 23:28:59,412.412 INFO    ] Launching Daemon at Sun Oct 18 23:28:59 IST 2026
[2026-10-18 23:28:59,423.423 INFO    ] ================================================
[2026-10-18 23:29:00,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:29:00
[2026-10-18 23:29:00,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:29:00,872.872 INFO    ] Initializing speech engine...
[2026-10-18 23:29:00,879.879 INFO    ] 2026-10-18 23:29:00
[2026-10-18 23:29:01,128.128 INFO    ] 2026-10-18 23:29:01
[2026-10-18 23:29:01,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:29:01,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:29:01,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:29:01,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:29:01,630.630 INFO    ] time= 18/10/2026 23:29:01
[2026-10-18 23:29:01,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:29:01,702.702 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:29:01,824.824 INFO    ] No existing commands found in stream
[2026-10-18 23:29:06,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:29:06,839.839 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-18 23:29:10,976.976 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:29:10,979.979 INFO    ] Checking for system updates...
[2026-10-18 23:29:11,016.016 INFO    ] 200
[2026-10-18 23:29:11,019.019 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:29:11,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:29:11,083.083 INFO    ] No update needed
[2026-10-18 23:29:11,085.085 INFO    ] Checking for camera pi updates...
[2026-10-18 23:29:11,120.120 INFO    ] 200
[2026-10-18 23:29:11,123.123 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:29:11,168.168 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:29:11,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:29:11,213.213 INFO    ] No camera update needed
[2026-10-18 23:29:11,216.216 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:29:11,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:29:11,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:29:11,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:29:13,272.272 INFO    ] ================================================
[2026-10-18 23:29:13,287.287 INFO    ] Launching Daemon at Sun Oct 18 23:29:13 IST 2026
[2026-10-18 23:29:13,298.298 INFO    ] ================================================
[2026-10-18 23:29:13,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:29:13
[2026-10-18 23:29:14,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:29:14,740.740 INFO    ] Initializing speech engine...
[2026-10-18 23:29:14,755.755 INFO    ] 2026-10-18 23:29:14
[2026-10-18 23:29:15,042.042 INFO    ] 2026-10-18 23:29:15
[2026-10-18 23:29:15,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:29:15,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:29:15,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:29:15,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:29:15,468.468 INFO    ] time= 18/10/2026 23:29:15
[2026-10-18 23:29:15,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:29:15,503.503 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:29:15,640.640 INFO    ] No existing commands found in stream
[2026-10-18 23:29:20,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:29:20,679.679 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-18 23:29:22,882.882 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:29:22,885.885 INFO    ] Checking for system updates...
[2026-10-18 23:29:22,921.921 INFO    ] 200
[2026-10-18 23:29:22,923.923 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:29:22,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:29:22,977.977 INFO    ] No update needed
[2026-10-18 23:29:22,979.979 INFO    ] Checking for camera pi updates...
[2026-10-18 23:29:23,011.011 INFO    ] 200
[2026-10-18 23:29:23,014.014 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:29:23,053.053 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:29:23,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:29:23,096.096 INFO    ] No camera update needed
[2026-10-18 23:29:23,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:29:23,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:29:23,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:29:23,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:29:25,150.150 INFO    ] ================================================
[2026-10-18 23:29:25,165.165 INFO    ] Launching Daemon at Sun Oct 18 23:29:25 IST 2026
[2026-10-18 23:29:25,175.175 INFO    ] ================================================
[2026-10-18 23:29:25,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:29:25
[2026-10-18 23:29:26,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:29:26,815.815 INFO    ] Initializing speech engine...
[2026-10-18 23:29:26,823.823 INFO    ] 2026-10-18 23:29:26
[2026-10-18 23:29:27,096.096 INFO    ] 2026-10-18 23:29:27
[2026-10-18 23:29:27,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:29:27,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:29:27,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:29:27,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:29:27,643.643 INFO    ] time= 18/10/2026 23:29:27
[2026-10-18 23:29:27,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:29:27,670.670 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:29:27,816.816 INFO    ] No existing commands found in stream
[2026-10-18 23:29:32,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:29:32,845.845 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-18 23:29:37,114.114 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:29:37,117.117 INFO    ] Checking for system updates...
[2026-10-18 23:29:37,154.154 INFO    ] 200
[2026-10-18 23:29:37,163.163 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:29:37,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:29:37,220.220 INFO    ] No update needed
[2026-10-18 23:29:37,223.223 INFO    ] Checking for camera pi updates...
[2026-10-18 23:29:37,256.256 INFO    ] 200
[2026-10-18 23:29:37,259.259 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:29:37,298.298 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:29:37,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:29:37,344.344 INFO    ] No camera update needed
[2026-10-18 23:29:37,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:29:37,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:29:37,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:29:37,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:29:39,397.397 INFO    ] ================================================
[2026-10-18 23:29:39,412.412 INFO    ] Launching Daemon at Sun Oct 18 23:29:39 IST 2026
[2026-10-18 23:29:39,423.423 INFO    ] ================================================
[2026-10-18 23:29:40,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:29:40
[2026-10-18 23:29:40,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:29:40,976.976 INFO    ] Initializing speech engine...
[2026-10-18 23:29:40,983.983 INFO    ] 2026-10-18 23:29:40
[2026-10-18 23:29:41,287.287 INFO    ] 2026-10-18 23:29:41
[2026-10-18 23:29:41,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:29:41,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:29:41,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:29:41,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:29:41,722.722 INFO    ] time= 18/10/2026 23:29:41
[2026-10-18 23:29:41,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:29:41,732.732 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:29:41,811.811 INFO    ] No existing commands found in stream
[2026-10-18 23:29:46,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:29:46,849.849 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-18 23:29:49,585.585 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:29:49,588.588 INFO    ] Checking for system updates...
[2026-10-18 23:29:49,628.628 INFO    ] 200
[2026-10-18 23:29:49,631.631 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:29:49,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:29:49,685.685 INFO    ] No update needed
[2026-10-18 23:29:49,687.687 INFO    ] Checking for camera pi updates...
[2026-10-18 23:29:49,720.720 INFO    ] 200
[2026-10-18 23:29:49,722.722 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:29:49,763.763 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:29:49,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:29:49,806.806 INFO    ] No camera update needed
[2026-10-18 23:29:49,808.808 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:29:49,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:29:49,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:29:49,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:29:51,859.859 INFO    ] ================================================
[2026-10-18 23:29:51,874.874 INFO    ] Launching Daemon at Sun Oct 18 23:29:51 IST 2026
[2026-10-18 23:29:51,884.884 INFO    ] ================================================
[2026-10-18 23:29:52,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:29:52
[2026-10-18 23:29:53,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:29:53,558.558 INFO    ] Initializing speech engine...
[2026-10-18 23:29:53,565.565 INFO    ] 2026-10-18 23:29:53
[2026-10-18 23:29:53,846.846 INFO    ] 2026-10-18 23:29:53
[2026-10-18 23:29:53,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:29:54,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:29:54,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:29:54,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:29:54,304.304 INFO    ] time= 18/10/2026 23:29:54
[2026-10-18 23:29:54,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:29:54,423.423 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:29:54,553.553 INFO    ] No existing commands found in stream
[2026-10-18 23:29:59,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:29:59,582.582 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-18 23:30:02,193.193 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:30:02,197.197 INFO    ] Checking for system updates...
[2026-10-18 23:30:02,473.473 INFO    ] 200
[2026-10-18 23:30:02,476.476 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:30:02,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:30:02,621.621 INFO    ] No update needed
[2026-10-18 23:30:02,624.624 INFO    ] Checking for camera pi updates...
[2026-10-18 23:30:02,738.738 INFO    ] 200
[2026-10-18 23:30:02,741.741 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:30:02,867.867 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:30:02,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:30:02,912.912 INFO    ] No camera update needed
[2026-10-18 23:30:02,915.915 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:30:02,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:30:02,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:30:02,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:30:04,977.977 INFO    ] ================================================
[2026-10-18 23:30:04,992.992 INFO    ] Launching Daemon at Sun Oct 18 23:30:04 IST 2026
[2026-10-18 23:30:05,003.003 INFO    ] ================================================
[2026-10-18 23:30:05,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:30:05
[2026-10-18 23:30:06,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:30:06,423.423 INFO    ] Initializing speech engine...
[2026-10-18 23:30:06,432.432 INFO    ] 2026-10-18 23:30:06
[2026-10-18 23:30:06,724.724 INFO    ] 2026-10-18 23:30:06
[2026-10-18 23:30:06,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:30:06,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:30:07,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:30:07,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:30:07,296.296 INFO    ] time= 18/10/2026 23:30:07
[2026-10-18 23:30:07,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:30:07,357.357 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:30:07,515.515 INFO    ] No existing commands found in stream
[2026-10-18 23:30:12,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:30:12,540.540 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-18 23:30:15,524.524 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:30:15,526.526 INFO    ] Checking for system updates...
[2026-10-18 23:30:15,565.565 INFO    ] 200
[2026-10-18 23:30:15,568.568 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:30:15,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:30:15,627.627 INFO    ] No update needed
[2026-10-18 23:30:15,629.629 INFO    ] Checking for camera pi updates...
[2026-10-18 23:30:15,667.667 INFO    ] 200
[2026-10-18 23:30:15,669.669 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:30:15,710.710 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:30:15,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:30:15,851.851 INFO    ] No camera update needed
[2026-10-18 23:30:15,853.853 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:30:15,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:30:15,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:30:15,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:30:17,906.906 INFO    ] ================================================
[2026-10-18 23:30:17,922.922 INFO    ] Launching Daemon at Sun Oct 18 23:30:17 IST 2026
[2026-10-18 23:30:17,933.933 INFO    ] ================================================
[2026-10-18 23:30:18,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:30:18
[2026-10-18 23:30:19,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:30:19,358.358 INFO    ] Initializing speech engine...
[2026-10-18 23:30:19,378.378 INFO    ] 2026-10-18 23:30:19
[2026-10-18 23:30:19,637.637 INFO    ] 2026-10-18 23:30:19
[2026-10-18 23:30:19,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:30:19,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:30:19,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:30:20,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:30:20,022.022 INFO    ] time= 18/10/2026 23:30:20
[2026-10-18 23:30:20,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:30:20,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:30:20,208.208 INFO    ] No existing commands found in stream
[2026-10-18 23:30:25,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:30:25,236.236 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-18 23:30:27,543.543 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:30:27,545.545 INFO    ] Checking for system updates...
[2026-10-18 23:30:27,581.581 INFO    ] 200
[2026-10-18 23:30:27,584.584 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:30:27,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:30:27,637.637 INFO    ] No update needed
[2026-10-18 23:30:27,640.640 INFO    ] Checking for camera pi updates...
[2026-10-18 23:30:27,673.673 INFO    ] 200
[2026-10-18 23:30:27,676.676 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:30:27,715.715 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:30:27,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:30:27,759.759 INFO    ] No camera update needed
[2026-10-18 23:30:27,761.761 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:30:27,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:30:27,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:30:27,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:30:29,814.814 INFO    ] ================================================
[2026-10-18 23:30:29,830.830 INFO    ] Launching Daemon at Sun Oct 18 23:30:29 IST 2026
[2026-10-18 23:30:29,840.840 INFO    ] ================================================
[2026-10-18 23:30:30,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:30:30
[2026-10-18 23:30:31,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:30:31,465.465 INFO    ] Initializing speech engine...
[2026-10-18 23:30:31,485.485 INFO    ] 2026-10-18 23:30:31
[2026-10-18 23:30:31,756.756 INFO    ] 2026-10-18 23:30:31
[2026-10-18 23:30:31,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:30:32,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:30:32,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:30:32,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:30:32,293.293 INFO    ] time= 18/10/2026 23:30:32
[2026-10-18 23:30:32,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:30:32,351.351 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:30:32,496.496 INFO    ] No existing commands found in stream
[2026-10-18 23:30:37,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:30:37,522.522 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-18 23:30:38,768.768 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:30:38,771.771 INFO    ] Checking for system updates...
[2026-10-18 23:30:38,808.808 INFO    ] 200
[2026-10-18 23:30:38,811.811 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:30:38,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:30:38,866.866 INFO    ] No update needed
[2026-10-18 23:30:38,868.868 INFO    ] Checking for camera pi updates...
[2026-10-18 23:30:38,905.905 INFO    ] 200
[2026-10-18 23:30:38,908.908 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:30:38,954.954 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:30:38,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:30:38,999.999 INFO    ] No camera update needed
[2026-10-18 23:30:39,002.002 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:30:39,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:30:39,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:30:39,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:30:41,057.057 INFO    ] ================================================
[2026-10-18 23:30:41,073.073 INFO    ] Launching Daemon at Sun Oct 18 23:30:41 IST 2026
[2026-10-18 23:30:41,084.084 INFO    ] ================================================
[2026-10-18 23:30:41,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:30:41
[2026-10-18 23:30:42,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:30:42,474.474 INFO    ] Initializing speech engine...
[2026-10-18 23:30:42,482.482 INFO    ] 2026-10-18 23:30:42
[2026-10-18 23:30:42,755.755 INFO    ] 2026-10-18 23:30:42
[2026-10-18 23:30:42,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:30:42,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:30:43,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:30:43,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:30:43,265.265 INFO    ] time= 18/10/2026 23:30:43
[2026-10-18 23:30:43,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:30:43,341.341 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:30:43,483.483 INFO    ] No existing commands found in stream
[2026-10-18 23:30:48,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:30:48,507.507 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-18 23:30:51,106.106 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:30:51,109.109 INFO    ] Checking for system updates...
[2026-10-18 23:30:51,144.144 INFO    ] 200
[2026-10-18 23:30:51,146.146 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:30:51,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:30:51,200.200 INFO    ] No update needed
[2026-10-18 23:30:51,202.202 INFO    ] Checking for camera pi updates...
[2026-10-18 23:30:51,239.239 INFO    ] 200
[2026-10-18 23:30:51,241.241 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:30:51,280.280 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:30:51,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:30:51,326.326 INFO    ] No camera update needed
[2026-10-18 23:30:51,328.328 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:30:51,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:30:51,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:30:51,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:30:53,383.383 INFO    ] ================================================
[2026-10-18 23:30:53,399.399 INFO    ] Launching Daemon at Sun Oct 18 23:30:53 IST 2026
[2026-10-18 23:30:53,410.410 INFO    ] ================================================
[2026-10-18 23:30:53,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:30:53
[2026-10-18 23:30:54,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:30:54,827.827 INFO    ] Initializing speech engine...
[2026-10-18 23:30:54,840.840 INFO    ] 2026-10-18 23:30:54
[2026-10-18 23:30:55,107.107 INFO    ] 2026-10-18 23:30:55
[2026-10-18 23:30:55,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:30:55,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:30:55,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:30:55,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:30:55,664.664 INFO    ] time= 18/10/2026 23:30:55
[2026-10-18 23:30:55,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:30:55,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:30:55,818.818 INFO    ] No existing commands found in stream
[2026-10-18 23:31:00,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:31:00,846.846 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-18 23:31:01,375.375 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:31:01,378.378 INFO    ] Checking for system updates...
[2026-10-18 23:31:01,423.423 INFO    ] 200
[2026-10-18 23:31:01,427.427 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:31:01,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:31:01,543.543 INFO    ] No update needed
[2026-10-18 23:31:01,547.547 INFO    ] Checking for camera pi updates...
[2026-10-18 23:31:01,611.611 INFO    ] 200
[2026-10-18 23:31:01,615.615 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:31:01,679.679 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:31:01,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:31:01,723.723 INFO    ] No camera update needed
[2026-10-18 23:31:01,726.726 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:31:01,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:31:01,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:31:01,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:31:03,785.785 INFO    ] ================================================
[2026-10-18 23:31:03,800.800 INFO    ] Launching Daemon at Sun Oct 18 23:31:03 IST 2026
[2026-10-18 23:31:03,811.811 INFO    ] ================================================
[2026-10-18 23:31:04,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:31:04
[2026-10-18 23:31:05,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:31:05,312.312 INFO    ] Initializing speech engine...
[2026-10-18 23:31:05,321.321 INFO    ] 2026-10-18 23:31:05
[2026-10-18 23:31:05,575.575 INFO    ] 2026-10-18 23:31:05
[2026-10-18 23:31:05,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:31:05,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:31:05,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:31:06,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:31:06,083.083 INFO    ] time= 18/10/2026 23:31:06
[2026-10-18 23:31:06,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:31:06,197.197 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:31:06,329.329 INFO    ] No existing commands found in stream
[2026-10-18 23:31:11,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:31:11,349.349 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-18 23:31:13,094.094 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:31:13,097.097 INFO    ] Checking for system updates...
[2026-10-18 23:31:13,132.132 INFO    ] 200
[2026-10-18 23:31:13,134.134 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:31:13,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:31:13,189.189 INFO    ] No update needed
[2026-10-18 23:31:13,191.191 INFO    ] Checking for camera pi updates...
[2026-10-18 23:31:13,224.224 INFO    ] 200
[2026-10-18 23:31:13,227.227 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:31:13,269.269 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:31:13,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:31:13,314.314 INFO    ] No camera update needed
[2026-10-18 23:31:13,316.316 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:31:13,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:31:13,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:31:13,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:31:15,367.367 INFO    ] ================================================
[2026-10-18 23:31:15,383.383 INFO    ] Launching Daemon at Sun Oct 18 23:31:15 IST 2026
[2026-10-18 23:31:15,394.394 INFO    ] ================================================
[2026-10-18 23:31:15,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:31:15
[2026-10-18 23:31:16,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:31:16,846.846 INFO    ] Initializing speech engine...
[2026-10-18 23:31:16,853.853 INFO    ] 2026-10-18 23:31:16
[2026-10-18 23:31:17,115.115 INFO    ] 2026-10-18 23:31:17
[2026-10-18 23:31:17,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:31:17,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:31:17,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:31:17,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:31:17,657.657 INFO    ] time= 18/10/2026 23:31:17
[2026-10-18 23:31:17,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:31:17,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:31:17,813.813 INFO    ] No existing commands found in stream
[2026-10-18 23:31:22,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:31:22,830.830 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-18 23:31:27,827.827 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:31:27,830.830 INFO    ] Checking for system updates...
[2026-10-18 23:31:27,866.866 INFO    ] 200
[2026-10-18 23:31:27,868.868 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:31:27,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:31:27,929.929 INFO    ] No update needed
[2026-10-18 23:31:27,932.932 INFO    ] Checking for camera pi updates...
[2026-10-18 23:31:27,967.967 INFO    ] 200
[2026-10-18 23:31:27,970.970 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:31:28,011.011 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:31:28,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:31:28,055.055 INFO    ] No camera update needed
[2026-10-18 23:31:28,058.058 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:31:28,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:31:28,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:31:28,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:31:30,115.115 INFO    ] ================================================
[2026-10-18 23:31:30,131.131 INFO    ] Launching Daemon at Sun Oct 18 23:31:30 IST 2026
[2026-10-18 23:31:30,142.142 INFO    ] ================================================
[2026-10-18 23:31:30,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:31:30
[2026-10-18 23:31:31,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:31:31,671.671 INFO    ] Initializing speech engine...
[2026-10-18 23:31:31,680.680 INFO    ] 2026-10-18 23:31:31
[2026-10-18 23:31:31,961.961 INFO    ] 2026-10-18 23:31:31
[2026-10-18 23:31:31,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:31:32,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:31:32,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:31:32,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:31:32,386.386 INFO    ] time= 18/10/2026 23:31:32
[2026-10-18 23:31:32,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:31:32,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:31:32,587.587 INFO    ] No existing commands found in stream
[2026-10-18 23:31:37,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:31:37,605.605 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-18 23:31:38,713.713 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:31:38,716.716 INFO    ] Checking for system updates...
[2026-10-18 23:31:38,752.752 INFO    ] 200
[2026-10-18 23:31:38,754.754 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:31:38,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:31:38,807.807 INFO    ] No update needed
[2026-10-18 23:31:38,809.809 INFO    ] Checking for camera pi updates...
[2026-10-18 23:31:38,842.842 INFO    ] 200
[2026-10-18 23:31:38,844.844 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:31:38,889.889 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:31:38,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:31:38,932.932 INFO    ] No camera update needed
[2026-10-18 23:31:38,934.934 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:31:38,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:31:38,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:31:38,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:31:40,987.987 INFO    ] ================================================
[2026-10-18 23:31:41,003.003 INFO    ] Launching Daemon at Sun Oct 18 23:31:40 IST 2026
[2026-10-18 23:31:41,014.014 INFO    ] ================================================
[2026-10-18 23:31:41,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:31:41
[2026-10-18 23:31:42,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:31:42,487.487 INFO    ] Initializing speech engine...
[2026-10-18 23:31:42,500.500 INFO    ] 2026-10-18 23:31:42
[2026-10-18 23:31:42,769.769 INFO    ] 2026-10-18 23:31:42
[2026-10-18 23:31:42,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:31:43,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:31:43,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:31:43,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:31:43,327.327 INFO    ] time= 18/10/2026 23:31:43
[2026-10-18 23:31:43,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:31:43,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:31:43,496.496 INFO    ] No existing commands found in stream
[2026-10-18 23:31:48,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:31:48,530.530 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-18 23:31:52,618.618 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:31:52,621.621 INFO    ] Checking for system updates...
[2026-10-18 23:31:52,659.659 INFO    ] 200
[2026-10-18 23:31:52,662.662 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:31:52,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:31:52,716.716 INFO    ] No update needed
[2026-10-18 23:31:52,718.718 INFO    ] Checking for camera pi updates...
[2026-10-18 23:31:52,752.752 INFO    ] 200
[2026-10-18 23:31:52,754.754 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:31:52,798.798 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:31:52,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:31:52,841.841 INFO    ] No camera update needed
[2026-10-18 23:31:52,844.844 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:31:52,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:31:52,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:31:52,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:31:54,897.897 INFO    ] ================================================
[2026-10-18 23:31:54,912.912 INFO    ] Launching Daemon at Sun Oct 18 23:31:54 IST 2026
[2026-10-18 23:31:54,924.924 INFO    ] ================================================
[2026-10-18 23:31:55,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:31:55
[2026-10-18 23:31:56,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:31:56,371.371 INFO    ] Initializing speech engine...
[2026-10-18 23:31:56,377.377 INFO    ] 2026-10-18 23:31:56
[2026-10-18 23:31:56,638.638 INFO    ] 2026-10-18 23:31:56
[2026-10-18 23:31:56,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:31:56,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:31:56,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:31:57,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:31:57,182.182 INFO    ] time= 18/10/2026 23:31:57
[2026-10-18 23:31:57,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:31:57,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:31:57,349.349 INFO    ] No existing commands found in stream
[2026-10-18 23:32:02,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:32:02,364.364 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-18 23:32:05,235.235 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:32:05,237.237 INFO    ] Checking for system updates...
[2026-10-18 23:32:05,276.276 INFO    ] 200
[2026-10-18 23:32:05,279.279 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:32:05,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:32:05,338.338 INFO    ] No update needed
[2026-10-18 23:32:05,341.341 INFO    ] Checking for camera pi updates...
[2026-10-18 23:32:05,375.375 INFO    ] 200
[2026-10-18 23:32:05,377.377 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:32:05,421.421 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:32:05,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:32:05,474.474 INFO    ] No camera update needed
[2026-10-18 23:32:05,476.476 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:32:05,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:32:05,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:32:05,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:32:07,533.533 INFO    ] ================================================
[2026-10-18 23:32:07,549.549 INFO    ] Launching Daemon at Sun Oct 18 23:32:07 IST 2026
[2026-10-18 23:32:07,560.560 INFO    ] ================================================
[2026-10-18 23:32:08,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:32:08
[2026-10-18 23:32:08,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:32:09,032.032 INFO    ] Initializing speech engine...
[2026-10-18 23:32:09,042.042 INFO    ] 2026-10-18 23:32:09
[2026-10-18 23:32:09,309.309 INFO    ] 2026-10-18 23:32:09
[2026-10-18 23:32:09,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:32:09,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:32:09,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:32:09,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:32:09,799.799 INFO    ] time= 18/10/2026 23:32:09
[2026-10-18 23:32:09,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:32:09,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:32:09,997.997 INFO    ] No existing commands found in stream
[2026-10-18 23:32:15,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:32:15,012.012 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-18 23:32:19,104.104 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:32:19,107.107 INFO    ] Checking for system updates...
[2026-10-18 23:32:19,142.142 INFO    ] 200
[2026-10-18 23:32:19,144.144 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:32:19,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:32:19,199.199 INFO    ] No update needed
[2026-10-18 23:32:19,202.202 INFO    ] Checking for camera pi updates...
[2026-10-18 23:32:19,238.238 INFO    ] 200
[2026-10-18 23:32:19,241.241 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:32:19,285.285 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:32:19,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:32:19,426.426 INFO    ] No camera update needed
[2026-10-18 23:32:19,429.429 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:32:19,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:32:19,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:32:19,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:32:21,482.482 INFO    ] ================================================
[2026-10-18 23:32:21,498.498 INFO    ] Launching Daemon at Sun Oct 18 23:32:21 IST 2026
[2026-10-18 23:32:21,509.509 INFO    ] ================================================
[2026-10-18 23:32:22,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:32:22
[2026-10-18 23:32:22,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:32:22,957.957 INFO    ] Initializing speech engine...
[2026-10-18 23:32:22,963.963 INFO    ] 2026-10-18 23:32:22
[2026-10-18 23:32:23,260.260 INFO    ] 2026-10-18 23:32:23
[2026-10-18 23:32:23,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:32:23,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:32:23,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:32:23,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:32:23,762.762 INFO    ] time= 18/10/2026 23:32:23
[2026-10-18 23:32:23,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:32:23,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:32:23,963.963 INFO    ] No existing commands found in stream
[2026-10-18 23:32:28,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:32:28,975.975 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-18 23:32:29,493.493 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:32:29,495.495 INFO    ] Checking for system updates...
[2026-10-18 23:32:29,534.534 INFO    ] 200
[2026-10-18 23:32:29,537.537 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:32:29,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:32:29,598.598 INFO    ] No update needed
[2026-10-18 23:32:29,600.600 INFO    ] Checking for camera pi updates...
[2026-10-18 23:32:29,637.637 INFO    ] 200
[2026-10-18 23:32:29,639.639 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:32:29,687.687 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:32:29,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:32:29,735.735 INFO    ] No camera update needed
[2026-10-18 23:32:29,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:32:29,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:32:29,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:32:29,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:32:31,793.793 INFO    ] ================================================
[2026-10-18 23:32:31,809.809 INFO    ] Launching Daemon at Sun Oct 18 23:32:31 IST 2026
[2026-10-18 23:32:31,822.822 INFO    ] ================================================
[2026-10-18 23:32:32,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:32:32
[2026-10-18 23:32:33,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:32:33,354.354 INFO    ] Initializing speech engine...
[2026-10-18 23:32:33,364.364 INFO    ] 2026-10-18 23:32:33
[2026-10-18 23:32:33,626.626 INFO    ] 2026-10-18 23:32:33
[2026-10-18 23:32:33,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:32:33,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:32:33,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:32:34,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:32:34,118.118 INFO    ] time= 18/10/2026 23:32:34
[2026-10-18 23:32:34,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:32:34,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:32:34,313.313 INFO    ] No existing commands found in stream
[2026-10-18 23:32:39,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:32:39,345.345 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-18 23:32:42,050.050 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:32:42,052.052 INFO    ] Checking for system updates...
[2026-10-18 23:32:42,090.090 INFO    ] 200
[2026-10-18 23:32:42,092.092 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:32:42,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:32:42,146.146 INFO    ] No update needed
[2026-10-18 23:32:42,149.149 INFO    ] Checking for camera pi updates...
[2026-10-18 23:32:42,186.186 INFO    ] 200
[2026-10-18 23:32:42,189.189 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:32:42,231.231 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:32:42,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:32:42,276.276 INFO    ] No camera update needed
[2026-10-18 23:32:42,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:32:42,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:32:42,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:32:42,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:32:44,335.335 INFO    ] ================================================
[2026-10-18 23:32:44,350.350 INFO    ] Launching Daemon at Sun Oct 18 23:32:44 IST 2026
[2026-10-18 23:32:44,361.361 INFO    ] ================================================
[2026-10-18 23:32:44,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:32:44
[2026-10-18 23:32:45,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:32:45,800.800 INFO    ] Initializing speech engine...
[2026-10-18 23:32:45,809.809 INFO    ] 2026-10-18 23:32:45
[2026-10-18 23:32:46,063.063 INFO    ] 2026-10-18 23:32:46
[2026-10-18 23:32:46,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:32:46,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:32:46,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:32:46,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:32:46,629.629 INFO    ] time= 18/10/2026 23:32:46
[2026-10-18 23:32:46,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:32:46,659.659 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:32:46,792.792 INFO    ] No existing commands found in stream
[2026-10-18 23:32:51,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:32:51,808.808 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-18 23:32:56,203.203 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:32:56,206.206 INFO    ] Checking for system updates...
[2026-10-18 23:32:56,241.241 INFO    ] 200
[2026-10-18 23:32:56,243.243 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:32:56,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:32:56,305.305 INFO    ] No update needed
[2026-10-18 23:32:56,307.307 INFO    ] Checking for camera pi updates...
[2026-10-18 23:32:56,346.346 INFO    ] 200
[2026-10-18 23:32:56,349.349 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:32:56,391.391 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:32:56,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:32:56,442.442 INFO    ] No camera update needed
[2026-10-18 23:32:56,445.445 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:32:56,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:32:56,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:32:56,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:32:58,503.503 INFO    ] ================================================
[2026-10-18 23:32:58,519.519 INFO    ] Launching Daemon at Sun Oct 18 23:32:58 IST 2026
[2026-10-18 23:32:58,531.531 INFO    ] ================================================
[2026-10-18 23:32:59,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:32:59
[2026-10-18 23:32:59,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:33:00,181.181 INFO    ] Initializing speech engine...
[2026-10-18 23:33:00,194.194 INFO    ] 2026-10-18 23:33:00
[2026-10-18 23:33:00,479.479 INFO    ] 2026-10-18 23:33:00
[2026-10-18 23:33:00,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:33:00,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:33:00,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:33:01,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:33:01,030.030 INFO    ] time= 18/10/2026 23:33:01
[2026-10-18 23:33:01,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:33:01,079.079 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:33:01,219.219 INFO    ] No existing commands found in stream
[2026-10-18 23:33:06,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:33:06,249.249 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-18 23:33:06,919.919 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:33:06,922.922 INFO    ] Checking for system updates...
[2026-10-18 23:33:06,963.963 INFO    ] 200
[2026-10-18 23:33:06,966.966 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:33:07,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:33:07,027.027 INFO    ] No update needed
[2026-10-18 23:33:07,029.029 INFO    ] Checking for camera pi updates...
[2026-10-18 23:33:07,063.063 INFO    ] 200
[2026-10-18 23:33:07,065.065 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:33:07,110.110 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:33:07,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:33:07,153.153 INFO    ] No camera update needed
[2026-10-18 23:33:07,156.156 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:33:07,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:33:07,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:33:07,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:33:09,207.207 INFO    ] ================================================
[2026-10-18 23:33:09,222.222 INFO    ] Launching Daemon at Sun Oct 18 23:33:09 IST 2026
[2026-10-18 23:33:09,233.233 INFO    ] ================================================
[2026-10-18 23:33:09,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:33:09
[2026-10-18 23:33:10,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:33:10,693.693 INFO    ] Initializing speech engine...
[2026-10-18 23:33:10,699.699 INFO    ] 2026-10-18 23:33:10
[2026-10-18 23:33:10,961.961 INFO    ] 2026-10-18 23:33:10
[2026-10-18 23:33:10,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:33:11,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:33:11,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:33:11,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:33:11,506.506 INFO    ] time= 18/10/2026 23:33:11
[2026-10-18 23:33:11,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:33:11,532.532 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:33:11,675.675 INFO    ] No existing commands found in stream
[2026-10-18 23:33:16,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:33:16,704.704 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-18 23:33:18,416.416 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:33:18,419.419 INFO    ] Checking for system updates...
[2026-10-18 23:33:18,454.454 INFO    ] 200
[2026-10-18 23:33:18,456.456 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:33:18,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:33:18,520.520 INFO    ] No update needed
[2026-10-18 23:33:18,522.522 INFO    ] Checking for camera pi updates...
[2026-10-18 23:33:18,555.555 INFO    ] 200
[2026-10-18 23:33:18,558.558 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:33:18,601.601 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:33:18,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:33:18,646.646 INFO    ] No camera update needed
[2026-10-18 23:33:18,649.649 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:33:18,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:33:18,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:33:18,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:33:20,703.703 INFO    ] ================================================
[2026-10-18 23:33:20,718.718 INFO    ] Launching Daemon at Sun Oct 18 23:33:20 IST 2026
[2026-10-18 23:33:20,729.729 INFO    ] ================================================
[2026-10-18 23:33:21,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:33:21
[2026-10-18 23:33:21,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:33:22,187.187 INFO    ] Initializing speech engine...
[2026-10-18 23:33:22,194.194 INFO    ] 2026-10-18 23:33:22
[2026-10-18 23:33:22,455.455 INFO    ] 2026-10-18 23:33:22
[2026-10-18 23:33:22,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:33:22,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:33:22,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:33:22,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:33:22,998.998 INFO    ] time= 18/10/2026 23:33:22
[2026-10-18 23:33:23,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:33:23,020.020 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:33:23,154.154 INFO    ] No existing commands found in stream
[2026-10-18 23:33:28,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:33:28,172.172 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-18 23:33:31,855.855 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:33:31,858.858 INFO    ] Checking for system updates...
[2026-10-18 23:33:31,900.900 INFO    ] 200
[2026-10-18 23:33:31,902.902 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:33:31,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:33:31,960.960 INFO    ] No update needed
[2026-10-18 23:33:31,963.963 INFO    ] Checking for camera pi updates...
[2026-10-18 23:33:31,998.998 INFO    ] 200
[2026-10-18 23:33:32,002.002 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:33:32,048.048 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:33:32,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:33:32,094.094 INFO    ] No camera update needed
[2026-10-18 23:33:32,097.097 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:33:32,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:33:32,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:33:32,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:33:34,153.153 INFO    ] ================================================
[2026-10-18 23:33:34,168.168 INFO    ] Launching Daemon at Sun Oct 18 23:33:34 IST 2026
[2026-10-18 23:33:34,179.179 INFO    ] ================================================
[2026-10-18 23:33:34,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:33:34
[2026-10-18 23:33:35,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:33:35,706.706 INFO    ] Initializing speech engine...
[2026-10-18 23:33:35,718.718 INFO    ] 2026-10-18 23:33:35
[2026-10-18 23:33:35,965.965 INFO    ] 2026-10-18 23:33:35
[2026-10-18 23:33:36,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:33:36,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:33:36,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:33:36,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:33:36,523.523 INFO    ] time= 18/10/2026 23:33:36
[2026-10-18 23:33:36,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:33:36,547.547 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:33:36,680.680 INFO    ] No existing commands found in stream
[2026-10-18 23:33:41,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:33:41,705.705 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-18 23:33:42,663.663 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:33:42,666.666 INFO    ] Checking for system updates...
[2026-10-18 23:33:42,705.705 INFO    ] 200
[2026-10-18 23:33:42,707.707 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:33:42,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:33:42,762.762 INFO    ] No update needed
[2026-10-18 23:33:42,764.764 INFO    ] Checking for camera pi updates...
[2026-10-18 23:33:42,801.801 INFO    ] 200
[2026-10-18 23:33:42,803.803 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:33:42,844.844 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:33:42,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:33:42,887.887 INFO    ] No camera update needed
[2026-10-18 23:33:42,889.889 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:33:42,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:33:42,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:33:42,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:33:44,942.942 INFO    ] ================================================
[2026-10-18 23:33:44,958.958 INFO    ] Launching Daemon at Sun Oct 18 23:33:44 IST 2026
[2026-10-18 23:33:44,969.969 INFO    ] ================================================
[2026-10-18 23:33:45,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:33:45
[2026-10-18 23:33:46,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:33:46,406.406 INFO    ] Initializing speech engine...
[2026-10-18 23:33:46,415.415 INFO    ] 2026-10-18 23:33:46
[2026-10-18 23:33:46,663.663 INFO    ] 2026-10-18 23:33:46
[2026-10-18 23:33:46,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:33:46,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:33:46,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:33:47,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:33:47,230.230 INFO    ] time= 18/10/2026 23:33:47
[2026-10-18 23:33:47,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:33:47,255.255 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:33:47,373.373 INFO    ] No existing commands found in stream
[2026-10-18 23:33:52,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:33:52,402.402 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-18 23:34:00,519.519 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:34:00,522.522 INFO    ] Checking for system updates...
[2026-10-18 23:34:00,561.561 INFO    ] 200
[2026-10-18 23:34:00,563.563 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:34:00,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:34:00,620.620 INFO    ] No update needed
[2026-10-18 23:34:00,622.622 INFO    ] Checking for camera pi updates...
[2026-10-18 23:34:00,655.655 INFO    ] 200
[2026-10-18 23:34:00,658.658 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:34:00,697.697 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:34:00,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:34:00,742.742 INFO    ] No camera update needed
[2026-10-18 23:34:00,744.744 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:34:00,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:34:00,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:34:00,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:34:02,801.801 INFO    ] ================================================
[2026-10-18 23:34:02,819.819 INFO    ] Launching Daemon at Sun Oct 18 23:34:02 IST 2026
[2026-10-18 23:34:02,832.832 INFO    ] ================================================
[2026-10-18 23:34:03,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:34:03
[2026-10-18 23:34:04,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:34:04,473.473 INFO    ] Initializing speech engine...
[2026-10-18 23:34:04,481.481 INFO    ] 2026-10-18 23:34:04
[2026-10-18 23:34:04,745.745 INFO    ] 2026-10-18 23:34:04
[2026-10-18 23:34:04,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:34:04,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:34:05,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:34:05,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:34:05,246.246 INFO    ] time= 18/10/2026 23:34:05
[2026-10-18 23:34:05,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:34:05,356.356 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:34:05,482.482 INFO    ] No existing commands found in stream
[2026-10-18 23:34:10,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:34:10,512.512 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-18 23:34:11,962.962 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:34:11,964.964 INFO    ] Checking for system updates...
[2026-10-18 23:34:11,999.999 INFO    ] 200
[2026-10-18 23:34:12,002.002 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:34:12,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:34:12,055.055 INFO    ] No update needed
[2026-10-18 23:34:12,058.058 INFO    ] Checking for camera pi updates...
[2026-10-18 23:34:12,094.094 INFO    ] 200
[2026-10-18 23:34:12,097.097 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:34:12,141.141 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:34:12,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:34:12,188.188 INFO    ] No camera update needed
[2026-10-18 23:34:12,190.190 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:34:12,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:34:12,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:34:12,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:34:14,242.242 INFO    ] ================================================
[2026-10-18 23:34:14,257.257 INFO    ] Launching Daemon at Sun Oct 18 23:34:14 IST 2026
[2026-10-18 23:34:14,268.268 INFO    ] ================================================
[2026-10-18 23:34:14,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:34:14
[2026-10-18 23:34:15,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:34:15,717.717 INFO    ] Initializing speech engine...
[2026-10-18 23:34:15,726.726 INFO    ] 2026-10-18 23:34:15
[2026-10-18 23:34:16,017.017 INFO    ] 2026-10-18 23:34:15
[2026-10-18 23:34:16,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:34:16,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:34:16,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:34:16,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:34:16,437.437 INFO    ] time= 18/10/2026 23:34:16
[2026-10-18 23:34:16,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:34:16,456.456 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:34:16,539.539 INFO    ] No existing commands found in stream
[2026-10-18 23:34:21,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:34:21,576.576 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-18 23:34:23,786.786 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:34:23,789.789 INFO    ] Checking for system updates...
[2026-10-18 23:34:23,824.824 INFO    ] 200
[2026-10-18 23:34:23,827.827 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:34:23,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:34:23,886.886 INFO    ] No update needed
[2026-10-18 23:34:23,889.889 INFO    ] Checking for camera pi updates...
[2026-10-18 23:34:23,922.922 INFO    ] 200
[2026-10-18 23:34:23,924.924 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:34:23,964.964 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:34:24,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:34:24,105.105 INFO    ] No camera update needed
[2026-10-18 23:34:24,107.107 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:34:24,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:34:24,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:34:24,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:34:26,160.160 INFO    ] ================================================
[2026-10-18 23:34:26,175.175 INFO    ] Launching Daemon at Sun Oct 18 23:34:26 IST 2026
[2026-10-18 23:34:26,187.187 INFO    ] ================================================
[2026-10-18 23:34:26,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:34:26
[2026-10-18 23:34:27,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:34:27,622.622 INFO    ] Initializing speech engine...
[2026-10-18 23:34:27,630.630 INFO    ] 2026-10-18 23:34:27
[2026-10-18 23:34:27,883.883 INFO    ] 2026-10-18 23:34:27
[2026-10-18 23:34:27,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:34:28,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:34:28,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:34:28,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:34:28,389.389 INFO    ] time= 18/10/2026 23:34:28
[2026-10-18 23:34:28,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:34:28,461.461 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:34:28,620.620 INFO    ] No existing commands found in stream
[2026-10-18 23:34:33,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:34:33,635.635 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-18 23:34:38,079.079 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:34:38,082.082 INFO    ] Checking for system updates...
[2026-10-18 23:34:38,122.122 INFO    ] 200
[2026-10-18 23:34:38,125.125 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:34:38,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:34:38,183.183 INFO    ] No update needed
[2026-10-18 23:34:38,185.185 INFO    ] Checking for camera pi updates...
[2026-10-18 23:34:38,220.220 INFO    ] 200
[2026-10-18 23:34:38,222.222 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:34:38,268.268 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:34:38,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:34:38,315.315 INFO    ] No camera update needed
[2026-10-18 23:34:38,317.317 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:34:38,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:34:38,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:34:38,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:34:40,374.374 INFO    ] ================================================
[2026-10-18 23:34:40,391.391 INFO    ] Launching Daemon at Sun Oct 18 23:34:40 IST 2026
[2026-10-18 23:34:40,402.402 INFO    ] ================================================
[2026-10-18 23:34:40,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:34:40
[2026-10-18 23:34:41,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:34:41,873.873 INFO    ] Initializing speech engine...
[2026-10-18 23:34:41,889.889 INFO    ] 2026-10-18 23:34:41
[2026-10-18 23:34:42,166.166 INFO    ] 2026-10-18 23:34:42
[2026-10-18 23:34:42,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:34:42,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:34:42,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:34:42,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:34:42,591.591 INFO    ] time= 18/10/2026 23:34:42
[2026-10-18 23:34:42,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:34:42,604.604 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:34:42,741.741 INFO    ] No existing commands found in stream
[2026-10-18 23:34:47,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:34:47,774.774 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-18 23:34:50,462.462 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:34:50,465.465 INFO    ] Checking for system updates...
[2026-10-18 23:34:50,504.504 INFO    ] 200
[2026-10-18 23:34:50,506.506 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:34:50,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:34:50,560.560 INFO    ] No update needed
[2026-10-18 23:34:50,562.562 INFO    ] Checking for camera pi updates...
[2026-10-18 23:34:50,595.595 INFO    ] 200
[2026-10-18 23:34:50,598.598 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:34:50,642.642 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:34:50,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:34:50,685.685 INFO    ] No camera update needed
[2026-10-18 23:34:50,687.687 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:34:50,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:34:50,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:34:50,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:34:52,739.739 INFO    ] ================================================
[2026-10-18 23:34:52,755.755 INFO    ] Launching Daemon at Sun Oct 18 23:34:52 IST 2026
[2026-10-18 23:34:52,766.766 INFO    ] ================================================
[2026-10-18 23:34:53,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:34:53
[2026-10-18 23:34:53,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:34:54,240.240 INFO    ] Initializing speech engine...
[2026-10-18 23:34:54,249.249 INFO    ] 2026-10-18 23:34:54
[2026-10-18 23:34:54,552.552 INFO    ] 2026-10-18 23:34:54
[2026-10-18 23:34:54,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:34:54,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:34:54,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:34:54,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:34:54,985.985 INFO    ] time= 18/10/2026 23:34:54
[2026-10-18 23:34:54,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:34:54,996.996 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:34:55,075.075 INFO    ] No existing commands found in stream
[2026-10-18 23:35:00,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:35:00,088.088 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-18 23:35:03,555.555 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:35:03,559.559 INFO    ] Checking for system updates...
[2026-10-18 23:35:03,605.605 INFO    ] 200
[2026-10-18 23:35:03,608.608 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:35:03,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:35:03,669.669 INFO    ] No update needed
[2026-10-18 23:35:03,672.672 INFO    ] Checking for camera pi updates...
[2026-10-18 23:35:03,705.705 INFO    ] 200
[2026-10-18 23:35:03,707.707 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:35:03,746.746 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:35:03,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:35:03,796.796 INFO    ] No camera update needed
[2026-10-18 23:35:03,799.799 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:35:03,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:35:03,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:35:03,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:35:05,851.851 INFO    ] ================================================
[2026-10-18 23:35:05,866.866 INFO    ] Launching Daemon at Sun Oct 18 23:35:05 IST 2026
[2026-10-18 23:35:05,877.877 INFO    ] ================================================
[2026-10-18 23:35:06,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:35:06
[2026-10-18 23:35:07,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:35:07,336.336 INFO    ] Initializing speech engine...
[2026-10-18 23:35:07,345.345 INFO    ] 2026-10-18 23:35:07
[2026-10-18 23:35:07,594.594 INFO    ] 2026-10-18 23:35:07
[2026-10-18 23:35:07,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:35:07,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:35:07,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:35:08,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:35:08,154.154 INFO    ] time= 18/10/2026 23:35:08
[2026-10-18 23:35:08,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:35:08,184.184 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:35:08,322.322 INFO    ] No existing commands found in stream
[2026-10-18 23:35:13,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:35:13,351.351 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-18 23:35:17,683.683 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:35:17,685.685 INFO    ] Checking for system updates...
[2026-10-18 23:35:17,724.724 INFO    ] 200
[2026-10-18 23:35:17,726.726 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:35:17,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:35:17,779.779 INFO    ] No update needed
[2026-10-18 23:35:17,782.782 INFO    ] Checking for camera pi updates...
[2026-10-18 23:35:17,815.815 INFO    ] 200
[2026-10-18 23:35:17,817.817 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:35:17,861.861 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:35:17,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:35:17,914.914 INFO    ] No camera update needed
[2026-10-18 23:35:17,917.917 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:35:17,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:35:17,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:35:17,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:35:19,970.970 INFO    ] ================================================
[2026-10-18 23:35:19,985.985 INFO    ] Launching Daemon at Sun Oct 18 23:35:19 IST 2026
[2026-10-18 23:35:20,996.996 INFO    ] ================================================
[2026-10-18 23:35:20,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:35:20
[2026-10-18 23:35:21,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:35:21,434.434 INFO    ] Initializing speech engine...
[2026-10-18 23:35:21,444.444 INFO    ] 2026-10-18 23:35:21
[2026-10-18 23:35:21,695.695 INFO    ] 2026-10-18 23:35:21
[2026-10-18 23:35:21,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:35:21,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:35:22,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:35:22,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:35:22,260.260 INFO    ] time= 18/10/2026 23:35:22
[2026-10-18 23:35:22,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:35:22,287.287 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:35:22,419.419 INFO    ] No existing commands found in stream
[2026-10-18 23:35:27,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:35:27,455.455 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-18 23:35:31,774.774 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:35:31,778.778 INFO    ] Checking for system updates...
[2026-10-18 23:35:31,824.824 INFO    ] 200
[2026-10-18 23:35:31,827.827 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:35:31,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:35:31,911.911 INFO    ] No update needed
[2026-10-18 23:35:31,914.914 INFO    ] Checking for camera pi updates...
[2026-10-18 23:35:31,950.950 INFO    ] 200
[2026-10-18 23:35:31,953.953 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:35:31,997.997 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:35:32,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:35:32,036.036 INFO    ] No camera update needed
[2026-10-18 23:35:32,039.039 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:35:32,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:35:32,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:35:32,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:35:34,098.098 INFO    ] ================================================
[2026-10-18 23:35:34,113.113 INFO    ] Launching Daemon at Sun Oct 18 23:35:34 IST 2026
[2026-10-18 23:35:34,123.123 INFO    ] ================================================
[2026-10-18 23:35:34,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:35:34
[2026-10-18 23:35:35,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:35:35,578.578 INFO    ] Initializing speech engine...
[2026-10-18 23:35:35,589.589 INFO    ] 2026-10-18 23:35:35
[2026-10-18 23:35:35,848.848 INFO    ] 2026-10-18 23:35:35
[2026-10-18 23:35:35,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:35:36,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:35:36,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:35:36,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:35:36,228.228 INFO    ] time= 18/10/2026 23:35:36
[2026-10-18 23:35:36,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:35:36,280.280 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:35:36,426.426 INFO    ] No existing commands found in stream
[2026-10-18 23:35:41,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:35:41,440.440 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-18 23:35:43,180.180 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:35:43,182.182 INFO    ] Checking for system updates...
[2026-10-18 23:35:43,218.218 INFO    ] 200
[2026-10-18 23:35:43,221.221 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:35:43,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:35:43,276.276 INFO    ] No update needed
[2026-10-18 23:35:43,278.278 INFO    ] Checking for camera pi updates...
[2026-10-18 23:35:43,312.312 INFO    ] 200
[2026-10-18 23:35:43,315.315 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:35:43,355.355 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:35:43,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:35:43,398.398 INFO    ] No camera update needed
[2026-10-18 23:35:43,401.401 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:35:43,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:35:43,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:35:43,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:35:45,453.453 INFO    ] ================================================
[2026-10-18 23:35:45,469.469 INFO    ] Launching Daemon at Sun Oct 18 23:35:45 IST 2026
[2026-10-18 23:35:45,479.479 INFO    ] ================================================
[2026-10-18 23:35:46,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:35:46
[2026-10-18 23:35:46,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:35:46,886.886 INFO    ] Initializing speech engine...
[2026-10-18 23:35:46,892.892 INFO    ] 2026-10-18 23:35:46
[2026-10-18 23:35:47,172.172 INFO    ] 2026-10-18 23:35:47
[2026-10-18 23:35:47,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:35:47,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:35:47,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:35:47,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:35:47,667.667 INFO    ] time= 18/10/2026 23:35:47
[2026-10-18 23:35:47,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:35:47,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:35:47,896.896 INFO    ] No existing commands found in stream
[2026-10-18 23:35:52,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:35:52,914.914 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-18 23:35:54,408.408 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:35:54,411.411 INFO    ] Checking for system updates...
[2026-10-18 23:35:54,445.445 INFO    ] 200
[2026-10-18 23:35:54,448.448 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:35:54,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:35:54,509.509 INFO    ] No update needed
[2026-10-18 23:35:54,512.512 INFO    ] Checking for camera pi updates...
[2026-10-18 23:35:54,548.548 INFO    ] 200
[2026-10-18 23:35:54,550.550 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:35:54,594.594 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:35:54,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:35:54,636.636 INFO    ] No camera update needed
[2026-10-18 23:35:54,639.639 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:35:54,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:35:54,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:35:54,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:35:56,692.692 INFO    ] ================================================
[2026-10-18 23:35:56,706.706 INFO    ] Launching Daemon at Sun Oct 18 23:35:56 IST 2026
[2026-10-18 23:35:56,717.717 INFO    ] ================================================
[2026-10-18 23:35:57,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:35:57
[2026-10-18 23:35:58,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:35:58,322.322 INFO    ] Initializing speech engine...
[2026-10-18 23:35:58,331.331 INFO    ] 2026-10-18 23:35:58
[2026-10-18 23:35:58,620.620 INFO    ] 2026-10-18 23:35:58
[2026-10-18 23:35:58,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:35:58,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:35:58,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:35:59,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:35:59,167.167 INFO    ] time= 18/10/2026 23:35:59
[2026-10-18 23:35:59,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:35:59,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:35:59,329.329 INFO    ] No existing commands found in stream
[2026-10-18 23:36:04,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:36:04,352.352 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-18 23:36:07,490.490 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:36:07,493.493 INFO    ] Checking for system updates...
[2026-10-18 23:36:07,530.530 INFO    ] 200
[2026-10-18 23:36:07,533.533 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:36:07,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:36:07,595.595 INFO    ] No update needed
[2026-10-18 23:36:07,598.598 INFO    ] Checking for camera pi updates...
[2026-10-18 23:36:07,636.636 INFO    ] 200
[2026-10-18 23:36:07,639.639 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:36:07,684.684 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:36:07,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:36:07,729.729 INFO    ] No camera update needed
[2026-10-18 23:36:07,732.732 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:36:07,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:36:07,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:36:07,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:36:09,786.786 INFO    ] ================================================
[2026-10-18 23:36:09,801.801 INFO    ] Launching Daemon at Sun Oct 18 23:36:09 IST 2026
[2026-10-18 23:36:09,812.812 INFO    ] ================================================
[2026-10-18 23:36:10,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:36:10
[2026-10-18 23:36:11,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:36:11,440.440 INFO    ] Initializing speech engine...
[2026-10-18 23:36:11,449.449 INFO    ] 2026-10-18 23:36:11
[2026-10-18 23:36:11,736.736 INFO    ] 2026-10-18 23:36:11
[2026-10-18 23:36:11,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:36:11,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:36:12,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:36:12,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:36:12,252.252 INFO    ] time= 18/10/2026 23:36:12
[2026-10-18 23:36:12,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:36:12,372.372 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:36:12,610.610 INFO    ] No existing commands found in stream
[2026-10-18 23:36:17,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:36:17,639.639 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-18 23:36:18,906.906 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:36:18,909.909 INFO    ] Checking for system updates...
[2026-10-18 23:36:18,946.946 INFO    ] 200
[2026-10-18 23:36:18,949.949 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:36:19,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:36:19,006.006 INFO    ] No update needed
[2026-10-18 23:36:19,009.009 INFO    ] Checking for camera pi updates...
[2026-10-18 23:36:19,044.044 INFO    ] 200
[2026-10-18 23:36:19,046.046 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:36:19,088.088 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:36:19,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:36:19,131.131 INFO    ] No camera update needed
[2026-10-18 23:36:19,134.134 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:36:19,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:36:19,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:36:19,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:36:21,185.185 INFO    ] ================================================
[2026-10-18 23:36:21,201.201 INFO    ] Launching Daemon at Sun Oct 18 23:36:21 IST 2026
[2026-10-18 23:36:21,212.212 INFO    ] ================================================
[2026-10-18 23:36:21,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:36:21
[2026-10-18 23:36:22,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:36:22,649.649 INFO    ] Initializing speech engine...
[2026-10-18 23:36:22,663.663 INFO    ] 2026-10-18 23:36:22
[2026-10-18 23:36:22,943.943 INFO    ] 2026-10-18 23:36:22
[2026-10-18 23:36:22,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:36:23,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:36:23,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:36:23,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:36:23,345.345 INFO    ] time= 18/10/2026 23:36:23
[2026-10-18 23:36:23,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:36:23,379.379 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:36:23,529.529 INFO    ] No existing commands found in stream
[2026-10-18 23:36:28,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:36:28,563.563 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-18 23:36:29,951.951 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:36:29,953.953 INFO    ] Checking for system updates...
[2026-10-18 23:36:29,989.989 INFO    ] 200
[2026-10-18 23:36:29,992.992 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:36:30,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:36:30,050.050 INFO    ] No update needed
[2026-10-18 23:36:30,052.052 INFO    ] Checking for camera pi updates...
[2026-10-18 23:36:30,085.085 INFO    ] 200
[2026-10-18 23:36:30,088.088 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:36:30,130.130 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:36:30,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:36:30,271.271 INFO    ] No camera update needed
[2026-10-18 23:36:30,273.273 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:36:30,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:36:30,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:36:30,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:36:32,326.326 INFO    ] ================================================
[2026-10-18 23:36:32,343.343 INFO    ] Launching Daemon at Sun Oct 18 23:36:32 IST 2026
[2026-10-18 23:36:32,358.358 INFO    ] ================================================
[2026-10-18 23:36:32,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:36:32
[2026-10-18 23:36:33,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:36:33,815.815 INFO    ] Initializing speech engine...
[2026-10-18 23:36:33,821.821 INFO    ] 2026-10-18 23:36:33
[2026-10-18 23:36:34,105.105 INFO    ] 2026-10-18 23:36:34
[2026-10-18 23:36:34,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:36:34,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:36:34,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:36:34,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:36:34,509.509 INFO    ] time= 18/10/2026 23:36:34
[2026-10-18 23:36:34,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:36:34,582.582 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:36:34,720.720 INFO    ] No existing commands found in stream
[2026-10-18 23:36:39,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:36:39,734.734 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-18 23:36:41,431.431 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:36:41,433.433 INFO    ] Checking for system updates...
[2026-10-18 23:36:41,468.468 INFO    ] 200
[2026-10-18 23:36:41,471.471 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:36:41,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:36:41,530.530 INFO    ] No update needed
[2026-10-18 23:36:41,533.533 INFO    ] Checking for camera pi updates...
[2026-10-18 23:36:41,566.566 INFO    ] 200
[2026-10-18 23:36:41,569.569 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:36:41,609.609 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:36:41,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:36:41,654.654 INFO    ] No camera update needed
[2026-10-18 23:36:41,656.656 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:36:41,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:36:41,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:36:41,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:36:43,711.711 INFO    ] ================================================
[2026-10-18 23:36:43,726.726 INFO    ] Launching Daemon at Sun Oct 18 23:36:43 IST 2026
[2026-10-18 23:36:43,737.737 INFO    ] ================================================
[2026-10-18 23:36:44,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:36:44
[2026-10-18 23:36:44,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:36:45,139.139 INFO    ] Initializing speech engine...
[2026-10-18 23:36:45,147.147 INFO    ] 2026-10-18 23:36:45
[2026-10-18 23:36:45,431.431 INFO    ] 2026-10-18 23:36:45
[2026-10-18 23:36:45,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:36:45,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:36:45,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:36:45,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:36:45,831.831 INFO    ] time= 18/10/2026 23:36:45
[2026-10-18 23:36:45,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:36:45,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:36:46,044.044 INFO    ] No existing commands found in stream
[2026-10-18 23:36:51,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:36:51,057.057 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-18 23:36:51,592.592 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:36:51,594.594 INFO    ] Checking for system updates...
[2026-10-18 23:36:51,632.632 INFO    ] 200
[2026-10-18 23:36:51,634.634 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:36:51,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:36:51,691.691 INFO    ] No update needed
[2026-10-18 23:36:51,694.694 INFO    ] Checking for camera pi updates...
[2026-10-18 23:36:51,729.729 INFO    ] 200
[2026-10-18 23:36:51,731.731 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:36:51,773.773 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:36:51,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:36:51,816.816 INFO    ] No camera update needed
[2026-10-18 23:36:51,818.818 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:36:51,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:36:51,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:36:51,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:36:53,870.870 INFO    ] ================================================
[2026-10-18 23:36:53,886.886 INFO    ] Launching Daemon at Sun Oct 18 23:36:53 IST 2026
[2026-10-18 23:36:53,898.898 INFO    ] ================================================
[2026-10-18 23:36:54,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:36:54
[2026-10-18 23:36:55,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:36:55,351.351 INFO    ] Initializing speech engine...
[2026-10-18 23:36:55,357.357 INFO    ] 2026-10-18 23:36:55
[2026-10-18 23:36:55,617.617 INFO    ] 2026-10-18 23:36:55
[2026-10-18 23:36:55,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:36:55,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:36:55,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:36:56,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:36:56,155.155 INFO    ] time= 18/10/2026 23:36:56
[2026-10-18 23:36:56,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:36:56,180.180 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:36:56,310.310 INFO    ] No existing commands found in stream
[2026-10-18 23:37:01,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:37:01,333.333 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-18 23:37:05,318.318 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:37:05,321.321 INFO    ] Checking for system updates...
[2026-10-18 23:37:05,356.356 INFO    ] 200
[2026-10-18 23:37:05,359.359 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:37:05,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:37:05,412.412 INFO    ] No update needed
[2026-10-18 23:37:05,415.415 INFO    ] Checking for camera pi updates...
[2026-10-18 23:37:05,447.447 INFO    ] 200
[2026-10-18 23:37:05,454.454 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:37:05,494.494 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:37:05,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:37:05,538.538 INFO    ] No camera update needed
[2026-10-18 23:37:05,541.541 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:37:05,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:37:05,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:37:05,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:37:07,595.595 INFO    ] ================================================
[2026-10-18 23:37:07,610.610 INFO    ] Launching Daemon at Sun Oct 18 23:37:07 IST 2026
[2026-10-18 23:37:07,621.621 INFO    ] ================================================
[2026-10-18 23:37:08,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:37:08
[2026-10-18 23:37:08,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:37:09,200.200 INFO    ] Initializing speech engine...
[2026-10-18 23:37:09,213.213 INFO    ] 2026-10-18 23:37:09
[2026-10-18 23:37:09,494.494 INFO    ] 2026-10-18 23:37:09
[2026-10-18 23:37:09,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:37:09,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:37:09,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:37:10,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:37:10,022.022 INFO    ] time= 18/10/2026 23:37:10
[2026-10-18 23:37:10,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:37:10,069.069 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:37:10,181.181 INFO    ] No existing commands found in stream
[2026-10-18 23:37:15,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:37:15,209.209 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-18 23:37:18,332.332 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:37:18,335.335 INFO    ] Checking for system updates...
[2026-10-18 23:37:18,371.371 INFO    ] 200
[2026-10-18 23:37:18,374.374 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:37:18,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:37:18,428.428 INFO    ] No update needed
[2026-10-18 23:37:18,431.431 INFO    ] Checking for camera pi updates...
[2026-10-18 23:37:18,465.465 INFO    ] 200
[2026-10-18 23:37:18,468.468 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:37:18,509.509 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:37:18,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:37:18,555.555 INFO    ] No camera update needed
[2026-10-18 23:37:18,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:37:18,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:37:18,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:37:18,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:37:20,615.615 INFO    ] ================================================
[2026-10-18 23:37:20,631.631 INFO    ] Launching Daemon at Sun Oct 18 23:37:20 IST 2026
[2026-10-18 23:37:20,642.642 INFO    ] ================================================
[2026-10-18 23:37:21,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:37:21
[2026-10-18 23:37:21,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:37:22,054.054 INFO    ] Initializing speech engine...
[2026-10-18 23:37:22,063.063 INFO    ] 2026-10-18 23:37:22
[2026-10-18 23:37:22,318.318 INFO    ] 2026-10-18 23:37:22
[2026-10-18 23:37:22,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:37:22,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:37:22,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:37:22,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:37:22,882.882 INFO    ] time= 18/10/2026 23:37:22
[2026-10-18 23:37:22,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:37:22,903.903 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:37:23,061.061 INFO    ] No existing commands found in stream
[2026-10-18 23:37:28,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:37:28,094.094 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-18 23:37:32,471.471 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:37:32,473.473 INFO    ] Checking for system updates...
[2026-10-18 23:37:32,514.514 INFO    ] 200
[2026-10-18 23:37:32,516.516 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:37:32,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:37:32,574.574 INFO    ] No update needed
[2026-10-18 23:37:32,577.577 INFO    ] Checking for camera pi updates...
[2026-10-18 23:37:32,618.618 INFO    ] 200
[2026-10-18 23:37:32,621.621 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:37:32,665.665 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:37:32,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:37:32,713.713 INFO    ] No camera update needed
[2026-10-18 23:37:32,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:37:32,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:37:32,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:37:32,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:37:34,772.772 INFO    ] ================================================
[2026-10-18 23:37:34,788.788 INFO    ] Launching Daemon at Sun Oct 18 23:37:34 IST 2026
[2026-10-18 23:37:34,799.799 INFO    ] ================================================
[2026-10-18 23:37:35,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:37:35
[2026-10-18 23:37:35,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:37:36,193.193 INFO    ] Initializing speech engine...
[2026-10-18 23:37:36,214.214 INFO    ] 2026-10-18 23:37:36
[2026-10-18 23:37:36,472.472 INFO    ] 2026-10-18 23:37:36
[2026-10-18 23:37:36,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:37:36,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:37:36,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:37:36,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:37:36,975.975 INFO    ] time= 18/10/2026 23:37:36
[2026-10-18 23:37:37,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:37:37,046.046 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:37:37,192.192 INFO    ] No existing commands found in stream
[2026-10-18 23:37:42,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:37:42,211.211 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-18 23:37:46,711.711 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:37:46,714.714 INFO    ] Checking for system updates...
[2026-10-18 23:37:46,749.749 INFO    ] 200
[2026-10-18 23:37:46,751.751 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:37:46,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:37:46,805.805 INFO    ] No update needed
[2026-10-18 23:37:46,808.808 INFO    ] Checking for camera pi updates...
[2026-10-18 23:37:46,840.840 INFO    ] 200
[2026-10-18 23:37:46,843.843 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:37:46,881.881 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:37:46,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:37:46,925.925 INFO    ] No camera update needed
[2026-10-18 23:37:46,927.927 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:37:46,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:37:46,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:37:46,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:37:48,980.980 INFO    ] ================================================
[2026-10-18 23:37:49,995.995 INFO    ] Launching Daemon at Sun Oct 18 23:37:48 IST 2026
[2026-10-18 23:37:49,006.006 INFO    ] ================================================
[2026-10-18 23:37:49,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:37:49
[2026-10-18 23:37:50,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:37:50,448.448 INFO    ] Initializing speech engine...
[2026-10-18 23:37:50,473.473 INFO    ] 2026-10-18 23:37:50
[2026-10-18 23:37:50,754.754 INFO    ] 2026-10-18 23:37:50
[2026-10-18 23:37:50,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:37:51,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:37:51,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:37:51,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:37:51,260.260 INFO    ] time= 18/10/2026 23:37:51
[2026-10-18 23:37:51,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:37:51,377.377 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:37:51,507.507 INFO    ] No existing commands found in stream
[2026-10-18 23:37:56,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:37:56,532.532 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-18 23:37:57,889.889 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:37:57,891.891 INFO    ] Checking for system updates...
[2026-10-18 23:37:57,927.927 INFO    ] 200
[2026-10-18 23:37:57,929.929 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:37:57,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:37:57,987.987 INFO    ] No update needed
[2026-10-18 23:37:57,989.989 INFO    ] Checking for camera pi updates...
[2026-10-18 23:37:58,024.024 INFO    ] 200
[2026-10-18 23:37:58,027.027 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:37:58,069.069 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:37:58,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:37:58,112.112 INFO    ] No camera update needed
[2026-10-18 23:37:58,114.114 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:37:58,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:37:58,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:37:58,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:38:00,166.166 INFO    ] ================================================
[2026-10-18 23:38:00,181.181 INFO    ] Launching Daemon at Sun Oct 18 23:38:00 IST 2026
[2026-10-18 23:38:00,192.192 INFO    ] ================================================
[2026-10-18 23:38:00,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:38:00
[2026-10-18 23:38:01,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:38:02,082.082 INFO    ] Initializing speech engine...
[2026-10-18 23:38:02,087.087 INFO    ] 2026-10-18 23:38:02
[2026-10-18 23:38:02,442.442 INFO    ] 2026-10-18 23:38:02
[2026-10-18 23:38:02,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:38:02,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:38:02,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:38:02,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:38:02,917.917 INFO    ] time= 18/10/2026 23:38:02
[2026-10-18 23:38:02,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:38:03,033.033 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:38:03,123.123 INFO    ] No existing commands found in stream
[2026-10-18 23:38:08,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:38:08,142.142 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-18 23:38:09,392.392 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:38:09,395.395 INFO    ] Checking for system updates...
[2026-10-18 23:38:09,431.431 INFO    ] 200
[2026-10-18 23:38:09,434.434 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:38:09,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:38:09,495.495 INFO    ] No update needed
[2026-10-18 23:38:09,497.497 INFO    ] Checking for camera pi updates...
[2026-10-18 23:38:09,532.532 INFO    ] 200
[2026-10-18 23:38:09,534.534 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:38:09,579.579 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:38:09,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:38:09,623.623 INFO    ] No camera update needed
[2026-10-18 23:38:09,625.625 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:38:09,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:38:09,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:38:09,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:38:11,678.678 INFO    ] ================================================
[2026-10-18 23:38:11,693.693 INFO    ] Launching Daemon at Sun Oct 18 23:38:11 IST 2026
[2026-10-18 23:38:11,704.704 INFO    ] ================================================
[2026-10-18 23:38:12,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:38:12
[2026-10-18 23:38:12,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:38:13,132.132 INFO    ] Initializing speech engine...
[2026-10-18 23:38:13,138.138 INFO    ] 2026-10-18 23:38:13
[2026-10-18 23:38:13,396.396 INFO    ] 2026-10-18 23:38:13
[2026-10-18 23:38:13,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:38:13,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:38:13,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:38:13,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:38:13,973.973 INFO    ] time= 18/10/2026 23:38:13
[2026-10-18 23:38:13,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:38:14,027.027 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:38:14,135.135 INFO    ] No existing commands found in stream
[2026-10-18 23:38:19,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:38:19,154.154 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-18 23:38:22,686.686 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:38:22,689.689 INFO    ] Checking for system updates...
[2026-10-18 23:38:22,726.726 INFO    ] 200
[2026-10-18 23:38:22,729.729 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:38:22,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:38:22,789.789 INFO    ] No update needed
[2026-10-18 23:38:22,792.792 INFO    ] Checking for camera pi updates...
[2026-10-18 23:38:22,827.827 INFO    ] 200
[2026-10-18 23:38:22,830.830 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:38:22,870.870 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:38:22,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:38:22,913.913 INFO    ] No camera update needed
[2026-10-18 23:38:22,916.916 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:38:22,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:38:22,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:38:22,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:38:24,969.969 INFO    ] ================================================
[2026-10-18 23:38:24,984.984 INFO    ] Launching Daemon at Sun Oct 18 23:38:24 IST 2026
[2026-10-18 23:38:25,995.995 INFO    ] ================================================
[2026-10-18 23:38:25,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:38:25
[2026-10-18 23:38:26,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:38:26,440.440 INFO    ] Initializing speech engine...
[2026-10-18 23:38:26,450.450 INFO    ] 2026-10-18 23:38:26
[2026-10-18 23:38:26,696.696 INFO    ] 2026-10-18 23:38:26
[2026-10-18 23:38:26,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:38:26,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:38:26,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:38:27,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:38:27,177.177 INFO    ] time= 18/10/2026 23:38:27
[2026-10-18 23:38:27,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:38:27,260.260 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:38:27,389.389 INFO    ] No existing commands found in stream
[2026-10-18 23:38:32,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:38:32,416.416 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-18 23:38:34,446.446 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:38:34,449.449 INFO    ] Checking for system updates...
[2026-10-18 23:38:34,489.489 INFO    ] 200
[2026-10-18 23:38:34,492.492 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:38:34,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:38:34,547.547 INFO    ] No update needed
[2026-10-18 23:38:34,550.550 INFO    ] Checking for camera pi updates...
[2026-10-18 23:38:34,587.587 INFO    ] 200
[2026-10-18 23:38:34,590.590 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:38:34,635.635 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:38:34,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:38:34,680.680 INFO    ] No camera update needed
[2026-10-18 23:38:34,682.682 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:38:34,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:38:34,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:38:34,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:38:36,739.739 INFO    ] ================================================
[2026-10-18 23:38:36,761.761 INFO    ] Launching Daemon at Sun Oct 18 23:38:36 IST 2026
[2026-10-18 23:38:36,771.771 INFO    ] ================================================
[2026-10-18 23:38:37,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:38:37
[2026-10-18 23:38:38,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:38:38,391.391 INFO    ] Initializing speech engine...
[2026-10-18 23:38:38,405.405 INFO    ] 2026-10-18 23:38:38
[2026-10-18 23:38:38,693.693 INFO    ] 2026-10-18 23:38:38
[2026-10-18 23:38:38,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:38:38,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:38:38,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:38:39,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:38:39,230.230 INFO    ] time= 18/10/2026 23:38:39
[2026-10-18 23:38:39,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:38:39,256.256 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:38:39,390.390 INFO    ] No existing commands found in stream
[2026-10-18 23:38:44,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:38:44,433.433 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-18 23:38:46,626.626 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:38:46,630.630 INFO    ] Checking for system updates...
[2026-10-18 23:38:46,666.666 INFO    ] 200
[2026-10-18 23:38:46,670.670 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:38:46,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:38:46,725.725 INFO    ] No update needed
[2026-10-18 23:38:46,728.728 INFO    ] Checking for camera pi updates...
[2026-10-18 23:38:46,767.767 INFO    ] 200
[2026-10-18 23:38:46,770.770 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:38:46,816.816 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:38:46,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:38:46,861.861 INFO    ] No camera update needed
[2026-10-18 23:38:46,864.864 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:38:46,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:38:46,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:38:46,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:38:48,918.918 INFO    ] ================================================
[2026-10-18 23:38:48,936.936 INFO    ] Launching Daemon at Sun Oct 18 23:38:48 IST 2026
[2026-10-18 23:38:48,948.948 INFO    ] ================================================
[2026-10-18 23:38:49,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:38:49
[2026-10-18 23:38:50,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:38:50,444.444 INFO    ] Initializing speech engine...
[2026-10-18 23:38:50,452.452 INFO    ] 2026-10-18 23:38:50
[2026-10-18 23:38:50,761.761 INFO    ] 2026-10-18 23:38:50
[2026-10-18 23:38:50,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:38:51,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:38:51,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:38:51,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:38:51,276.276 INFO    ] time= 18/10/2026 23:38:51
[2026-10-18 23:38:51,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:38:51,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:38:51,567.567 INFO    ] No existing commands found in stream
[2026-10-18 23:38:56,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:38:56,593.593 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-18 23:38:59,451.451 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:38:59,454.454 INFO    ] Checking for system updates...
[2026-10-18 23:38:59,490.490 INFO    ] 200
[2026-10-18 23:38:59,493.493 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:38:59,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:38:59,548.548 INFO    ] No update needed
[2026-10-18 23:38:59,551.551 INFO    ] Checking for camera pi updates...
[2026-10-18 23:38:59,585.585 INFO    ] 200
[2026-10-18 23:38:59,588.588 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:38:59,630.630 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:38:59,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:38:59,674.674 INFO    ] No camera update needed
[2026-10-18 23:38:59,677.677 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:38:59,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:38:59,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:38:59,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:39:01,743.743 INFO    ] ================================================
[2026-10-18 23:39:01,784.784 INFO    ] Launching Daemon at Sun Oct 18 23:39:01 IST 2026
[2026-10-18 23:39:01,805.805 INFO    ] ================================================
[2026-10-18 23:39:02,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:39:02
[2026-10-18 23:39:03,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:39:03,663.663 INFO    ] Initializing speech engine...
[2026-10-18 23:39:03,684.684 INFO    ] 2026-10-18 23:39:03
[2026-10-18 23:39:03,971.971 INFO    ] 2026-10-18 23:39:03
[2026-10-18 23:39:04,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:39:04,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:39:04,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:39:04,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:39:04,536.536 INFO    ] time= 18/10/2026 23:39:04
[2026-10-18 23:39:04,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:39:04,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:39:04,712.712 INFO    ] No existing commands found in stream
[2026-10-18 23:39:09,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:39:09,748.748 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-18 23:39:13,690.690 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:39:13,693.693 INFO    ] Checking for system updates...
[2026-10-18 23:39:13,729.729 INFO    ] 200
[2026-10-18 23:39:13,732.732 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:39:13,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:39:13,796.796 INFO    ] No update needed
[2026-10-18 23:39:13,799.799 INFO    ] Checking for camera pi updates...
[2026-10-18 23:39:13,834.834 INFO    ] 200
[2026-10-18 23:39:13,837.837 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:39:13,881.881 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:39:13,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:39:13,930.930 INFO    ] No camera update needed
[2026-10-18 23:39:13,933.933 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:39:13,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:39:13,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:39:13,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:39:15,989.989 INFO    ] ================================================
[2026-10-18 23:39:16,005.005 INFO    ] Launching Daemon at Sun Oct 18 23:39:15 IST 2026
[2026-10-18 23:39:16,016.016 INFO    ] ================================================
[2026-10-18 23:39:16,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:39:16
[2026-10-18 23:39:17,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:39:17,666.666 INFO    ] Initializing speech engine...
[2026-10-18 23:39:17,680.680 INFO    ] 2026-10-18 23:39:17
[2026-10-18 23:39:17,967.967 INFO    ] 2026-10-18 23:39:17
[2026-10-18 23:39:18,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:39:18,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:39:18,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:39:18,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:39:18,522.522 INFO    ] time= 18/10/2026 23:39:18
[2026-10-18 23:39:18,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:39:18,564.564 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:39:18,701.701 INFO    ] No existing commands found in stream
[2026-10-18 23:39:23,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:39:23,741.741 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-18 23:39:27,926.926 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:39:27,928.928 INFO    ] Checking for system updates...
[2026-10-18 23:39:27,963.963 INFO    ] 200
[2026-10-18 23:39:27,966.966 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:39:28,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:39:28,020.020 INFO    ] No update needed
[2026-10-18 23:39:28,022.022 INFO    ] Checking for camera pi updates...
[2026-10-18 23:39:28,059.059 INFO    ] 200
[2026-10-18 23:39:28,061.061 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:39:28,100.100 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:39:28,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:39:28,143.143 INFO    ] No camera update needed
[2026-10-18 23:39:28,146.146 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:39:28,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:39:28,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:39:28,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:39:30,197.197 INFO    ] ================================================
[2026-10-18 23:39:30,212.212 INFO    ] Launching Daemon at Sun Oct 18 23:39:30 IST 2026
[2026-10-18 23:39:30,227.227 INFO    ] ================================================
[2026-10-18 23:39:30,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:39:30
[2026-10-18 23:39:31,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:39:31,887.887 INFO    ] Initializing speech engine...
[2026-10-18 23:39:31,899.899 INFO    ] 2026-10-18 23:39:31
[2026-10-18 23:39:32,199.199 INFO    ] 2026-10-18 23:39:32
[2026-10-18 23:39:32,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:39:32,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:39:32,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:39:32,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:39:32,755.755 INFO    ] time= 18/10/2026 23:39:32
[2026-10-18 23:39:32,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:39:32,803.803 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:39:32,933.933 INFO    ] No existing commands found in stream
[2026-10-18 23:39:37,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:39:37,971.971 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-18 23:39:42,035.035 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:39:42,037.037 INFO    ] Checking for system updates...
[2026-10-18 23:39:42,073.073 INFO    ] 200
[2026-10-18 23:39:42,075.075 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:39:42,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:39:42,129.129 INFO    ] No update needed
[2026-10-18 23:39:42,131.131 INFO    ] Checking for camera pi updates...
[2026-10-18 23:39:42,164.164 INFO    ] 200
[2026-10-18 23:39:42,167.167 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:39:42,210.210 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:39:42,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:39:42,255.255 INFO    ] No camera update needed
[2026-10-18 23:39:42,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:39:42,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:39:42,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:39:42,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:39:44,309.309 INFO    ] ================================================
[2026-10-18 23:39:44,325.325 INFO    ] Launching Daemon at Sun Oct 18 23:39:44 IST 2026
[2026-10-18 23:39:44,336.336 INFO    ] ================================================
[2026-10-18 23:39:44,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:39:44
[2026-10-18 23:39:45,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:39:45,796.796 INFO    ] Initializing speech engine...
[2026-10-18 23:39:45,803.803 INFO    ] 2026-10-18 23:39:45
[2026-10-18 23:39:46,064.064 INFO    ] 2026-10-18 23:39:46
[2026-10-18 23:39:46,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:39:46,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:39:46,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:39:46,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:39:46,606.606 INFO    ] time= 18/10/2026 23:39:46
[2026-10-18 23:39:46,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:39:46,633.633 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:39:46,763.763 INFO    ] No existing commands found in stream
[2026-10-18 23:39:51,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:39:51,794.794 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-18 23:39:53,217.217 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:39:53,220.220 INFO    ] Checking for system updates...
[2026-10-18 23:39:53,254.254 INFO    ] 200
[2026-10-18 23:39:53,257.257 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:39:53,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:39:53,310.310 INFO    ] No update needed
[2026-10-18 23:39:53,313.313 INFO    ] Checking for camera pi updates...
[2026-10-18 23:39:53,346.346 INFO    ] 200
[2026-10-18 23:39:53,348.348 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:39:53,392.392 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:39:53,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:39:53,436.436 INFO    ] No camera update needed
[2026-10-18 23:39:53,439.439 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:39:53,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:39:53,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:39:53,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:39:55,492.492 INFO    ] ================================================
[2026-10-18 23:39:55,508.508 INFO    ] Launching Daemon at Sun Oct 18 23:39:55 IST 2026
[2026-10-18 23:39:55,519.519 INFO    ] ================================================
[2026-10-18 23:39:56,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:39:56
[2026-10-18 23:39:56,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:39:56,937.937 INFO    ] Initializing speech engine...
[2026-10-18 23:39:56,946.946 INFO    ] 2026-10-18 23:39:56
[2026-10-18 23:39:57,191.191 INFO    ] 2026-10-18 23:39:57
[2026-10-18 23:39:57,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:39:57,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:39:57,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:39:57,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:39:57,737.737 INFO    ] time= 18/10/2026 23:39:57
[2026-10-18 23:39:57,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:39:57,766.766 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:39:57,897.897 INFO    ] No existing commands found in stream
[2026-10-18 23:40:02,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:40:02,912.912 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-18 23:40:08,475.475 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:40:08,477.477 INFO    ] Checking for system updates...
[2026-10-18 23:40:08,513.513 INFO    ] 200
[2026-10-18 23:40:08,515.515 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:40:08,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:40:08,577.577 INFO    ] No update needed
[2026-10-18 23:40:08,579.579 INFO    ] Checking for camera pi updates...
[2026-10-18 23:40:08,612.612 INFO    ] 200
[2026-10-18 23:40:08,614.614 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:40:08,654.654 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:40:08,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:40:08,696.696 INFO    ] No camera update needed
[2026-10-18 23:40:08,699.699 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:40:08,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:40:08,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:40:08,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:40:10,753.753 INFO    ] ================================================
[2026-10-18 23:40:10,769.769 INFO    ] Launching Daemon at Sun Oct 18 23:40:10 IST 2026
[2026-10-18 23:40:10,780.780 INFO    ] ================================================
[2026-10-18 23:40:11,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:40:11
[2026-10-18 23:40:12,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:40:12,314.314 INFO    ] Initializing speech engine...
[2026-10-18 23:40:12,324.324 INFO    ] 2026-10-18 23:40:12
[2026-10-18 23:40:12,582.582 INFO    ] 2026-10-18 23:40:12
[2026-10-18 23:40:12,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:40:12,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:40:12,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:40:13,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:40:13,125.125 INFO    ] time= 18/10/2026 23:40:13
[2026-10-18 23:40:13,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:40:13,148.148 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:40:13,277.277 INFO    ] No existing commands found in stream
[2026-10-18 23:40:18,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:40:18,294.294 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-18 23:40:19,532.532 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:40:19,535.535 INFO    ] Checking for system updates...
[2026-10-18 23:40:19,570.570 INFO    ] 200
[2026-10-18 23:40:19,573.573 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:40:19,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:40:19,629.629 INFO    ] No update needed
[2026-10-18 23:40:19,631.631 INFO    ] Checking for camera pi updates...
[2026-10-18 23:40:19,664.664 INFO    ] 200
[2026-10-18 23:40:19,667.667 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:40:19,706.706 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:40:19,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:40:19,753.753 INFO    ] No camera update needed
[2026-10-18 23:40:19,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:40:19,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:40:19,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:40:19,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:40:21,807.807 INFO    ] ================================================
[2026-10-18 23:40:21,823.823 INFO    ] Launching Daemon at Sun Oct 18 23:40:21 IST 2026
[2026-10-18 23:40:21,835.835 INFO    ] ================================================
[2026-10-18 23:40:22,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:40:22
[2026-10-18 23:40:22,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:40:23,251.251 INFO    ] Initializing speech engine...
[2026-10-18 23:40:23,257.257 INFO    ] 2026-10-18 23:40:23
[2026-10-18 23:40:23,547.547 INFO    ] 2026-10-18 23:40:23
[2026-10-18 23:40:23,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:40:23,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:40:23,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:40:24,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:40:24,135.135 INFO    ] time= 18/10/2026 23:40:24
[2026-10-18 23:40:24,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:40:24,164.164 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:40:24,294.294 INFO    ] No existing commands found in stream
[2026-10-18 23:40:29,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:40:29,314.314 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-18 23:40:30,092.092 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:40:30,095.095 INFO    ] Checking for system updates...
[2026-10-18 23:40:30,131.131 INFO    ] 200
[2026-10-18 23:40:30,133.133 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:40:30,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:40:30,189.189 INFO    ] No update needed
[2026-10-18 23:40:30,192.192 INFO    ] Checking for camera pi updates...
[2026-10-18 23:40:30,225.225 INFO    ] 200
[2026-10-18 23:40:30,227.227 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:40:30,267.267 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:40:30,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:40:30,314.314 INFO    ] No camera update needed
[2026-10-18 23:40:30,317.317 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:40:30,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:40:30,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:40:30,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:40:32,373.373 INFO    ] ================================================
[2026-10-18 23:40:32,389.389 INFO    ] Launching Daemon at Sun Oct 18 23:40:32 IST 2026
[2026-10-18 23:40:32,400.400 INFO    ] ================================================
[2026-10-18 23:40:33,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:40:33
[2026-10-18 23:40:33,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:40:33,994.994 INFO    ] Initializing speech engine...
[2026-10-18 23:40:34,008.008 INFO    ] 2026-10-18 23:40:33
[2026-10-18 23:40:34,296.296 INFO    ] 2026-10-18 23:40:34
[2026-10-18 23:40:34,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:40:34,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:40:34,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:40:34,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:40:34,988.988 INFO    ] time= 18/10/2026 23:40:34
[2026-10-18 23:40:35,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:40:35,096.096 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:40:35,273.273 INFO    ] No existing commands found in stream
[2026-10-18 23:40:40,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:40:40,297.297 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-18 23:40:43,162.162 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:40:43,165.165 INFO    ] Checking for system updates...
[2026-10-18 23:40:43,215.215 INFO    ] 200
[2026-10-18 23:40:43,218.218 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:40:43,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:40:43,273.273 INFO    ] No update needed
[2026-10-18 23:40:43,276.276 INFO    ] Checking for camera pi updates...
[2026-10-18 23:40:43,312.312 INFO    ] 200
[2026-10-18 23:40:43,315.315 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:40:43,360.360 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:40:43,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:40:43,502.502 INFO    ] No camera update needed
[2026-10-18 23:40:43,504.504 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:40:43,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:40:43,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:40:43,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:40:45,557.557 INFO    ] ================================================
[2026-10-18 23:40:45,572.572 INFO    ] Launching Daemon at Sun Oct 18 23:40:45 IST 2026
[2026-10-18 23:40:45,583.583 INFO    ] ================================================
[2026-10-18 23:40:46,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:40:46
[2026-10-18 23:40:46,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:40:47,225.225 INFO    ] Initializing speech engine...
[2026-10-18 23:40:47,233.233 INFO    ] 2026-10-18 23:40:47
[2026-10-18 23:40:47,499.499 INFO    ] 2026-10-18 23:40:47
[2026-10-18 23:40:47,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:40:47,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:40:47,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:40:47,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:40:47,922.922 INFO    ] time= 18/10/2026 23:40:47
[2026-10-18 23:40:47,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:40:47,997.997 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:40:48,125.125 INFO    ] No existing commands found in stream
[2026-10-18 23:40:53,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:40:53,148.148 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-18 23:40:54,992.992 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:40:54,994.994 INFO    ] Checking for system updates...
[2026-10-18 23:40:55,030.030 INFO    ] 200
[2026-10-18 23:40:55,032.032 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:40:55,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:40:55,092.092 INFO    ] No update needed
[2026-10-18 23:40:55,094.094 INFO    ] Checking for camera pi updates...
[2026-10-18 23:40:55,127.127 INFO    ] 200
[2026-10-18 23:40:55,129.129 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:40:55,173.173 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:40:55,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:40:55,216.216 INFO    ] No camera update needed
[2026-10-18 23:40:55,218.218 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:40:55,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:40:55,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:40:55,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:40:57,272.272 INFO    ] ================================================
[2026-10-18 23:40:57,288.288 INFO    ] Launching Daemon at Sun Oct 18 23:40:57 IST 2026
[2026-10-18 23:40:57,300.300 INFO    ] ================================================
[2026-10-18 23:40:57,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:40:57
[2026-10-18 23:40:58,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:40:58,717.717 INFO    ] Initializing speech engine...
[2026-10-18 23:40:58,740.740 INFO    ] 2026-10-18 23:40:58
[2026-10-18 23:40:58,999.999 INFO    ] 2026-10-18 23:40:58
[2026-10-18 23:40:59,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:40:59,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:40:59,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:40:59,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:40:59,487.487 INFO    ] time= 18/10/2026 23:40:59
[2026-10-18 23:40:59,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:40:59,580.580 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:40:59,688.688 INFO    ] No existing commands found in stream
[2026-10-18 23:41:04,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:41:04,702.702 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-18 23:41:06,883.883 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:41:06,886.886 INFO    ] Checking for system updates...
[2026-10-18 23:41:06,925.925 INFO    ] 200
[2026-10-18 23:41:06,927.927 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:41:06,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:41:06,987.987 INFO    ] No update needed
[2026-10-18 23:41:06,989.989 INFO    ] Checking for camera pi updates...
[2026-10-18 23:41:07,023.023 INFO    ] 200
[2026-10-18 23:41:07,025.025 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:41:07,064.064 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:41:07,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:41:07,109.109 INFO    ] No camera update needed
[2026-10-18 23:41:07,111.111 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:41:07,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:41:07,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:41:07,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:41:09,163.163 INFO    ] ================================================
[2026-10-18 23:41:09,179.179 INFO    ] Launching Daemon at Sun Oct 18 23:41:09 IST 2026
[2026-10-18 23:41:09,190.190 INFO    ] ================================================
[2026-10-18 23:41:09,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:41:09
[2026-10-18 23:41:10,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:41:10,772.772 INFO    ] Initializing speech engine...
[2026-10-18 23:41:10,781.781 INFO    ] 2026-10-18 23:41:10
[2026-10-18 23:41:11,058.058 INFO    ] 2026-10-18 23:41:11
[2026-10-18 23:41:11,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:41:11,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:41:11,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:41:11,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:41:11,624.624 INFO    ] time= 18/10/2026 23:41:11
[2026-10-18 23:41:11,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:41:11,661.661 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:41:11,803.803 INFO    ] No existing commands found in stream
[2026-10-18 23:41:16,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:41:16,837.837 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-18 23:41:20,538.538 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:41:20,541.541 INFO    ] Checking for system updates...
[2026-10-18 23:41:20,581.581 INFO    ] 200
[2026-10-18 23:41:20,584.584 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:41:20,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:41:20,646.646 INFO    ] No update needed
[2026-10-18 23:41:20,649.649 INFO    ] Checking for camera pi updates...
[2026-10-18 23:41:20,686.686 INFO    ] 200
[2026-10-18 23:41:20,690.690 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:41:20,730.730 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:41:20,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:41:20,775.775 INFO    ] No camera update needed
[2026-10-18 23:41:20,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:41:20,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:41:20,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:41:20,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:41:22,834.834 INFO    ] ================================================
[2026-10-18 23:41:22,850.850 INFO    ] Launching Daemon at Sun Oct 18 23:41:22 IST 2026
[2026-10-18 23:41:22,861.861 INFO    ] ================================================
[2026-10-18 23:41:23,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:41:23
[2026-10-18 23:41:24,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:41:24,508.508 INFO    ] Initializing speech engine...
[2026-10-18 23:41:24,520.520 INFO    ] 2026-10-18 23:41:24
[2026-10-18 23:41:24,805.805 INFO    ] 2026-10-18 23:41:24
[2026-10-18 23:41:24,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:41:25,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:41:25,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:41:25,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:41:25,337.337 INFO    ] time= 18/10/2026 23:41:25
[2026-10-18 23:41:25,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:41:25,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:41:25,522.522 INFO    ] No existing commands found in stream
[2026-10-18 23:41:30,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:41:30,556.556 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-18 23:41:31,218.218 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:41:31,222.222 INFO    ] Checking for system updates...
[2026-10-18 23:41:31,269.269 INFO    ] 200
[2026-10-18 23:41:31,272.272 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:41:31,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:41:31,335.335 INFO    ] No update needed
[2026-10-18 23:41:31,338.338 INFO    ] Checking for camera pi updates...
[2026-10-18 23:41:31,374.374 INFO    ] 200
[2026-10-18 23:41:31,377.377 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:41:31,419.419 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:41:31,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:41:31,457.457 INFO    ] No camera update needed
[2026-10-18 23:41:31,461.461 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:41:31,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:41:31,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:41:31,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:41:33,517.517 INFO    ] ================================================
[2026-10-18 23:41:33,532.532 INFO    ] Launching Daemon at Sun Oct 18 23:41:33 IST 2026
[2026-10-18 23:41:33,542.542 INFO    ] ================================================
[2026-10-18 23:41:34,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:41:34
[2026-10-18 23:41:34,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:41:35,176.176 INFO    ] Initializing speech engine...
[2026-10-18 23:41:35,184.184 INFO    ] 2026-10-18 23:41:35
[2026-10-18 23:41:35,465.465 INFO    ] 2026-10-18 23:41:35
[2026-10-18 23:41:35,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:41:35,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:41:35,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:41:35,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:41:35,938.938 INFO    ] time= 18/10/2026 23:41:35
[2026-10-18 23:41:35,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:41:36,027.027 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:41:36,137.137 INFO    ] No existing commands found in stream
[2026-10-18 23:41:41,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:41:41,152.152 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-18 23:41:45,104.104 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:41:45,107.107 INFO    ] Checking for system updates...
[2026-10-18 23:41:45,142.142 INFO    ] 200
[2026-10-18 23:41:45,145.145 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:41:45,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:41:45,205.205 INFO    ] No update needed
[2026-10-18 23:41:45,208.208 INFO    ] Checking for camera pi updates...
[2026-10-18 23:41:45,250.250 INFO    ] 200
[2026-10-18 23:41:45,253.253 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:41:45,294.294 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:41:45,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:41:45,340.340 INFO    ] No camera update needed
[2026-10-18 23:41:45,344.344 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:41:45,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:41:45,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:41:45,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:41:47,405.405 INFO    ] ================================================
[2026-10-18 23:41:47,420.420 INFO    ] Launching Daemon at Sun Oct 18 23:41:47 IST 2026
[2026-10-18 23:41:47,430.430 INFO    ] ================================================
[2026-10-18 23:41:48,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:41:48
[2026-10-18 23:41:48,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:41:49,062.062 INFO    ] Initializing speech engine...
[2026-10-18 23:41:49,070.070 INFO    ] 2026-10-18 23:41:49
[2026-10-18 23:41:49,354.354 INFO    ] 2026-10-18 23:41:49
[2026-10-18 23:41:49,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:41:49,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:41:49,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:41:49,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:41:49,892.892 INFO    ] time= 18/10/2026 23:41:49
[2026-10-18 23:41:49,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:41:49,943.943 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:41:50,052.052 INFO    ] No existing commands found in stream
[2026-10-18 23:41:55,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:41:55,084.084 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-18 23:41:57,552.552 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:41:57,555.555 INFO    ] Checking for system updates...
[2026-10-18 23:41:57,591.591 INFO    ] 200
[2026-10-18 23:41:57,594.594 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:41:57,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:41:57,651.651 INFO    ] No update needed
[2026-10-18 23:41:57,654.654 INFO    ] Checking for camera pi updates...
[2026-10-18 23:41:57,688.688 INFO    ] 200
[2026-10-18 23:41:57,691.691 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:41:57,732.732 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:41:57,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:41:57,779.779 INFO    ] No camera update needed
[2026-10-18 23:41:57,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:41:57,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:41:57,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:41:57,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:41:59,836.836 INFO    ] ================================================
[2026-10-18 23:41:59,851.851 INFO    ] Launching Daemon at Sun Oct 18 23:41:59 IST 2026
[2026-10-18 23:41:59,862.862 INFO    ] ================================================
[2026-10-18 23:42:00,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:42:00
[2026-10-18 23:42:01,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:42:01,670.670 INFO    ] Initializing speech engine...
[2026-10-18 23:42:01,673.673 INFO    ] 2026-10-18 23:42:01
[2026-10-18 23:42:01,994.994 INFO    ] 2026-10-18 23:42:01
[2026-10-18 23:42:02,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:42:02,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:42:02,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:42:02,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:42:02,493.493 INFO    ] time= 18/10/2026 23:42:02
[2026-10-18 23:42:02,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:42:02,530.530 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:42:02,659.659 INFO    ] No existing commands found in stream
[2026-10-18 23:42:07,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:42:07,698.698 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-18 23:42:12,129.129 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:42:12,132.132 INFO    ] Checking for system updates...
[2026-10-18 23:42:12,167.167 INFO    ] 200
[2026-10-18 23:42:12,169.169 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:42:12,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:42:12,224.224 INFO    ] No update needed
[2026-10-18 23:42:12,226.226 INFO    ] Checking for camera pi updates...
[2026-10-18 23:42:12,259.259 INFO    ] 200
[2026-10-18 23:42:12,261.261 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:42:12,306.306 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:42:12,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:42:12,350.350 INFO    ] No camera update needed
[2026-10-18 23:42:12,352.352 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:42:12,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:42:12,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:42:12,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:42:14,404.404 INFO    ] ================================================
[2026-10-18 23:42:14,419.419 INFO    ] Launching Daemon at Sun Oct 18 23:42:14 IST 2026
[2026-10-18 23:42:14,430.430 INFO    ] ================================================
[2026-10-18 23:42:15,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:42:15
[2026-10-18 23:42:15,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:42:16,057.057 INFO    ] Initializing speech engine...
[2026-10-18 23:42:16,068.068 INFO    ] 2026-10-18 23:42:16
[2026-10-18 23:42:16,354.354 INFO    ] 2026-10-18 23:42:16
[2026-10-18 23:42:16,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:42:16,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:42:16,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:42:16,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:42:16,901.901 INFO    ] time= 18/10/2026 23:42:16
[2026-10-18 23:42:16,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:42:16,944.944 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:42:17,077.077 INFO    ] No existing commands found in stream
[2026-10-18 23:42:22,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:42:22,114.114 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-18 23:42:25,607.607 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:42:25,611.611 INFO    ] Checking for system updates...
[2026-10-18 23:42:25,646.646 INFO    ] 200
[2026-10-18 23:42:25,649.649 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:42:25,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:42:25,713.713 INFO    ] No update needed
[2026-10-18 23:42:25,715.715 INFO    ] Checking for camera pi updates...
[2026-10-18 23:42:25,749.749 INFO    ] 200
[2026-10-18 23:42:25,751.751 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:42:25,795.795 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:42:25,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:42:25,839.839 INFO    ] No camera update needed
[2026-10-18 23:42:25,842.842 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:42:25,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:42:25,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:42:25,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:42:27,896.896 INFO    ] ================================================
[2026-10-18 23:42:27,911.911 INFO    ] Launching Daemon at Sun Oct 18 23:42:27 IST 2026
[2026-10-18 23:42:27,922.922 INFO    ] ================================================
[2026-10-18 23:42:28,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:42:28
[2026-10-18 23:42:29,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:42:29,541.541 INFO    ] Initializing speech engine...
[2026-10-18 23:42:29,549.549 INFO    ] 2026-10-18 23:42:29
[2026-10-18 23:42:29,833.833 INFO    ] 2026-10-18 23:42:29
[2026-10-18 23:42:29,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:42:30,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:42:30,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:42:30,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:42:30,383.383 INFO    ] time= 18/10/2026 23:42:30
[2026-10-18 23:42:30,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:42:30,420.420 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:42:30,531.531 INFO    ] No existing commands found in stream
[2026-10-18 23:42:35,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:42:35,570.570 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-18 23:42:37,679.679 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:42:37,682.682 INFO    ] Checking for system updates...
[2026-10-18 23:42:37,719.719 INFO    ] 200
[2026-10-18 23:42:37,721.721 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:42:37,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:42:37,777.777 INFO    ] No update needed
[2026-10-18 23:42:37,779.779 INFO    ] Checking for camera pi updates...
[2026-10-18 23:42:37,814.814 INFO    ] 200
[2026-10-18 23:42:37,817.817 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:42:37,857.857 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:42:37,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:42:37,901.901 INFO    ] No camera update needed
[2026-10-18 23:42:37,904.904 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:42:37,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:42:37,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:42:37,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:42:39,959.959 INFO    ] ================================================
[2026-10-18 23:42:39,974.974 INFO    ] Launching Daemon at Sun Oct 18 23:42:39 IST 2026
[2026-10-18 23:42:39,984.984 INFO    ] ================================================
[2026-10-18 23:42:40,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:42:40
[2026-10-18 23:42:41,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:42:41,386.386 INFO    ] Initializing speech engine...
[2026-10-18 23:42:41,395.395 INFO    ] 2026-10-18 23:42:41
[2026-10-18 23:42:41,687.687 INFO    ] 2026-10-18 23:42:41
[2026-10-18 23:42:41,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:42:41,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:42:41,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:42:42,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:42:42,196.196 INFO    ] time= 18/10/2026 23:42:42
[2026-10-18 23:42:42,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:42:42,310.310 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:42:42,459.459 INFO    ] No existing commands found in stream
[2026-10-18 23:42:47,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:42:47,496.496 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-18 23:42:48,795.795 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:42:48,798.798 INFO    ] Checking for system updates...
[2026-10-18 23:42:48,838.838 INFO    ] 200
[2026-10-18 23:42:48,841.841 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:42:48,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:42:48,901.901 INFO    ] No update needed
[2026-10-18 23:42:48,903.903 INFO    ] Checking for camera pi updates...
[2026-10-18 23:42:48,935.935 INFO    ] 200
[2026-10-18 23:42:48,938.938 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:42:48,982.982 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:42:49,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:42:49,124.124 INFO    ] No camera update needed
[2026-10-18 23:42:49,126.126 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:42:49,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:42:49,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:42:49,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:42:51,179.179 INFO    ] ================================================
[2026-10-18 23:42:51,193.193 INFO    ] Launching Daemon at Sun Oct 18 23:42:51 IST 2026
[2026-10-18 23:42:51,204.204 INFO    ] ================================================
[2026-10-18 23:42:51,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:42:51
[2026-10-18 23:42:52,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:42:52,637.637 INFO    ] Initializing speech engine...
[2026-10-18 23:42:52,657.657 INFO    ] 2026-10-18 23:42:52
[2026-10-18 23:42:52,931.931 INFO    ] 2026-10-18 23:42:52
[2026-10-18 23:42:52,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:42:53,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:42:53,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:42:53,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:42:53,345.345 INFO    ] time= 18/10/2026 23:42:53
[2026-10-18 23:42:53,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:42:53,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:42:53,522.522 INFO    ] No existing commands found in stream
[2026-10-18 23:42:58,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:42:58,549.549 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-18 23:43:02,409.409 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:43:02,413.413 INFO    ] Checking for system updates...
[2026-10-18 23:43:02,453.453 INFO    ] 200
[2026-10-18 23:43:02,457.457 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:43:02,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:43:02,518.518 INFO    ] No update needed
[2026-10-18 23:43:02,521.521 INFO    ] Checking for camera pi updates...
[2026-10-18 23:43:02,558.558 INFO    ] 200
[2026-10-18 23:43:02,561.561 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:43:02,605.605 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:43:02,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:43:02,651.651 INFO    ] No camera update needed
[2026-10-18 23:43:02,654.654 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:43:02,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:43:02,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:43:02,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:43:04,711.711 INFO    ] ================================================
[2026-10-18 23:43:04,726.726 INFO    ] Launching Daemon at Sun Oct 18 23:43:04 IST 2026
[2026-10-18 23:43:04,738.738 INFO    ] ================================================
[2026-10-18 23:43:05,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:43:05
[2026-10-18 23:43:06,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:43:06,291.291 INFO    ] Initializing speech engine...
[2026-10-18 23:43:06,301.301 INFO    ] 2026-10-18 23:43:06
[2026-10-18 23:43:06,551.551 INFO    ] 2026-10-18 23:43:06
[2026-10-18 23:43:06,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:43:06,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:43:06,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:43:07,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:43:07,094.094 INFO    ] time= 18/10/2026 23:43:07
[2026-10-18 23:43:07,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:43:07,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:43:07,250.250 INFO    ] No existing commands found in stream
[2026-10-18 23:43:12,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:43:12,271.271 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-18 23:43:14,803.803 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:43:14,805.805 INFO    ] Checking for system updates...
[2026-10-18 23:43:14,840.840 INFO    ] 200
[2026-10-18 23:43:14,842.842 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:43:14,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:43:14,897.897 INFO    ] No update needed
[2026-10-18 23:43:14,899.899 INFO    ] Checking for camera pi updates...
[2026-10-18 23:43:14,933.933 INFO    ] 200
[2026-10-18 23:43:14,935.935 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:43:14,975.975 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:43:15,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:43:15,017.017 INFO    ] No camera update needed
[2026-10-18 23:43:15,020.020 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:43:15,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:43:15,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:43:15,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:43:17,075.075 INFO    ] ================================================
[2026-10-18 23:43:17,091.091 INFO    ] Launching Daemon at Sun Oct 18 23:43:17 IST 2026
[2026-10-18 23:43:17,102.102 INFO    ] ================================================
[2026-10-18 23:43:17,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:43:17
[2026-10-18 23:43:18,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:43:18,523.523 INFO    ] Initializing speech engine...
[2026-10-18 23:43:18,530.530 INFO    ] 2026-10-18 23:43:18
[2026-10-18 23:43:18,777.777 INFO    ] 2026-10-18 23:43:18
[2026-10-18 23:43:18,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:43:19,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:43:19,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:43:19,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:43:19,325.325 INFO    ] time= 18/10/2026 23:43:19
[2026-10-18 23:43:19,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:43:19,351.351 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:43:19,500.500 INFO    ] No existing commands found in stream
[2026-10-18 23:43:24,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:43:24,522.522 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-18 23:43:25,465.465 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:43:25,467.467 INFO    ] Checking for system updates...
[2026-10-18 23:43:25,506.506 INFO    ] 200
[2026-10-18 23:43:25,508.508 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:43:25,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:43:25,562.562 INFO    ] No update needed
[2026-10-18 23:43:25,564.564 INFO    ] Checking for camera pi updates...
[2026-10-18 23:43:25,603.603 INFO    ] 200
[2026-10-18 23:43:25,606.606 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:43:25,646.646 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:43:25,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:43:25,688.688 INFO    ] No camera update needed
[2026-10-18 23:43:25,690.690 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:43:25,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:43:25,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:43:25,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:43:27,742.742 INFO    ] ================================================
[2026-10-18 23:43:27,757.757 INFO    ] Launching Daemon at Sun Oct 18 23:43:27 IST 2026
[2026-10-18 23:43:27,768.768 INFO    ] ================================================
[2026-10-18 23:43:28,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:43:28
[2026-10-18 23:43:29,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:43:29,401.401 INFO    ] Initializing speech engine...
[2026-10-18 23:43:29,415.415 INFO    ] 2026-10-18 23:43:29
[2026-10-18 23:43:29,704.704 INFO    ] 2026-10-18 23:43:29
[2026-10-18 23:43:29,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:43:30,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:43:30,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:43:30,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:43:30,255.255 INFO    ] time= 18/10/2026 23:43:30
[2026-10-18 23:43:30,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:43:30,293.293 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:43:30,419.419 INFO    ] No existing commands found in stream
[2026-10-18 23:43:35,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:43:35,459.459 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-18 23:43:36,755.755 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:43:36,758.758 INFO    ] Checking for system updates...
[2026-10-18 23:43:36,795.795 INFO    ] 200
[2026-10-18 23:43:36,798.798 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:43:36,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:43:36,863.863 INFO    ] No update needed
[2026-10-18 23:43:36,866.866 INFO    ] Checking for camera pi updates...
[2026-10-18 23:43:36,900.900 INFO    ] 200
[2026-10-18 23:43:36,903.903 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:43:36,943.943 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:43:36,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:43:36,985.985 INFO    ] No camera update needed
[2026-10-18 23:43:36,988.988 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:43:36,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:43:36,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:43:37,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:43:39,040.040 INFO    ] ================================================
[2026-10-18 23:43:39,055.055 INFO    ] Launching Daemon at Sun Oct 18 23:43:39 IST 2026
[2026-10-18 23:43:39,066.066 INFO    ] ================================================
[2026-10-18 23:43:39,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:43:39
[2026-10-18 23:43:40,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:43:40,739.739 INFO    ] Initializing speech engine...
[2026-10-18 23:43:40,747.747 INFO    ] 2026-10-18 23:43:40
[2026-10-18 23:43:41,037.037 INFO    ] 2026-10-18 23:43:41
[2026-10-18 23:43:41,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:43:41,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:43:41,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:43:41,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:43:41,584.584 INFO    ] time= 18/10/2026 23:43:41
[2026-10-18 23:43:41,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:43:41,631.631 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:43:41,759.759 INFO    ] No existing commands found in stream
[2026-10-18 23:43:46,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:43:46,793.793 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-18 23:43:49,144.144 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:43:49,147.147 INFO    ] Checking for system updates...
[2026-10-18 23:43:49,188.188 INFO    ] 200
[2026-10-18 23:43:49,191.191 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:43:49,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:43:49,244.244 INFO    ] No update needed
[2026-10-18 23:43:49,247.247 INFO    ] Checking for camera pi updates...
[2026-10-18 23:43:49,280.280 INFO    ] 200
[2026-10-18 23:43:49,283.283 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:43:49,322.322 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:43:49,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:43:49,367.367 INFO    ] No camera update needed
[2026-10-18 23:43:49,369.369 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:43:49,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:43:49,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:43:49,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:43:51,421.421 INFO    ] ================================================
[2026-10-18 23:43:51,437.437 INFO    ] Launching Daemon at Sun Oct 18 23:43:51 IST 2026
[2026-10-18 23:43:51,447.447 INFO    ] ================================================
[2026-10-18 23:43:52,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:43:52
[2026-10-18 23:43:52,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:43:52,863.863 INFO    ] Initializing speech engine...
[2026-10-18 23:43:52,869.869 INFO    ] 2026-10-18 23:43:52
[2026-10-18 23:43:53,165.165 INFO    ] 2026-10-18 23:43:53
[2026-10-18 23:43:53,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:43:53,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:43:53,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:43:53,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:43:53,593.593 INFO    ] time= 18/10/2026 23:43:53
[2026-10-18 23:43:53,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:43:53,668.668 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:43:53,811.811 INFO    ] No existing commands found in stream
[2026-10-18 23:43:58,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:43:58,828.828 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-18 23:44:02,897.897 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:44:02,901.901 INFO    ] Checking for system updates...
[2026-10-18 23:44:02,939.939 INFO    ] 200
[2026-10-18 23:44:02,941.941 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:44:02,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:44:03,000.000 INFO    ] No update needed
[2026-10-18 23:44:03,003.003 INFO    ] Checking for camera pi updates...
[2026-10-18 23:44:03,039.039 INFO    ] 200
[2026-10-18 23:44:03,042.042 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:44:03,081.081 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:44:03,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:44:03,125.125 INFO    ] No camera update needed
[2026-10-18 23:44:03,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:44:03,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:44:03,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:44:03,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:44:05,182.182 INFO    ] ================================================
[2026-10-18 23:44:05,198.198 INFO    ] Launching Daemon at Sun Oct 18 23:44:05 IST 2026
[2026-10-18 23:44:05,208.208 INFO    ] ================================================
[2026-10-18 23:44:05,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:44:05
[2026-10-18 23:44:06,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:44:06,816.816 INFO    ] Initializing speech engine...
[2026-10-18 23:44:06,828.828 INFO    ] 2026-10-18 23:44:06
[2026-10-18 23:44:07,110.110 INFO    ] 2026-10-18 23:44:07
[2026-10-18 23:44:07,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:44:07,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:44:07,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:44:07,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:44:07,639.639 INFO    ] time= 18/10/2026 23:44:07
[2026-10-18 23:44:07,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:44:07,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:44:07,794.794 INFO    ] No existing commands found in stream
[2026-10-18 23:44:12,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:44:12,827.827 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-18 23:44:15,119.119 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:44:15,122.122 INFO    ] Checking for system updates...
[2026-10-18 23:44:15,158.158 INFO    ] 200
[2026-10-18 23:44:15,160.160 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:44:15,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:44:15,214.214 INFO    ] No update needed
[2026-10-18 23:44:15,216.216 INFO    ] Checking for camera pi updates...
[2026-10-18 23:44:15,249.249 INFO    ] 200
[2026-10-18 23:44:15,252.252 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:44:15,291.291 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:44:15,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:44:15,334.334 INFO    ] No camera update needed
[2026-10-18 23:44:15,336.336 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:44:15,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:44:15,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:44:15,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:44:17,388.388 INFO    ] ================================================
[2026-10-18 23:44:17,403.403 INFO    ] Launching Daemon at Sun Oct 18 23:44:17 IST 2026
[2026-10-18 23:44:17,414.414 INFO    ] ================================================
[2026-10-18 23:44:17,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:44:17
[2026-10-18 23:44:18,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:44:18,812.812 INFO    ] Initializing speech engine...
[2026-10-18 23:44:18,826.826 INFO    ] 2026-10-18 23:44:18
[2026-10-18 23:44:19,092.092 INFO    ] 2026-10-18 23:44:19
[2026-10-18 23:44:19,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:44:19,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:44:19,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:44:19,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:44:19,646.646 INFO    ] time= 18/10/2026 23:44:19
[2026-10-18 23:44:19,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:44:19,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:44:19,808.808 INFO    ] No existing commands found in stream
[2026-10-18 23:44:24,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:44:24,831.831 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-18 23:44:27,438.438 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:44:27,441.441 INFO    ] Checking for system updates...
[2026-10-18 23:44:27,479.479 INFO    ] 200
[2026-10-18 23:44:27,482.482 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:44:27,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:44:27,536.536 INFO    ] No update needed
[2026-10-18 23:44:27,539.539 INFO    ] Checking for camera pi updates...
[2026-10-18 23:44:27,575.575 INFO    ] 200
[2026-10-18 23:44:27,577.577 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:44:27,617.617 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:44:27,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:44:27,661.661 INFO    ] No camera update needed
[2026-10-18 23:44:27,663.663 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:44:27,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:44:27,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:44:27,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:44:29,718.718 INFO    ] ================================================
[2026-10-18 23:44:29,734.734 INFO    ] Launching Daemon at Sun Oct 18 23:44:29 IST 2026
[2026-10-18 23:44:29,748.748 INFO    ] ================================================
[2026-10-18 23:44:30,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:44:30
[2026-10-18 23:44:30,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:44:31,196.196 INFO    ] Initializing speech engine...
[2026-10-18 23:44:31,207.207 INFO    ] 2026-10-18 23:44:31
[2026-10-18 23:44:31,464.464 INFO    ] 2026-10-18 23:44:31
[2026-10-18 23:44:31,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:44:31,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:44:31,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:44:32,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:44:32,054.054 INFO    ] time= 18/10/2026 23:44:32
[2026-10-18 23:44:32,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:44:32,110.110 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:44:32,259.259 INFO    ] No existing commands found in stream
[2026-10-18 23:44:37,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:44:37,293.293 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-18 23:44:40,324.324 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:44:40,327.327 INFO    ] Checking for system updates...
[2026-10-18 23:44:40,362.362 INFO    ] 200
[2026-10-18 23:44:40,364.364 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:44:40,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:44:40,419.419 INFO    ] No update needed
[2026-10-18 23:44:40,421.421 INFO    ] Checking for camera pi updates...
[2026-10-18 23:44:40,454.454 INFO    ] 200
[2026-10-18 23:44:40,456.456 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:44:40,501.501 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:44:40,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:44:40,543.543 INFO    ] No camera update needed
[2026-10-18 23:44:40,545.545 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:44:40,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:44:40,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:44:40,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:44:42,598.598 INFO    ] ================================================
[2026-10-18 23:44:42,613.613 INFO    ] Launching Daemon at Sun Oct 18 23:44:42 IST 2026
[2026-10-18 23:44:42,623.623 INFO    ] ================================================
[2026-10-18 23:44:43,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:44:43
[2026-10-18 23:44:43,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:44:44,065.065 INFO    ] Initializing speech engine...
[2026-10-18 23:44:44,074.074 INFO    ] 2026-10-18 23:44:44
[2026-10-18 23:44:44,361.361 INFO    ] 2026-10-18 23:44:44
[2026-10-18 23:44:44,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:44:44,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:44:44,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:44:44,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:44:44,864.864 INFO    ] time= 18/10/2026 23:44:44
[2026-10-18 23:44:44,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:44:44,926.926 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:44:45,025.025 INFO    ] No existing commands found in stream
[2026-10-18 23:44:50,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:44:50,066.066 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-18 23:44:54,284.284 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:44:54,292.292 INFO    ] Checking for system updates...
[2026-10-18 23:44:54,340.340 INFO    ] 200
[2026-10-18 23:44:54,343.343 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:44:54,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:44:54,400.400 INFO    ] No update needed
[2026-10-18 23:44:54,402.402 INFO    ] Checking for camera pi updates...
[2026-10-18 23:44:54,438.438 INFO    ] 200
[2026-10-18 23:44:54,441.441 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:44:54,487.487 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:44:54,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:44:54,631.631 INFO    ] No camera update needed
[2026-10-18 23:44:54,634.634 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:44:54,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:44:54,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:44:54,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:44:56,689.689 INFO    ] ================================================
[2026-10-18 23:44:56,704.704 INFO    ] Launching Daemon at Sun Oct 18 23:44:56 IST 2026
[2026-10-18 23:44:56,714.714 INFO    ] ================================================
[2026-10-18 23:44:57,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:44:57
[2026-10-18 23:44:57,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:44:58,160.160 INFO    ] Initializing speech engine...
[2026-10-18 23:44:58,175.175 INFO    ] 2026-10-18 23:44:58
[2026-10-18 23:44:58,467.467 INFO    ] 2026-10-18 23:44:58
[2026-10-18 23:44:58,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:44:58,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:44:58,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:44:58,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:44:58,980.980 INFO    ] time= 18/10/2026 23:44:58
[2026-10-18 23:44:59,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:44:59,048.048 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:44:59,196.196 INFO    ] No existing commands found in stream
[2026-10-18 23:45:04,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:45:04,216.216 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-18 23:45:04,896.896 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:45:04,899.899 INFO    ] Checking for system updates...
[2026-10-18 23:45:04,936.936 INFO    ] 200
[2026-10-18 23:45:04,939.939 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:45:04,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:45:04,994.994 INFO    ] No update needed
[2026-10-18 23:45:04,997.997 INFO    ] Checking for camera pi updates...
[2026-10-18 23:45:05,035.035 INFO    ] 200
[2026-10-18 23:45:05,037.037 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:45:05,084.084 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:45:05,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:45:05,130.130 INFO    ] No camera update needed
[2026-10-18 23:45:05,133.133 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:45:05,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:45:05,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:45:05,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:45:07,187.187 INFO    ] ================================================
[2026-10-18 23:45:07,202.202 INFO    ] Launching Daemon at Sun Oct 18 23:45:07 IST 2026
[2026-10-18 23:45:07,213.213 INFO    ] ================================================
[2026-10-18 23:45:07,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:45:07
[2026-10-18 23:45:08,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:45:08,632.632 INFO    ] Initializing speech engine...
[2026-10-18 23:45:08,644.644 INFO    ] 2026-10-18 23:45:08
[2026-10-18 23:45:08,917.917 INFO    ] 2026-10-18 23:45:08
[2026-10-18 23:45:08,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:45:09,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:45:09,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:45:09,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:45:09,360.360 INFO    ] time= 18/10/2026 23:45:09
[2026-10-18 23:45:09,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:45:09,383.383 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:45:09,456.456 INFO    ] No existing commands found in stream
[2026-10-18 23:45:14,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:45:14,468.468 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-18 23:45:18,607.607 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:45:18,610.610 INFO    ] Checking for system updates...
[2026-10-18 23:45:18,645.645 INFO    ] 200
[2026-10-18 23:45:18,647.647 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:45:18,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:45:18,703.703 INFO    ] No update needed
[2026-10-18 23:45:18,705.705 INFO    ] Checking for camera pi updates...
[2026-10-18 23:45:18,743.743 INFO    ] 200
[2026-10-18 23:45:18,745.745 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:45:18,786.786 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:45:18,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:45:18,828.828 INFO    ] No camera update needed
[2026-10-18 23:45:18,831.831 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:45:18,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:45:18,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:45:18,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:45:20,882.882 INFO    ] ================================================
[2026-10-18 23:45:20,897.897 INFO    ] Launching Daemon at Sun Oct 18 23:45:20 IST 2026
[2026-10-18 23:45:20,907.907 INFO    ] ================================================
[2026-10-18 23:45:21,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:45:21
[2026-10-18 23:45:22,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:45:22,577.577 INFO    ] Initializing speech engine...
[2026-10-18 23:45:22,592.592 INFO    ] 2026-10-18 23:45:22
[2026-10-18 23:45:22,880.880 INFO    ] 2026-10-18 23:45:22
[2026-10-18 23:45:22,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:45:23,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:45:23,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:45:23,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:45:23,436.436 INFO    ] time= 18/10/2026 23:45:23
[2026-10-18 23:45:23,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:45:23,485.485 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:45:23,597.597 INFO    ] No existing commands found in stream
[2026-10-18 23:45:28,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:45:28,625.625 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-18 23:45:32,267.267 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:45:32,271.271 INFO    ] Checking for system updates...
[2026-10-18 23:45:32,316.316 INFO    ] 200
[2026-10-18 23:45:32,319.319 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:45:32,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:45:32,393.393 INFO    ] No update needed
[2026-10-18 23:45:32,396.396 INFO    ] Checking for camera pi updates...
[2026-10-18 23:45:32,434.434 INFO    ] 200
[2026-10-18 23:45:32,437.437 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:45:32,490.490 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:45:32,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:45:32,536.536 INFO    ] No camera update needed
[2026-10-18 23:45:32,539.539 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:45:32,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:45:32,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:45:32,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:45:34,596.596 INFO    ] ================================================
[2026-10-18 23:45:34,612.612 INFO    ] Launching Daemon at Sun Oct 18 23:45:34 IST 2026
[2026-10-18 23:45:34,622.622 INFO    ] ================================================
[2026-10-18 23:45:35,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:45:35
[2026-10-18 23:45:35,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:45:36,024.024 INFO    ] Initializing speech engine...
[2026-10-18 23:45:36,046.046 INFO    ] 2026-10-18 23:45:36
[2026-10-18 23:45:36,297.297 INFO    ] 2026-10-18 23:45:36
[2026-10-18 23:45:36,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:45:36,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:45:36,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:45:36,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:45:36,856.856 INFO    ] time= 18/10/2026 23:45:36
[2026-10-18 23:45:36,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:45:36,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:45:36,990.990 INFO    ] No existing commands found in stream
[2026-10-18 23:45:42,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:45:42,023.023 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-18 23:45:43,860.860 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:45:43,863.863 INFO    ] Checking for system updates...
[2026-10-18 23:45:43,898.898 INFO    ] 200
[2026-10-18 23:45:43,902.902 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:45:43,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:45:43,964.964 INFO    ] No update needed
[2026-10-18 23:45:43,967.967 INFO    ] Checking for camera pi updates...
[2026-10-18 23:45:44,000.000 INFO    ] 200
[2026-10-18 23:45:44,003.003 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:45:44,044.044 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:45:44,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:45:44,088.088 INFO    ] No camera update needed
[2026-10-18 23:45:44,090.090 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:45:44,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:45:44,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:45:44,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:45:46,145.145 INFO    ] ================================================
[2026-10-18 23:45:46,160.160 INFO    ] Launching Daemon at Sun Oct 18 23:45:46 IST 2026
[2026-10-18 23:45:46,171.171 INFO    ] ================================================
[2026-10-18 23:45:46,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:45:46
[2026-10-18 23:45:47,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:45:47,647.647 INFO    ] Initializing speech engine...
[2026-10-18 23:45:47,654.654 INFO    ] 2026-10-18 23:45:47
[2026-10-18 23:45:47,956.956 INFO    ] 2026-10-18 23:45:47
[2026-10-18 23:45:47,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:45:48,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:45:48,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:45:48,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:45:48,388.388 INFO    ] time= 18/10/2026 23:45:48
[2026-10-18 23:45:48,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:45:48,399.399 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:45:48,477.477 INFO    ] No existing commands found in stream
[2026-10-18 23:45:53,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:45:53,510.510 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-18 23:45:55,250.250 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:45:55,253.253 INFO    ] Checking for system updates...
[2026-10-18 23:45:55,289.289 INFO    ] 200
[2026-10-18 23:45:55,292.292 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:45:55,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:45:55,345.345 INFO    ] No update needed
[2026-10-18 23:45:55,348.348 INFO    ] Checking for camera pi updates...
[2026-10-18 23:45:55,385.385 INFO    ] 200
[2026-10-18 23:45:55,387.387 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:45:55,428.428 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:45:55,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:45:55,474.474 INFO    ] No camera update needed
[2026-10-18 23:45:55,476.476 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:45:55,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:45:55,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:45:55,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:45:57,533.533 INFO    ] ================================================
[2026-10-18 23:45:57,547.547 INFO    ] Launching Daemon at Sun Oct 18 23:45:57 IST 2026
[2026-10-18 23:45:57,565.565 INFO    ] ================================================
[2026-10-18 23:45:58,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:45:58
[2026-10-18 23:45:58,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:45:59,240.240 INFO    ] Initializing speech engine...
[2026-10-18 23:45:59,251.251 INFO    ] 2026-10-18 23:45:59
[2026-10-18 23:45:59,567.567 INFO    ] 2026-10-18 23:45:59
[2026-10-18 23:45:59,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:45:59,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:45:59,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:46:00,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:46:00,092.092 INFO    ] time= 18/10/2026 23:46:00
[2026-10-18 23:46:00,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:46:00,142.142 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:46:00,251.251 INFO    ] No existing commands found in stream
[2026-10-18 23:46:05,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:46:05,276.276 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-18 23:46:08,441.441 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:46:08,445.445 INFO    ] Checking for system updates...
[2026-10-18 23:46:08,491.491 INFO    ] 200
[2026-10-18 23:46:08,495.495 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:46:08,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:46:08,551.551 INFO    ] No update needed
[2026-10-18 23:46:08,553.553 INFO    ] Checking for camera pi updates...
[2026-10-18 23:46:08,591.591 INFO    ] 200
[2026-10-18 23:46:08,593.593 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:46:08,638.638 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:46:08,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:46:08,681.681 INFO    ] No camera update needed
[2026-10-18 23:46:08,683.683 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:46:08,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:46:08,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:46:08,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:46:10,736.736 INFO    ] ================================================
[2026-10-18 23:46:10,751.751 INFO    ] Launching Daemon at Sun Oct 18 23:46:10 IST 2026
[2026-10-18 23:46:10,761.761 INFO    ] ================================================
[2026-10-18 23:46:11,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:46:11
[2026-10-18 23:46:11,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:46:12,226.226 INFO    ] Initializing speech engine...
[2026-10-18 23:46:12,235.235 INFO    ] 2026-10-18 23:46:12
[2026-10-18 23:46:12,490.490 INFO    ] 2026-10-18 23:46:12
[2026-10-18 23:46:12,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:46:12,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:46:12,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:46:13,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:46:13,039.039 INFO    ] time= 18/10/2026 23:46:13
[2026-10-18 23:46:13,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:46:13,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:46:13,216.216 INFO    ] No existing commands found in stream
[2026-10-18 23:46:18,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:46:18,255.255 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-18 23:46:19,857.857 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:46:19,860.860 INFO    ] Checking for system updates...
[2026-10-18 23:46:19,895.895 INFO    ] 200
[2026-10-18 23:46:19,898.898 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:46:19,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:46:19,953.953 INFO    ] No update needed
[2026-10-18 23:46:19,955.955 INFO    ] Checking for camera pi updates...
[2026-10-18 23:46:19,988.988 INFO    ] 200
[2026-10-18 23:46:19,990.990 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:46:20,042.042 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:46:20,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:46:20,086.086 INFO    ] No camera update needed
[2026-10-18 23:46:20,089.089 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:46:20,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:46:20,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:46:20,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:46:22,143.143 INFO    ] ================================================
[2026-10-18 23:46:22,158.158 INFO    ] Launching Daemon at Sun Oct 18 23:46:22 IST 2026
[2026-10-18 23:46:22,169.169 INFO    ] ================================================
[2026-10-18 23:46:22,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:46:22
[2026-10-18 23:46:23,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:46:23,587.587 INFO    ] Initializing speech engine...
[2026-10-18 23:46:23,595.595 INFO    ] 2026-10-18 23:46:23
[2026-10-18 23:46:23,843.843 INFO    ] 2026-10-18 23:46:23
[2026-10-18 23:46:23,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:46:24,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:46:24,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:46:24,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:46:24,339.339 INFO    ] time= 18/10/2026 23:46:24
[2026-10-18 23:46:24,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:46:24,412.412 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:46:24,547.547 INFO    ] No existing commands found in stream
[2026-10-18 23:46:29,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:46:29,571.571 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-18 23:46:31,335.335 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:46:31,337.337 INFO    ] Checking for system updates...
[2026-10-18 23:46:31,373.373 INFO    ] 200
[2026-10-18 23:46:31,375.375 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:46:31,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:46:31,436.436 INFO    ] No update needed
[2026-10-18 23:46:31,438.438 INFO    ] Checking for camera pi updates...
[2026-10-18 23:46:31,471.471 INFO    ] 200
[2026-10-18 23:46:31,473.473 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:46:31,517.517 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:46:31,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:46:31,566.566 INFO    ] No camera update needed
[2026-10-18 23:46:31,568.568 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:46:31,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:46:31,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:46:31,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:46:33,633.633 INFO    ] ================================================
[2026-10-18 23:46:33,648.648 INFO    ] Launching Daemon at Sun Oct 18 23:46:33 IST 2026
[2026-10-18 23:46:33,659.659 INFO    ] ================================================
[2026-10-18 23:46:34,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:46:34
[2026-10-18 23:46:34,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:46:35,098.098 INFO    ] Initializing speech engine...
[2026-10-18 23:46:35,111.111 INFO    ] 2026-10-18 23:46:35
[2026-10-18 23:46:35,377.377 INFO    ] 2026-10-18 23:46:35
[2026-10-18 23:46:35,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:46:35,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:46:35,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:46:35,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:46:35,938.938 INFO    ] time= 18/10/2026 23:46:35
[2026-10-18 23:46:35,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:46:35,961.961 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:46:36,079.079 INFO    ] No existing commands found in stream
[2026-10-18 23:46:41,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:46:41,105.105 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-18 23:46:44,353.353 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:46:44,356.356 INFO    ] Checking for system updates...
[2026-10-18 23:46:44,394.394 INFO    ] 200
[2026-10-18 23:46:44,397.397 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:46:44,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:46:44,461.461 INFO    ] No update needed
[2026-10-18 23:46:44,464.464 INFO    ] Checking for camera pi updates...
[2026-10-18 23:46:44,503.503 INFO    ] 200
[2026-10-18 23:46:44,506.506 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:46:44,546.546 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:46:44,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:46:44,595.595 INFO    ] No camera update needed
[2026-10-18 23:46:44,597.597 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:46:44,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:46:44,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:46:44,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:46:46,658.658 INFO    ] ================================================
[2026-10-18 23:46:46,673.673 INFO    ] Launching Daemon at Sun Oct 18 23:46:46 IST 2026
[2026-10-18 23:46:46,683.683 INFO    ] ================================================
[2026-10-18 23:46:47,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:46:47
[2026-10-18 23:46:47,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:46:48,110.110 INFO    ] Initializing speech engine...
[2026-10-18 23:46:48,119.119 INFO    ] 2026-10-18 23:46:48
[2026-10-18 23:46:48,378.378 INFO    ] 2026-10-18 23:46:48
[2026-10-18 23:46:48,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:46:48,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:46:48,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:46:48,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:46:48,937.937 INFO    ] time= 18/10/2026 23:46:48
[2026-10-18 23:46:48,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:46:48,962.962 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:46:49,097.097 INFO    ] No existing commands found in stream
[2026-10-18 23:46:54,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:46:54,111.111 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-18 23:46:58,530.530 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:46:58,533.533 INFO    ] Checking for system updates...
[2026-10-18 23:46:58,568.568 INFO    ] 200
[2026-10-18 23:46:58,571.571 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:46:58,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:46:58,628.628 INFO    ] No update needed
[2026-10-18 23:46:58,631.631 INFO    ] Checking for camera pi updates...
[2026-10-18 23:46:58,665.665 INFO    ] 200
[2026-10-18 23:46:58,668.668 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:46:58,719.719 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:46:58,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:46:58,862.862 INFO    ] No camera update needed
[2026-10-18 23:46:58,865.865 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:46:58,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:46:58,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:46:58,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:47:00,922.922 INFO    ] ================================================
[2026-10-18 23:47:00,938.938 INFO    ] Launching Daemon at Sun Oct 18 23:47:00 IST 2026
[2026-10-18 23:47:00,949.949 INFO    ] ================================================
[2026-10-18 23:47:01,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:47:01
[2026-10-18 23:47:02,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:47:02,709.709 INFO    ] Initializing speech engine...
[2026-10-18 23:47:02,720.720 INFO    ] 2026-10-18 23:47:02
[2026-10-18 23:47:03,008.008 INFO    ] 2026-10-18 23:47:03
[2026-10-18 23:47:03,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:47:03,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:47:03,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:47:03,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:47:03,533.533 INFO    ] time= 18/10/2026 23:47:03
[2026-10-18 23:47:03,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:47:03,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:47:03,753.753 INFO    ] No existing commands found in stream
[2026-10-18 23:47:08,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:47:08,764.764 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-18 23:47:11,820.820 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:47:11,823.823 INFO    ] Checking for system updates...
[2026-10-18 23:47:11,862.862 INFO    ] 200
[2026-10-18 23:47:11,864.864 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:47:11,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:47:11,918.918 INFO    ] No update needed
[2026-10-18 23:47:11,920.920 INFO    ] Checking for camera pi updates...
[2026-10-18 23:47:11,957.957 INFO    ] 200
[2026-10-18 23:47:11,960.960 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:47:11,999.999 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:47:12,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:47:12,042.042 INFO    ] No camera update needed
[2026-10-18 23:47:12,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:47:12,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:47:12,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:47:12,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:47:14,097.097 INFO    ] ================================================
[2026-10-18 23:47:14,112.112 INFO    ] Launching Daemon at Sun Oct 18 23:47:14 IST 2026
[2026-10-18 23:47:14,123.123 INFO    ] ================================================
[2026-10-18 23:47:14,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:47:14
[2026-10-18 23:47:15,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:47:15,534.534 INFO    ] Initializing speech engine...
[2026-10-18 23:47:15,557.557 INFO    ] 2026-10-18 23:47:15
[2026-10-18 23:47:15,814.814 INFO    ] 2026-10-18 23:47:15
[2026-10-18 23:47:15,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:47:16,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:47:16,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:47:16,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:47:16,381.381 INFO    ] time= 18/10/2026 23:47:16
[2026-10-18 23:47:16,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:47:16,406.406 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:47:16,542.542 INFO    ] No existing commands found in stream
[2026-10-18 23:47:21,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:47:21,560.560 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-18 23:47:24,138.138 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:47:24,141.141 INFO    ] Checking for system updates...
[2026-10-18 23:47:24,179.179 INFO    ] 200
[2026-10-18 23:47:24,182.182 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:47:24,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:47:24,245.245 INFO    ] No update needed
[2026-10-18 23:47:24,248.248 INFO    ] Checking for camera pi updates...
[2026-10-18 23:47:24,284.284 INFO    ] 200
[2026-10-18 23:47:24,286.286 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:47:24,328.328 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:47:24,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:47:24,372.372 INFO    ] No camera update needed
[2026-10-18 23:47:24,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:47:24,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:47:24,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:47:24,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:47:26,430.430 INFO    ] ================================================
[2026-10-18 23:47:26,445.445 INFO    ] Launching Daemon at Sun Oct 18 23:47:26 IST 2026
[2026-10-18 23:47:26,456.456 INFO    ] ================================================
[2026-10-18 23:47:27,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:47:27
[2026-10-18 23:47:27,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:47:27,894.894 INFO    ] Initializing speech engine...
[2026-10-18 23:47:27,914.914 INFO    ] 2026-10-18 23:47:27
[2026-10-18 23:47:28,172.172 INFO    ] 2026-10-18 23:47:28
[2026-10-18 23:47:28,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:47:28,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:47:28,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:47:28,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:47:28,639.639 INFO    ] time= 18/10/2026 23:47:28
[2026-10-18 23:47:28,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:47:28,747.747 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:47:28,904.904 INFO    ] No existing commands found in stream
[2026-10-18 23:47:33,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:47:33,922.922 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-18 23:47:37,070.070 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:47:37,073.073 INFO    ] Checking for system updates...
[2026-10-18 23:47:37,110.110 INFO    ] 200
[2026-10-18 23:47:37,112.112 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:47:37,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:47:37,168.168 INFO    ] No update needed
[2026-10-18 23:47:37,171.171 INFO    ] Checking for camera pi updates...
[2026-10-18 23:47:37,210.210 INFO    ] 200
[2026-10-18 23:47:37,213.213 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:47:37,256.256 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:47:37,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:47:37,300.300 INFO    ] No camera update needed
[2026-10-18 23:47:37,303.303 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:47:37,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:47:37,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:47:37,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:47:39,360.360 INFO    ] ================================================
[2026-10-18 23:47:39,376.376 INFO    ] Launching Daemon at Sun Oct 18 23:47:39 IST 2026
[2026-10-18 23:47:39,389.389 INFO    ] ================================================
[2026-10-18 23:47:39,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:47:39
[2026-10-18 23:47:40,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:47:40,843.843 INFO    ] Initializing speech engine...
[2026-10-18 23:47:40,852.852 INFO    ] 2026-10-18 23:47:40
[2026-10-18 23:47:41,107.107 INFO    ] 2026-10-18 23:47:41
[2026-10-18 23:47:41,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:47:41,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:47:41,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:47:41,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:47:41,658.658 INFO    ] time= 18/10/2026 23:47:41
[2026-10-18 23:47:41,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:47:41,682.682 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:47:41,810.810 INFO    ] No existing commands found in stream
[2026-10-18 23:47:46,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:47:46,833.833 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-18 23:47:48,987.987 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:47:48,990.990 INFO    ] Checking for system updates...
[2026-10-18 23:47:49,026.026 INFO    ] 200
[2026-10-18 23:47:49,029.029 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:47:49,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:47:49,085.085 INFO    ] No update needed
[2026-10-18 23:47:49,087.087 INFO    ] Checking for camera pi updates...
[2026-10-18 23:47:49,121.121 INFO    ] 200
[2026-10-18 23:47:49,124.124 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:47:49,163.163 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:47:49,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:47:49,207.207 INFO    ] No camera update needed
[2026-10-18 23:47:49,209.209 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:47:49,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:47:49,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:47:49,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:47:51,261.261 INFO    ] ================================================
[2026-10-18 23:47:51,277.277 INFO    ] Launching Daemon at Sun Oct 18 23:47:51 IST 2026
[2026-10-18 23:47:51,288.288 INFO    ] ================================================
[2026-10-18 23:47:51,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:47:51
[2026-10-18 23:47:52,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:47:52,693.693 INFO    ] Initializing speech engine...
[2026-10-18 23:47:52,716.716 INFO    ] 2026-10-18 23:47:52
[2026-10-18 23:47:52,972.972 INFO    ] 2026-10-18 23:47:52
[2026-10-18 23:47:53,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:47:53,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:47:53,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:47:53,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:47:53,449.449 INFO    ] time= 18/10/2026 23:47:53
[2026-10-18 23:47:53,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:47:53,547.547 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:47:53,677.677 INFO    ] No existing commands found in stream
[2026-10-18 23:47:58,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:47:58,705.705 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-18 23:47:59,632.632 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:47:59,635.635 INFO    ] Checking for system updates...
[2026-10-18 23:47:59,671.671 INFO    ] 200
[2026-10-18 23:47:59,673.673 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:47:59,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:47:59,739.739 INFO    ] No update needed
[2026-10-18 23:47:59,742.742 INFO    ] Checking for camera pi updates...
[2026-10-18 23:47:59,774.774 INFO    ] 200
[2026-10-18 23:47:59,777.777 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:47:59,818.818 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:47:59,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:47:59,863.863 INFO    ] No camera update needed
[2026-10-18 23:47:59,865.865 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:47:59,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:47:59,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:47:59,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:48:01,934.934 INFO    ] ================================================
[2026-10-18 23:48:01,966.966 INFO    ] Launching Daemon at Sun Oct 18 23:48:01 IST 2026
[2026-10-18 23:48:02,991.991 INFO    ] ================================================
[2026-10-18 23:48:02,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:48:02
[2026-10-18 23:48:03,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:48:03,851.851 INFO    ] Initializing speech engine...
[2026-10-18 23:48:03,857.857 INFO    ] 2026-10-18 23:48:03
[2026-10-18 23:48:04,142.142 INFO    ] 2026-10-18 23:48:04
[2026-10-18 23:48:04,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:48:04,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:48:04,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:48:04,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:48:04,653.653 INFO    ] time= 18/10/2026 23:48:04
[2026-10-18 23:48:04,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:48:04,725.725 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:48:04,871.871 INFO    ] No existing commands found in stream
[2026-10-18 23:48:09,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:48:09,891.891 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-18 23:48:11,483.483 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:48:11,486.486 INFO    ] Checking for system updates...
[2026-10-18 23:48:11,546.546 INFO    ] 200
[2026-10-18 23:48:11,549.549 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:48:11,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:48:11,605.605 INFO    ] No update needed
[2026-10-18 23:48:11,607.607 INFO    ] Checking for camera pi updates...
[2026-10-18 23:48:11,646.646 INFO    ] 200
[2026-10-18 23:48:11,648.648 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:48:11,693.693 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:48:11,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:48:11,739.739 INFO    ] No camera update needed
[2026-10-18 23:48:11,742.742 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:48:11,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:48:11,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:48:11,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:48:13,796.796 INFO    ] ================================================
[2026-10-18 23:48:13,811.811 INFO    ] Launching Daemon at Sun Oct 18 23:48:13 IST 2026
[2026-10-18 23:48:13,822.822 INFO    ] ================================================
[2026-10-18 23:48:14,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:48:14
[2026-10-18 23:48:15,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:48:15,455.455 INFO    ] Initializing speech engine...
[2026-10-18 23:48:15,467.467 INFO    ] 2026-10-18 23:48:15
[2026-10-18 23:48:15,742.742 INFO    ] 2026-10-18 23:48:15
[2026-10-18 23:48:15,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:48:16,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:48:16,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:48:16,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:48:16,268.268 INFO    ] time= 18/10/2026 23:48:16
[2026-10-18 23:48:16,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:48:16,291.291 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:48:16,418.418 INFO    ] No existing commands found in stream
[2026-10-18 23:48:21,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:48:21,435.435 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-18 23:48:23,863.863 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:48:23,866.866 INFO    ] Checking for system updates...
[2026-10-18 23:48:23,905.905 INFO    ] 200
[2026-10-18 23:48:23,908.908 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:48:23,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:48:23,990.990 INFO    ] No update needed
[2026-10-18 23:48:23,993.993 INFO    ] Checking for camera pi updates...
[2026-10-18 23:48:24,035.035 INFO    ] 200
[2026-10-18 23:48:24,038.038 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:48:24,098.098 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:48:24,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:48:24,143.143 INFO    ] No camera update needed
[2026-10-18 23:48:24,145.145 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:48:24,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:48:24,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:48:24,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:48:26,200.200 INFO    ] ================================================
[2026-10-18 23:48:26,215.215 INFO    ] Launching Daemon at Sun Oct 18 23:48:26 IST 2026
[2026-10-18 23:48:26,226.226 INFO    ] ================================================
[2026-10-18 23:48:26,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:48:26
[2026-10-18 23:48:27,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:48:27,647.647 INFO    ] Initializing speech engine...
[2026-10-18 23:48:27,656.656 INFO    ] 2026-10-18 23:48:27
[2026-10-18 23:48:27,903.903 INFO    ] 2026-10-18 23:48:27
[2026-10-18 23:48:27,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:48:28,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:48:28,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:48:28,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:48:28,441.441 INFO    ] time= 18/10/2026 23:48:28
[2026-10-18 23:48:28,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:48:28,470.470 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:48:28,600.600 INFO    ] No existing commands found in stream
[2026-10-18 23:48:33,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:48:33,623.623 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-18 23:48:35,052.052 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:48:35,055.055 INFO    ] Checking for system updates...
[2026-10-18 23:48:35,090.090 INFO    ] 200
[2026-10-18 23:48:35,092.092 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:48:35,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:48:35,147.147 INFO    ] No update needed
[2026-10-18 23:48:35,149.149 INFO    ] Checking for camera pi updates...
[2026-10-18 23:48:35,183.183 INFO    ] 200
[2026-10-18 23:48:35,185.185 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:48:35,224.224 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:48:35,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:48:35,267.267 INFO    ] No camera update needed
[2026-10-18 23:48:35,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:48:35,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:48:35,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:48:35,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:48:37,321.321 INFO    ] ================================================
[2026-10-18 23:48:37,336.336 INFO    ] Launching Daemon at Sun Oct 18 23:48:37 IST 2026
[2026-10-18 23:48:37,347.347 INFO    ] ================================================
[2026-10-18 23:48:37,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:48:37
[2026-10-18 23:48:38,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:48:38,774.774 INFO    ] Initializing speech engine...
[2026-10-18 23:48:38,783.783 INFO    ] 2026-10-18 23:48:38
[2026-10-18 23:48:39,023.023 INFO    ] 2026-10-18 23:48:39
[2026-10-18 23:48:39,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:48:39,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:48:39,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:48:39,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:48:39,579.579 INFO    ] time= 18/10/2026 23:48:39
[2026-10-18 23:48:39,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:48:39,605.605 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:48:39,732.732 INFO    ] No existing commands found in stream
[2026-10-18 23:48:44,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:48:44,748.748 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-18 23:48:49,065.065 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:48:49,068.068 INFO    ] Checking for system updates...
[2026-10-18 23:48:49,104.104 INFO    ] 200
[2026-10-18 23:48:49,107.107 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:48:49,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:48:49,172.172 INFO    ] No update needed
[2026-10-18 23:48:49,174.174 INFO    ] Checking for camera pi updates...
[2026-10-18 23:48:49,216.216 INFO    ] 200
[2026-10-18 23:48:49,219.219 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:48:49,265.265 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:48:49,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:48:49,309.309 INFO    ] No camera update needed
[2026-10-18 23:48:49,312.312 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:48:49,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:48:49,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:48:49,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:48:51,368.368 INFO    ] ================================================
[2026-10-18 23:48:51,384.384 INFO    ] Launching Daemon at Sun Oct 18 23:48:51 IST 2026
[2026-10-18 23:48:51,394.394 INFO    ] ================================================
[2026-10-18 23:48:51,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:48:51
[2026-10-18 23:48:52,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:48:52,841.841 INFO    ] Initializing speech engine...
[2026-10-18 23:48:52,850.850 INFO    ] 2026-10-18 23:48:52
[2026-10-18 23:48:53,099.099 INFO    ] 2026-10-18 23:48:53
[2026-10-18 23:48:53,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:48:53,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:48:53,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:48:53,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:48:53,664.664 INFO    ] time= 18/10/2026 23:48:53
[2026-10-18 23:48:53,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:48:53,687.687 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:48:53,826.826 INFO    ] No existing commands found in stream
[2026-10-18 23:48:58,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:48:58,862.862 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-18 23:49:02,665.665 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:49:02,668.668 INFO    ] Checking for system updates...
[2026-10-18 23:49:02,718.718 INFO    ] 200
[2026-10-18 23:49:02,721.721 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:49:02,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:49:02,794.794 INFO    ] No update needed
[2026-10-18 23:49:02,797.797 INFO    ] Checking for camera pi updates...
[2026-10-18 23:49:02,841.841 INFO    ] 200
[2026-10-18 23:49:02,844.844 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:49:02,896.896 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:49:02,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:49:02,940.940 INFO    ] No camera update needed
[2026-10-18 23:49:02,943.943 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:49:02,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:49:02,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:49:02,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:49:05,000.000 INFO    ] ================================================
[2026-10-18 23:49:05,015.015 INFO    ] Launching Daemon at Sun Oct 18 23:49:05 IST 2026
[2026-10-18 23:49:05,025.025 INFO    ] ================================================
[2026-10-18 23:49:05,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:49:05
[2026-10-18 23:49:06,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:49:06,442.442 INFO    ] Initializing speech engine...
[2026-10-18 23:49:06,454.454 INFO    ] 2026-10-18 23:49:06
[2026-10-18 23:49:06,738.738 INFO    ] 2026-10-18 23:49:06
[2026-10-18 23:49:06,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:49:06,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:49:06,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:49:07,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:49:07,247.247 INFO    ] time= 18/10/2026 23:49:07
[2026-10-18 23:49:07,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:49:07,317.317 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:49:07,450.450 INFO    ] No existing commands found in stream
[2026-10-18 23:49:12,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:49:12,477.477 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-18 23:49:14,537.537 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:49:14,540.540 INFO    ] Checking for system updates...
[2026-10-18 23:49:14,574.574 INFO    ] 200
[2026-10-18 23:49:14,577.577 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:49:14,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:49:14,632.632 INFO    ] No update needed
[2026-10-18 23:49:14,634.634 INFO    ] Checking for camera pi updates...
[2026-10-18 23:49:14,667.667 INFO    ] 200
[2026-10-18 23:49:14,670.670 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:49:14,710.710 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:49:14,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:49:14,754.754 INFO    ] No camera update needed
[2026-10-18 23:49:14,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:49:14,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:49:14,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:49:14,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:49:16,811.811 INFO    ] ================================================
[2026-10-18 23:49:16,826.826 INFO    ] Launching Daemon at Sun Oct 18 23:49:16 IST 2026
[2026-10-18 23:49:16,843.843 INFO    ] ================================================
[2026-10-18 23:49:17,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:49:17
[2026-10-18 23:49:17,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:49:18,277.277 INFO    ] Initializing speech engine...
[2026-10-18 23:49:18,287.287 INFO    ] 2026-10-18 23:49:18
[2026-10-18 23:49:18,567.567 INFO    ] 2026-10-18 23:49:18
[2026-10-18 23:49:18,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:49:18,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:49:18,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:49:18,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:49:18,979.979 INFO    ] time= 18/10/2026 23:49:18
[2026-10-18 23:49:18,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:49:19,042.042 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:49:19,182.182 INFO    ] No existing commands found in stream
[2026-10-18 23:49:24,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:49:24,204.204 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-18 23:49:24,965.965 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:49:24,968.968 INFO    ] Checking for system updates...
[2026-10-18 23:49:25,006.006 INFO    ] 200
[2026-10-18 23:49:25,008.008 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:49:25,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:49:25,072.072 INFO    ] No update needed
[2026-10-18 23:49:25,074.074 INFO    ] Checking for camera pi updates...
[2026-10-18 23:49:25,110.110 INFO    ] 200
[2026-10-18 23:49:25,112.112 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:49:25,155.155 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:49:25,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:49:25,199.199 INFO    ] No camera update needed
[2026-10-18 23:49:25,202.202 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:49:25,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:49:25,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:49:25,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:49:27,258.258 INFO    ] ================================================
[2026-10-18 23:49:27,274.274 INFO    ] Launching Daemon at Sun Oct 18 23:49:27 IST 2026
[2026-10-18 23:49:27,286.286 INFO    ] ================================================
[2026-10-18 23:49:27,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:49:27
[2026-10-18 23:49:28,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:49:28,934.934 INFO    ] Initializing speech engine...
[2026-10-18 23:49:28,947.947 INFO    ] 2026-10-18 23:49:28
[2026-10-18 23:49:29,237.237 INFO    ] 2026-10-18 23:49:29
[2026-10-18 23:49:29,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:49:29,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:49:29,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:49:29,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:49:29,726.726 INFO    ] time= 18/10/2026 23:49:29
[2026-10-18 23:49:29,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:49:29,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:49:29,907.907 INFO    ] No existing commands found in stream
[2026-10-18 23:49:34,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:49:34,926.926 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-18 23:49:37,107.107 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:49:37,109.109 INFO    ] Checking for system updates...
[2026-10-18 23:49:37,145.145 INFO    ] 200
[2026-10-18 23:49:37,147.147 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:49:37,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:49:37,208.208 INFO    ] No update needed
[2026-10-18 23:49:37,211.211 INFO    ] Checking for camera pi updates...
[2026-10-18 23:49:37,244.244 INFO    ] 200
[2026-10-18 23:49:37,247.247 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:49:37,295.295 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:49:37,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:49:37,343.343 INFO    ] No camera update needed
[2026-10-18 23:49:37,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:49:37,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:49:37,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:49:37,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:49:39,398.398 INFO    ] ================================================
[2026-10-18 23:49:39,414.414 INFO    ] Launching Daemon at Sun Oct 18 23:49:39 IST 2026
[2026-10-18 23:49:39,425.425 INFO    ] ================================================
[2026-10-18 23:49:39,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:49:39
[2026-10-18 23:49:40,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:49:40,820.820 INFO    ] Initializing speech engine...
[2026-10-18 23:49:40,832.832 INFO    ] 2026-10-18 23:49:40
[2026-10-18 23:49:41,099.099 INFO    ] 2026-10-18 23:49:41
[2026-10-18 23:49:41,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:49:41,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:49:41,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:49:41,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:49:41,663.663 INFO    ] time= 18/10/2026 23:49:41
[2026-10-18 23:49:41,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:49:41,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:49:41,812.812 INFO    ] No existing commands found in stream
[2026-10-18 23:49:46,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:49:46,840.840 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-18 23:49:49,450.450 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:49:49,453.453 INFO    ] Checking for system updates...
[2026-10-18 23:49:49,487.487 INFO    ] 200
[2026-10-18 23:49:49,490.490 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:49:49,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:49:49,547.547 INFO    ] No update needed
[2026-10-18 23:49:49,549.549 INFO    ] Checking for camera pi updates...
[2026-10-18 23:49:49,586.586 INFO    ] 200
[2026-10-18 23:49:49,588.588 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:49:49,628.628 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:49:49,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:49:49,670.670 INFO    ] No camera update needed
[2026-10-18 23:49:49,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:49:49,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:49:49,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:49:49,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:49:51,725.725 INFO    ] ================================================
[2026-10-18 23:49:51,741.741 INFO    ] Launching Daemon at Sun Oct 18 23:49:51 IST 2026
[2026-10-18 23:49:51,753.753 INFO    ] ================================================
[2026-10-18 23:49:52,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:49:52
[2026-10-18 23:49:52,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:49:53,188.188 INFO    ] Initializing speech engine...
[2026-10-18 23:49:53,197.197 INFO    ] 2026-10-18 23:49:53
[2026-10-18 23:49:53,454.454 INFO    ] 2026-10-18 23:49:53
[2026-10-18 23:49:53,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:49:53,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:49:53,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:49:53,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:49:53,886.886 INFO    ] time= 18/10/2026 23:49:53
[2026-10-18 23:49:53,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:49:53,960.960 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:49:54,088.088 INFO    ] No existing commands found in stream
[2026-10-18 23:49:59,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:49:59,114.114 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-18 23:50:02,783.783 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:50:02,786.786 INFO    ] Checking for system updates...
[2026-10-18 23:50:02,864.864 INFO    ] 200
[2026-10-18 23:50:02,867.867 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:50:03,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:50:03,027.027 INFO    ] No update needed
[2026-10-18 23:50:03,031.031 INFO    ] Checking for camera pi updates...
[2026-10-18 23:50:03,114.114 INFO    ] 200
[2026-10-18 23:50:03,118.118 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:50:03,180.180 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:50:03,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:50:03,217.217 INFO    ] No camera update needed
[2026-10-18 23:50:03,221.221 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:50:03,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:50:03,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:50:03,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:50:05,287.287 INFO    ] ================================================
[2026-10-18 23:50:05,303.303 INFO    ] Launching Daemon at Sun Oct 18 23:50:05 IST 2026
[2026-10-18 23:50:05,315.315 INFO    ] ================================================
[2026-10-18 23:50:05,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:50:05
[2026-10-18 23:50:06,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:50:06,742.742 INFO    ] Initializing speech engine...
[2026-10-18 23:50:06,752.752 INFO    ] 2026-10-18 23:50:06
[2026-10-18 23:50:07,010.010 INFO    ] 2026-10-18 23:50:06
[2026-10-18 23:50:07,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:50:07,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:50:07,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:50:07,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:50:07,576.576 INFO    ] time= 18/10/2026 23:50:07
[2026-10-18 23:50:07,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:50:07,603.603 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:50:07,736.736 INFO    ] No existing commands found in stream
[2026-10-18 23:50:12,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:50:12,752.752 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-18 23:50:17,143.143 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:50:17,145.145 INFO    ] Checking for system updates...
[2026-10-18 23:50:17,180.180 INFO    ] 200
[2026-10-18 23:50:17,183.183 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:50:17,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:50:17,236.236 INFO    ] No update needed
[2026-10-18 23:50:17,238.238 INFO    ] Checking for camera pi updates...
[2026-10-18 23:50:17,271.271 INFO    ] 200
[2026-10-18 23:50:17,274.274 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:50:17,313.313 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:50:17,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:50:17,356.356 INFO    ] No camera update needed
[2026-10-18 23:50:17,358.358 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:50:17,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:50:17,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:50:17,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:50:19,416.416 INFO    ] ================================================
[2026-10-18 23:50:19,432.432 INFO    ] Launching Daemon at Sun Oct 18 23:50:19 IST 2026
[2026-10-18 23:50:19,443.443 INFO    ] ================================================
[2026-10-18 23:50:20,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:50:20
[2026-10-18 23:50:20,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:50:20,936.936 INFO    ] Initializing speech engine...
[2026-10-18 23:50:20,946.946 INFO    ] 2026-10-18 23:50:20
[2026-10-18 23:50:21,208.208 INFO    ] 2026-10-18 23:50:21
[2026-10-18 23:50:21,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:50:21,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:50:21,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:50:21,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:50:21,711.711 INFO    ] time= 18/10/2026 23:50:21
[2026-10-18 23:50:21,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:50:21,780.780 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:50:21,927.927 INFO    ] No existing commands found in stream
[2026-10-18 23:50:26,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:50:26,946.946 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-18 23:50:28,558.558 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:50:28,560.560 INFO    ] Checking for system updates...
[2026-10-18 23:50:28,596.596 INFO    ] 200
[2026-10-18 23:50:28,598.598 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:50:28,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:50:28,652.652 INFO    ] No update needed
[2026-10-18 23:50:28,654.654 INFO    ] Checking for camera pi updates...
[2026-10-18 23:50:28,692.692 INFO    ] 200
[2026-10-18 23:50:28,694.694 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:50:28,735.735 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:50:28,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:50:28,779.779 INFO    ] No camera update needed
[2026-10-18 23:50:28,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:50:28,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:50:28,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:50:28,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:50:30,833.833 INFO    ] ================================================
[2026-10-18 23:50:30,849.849 INFO    ] Launching Daemon at Sun Oct 18 23:50:30 IST 2026
[2026-10-18 23:50:30,861.861 INFO    ] ================================================
[2026-10-18 23:50:31,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:50:31
[2026-10-18 23:50:32,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:50:32,358.358 INFO    ] Initializing speech engine...
[2026-10-18 23:50:32,371.371 INFO    ] 2026-10-18 23:50:32
[2026-10-18 23:50:32,656.656 INFO    ] 2026-10-18 23:50:32
[2026-10-18 23:50:32,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:50:32,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:50:32,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:50:33,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:50:33,205.205 INFO    ] time= 18/10/2026 23:50:33
[2026-10-18 23:50:33,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:50:33,229.229 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:50:33,377.377 INFO    ] No existing commands found in stream
[2026-10-18 23:50:38,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:50:38,412.412 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-18 23:50:38,888.888 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:50:38,891.891 INFO    ] Checking for system updates...
[2026-10-18 23:50:38,926.926 INFO    ] 200
[2026-10-18 23:50:38,929.929 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:50:38,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:50:38,983.983 INFO    ] No update needed
[2026-10-18 23:50:38,985.985 INFO    ] Checking for camera pi updates...
[2026-10-18 23:50:39,018.018 INFO    ] 200
[2026-10-18 23:50:39,021.021 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:50:39,061.061 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:50:39,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:50:39,105.105 INFO    ] No camera update needed
[2026-10-18 23:50:39,107.107 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:50:39,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:50:39,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:50:39,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:50:41,159.159 INFO    ] ================================================
[2026-10-18 23:50:41,174.174 INFO    ] Launching Daemon at Sun Oct 18 23:50:41 IST 2026
[2026-10-18 23:50:41,185.185 INFO    ] ================================================
[2026-10-18 23:50:41,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:50:41
[2026-10-18 23:50:42,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:50:42,600.600 INFO    ] Initializing speech engine...
[2026-10-18 23:50:42,606.606 INFO    ] 2026-10-18 23:50:42
[2026-10-18 23:50:42,896.896 INFO    ] 2026-10-18 23:50:42
[2026-10-18 23:50:42,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:50:43,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:50:43,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:50:43,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:50:43,431.431 INFO    ] time= 18/10/2026 23:50:43
[2026-10-18 23:50:43,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:50:43,494.494 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:50:43,643.643 INFO    ] No existing commands found in stream
[2026-10-18 23:50:48,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:50:48,663.663 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-18 23:50:50,887.887 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:50:50,890.890 INFO    ] Checking for system updates...
[2026-10-18 23:50:50,929.929 INFO    ] 200
[2026-10-18 23:50:50,932.932 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:50:50,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:50:50,987.987 INFO    ] No update needed
[2026-10-18 23:50:50,990.990 INFO    ] Checking for camera pi updates...
[2026-10-18 23:50:51,027.027 INFO    ] 200
[2026-10-18 23:50:51,030.030 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:50:51,073.073 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:50:51,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:50:51,117.117 INFO    ] No camera update needed
[2026-10-18 23:50:51,120.120 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:50:51,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:50:51,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:50:51,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:50:53,173.173 INFO    ] ================================================
[2026-10-18 23:50:53,189.189 INFO    ] Launching Daemon at Sun Oct 18 23:50:53 IST 2026
[2026-10-18 23:50:53,201.201 INFO    ] ================================================
[2026-10-18 23:50:53,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:50:53
[2026-10-18 23:50:54,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:50:54,651.651 INFO    ] Initializing speech engine...
[2026-10-18 23:50:54,660.660 INFO    ] 2026-10-18 23:50:54
[2026-10-18 23:50:54,931.931 INFO    ] 2026-10-18 23:50:54
[2026-10-18 23:50:54,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:50:55,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:50:55,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:50:55,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:50:55,483.483 INFO    ] time= 18/10/2026 23:50:55
[2026-10-18 23:50:55,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:50:55,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:50:55,655.655 INFO    ] No existing commands found in stream
[2026-10-18 23:51:00,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:51:00,680.680 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-18 23:51:03,104.104 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:51:03,107.107 INFO    ] Checking for system updates...
[2026-10-18 23:51:03,161.161 INFO    ] 200
[2026-10-18 23:51:03,163.163 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:51:03,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:51:03,232.232 INFO    ] No update needed
[2026-10-18 23:51:03,236.236 INFO    ] Checking for camera pi updates...
[2026-10-18 23:51:03,288.288 INFO    ] 200
[2026-10-18 23:51:03,292.292 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:51:03,335.335 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:51:03,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:51:03,387.387 INFO    ] No camera update needed
[2026-10-18 23:51:03,390.390 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:51:03,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:51:03,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:51:03,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:51:05,446.446 INFO    ] ================================================
[2026-10-18 23:51:05,462.462 INFO    ] Launching Daemon at Sun Oct 18 23:51:05 IST 2026
[2026-10-18 23:51:05,472.472 INFO    ] ================================================
[2026-10-18 23:51:06,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:51:06
[2026-10-18 23:51:06,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:51:06,950.950 INFO    ] Initializing speech engine...
[2026-10-18 23:51:06,965.965 INFO    ] 2026-10-18 23:51:06
[2026-10-18 23:51:07,277.277 INFO    ] 2026-10-18 23:51:07
[2026-10-18 23:51:07,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:51:07,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:51:07,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:51:07,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:51:07,776.776 INFO    ] time= 18/10/2026 23:51:07
[2026-10-18 23:51:07,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:51:07,849.849 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:51:07,936.936 INFO    ] No existing commands found in stream
[2026-10-18 23:51:12,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:51:12,948.948 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-18 23:51:14,088.088 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:51:14,091.091 INFO    ] Checking for system updates...
[2026-10-18 23:51:14,125.125 INFO    ] 200
[2026-10-18 23:51:14,128.128 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:51:14,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:51:14,188.188 INFO    ] No update needed
[2026-10-18 23:51:14,190.190 INFO    ] Checking for camera pi updates...
[2026-10-18 23:51:14,224.224 INFO    ] 200
[2026-10-18 23:51:14,226.226 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:51:14,266.266 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:51:14,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:51:14,407.407 INFO    ] No camera update needed
[2026-10-18 23:51:14,410.410 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:51:14,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:51:14,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:51:14,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:51:16,463.463 INFO    ] ================================================
[2026-10-18 23:51:16,478.478 INFO    ] Launching Daemon at Sun Oct 18 23:51:16 IST 2026
[2026-10-18 23:51:16,489.489 INFO    ] ================================================
[2026-10-18 23:51:17,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:51:17
[2026-10-18 23:51:17,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:51:17,964.964 INFO    ] Initializing speech engine...
[2026-10-18 23:51:17,984.984 INFO    ] 2026-10-18 23:51:17
[2026-10-18 23:51:18,243.243 INFO    ] 2026-10-18 23:51:18
[2026-10-18 23:51:18,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:51:18,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:51:18,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:51:18,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:51:18,724.724 INFO    ] time= 18/10/2026 23:51:18
[2026-10-18 23:51:18,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:51:18,820.820 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:51:18,951.951 INFO    ] No existing commands found in stream
[2026-10-18 23:51:23,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:51:23,984.984 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-18 23:51:26,645.645 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:51:26,647.647 INFO    ] Checking for system updates...
[2026-10-18 23:51:26,683.683 INFO    ] 200
[2026-10-18 23:51:26,685.685 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:51:26,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:51:26,739.739 INFO    ] No update needed
[2026-10-18 23:51:26,741.741 INFO    ] Checking for camera pi updates...
[2026-10-18 23:51:26,779.779 INFO    ] 200
[2026-10-18 23:51:26,781.781 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:51:26,821.821 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:51:26,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:51:26,864.864 INFO    ] No camera update needed
[2026-10-18 23:51:26,866.866 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:51:26,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:51:26,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:51:26,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:51:28,920.920 INFO    ] ================================================
[2026-10-18 23:51:28,935.935 INFO    ] Launching Daemon at Sun Oct 18 23:51:28 IST 2026
[2026-10-18 23:51:28,946.946 INFO    ] ================================================
[2026-10-18 23:51:29,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:51:29
[2026-10-18 23:51:30,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:51:30,569.569 INFO    ] Initializing speech engine...
[2026-10-18 23:51:30,582.582 INFO    ] 2026-10-18 23:51:30
[2026-10-18 23:51:30,858.858 INFO    ] 2026-10-18 23:51:30
[2026-10-18 23:51:30,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:51:31,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:51:31,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:51:31,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:51:31,414.414 INFO    ] time= 18/10/2026 23:51:31
[2026-10-18 23:51:31,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:51:31,460.460 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:51:31,557.557 INFO    ] No existing commands found in stream
[2026-10-18 23:51:36,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:51:36,588.588 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-18 23:51:41,078.078 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:51:41,080.080 INFO    ] Checking for system updates...
[2026-10-18 23:51:41,115.115 INFO    ] 200
[2026-10-18 23:51:41,118.118 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:51:41,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:51:41,172.172 INFO    ] No update needed
[2026-10-18 23:51:41,174.174 INFO    ] Checking for camera pi updates...
[2026-10-18 23:51:41,213.213 INFO    ] 200
[2026-10-18 23:51:41,215.215 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:51:41,260.260 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:51:41,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:51:41,303.303 INFO    ] No camera update needed
[2026-10-18 23:51:41,306.306 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:51:41,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:51:41,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:51:41,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:51:43,357.357 INFO    ] ================================================
[2026-10-18 23:51:43,372.372 INFO    ] Launching Daemon at Sun Oct 18 23:51:43 IST 2026
[2026-10-18 23:51:43,383.383 INFO    ] ================================================
[2026-10-18 23:51:43,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:51:43
[2026-10-18 23:51:44,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:51:44,846.846 INFO    ] Initializing speech engine...
[2026-10-18 23:51:44,855.855 INFO    ] 2026-10-18 23:51:44
[2026-10-18 23:51:45,154.154 INFO    ] 2026-10-18 23:51:45
[2026-10-18 23:51:45,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:51:45,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:51:45,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:51:45,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:51:45,583.583 INFO    ] time= 18/10/2026 23:51:45
[2026-10-18 23:51:45,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:51:45,594.594 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:51:45,671.671 INFO    ] No existing commands found in stream
[2026-10-18 23:51:50,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:51:50,689.689 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-18 23:51:53,629.629 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:51:53,631.631 INFO    ] Checking for system updates...
[2026-10-18 23:51:53,671.671 INFO    ] 200
[2026-10-18 23:51:53,674.674 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:51:53,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:51:53,729.729 INFO    ] No update needed
[2026-10-18 23:51:53,732.732 INFO    ] Checking for camera pi updates...
[2026-10-18 23:51:53,766.766 INFO    ] 200
[2026-10-18 23:51:53,769.769 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:51:53,814.814 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:51:53,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:51:53,857.857 INFO    ] No camera update needed
[2026-10-18 23:51:53,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:51:53,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:51:53,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:51:53,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:51:55,913.913 INFO    ] ================================================
[2026-10-18 23:51:55,928.928 INFO    ] Launching Daemon at Sun Oct 18 23:51:55 IST 2026
[2026-10-18 23:51:55,939.939 INFO    ] ================================================
[2026-10-18 23:51:56,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:51:56
[2026-10-18 23:51:57,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:51:57,505.505 INFO    ] Initializing speech engine...
[2026-10-18 23:51:57,515.515 INFO    ] 2026-10-18 23:51:57
[2026-10-18 23:51:57,791.791 INFO    ] 2026-10-18 23:51:57
[2026-10-18 23:51:57,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:51:58,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:51:58,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:51:58,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:51:58,355.355 INFO    ] time= 18/10/2026 23:51:58
[2026-10-18 23:51:58,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:51:58,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:51:58,534.534 INFO    ] No existing commands found in stream
[2026-10-18 23:52:03,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:52:03,569.569 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-18 23:52:06,631.631 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:52:06,634.634 INFO    ] Checking for system updates...
[2026-10-18 23:52:06,671.671 INFO    ] 200
[2026-10-18 23:52:06,674.674 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:52:06,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:52:06,736.736 INFO    ] No update needed
[2026-10-18 23:52:06,740.740 INFO    ] Checking for camera pi updates...
[2026-10-18 23:52:06,773.773 INFO    ] 200
[2026-10-18 23:52:06,775.775 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:52:06,815.815 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:52:06,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:52:06,858.858 INFO    ] No camera update needed
[2026-10-18 23:52:06,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:52:06,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:52:06,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:52:06,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:52:08,917.917 INFO    ] ================================================
[2026-10-18 23:52:08,932.932 INFO    ] Launching Daemon at Sun Oct 18 23:52:08 IST 2026
[2026-10-18 23:52:08,943.943 INFO    ] ================================================
[2026-10-18 23:52:09,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:52:09
[2026-10-18 23:52:10,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:52:10,377.377 INFO    ] Initializing speech engine...
[2026-10-18 23:52:10,384.384 INFO    ] 2026-10-18 23:52:10
[2026-10-18 23:52:10,688.688 INFO    ] 2026-10-18 23:52:10
[2026-10-18 23:52:10,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:52:10,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:52:11,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:52:11,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:52:11,220.220 INFO    ] time= 18/10/2026 23:52:11
[2026-10-18 23:52:11,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:52:11,329.329 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:52:11,441.441 INFO    ] No existing commands found in stream
[2026-10-18 23:52:16,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:52:16,475.475 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-18 23:52:18,359.359 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:52:18,362.362 INFO    ] Checking for system updates...
[2026-10-18 23:52:18,398.398 INFO    ] 200
[2026-10-18 23:52:18,401.401 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:52:18,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:52:18,463.463 INFO    ] No update needed
[2026-10-18 23:52:18,465.465 INFO    ] Checking for camera pi updates...
[2026-10-18 23:52:18,503.503 INFO    ] 200
[2026-10-18 23:52:18,505.505 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:52:18,547.547 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:52:18,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:52:18,594.594 INFO    ] No camera update needed
[2026-10-18 23:52:18,597.597 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:52:18,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:52:18,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:52:18,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:52:20,651.651 INFO    ] ================================================
[2026-10-18 23:52:20,666.666 INFO    ] Launching Daemon at Sun Oct 18 23:52:20 IST 2026
[2026-10-18 23:52:20,677.677 INFO    ] ================================================
[2026-10-18 23:52:21,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:52:21
[2026-10-18 23:52:21,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:52:22,139.139 INFO    ] Initializing speech engine...
[2026-10-18 23:52:22,160.160 INFO    ] 2026-10-18 23:52:22
[2026-10-18 23:52:22,440.440 INFO    ] 2026-10-18 23:52:22
[2026-10-18 23:52:22,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:52:22,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:52:22,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:52:22,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:52:22,864.864 INFO    ] time= 18/10/2026 23:52:22
[2026-10-18 23:52:22,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:52:22,876.876 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:52:23,042.042 INFO    ] No existing commands found in stream
[2026-10-18 23:52:28,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:52:28,070.070 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-18 23:52:29,203.203 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:52:29,206.206 INFO    ] Checking for system updates...
[2026-10-18 23:52:29,244.244 INFO    ] 200
[2026-10-18 23:52:29,247.247 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:52:29,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:52:29,309.309 INFO    ] No update needed
[2026-10-18 23:52:29,312.312 INFO    ] Checking for camera pi updates...
[2026-10-18 23:52:29,349.349 INFO    ] 200
[2026-10-18 23:52:29,351.351 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:52:29,391.391 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:52:29,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:52:29,435.435 INFO    ] No camera update needed
[2026-10-18 23:52:29,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:52:29,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:52:29,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:52:29,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:52:31,492.492 INFO    ] ================================================
[2026-10-18 23:52:31,509.509 INFO    ] Launching Daemon at Sun Oct 18 23:52:31 IST 2026
[2026-10-18 23:52:31,521.521 INFO    ] ================================================
[2026-10-18 23:52:32,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:52:32
[2026-10-18 23:52:32,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:52:33,230.230 INFO    ] Initializing speech engine...
[2026-10-18 23:52:33,243.243 INFO    ] 2026-10-18 23:52:33
[2026-10-18 23:52:33,552.552 INFO    ] 2026-10-18 23:52:33
[2026-10-18 23:52:33,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:52:33,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:52:33,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:52:34,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:52:34,059.059 INFO    ] time= 18/10/2026 23:52:34
[2026-10-18 23:52:34,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:52:34,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:52:34,217.217 INFO    ] No existing commands found in stream
[2026-10-18 23:52:39,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:52:39,239.239 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-18 23:52:40,940.940 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:52:40,943.943 INFO    ] Checking for system updates...
[2026-10-18 23:52:40,980.980 INFO    ] 200
[2026-10-18 23:52:40,983.983 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:52:41,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:52:41,037.037 INFO    ] No update needed
[2026-10-18 23:52:41,040.040 INFO    ] Checking for camera pi updates...
[2026-10-18 23:52:41,074.074 INFO    ] 200
[2026-10-18 23:52:41,077.077 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:52:41,117.117 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:52:41,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:52:41,161.161 INFO    ] No camera update needed
[2026-10-18 23:52:41,164.164 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:52:41,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:52:41,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:52:41,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:52:43,220.220 INFO    ] ================================================
[2026-10-18 23:52:43,236.236 INFO    ] Launching Daemon at Sun Oct 18 23:52:43 IST 2026
[2026-10-18 23:52:43,247.247 INFO    ] ================================================
[2026-10-18 23:52:43,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:52:43
[2026-10-18 23:52:44,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:52:44,710.710 INFO    ] Initializing speech engine...
[2026-10-18 23:52:44,719.719 INFO    ] 2026-10-18 23:52:44
[2026-10-18 23:52:44,976.976 INFO    ] 2026-10-18 23:52:44
[2026-10-18 23:52:45,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:52:45,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:52:45,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:52:45,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:52:45,465.465 INFO    ] time= 18/10/2026 23:52:45
[2026-10-18 23:52:45,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:52:45,535.535 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:52:45,681.681 INFO    ] No existing commands found in stream
[2026-10-18 23:52:50,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:52:50,703.703 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-18 23:52:52,774.774 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:52:52,777.777 INFO    ] Checking for system updates...
[2026-10-18 23:52:52,812.812 INFO    ] 200
[2026-10-18 23:52:52,814.814 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:52:52,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:52:52,872.872 INFO    ] No update needed
[2026-10-18 23:52:52,874.874 INFO    ] Checking for camera pi updates...
[2026-10-18 23:52:52,911.911 INFO    ] 200
[2026-10-18 23:52:52,914.914 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:52:52,958.958 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:52:52,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:52:53,001.001 INFO    ] No camera update needed
[2026-10-18 23:52:53,003.003 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:52:53,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:52:53,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:52:53,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:52:55,055.055 INFO    ] ================================================
[2026-10-18 23:52:55,070.070 INFO    ] Launching Daemon at Sun Oct 18 23:52:55 IST 2026
[2026-10-18 23:52:55,081.081 INFO    ] ================================================
[2026-10-18 23:52:55,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:52:55
[2026-10-18 23:52:56,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:52:56,710.710 INFO    ] Initializing speech engine...
[2026-10-18 23:52:56,723.723 INFO    ] 2026-10-18 23:52:56
[2026-10-18 23:52:57,037.037 INFO    ] 2026-10-18 23:52:57
[2026-10-18 23:52:57,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:52:57,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:52:57,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:52:57,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:52:57,590.590 INFO    ] time= 18/10/2026 23:52:57
[2026-10-18 23:52:57,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:52:57,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:52:57,803.803 INFO    ] No existing commands found in stream
[2026-10-18 23:53:02,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:53:02,834.834 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-18 23:53:04,080.080 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:53:04,083.083 INFO    ] Checking for system updates...
[2026-10-18 23:53:04,124.124 INFO    ] 200
[2026-10-18 23:53:04,127.127 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:53:04,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:53:04,193.193 INFO    ] No update needed
[2026-10-18 23:53:04,196.196 INFO    ] Checking for camera pi updates...
[2026-10-18 23:53:04,230.230 INFO    ] 200
[2026-10-18 23:53:04,232.232 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:53:04,274.274 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:53:04,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:53:04,323.323 INFO    ] No camera update needed
[2026-10-18 23:53:04,325.325 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:53:04,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:53:04,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:53:04,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:53:06,380.380 INFO    ] ================================================
[2026-10-18 23:53:06,395.395 INFO    ] Launching Daemon at Sun Oct 18 23:53:06 IST 2026
[2026-10-18 23:53:06,410.410 INFO    ] ================================================
[2026-10-18 23:53:06,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:53:06
[2026-10-18 23:53:07,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:53:07,821.821 INFO    ] Initializing speech engine...
[2026-10-18 23:53:07,830.830 INFO    ] 2026-10-18 23:53:07
[2026-10-18 23:53:08,107.107 INFO    ] 2026-10-18 23:53:08
[2026-10-18 23:53:08,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:53:08,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:53:08,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:53:08,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:53:08,659.659 INFO    ] time= 18/10/2026 23:53:08
[2026-10-18 23:53:08,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:53:08,682.682 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:53:08,810.810 INFO    ] No existing commands found in stream
[2026-10-18 23:53:13,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:53:13,829.829 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-18 23:53:17,079.079 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:53:17,082.082 INFO    ] Checking for system updates...
[2026-10-18 23:53:17,117.117 INFO    ] 200
[2026-10-18 23:53:17,120.120 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:53:17,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:53:17,174.174 INFO    ] No update needed
[2026-10-18 23:53:17,176.176 INFO    ] Checking for camera pi updates...
[2026-10-18 23:53:17,209.209 INFO    ] 200
[2026-10-18 23:53:17,212.212 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:53:17,251.251 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:53:17,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:53:17,393.393 INFO    ] No camera update needed
[2026-10-18 23:53:17,396.396 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:53:17,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:53:17,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:53:17,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:53:19,453.453 INFO    ] ================================================
[2026-10-18 23:53:19,469.469 INFO    ] Launching Daemon at Sun Oct 18 23:53:19 IST 2026
[2026-10-18 23:53:19,481.481 INFO    ] ================================================
[2026-10-18 23:53:20,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:53:20
[2026-10-18 23:53:20,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:53:20,903.903 INFO    ] Initializing speech engine...
[2026-10-18 23:53:20,911.911 INFO    ] 2026-10-18 23:53:20
[2026-10-18 23:53:21,219.219 INFO    ] 2026-10-18 23:53:21
[2026-10-18 23:53:21,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:53:21,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:53:21,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:53:21,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:53:21,633.633 INFO    ] time= 18/10/2026 23:53:21
[2026-10-18 23:53:21,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:53:21,649.649 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:53:21,762.762 INFO    ] No existing commands found in stream
[2026-10-18 23:53:26,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:53:26,790.790 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-18 23:53:28,143.143 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:53:28,145.145 INFO    ] Checking for system updates...
[2026-10-18 23:53:28,183.183 INFO    ] 200
[2026-10-18 23:53:28,186.186 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:53:28,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:53:28,242.242 INFO    ] No update needed
[2026-10-18 23:53:28,245.245 INFO    ] Checking for camera pi updates...
[2026-10-18 23:53:28,278.278 INFO    ] 200
[2026-10-18 23:53:28,280.280 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:53:28,325.325 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:53:28,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:53:28,368.368 INFO    ] No camera update needed
[2026-10-18 23:53:28,370.370 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:53:28,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:53:28,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:53:28,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:53:30,421.421 INFO    ] ================================================
[2026-10-18 23:53:30,438.438 INFO    ] Launching Daemon at Sun Oct 18 23:53:30 IST 2026
[2026-10-18 23:53:30,451.451 INFO    ] ================================================
[2026-10-18 23:53:31,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:53:31
[2026-10-18 23:53:31,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:53:31,974.974 INFO    ] Initializing speech engine...
[2026-10-18 23:53:31,982.982 INFO    ] 2026-10-18 23:53:31
[2026-10-18 23:53:32,281.281 INFO    ] 2026-10-18 23:53:32
[2026-10-18 23:53:32,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:53:32,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:53:32,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:53:32,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:53:32,772.772 INFO    ] time= 18/10/2026 23:53:32
[2026-10-18 23:53:32,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:53:32,886.886 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:53:33,014.014 INFO    ] No existing commands found in stream
[2026-10-18 23:53:38,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:53:38,042.042 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-18 23:53:40,974.974 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:53:40,976.976 INFO    ] Checking for system updates...
[2026-10-18 23:53:41,012.012 INFO    ] 200
[2026-10-18 23:53:41,014.014 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:53:41,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:53:41,067.067 INFO    ] No update needed
[2026-10-18 23:53:41,070.070 INFO    ] Checking for camera pi updates...
[2026-10-18 23:53:41,102.102 INFO    ] 200
[2026-10-18 23:53:41,105.105 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:53:41,146.146 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:53:41,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:53:41,192.192 INFO    ] No camera update needed
[2026-10-18 23:53:41,194.194 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:53:41,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:53:41,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:53:41,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:53:43,246.246 INFO    ] ================================================
[2026-10-18 23:53:43,262.262 INFO    ] Launching Daemon at Sun Oct 18 23:53:43 IST 2026
[2026-10-18 23:53:43,272.272 INFO    ] ================================================
[2026-10-18 23:53:43,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:53:43
[2026-10-18 23:53:44,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:53:44,689.689 INFO    ] Initializing speech engine...
[2026-10-18 23:53:44,697.697 INFO    ] 2026-10-18 23:53:44
[2026-10-18 23:53:44,949.949 INFO    ] 2026-10-18 23:53:44
[2026-10-18 23:53:44,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:53:45,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:53:45,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:53:45,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:53:45,494.494 INFO    ] time= 18/10/2026 23:53:45
[2026-10-18 23:53:45,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:53:45,519.519 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:53:45,644.644 INFO    ] No existing commands found in stream
[2026-10-18 23:53:50,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:53:50,663.663 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-18 23:53:52,690.690 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:53:52,692.692 INFO    ] Checking for system updates...
[2026-10-18 23:53:52,731.731 INFO    ] 200
[2026-10-18 23:53:52,734.734 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:53:52,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:53:52,796.796 INFO    ] No update needed
[2026-10-18 23:53:52,799.799 INFO    ] Checking for camera pi updates...
[2026-10-18 23:53:52,839.839 INFO    ] 200
[2026-10-18 23:53:52,841.841 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:53:52,885.885 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:53:52,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:53:52,929.929 INFO    ] No camera update needed
[2026-10-18 23:53:52,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:53:52,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:53:52,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:53:52,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:53:54,986.986 INFO    ] ================================================
[2026-10-18 23:53:55,004.004 INFO    ] Launching Daemon at Sun Oct 18 23:53:54 IST 2026
[2026-10-18 23:53:55,015.015 INFO    ] ================================================
[2026-10-18 23:53:55,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:53:55
[2026-10-18 23:53:56,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:53:56,558.558 INFO    ] Initializing speech engine...
[2026-10-18 23:53:56,568.568 INFO    ] 2026-10-18 23:53:56
[2026-10-18 23:53:56,823.823 INFO    ] 2026-10-18 23:53:56
[2026-10-18 23:53:56,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:53:57,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:53:57,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:53:57,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:53:57,310.310 INFO    ] time= 18/10/2026 23:53:57
[2026-10-18 23:53:57,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:53:57,419.419 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:53:57,594.594 INFO    ] No existing commands found in stream
[2026-10-18 23:54:02,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:54:02,625.625 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-18 23:54:04,647.647 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:54:04,650.650 INFO    ] Checking for system updates...
[2026-10-18 23:54:04,684.684 INFO    ] 200
[2026-10-18 23:54:04,687.687 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:54:04,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:54:04,752.752 INFO    ] No update needed
[2026-10-18 23:54:04,754.754 INFO    ] Checking for camera pi updates...
[2026-10-18 23:54:04,790.790 INFO    ] 200
[2026-10-18 23:54:04,793.793 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:54:04,834.834 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:54:04,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:54:04,878.878 INFO    ] No camera update needed
[2026-10-18 23:54:04,881.881 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:54:04,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:54:04,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:54:04,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:54:06,937.937 INFO    ] ================================================
[2026-10-18 23:54:06,953.953 INFO    ] Launching Daemon at Sun Oct 18 23:54:06 IST 2026
[2026-10-18 23:54:06,964.964 INFO    ] ================================================
[2026-10-18 23:54:07,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:54:07
[2026-10-18 23:54:08,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:54:08,371.371 INFO    ] Initializing speech engine...
[2026-10-18 23:54:08,379.379 INFO    ] 2026-10-18 23:54:08
[2026-10-18 23:54:08,652.652 INFO    ] 2026-10-18 23:54:08
[2026-10-18 23:54:08,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:54:08,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:54:08,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:54:09,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:54:09,215.215 INFO    ] time= 18/10/2026 23:54:09
[2026-10-18 23:54:09,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:54:09,242.242 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:54:09,381.381 INFO    ] No existing commands found in stream
[2026-10-18 23:54:14,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:54:14,414.414 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-18 23:54:17,307.307 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:54:17,310.310 INFO    ] Checking for system updates...
[2026-10-18 23:54:17,348.348 INFO    ] 200
[2026-10-18 23:54:17,350.350 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:54:17,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:54:17,419.419 INFO    ] No update needed
[2026-10-18 23:54:17,422.422 INFO    ] Checking for camera pi updates...
[2026-10-18 23:54:17,460.460 INFO    ] 200
[2026-10-18 23:54:17,462.462 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:54:17,505.505 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:54:17,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:54:17,549.549 INFO    ] No camera update needed
[2026-10-18 23:54:17,551.551 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:54:17,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:54:17,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:54:17,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:54:19,605.605 INFO    ] ================================================
[2026-10-18 23:54:19,621.621 INFO    ] Launching Daemon at Sun Oct 18 23:54:19 IST 2026
[2026-10-18 23:54:19,632.632 INFO    ] ================================================
[2026-10-18 23:54:20,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:54:20
[2026-10-18 23:54:20,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:54:21,116.116 INFO    ] Initializing speech engine...
[2026-10-18 23:54:21,122.122 INFO    ] 2026-10-18 23:54:21
[2026-10-18 23:54:21,384.384 INFO    ] 2026-10-18 23:54:21
[2026-10-18 23:54:21,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:54:21,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:54:21,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:54:21,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:54:21,925.925 INFO    ] time= 18/10/2026 23:54:21
[2026-10-18 23:54:21,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:54:21,949.949 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:54:22,092.092 INFO    ] No existing commands found in stream
[2026-10-18 23:54:27,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:54:27,127.127 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-18 23:54:29,712.712 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:54:29,715.715 INFO    ] Checking for system updates...
[2026-10-18 23:54:29,758.758 INFO    ] 200
[2026-10-18 23:54:29,761.761 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:54:29,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:54:29,821.821 INFO    ] No update needed
[2026-10-18 23:54:29,823.823 INFO    ] Checking for camera pi updates...
[2026-10-18 23:54:29,860.860 INFO    ] 200
[2026-10-18 23:54:29,862.862 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:54:29,905.905 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:54:29,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:54:29,949.949 INFO    ] No camera update needed
[2026-10-18 23:54:29,951.951 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:54:29,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:54:29,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:54:29,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:54:32,004.004 INFO    ] ================================================
[2026-10-18 23:54:32,023.023 INFO    ] Launching Daemon at Sun Oct 18 23:54:32 IST 2026
[2026-10-18 23:54:32,036.036 INFO    ] ================================================
[2026-10-18 23:54:32,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:54:32
[2026-10-18 23:54:33,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:54:33,523.523 INFO    ] Initializing speech engine...
[2026-10-18 23:54:33,533.533 INFO    ] 2026-10-18 23:54:33
[2026-10-18 23:54:33,779.779 INFO    ] 2026-10-18 23:54:33
[2026-10-18 23:54:33,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:54:34,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:54:34,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:54:34,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:54:34,316.316 INFO    ] time= 18/10/2026 23:54:34
[2026-10-18 23:54:34,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:54:34,356.356 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:54:34,491.491 INFO    ] No existing commands found in stream
[2026-10-18 23:54:39,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:54:39,506.506 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-18 23:54:43,125.125 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:54:43,127.127 INFO    ] Checking for system updates...
[2026-10-18 23:54:43,165.165 INFO    ] 200
[2026-10-18 23:54:43,168.168 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:54:43,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:54:43,223.223 INFO    ] No update needed
[2026-10-18 23:54:43,226.226 INFO    ] Checking for camera pi updates...
[2026-10-18 23:54:43,264.264 INFO    ] 200
[2026-10-18 23:54:43,266.266 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:54:43,307.307 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:54:43,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:54:43,353.353 INFO    ] No camera update needed
[2026-10-18 23:54:43,356.356 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:54:43,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:54:43,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:54:43,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:54:45,408.408 INFO    ] ================================================
[2026-10-18 23:54:45,424.424 INFO    ] Launching Daemon at Sun Oct 18 23:54:45 IST 2026
[2026-10-18 23:54:45,435.435 INFO    ] ================================================
[2026-10-18 23:54:46,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:54:46
[2026-10-18 23:54:46,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:54:46,887.887 INFO    ] Initializing speech engine...
[2026-10-18 23:54:46,895.895 INFO    ] 2026-10-18 23:54:46
[2026-10-18 23:54:47,145.145 INFO    ] 2026-10-18 23:54:47
[2026-10-18 23:54:47,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:54:47,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:54:47,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:54:47,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:54:47,650.650 INFO    ] time= 18/10/2026 23:54:47
[2026-10-18 23:54:47,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:54:47,709.709 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:54:47,855.855 INFO    ] No existing commands found in stream
[2026-10-18 23:54:52,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:54:52,874.874 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-18 23:54:55,109.109 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:54:55,111.111 INFO    ] Checking for system updates...
[2026-10-18 23:54:55,150.150 INFO    ] 200
[2026-10-18 23:54:55,153.153 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:54:55,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:54:55,209.209 INFO    ] No update needed
[2026-10-18 23:54:55,211.211 INFO    ] Checking for camera pi updates...
[2026-10-18 23:54:55,247.247 INFO    ] 200
[2026-10-18 23:54:55,250.250 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:54:55,290.290 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:54:55,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:54:55,335.335 INFO    ] No camera update needed
[2026-10-18 23:54:55,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:54:55,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:54:55,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:54:55,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:54:57,388.388 INFO    ] ================================================
[2026-10-18 23:54:57,403.403 INFO    ] Launching Daemon at Sun Oct 18 23:54:57 IST 2026
[2026-10-18 23:54:57,414.414 INFO    ] ================================================
[2026-10-18 23:54:58,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:54:57
[2026-10-18 23:54:58,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:54:58,905.905 INFO    ] Initializing speech engine...
[2026-10-18 23:54:58,911.911 INFO    ] 2026-10-18 23:54:58
[2026-10-18 23:54:59,175.175 INFO    ] 2026-10-18 23:54:59
[2026-10-18 23:54:59,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:54:59,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:54:59,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:54:59,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:54:59,699.699 INFO    ] time= 18/10/2026 23:54:59
[2026-10-18 23:54:59,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:54:59,775.775 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:54:59,921.921 INFO    ] No existing commands found in stream
[2026-10-18 23:55:04,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:55:04,937.937 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-18 23:55:08,633.633 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:55:08,636.636 INFO    ] Checking for system updates...
[2026-10-18 23:55:08,676.676 INFO    ] 200
[2026-10-18 23:55:08,678.678 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:55:08,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:55:08,732.732 INFO    ] No update needed
[2026-10-18 23:55:08,738.738 INFO    ] Checking for camera pi updates...
[2026-10-18 23:55:08,772.772 INFO    ] 200
[2026-10-18 23:55:08,774.774 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:55:08,814.814 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:55:08,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:55:08,856.856 INFO    ] No camera update needed
[2026-10-18 23:55:08,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:55:08,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:55:08,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:55:08,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:55:10,914.914 INFO    ] ================================================
[2026-10-18 23:55:10,929.929 INFO    ] Launching Daemon at Sun Oct 18 23:55:10 IST 2026
[2026-10-18 23:55:10,939.939 INFO    ] ================================================
[2026-10-18 23:55:11,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:55:11
[2026-10-18 23:55:12,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:55:12,371.371 INFO    ] Initializing speech engine...
[2026-10-18 23:55:12,381.381 INFO    ] 2026-10-18 23:55:12
[2026-10-18 23:55:12,645.645 INFO    ] 2026-10-18 23:55:12
[2026-10-18 23:55:12,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:55:12,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:55:12,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:55:13,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:55:13,195.195 INFO    ] time= 18/10/2026 23:55:13
[2026-10-18 23:55:13,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:55:13,241.241 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:55:13,403.403 INFO    ] No existing commands found in stream
[2026-10-18 23:55:18,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:55:18,431.431 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-18 23:55:19,576.576 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:55:19,579.579 INFO    ] Checking for system updates...
[2026-10-18 23:55:19,618.618 INFO    ] 200
[2026-10-18 23:55:19,621.621 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:55:19,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:55:19,674.674 INFO    ] No update needed
[2026-10-18 23:55:19,676.676 INFO    ] Checking for camera pi updates...
[2026-10-18 23:55:19,713.713 INFO    ] 200
[2026-10-18 23:55:19,715.715 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:55:19,754.754 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:55:19,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:55:19,897.897 INFO    ] No camera update needed
[2026-10-18 23:55:19,900.900 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:55:19,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:55:19,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:55:19,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:55:21,952.952 INFO    ] ================================================
[2026-10-18 23:55:21,967.967 INFO    ] Launching Daemon at Sun Oct 18 23:55:21 IST 2026
[2026-10-18 23:55:21,978.978 INFO    ] ================================================
[2026-10-18 23:55:22,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:55:22
[2026-10-18 23:55:23,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:55:23,583.583 INFO    ] Initializing speech engine...
[2026-10-18 23:55:23,592.592 INFO    ] 2026-10-18 23:55:23
[2026-10-18 23:55:23,862.862 INFO    ] 2026-10-18 23:55:23
[2026-10-18 23:55:23,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:55:24,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:55:24,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:55:24,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:55:24,411.411 INFO    ] time= 18/10/2026 23:55:24
[2026-10-18 23:55:24,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:55:24,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:55:24,589.589 INFO    ] No existing commands found in stream
[2026-10-18 23:55:29,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:55:29,623.623 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-18 23:55:33,824.824 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:55:33,827.827 INFO    ] Checking for system updates...
[2026-10-18 23:55:33,863.863 INFO    ] 200
[2026-10-18 23:55:33,866.866 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:55:33,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:55:33,927.927 INFO    ] No update needed
[2026-10-18 23:55:33,930.930 INFO    ] Checking for camera pi updates...
[2026-10-18 23:55:33,968.968 INFO    ] 200
[2026-10-18 23:55:33,970.970 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:55:34,020.020 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:55:34,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:55:34,065.065 INFO    ] No camera update needed
[2026-10-18 23:55:34,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:55:34,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:55:34,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:55:34,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:55:36,122.122 INFO    ] ================================================
[2026-10-18 23:55:36,136.136 INFO    ] Launching Daemon at Sun Oct 18 23:55:36 IST 2026
[2026-10-18 23:55:36,147.147 INFO    ] ================================================
[2026-10-18 23:55:36,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:55:36
[2026-10-18 23:55:37,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:55:37,631.631 INFO    ] Initializing speech engine...
[2026-10-18 23:55:37,651.651 INFO    ] 2026-10-18 23:55:37
[2026-10-18 23:55:37,924.924 INFO    ] 2026-10-18 23:55:37
[2026-10-18 23:55:37,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:55:38,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:55:38,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:55:38,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:55:38,481.481 INFO    ] time= 18/10/2026 23:55:38
[2026-10-18 23:55:38,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:55:38,514.514 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:55:38,653.653 INFO    ] No existing commands found in stream
[2026-10-18 23:55:43,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:55:43,673.673 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-18 23:55:44,657.657 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:55:44,660.660 INFO    ] Checking for system updates...
[2026-10-18 23:55:44,700.700 INFO    ] 200
[2026-10-18 23:55:44,703.703 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:55:44,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:55:44,769.769 INFO    ] No update needed
[2026-10-18 23:55:44,772.772 INFO    ] Checking for camera pi updates...
[2026-10-18 23:55:44,805.805 INFO    ] 200
[2026-10-18 23:55:44,808.808 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:55:44,850.850 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:55:44,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:55:44,897.897 INFO    ] No camera update needed
[2026-10-18 23:55:44,900.900 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:55:44,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:55:44,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:55:44,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:55:46,954.954 INFO    ] ================================================
[2026-10-18 23:55:46,969.969 INFO    ] Launching Daemon at Sun Oct 18 23:55:46 IST 2026
[2026-10-18 23:55:46,979.979 INFO    ] ================================================
[2026-10-18 23:55:47,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:55:47
[2026-10-18 23:55:48,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:55:48,433.433 INFO    ] Initializing speech engine...
[2026-10-18 23:55:48,440.440 INFO    ] 2026-10-18 23:55:48
[2026-10-18 23:55:48,700.700 INFO    ] 2026-10-18 23:55:48
[2026-10-18 23:55:48,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:55:49,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:55:49,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:55:49,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:55:49,241.241 INFO    ] time= 18/10/2026 23:55:49
[2026-10-18 23:55:49,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:55:49,287.287 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:55:49,424.424 INFO    ] No existing commands found in stream
[2026-10-18 23:55:54,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:55:54,454.454 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-18 23:55:55,499.499 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:55:55,501.501 INFO    ] Checking for system updates...
[2026-10-18 23:55:55,540.540 INFO    ] 200
[2026-10-18 23:55:55,542.542 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:55:55,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:55:55,602.602 INFO    ] No update needed
[2026-10-18 23:55:55,604.604 INFO    ] Checking for camera pi updates...
[2026-10-18 23:55:55,642.642 INFO    ] 200
[2026-10-18 23:55:55,644.644 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:55:55,688.688 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:55:55,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:55:55,732.732 INFO    ] No camera update needed
[2026-10-18 23:55:55,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:55:55,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:55:55,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:55:55,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:55:57,786.786 INFO    ] ================================================
[2026-10-18 23:55:57,801.801 INFO    ] Launching Daemon at Sun Oct 18 23:55:57 IST 2026
[2026-10-18 23:55:57,812.812 INFO    ] ================================================
[2026-10-18 23:55:58,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:55:58
[2026-10-18 23:55:58,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:55:59,233.233 INFO    ] Initializing speech engine...
[2026-10-18 23:55:59,242.242 INFO    ] 2026-10-18 23:55:59
[2026-10-18 23:55:59,487.487 INFO    ] 2026-10-18 23:55:59
[2026-10-18 23:55:59,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:55:59,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:55:59,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:55:59,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:55:59,959.959 INFO    ] time= 18/10/2026 23:55:59
[2026-10-18 23:56:00,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:56:00,052.052 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:56:00,190.190 INFO    ] No existing commands found in stream
[2026-10-18 23:56:05,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:56:05,214.214 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-18 23:56:06,734.734 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:56:06,736.736 INFO    ] Checking for system updates...
[2026-10-18 23:56:06,772.772 INFO    ] 200
[2026-10-18 23:56:06,774.774 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:56:06,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:56:06,835.835 INFO    ] No update needed
[2026-10-18 23:56:06,837.837 INFO    ] Checking for camera pi updates...
[2026-10-18 23:56:06,870.870 INFO    ] 200
[2026-10-18 23:56:06,872.872 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:56:06,916.916 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:56:06,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:56:06,961.961 INFO    ] No camera update needed
[2026-10-18 23:56:06,963.963 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:56:06,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:56:06,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:56:06,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:56:09,017.017 INFO    ] ================================================
[2026-10-18 23:56:09,032.032 INFO    ] Launching Daemon at Sun Oct 18 23:56:09 IST 2026
[2026-10-18 23:56:09,042.042 INFO    ] ================================================
[2026-10-18 23:56:09,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:56:09
[2026-10-18 23:56:10,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:56:10,512.512 INFO    ] Initializing speech engine...
[2026-10-18 23:56:10,519.519 INFO    ] 2026-10-18 23:56:10
[2026-10-18 23:56:10,794.794 INFO    ] 2026-10-18 23:56:10
[2026-10-18 23:56:10,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:56:11,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:56:11,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:56:11,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:56:11,277.277 INFO    ] time= 18/10/2026 23:56:11
[2026-10-18 23:56:11,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:56:11,335.335 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:56:11,485.485 INFO    ] No existing commands found in stream
[2026-10-18 23:56:16,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:56:16,514.514 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-18 23:56:19,470.470 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:56:19,473.473 INFO    ] Checking for system updates...
[2026-10-18 23:56:19,508.508 INFO    ] 200
[2026-10-18 23:56:19,511.511 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:56:19,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:56:19,567.567 INFO    ] No update needed
[2026-10-18 23:56:19,570.570 INFO    ] Checking for camera pi updates...
[2026-10-18 23:56:19,604.604 INFO    ] 200
[2026-10-18 23:56:19,606.606 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:56:19,646.646 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:56:19,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:56:19,690.690 INFO    ] No camera update needed
[2026-10-18 23:56:19,692.692 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:56:19,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:56:19,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:56:19,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:56:21,744.744 INFO    ] ================================================
[2026-10-18 23:56:21,759.759 INFO    ] Launching Daemon at Sun Oct 18 23:56:21 IST 2026
[2026-10-18 23:56:21,770.770 INFO    ] ================================================
[2026-10-18 23:56:22,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:56:22
[2026-10-18 23:56:22,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:56:23,235.235 INFO    ] Initializing speech engine...
[2026-10-18 23:56:23,240.240 INFO    ] 2026-10-18 23:56:23
[2026-10-18 23:56:23,501.501 INFO    ] 2026-10-18 23:56:23
[2026-10-18 23:56:23,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:56:23,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:56:23,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:56:23,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:56:23,988.988 INFO    ] time= 18/10/2026 23:56:23
[2026-10-18 23:56:24,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:56:24,051.051 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:56:24,195.195 INFO    ] No existing commands found in stream
[2026-10-18 23:56:29,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:56:29,213.213 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-18 23:56:29,794.794 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:56:29,797.797 INFO    ] Checking for system updates...
[2026-10-18 23:56:29,836.836 INFO    ] 200
[2026-10-18 23:56:29,838.838 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:56:29,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:56:29,895.895 INFO    ] No update needed
[2026-10-18 23:56:29,897.897 INFO    ] Checking for camera pi updates...
[2026-10-18 23:56:29,934.934 INFO    ] 200
[2026-10-18 23:56:29,936.936 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:56:29,976.976 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:56:30,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:56:30,019.019 INFO    ] No camera update needed
[2026-10-18 23:56:30,022.022 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:56:30,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:56:30,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:56:30,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:56:32,076.076 INFO    ] ================================================
[2026-10-18 23:56:32,095.095 INFO    ] Launching Daemon at Sun Oct 18 23:56:32 IST 2026
[2026-10-18 23:56:32,107.107 INFO    ] ================================================
[2026-10-18 23:56:32,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:56:32
[2026-10-18 23:56:33,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:56:33,632.632 INFO    ] Initializing speech engine...
[2026-10-18 23:56:33,639.639 INFO    ] 2026-10-18 23:56:33
[2026-10-18 23:56:33,900.900 INFO    ] 2026-10-18 23:56:33
[2026-10-18 23:56:33,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:56:34,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:56:34,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:56:34,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:56:34,443.443 INFO    ] time= 18/10/2026 23:56:34
[2026-10-18 23:56:34,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:56:34,488.488 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:56:34,604.604 INFO    ] No existing commands found in stream
[2026-10-18 23:56:39,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:56:39,634.634 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-18 23:56:43,491.491 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-18 23:56:43,494.494 INFO    ] Checking for system updates...
[2026-10-18 23:56:43,532.532 INFO    ] 200
[2026-10-18 23:56:43,534.534 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:56:43,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:56:43,588.588 INFO    ] No update needed
[2026-10-18 23:56:43,590.590 INFO    ] Checking for camera pi updates...
[2026-10-18 23:56:43,626.626 INFO    ] 200
[2026-10-18 23:56:43,629.629 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:56:43,668.668 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:56:43,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:56:43,711.711 INFO    ] No camera update needed
[2026-10-18 23:56:43,714.714 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:56:43,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:56:43,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:56:43,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:56:45,766.766 INFO    ] ================================================
[2026-10-18 23:56:45,782.782 INFO    ] Launching Daemon at Sun Oct 18 23:56:45 IST 2026
[2026-10-18 23:56:45,793.793 INFO    ] ================================================
[2026-10-18 23:56:46,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:56:46
[2026-10-18 23:56:46,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:56:47,239.239 INFO    ] Initializing speech engine...
[2026-10-18 23:56:47,250.250 INFO    ] 2026-10-18 23:56:47
[2026-10-18 23:56:47,513.513 INFO    ] 2026-10-18 23:56:47
[2026-10-18 23:56:47,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:56:47,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:56:47,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:56:47,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:56:47,931.931 INFO    ] time= 18/10/2026 23:56:47
[2026-10-18 23:56:47,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:56:47,951.951 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:56:48,048.048 INFO    ] No existing commands found in stream
[2026-10-18 23:56:53,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:56:53,075.075 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-18 23:56:56,005.005 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:56:56,008.008 INFO    ] Checking for system updates...
[2026-10-18 23:56:56,046.046 INFO    ] 200
[2026-10-18 23:56:56,049.049 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:56:56,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:56:56,103.103 INFO    ] No update needed
[2026-10-18 23:56:56,105.105 INFO    ] Checking for camera pi updates...
[2026-10-18 23:56:56,138.138 INFO    ] 200
[2026-10-18 23:56:56,141.141 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:56:56,182.182 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:56:56,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:56:56,226.226 INFO    ] No camera update needed
[2026-10-18 23:56:56,229.229 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:56:56,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:56:56,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:56:56,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:56:58,280.280 INFO    ] ================================================
[2026-10-18 23:56:58,295.295 INFO    ] Launching Daemon at Sun Oct 18 23:56:58 IST 2026
[2026-10-18 23:56:58,305.305 INFO    ] ================================================
[2026-10-18 23:56:58,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:56:58
[2026-10-18 23:56:59,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:56:59,725.725 INFO    ] Initializing speech engine...
[2026-10-18 23:56:59,734.734 INFO    ] 2026-10-18 23:56:59
[2026-10-18 23:56:59,995.995 INFO    ] 2026-10-18 23:56:59
[2026-10-18 23:57:00,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:57:00,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:57:00,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:57:00,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:57:00,533.533 INFO    ] time= 18/10/2026 23:57:00
[2026-10-18 23:57:00,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:57:00,557.557 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:57:00,684.684 INFO    ] No existing commands found in stream
[2026-10-18 23:57:05,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:57:05,701.701 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-18 23:57:07,631.631 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:57:07,634.634 INFO    ] Checking for system updates...
[2026-10-18 23:57:07,669.669 INFO    ] 200
[2026-10-18 23:57:07,672.672 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:57:07,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:57:07,733.733 INFO    ] No update needed
[2026-10-18 23:57:07,735.735 INFO    ] Checking for camera pi updates...
[2026-10-18 23:57:07,768.768 INFO    ] 200
[2026-10-18 23:57:07,771.771 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:57:07,811.811 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:57:07,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:57:07,856.856 INFO    ] No camera update needed
[2026-10-18 23:57:07,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:57:07,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:57:07,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:57:07,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:57:09,913.913 INFO    ] ================================================
[2026-10-18 23:57:09,929.929 INFO    ] Launching Daemon at Sun Oct 18 23:57:09 IST 2026
[2026-10-18 23:57:09,939.939 INFO    ] ================================================
[2026-10-18 23:57:10,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:57:10
[2026-10-18 23:57:11,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:57:11,397.397 INFO    ] Initializing speech engine...
[2026-10-18 23:57:11,406.406 INFO    ] 2026-10-18 23:57:11
[2026-10-18 23:57:11,668.668 INFO    ] 2026-10-18 23:57:11
[2026-10-18 23:57:11,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:57:11,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:57:11,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:57:12,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:57:12,211.211 INFO    ] time= 18/10/2026 23:57:12
[2026-10-18 23:57:12,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:57:12,237.237 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:57:12,363.363 INFO    ] No existing commands found in stream
[2026-10-18 23:57:17,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:57:17,380.380 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-10-18 23:57:21,853.853 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:57:21,855.855 INFO    ] Checking for system updates...
[2026-10-18 23:57:21,891.891 INFO    ] 200
[2026-10-18 23:57:21,893.893 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:57:21,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:57:21,956.956 INFO    ] No update needed
[2026-10-18 23:57:21,958.958 INFO    ] Checking for camera pi updates...
[2026-10-18 23:57:21,991.991 INFO    ] 200
[2026-10-18 23:57:21,994.994 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:57:22,034.034 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:57:22,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:57:22,175.175 INFO    ] No camera update needed
[2026-10-18 23:57:22,177.177 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:57:22,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:57:22,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:57:22,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:57:24,230.230 INFO    ] ================================================
[2026-10-18 23:57:24,245.245 INFO    ] Launching Daemon at Sun Oct 18 23:57:24 IST 2026
[2026-10-18 23:57:24,255.255 INFO    ] ================================================
[2026-10-18 23:57:24,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:57:24
[2026-10-18 23:57:25,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:57:25,653.653 INFO    ] Initializing speech engine...
[2026-10-18 23:57:25,673.673 INFO    ] 2026-10-18 23:57:25
[2026-10-18 23:57:25,932.932 INFO    ] 2026-10-18 23:57:25
[2026-10-18 23:57:25,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:57:26,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:57:26,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:57:26,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:57:26,496.496 INFO    ] time= 18/10/2026 23:57:26
[2026-10-18 23:57:26,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:57:26,523.523 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:57:26,657.657 INFO    ] No existing commands found in stream
[2026-10-18 23:57:31,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:57:31,672.672 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-18 23:57:33,820.820 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:57:33,823.823 INFO    ] Checking for system updates...
[2026-10-18 23:57:33,859.859 INFO    ] 200
[2026-10-18 23:57:33,862.862 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:57:33,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:57:33,926.926 INFO    ] No update needed
[2026-10-18 23:57:33,929.929 INFO    ] Checking for camera pi updates...
[2026-10-18 23:57:33,972.972 INFO    ] 200
[2026-10-18 23:57:33,975.975 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:57:34,022.022 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:57:34,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:57:34,067.067 INFO    ] No camera update needed
[2026-10-18 23:57:34,070.070 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:57:34,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:57:34,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:57:34,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:57:36,125.125 INFO    ] ================================================
[2026-10-18 23:57:36,140.140 INFO    ] Launching Daemon at Sun Oct 18 23:57:36 IST 2026
[2026-10-18 23:57:36,150.150 INFO    ] ================================================
[2026-10-18 23:57:36,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:57:36
[2026-10-18 23:57:37,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:57:37,613.613 INFO    ] Initializing speech engine...
[2026-10-18 23:57:37,622.622 INFO    ] 2026-10-18 23:57:37
[2026-10-18 23:57:37,882.882 INFO    ] 2026-10-18 23:57:37
[2026-10-18 23:57:37,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:57:38,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:57:38,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:57:38,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:57:38,426.426 INFO    ] time= 18/10/2026 23:57:38
[2026-10-18 23:57:38,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:57:38,454.454 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:57:38,659.659 INFO    ] No existing commands found in stream
[2026-10-18 23:57:43,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:57:43,693.693 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-18 23:57:47,239.239 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:57:47,242.242 INFO    ] Checking for system updates...
[2026-10-18 23:57:47,282.282 INFO    ] 200
[2026-10-18 23:57:47,286.286 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:57:47,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:57:47,352.352 INFO    ] No update needed
[2026-10-18 23:57:47,355.355 INFO    ] Checking for camera pi updates...
[2026-10-18 23:57:47,388.388 INFO    ] 200
[2026-10-18 23:57:47,391.391 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:57:47,430.430 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:57:47,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:57:47,474.474 INFO    ] No camera update needed
[2026-10-18 23:57:47,476.476 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:57:47,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:57:47,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:57:47,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:57:49,528.528 INFO    ] ================================================
[2026-10-18 23:57:49,543.543 INFO    ] Launching Daemon at Sun Oct 18 23:57:49 IST 2026
[2026-10-18 23:57:49,553.553 INFO    ] ================================================
[2026-10-18 23:57:50,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:57:50
[2026-10-18 23:57:50,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:57:51,270.270 INFO    ] Initializing speech engine...
[2026-10-18 23:57:51,280.280 INFO    ] 2026-10-18 23:57:51
[2026-10-18 23:57:51,551.551 INFO    ] 2026-10-18 23:57:51
[2026-10-18 23:57:51,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:57:51,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:57:51,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:57:52,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:57:52,060.060 INFO    ] time= 18/10/2026 23:57:52
[2026-10-18 23:57:52,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:57:52,083.083 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:57:52,203.203 INFO    ] No existing commands found in stream
[2026-10-18 23:57:57,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:57:57,231.231 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-18 23:57:59,046.046 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-18 23:57:59,049.049 INFO    ] Checking for system updates...
[2026-10-18 23:57:59,089.089 INFO    ] 200
[2026-10-18 23:57:59,092.092 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:57:59,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:57:59,147.147 INFO    ] No update needed
[2026-10-18 23:57:59,150.150 INFO    ] Checking for camera pi updates...
[2026-10-18 23:57:59,192.192 INFO    ] 200
[2026-10-18 23:57:59,194.194 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:57:59,235.235 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:57:59,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:57:59,279.279 INFO    ] No camera update needed
[2026-10-18 23:57:59,282.282 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:57:59,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:57:59,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:57:59,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:58:01,339.339 INFO    ] ================================================
[2026-10-18 23:58:01,354.354 INFO    ] Launching Daemon at Sun Oct 18 23:58:01 IST 2026
[2026-10-18 23:58:01,365.365 INFO    ] ================================================
[2026-10-18 23:58:02,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:58:02
[2026-10-18 23:58:02,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:58:03,269.269 INFO    ] Initializing speech engine...
[2026-10-18 23:58:03,282.282 INFO    ] 2026-10-18 23:58:03
[2026-10-18 23:58:03,614.614 INFO    ] 2026-10-18 23:58:03
[2026-10-18 23:58:03,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:58:03,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:58:03,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:58:04,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:58:04,131.131 INFO    ] time= 18/10/2026 23:58:04
[2026-10-18 23:58:04,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:58:04,154.154 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:58:04,265.265 INFO    ] No existing commands found in stream
[2026-10-18 23:58:09,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:58:09,293.293 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-18 23:58:12,304.304 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:58:12,306.306 INFO    ] Checking for system updates...
[2026-10-18 23:58:12,341.341 INFO    ] 200
[2026-10-18 23:58:12,344.344 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:58:12,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:58:12,406.406 INFO    ] No update needed
[2026-10-18 23:58:12,408.408 INFO    ] Checking for camera pi updates...
[2026-10-18 23:58:12,440.440 INFO    ] 200
[2026-10-18 23:58:12,443.443 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:58:12,488.488 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:58:12,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:58:12,534.534 INFO    ] No camera update needed
[2026-10-18 23:58:12,536.536 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:58:12,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:58:12,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:58:12,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:58:14,590.590 INFO    ] ================================================
[2026-10-18 23:58:14,606.606 INFO    ] Launching Daemon at Sun Oct 18 23:58:14 IST 2026
[2026-10-18 23:58:14,617.617 INFO    ] ================================================
[2026-10-18 23:58:15,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:58:15
[2026-10-18 23:58:15,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:58:16,052.052 INFO    ] Initializing speech engine...
[2026-10-18 23:58:16,060.060 INFO    ] 2026-10-18 23:58:16
[2026-10-18 23:58:16,360.360 INFO    ] 2026-10-18 23:58:16
[2026-10-18 23:58:16,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:58:16,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:58:16,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:58:16,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:58:16,770.770 INFO    ] time= 18/10/2026 23:58:16
[2026-10-18 23:58:16,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:58:16,801.801 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:58:16,881.881 INFO    ] No existing commands found in stream
[2026-10-18 23:58:21,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:58:21,897.897 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-18 23:58:24,947.947 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:58:24,949.949 INFO    ] Checking for system updates...
[2026-10-18 23:58:24,985.985 INFO    ] 200
[2026-10-18 23:58:24,987.987 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:58:25,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:58:25,042.042 INFO    ] No update needed
[2026-10-18 23:58:25,044.044 INFO    ] Checking for camera pi updates...
[2026-10-18 23:58:25,077.077 INFO    ] 200
[2026-10-18 23:58:25,080.080 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:58:25,119.119 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:58:25,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:58:25,163.163 INFO    ] No camera update needed
[2026-10-18 23:58:25,165.165 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:58:25,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:58:25,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:58:25,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:58:27,217.217 INFO    ] ================================================
[2026-10-18 23:58:27,233.233 INFO    ] Launching Daemon at Sun Oct 18 23:58:27 IST 2026
[2026-10-18 23:58:27,245.245 INFO    ] ================================================
[2026-10-18 23:58:27,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:58:27
[2026-10-18 23:58:28,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:58:28,712.712 INFO    ] Initializing speech engine...
[2026-10-18 23:58:28,721.721 INFO    ] 2026-10-18 23:58:28
[2026-10-18 23:58:28,966.966 INFO    ] 2026-10-18 23:58:28
[2026-10-18 23:58:29,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:58:29,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:58:29,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:58:29,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:58:29,455.455 INFO    ] time= 18/10/2026 23:58:29
[2026-10-18 23:58:29,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:58:29,526.526 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:58:29,669.669 INFO    ] No existing commands found in stream
[2026-10-18 23:58:34,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:58:34,686.686 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-18 23:58:37,736.736 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:58:37,739.739 INFO    ] Checking for system updates...
[2026-10-18 23:58:37,774.774 INFO    ] 200
[2026-10-18 23:58:37,777.777 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:58:37,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:58:37,834.834 INFO    ] No update needed
[2026-10-18 23:58:37,836.836 INFO    ] Checking for camera pi updates...
[2026-10-18 23:58:37,871.871 INFO    ] 200
[2026-10-18 23:58:37,874.874 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:58:37,915.915 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:58:37,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:58:37,960.960 INFO    ] No camera update needed
[2026-10-18 23:58:37,963.963 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:58:37,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:58:37,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:58:37,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:58:40,021.021 INFO    ] ================================================
[2026-10-18 23:58:40,036.036 INFO    ] Launching Daemon at Sun Oct 18 23:58:40 IST 2026
[2026-10-18 23:58:40,048.048 INFO    ] ================================================
[2026-10-18 23:58:40,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:58:40
[2026-10-18 23:58:41,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:58:41,706.706 INFO    ] Initializing speech engine...
[2026-10-18 23:58:41,720.720 INFO    ] 2026-10-18 23:58:41
[2026-10-18 23:58:42,031.031 INFO    ] 2026-10-18 23:58:41
[2026-10-18 23:58:42,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:58:42,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:58:42,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:58:42,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:58:42,539.539 INFO    ] time= 18/10/2026 23:58:42
[2026-10-18 23:58:42,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:58:42,587.587 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:58:42,696.696 INFO    ] No existing commands found in stream
[2026-10-18 23:58:47,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:58:47,728.728 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-18 23:58:51,245.245 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:58:51,248.248 INFO    ] Checking for system updates...
[2026-10-18 23:58:51,288.288 INFO    ] 200
[2026-10-18 23:58:51,290.290 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:58:51,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:58:51,345.345 INFO    ] No update needed
[2026-10-18 23:58:51,347.347 INFO    ] Checking for camera pi updates...
[2026-10-18 23:58:51,384.384 INFO    ] 200
[2026-10-18 23:58:51,387.387 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:58:51,426.426 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:58:51,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:58:51,471.471 INFO    ] No camera update needed
[2026-10-18 23:58:51,474.474 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:58:51,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:58:51,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:58:51,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:58:53,525.525 INFO    ] ================================================
[2026-10-18 23:58:53,540.540 INFO    ] Launching Daemon at Sun Oct 18 23:58:53 IST 2026
[2026-10-18 23:58:53,551.551 INFO    ] ================================================
[2026-10-18 23:58:54,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:58:54
[2026-10-18 23:58:54,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:58:55,051.051 INFO    ] Initializing speech engine...
[2026-10-18 23:58:55,074.074 INFO    ] 2026-10-18 23:58:55
[2026-10-18 23:58:55,331.331 INFO    ] 2026-10-18 23:58:55
[2026-10-18 23:58:55,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:58:55,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:58:55,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:58:55,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:58:55,903.903 INFO    ] time= 18/10/2026 23:58:55
[2026-10-18 23:58:55,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:58:55,928.928 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:58:56,063.063 INFO    ] No existing commands found in stream
[2026-10-18 23:59:01,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:59:01,079.079 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-18 23:59:01,805.805 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:59:01,810.810 INFO    ] Checking for system updates...
[2026-10-18 23:59:01,870.870 INFO    ] 200
[2026-10-18 23:59:01,874.874 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:59:01,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:59:01,962.962 INFO    ] No update needed
[2026-10-18 23:59:01,966.966 INFO    ] Checking for camera pi updates...
[2026-10-18 23:59:02,050.050 INFO    ] 200
[2026-10-18 23:59:02,053.053 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:59:02,170.170 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:59:02,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:59:02,213.213 INFO    ] No camera update needed
[2026-10-18 23:59:02,219.219 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:59:02,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:59:02,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:59:02,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:59:04,303.303 INFO    ] ================================================
[2026-10-18 23:59:04,319.319 INFO    ] Launching Daemon at Sun Oct 18 23:59:04 IST 2026
[2026-10-18 23:59:04,330.330 INFO    ] ================================================
[2026-10-18 23:59:05,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:59:05
[2026-10-18 23:59:05,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:59:05,900.900 INFO    ] Initializing speech engine...
[2026-10-18 23:59:05,907.907 INFO    ] 2026-10-18 23:59:05
[2026-10-18 23:59:06,165.165 INFO    ] 2026-10-18 23:59:06
[2026-10-18 23:59:06,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:59:06,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:59:06,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:59:06,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:59:06,654.654 INFO    ] time= 18/10/2026 23:59:06
[2026-10-18 23:59:06,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:59:06,717.717 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:59:06,865.865 INFO    ] No existing commands found in stream
[2026-10-18 23:59:11,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:59:11,895.895 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-18 23:59:12,895.895 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-18 23:59:12,898.898 INFO    ] Checking for system updates...
[2026-10-18 23:59:12,933.933 INFO    ] 200
[2026-10-18 23:59:12,935.935 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:59:12,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:59:12,989.989 INFO    ] No update needed
[2026-10-18 23:59:12,992.992 INFO    ] Checking for camera pi updates...
[2026-10-18 23:59:13,025.025 INFO    ] 200
[2026-10-18 23:59:13,027.027 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:59:13,072.072 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:59:13,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:59:13,120.120 INFO    ] No camera update needed
[2026-10-18 23:59:13,122.122 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:59:13,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:59:13,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:59:13,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:59:15,174.174 INFO    ] ================================================
[2026-10-18 23:59:15,190.190 INFO    ] Launching Daemon at Sun Oct 18 23:59:15 IST 2026
[2026-10-18 23:59:15,200.200 INFO    ] ================================================
[2026-10-18 23:59:15,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:59:15
[2026-10-18 23:59:16,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:59:16,633.633 INFO    ] Initializing speech engine...
[2026-10-18 23:59:16,644.644 INFO    ] 2026-10-18 23:59:16
[2026-10-18 23:59:16,887.887 INFO    ] 2026-10-18 23:59:16
[2026-10-18 23:59:16,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:59:17,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:59:17,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:59:17,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:59:17,381.381 INFO    ] time= 18/10/2026 23:59:17
[2026-10-18 23:59:17,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:59:17,449.449 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:59:17,589.589 INFO    ] No existing commands found in stream
[2026-10-18 23:59:22,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:59:22,608.608 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-18 23:59:27,021.021 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-18 23:59:27,023.023 INFO    ] Checking for system updates...
[2026-10-18 23:59:27,060.060 INFO    ] 200
[2026-10-18 23:59:27,063.063 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:59:27,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:59:27,127.127 INFO    ] No update needed
[2026-10-18 23:59:27,135.135 INFO    ] Checking for camera pi updates...
[2026-10-18 23:59:27,172.172 INFO    ] 200
[2026-10-18 23:59:27,175.175 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:59:27,214.214 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:59:27,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:59:27,356.356 INFO    ] No camera update needed
[2026-10-18 23:59:27,358.358 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:59:27,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:59:27,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:59:27,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:59:29,410.410 INFO    ] ================================================
[2026-10-18 23:59:29,427.427 INFO    ] Launching Daemon at Sun Oct 18 23:59:29 IST 2026
[2026-10-18 23:59:29,437.437 INFO    ] ================================================
[2026-10-18 23:59:30,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:59:30
[2026-10-18 23:59:30,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:59:30,859.859 INFO    ] Initializing speech engine...
[2026-10-18 23:59:30,867.867 INFO    ] 2026-10-18 23:59:30
[2026-10-18 23:59:31,113.113 INFO    ] 2026-10-18 23:59:31
[2026-10-18 23:59:31,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:59:31,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:59:31,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:59:31,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:59:31,662.662 INFO    ] time= 18/10/2026 23:59:31
[2026-10-18 23:59:31,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:59:31,691.691 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:59:31,824.824 INFO    ] No existing commands found in stream
[2026-10-18 23:59:36,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:59:36,842.842 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-18 23:59:38,155.155 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:59:38,158.158 INFO    ] Checking for system updates...
[2026-10-18 23:59:38,193.193 INFO    ] 200
[2026-10-18 23:59:38,195.195 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:59:38,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:59:38,251.251 INFO    ] No update needed
[2026-10-18 23:59:38,253.253 INFO    ] Checking for camera pi updates...
[2026-10-18 23:59:38,291.291 INFO    ] 200
[2026-10-18 23:59:38,293.293 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:59:38,333.333 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:59:38,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:59:38,376.376 INFO    ] No camera update needed
[2026-10-18 23:59:38,379.379 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:59:38,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:59:38,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:59:38,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:59:40,431.431 INFO    ] ================================================
[2026-10-18 23:59:40,446.446 INFO    ] Launching Daemon at Sun Oct 18 23:59:40 IST 2026
[2026-10-18 23:59:40,456.456 INFO    ] ================================================
[2026-10-18 23:59:41,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:59:41
[2026-10-18 23:59:41,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:59:41,969.969 INFO    ] Initializing speech engine...
[2026-10-18 23:59:41,978.978 INFO    ] 2026-10-18 23:59:41
[2026-10-18 23:59:42,221.221 INFO    ] 2026-10-18 23:59:42
[2026-10-18 23:59:42,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:59:42,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:59:42,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:59:42,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:59:42,767.767 INFO    ] time= 18/10/2026 23:59:42
[2026-10-18 23:59:42,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:59:42,796.796 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:59:42,929.929 INFO    ] No existing commands found in stream
[2026-10-18 23:59:47,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:59:47,953.953 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-18 23:59:49,117.117 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-18 23:59:49,119.119 INFO    ] Checking for system updates...
[2026-10-18 23:59:49,155.155 INFO    ] 200
[2026-10-18 23:59:49,157.157 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:59:49,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:59:49,219.219 INFO    ] No update needed
[2026-10-18 23:59:49,221.221 INFO    ] Checking for camera pi updates...
[2026-10-18 23:59:49,259.259 INFO    ] 200
[2026-10-18 23:59:49,261.261 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:59:49,300.300 INFO    ] Camera IP: TMCAM04202203.local
[2026-10-18 23:59:49,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-18 23:59:49,343.343 INFO    ] No camera update needed
[2026-10-18 23:59:49,345.345 INFO    ] Script finished. Safe exiting...
[2026-10-18 23:59:49,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-10-18 23:59:49,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-18 23:59:49,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-10-18 23:59:51,398.398 INFO    ] ================================================
[2026-10-18 23:59:51,413.413 INFO    ] Launching Daemon at Sun Oct 18 23:59:51 IST 2026
[2026-10-18 23:59:51,424.424 INFO    ] ================================================
[2026-10-18 23:59:52,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-18 23:59:52
[2026-10-18 23:59:52,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-10-18 23:59:52,954.954 INFO    ] Initializing speech engine...
[2026-10-18 23:59:52,967.967 INFO    ] 2026-10-18 23:59:52
[2026-10-18 23:59:53,282.282 INFO    ] 2026-10-18 23:59:53
[2026-10-18 23:59:53,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-18 23:59:53,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-18 23:59:53,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-18 23:59:53,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-18 23:59:53,802.802 INFO    ] time= 18/10/2026 23:59:53
[2026-10-18 23:59:53,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM04202203
[2026-10-18 23:59:53,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-18 23:59:53,976.976 INFO    ] No existing commands found in stream
[2026-10-18 23:59:59,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-18 23:59:59,016.016 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-18 23:59:59,838.838 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-18 23:59:59,841.841 INFO    ] Checking for system updates...
[2026-10-18 23:59:59,879.879 INFO    ] 200
[2026-10-18 23:59:59,882.882 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
[2026-10-18 23:59:59,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-18 23:59:59,938.938 INFO    ] No update needed
[2026-10-18 23:59:59,941.941 INFO    ] Checking for camera pi updates...
[2026-10-18 23:59:59,974.974 INFO    ] 200
[2026-10-18 23:59:59,976.976 INFO    ] {"status": true, "msg": "Status of machine", "state": "STATE_IDLE"}
